MicroBlaze Processor Reference Guide
25
UG081 (v14.7)
Registers
Registers
MicroBlaze has an orthogonal instruction set architecture. It has thirty-two 32-bit general purpose
registers and up to eighteen 32-bit special purpose registers, depending on configured options.
General Purpose Registers
The thirty-two 32-bit General Purpose Registers are numbered R0 through R31. The register file is
reset on bit stream download (reset value is 0x00000000).
is a representation of a General
Purpose Register and
provides a description of each register and the register reset value (if
existing).
Note:
The register file is
not
reset by the external reset inputs:
Reset
,
MB_Reset
and
Debug_Rst
.
for software conventions on general purpose register usage.
0
31
↑
R0-R31
Figure 2-2:
R0-R31
Table 2-7:
General Purpose Registers (R0-R31)
Bits
Name
Description
Reset Value
0:31
R0
Always has a value of zero. Anything written to
R0 is discarded
0x00000000
0:31
R1 through R13
32-bit general purpose registers
-
0:31
R14
32-bit register used to store return addresses
for interrupts.
-
0:31
R15
32-bit general purpose register. Recommended
for storing return addresses for user vectors.
-
0:31
R16
32-bit register used to store return addresses
for breaks.
-
0:31
R17
If MicroBlaze is configured to support
hardware exceptions, this register is loaded
with the address of the instruction following
the instruction causing the HW exception,
except for exceptions in delay slots that use
BTR instead (see
); if not, it is a general purpose register.
-
0:31
R18 through R31
R18 through R31 are 32-bit general purpose
registers.
-