User manual
Table Of Contents
- Read This First
- Contents
- Figures
- Tables
- Examples
- Cautions
- Introduction
- Architectural Overview
- Central Processing Unit
- Memory and I/O Spaces
- Program Control
- Addressing Modes
- Assembly Language Instructions
- Instruction Set Summary
- How To Use the Instruction Descriptions
- Instruction Descriptions
- ABS
- ABS
- ADD
- ADD
- ADD
- ADD
- ADDC
- ADDC
- ADDS
- ADDS
- ADDT
- ADDT
- ADRK
- AND
- AND
- AND
- APAC
- APAC
- B
- BACC
- BANZ
- BANZ
- BCND
- BCND
- BIT
- BIT
- BITT
- BITT
- BLDD
- BLDD
- BLDD
- BLDD
- BLDD
- BLPD
- BLPD
- BLPD
- BLPD
- CALA
- CALL
- CC
- CC
- CLRC
- CLRC
- CMPL
- CMPR
- DMOV
- DMOV
- IDLE
- IN
- IN
- INTR
- LACC
- LACC
- LACC
- LACL
- LACL
- LACL
- LACT
- LACT
- LAR
- LAR
- LAR
- LDP
- LDP
- LPH
- LPH
- LST
- LST
- LST
- LST
- LT
- LT
- LTA
- LTA
- LTD
- LTD
- LTD
- LTP
- LTP
- LTS
- LTS
- MAC
- MAC
- MAC
- MAC
- MACD
- MACD
- MACD
- MACD
- MACD
- MAR
- MAR
- MPY
- MPY
- MPY
- MPYA
- MPYA
- MPYS
- MPYS
- MPYU
- MPYU
- NEG
- NEG
- NMI
- NOP
- NORM
- NORM
- NORM
- OR
- OR
- OR
- OUT
- OUT
- PAC
- POP
- POP
- POPD
- POPD
- PSHD
- PSHD
- PUSH
- RET
- RETC
- ROL
- ROR
- RPT
- RPT
- SACH
- SACH
- SACL
- SACL
- SAR
- SAR
- SBRK
- SETC
- SETC
- SFL
- SFR
- SFR
- SPAC
- SPH
- SPH
- SPL
- SPL
- SPLK
- SPLK
- SPM
- SQRA
- SQRA
- SQRS
- SQRS
- SST
- SST
- SUB
- SUB
- SUB
- SUB
- SUBB
- SUBB
- SUBC
- SUBC
- SUBS
- SUBS
- SUBT
- SUBT
- TBLR
- TBLR
- TBLR
- TBLW
- TBLW
- TBLW
- TRAP
- XOR
- XOR
- XOR
- ZALR
- ZALR
- On-Chip Peripherals
- Synchronous Serial Port
- Asynchronous Serial Port
- TMS320C209
- Register Summary
- TMS320C1x/C2x/C2xx/C5x Instruction Set Comparison
- Program Examples
- Submitting ROM Codes to TI
- Design Considerations for Using XDS510 Emulator
- E.1 Designing Your Target System’s Emulator Connector (14-Pin Header)
- E.2 Bus Protocol
- E.3 Emulator Cable Pod
- E.4 Emulator Cable Pod Signal Timing
- E.5 Emulation Timing Calculations
- E.6 Connections Between the Emulator and the Target System
- E.7 Physical Dimensions for the 14-Pin Emulator Connector
- E.8 Emulation Design Considerations
- Glossary
- Index

Interrupts
5-31
Program Control
For an external, maskable hardware interrupt, a minimum latency of eight
cycles is required to synchronize the interrupt externally, recognize the inter-
rupt, and branch to the interrupt vector location. On the ninth cycle, the inter-
rupt vector is fetched. For a software interrupt, the minimum latency consists
of four cycles needed to branch to the interrupt vector location.
Latency for pipeline protection
Multicycle instructions add additional cycles to empty the pipeline. Instructions
may become multicycle for these reasons:
An instruction that writes to or reads from external memory may be
delayed by wait states generated by the external READY pin or the on-
chip wait-state generator. These wait states may affect the instruction be-
ing executed at the time the interrupt is requested, and they may affect the
interrupt itself if the interrupt vector must be fetched from external memory.
If an interrupt occurs during a HOLD operation and the interrupt vector
must be fetched from external memory, the vector cannot be fetched until
HOLDA
is deasserted.
When repeated with RPT, instructions run parallel operations in the pipe-
line and the context of these additional parallel operations cannot be
saved in an interrupt service routine. To protect the context of the repeated
instruction, the CPU locks out all interrupts except reset until the RPT loop
completes.
Note:
Reset (RS
) is not delayed by multicycle instructions. NMI can be delayed by
multicycle instructions.
Latency for stack overflow protection
A return address (incremented program counter value) is forced onto the hard-
ware stack every time the CPU follows another interrupt service routine or oth-
er subroutine. However, the ’C2xx has a feature that can help you to keep the
hardware stack from overflowing. Interrupts cannot be processed between the
CLRC INTM (enable maskable interrupts) instruction and the next instruction
in a program sequence. This ensures that a return instruction that directly fol-
lows CLRC INTM will be executed before an interrupt is processed. The return
instruction will pop the previous return address off the top of the stack before
the new return address is pushed onto the stack. If the interrupt were to occur