EasyManua.ls Logo

ARM Cortex-M4 - Busfault Address Register; Auxiliary Fault Status Register; System Control Block Usage Hints and Tips

ARM Cortex-M4
276 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
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 on page 4-25.
4.3.13 BusFault Address Register
The BFAR contains the address of the location that generated a BusFault. See the register
summary in Table 4-12 on page 4-11 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 BusFault Status Register on page 4-26.
4.3.14 Auxiliary Fault Status Register
The AFSR contains additional system fault information. See the register summary in Table 4-12
on page 4-11 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.

Table of Contents

Related product manuals