Memory Management Unit
ARM DDI0198D
Copyright © 2001-2003 ARM Limited. All rights reserved.
3-21
3.3
MMU faults and CPU aborts
The MMU generates an abort on the following types of faults:
•
alignment faults (data accesses only)
•
translation faults
•
domain faults
•
permission faults.
In addition, an external abort can be raised by the external system. This can happen only
for access types that have the core synchronized to the external system:
•
page walks
•
noncached reads
•
nonbuffered writes
•
noncached read-lock-write sequence (SWP).
Alignment fault checking is enabled by the A bit in CP15 c1. Alignment fault checking
is not affected by whether or not the MMU is enabled. Translation, domain, and
permission faults are only generated when the MMU is enabled.
The access control mechanisms of the MMU detect the conditions that produce these
faults. If a fault is detected as a result of a memory access, the MMU aborts the access
and signals the fault condition to the CPU core. The MMU retains status and address
information about faults generated by the data accesses in the data fault status register
and fault address register (see
Fault address and fault status registers
).
The MMU also retains status about faults generated by instruction fetches in the
instruction fault status register.
Note
The address information for an instruction side abort is contained in the core link
register r14_abt.
An access violation for a given memory access inhibits any corresponding external
access to the AHB interface, with an abort returned to the CPU core.
3.3.1
Fault address and fault status registers
On a Data Abort, the MMU places an encoded four-bit value, the fault status, along with
the four-bit encoded domain number, in the data FSR. Similarly, on a Prefetch Abort, in
the instruction FSR (intended for debug purposes only). In addition, the MVA
associated with the Data Abort is latched into the FAR. If an access violation
simultaneously generates more than one source of abort, they are encoded in the priority
given in Table 3-9. The FAR is not updated by faults caused by instruction prefetches.
Содержание ARM926EJ-S
Страница 6: ...Contents vi Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 10: ...List of Tables x Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 14: ...List of Figures xiv Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 22: ...Preface xxii Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 28: ...Introduction 1 6 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 96: ...Memory Management Unit 3 32 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 108: ...Caches and Write Buffer 4 12 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 152: ...Bus Interface Unit 6 12 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 156: ...Noncachable Instruction Fetches 7 4 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 176: ...Instruction Memory Barrier 9 6 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 180: ...Embedded Trace Macrocell Support 10 4 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 206: ...Signal Descriptions A 18 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...
Страница 224: ...CP15 Test and Debug Registers B 18 Copyright 2001 2003 ARM Limited All rights reserved ARM DDI0198D ...