System Control Coprocessor
ARM DDI 0301H
Copyright © 2004-2009 ARM Limited. All rights reserved.
3-20
ID012310
Non-Confidential, Unrestricted Access
3.2.2
c0, Main ID Register
The purpose of the Main ID Register is to return the device ID code that contains information
about the processor.
The Main ID Register is:
•
in CP15 c0
•
a 32 bit read-only register common to the Secure and Non-secure worlds
•
accessible in privileged modes only.
Figure 3-10 shows the arrangement of bits in the register.
Figure 3-10 Main ID Register format
The contents of the Main ID Register depend on the specific implementation. Table 3-4 lists
how the bit values correspond with the Main ID Register functions.
Note
If an Opcode_2 value corresponding to an unimplemented or reserved ID register with CRm
equal to c0 and Opcode_1 = 0 is encountered, the system control coprocessor returns the value
of the main ID register.
Table 3-5 lists the results of attempted access for each mode.
Variant
number
Implementor
31
24 23
20 19
16 15
4 3
0
Architecture
Primary part number
Revision
Table 3-4 Main ID Register bit functions
Bits
Field name
Function
[31:24]
Implementor
Indicates implementor, ARM Limited:
0x41
[23:20]
Variant number
The major revision number
n
in the r
n
part of the r
n
p
n
revision status.
0x0
[19:16]
Architecture
Indicates that the architecture is given in the CPUID registers:
0xF
[15:4]
Primary part number
Indicates part number, ARM1176JZF-S:
0xB76
[3:0]
Revision
The minor revision number
n
in the p
n
part of the r
n
p
n
revision status. For example:
for release r0p0:
0x0
for release r0p7:
0x7
Table 3-5 Results of access to the Main ID Register
Secure Privileged
Non-secure Privileged
User
Read
Write
Read
Write
Data
Undefined exception
Data
Undefined exception
Undefined exception