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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Virtual Memory System <strong>Architecture</strong> (VMSA)<br />

The instruction is in the same 4KB block of memory (aligned to 4KB) from which an instruction has<br />

previously been required by a simple sequential execution of the program with the MMU disabled,<br />

or is in the 4KB block immediately following such a block.<br />

Note<br />

Software must ensure that instructions that will be executed when the MMU is disabled are located<br />

within 4KB blocks of the address space that contain only memory which is tolerant to prefetching<br />

<strong>and</strong> speculative accesses, <strong>and</strong> that the following 4KB blocks of the address space also contain only<br />

memory which is tolerant to prefetching <strong>and</strong> speculative accesses.<br />

Enabling or disabling the MMU effectively changes the translation tables that are in use. The<br />

synchronization requirements that apply on changing translation tables also apply to enabling or<br />

disabling the MMU. For more information, see Changing translation table attributes on page B3-21.<br />

See also Requirements for instruction caches on page B3-23.<br />

In addition, if the physical address of the code that enables or disables the MMU differs from its<br />

MVA, instruction prefetching can cause complications. Therefore, <strong>ARM</strong> strongly recommends that<br />

any code that enables or disables the MMU has identical virtual <strong>and</strong> physical addresses.<br />

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

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

Saved successfully!

Ooh no, something went wrong!