– The two register files each contain 16 32-bit registers for a total
of 32 general-purpose registers (A0~A15, B0~B15)
– Interaction with the CPU must be done through these registers
– The four functional units on each side of the CPU can freely
share the 16 registers belonging to that side.
– two cross paths 1x and 2x connects all the registers on the
– (which can access data from the register files on the
– If register access is by functional units on the same side of the
CPU, register file can service all the units in a single clock cycle
• Registers A0, A1, B0, B1 are used as
• Registers A4 through A7 and B4 through B7
are used for circular addressing.
• Registers A0 through A9 and B0 through B9
(except B3) are temporary registers.
• Any of the registers A10 through A15 and B10
through B15 used fsubroutine.
• A 40-bit data value can be contained across a
• The 32 least signiﬁcant bits (LSBs) are stored
in the even register (e.g.,A2) and the
remaining 8 bits are stored in the 8LSBs of the
next-upper (odd) register (A3).
• A similar scheme is used to hold a 64-bit
double-precision value within a pair of
registers (even and odd).