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.7.7 c2, c3, c5, <strong>and</strong> c6, PMSA support<br />

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

While the general principles for memory protection in <strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 are the same, CP15 support for<br />

protected memory is different from the programming model of <strong>ARM</strong>v6 <strong>and</strong> <strong>ARM</strong>v7. Memory regions have<br />

configurable base address <strong>and</strong> size attributes. There are also registers for describing cacheability,<br />

bufferability, <strong>and</strong> access permissions across the regions. For more information, see Memory model <strong>and</strong><br />

memory ordering on page AppxH-10.<br />

<strong>ARM</strong>v4 <strong>and</strong> <strong>ARM</strong>v5 support a fixed number of memory regions, either:<br />

eight unified memory regions<br />

eight data <strong>and</strong> eight instruction regions.<br />

Table H-19 shows the PMSA register support.<br />

Table H-19 PMSA register support<br />

Register CRn opc1 CRm opc2<br />

Data or unified Cacheability Register, DCR c2 0 c0 0<br />

Instruction Cacheability Register, ICR c2 0 c0 1<br />

Data or unified Bufferability Register, DBR c3 0 c0 0<br />

Data or unified Access Permission Register, DAPR c5 0 c0 0<br />

Instruction Access Permission Register, IAPR c5 0 c0 1<br />

Data or unified Extended Access Permission Register, DEAPR c5 0 c0 2<br />

Instruction Extended Access Permission Register, IEAPR c5 0 c0 3<br />

Data or unified Memory Region Registers, DMRR0-DMRR7 c6 0 c0-c7 a 0<br />

Instruction Memory Region Registers, IMRR0-IMRR7 c6 0 c0-c7 a 1<br />

a. selects the region, for example == 6 selects the region register for region 6, DMRR6 or IMRR6.<br />

If an implementation has a single set of protection regions that apply to both instruction <strong>and</strong> data accesses,<br />

only the registers that are accessed using even values of exist. Where separate data <strong>and</strong> instruction<br />

regions are supported, with the exception of the extended access permission registers, registers associated<br />

with data have == 0 <strong>and</strong> those associated with instructions have == 1. All PMSA registers are<br />

32-bit registers <strong>and</strong> only accessible in privileged modes.<br />

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

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

Saved successfully!

Ooh no, something went wrong!