GPR Shadow Registers
9.1 Coprocessor 0 Register Summary
Table 9.1 lists the CP0 registers in numerical order. The individual registers are described later in this document. If the compliance level is qualified (e.g., “Required (TLB MMU)”), it applies only if the qualifying condition is true.
The Sel column indicates the value to be used in the field of the same name in the MFC0 and MTC0 instructions.
Table 9.1 Coprocessor 0 Registers in Numerical Order
Register Number Sel1
Register
Name Function Reference Compliance Level
0 0 Index Index into the TLB array Section9.4 on page
98
Required (TLB MMU); Optional
(Others) 0 1 MVPControl Per-processor register containing global
MIPS® MT configuration data
MIPS®MT ASE Specification
Required (MIPS MT ASE); Optional
(Oth-ers) 0 2 MVPConf0 Per-processor multi-VPE dynamic
con-figuration information 0 3 MVPConf1 Per-processor multi-VPE dynamic
con-figuration information
MIPS®MT ASE Specification
Optional
1 0 Random Randomly generated index into the TLB
array
Section9.5 on page 99
Required (TLB MMU); Optional
(Others) 1 1 VPEControl Per-VPE register containing relatively
volatile thread configuration data
MIPS®MT ASE Specification
Required (MIPS MT ASE); Optional
(Oth-ers) 1 2 VPEConf0 Per-VPE multi-thread configuration
information 1 3 VPEConf1 Per-VPE multi-thread configuration
information
MIPS®MT ASE Specification
Optional
1 4 YQMask Per-VPE register defining which YIELD
qualifier bits may be used without gener-ating an exception
1 5 VPESchedule Per-VPE register to manage scheduling of a VPE within a processor
MIPS®MT ASE Specification
Optional 1 6 VPEScheFBack Per-VPE register to provide scheduling
feedback to software
MIPS®MT ASE Specification
Optional 1 7 VPEOpt Per-VPE register to provide control over
optional features, such as cache partition-ing control
MIPS®MT ASE Specification
Optional
2 0 EntryLo0 Low-order portion of the TLB entry for even-numbered virtual pages
Section9.6 on page 100
Required (TLB MMU); Optional
(Others) 2 1 TCStatus Per-TC status information, including
cop-ies of thread-specific bits ofStatus and EntryHi registers.
2 2 TCBind Per-TC information about TC ID and
VPE binding 2 3 TCRestart Per-TC value of restart instruction
address for the associated thread of exe-cution 2 4 TCHalt Per-TC register controlling Halt state of
TC 2 5 TCContext Per-TC read/write storage for operating
system use 2 6 TCSchedule Per-TC register to manage scheduling of
a TC
MIPS®MT ASE Specification
Optional 2 7 TCScheFBack Per-TC register to provide scheduling
feedback to software
MIPS®MT ASE Specification
Optional 3 0 EntryLo1 Low-order portion of the TLB entry for
odd-numbered virtual pages
Section9.6 on page 100
Required (TLB MMU); Optional
(Others) 3 7 TCOpt Per-TC register to provide control over
optional features, such as cache partition-ing control
MIPS®MT ASE Specification
Optional
4 0 Context Pointer to page table entry in memory Section9.7 on page 107
Required (TLB MMU); Optional
(Others)
4 1 ContextConfig Context register configuration SmartMIPS ASE
Specification and Section9.8 on page 111
Required (Smart-MIPS ASE);
Optional (Others)
Table 9.1 Coprocessor 0 Registers in Numerical Order
Register Number Sel1
Register
Name Function Reference Compliance Level
4 2 UserLocal User information that can be written by privileged software and read via RDHWR register 29. If the processor implements the MIPS® MT ASE, this is a per-TC register.
Section9.9 on page 113
Recommended (Release 2)
4 3 XContextConfig XContext register configuration Section9.10 on page 115
Optional 5 0 PageMask Control for variable page size in TLB
entries
Section9.11 on page 117
Required (TLB MMU); Optional
(Others)
5 1 PageGrain Control for small page support Section9.12 on
page 121 and Smart-MIPS ASE Specifi-cation
Required (Smart-MIPS ASE);
Optional (Release 2)
6 0 Wired Controls the number of fixed (“wired”)
TLB entries
Section9.13 on page 125
Required (TLB MMU); Optional
(Others) 6 1 SRSConf0 Per-VPE register indicating and
option-ally controlling shadow register set con-figuration 6 2 SRSConf1 Per-VPE register indicating and
option-ally controlling shadow register set con-figuration
MIPS®MT ASE Specification
Optional
6 3 SRSConf2 Per-VPE register indicating and option-ally controlling shadow register set con-figuration
MIPS®MT ASE Specification
Optional
6 4 SRSConf3 Per-VPE register indicating and option-ally controlling shadow register set con-figuration
MIPS®MT ASE Specification
Optional
6 5 SRSConf4 Per-VPE register indicating and option-ally controlling shadow register set con-figuration
MIPS®MT ASE Specification
Optional
7 0 HWREna Enables access via the RDHWR
instruc-tion to selected hardware registers
Section9.14 on page 127
Required (Release 2)
7 1-7 Reserved for future extensions Reserved
8 0 BadVAddr Reports the address for the most recent address-related exception
Section9.15 on page 129
Required
9 0 Count Processor cycle count Section9.16 on
page 130
Required
9 6-7 Available for implementation dependent
user
Section9.17 on page 130
Implementation Dependent
Table 9.1 Coprocessor 0 Registers in Numerical Order
Register Number Sel1
Register
Name Function Reference Compliance Level
10 0 EntryHi High-order portion of the TLB entry Section9.18 on page 131
Required (TLB MMU); Optional
(Others)
11 0 Compare Timer interrupt control Section9.19 on
page 134
Required
11 6-7 Available for implementation dependent
user
Section9.20 on page 134
Implementation Dependent
12 0 Status Processor status and control Section9.21 on
page 135
Required 12 1 IntCtl Interrupt system status and control Section9.22 on
page 144
Required (Release 2) 12 2 SRSCtl Shadow register set status and control Section9.23 on
page 147
Required (Release 2)
12 3 SRSMap Shadow set IPL mapping Section9.24 on
page 150
Required (Release 2 and shadow sets
implemented) 12 4 View_IPL Contiguous view of IM and IPL fields. MIPS® MCU ASE
Specification
Required (MIPS MCU ASE);
Optional (Others)
12 5 SRSMap2 Shadow set IPL mapping MIPS® MCU ASE
Specification
Required (MIPS MCU ASE);
Optional (Others)
13 0 Cause Cause of last general exception Section9.25 on
page 151
Required 13 4 View_RIPL Contiguous view of IP and RIPL fields. MIPS® MCU ASE
Specification
Required (MIPS MCU ASE);
Optional (Others)
14 0 EPC Program counter at last exception Section9.26 on
page 157
Required 15 0 PRId Processor identification and revision Section9.27 on
page 159
Required
15 1 EBase Exception vector base register Section9.28 on
page 161
Required (Release 2)
15 2 CDMMBase Common Device Memory Map Base
register
Section9.29 on page 164
Optional 15 3 CMGCRBase Coherency Manager Global Control
Reg-ister Base regReg-ister
Section9.30 on page 166
Optional
16 0 Config Configuration register Section9.31 on
page 167
Required
Table 9.1 Coprocessor 0 Registers in Numerical Order
Register Number Sel1
Register
Name Function Reference Compliance Level
16 1 Config1 Configuration register 1 Section9.32 on page 170
Required
16 2 Config2 Configuration register 2 Section9.33 on
page 174
Optional
16 3 Config3 Configuration register 3 Section9.34 on
page 177
Optional
16 3 Config4 Configuration register 4 Section9.35 on
page 183
Optional
16 6-7 Available for implementation dependent
user
Section9.36 on page 187
Implementation Dependent
17 0 LLAddr Load linked address Section9.37 on
page 188
Optional
18 0-n WatchLo Watchpoint address Section9.38 on
page 189
Optional
19 0-n WatchHi Watchpoint control Section9.39 on
page 191
Optional 20 0 XContext Extended Addressing Page Table Context Section9.40 on
page 193
Required (64-bit TLB MMU) Optional (Others)
21 all Reserved for future extensions Reserved
22 all Available for implementation dependent
use
Section9.41 on page 196
Implementation Dependent
23 0 Debug EJTAG Debug register EJTAG Specification Optional
23 1 TraceControl PDtrace control register PDtrace
Specifica-tion
Optional
23 2 TraceControl2 PDtrace control register PDtrace
Specifica-tion
Optional
23 3 UserTraceData1 PDtrace control register PDtrace
Specifica-tion
Optional
23 4 TraceIBPC PDtrace control register PDtrace
Specifica-tion
Optional
23 5 TraceDBPC PDtrace control register PDtrace
Specifica-tion
Optional
23 6 Debug2 EJTAG Debug2 register EJTAG Specification Optional
24 0 DEPC Program counter at last EJTAG debug
exception
EJTAG Specification Optional
24 2 TraceContol3 PDtrace control register PDtrace
Specifica-tion
Optional
Table 9.1 Coprocessor 0 Registers in Numerical Order
Register Number Sel1
Register
Name Function Reference Compliance Level
9.2 Notation
For each register described below, field descriptions include the read/write properties of the field, and the reset state of the field. For the read/write properties of the field, the following notation is used:
24 3 UserTraceData2 PDtrace control register PDtrace
Specifica-tion
Optional
25 0-n PerfCnt Performance counter interface Section9.45 on
page 200
Recommended 26 0 ErrCtl Parity/ECC error control and status Section9.46 on
page 205
Optional 27 0-3 CacheErr Cache parity error control and status Section9.47 on
page 206
Optional
28 even
selects
TagLo Low-order portion of cache tag interface Section9.48 on page 207
Required (Cache)
28 odd
selects
DataLo Low-order portion of cache data interface Section9.49 on page 208
Optional
29 even
selects
TagHi High-order portion of cache tag interface Section9.50 on page 209
Required (Cache)
29 odd
selects
DataHi High-order portion of cache data inter-face
Section9.51 on page 210
Optional
30 0 ErrorEPC Program counter at last error Section9.52 on
page 211
Required
31 0 DESAVE EJTAG debug exception save register EJTAG Specification Optional
31 2-7 KScratchn Scratch Registers for Kernel Mode Section9.54 on page 214
Optional; KScratch1 at select 2 and KScratch2 at select 3
are recommended.
1. Any select (Sel) value not explicitly noted as available for implementation-dependent use is reserved for future use by the Architec-ture.
Table 9.2 Read/Write Bit Field Notation
Read/Write
Notation Hardware Interpretation Software Interpretation R/W A field in which all bits are readable and writable by software and, potentially, by hardware.
Hardware updates of this field are visible by software read. Software updates of this field are vis-ible by hardware read.
If the Reset State of this field is “Undefined”, either software or hardware must initialize the value before the first read will return a predictable value. This should not be confused with the formal definition of UNDEFINED behavior.
Table 9.1 Coprocessor 0 Registers in Numerical Order
Register Number Sel1
Register
Name Function Reference Compliance Level