09.12.2012 Views

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

Cortex-A8 Technical Reference Manual - ARM Information Center

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.

3.2.32 c2, Translation Table Base Register 1<br />

System Control Coprocessor<br />

A write to the Translation Table Base Register 0 updates the address of the first level translation<br />

table from the value in bits [31:7] of the written value, to account for the maximum value of 7<br />

for N. The number of bits of this address that the processor uses, and the required alignment of<br />

the first level translation table, depends on the value of N, see c2, Translation Table Base<br />

Control Register on page 3-60.<br />

A read from the Translation Table Base Register 0 returns the complete address of the first level<br />

translation table in bits [31:7] of the read value, regardless of the value of N.<br />

To access the Translation Table Base Register 0, read or write CP15 c2 with:<br />

MRC p15, 0, , c2, c0, 0 ; Read Translation Table Base Register<br />

MCR p15, 0, , c2, c0, 0 ; Write Translation Table Base Register<br />

Note<br />

The processor cannot perform a translation table walk from L1 cache. Therefore, if C is set to<br />

1, to ensure coherency, you must store translation tables in inner write-through memory. If you<br />

store the translation tables in an inner write-back memory region, you must clean the<br />

appropriate cache entries after modification so that the mechanism for the hardware translation<br />

table walks sees them.<br />

The purpose of the Translation Table Base Register 1 is to hold the physical address of the first<br />

level table. The expected use of the Translation Table Base Register 1 is for OS and I/O<br />

addresses.<br />

The Translation Table Base Register 1 is:<br />

• a read/write register banked for Secure and Nonsecure states<br />

• accessible in privileged modes only.<br />

Figure 3-27 shows the bit arrangement of the Translation Table Base Register 1.<br />

31 14 13 5 4 3 2 1 0<br />

Translation table base 1<br />

Reserved<br />

Figure 3-27 Translation Table Base Register 1 format<br />

Table 3-62 shows how the bit values correspond with the Translation Table Base Register 1<br />

functions.<br />

Bits Field Function<br />

[31:14] Translation table<br />

base 1<br />

[13:5] - Reserved. RAZ, SBZ.<br />

<strong>ARM</strong> DDI 0344K Copyright © 2006-2010 <strong>ARM</strong> Limited. All rights reserved. 3-59<br />

ID060510 Non-Confidential<br />

RGN<br />

P<br />

S C<br />

Table 3-62 Translation Table Base Register 1 bit functions<br />

Holds the translation table base address, the physical address of the first level translation<br />

table.<br />

[4:3] RGN Indicates the outer cacheable attributes for translation table walking:<br />

b00 = outer noncacheable<br />

b01 = write-back, write allocate<br />

b10 = write-through, no allocate on write<br />

b11 = write-back, no allocate on write.

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

Saved successfully!

Ooh no, something went wrong!