System Control Coprocessor
ARM DDI 0301H Copyright © 2004-2009 ARM Limited. All rights reserved. 3-57
ID012310 Non-Confidential, Unrestricted Access
To use the Non-Secure Access Control Register read or write CP15 with:
• Opcode_1 set to 0
• CRn set to c1
• CRm set to c1
• Opcode_2 set to 2.
For example:
MRC p15, 0, <Rd>, c1, c1, 2 ; Read Non-Secure Access Control Register data
MCR p15, 0, <Rd>, c1, c1, 2 ; Write Non-Secure Access Control Register data
Table 3-52 lists the results of attempted access for each mode.
3.2.13 c2, Translation Table Base Register 0
The purpose of the Translation Table Base Register 0 is to hold the physical address of the
first-level translation table.
You use Translation Table Base Register 0 for process-specific addresses, where each process
maintains a separate first-level page table. On a context switch you must modify both
Translation Table Base Register 0 and the Translation Table Base Control Register, if
appropriate.
Table 3-53 on page 3-58 lists the purposes of the individual bits in the Translation Table Base
Register 0.
The Translation Table Base Register 0 is:
•in CP15 c2
• a 32 bit read/write register banked for Secure and Non-secure worlds
• accessible in privileged modes only.
Figure 3-32 shows the bit arrangement for the Translation Table Base Register 0.
Figure 3-32 Translation Table Base Register 0 format
Table 3-52 Results of access to the Auxiliary Control Register
Secure Privileged Non-secure Privileged
User
Read Write Read Write
Data Data Data Undefined exception Undefined exception
SC
Translation table base 0 UNP/SBZ
RGN
31 14-N 13-N 0
P
1
2
34
5