
Cortex-M4 Peripherals
ARM DUI 0553A
Copyright © 2010 ARM. All rights reserved.
4-31
ID121610
Non-Confidential
When an unaligned access faults, the address is the actual address that faulted. Because a single
read or write instruction can be split into multiple aligned accesses, the fault address can be any
address in the range of the requested access size.
Flags in the MMFSR indicate the cause of the fault, and whether the value in the MMFAR is
valid. See
MemManage Fault Status Register
4.3.13
BusFault Address Register
The BFAR contains the address of the location that generated a BusFault. See the register
summary in
for its attributes. The bit assignments are:
When an unaligned access faults the address in the BFAR is the one requested by the instruction,
even if it is not the address of the fault.
Flags in the BFSR indicate the cause of the fault, and whether the value in the BFAR is valid.
See
4.3.14
Auxiliary Fault Status Register
The AFSR contains additional system fault information. See the register summary in
for its attributes.
This register is read, write to clear. This means that bits in the register read normally, but writing
1 to any bit clears that bit to 0.
The bit assignments are:
Each AFSR bit maps directly to an
AUXFAULT
input of the processor, and a single-cycle
HIGH signal on the input sets the corresponding AFSR bit to one. It remains set to 1 until you
write 1 to the bit to clear it to zero. See your vendor documentation for more information.
When an AFSR bit is latched as one, an exception does not occur. Use an interrupt if an
exception is required.
4.3.15
System control block usage hints and tips
Ensure software uses aligned accesses of the correct size to access the system control block
registers:
•
except for the CFSR and SHPR1-SHPR3, it must use aligned word accesses
•
for the CFSR and SHPR1-SHPR3 it can use byte or aligned halfword or word accesses.
The processor does not support unaligned accesses to system control block registers.
Table 4-30 BFAR bit assignments
Bits
Name
Function
[31:0]
ADDRESS
When the BFARVALID bit of the BFSR is set to 1, this field holds the address of the location that
generated the BusFault
Table 4-31 AFSR bit assignments
Bits
Name
Function
[31:0]
IMPDEF
Implementation defined. The bits map to the
AUXFAULT
input signals.