Skip to content

References

kombos edited this page Oct 6, 2026 · 1 revision

References

Every statement in this wiki is cross-checked against the original Texas Instruments documents below. These are the normative sources; where this wiki and a manual disagree, the manual is correct and the wiki should be fixed.

Primary

TI number Title Year Used for
SPRU056D TMS320C5x User's Guide 1998 Architecture, CPU, registers, program control, addressing modes, the instruction set (chapter 6), pipeline, memory, peripherals.
SPRU018D TMS320C1x/C2x/C2xx/C5x Assembly Language Tools User's Guide 1995 Assembler source syntax, directives, macro language, instruction-set summary, archiver, linker command language, hex-conversion utility, and COFF. The byte-level COFF layout (file, section, symbol and relocation structures) is in Appendix A, with the relocation types in Table A-9; this is what lib/c5xcoff/ implements.

Supporting

TI number Title Year Used for
SPRS030A TMS320C5x / LC5x Fixed-Point DSP Data Sheet 1996 Electrical and timing facts, device variants, pinout-level detail.
SPRZ113A TMS320C5x User's Guide Errata / Update 1998 Corrections applied on top of SPRU056D.
SPRU055B TMS320C5x C Source Debugger User's Guide 1998 Debugger behaviour (context only; not required for the toolchain).

Getting the documents

All five are public Texas Instruments PDFs:

Offline copies of the two primary manuals and the SPRZ113A errata are kept in the repository under docs/.

Notes on terminology

  • "The reference assembler / linker / hex utility" in the tool documentation means the TI tools described in SPRU018D (dspa, dsplnk, dsphex).
  • Register and instruction names are spelled as in SPRU056D.
  • Instruction encodings are additionally checked against the toolchain's own instruction table (include/c5x_isa.h), which is itself derived from SPRU056D chapter 6.

License

MIT - (c) 2026 Grzegorz Worona grzegorz@worona.pl. See LICENSE.

c5xtools wiki

Start here

The TMS320C5x processor

Writing assembly

The instruction set

A: ABS ADCB ADD ADDB ADDC ADDH ADDI ADDK ADDS ADDT ADLK ADRK AND ANDB ANDI ANDK APAC APL APLI APLK

B: B BACC BACCD BANZ BANZD BBNZ BBZ BC BCND BCNDD BD BDDD BDSD BGEZ BGZ BIOZ BIT BITT BKDK BLDD BLDP BLEZ BLKD BLKP BLPD BLZ BNC BNV BNZ BPSD BSAR BV BZ

C: CALA CALAD CALL CALLD CC CCD CLRC CMPL CMPR CNFD CNFP CONF CPL CPLI CPLK CRGT CRLT

D: DINT DMOV

E: EHWBS EHWBT EINT EMPSD EMRET ESTOP ESTPD ETRAP EXAR

F: FORT

I: IDLE IDLE1 IDLE2 IN INTR

L: LAC LACB LACC LACI LACK LACL LACT LALK LAMM LAR LARK LARP LDP LDPI LDPK LMMR LPH LRLK LST LST0 LST1 LT LTA LTD LTP LTS

M: MAC MACD MADD MADS MAR MPY MPYA MPYI MPYK MPYS MPYU MRKL

N: NEG NMI NOP NORM

O: OPL OPLI OPLK OR ORB ORI ORK OUT

P: PAC POP POPD PSHD PUSH

R: RC RET RETC RETCD RETD RETE RETI RFSM RHM ROL ROLB ROR RORB ROVM RPT RPTB RPTI RPTK RPTR RPTZ RSXM RTC RTXM RXF

S: SACB SACH SACL SAMM SAR SATH SATL SBB SBBB SBLK SBRK SC SETC SFL SFLB SFR SFRB SFSM SHM SMMR SOVM SPAC SPH SPL SPLK SPM SQRA SQRS SST SST0 SST1 SSXM STC STXM SUB SUBB SUBC SUBH SUBI SUBK SUBS SUBT SWI SXF

T: TBLR TBLW TRAP TRAPD

X: XC XOR XORB XORI XORK XPL XPLI XPLK

Z: ZAC ZALH ZALR ZALS ZAP ZPR

Building a program

The tools

Normative sources: TI SPRU056D and SPRU018D (see References).

Changelog


License: MIT - (c) 2026 Grzegorz Worona.

Clone this wiki locally