2 REGISTERS
2 Registers
The C33 PE Core contains 16 general-purpose registers and 8 special registers.
bit 31
#15
#11
#10
#8
#3
#2
#1
#0
2.1 General-Purpose Registers (R0–R15)
Symbol
R0–R15
General-Purpose Register
The 16 registers R0–R15 (r0–r15) are the 32-bit general-purpose registers that can be used for data manipulation,
data transfer, memory addressing, or other general purposes. The contents of all of these registers are handled as
32-bit data or addresses, so 8- or 16-bit data is sign- or zero-extended to a 32-bit quantity when it is loaded into one
of these registers depending on the instruction used. When these registers are used for address references in the C33
PE Core, 32-bit space can be accessed directly.
During initialization at power-on, the contents of the general-purpose registers are indeterminate.
2.2 Program Counter (PC)
Symbol
PC
Program Counter
The Program Counter (hereinafter referred to as the "PC") is a 32-bit counter for holding the address of an
instruction to be executed. More specifically, the PC value indicates the address of the next instruction to be
executed.
As the instructions in the C33 PE Core are fixed at 16 bits in length, the low-order one bit of the PC (bit 0) is always 0.
Although the C33 PE Core allows the PC to be referenced in a program, the user cannot alter it. Note, however,
that the value actually loaded into the register when a ld.w %rd,%pc instruction (can be executed as a delayed
instruction) is executed is the "PC value for the ld instruction + 2."
During reset, the address written at the reset vector in the vector table indicated by TTBR is loaded into the PC, and
the processor starts executing a program from the address indicated by the PC.
During cold reset, TTBR is initialized to "0xC00000," so that the address written at the address "0xC00000" is the
start address of the program.
31
4
Special registers
bit 0
PC
DBBR
IDIR
TTBR
AHR
ALR
SP
PSR
Figure 2.1 Registers
Register name
Register name
Effective address
Figure 2.2.1 Program Counter (PC)
General-purpose registers
bit 31
#15
R15
#14
R14
#13
R13
#12
R12
#11
R11
#10
R10
#9
R9
#8
R8
#7
R7
#6
R6
#5
R5
#4
R4
#3
R3
#2
R2
#1
R1
#0
R0
Size
32 bits
Size
32 bits
EPSON
bit 0
R/W
Initial value
R/W
Indeterminate
R/W
Initial value
R
Indeterminate
1
0
0
S1C33 FAMILY C33 PE CORE MANUAL