
Cortex-M4 Peripherals
ARM DUI 0553A
Copyright © 2010 ARM. All rights reserved.
4-29
ID121610
Non-Confidential
Note
The UFSR bits are sticky. This means as one or more fault occurs, the associated bits are set to
1. A bit that is set to 1 is cleared to 0 only by writing 1 to that bit, or by a reset.
[2]
INVPC
Invalid PC load UsageFault, caused by an invalid PC load by EXC_RETURN:
0 = no invalid PC load UsageFault
1 = the processor has attempted an illegal load of EXC_RETURN to the PC, as a result of an invalid
context, or an invalid EXC_RETURN value.
When this bit is set to 1, the PC value stacked for the exception return points to the instruction that tried
to perform the illegal load of the PC.
[1]
INVSTATE
Invalid state UsageFault:
0 = no invalid state UsageFault
1 = the processor has attempted to execute an instruction that makes illegal use of the EPSR.
When this bit is set to 1, the PC value stacked for the exception return points to the instruction that
attempted the illegal use of the EPSR.
This bit is not set to 1 if an undefined instruction uses the EPSR.
[0]
UNDEFINSTR
Undefined instruction UsageFault:
0 = no undefined instruction UsageFault
1 = the processor has attempted to execute an undefined instruction.
When this bit is set to 1, the PC value stacked for the exception return points to the undefined instruction.
An undefined instruction is an instruction that the processor cannot decode.
Table 4-27 UFSR bit assignments (continued)
Bits
Name
Function