Texas Instruments TMS320 DSP 사용자 설명서

다운로드
페이지 88
www.ti.com
5.5.5 Register Conventions
TMS320C55x Rules and Guidelines
If the algorithm does not use B-bus, then the first column must be zero. If there is more than one block
that is accessed by the B-bus, then all the block numbers must be specified in the second column as
shown in the above example.
Example 2:
Any static-data that is accessed by the B-bus must be documented as per the Rule 37 as follows:
Data section names that are accessed by the
B-bus
.data
.coefwords
This way, the client will know which of the memory blocks and data-sections must be placed in on-chip
memory for the correct execution of the algorithm.
This section describes the rules and guidelines that apply to the use of the TMS320C55x on-chip
registers. Note that an algorithm must not access any register that is not described here.
The table below describes all of the registers that may be accessed by an algorithm. Please refer to
TMS320C55x Optimizing C/C++ Compiler User's Guide (SPRU281), Runtime Environment chapter, for
more details about the runtime conventions followed by the compiler.
Register
Use
Type
(X)AR0, (X)AR1, (X)AR2, (X)AR3, (X)AR4
Function arguments: data pointers (16- or 23-bit) or Scratch (local)
data values (16-bit)
(X)AR5, (X)AR6, (X)AR7
C compiler register variables
Preserve (local)
AC0, AC1, AC2, AC3
16-bit, 32-bit and 40-bit data or 24-bit code pointers Scratch (local)
T0, T1
Function arguments: 16-bit data values
Scratch (local)
T2, T3
C compiler expression registers
Preserve (local)
SSP
System Stack Pointer
Preserve (local)
SP
Stack Pointer
Preserve (local)
ST0, ST1, ST2, ST3
Status registers
Preserve (local)
IFR0, IMR0, IFR1, IMR1
Interrupt flag and mask register
Read-only (global)
TRN0, TRN1
Transition registers
Scratch (local)
BK03, BK47, BKC
Circular Buffer Offset registers
Scratch (local)
BRC0, BRC1
Block Repeat Counter registers
Scratch (local)
RSA0, REA0, RSA1, REA1
Block repeat start and end address registers
Scratch (local)
CDP
Coefficient Data Pointer
Scratch (local)
XDP
Extended Data page pointer
Scratch (local)
DP
Memory data page start address
Scratch (local)
PDP
Peripheral Data page start address
Scratch (local)
BOF01, BOF23, BOF45, BOF67, BOFC
Circular buffer offset registers
Scratch (local)
BIOS
Data page pointer storage
Read-only (global)
BRS0, BRS1
Block repeat save registers
Scratch (local)
CSR
Computed Single Repeat
Scratch (local)
RPTC
Repeat Single Counter
Scratch (local)
XSP
Extended data Stack pointer
Preserve (local)
XCDP
Extended coeff page pointer
Scratch (local)
IVPD
Interrupt vector pointer DSP
Read-only (global)
IVPH
Interrupt vector pointer host
Read-only (global)
DSP-Specific Guidelines
54
SPRU352G – June 2005 – Revised February 2007