General-Purpose Register Files
2-4
2.1
General-Purpose Register Files
There are two general-purpose register files (A and B) in the ’C62x/C67x data
paths. Each of these files contains 16 32-bit registers (A0–A15 for file A and
B0–B15 for file B). The general-purpose registers can be used for data, data
address pointers, or condition registers.
The general-purpose register files support 32- and 40-bit fixed-point data. The
32-bit data can be contained in any general-purpose register. The ’C67x also
supports 32-bit single-precision and 64-bit double-precision data. The 40-bit
data is contained across two registers; the 32 LSBs of the data are placed in
an even register and the remaining eight MSBs are placed in the eight LSBs
of the next upper register (which is always an odd register). There are 16 valid
register pairs for 40-bit data, as shown in Table 2–1. In assembly language
syntax, the register pairs are denoted by a colon between the register names
and the odd register is specified first. The ’C67x also uses these register pairs
to hold 64-bit double-precision floating-point values. See Chapter 4 for more
information on double-precision floating-point values.
Table 2–1. 40-Bit/64-Bit Register Pairs
Register Files
A
B
A1:A0
B1:B0
A3:A2
B3:B2
A5:A4
B5:B4
A7:A6
B7:B6
A9:A8
B9:B8
A11:A10
B11:B10
A13:A12
B13:B12
A15:A14
B15:B14