Memory Management Unit
ARM DDI 0301H
Copyright © 2004-2009 ARM Limited. All rights reserved.
6-16
ID012310
Non-Confidential, Unrestricted Access
Table 6-3 shows how the MMU and cache interpret the cache policy bits.
You can choose the write allocation policy that an implementation supports. The Allocate On
Write and No Allocate On Write cache policies indicate the preferred allocation policy for a
memory region, but you must not rely on the memory system implementing that policy. The
processor does not support Inner Allocate on Write.
Not all Inner and Outer cache policies are mandatory. Table 6-4 lists possible implementation
options.
When the MMU is off and TexRemap=0:
•
All data accesses are treated as Shared, Inner Strongly Ordered, Outer Non-cacheable.
•
Instruction accesses are treated as Non-Shared, Inner and Outer Write-Through, No
Allocate on Write, when the Instruction Cache is on, I=1, bit [12], see
c1, Control Register
on page 3-44.
Instruction accesses are treated as Shared, Inner Strongly Ordered, Outer Non-Cacheable,
when the Instruction Cache is off, see
Behavior with MMU disabled
on page 6-9.
TexRemap=1 configuration
Only three bits, TEX[0], C, and B, are relevant in this configuration. The OS can use the
TEX[2:1] bits to manage the page tables.
In this configuration the processor provides the OS with a remap capability for the memory
attribute. Two CP15 registers, the
Primary Region Remap Register
(PRRR) and the
Normal
Memory Region Register
(NMRR) come into effect.
Table 6-3 Cache policy bits
BB or AA bits
Cache policy
b00
Noncacheable
b01
Write-Back cached, Write Allocate
b10
Write-Through cached, No Allocate on Write
b11
Write-Back cached, No Allocate on Write
Table 6-4 Inner and Outer cache policy implementation options
Cache policy
Implementation options
Supported by
the processor
Inner Noncacheable
Mandatory.
Yes
Inner Write-Through
Mandatory.
Yes
Inner Write-Back
Optional. If not supported, the memory system must implement this as
Inner Write-Through.
Yes
Outer Noncacheable
Mandatory.
System-dependent
Outer Write-Through
Optional. If not supported, the memory system must implement this as
Outer Non-cacheable.
System-dependent
Outer Write-Back
Optional. If not supported, the memory system must implement this as
Outer Write-Through.
System-dependent