05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

H.6 System level memory model<br />

<strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 Differences<br />

The pseudocode listed in Aligned memory accesses on page B2-31 <strong>and</strong> Unaligned memory accesses on<br />

page B2-32 covers the alignment behavior of all architecture variants from <strong>ARM</strong>v4. For <strong>ARM</strong>v4 <strong>and</strong><br />

<strong>ARM</strong>v5, SCTLR.U is zero, see Alignment on page AppxG-6.<br />

The following sections describe the system level memory model:<br />

Cache support<br />

Tightly Coupled Memory (TCM) support<br />

Virtual memory support<br />

Protected memory support on page AppxH-28.<br />

H.6.1 Cache support<br />

CP15 operations are defined that provide cache operations for managing level 1 instruction, data, or unified<br />

caches. Caches can be direct mapped or N-way associative. <strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 define a Cache Type ID<br />

Register, to enable software to determine the level 1 cache topology.<br />

<strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 support virtual (virtually indexed, virtually tagged) or physical caches. In a virtual<br />

memory system that supports virtual cache or caches, there is no coherence support for virtual aliases that<br />

map to the same physical address. When a virtual to physical address mapping changes, caches must be<br />

cleaned <strong>and</strong> invalidated accordingly.<br />

Cache management <strong>and</strong> flushing of any write buffer in the processor is IMPLEMENTATION DEFINED <strong>and</strong><br />

managed by CP15. CP15 also supports configuration <strong>and</strong> control of cache lockdown. For more information<br />

on cache management support see System Control coprocessor (CP15) support on page AppxH-31, <strong>and</strong> c7,<br />

Cache operations on page AppxH-49 <strong>and</strong> c9, cache lockdown support on page AppxH-52.<br />

H.6.2 Tightly Coupled Memory (TCM) support<br />

TCM support in <strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 is IMPLEMENTATION DEFINED.<br />

H.6.3 Virtual memory support<br />

The <strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 translation tables support a similar two level translation table format to the<br />

<strong>ARM</strong>v7 tables. However, there are significant differences in the translation table format because of the<br />

following:<br />

<strong>ARM</strong>v6 introduced additional bits for encoding memory types, attributes, <strong>and</strong> extended cache<br />

attributes.<br />

The new translation table format in <strong>ARM</strong>v6 does not support subpage access permissions.<br />

<strong>ARM</strong>v4 does not support 16MB Supersections.<br />

Only <strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 support tiny (1KB) pages. The fine second level page format is not<br />

supported from <strong>ARM</strong>v6.<br />

For general information about address translation in a VMSA, see About the VMSA on page B3-2<br />

<strong>ARM</strong> DDI 0406B Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. AppxH-21

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!