E200Z1RM, e200z1 Power Architecture Ž Core - Reference Manual
E200Z1RM, e200z1 Power Architecture Ž Core - Reference Manual
E200Z1RM, e200z1 Power Architecture Ž Core - Reference Manual
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Register Model<br />
2.1 <strong>Power</strong> <strong>Architecture</strong> Book E Registers<br />
e200 supports most of the registers defined by <strong>Power</strong> <strong>Architecture</strong> Book E Specification. Notable<br />
exceptions are the Floating Point registers FPR0–FPR31 and FPSCR. e200does not support the Book E<br />
floating-point architecture in hardware. The e200-supported <strong>Power</strong> <strong>Architecture</strong> Book E registers are<br />
described as follows (e200-specific registers are described in the Section 2.2, “e200-Specific Special<br />
Purpose Registers”).<br />
User-level registers—The user-level registers can be accessed by all software with either user or<br />
supervisor privileges. They include the following:<br />
— General-purpose registers (GPRs). The thirty-two 32-bit GPRs (GPR0–GPR31) serve as data<br />
source or destination registers for integer instructions and provide data for generating<br />
addresses.<br />
— Condition register (CR). The 32-bit CR consists of eight 4-bit fields, CR0–CR7, that reflect<br />
results of certain arithmetic operations and provide a mechanism for testing and branching. See<br />
“Condition Register (CR),” in Chapter 3, “Branch and Condition Register Operations, <strong>Power</strong><br />
<strong>Architecture</strong> Book E Specification.<br />
The remaining user-level registers are SPRs. Note that the <strong>Power</strong> <strong>Architecture</strong> Book E provides the<br />
mtspr and mfspr instructions for accessing SPRs.<br />
— Integer exception register (XER). The XER indicates overflow and carries for integer<br />
operations. See “XER Register (XER),” in Chapter 4, “Integer Operations” of <strong>Power</strong><br />
<strong>Architecture</strong> Book E Specification for more information.<br />
— Link register (LR). The LR provides the branch target address for the Branch [Conditional] to<br />
Link Register (bclr, bclrl, se_blr, se_blrl) instructions, and is used to hold the address of the<br />
instruction that follows a branch and link instruction, typically used for linking to subroutines.<br />
See “Link Register (LR)”, in Chapter 3, “Branch and Condition Register Operations” of <strong>Power</strong><br />
<strong>Architecture</strong> Book E Specification.<br />
— Count register (CTR). The CTR holds a loop count that can be decremented during execution<br />
of appropriately coded branch instructions. The CTR also provides the branch target address<br />
for the Branch [Conditional] to Count Register (bcctr, bcctrl, se_bctr, se_bctrl) instructions.<br />
See “Count Register (CTR)”, in Chapter 3, “Branch and Condition Register Operations” of<br />
<strong>Power</strong> <strong>Architecture</strong> Book E Specification.<br />
— The Time Base facility (TB) consists of two 32-bit registers—Time Base Upper (TBU) and<br />
Time Base Lower (TBL). These two registers are accessible in a read-only fashion to user-level<br />
software. See “Time Base”, in Chapter 8, “Timer Facilities” of <strong>Power</strong> <strong>Architecture</strong> Book E<br />
Specification.<br />
— SPRG4–SPRG7. The <strong>Power</strong> <strong>Architecture</strong> Book E architecture defines Software-Use Special<br />
Purpose Registers (SPRGs). SPRG4 through SPRG7 are accessible in a read-only fashion by<br />
user-level software. e200 does not allow user mode access to the SPRG3 register (defined as<br />
implementation dependent by Book E).<br />
— USPRG0. The <strong>Power</strong>PC Book E architecture defines User Software-Use Special Purpose<br />
Register USPRG0 which is accessible in a read-write fashion by user-level software.<br />
Supervisor-level registers—In addition to the registers accessible in user mode, Supervisor-level<br />
software has access to additional control and status registers used for configuration, exception<br />
<strong>e200z1</strong> <strong>Power</strong> <strong>Architecture</strong> <strong>Core</strong> <strong>Reference</strong> <strong>Manual</strong>, Rev. 0<br />
2-4 Freescale Semiconductor