4.4.10 Configurable fault status register (CFSR; UFSR+BFSR+MMFSR)
Address offset: 0x28
Reset value: 0x0000 0000
Required privilege: Privileged
The CFSR is byte-accessible and indicates the cause of a memory management fault, bus fault, or usage fault.
CFSR subregisters
| Subregister |
Address |
Access |
| MMFSR |
Bits[7:0] |
Byte access at 0xE000ED28 |
| BFSR |
Bits[15:8] |
Byte access at 0xE000ED29 |
| UFSR |
Bits[31:16] |
Halfword access at 0xE000ED2A |
| Full CFSR |
Bits[31:0] |
Word access at 0xE000ED28 |
Bitfield definitions
UFSR — Usage Fault Status Register (Bits[31:16])
| Bit |
Field |
Type |
Description |
| 31 |
DIVBY |
rc_w1 |
Divide by zero trap |
| 30 |
ZERO |
rc_w1 |
Unaligned memory access trap |
| 29 |
UNALI |
rc_w1 |
Unaligned access fault |
| 28 |
UNALIGNED |
rc_w1 |
Unaligned memory access fault |
| 27 |
Reserved |
- |
- |
| 26 |
NOCP |
rc_w1 |
No coprocessor fault |
| 25 |
INVPC |
rc_w1 |
Invalid PC load fault |
| 24 |
INVSTATE |
rc_w1 |
Invalid state fault |
| 23 |
UNDEF |
rc_w1 |
Undefined instruction fault |
| 22 |
Reserved |
- |
- |
| 21 |
INSTR |
rc_w1 |
Instruction access fault |
BFSR — Bus Fault Status Register (Bits[15:8])
| Bit |
Field |
Type |
Description |
| 15 |
BFARVALID |
rc_w1 |
Bus Fault Address Register valid |
| 14 |
Reserved |
- |
- |
| 13 |
LSPERR |
rw |
Lazy save error |
| 12 |
STKERR |
rw |
Stack error |
| 11 |
UNSTKERR |
rw |
Unstack error |
| 10 |
IMPRECISERR |
rw |
Imprecise data access error |
| 9 |
PRECISERR |
rw |
Precise data access error |
| 8 |
IBUSERR |
rw |
Instruction bus error |
MMFSR — Memory Management Fault Status Register (Bits[7:0])
| Bit |
Field |
Type |
Description |
| 7 |
MMARVALID |
rc_w1 |
Memory Management Fault Address Register valid |
| 6 |
Reserved |
- |
- |
| 5 |
MLSPERR |
rw |
Lazy save error (memory management) |
| 4 |
MSTKERR |
rw |
Stack error (memory management) |
| 3 |
MUNSTKERR |
rw |
Unstack error (memory management) |
| 2 |
Reserved |
- |
- |
| 1 |
DACCVIOL |
rw |
Data access violation |
| 0 |
IACCVIOL |
rw |
Instruction access violation |
See also
- Usage fault status register (UFSR) — page 238
- Bus fault status register (BFSR) — page 239
- Memory management fault address register (MMFSR) — page 240