Separate 16-Bit Data Memory Buses and
One Program Memory Bus
D40-Bit Arithmetic Logic Unit (ALU),
Including a 40-Bit Barrel Shifter and Two
Independent 40-Bit Accumulators
D17-× 17-Bit Parallel Multiplier Coupled to a
40-Bit Dedicated Adder for Non-Pipelined
Single-Cycle Multiply/Accumulate (MAC)
Operation
DCompare, Select, and Store Unit (CSSU) for
the Add/Compare Selection of the Viterbi
Operator
DExponent Encoder to Compute an
Exponent Value of a 40-Bit Accumulator
Value in a Single Cycle
DTwo Address Generators With Eight
Auxiliary Registers and Two Auxiliary
Register Arithmetic Units (ARAUs)
DData Bus With a Bus-Holder Feature
DExtended Addressing Mode for 1M × 16-Bit
Maximum Addressable External Program
Space
D4K x 16-Bit On-Chip ROM
D16K x 16-Bit Dual-Access On-Chip RAM
DSingle-Instruction-Repeat and
Block-Repeat Operations for Program Code
DBlock-Memory-Move Instructions for
Efficient Program and Data Management
DInstructions With a 32-Bit Long Word
Operand
DInstructions With Two- or Three-Operand
Reads
description
DArithmetic Instructions With Parallel Store
and Parallel Load
DConditional Store Instructions
DFast Return From Interrupt
DOn-Chip Peripherals
– Software-Programmable Wait-State
Generator and Programmable Bank
Switching
– On-Chip Phase-Locked Loop (PLL) Clock
Generator With Internal Oscillator or
External Clock Source
– Two Multichannel Buffered Serial Ports
(McBSPs)
– Enhanced 8-Bit Parallel Host-Port
Interface (HPI8)
– Two 16-Bit Timers
– Six-Channel Direct Memory Access
(DMA) Controller
DPower Consumption Control With IDLE1,
IDLE2, and IDLE3 Instructions With
Power-Down Modes
DCLKOUT Off Control to Disable CLKOUT
DOn-Chip Scan-Based Emulation Logic,
IEEE Std 1149.1† (JT AG) Boundary Scan
Logic
D10-ns Single-Cycle Fixed-Point Instruction
Execution Time (100 MIPS) for 3.3-V Power
Supply (1.8-V Core)
DAvailable in a 144-Pin Plastic Thin Quad
Flatpack (TQFP) (PGE Suffix) and a 144-Pin
Ball Grid Array (BGA) (GGU Suffix)
The TMS320VC5402 fixed-point, digital signal processor (DSP) (hereafter referred to as the ’5402 unless
otherwise specified) is based on an advanced modified Harvard architecture that has one program memory bus
and three data memory buses. This processor provides an arithmetic logic unit (ALU) with a high degree of
parallelism, application-specific hardware logic, on-chip memory , and additional on-chip peripherals. The basis
of the operational flexibility and speed of this DSP is a highly specialized instruction set.
Separate program and data spaces allow simultaneous access to program instructions and data, providing the
high degree of parallelism. Two read operations and one write operation can be performed in a single cycle.
Instructions with parallel store and application-specific instructions can fully utilize this architecture. In addition,
Please be aware that an important notice concerning availability, standard warranty, and use in critical applications of
Texas Instruments semiconductor products and disclaimers thereto appears at the end of this data sheet.
†
IEEE Standard 1149.1-1990 Standard-Test-Access Port and Boundary Scan Architecture.
PRODUCTION DATA information is current as of publication date.
Products conform to specifications per the terms of Texas Instruments
standard warranty. Production processing does not necessarily include
testing of all parameters.
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
Copyright 2000, Texas Instruments Incorporated
1
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
description (continued)
data can be transferred between data and program spaces. Such parallelism supports a powerful set of
arithmetic, logic, and bit-manipulation operations that can be performed in a single machine cycle. In addition,
the ’5402 includes the control mechanisms to manage interrupts, repeated operations, and function calls.
For detailed information on the architecture of the ’C5000 family of DSPs, see the
DVDD is the power supply for the I/O pins while CVDD is the power supply for the core CPU. VSS is the ground for both the I/O
pins and the core CPU.
The TMS320VC5402PGE (144-pin TQFP) package is footprint-compatible with the ’LC548, ’LC/VC549, and
’VC5410 devices.
2
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
FIXED-POINT DIGITAL SIGNAL PROCESSOR
TMS320VC5402 GGU PACKAGE
(BOTTOM VIEW)
3456781012 11139
TMS320VC5402
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
12
A
B
C
D
E
F
G
H
J
K
L
M
N
The pin assignments table to follow lists each signal quadrant and BGA ball number for the
TMS320VC5402GGU (144-pin BGA) package which is footprint-compatible with the ’LC548 and ’LC/VC549
devices.
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
3
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
SS
SS
DD
DD
DD
DD
†
BGA BALL #
B11
A11
B7
D7
B6
C3
Pin Assignments for the TMS320VC5402GGU (144-Pin BGA) Package
I = input, O = output, Z = high impedance, S = supply
‡
All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN
pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer
to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin.
O/ZParallel address bus A19 [most significant bit (MSB)] through A0 [least significant bit (LSB)]. The lower sixteen
address pins (A0 to A15) are multiplexed to address all external memory (program, data) or I/O, while the upper
four address pins (A16 to A19) are only used to address external program space. These pins are placed in the
high-impedance state when the hold mode is enabled, or when OFF
I/O/ZParallel data bus D15 (MSB) through D0 (LSB). The sixteen data pins (D0 to D15) are multiplexed to transfer
data between the core CPU and external data/program memory or I/O devices. The data bus is placed in the
high-impedance state when not outputting or when RS
high-impedance state when OFF
The data bus has bus holders to reduce the static power dissipation caused by floating, unused pins. These bus
holders also eliminate the need for external bias resistors on unused pins. When the data bus is not being driven
by the ’5402, the bus holders keep the pins at the previous logic level. The data bus holders on the ’5402 are
disabled at reset and can be enabled/disabled via the BH bit of the bank-switching control register (BSCR).
INITIALIZATION, INTERRUPT, AND RESET OPERATIONS
Interrupt acknowledge signal. IACK Indicates receipt of an interrupt and that the program counter is fetching the
O/Z
interrupt vector location designated by A15–A0. IACK
External user interrupts. INT0–INT3 are prioritized and are maskable by the interrupt mask register (IMR) and
I
the interrupt mode bit. INT0
Nonmaskable interrupt. NMI is an external interrupt that cannot be masked by way of the INTM or the IMR. When
I
is activated, the processor traps to the appropriate vector location.
NMI
is low.
–INT3 can be polled and reset by way of the interrupt flag register (IFR).
or HOLD is asserted. The data bus also goes into the
also goes into the high-impedance state when OFF is low.
is low.
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
5
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
Terminal Functions (Continued)
TERMINAL
TERMINAL
NAME
NAME
RS
MP/MCI
BIOI
XFO/Z
DS
PS
IS
MSTRBO/Z
READYI
R/WO/Z
IOSTRBO/Z
HOLDI
HOLDAO/Z
MSCO/Z
IAQO/Z
†
I = input, O = output, Z = high impedance, S = supply
‡
All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN
pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer
to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin.
†
†
INITIALIZATION, INTERRUPT, AND RESET OPERATIONS (CONTINUED)
Reset. RS causes the digital signal processor (DSP) to terminate execution and causes a reinitialization of the
CPU and peripherals. When RS
I
memory. RS
Microprocessor/microcomputer mode select. If active low at reset, microcomputer mode is selected, and the
internal program ROM is mapped into the upper 4K words of program memory space. If the pin is driven high
during reset, microprocessor mode is selected, and the on-chip ROM is removed from program space. This pin
is only sampled at reset, and the MP/MC
that is selected at reset.
Branch control. A branch can be conditionally executed when BIO is active. If low, the processor executes the
conditional instruction. For the XC instruction, the BIO
pipeline; all other instructions sample BIO
External flag output (latched software-programmable signal). XF is set high by the SSBX XF instruction, set low
by the RSBX XF instruction or by loading ST1. XF is used for signaling other processors in multiprocessor
configurations or used as a general-purpose output pin. XF goes into the high-impedance state when OFF
low, and is set high at reset.
Data, program, and I/O space select signals. DS, PS, and IS are always high unless driven low for accessing
a particular external memory space. Active period corresponds to valid address information. DS
O/Z
placed into the high-impedance state in the hold mode; the signals also go into the high-impedance state when
OFF
Memory strobe signal. MSTRB is always high unless low-level asserted to indicate an external bus access to
data or program memory. MSTRB
high-impedance state when OFF
Data ready. READY indicates that an external device is prepared for a bus transaction to be completed. If the
device is not ready (READY is low), the processor waits one cycle and checks READY again. Note that the
processor performs ready detection if at least two software wait states are programmed. The READY signal is
not sampled until the completion of the software wait states.
Read/write signal. R/W indicates transfer direction during communication to an external device. R/W is normally
in the read mode (high), unless it is asserted low when the DSP performs a write operation. R/W
the high-impedance state in hold mode; it also goes into the high-impedance state when OFF
I/O strobe signal. IOSTRB is always high unless low-level asserted to indicate an external bus access to an I/O
device. IOSTRB
state when OFF
Hold. HOLD is asserted to request control of the address, data, and control lines. When acknowledged by the
’C54x, these lines go into the high-impedance state.
Hold acknowledge. HOLDA indicates that the ’5402 is in a hold state and that the address, data, and control lines
are in the high-impedance state, allowing the external memory interface to be accessed by other devices.
HOLDA
Microstate complete. MSC indicates completion of all software wait states. When two or more software wait
states are enabled, the MSC
high at the beginning of the last software wait state. If connected to the READY input, MSC
wait state after the last internal wait state is completed. MSC
is low.
Instruction acquisition signal. IAQ is asserted (active low) when there is an instruction address on the address
bus. IAQ
affects various registers and status bits.
MULTIPROCESSING SIGNALS
MEMORY CONTROL SIGNALS
is low.
is placed in the high-impedance state in the hold mode; it also goes into the high-impedance
is low.
also goes into the high-impedance state when OFF is low.
goes into the high-impedance state when OFF is low.
is brought to a high level, execution begins at location 0FF80h of program
is placed in the high-impedance state in the hold mode; it also goes into the
is low.
pin goes active at the beginning of the first software wait state and goes inactive
DESCRIPTIONTYPE
DESCRIPTIONTYPE
bit of the processor mode status (PMST) register can override the mode
during the read phase of the pipeline.
condition is sampled during the decode phase of the
forces one external
also goes into the high-impedance state when OFF
, PS, and IS are
is placed in
is low.
is
6
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
Terminal Functions (Continued)
TERMINAL
TERMINAL
NAME
NAME
CLKOUTO/Z
CLKMD1
CLKMD2
CLKMD3
X2/CLKINI
X1O
TOUT0O/Z
TOUT1O/Z
BCLKR0
BCLKR1
BDR0
BDR1
BFSR0
BFSR1
BCLKX0
BCLKX1
BDX0
BDX1
BFSX0
BFSX1
NCNo connection
HD0–HD7I/O/Z
HCNTL0
HCNTL1
†
I = input, O = output, Z = high impedance, S = supply
‡
All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN
pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer
to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin.
†
†
Master clock output signal. CLKOUT cycles at the machine-cycle rate of the CPU. The internal machine cycle
is bounded by rising edges of this signal. CLKOUT also goes into the high-impedance state when OFF
Clock mode select signals. These inputs select the mode that the clock generator is initialized to after reset. The
logic levels of CLKMD1–CLKMD3 are latched when the reset pin is low, and the clock mode register is initialized
I
to the selected mode. After reset, the clock mode can be changed through software, but the clock mode select
signals have no effect until the device is reset again.
Oscillator input. This is the input to the on-chip oscillator.
If the internal oscillator is not used, X2/CLKIN functions as the clock input, and can be driven by an external clock
‡
source.
Output pin from the internal oscillator for the crystal.
If the internal oscillator is not used, X1 should be left unconnected. X1 does not go into the high-impedance state
when OFF
Timer0 output. TOUT0 signals a pulse when the on-chip timer 0 counts down past zero. The pulse is a CLKOUT
cycle wide. TOUT0 also goes into the high-impedance state when OFF
Timer1 output. TOUT1 signals a pulse when the on-chip timer1 counts down past zero. The pulse is one
CLKOUT cycle wide. The TOUT1 output is multiplexed with the HINT
the HPI is disabled. TOUT1 also goes into the high-impedance state when OFF
I/O/Z
I/O/Z
I/O/Z
I/O/Z
Receive clock input. BCLKR can be configured as an input or an output; it is configured as an input following
reset. BCLKR serves as the serial shift clock for the buffered serial port receiver.
ISerial data receive input
Frame synchronization pulse for receive input. BFSR can be configured as an input or an output; it is configured
as an input following reset. The BFSR pulse initiates the receive data process over BDR.
Transmit clock. BCLKX serves as the serial shift clock for the McBSP transmitter . BCLKX can be configured as
an input or an output; it is configured as an input following reset. BCLKX enters the high-impedance state when
goes low.
OFF
Serial data transmit output. BDX is placed in the high-impedance state when not transmitting, when RS is
O/Z
asserted, or when OFF
Frame synchronization pulse for transmit input/output. The BFSX pulse initiates the transmit data process. BFSX
can be configured as an input or an output; it is configured as an input following reset. BFSX goes into the
high-impedance state when OFF
Parallel bidirectional data bus. The HPI data bus is used by a host device bus to exchange information with the
HPI registers. These pins can also be used as general-purpose I/O pins. HD0–HD7 is placed in the
high-impedance state when not outputting data or when OFF
reduce the static power dissipation caused by floating, unused pins. When the HPI data bus is not being driven
by the ’5402, the bus holders keep the pins at the previous logic level. The HPI data bus holders are disabled
at reset and can be enabled/disabled via the HBH bit of the BSCR.
Control. HCNTL0 and HCNTL1 select a host access to one of the three HPI registers. The control inputs have
I
internal pullup resistors that are only enabled when HPIENA = 0.
‡
is low.
MULTICHANNEL BUFFERED SERIAL PORT SIGNALS
DESCRIPTIONTYPE
DESCRIPTIONTYPE
OSCILLATOR/TIMER SIGNALS
is low.
is low.
MISCELLANEOUS SIGNAL
HOST-PORT INTERFACE SIGNALS
is low.
is low.
pin of the HPI and is only available when
is low.
is low. The HPI data bus includes bus holders to
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
7
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
Terminal Functions (Continued)
TERMINAL
TERMINAL
NAME
NAME
HBILI
HCSI
HDS1
HDS2
HASI
HR/WI
HRDYO/Z
HINTO/Z
HPIENAI
CV
DD
DV
DD
V
SS
TCKI
TDII
TDOO/Z
TMSI
TRSTI
†
I = input, O = output, Z = high impedance, S = supply
‡
All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN
pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer
to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin.
†
†
HOST-PORT INTERFACE SIGNALS (CONTINUED)
Byte identification. HBIL identifies the first or second byte of transfer. The HBIL input has an internal pullup
resistor that is only enabled when HPIENA = 0.
Chip select. HCS is the select input for the HPI and must be driven low during accesses. The chip-select input
has an internal pullup resistor that is only enabled when HPIENA = 0.
Data strobe. HDS1 and HDS2 are driven by the host read and write strobes to control transfers. The strobe inputs
I
have internal pullup resistors that are only enabled when HPIENA = 0.
Address strobe. Hosts with multiplexed address and data pins require HAS to latch the address in the HPIA
register. HAS
Read/write. HR/W controls the direction of an HPI transfer. R/W has an internal pullup resistor that is only
enabled when HPIENA = 0.
Ready. The ready output informs the host when the HPI is ready for the next transfer. HRDY goes into the
high-impedance state when OFF
Host interrupt. This output is used to interrupt the host. When the DSP is in reset, HINT is driven high. HINT can
also be configured as the timer 1 output (TOUT1), when the HPI is disabled. The signal goes into the
high-impedance state when OFF
HPI module select. HPIENA must be driven high during reset to enable the HPI. An internal pulldown resistor
is always active and the HPIENA pin is sampled on the rising edge of RS
during reset, the HPI module is disabled. Once the HPI is disabled, the HPIENA pin has no effect until the ’5402
is reset.
S+VDD. Dedicated 1.8-V power supply for the core CPU
S+VDD. Dedicated 3.3-V power supply for the I/O pins
SGround
IEEE standard 1149.1 test clock. TCK is normally a free-running clock signal with a 50% duty cycle. The changes
on the test access port (TAP) of input signals TMS and TDI are clocked into the TAP controller, instruction
register, or selected test data register on the rising edge of TCK. Changes at the T AP output signal (TDO) occur
on the falling edge of TCK.
IEEE standard 1149.1 test data input pin with internal pullup device. TDI is clocked into the selected register
(instruction or data) on a rising edge of TCK.
IEEE standard 1149.1 test data output. The contents of the selected register (instruction or data) are shifted out
of TDO on the falling edge of TCK. TDO is in the high-impedance state except when the scanning of data is in
progress. TDO also goes into the high-impedance state when OFF
IEEE standard 1149.1 test mode select. Pin with internal pullup device. This serial control input is clocked into
the TAP controller on the rising edge of TCK.
IEEE standard 1149.1 test reset. TRST, when high, gives the IEEE standard 1149.1 scan system control of the
operations of the device. If TRST
and the IEEE standard 1149.1 signals are ignored. Pin with internal pulldown device.
has an internal pullup resistor that is only enabled when HPIENA = 0.
is low.
is low.
SUPPLY PNS
TEST PINS
is not connected or is driven low, the device operates in its functional mode,
DESCRIPTIONTYPE
DESCRIPTIONTYPE
. If HPIENA is left open or is driven low
is low.
8
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
Terminal Functions (Continued)
TERMINAL
TERMINAL
NAME
NAME
EMU0I/O/Z
EMU1/OFFI/O/Z
†
I = input, O = output, Z = high impedance, S = supply
‡
All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN
pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer
to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin.
†
†
TEST PINS (CONTINUED)
Emulator 0 pin. When TRST is driven low, EMU0 must be high for activation of the OFF condition. When TRST
is driven high, EMU0 is used as an interrupt to or from the emulator system and is defined as input/output by
way of the IEEE standard 1149.1 scan system.
Emulator 1 pin/disable all outputs. When TRST is driven high, EMU1/OFF is used as an interrupt to or from the
emulator system and is defined as input/output by way of the IEEE standard 1149.1 scan system. When TRST
is driven low, EMU1/OFF is configured as OFF. The EMU1/OFF signal, when active low, puts all output drivers
into the high-impedance state. Note that OFF
multiprocessing applications). The OFF
TRST
= low
EMU0 = high
EMU1/OFF
= low
DESCRIPTIONTYPE
DESCRIPTIONTYPE
is used exclusively for testing and emulation purposes (not for
feature is selected by the following pin combinations:
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
9
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
memory
The ’5402 device provides both on-chip ROM and RAM memories to aid in system performance and integration.
on-chip ROM with bootloader
The ’5402 features a 4K-word×16-bit on-chip maskable ROM. Customers can arrange to have the ROM of the
’5402 programmed with contents unique to any particular application. A security option is available to protect
a custom ROM. This security option is described in the
Volume 1
(literature number SPRU131). Note that only the ROM security option, and not the ROM/RAM option,
is available on the ’5402 .
A bootloader is available in the standard ’5402 on-chip ROM. This bootloader can be used to automatically
transfer user code from an external source to anywhere in the program memory at power up. If the MP/MC pin
is sampled low during a hardware reset, execution begins at location FF80h of the on-chip ROM. This location
contains a branch instruction to the start of the bootloader program. The standard ’5402 bootloader provides
different ways to download the code to accomodate various system requirements:
DParallel from 8-bit or 16-bit-wide EPROM
DParallel from I/O space 8-bit or 16-bit mode
DSerial boot from serial ports 8-bit or 16-bit mode
DHost-port interface boot
TMS320C54x DSP CPU and Peripherals Reference Set,
The standard on-chip ROM layout is shown in Table 1.
In the ’VC5402 ROM, 128 words are reserved for factory device-testing purposes. Application
code to be implemented in on-chip ROM must reserve these 128 words at addresses
FF00h–FF7Fh in program space.
†
on-chip RAM
The ’5402 device contains 16K× 16-bit of on-chip dual-access RAM (DARAM). The DARAM is composed of
two blocks of 8K words each. Each block in the DARAM can support two reads in one cycle, or a read and a
write in one cycle. The DARAM is located in the address range 0060h–3FFFh in data space, and can be mapped
into program/data space by setting the OVLY bit to one.
10
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
memory map
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
Page 0 Program
Hex
0000
Reserved
(OVLY = 1)
External
(OVLY = 0)
007F
0080
On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
3FFF
4000
External
FF7F
FF80
FFFF
Interrupts
(External)
MP/MC= 1
(Microprocessor Mode)
Page 0 Program
Hex
0000
007F
0080
3FFF
4000
EFFF
F000
FEFF
FF00
FF7F
FF80
FFFF
Reserved
(OVLY = 1)
External
(OVLY = 0)
On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
External
On-Chip ROM
(4K x 16-bit)
Reserved
Interrupts
(On-Chip)
MP/MC
(Microcomputer Mode)
= 0
Hex
0000
005F
0060
007F
0080
On-Chip DARAM
3FFF
4000
EFFF
F000
ROM (DROM=1)
FEFF
FF00
FFFF
Data
Memory
Mapped
Registers
Scratch-Pad
RAM
(16K x 16-bit)
External
or External
(DROM=0)
Reserved
(DROM=1)
or External
(DROM=0)
Figure 1. Memory Map
relocatable interrupt vector table
The reset, interrupt, and trap vectors are addressed in program space. These vectors are soft — meaning that
the processor, when taking the trap, loads the program counter (PC) with the trap address and executes the
code at the vector location. Four words are reserved at each vector location to accommodate a delayed branch
instruction, either two 1-word instructions or one 2-word instruction, which allows branching to the appropriate
interrupt service routine with minimal overhead.
At device reset, the reset, interrupt, and trap vectors are mapped to address FF80h in program space. However,
these vectors can be remapped to the beginning of any 128-word page in program space after device reset.
This is done by loading the interrupt vector pointer (IPTR) bits in the PMST register with the appropriate
128-word page boundary address. After loading IPTR, any user interrupt or trap vector is mapped to the new
128-word page.
NOTE: The hardware reset (RS
) vector cannot be remapped because a hardware reset loads the IPTR
with 1s. Therefore, the reset vector is always fetched at location FF80h in program space.
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
11
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
extended program memory
The ’5402 uses a paged extended memory scheme in program space to allow access of up to 1024K program
memory locations. In order to implement this scheme, the ’5402 includes several features that are also present
on the ’548/’549 devices:
DTwenty address lines, instead of sixteen
DAn extra memory-mapped register, the XPC register, defines the page selection. This register is
memory-mapped into data space to address 001Eh. At a hardware reset, the XPC is initialized to 0.
DSix extra instructions for addressing extended program space. These six instructions affect the XPC.
–
FB[D]
pmad (20 bits) – Far branch
–
FBACC[D]
accumulator B
Accu[19:0] – Far branch to the location specified by the value in accumulator A or
FCALL[D]
–
–
FCALA[D]
–
FRET[D]
FRETE[D]
–
pmad (20 bits) – Far call
Accu[19:0] – Far call to the location specified by the value in accumulator A or accumulator B
– Far return
– Far return with interrupts enabled
DIn addition to these new instructions, two ’54x instructions are extended to use 20 bits in the ’5402:
All other instructions, software interrupts and hardware interrupts do not modify the XPC register and access
only memory within the current page.
Program memory in the ’5402 is organized into 16 pages that are each 64K in length, as shown in Figure 2.
0 00001 0000
1 3FFF
1 4000
Page 0
64K
Words{
Page 1
Lower
16K}
External
Page 1
Upper
48K
External
2 0000
2 3FFF
2 4000
Page 2
Lower
16K}
External
Page 2
Upper
48K
External
. . .
. . .
. . .
F 0000
F 3FFF
F 4000
Page 15
Lower
16K}
External
Page 15
Upper
48K
External
0 FFFF
†
See Figure 1
‡
The lower 16K words of pages 1 through 15 are available only when the OVLY bit is cleared to 0. If the OVLY bit is set to 1, the on-chip RAM
is mapped to the lower 16K words of all program space pages.
1 FFFF
2 FFFF
. . .
F FFFF
Figure 2. Extended Program Memory
12
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
on-chip peripherals
The ’5402 device has the following peripherals:
DSoftware-programmable wait-state generator with programmable bank-switching wait states
DAn enhanced 8-bit host-port interface (HPI8)
DTwo multichannel buffered serial ports (McBSPs)
DTwo hardware timers
DA clock generator with a phase-locked loop (PLL)
DA direct memory access (DMA) controller
software-programmable wait-state generator
The software wait-state generator of the ’5402 can extend external bus cycles by up to fourteen machine cycles.
Devices that require more than fourteen wait states can be interfaced using the hardware READY line. When
all external accesses are configured for zero wait states, the internal clocks to the wait-state generator are
automatically disabled. Disabling the wait-state generator clocks reduces the power comsumption of the ’5402.
The software wait-state register (SWWSR) controls the operation of the wait-state generator. The 14 LSBs of
the SWWSR specify the number of wait states (0 to 7) to be inserted for external memory accesses to five
separate address ranges. This allows a different number of wait states for each of the five address ranges.
Additionally, the software wait-state multiplier (SWSM) bit of the software wait-state control register (SWCR)
defines a multiplication factor of 1 or 2 for the number of wait states. At reset, the wait-state generator is initialized
to provide seven wait states on all external memory accesses. The SWWSR bit fields are shown in Figure 3
and described in Table 2.
Table 2. Software Wait-State Register (SWWSR) Bit Fields
BIT
NO.NAME
15XPA0
14–12I/O1
11–9Data1
8–6Data1
5–3Program1
2–0Program1
RESET
VALUE
FUNCTION
Extended program address control bit. XP A is used in conjunction with the program space fields
(bits 0 through 5) to select the address range for program space wait states.
I/O space. The field value (0–7) corresponds to the base number of wait states for I/O space accesses
within addresses 0000–FFFFh. The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for
the base number of wait states.
Upper data space. The field value (0–7) corresponds to the base number of wait states for external
data space accesses within addresses 8000–FFFFh. The SWSM bit of the SWCR defines a
multiplication factor of 1 or 2 for the base number of wait states.
Lower data space. The field value (0–7) corresponds to the base number of wait states for external
data space accesses within addresses 0000–7FFFh. The SWSM bit of the SWCR defines a
multiplication factor of 1 or 2 for the base number of wait states.
Upper program space. The field value (0–7) corresponds to the base number of wait states for external
program space accesses within the following addresses:
- XPA = 0: x8000 – xFFFFh
- XPA = 1: The upper program space bit field has no effect on wait states.
The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait
states.
Program space. The field value (0–7) corresponds to the base number of wait states for external
program space accesses within the following addresses:
- XPA = 0: x0000–x7FFFh
- XPA = 1: 00000–FFFFFh
The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait
states.
The software wait-state multiplier bit of the software wait-state control register (SWCR) is used to extend the
base number of wait states selected by the SWWSR. The SWCR bit fields are shown in Figure 4 and described
in Table 3.
115
Reserved
R/W-0
LEGEND: R = Read, W = Write
0
SWSM
R/W-0
Figure 4. Software Wait-State Control Register (SWCR) [MMR Address 002Bh]
Table 3. Software Wait-State Control Register (SWCR) Bit Fields
PIN
NO.NAME
15–1Reserved0
0SWSM0
RESET
VALUE
FUNCTION
These bits are reserved and are unaffected by writes.
Software wait-state multiplier . Used to multiply the number of wait states defined in the SWWSR by a factor
of 1 or 2.
- SWSM = 0: wait-state base values are unchanged (multiplied by 1).
- SWSM = 1: wait-state base values are mulitplied by 2 for a maximum of 14 wait states.
14
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
TMS320VC5402
RESET
FUNCTION
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
programmable bank-switching wait states
The programmable bank-switching logic of the ’5402 is functionally equivalent to that of the ’548/’549 devices.
This feature automatically inserts one cycle when accesses cross memory-bank boundaries within program or
data memory space. A bank-switching wait state can also be automatically inserted when accesses cross the
data space boundary into program space.
The bank-switching control register (BSCR) defines the bank size for bank-switching wait states. Figure 5
shows the BSCR and its bits are described in Table 4.
121132115
BNKCMPPS-DSReservedHBH
LEGEND: R = Read, W = Write
Figure 5. Bank-Switching Control Register (BSCR), MMR Address 0029h
Table 4. Bank-Switching Control Register (BSCR) Fields
BIT
NO.NAME
15–12BNKCMP1111
11PS - DS1
10–3Reserved0These bits are reserved and are unaffected by writes.
2HBH0
1BH0
0EXIO0
RESET
VALUE
Bank compare. Determines the external memory-bank size. BNKCMP is used to mask the four MSBs of
an address. For example, if BNKCMP = 1111b, the four MSBs (bits 12–15) are compared, resulting in a
bank size of 4K words. Bank sizes of 4K words to 64K words are allowed.
Program read – data read access. Inserts an extra cycle between consecutive accesses of program read
and data read or data read and program read.
PS-DS = 0 No extra cycles are inserted by this feature.
PS-DS = 1One extra cycle is inserted between consecutive data and program reads.
HPI Bus holder. Controls the HPI bus holder feature. HBH is cleared to 0 at reset.
HBH = 0The bus holder is disabled.
HBH = 1The bus holder is enabled. When not driven, the HPI data bus (HD[7:0]) is held in the
previous logic level.
Bus holder. Controls the data bus holder feature. BH is cleared to 0 at reset.
BH = 0The bus holder is disabled.
BH = 1The bus holder is enabled. When not driven, the data bus (D[15:0]) is held in the
previous logic level.
External bus interface off. The EXIO bit controls the external bus-off function.
EXIO = 0 The external bus interface functions as usual.
EXIO = 1 The address bus, data bus, and control signals become inactive after completing the
current bus cycle. Note that the DROM, MP/MC, and OVLY bits in the PMST and the HM
bit of ST1 cannot be modified when the interface is disabled.
010
BH
R/W-0R-0R/W-1R/W-1111
EXIO
R/W-0R/W-0
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
15
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
parallel I/O ports
The ’5402 has a total of 64K I/O ports. These ports can be addressed by the PORTR instruction or the PORTW
instruction. The IS
with external devices through the I/O ports while requiring minimal off-chip address-decoding circuits.
enhanced 8-bit host-port interface
The ’5402 host-port interface, also referred to as the HPI8, is an enhanced version of the standard 8-bit HPI
found on earlier ’54x DSPs (’542, ’545, ’548, and ’549). The HPI8 is an 8-bit parallel port for interprocessor
communication. The features of the HPI8 include:
Standard features:
DSequential transfers (with autoincrement) or random-access transfers
DHost interrupt and ’54x interrupt capability
DMultiple data strobes and control pins for interface flexibility
Enhanced features of the ’5402 HPI8:
DAccess to entire on-chip RAM through DMA bus
DCapability to continue transferring during emulation stop
The HPI8 functions as a slave and enables the host processor to access the on-chip memory of the ’5402. A
major enhancement to the ’5402 HPI over previous versions is that it allows host access to the entire on-chip
memory range of the DSP. The HPI8 memory map is identical to that of the DMA controller shown in Figure 6.
The host and the DSP both have access to the on-chip RAM at all times and host accesses are always
synchronized to the DSP clock. If the host and the DSP contend for access to the same location, the host has
priority , and the DSP waits for one HPI8 cycle. Note that since host accesses are always synchronized to the
’5402 clock, an active input clock (CLKIN) is required for HPI8 accesses during IDLE states, and host accesses
are not allowed while the ’5402 reset pin is asserted.
signal indicates a read/write operation through an I/O port. The ’5402 can interface easily
The HPI8 interface consists of an 8-bit bidirectional data bus and various control signals. Sixteen-bit transfers
are accomplished in two parts with the HBIL input designating high or low byte. The host communicates with
the HPI8 through three dedicated registers — HPI address register (HPIA), HPI data register (HPID), and an
HPI control register (HPIC). The HPIA and HPID registers are only accessible by the host, and the HPIC register
is accessible by both the host and the ’5402.
16
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
multichannel buffered serial ports
The ’5402 device includes two high-speed, full-duplex multichannel buffered serial ports (McBSPs) that allow
direct interface to other ’C54x/’LC54x devices, codecs, and other devices in a system. The McBSPs are based
on the standard serial port interface found on other ’54x devices. Like its predecessors, the McBSP provides:
DFull-duplex communication
DDouble-buffered data registers, which allow a continuous data stream
DIndependent framing and clocking for receive and transmit
In addition, the McBSP has the following capabilities:
DMultichannel transmit and receive of up to 128 channels
DA wide selection of data sizes including 8, 12, 16, 20, 24, or 32 bits
Dµ-law and A-law companding
DProgrammable polarity for both frame synchronization and data clocks
DProgrammable internal clock and frame generation
The McBSPs consist of separate transmit and receive channels that operate independently. The external
interface of each McBSP consists of the following pins:
DBCLKXTransmit reference clock
DBDXTransmit data
DBFSXTransmit frame synchronization
DBCLKRReceive reference clock
DBDRReceive data
DBFSRReceive frame synchronization
The six pins listed are functionally equivalent to previous serial port interface pins in the ’C5000 family of DSPs.
On the transmitter, transmit frame synchronization and clocking are indicated by the BFSX and BCLKX pins,
respectively . The CPU or DMA can initiate transmission of data by writing to the data transmit register (DXR).
Data written to DXR is shifted out on the BDX pin through a transmit shift register (XSR). This structure allows
DXR to be loaded with the next word to be sent while the transmission of the current word is in progress.
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
17
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
multichannel buffered serial ports (continued)
On the receiver, receive frame synchronization and clocking are indicated by the BFSR and BCLKR pins,
respectively . The CPU or DMA can read received data from the data receive register (DRR). Data received on
the BDR pin is shifted into a receive shift register (RSR) and then buffered in the receive buffer register (RBR).
If the DRR is empty, the RBR contents are copied into the DRR. If not, the RBR holds the data until the DRR
is available. This structure allows storage of the two previous words while the reception of the current word is
in progress.
The CPU and DMA can move data to and from the McBSPs and can synchronize transfers based on McBSP
interrupts, event signals, and status flags. The DMA is capable of handling data movement between the
McBSPs and memory with no intervention from the CPU.
In addition to the standard serial port functions, the McBSP provides programmable clock and frame
synchronization signals. The programmable functions include:
DFrame synchronization pulse width
DFrame period
DFrame synchronization delay
DClock reference (internal vs. external)
DClock division
DClock and frame synchronization polarity
The on-chip companding hardware allows compression and expansion of data in either µ-law or A-law format.
When companding is used, transmit data is encoded according to specified companding law and received data
is decoded to 2s complement format.
The McBSP allows the multiple channels to be independently selected for the transmitter and receiver. When
multiple channels are selected, each frame represents a time-division multiplexed (TDM) data stream. In using
TDM data streams, the CPU may only need to process a few of them. Thus, to save memory and bus bandwidth,
multichannel selection allows independent enabling of particular channels for transmission and reception. Up
to 32 channels in a stream of up to 128 channels can be enabled.
The clock-stop mode (CLKSTP) in the McBSP provides compatibility with the serial peripheral interface (SPI)
protocol. The word sizes supported by the McBSP are programmable for 8-, 12-, 16-, 20-, 24-, or 32-bit
operation. When the McBSP is configured to operate in SPI mode, both the transmitter and the receiver operate
together as a master or as a slave.
The McBSP is fully static and operates at arbitrarily low clock frequencies. The maximum frequency is CPU
clock frequency divided by 2.
hardware timer
The ’5402 device features two 16-bit timing circuits with 4-bit prescalers. The main counter of each timer is
decremented by one every CLKOUT cycle. Each time the counter decrements to 0, a timer interrupt is
generated. The timers can be stopped, restarted, reset, or disabled by specific control bits.
clock generator
The clock generator provides clocks to the ’5402 device, and consists of an internal oscillator and a
phase-locked loop (PLL) circuit. The clock generator requires a reference clock input, which can be provided
by using a crystal resonator with the internal oscillator, or from an external clock source.
18
NOTE:All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage
levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V
power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer to the recommended operating conditions
section of this document for the allowable voltage levels of the X2/CLKIN pin.
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
TMS320VC5402
CLKMD1
CLKMD2
CLKMD3
CLOCK MODE
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
clock generator (continued)
The reference clock input is then divided by two (DIV mode) to generate clocks for the ’5402 device, or the PLL
circuit can be used (PLL mode) to generate the device clock by multiplying the reference clock frequency by
a scale factor, allowing use of a clock source with a lower frequency than that of the CPU.The PLL is an adaptive
circuit that, once synchronized, locks onto and tracks an input clock signal.
When the PLL is initially started, it enters a transitional mode during which the PLL acquires lock with the input
signal. Once the PLL is locked, it continues to track and maintain synchronization with the input signal. Then,
other internal clock circuitry allows the synthesis of new clock frequencies for use as master clock for the ’5402
device.
This clock generator allows system designers to select the clock source. The sources that drive the clock
generator are:
DA crystal resonator circuit. The crystal resonator circuit is connected across the X1 and X2/CLKIN pins of
the ’5402 to enable the internal oscillator.
DAn external clock. The external clock source is directly connected to the X2/CLKIN pin, and X1 is left
unconnected.
NOTE: All revisions of the ’5402 can be operated with an external clock source, provided that the proper voltage
levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V
power supply (CVdd), rather than the 3V I/O supply (DVdd). Refer to the recommended operating conditions
section of this document for the allowable voltage levels of the X2/CLKIN pin.
The software-programmable PLL features a high level of flexibility, and includes a clock scaler that provides
various clock multiplier ratios, capability to directly enable and disable the PLL, and a PLL lock timer that can
be used to delay switching to PLL clocking mode of the device until lock is achieved.Devices that have a built-in
software-programmable PLL can be configured in one of two clock modes:
DPLL mode. The input clock (X2/CLKIN) is multiplied by 1 of 31 possible ratios. These ratios are achieved
using the PLL circuitry.
DDIV (divider) mode. The input clock is divided by 2 or 4. Note that when DIV mode is used, the PLL can be
completely disabled in order to minimize power dissipation.
The software-programmable PLL is controlled using the 16-bit memory-mapped (address 0058h) clock mode
register (CLKMD). The CLKMD register is used to define the configuration of the PLL clock module. Upon reset,
the CLKMD register is initialized with a predetermined value dependent only upon the state of the CLKMD1 –
CLKMD3 pins as shown in Table 5.
Table 5. Clock Mode Settings at Reset
CLKMD1CLKMD2CLKMD3
000E007hPLL x 15
0019007hPLL x 10
0104007hPLL x 5
1001007hPLL x 2
110F007hPLL x 1
1110000h1/2 (PLL disabled)
101F000h1/4 (PLL disabled)
011—Reserved (bypass mode)
CLKMD
RESET VALUE
CLOCK MODE
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
19
TMS320VC5402
FIXED-POINT DIGITAL SIGNAL PROCESSOR
SPRS079D – OCTOBER 1998 – REVISED JANUARY 2000
DMA controller
The ’5402 direct memory access (DMA) controller transfers data between points in the memory map without
intervention by the CPU. The DMA controller allows movements of data to and from internal program/data
memory or internal peripherals (such as the McBSPs) to occur in the background of CPU operation. The DMA
has six independent programmable channels allowing six different contexts for DMA operation.
features
The DMA has the following features:
DThe DMA operates independently of the CPU.
DThe DMA has six channels. The DMA can keep track of the contexts of six independent block transfers.
DThe DMA has higher priority than the CPU for internal accesses.
DEach channel has independently programmable priorities.
DEach channel’s source and destination address registers can have configurable indexes through memory
on each read and write transfer, respectively. The address may remain constant, be post-incremented,
post-decremented, or be adjusted by a programmable value.
DEach read or write transfer may be initialized by selected events.
DUpon completion of a half-block or an entire-block transfer, each DMA channel may send an interrupt to the
CPU.
DThe DMA can perform double-word transfers (a 32-bit transfer of two 16-bit words).
DMA memory map
The DMA memory map is shown in Figure 6 to allow DMA transfers to be unaffected by the status of the MPMC,
DROM, and OVLY bits.
Hex
0000
001F
0020
0023
0024
005F
0060
007F
0080
3FFF
4000
Reserved
McBSP
Registers
Reserved
Scratch-Pad
RAM
(16K x 16-bit)
On-Chip DARAM
Reserved
20
FFFF
Figure 6. ’5402 DMA Memory Map
POST OFFICE BOX 1443 • HOUSTON, TEXAS 77251–1443
Loading...
+ 44 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.