
DR
AFT
DR
AFT
DRAFT
DR
D
RAFT
DRAFT
DRA
FT DRAF
D
RAFT DRAFT DRAFT DRAFT DRAFT D
DRAFT
D
RAFT DRA
FT DRAFT DRAFT DRAFT DRA
UM10360_0
© NXP B.V. 2009. All rights reserved.
User manual
Rev. 00.06 — 5 June 2009
747 of 808
NXP Semiconductors
UM10360
Chapter 34: Appendix: Cortex-M3 User Guide
4.3.11 Configurable Fault Status Register
The CFSR indicates the cause of a memory management fault, bus fault, or usage fault.
See the register summary in
for its attributes. The bit assignments are:
The following subsections describe the subregisters that make up the CFSR:
•
Table 34–640 “MMFSR bit assignments”
•
Table 34–645 “BFAR bit assignments”
•
Table 34–642 “UFSR bit assignments”
The CFSR is byte accessible. You can access the CFSR or its subregisters as follows:
•
access the complete CFSR with a word access to
0xE000ED28
•
access the MMFSR with a byte access to
0xE000ED28
•
access the MMFSR and BFSR with a halfword access to
0xE000ED28
•
access the BFSR with a byte access to
0xE000ED29
•
access the UFSR with a halfword access to
0xE000ED2A
.
4.3.11.1
Memory Management Fault Status Register
The flags in the MMFSR indicate the cause of memory access faults. The bit assignments
are shown in
0HPRU\0DQDJHPHQW
)DXOW6WDWXV5HJLVWHU
8VDJH)DXOW6WDWXV5HJLVWHU
%XV)DXOW6WDWXV
5HJLVWHU
8)65
%)65
00)65
Table 640. MMFSR bit assignments
Bits
Name
Function
[7]
MMARVALID
Memory Management Fault Address Register
(MMAR) valid flag:
0 = value in MMAR is not a valid fault address
1 = MMAR holds a valid fault address.
If a memory management fault occurs and is escalated to a hard
fault because of priority, the hard fault handler must set this bit to 0.
This prevents problems on return to a stacked active memory
management fault handler whose MMAR value has been
overwritten.
[6:5]
-
Reserved.
[4]
MSTKERR
Memory manager fault on stacking for exception entry:
0 = no stacking fault
1 = stacking for an exception entry has caused one or more access
violations.
When this bit is 1, the SP is still adjusted but the values in the
context area on the stack might be incorrect. The processor has not
written a fault address to the MMAR.