ETC TMS320VC5401-50

TMS320VC5401 Fixed-Point
Digital Signal Processor
Data Manual
Literature Number: SPRS153B
December 2000 – Revised May 2001
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.
Printed on Recycled Paper
IMPORTANT NOTICE
Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to discontinue
any product or service without notice, and advise customers to obtain the latest version of relevant information
to verify, before placing orders, that information being relied on is current and complete. All products are sold
subject to the terms and conditions of sale supplied at the time of order acknowledgment, including those
pertaining to warranty, patent infringement, and limitation of liability.
TI warrants performance of its products to the specifications applicable at the time of sale in accordance with
TI’s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary
to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except
those mandated by government requirements.
Customers are responsible for their applications using TI components.
In order to minimize risks associated with the customer’s applications, adequate design and operating
safeguards must be provided by the customer to minimize inherent or procedural hazards.
TI assumes no liability for applications assistance or customer product design. TI does not warrant or represent
that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other
intellectual property right of TI covering or relating to any combination, machine, or process in which such
products or services might be or are used. TI’s publication of information regarding any third party’s products
or services does not constitute TI’s approval, license, warranty or endorsement thereof.
Reproduction of information in TI data books or data sheets is permissible only if reproduction is without
alteration and is accompanied by all associated warranties, conditions, limitations and notices. Representation
or reproduction of this information with alteration voids all warranties provided for an associated TI product or
service, is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use.
Resale of TI’s products or services with statements different from or beyond the parameters stated by TI for
that product or service voids all express and any implied warranties for the associated TI product or service,
is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use.
Also see: Standard Terms and Conditions of Sale for Semiconductor Products. www.ti.com/sc/docs/stdterms.htm
Mailing Address:
Texas Instruments
Post Office Box 655303
Dallas, Texas 75265
Copyright  2001, Texas Instruments Incorporated
REVISION HISTORY
REVISION
DATE
PRODUCT STATUS
HIGHLIGHTS
*
December 2000
Product Preview
Original
A
April 2001
Product Preview
Replaced memory map (Figure 2–2).
B
May 2001
Production Data
Corrected memory maps and updated characteristic data.
iii
iv
Contents
Contents
Section
Page
1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3
Pin Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1
Terminal Assignments for the GGU Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.2
Pin Assignments for the PGE Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4
Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
1
2
2
2
4
5
2
Functional Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1
Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1
On-Chip ROM With Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2
On-Chip RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3
Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1
Relocatable Interrupt Vector Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2
Extended Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4
On-Chip Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.1
Software-Programmable Wait-State Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.2
Programmable Bank-Switching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5
Parallel I/O Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.1
Enhanced 8-Bit Host-Port Interface (HPI8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6
Multichannel Buffered Serial Ports (McBSPs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.1
Programmable McBSP Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6.2
Enhanced McBSPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7
Hardware Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.8
Clock Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9
DMA Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.1
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.2
DMA Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.3
DMA Priority Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.4
DMA Source/Destination Address Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.5
DMA in Autoinitialization Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.6
DMA Transfer Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.7
DMA Transfer in Doubleword Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.8
DMA Channel Index Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.9
DMA Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.10
DMA Controller Synchronization Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.9.11
DMA Channel Interrupt Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.10
Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.11
McBSP Control Registers and Subaddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.12
DMA Subbank Addressed Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.13
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
10
10
11
12
12
13
14
14
16
16
17
18
19
19
20
20
21
22
22
22
22
23
23
23
23
23
24
24
24
27
28
30
3
Documentation Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
32
December 2000 – Revised May 2001
SPRS153B
v
Contents
Section
4
5
vi
Page
Electrical Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1
Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2
Recommended Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3
Electrical Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4
Package Thermal Resistance Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5
Timing Parameter Symbology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6
Internal Oscillator With External Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7
Clock Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7.1
Divide-By-Two Clock Option (PLL Disabled) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7.2
Multiply-By-N Clock Option (PLL Enabled) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8
Memory and Parallel I/O Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8.1
Memory Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8.2
Memory Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8.3
I/O Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8.4
I/O Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.9
Ready Timing for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.10
HOLD and HOLDA Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11
Reset, BIO, Interrupt, and MP/MC Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.12
Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Timings . . . . . . . . . . . . . . . . . .
4.13
External Flag (XF) and TOUT Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14
Multichannel Buffered Serial Port (McBSP) Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14.1
McBSP Transmit and Receive Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14.2
McBSP General-Purpose I/O Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14.3
McBSP Transmit and Receive Timing Using CLKR/X as a Clock Source Input
to the Sample Rate Generator (SRGR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.14.4
McBSP as SPI Master or Slave Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.15
Host-Port Interface (HPI8) Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
33
33
34
35
35
36
37
37
38
39
39
41
43
44
45
49
50
52
53
54
54
56
Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1
GGU (S-PBGA-N144) Plastic Ball Grid Array Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2
PGE (S-PQFP-G144) Plastic Quad Flatpack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
67
68
SPRS153B
57
59
63
December 2000 – Revised May 2001
Figures
List of Figures
Figure
Page
1–1
1–2
144-Ball GGU MicroStar BGA (Bottom View) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
144-Pin PGE Low-Profile Quad Flatpack (Top View) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
4
2–1
2–2
2–3
2–4
2–5
2–6
2–7
2–8
2–9
2–10
2–11
TMS320VC5401 Functional Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Processor Mode Status (PMST) Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Extended Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Software Wait-State Register (SWWSR) [Memory-Mapped Register (MMR) Address 0028h] . . . .
Software Wait-State Control Register (SWCR) [MMR Address 002Bh] . . . . . . . . . . . . . . . . . . . . . . .
Bank-Switching Control Register (BSCR), MMR Address 0029h . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HPI8 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pin Control Register (PCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DMA Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IFR and IMR Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
12
13
14
14
15
16
17
20
22
31
4–1
4–2
4–3
4–4
4–5
4–6
4–7
4–8
4–9
4–10
4–11
4–12
4–13
4–14
4–15
4–16
4–17
4–18
4–19
4–20
4–21
4–22
4–23
4–24
3.3-V Test Load Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Internal Oscillator With External Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
External Divide-by-Two Clock Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
External Multiply-by-One Clock Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Read (MSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Write (MSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Parallel I/O Port Read (IOSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Parallel I/O Port Write (IOSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Read With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Write With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Read With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Write With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HOLD and HOLDA Timings (HM = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset and BIO Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interrupt Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MP/MC Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IAQ and IACK Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
XF Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TOUT Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Receive Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Transmit Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP General-Purpose I/O Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Sample Rate Generator Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . .
34
36
37
38
40
42
43
44
45
46
47
48
49
50
51
51
52
53
53
55
55
56
58
59
December 2000 – Revised May 2001
SPRS153B
vii
Figures
Figure
Page
4–25
4–26
4–27
4–28
4–29
4–30
4–31
McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . .
Using HDS to Control Accesses (HCS Always Low) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Using HCS to Control Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HINT Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
GPIOx Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
61
62
65
66
66
66
5–1
5–2
TMS320VC5401 144-Ball MicroStar BGA Plastic Ball Grid Array Package . . . . . . . . . . . . . . . . . . . .
TMS320VC5401 144-Pin Low-Profile Quad Flatpack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
68
viii
SPRS153B
December 2000 – Revised May 2001
Tables
List of Tables
Table
Page
1–1
1–2
Terminal Assignments for the TMS320VC5401GGU (144-Pin BGA Package) . . . . . . . . . . . . . . . . .
Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
5
2–1
2–2
2–3
2–4
2–5
2–6
2–7
2–8
2–9
2–10
2–11
2–12
2–13
2–14
2–15
Standard On-Chip ROM Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Software Wait-State Register (SWWSR) Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Software Wait-State Control Register (SWCR) Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Bank-Switching Control Register (BSCR) Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sample Rate Generator Clock Source Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Clock Mode Settings at Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DMA Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DMA Synchronization Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DMA Channel Interrupt Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CPU Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peripheral Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Control Registers and Subaddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DMA Subbank Addressed Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Interrupt Locations and Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IFR and IMR Register Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
15
15
16
20
21
24
24
24
25
26
27
28
30
31
4–1
4–2
4–3
4–4
4–5
4–6
4–7
4–8
4–9
4–10
4–11
4–12
4–13
4–14
4–15
4–16
4–17
4–18
4–19
4–20
4–21
4–22
4–23
4–24
4–25
4–26
4–27
Thermal Resistance Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Input Clock Frequency Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Divide-By-2 Clock Option Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Divide-By-2 Clock Option Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multiply-By-N Clock Option Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multiply-By-N Clock Option Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Read Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Read Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Memory Write Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Read Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Read Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
I/O Write Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ready Timing Requirements for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . .
Ready Switching Characteristics for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . .
HOLD and HOLDA Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HOLD and HOLDA Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset, BIO, Interrupt, and MP/MC Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Switching Characteristics . . . . .
External Flag (XF) and TOUT Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Transmit and Receive Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Transmit and Receive Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP General-Purpose I/O Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP General-Purpose I/O Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Sample Rate Generator Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Sample Rate Generator Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 0) . . . . . . . . . . .
McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 0) . . . . . . .
35
36
37
37
38
38
39
39
41
43
43
44
45
45
49
49
50
52
53
54
54
56
56
57
57
59
59
December 2000 – Revised May 2001
SPRS153B
ix
Tables
Table
4–28
4–29
4–30
4–31
4–32
4–33
4–34
4–35
x
Page
McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 0) . . . . . . . . . . .
McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 0) . . . . . . .
McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 1) . . . . . . . . . . .
McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 1) . . . . . . .
McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 1) . . . . . . . . . . .
McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 1) . . . . . . .
HPI8 Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HPI8 Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SPRS153B
60
60
61
61
62
62
63
64
December 2000 – Revised May 2001
Introduction
1
Introduction
This section describes the main features of the TMS320VC5401, lists the pin assignments, and describes
the function of each pin. This data manual also provides a detailed description section, electrical
specifications, parameter measurement information, and mechanical data about the available packaging.
NOTE: This data manual is designed to be used in conjunction with the TMS320C54x DSP Functional
Overview (literature number SPRU307).
1.1
D
D
D
D
D
D
D
D
D
D
D
D
D
Features
Advanced Multibus Architecture With
Three Separate 16-Bit Data Memory Buses
and One Program Memory Bus
40-Bit Arithmetic Logic Unit (ALU),
Including a 40-Bit Barrel Shifter and Two
Independent 40-Bit Accumulators
17- × 17-Bit Parallel Multiplier Coupled to a
40-Bit Dedicated Adder for Non-Pipelined
Single-Cycle Multiply/Accumulate (MAC)
Operation
Compare, Select, and Store Unit (CSSU) for
the Add/Compare Selection of the Viterbi
Operator
Exponent Encoder to Compute an
Exponent Value of a 40-Bit Accumulator
Value in a Single Cycle
Two Address Generators With Eight
Auxiliary Registers and Two Auxiliary
Register Arithmetic Units (ARAUs)
Data Bus With a Bus-Holder Feature
Extended Addressing Mode for 1M × 16-Bit
Maximum Addressable External Program
Space
4K x 16-Bit On-Chip ROM
8K x 16-Bit Dual-Access On-Chip RAM
Single-Instruction-Repeat and
Block-Repeat Operations for Program
Code
Block-Memory-Move Instructions for
Efficient Program and Data Management
Instructions With a 32-Bit Long Word
Operand
D
D
D
D
D
D
D
D
D
D
D
Instructions With Two- or Three-Operand
Reads
Arithmetic Instructions With Parallel Store
and Parallel Load
Conditional Store Instructions
Fast Return From Interrupt
On-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
Power Consumption Control With IDLE1,
IDLE2, and IDLE3 Instructions With
Power-Down Modes
CLKOUT Off Control to Disable CLKOUT
On-Chip Scan-Based Emulation Logic,
IEEE Std 1149.1† (JTAG) Boundary Scan
Logic
20-ns Single-Cycle Fixed-Point Instruction
Execution Time (50 MIPS) for 3.3-V Power
Supply (1.8-V Core)
144-Pin Plastic Low-Profile Quad Flatpack
(LQFP) (PGE Suffix)
144-Ball MicroStar BGA (GGU Suffix)
† IEEE Standard 1149.1-1990 Standard Test-Access Port and Boundary Scan Architecture.
TMS320C54x and MicroStar BGA are trademarks of Texas Instruments.
December 2000 – Revised May 2001
SPRS153B
1
Introduction
1.2
Description
The TMS320VC5401 fixed-point, digital signal processor (DSP) (hereafter referred to as the 5401 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, 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 5401 includes the control mechanisms to manage interrupts, repeated operations, and function
calls.
1.3
Pin Assignments
Figure 1–1 illustrates the ball locations for the 144-pin ball grid array (BGA) package and is used in conjunction
with Table 1–1 to locate signal names and ball grid numbers. Figure 1–2 provides the pin assignments for the
144-pin low-profile quad flatpack (LQFP) package.
1.3.1 Terminal Assignments for the GGU Package
Table 1–1 lists each signal name and BGA ball number for the 144-pin TMS320VC5401GGU package.
Table 1–2 lists each terminal name, terminal function, and operating modes for the TMS320VC5401.
13 12 11 10 9
8
7
6
5
4
3
2
1
A
B
C
D
E
F
G
H
J
K
L
M
N
Figure 1–1. 144-Ball GGU MicroStar BGA (Bottom View)
2
SPRS153B
December 2000 – Revised May 2001
Introduction
Table 1–1. Terminal Assignments for the TMS320VC5401GGU (144-Pin BGA Package)†‡
SIGNAL
NAME
BGA BALL #
SIGNAL
NAME
BGA BALL #
SIGNAL
NAME
BGA BALL #
SIGNAL
NAME
BGA BALL #
NC
A1
NC
N13
NC
N1
A19
A13
NC
B1
NC
M13
NC
N2
NC
A12
VSS
DVDD
C2
L12
HCNTL0
M3
L13
N3
VSS
DVDD
B11
C1
DVDD
VSS
A10
D4
CLKMD1
K10
VSS
BCLKR0
A11
K4
D6
D10
HD7
D3
CLKMD2
K11
BCLKR1
L4
D7
C10
A11
D2
CLKMD3
K12
BFSR0
M4
D8
B10
A12
D1
NC
K13
BFSR1
N4
D9
A10
A13
E4
HD2
J10
BDR0
K5
D10
D9
A14
E3
TOUT0
J11
HCNTL1
L5
D11
C9
A15
E2
EMU0
J12
BDR1
M5
D12
B9
NC
E1
EMU1/OFF
J13
BCLKX0
N5
HD4
A9
HAS
F4
TDO
H10
BCLKX1
K6
D13
D8
VSS
NC
F3
TDI
H11
L6
D14
C8
F2
TRST
H12
VSS
HINT/TOUT1
M6
D15
B8
CVDD
F1
TCK
H13
CVDD
N6
HD5
A8
HCS
G2
TMS
G12
BFSX0
M7
CVDD
B7
HR/W
G1
NC
G13
BFSX1
N7
NC
A7
READY
G3
CVDD
HPIENA
G11
HRDY
L7
HDS1
C7
G10
DVDD
K7
N8
F12
VSS
HD0
VSS
HDS2
D7
F13
M8
DVDD
B6
PS
G4
DS
H1
IS
H2
VSS
CLKOUT
A6
R/W
H3
HD3
F11
BDX0
L8
A0
C6
MSTRB
H4
X1
F10
BDX1
K8
A1
D6
IOSTRB
J1
X2/CLKIN
E13
IACK
N9
A2
A5
MSC
J2
RS
E12
HBIL
M9
A3
B5
XF
J3
D0
E11
NMI
L9
HD6
C5
HOLDA
J4
D1
E10
INT0
K9
A4
D5
IAQ
K1
D2
D13
INT1
N10
A5
A4
HOLD
K2
D3
D12
INT2
M10
A6
B4
BIO
K3
D4
D11
INT3
L10
A7
C4
MP/MC
L1
D5
C13
CVDD
N11
A8
A3
DVDD
L2
A16
C12
HD1
M11
A9
B3
VSS
NC
L3
VSS
A17
C11
VSS
NC
L11
CVDD
C3
N12
NC
A2
M1
B13
NC
M2
A18
B12
NC
M12
NC
B2
† 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.
‡ NC = No internal connection
December 2000 – Revised May 2001
SPRS153B
3
Introduction
1.3.2 Pin Assignments for the PGE Package
109
111
110
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
75
35
74
36
73
A18
A17
VSS
A16
D5
D4
D3
D2
D1
D0
RS
X2/CLKIN
X1
HD3
CLKOUT
VSS
HPIENA
CVDD
NC
TMS
TCK
TRST
TDI
TDO
EMU1/OFF
EMU0
TOUT0
HD2
NC
CLKMD3
CLKMD2
CLKMD1
VSS
DVDD
NC
NC
NC
NC
HCNTL0
VSS
BCLKR0
BCLKR1
BFSR0
BFSR1
BDR0
HCNTL1
BDR1
BCLKX0
BCLKX1
VSS
HINT/TOUT1
CVDD
BFSX0
BFSX1
HRDY
DV DD
V SS
HD0
BDX0
BDX1
IACK
HBIL
NMI
INT0
INT1
INT2
INT3
CVDD
HD1
VSS
NC
NC
72
76
34
71
77
33
70
78
32
69
79
31
68
80
30
67
81
29
66
82
28
65
83
27
64
84
26
63
85
25
62
86
24
61
87
23
60
88
22
59
89
21
58
90
20
57
91
19
56
92
18
55
93
17
54
94
16
53
95
15
52
96
14
51
97
13
50
98
12
49
99
11
48
100
10
47
101
9
46
102
8
45
103
7
44
104
6
43
105
5
42
106
4
41
3
40
107
39
108
2
38
1
37
NC
NC
VSS
DVDD
A10
HD7
A11
A12
A13
A14
A15
NC
HAS
VSS
NC
CVDD
HCS
HR/W
READY
PS
DS
IS
R/W
MSTRB
IOSTRB
MSC
XF
HOLDA
IAQ
HOLD
BIO
MP/MC
DVDD
VSS
NC
NC
143
144
NC
NC
CV DD
A9
A8
A7
A6
A5
A4
HD6
A3
A2
A1
A0
DVDD
HDS2
VSS
HDS1
NC
CVDD
HD5
D15
D14
D13
HD4
D12
D11
D10
D9
D8
D7
D6
DV DD
VSS
NC
A19
The TMS320VC5401PGE 144-pin low-profile quad flatpack (LQFP) is footprint- and pin-compatible with the
5402.
Figure 1–2. 144-Pin PGE Low-Profile Quad Flatpack (Top View)
4
SPRS153B
December 2000 – Revised May 2001
Introduction
1.4
Signal Descriptions
Table 1–2 lists each signal, function, and operating mode(s) grouped by function. See Section 1.3 for exact
pin locations based on package type.
Table 1–2. Signal Descriptions
TERMINAL
NAME
TYPE†
DESCRIPTION
DATA SIGNALS
A19
A18
A17
A16
A15
A14
A13
A12
A11
A10
A9
A8
A7
A6
A5
A4
A3
A2
A1
A0
D15
D14
D13
D12
D11
D10
D9
D8
D7
D6
D5
D4
D3
D2
D1
D0
(MSB)
O/Z
Parallel 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 is low.
I/O/Z
Parallel 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 or HOLD is asserted. The data bus also goes into the
high-impedance state when OFF is low.
(LSB)
(MSB)
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 5401, the bus holders keep the pins at the previous logic level. The data bus holders on the 5401 are disabled
at reset and can be enabled/disabled via the BH bit of the bank-switching control register (BSCR).
(LSB)
INITIALIZATION, INTERRUPT, AND RESET OPERATIONS
IACK
O/Z
Interrupt acknowledge signal. IACK Indicates receipt of an interrupt and that the program counter is fetching the
interrupt vector location designated by A15–A0. IACK also goes into the high-impedance state when OFF is low.
INT0
INT1
INT2
INT3
I
External user interrupts. INT0–INT3 are prioritized and are maskable by the interrupt mask register (IMR) and the
interrupt mode bit. INT0 –INT3 can be polled and reset by way of the interrupt flag register (IFR).
NMI
I
Nonmaskable interrupt. NMI is an external interrupt that cannot be masked by way of the INTM or the IMR. When
NMI is activated, the processor traps to the appropriate vector location.
† I = input, O = output, Z = high impedance, S = supply
‡ All revisions of the 5401 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.
December 2000 – Revised May 2001
SPRS153B
5
Introduction
Table 1–2. Signal Descriptions (Continued)
TERMINAL
NAME
TYPE†
DESCRIPTION
INITIALIZATION, INTERRUPT, AND RESET OPERATIONS (CONTINUED)
RS
MP/MC
I
Reset. RS causes the digital signal processor (DSP) to terminate execution and causes a reinitialization of the CPU
and peripherals. When RS is brought to a high level, execution begins at location 0FF80h of program memory. RS
affects various registers and status bits.
I
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 bit of the processor mode status (PMST) register can override the mode that
is selected at reset.
MULTIPROCESSING SIGNALS
BIO
XF
I
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 condition is sampled during the decode phase of the pipeline;
all other instructions sample BIO during the read phase of the pipeline.
O/Z
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 is low,
and is set high at reset.
MEMORY CONTROL SIGNALS
DS
PS
IS
O/Z
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, PS, and IS are
placed into the high-impedance state in the hold mode; the signals also go into the high-impedance state when OFF
is low.
MSTRB
O/Z
Memory strobe signal. MSTRB is always high unless low-level asserted to indicate an external bus access to data
or program memory. MSTRB is placed in the high-impedance state in the hold mode; it also goes into the
high-impedance state when OFF is low.
READY
I
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.
R/W
O/Z
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 is placed in the
high-impedance state in hold mode; it also goes into the high-impedance state when OFF is low.
IOSTRB
O/Z
I/O strobe signal. IOSTRB is always high unless low-level asserted to indicate an external bus access to an I/O
device. IOSTRB is placed in the high-impedance state in the hold mode; it also goes into the high-impedance state
when OFF is low.
I
Hold. HOLD is asserted to request control of the address, data, and control lines. When acknowledged by the
C54x DSP, these lines go into the high-impedance state.
O/Z
Hold acknowledge. HOLDA indicates that the 5401 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
also goes into the high-impedance state when OFF is low.
MSC
O/Z
Microstate complete. MSC indicates completion of all software wait states. When two or more software wait states
are enabled, the MSC pin goes active at the beginning of the first software wait state and goes inactive high at the
beginning of the last software wait state. If connected to the READY input, MSC forces one external wait state after
the last internal wait state is completed. MSC also goes into the high-impedance state when OFF is low.
IAQ
O/Z
Instruction acquisition signal. IAQ is asserted (active low) when there is an instruction address on the address bus.
IAQ goes into the high-impedance state when OFF is low.
HOLD
HOLDA
† I = input, O = output, Z = high impedance, S = supply
‡ All revisions of the 5401 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.
C54x is a trademark of Texas Instruments.
6
SPRS153B
December 2000 – Revised May 2001
Introduction
Table 1–2. Signal Descriptions (Continued)
TERMINAL
NAME
TYPE†
DESCRIPTION
CLKOUT
O/Z
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 is low.
CLKMD1
CLKMD2
CLKMD3
I
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
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.
X2/CLKIN
I
X1
O
OSCILLATOR/TIMER SIGNALS
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 is low.‡
TOUT0
O/Z
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 is low.
TOUT1
O/Z
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 pin of the HPI and is only available when the HPI is
disabled. TOUT1 also goes into the high-impedance state when OFF is low.
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.
MULTICHANNEL BUFFERED SERIAL PORT SIGNALS
BCLKR0
BCLKR1
BDR0
BDR1
I
BFSR0
BFSR1
I/O/Z
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.
BCLKX0
BCLKX1
I/O/Z
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
OFF goes low.
BDX0
BDX1
O/Z
Serial data transmit output. BDX is placed in the high-impedance state when not transmitting, when RS is asserted,
or when OFF is low.
BFSX0
BFSX1
I/O/Z
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 is low.
Serial data receive input
MISCELLANEOUS SIGNAL
NC
No connection
HD0–HD7
I/O/Z
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 is low. The HPI data bus includes bus holders to
reduce the static power dissipation caused by floating, unused pins. When the HPI data bus is not being driven
by the 5401, 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.
I
Control. HCNTL0 and HCNTL1 select a host access to one of the three HPI registers. The control inputs have
internal pullup resistors that are only enabled when HPIENA = 0.
HOST-PORT INTERFACE SIGNALS
HCNTL0
HCNTL1
† I = input, O = output, Z = high impedance, S = supply
‡ All revisions of the 5401 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.
December 2000 – Revised May 2001
SPRS153B
7
Introduction
Table 1–2. Signal Descriptions (Continued)
TERMINAL
NAME
TYPE†
DESCRIPTION
HBIL
I
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.
HCS
I
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.
HDS1
HDS2
I
Data strobe. HDS1 and HDS2 are driven by the host read and write strobes to control transfers. The strobe inputs
have internal pullup resistors that are only enabled when HPIENA = 0.
HAS
I
Address strobe. Hosts with multiplexed address and data pins require HAS to latch the address in the HPIA
register. HAS has an internal pullup resistor that is only enabled when HPIENA = 0.
HR/W
I
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.
HRDY
O/Z
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 is low.
HINT
O/Z
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 is low.
HPIENA
I
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. If HPIENA is left open or is driven low during
reset, the HPI module is disabled. Once the HPI is disabled, the HPIENA pin has no effect until the 5401 is reset.
CVDD
S
DVDD
S
+VDD. Dedicated 1.8-V power supply for the core CPU
+VDD. Dedicated 3.3-V power supply for the I/O pins
VSS
S
Ground
TCK
I
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 TAP output signal (TDO) occur on the falling
edge of TCK.
TDI
I
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.
TDO
O/Z
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 is low.
TMS
I
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.
TRST
I
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 is not connected or is driven low, the device operates in its functional mode, and
the IEEE standard 1149.1 signals are ignored. Pin with internal pulldown device.
HOST-PORT INTERFACE SIGNALS (CONTINUED)
SUPPLY PNS
TEST PINS
† I = input, O = output, Z = high impedance, S = supply
‡ All revisions of the 5401 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.
8
SPRS153B
December 2000 – Revised May 2001
Introduction
Table 1–2. Signal Descriptions (Continued)
TERMINAL
NAME
TYPE†
DESCRIPTION
I/O/Z
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.
I/O/Z
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 is used exclusively for testing and emulation purposes (not for
multiprocessing applications). The OFF feature is selected by the following pin combinations:
TRST = low
EMU0 = high
EMU1/OFF = low
TEST PINS (CONTINUED)
EMU0
EMU1/OFF
† I = input, O = output, Z = high impedance, S = supply
‡ All revisions of the 5401 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.
December 2000 – Revised May 2001
SPRS153B
9
Functional Overview
2
Functional Overview
The following functional overview is based on the block diagram in Figure 2–1.
8K RAM
Dual Access
Program/Data
54X cLEAD
Pbus
Dbus
Ebus
Cbus
Pbus
Ebus
Cbus
Pbus
Dbus
P, C, D, E Buses and Control Signals
4K Program
ROM
MBus
GPIO
TI BUS
RHEA Bus
McBSP1
Enhanced XIO
HPI
McBSP2
MBus
RHEA bus
XIO
RHEA
Bridge
TIMER
HPI
DMA
logic
RHEAbus
TIMER
APLL
Clocks
JTAG
Figure 2–1. TMS320VC5401 Functional Block Diagram
2.1
Memory
The 5401 device provides both on-chip ROM and RAM memories to aid in system performance and
integration.
2.1.1 On-Chip ROM With Bootloader
The 5401 features a 4K-word × 16-bit on-chip maskable ROM. Customers can arrange to have the ROM of
the 5401 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 TMS320C54x DSP Reference Set, Volume 1:
CPU and Peripherals (literature number SPRU131). Note that only the ROM security option, and not the
ROM/RAM option, is available on the 5401.
A bootloader is available in the standard 5401 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 5401 bootloader
provides different ways to download the code to accommodate various system requirements:
•
•
•
•
Parallel from 8-bit or 16-bit-wide EPROM
Parallel from I/O space 8-bit or 16-bit mode
Serial boot from serial ports 8-bit or 16-bit mode
Host-port interface boot
The standard on-chip ROM layout is shown in Table 2–1.
10
SPRS153B
December 2000 – Revised May 2001
Functional Overview
Table 2–1. Standard On-Chip ROM Layout†
ADDRESS RANGE
DESCRIPTION
F000h – F7FFh
Reserved
F800h – FBFFh
Bootloader
FC00h – FCFFh
µ-law expansion table
FD00h – FDFFh
A-law expansion table
FE00h – FEFFh
Sine look-up table
FF00h – FF7Fh
Reserved
FF80h – FFFFh
Interrupt vector table
† In the 5401 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.
2.2
On-Chip RAM
The 5401 device contains 8K × 16-bit of on-chip dual-access RAM (DARAM). The DARAM is composed of
two blocks of 4K words each. Each DARAM block can support two reads in one cycle, or a read and a write
in one cycle. This allows code to be executed out of one block while two data values are read out of the other
block without incurring a cycle penalty. The first DARAM block occupies two address ranges: 0060h–007Fh
and 1000h–1FFFh in data space. The second DARAM block occupies 2000h–2FFFh in data space. In
program space, each block occupies the same address ranges with the exception of 0060h–007Fh, which
are not available.
December 2000 – Revised May 2001
SPRS153B
11
Functional Overview
2.3
Memory Map
Hex Page 0 Program
0000
Hex Page 0 Program
0000
Hex
0000
Data
Memory Mapped
Registers
Reserved
(OVLY = 1)
External
(OVLY = 0)
0FFF
1000 On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
1FFF
2000
On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
2FFF
3000
Reserved
(OVLY = 1)
External
(OVLY = 0)
3FFF
4000
Reserved
(OVLY = 1)
External
(OVLY = 0)
0FFF
1000 On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
1FFF
2000 On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
2FFF
3000
Reserved
(OVLY = 1)
External
(OVLY = 0)
3FFF
4000
005F
0060
007F
0080
0FFF
1000
EFFF
F000
On-Chip ROM
(4K x 16-bit)
FEFF
FF00
FF7F
FF80
Interrupts
(External)
FFFF
MP/MC= 1
(Microprocessor Mode)
Reserved
1FFF
2000
On-Chip DARAM
(4K x 16-bit)
2FFF
3000
Reserved
3FFF
4000
External
EFFF
F000
ROM (DROM=1)
or External
(DROM=0)
FEFF
FF00
FF7F
FF80
Reserved
(DROM=1)
or External
(DROM=0)
Interrupts
(On-Chip)
FFFF
Reserved
On-Chip DARAM
(4K x 16-bit)
External
External
Scratch-Pad
RAM†
FFFF
MP/MC= 0
(Microcomputer Mode)
† The scratch-pad RAM area is physically a part of the DARAM block starting at address 1000h. Physical location can
affect multiple access performance. (See Section 2.2)
Figure 2–2. Memory Map
2.3.1 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 (see
Figure 2–3) 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.
12
SPRS153B
December 2000 – Revised May 2001
Functional Overview
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.
15
7
6
5
4
3
IPTR
MP/MC
OVLY
AVIS
DROM
R/W
R/W
R/W
R
R
2
CLK
OFF
R
1
0
SMUL
SST
R/W
R/W
LEGEND: R = Read, W = Write
Figure 2–3. Processor Mode Status (PMST) Register
2.3.2 Extended Program Memory
The 5401 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 5401 includes several features that are also present
on the 548/549 devices:
•
•
•
•
Twenty address lines, instead of sixteen
An 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.
Six extra instructions for addressing extended program space. These six instructions affect the XPC.
–
FB[D] pmad (20 bits) – Far branch
–
FBACC[D] Accu[19:0] – Far branch to the location specified by the value in accumulator A or
accumulator B
–
FCALL[D] pmad (20 bits) – Far call
–
FCALA[D] Accu[19:0] – Far call to the location specified by the value in accumulator A or
accumulator B
–
FRET[D] – Far return
–
FRETE[D] – Far return with interrupts enabled
In addition to these new instructions, two 54x instructions are extended to use 20 bits in the 5401:
–
READA data_memory (using 20-bit accumulator address)
–
WRITA data_memory (using 20-bit accumulator address)
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 5401 is organized into 16 pages that are each 64K in length, as shown in Figure 2–4.
December 2000 – Revised May 2001
SPRS153B
13
Functional Overview
0 0000
1 0000
1 3FFF
2 0000
Page 1
Lower
16K}
External
2 3FFF
...
2 4000
1 4000
F 0000
...
Page 2
Lower
16K}
External
F 3FFF
Page 15
Lower
16K}
External
F 4000
...
Page 0
Page 1
Upper
48K
External
64K
Words{
Page 2
Upper
48K
External
2 FFFF
1 FFFF
0 FFFF
Page 15
Upper
48K
External
F FFFF
...
† See Figure 2–2
‡ 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 and
reserved addresses are mapped to the lower 16K words of all program space pages.
Figure 2–4. Extended Program Memory
2.4
On-Chip Peripherals
The 5401 device has the following peripherals:
•
•
•
•
•
•
Software-programmable wait-state generator with programmable bank-switching wait states
An enhanced 8-bit host-port interface (HPI8)
Two multichannel buffered serial ports (McBSPs)
Two hardware timers
A clock generator with a phase-locked loop (PLL)
A direct memory access (DMA) controller
2.4.1 Software-Programmable Wait-State Generator
The software wait-state generator of the 5401 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 consumption of the
5401.
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 2–5 and described in Table 2–2.
15
XPA
R/W-0
14
12 11
I/O
R/W-111
9 8
Data
R/W-111
6
Data
R/W-111
5
3
Program
R/W-111
2
0
Program
R/W-111
LEGEND: R=Read, W=Write, 0=Value after reset
Figure 2–5. Software Wait-State Register (SWWSR) [Memory-Mapped Register (MMR) Address 0028h]
14
SPRS153B
December 2000 – Revised May 2001
Functional Overview
Table 2–2. Software Wait-State Register (SWWSR) Bit Fields
BIT
NO.
NAME
RESET
VALUE
15
XPA
0
Extended program address control bit. XPA is used in conjunction with the program space fields
(bits 0 through 5) to select the address range for program space wait states.
14–12
I/O
1
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.
11–9
Data
1
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.
8–6
Data
1
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.
FUNCTION
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:
5–3
Program
1
-
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:
2–0
Program
1
-
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 2–6 and
described in Table 2–3.
15
1
0
SWSM
Reserved
R/W-0
R/W-0
LEGEND: R = Read, W = Write
Figure 2–6. Software Wait-State Control Register (SWCR) [MMR Address 002Bh]
Table 2–3. Software Wait-State Control Register (SWCR) Bit Fields
PIN
NO.
NAME
RESET
VALUE
15–1
Reserved
0
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.
0
SWSM
0
December 2000 – Revised May 2001
-
SWSM = 0: wait-state base values are unchanged (multiplied by 1).
SWSM = 1: wait-state base values are multiplied by 2 for a maximum of 14 wait states.
SPRS153B
15
Functional Overview
2.4.2 Programmable Bank-Switching
The programmable bank-switching logic of the 5401 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 2–7
shows the BSCR and its bits are described in Table 2–4.
15
12
11
BNKCMP
PS-DS
R/W-1111
R/W-1
10
3
Reserved
R-0
2
1
0
HBH
BH
EXIO
R/W-0
R/W-0
R/W-0
LEGEND: R = Read, W = Write
Figure 2–7. Bank-Switching Control Register (BSCR), MMR Address 0029h
Table 2–4. Bank-Switching Control Register (BSCR) Fields
BIT
NAME
NO.
15–12
11
10–3
2
1
0
2.5
BNKCMP
RESET
VALUE
FUNCTION
1111
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.
PS - DS
1
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 = 1
One extra cycle is inserted between consecutive data and program reads.
Reserved
0
These bits are reserved and are unaffected by writes.
0
HPI Bus holder. Controls the HPI bus holder feature. HBH is cleared to 0 at reset.
HBH = 0
The bus holder is disabled.
HBH = 1
The bus holder is enabled. When not driven, the HPI data bus (HD[7:0]) is held in the
previous logic level.
0
Bus holder. Controls the data bus holder feature. BH is cleared to 0 at reset.
BH = 0
The bus holder is disabled.
BH = 1
The bus holder is enabled. When not driven, the data bus (D[15:0]) is held in the
previous logic level.
0
External bus interface off. The EXIO bit controls the external bus-off function.
EXIO = 0
The external bus interface functions as usual.
usual
EXIO = 1
The address bus, data bus, and control signals become inactive after completing the
c rrent bus
current
b s cycle.
c cle Note that the DROM,
DROM MP/MC,
MP/MC and OVLY bits in the PMST and the HM
bit of ST1 cannot be modified when the interface is disabled.
HBH
BH
EXIO
Parallel I/O Ports
The 5401 has a total of 64K I/O ports. These ports can be addressed by the PORTR instruction or the PORTW
instruction. The IS signal indicates a read/write operation through an I/O port. The 5401 can interface easily
with external devices through the I/O ports while requiring minimal off-chip address-decoding circuits.
16
SPRS153B
December 2000 – Revised May 2001
Functional Overview
2.5.1 Enhanced 8-Bit Host-Port Interface (HPI8)
The 5401 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:
•
•
•
Sequential transfers (with autoincrement) or random-access transfers
Host interrupt and 54x interrupt capability
Multiple data strobes and control pins for interface flexibility
Enhanced features of the 5401 HPI8:
•
•
Access to entire on-chip RAM through DMA bus
Capability 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 5401.
A major enhancement to the 5401 HPI over previous versions is that it allows host access to the entire on-chip
memory range of the DSP. The HPI8 memory map (see Figure 2–8) is identical to that of the DMA controller
shown in Figure 2–10. 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 5401 clock, an active input clock (CLKIN) is required for HPI8 accesses during IDLE
states, and host accesses are not allowed while the 5401 reset pin is asserted.
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 5401.
Hex
0000
001F
0020
0023
0024
005F
0060
007F
0080
0FFF
1000
1FFF
2000
Reserved
McBSP
Registers
Reserved
Scratch-Pad
RAM†
Reserved
On-Chip DARAM
(4K x 16-bit)
On-Chip DARAM
(4K x 16-bit)
2FFF
3000
Reserved
FFFF
† The scratch-pad RAM area is physically a part of the DARAM block starting at address 1000h. Physical location can
affect multiple access performance. (See Section 2.2)
Figure 2–8. HPI8 Memory Map
December 2000 – Revised May 2001
SPRS153B
17
Functional Overview
2.6
Multichannel Buffered Serial Ports (McBSPs)
The 5401 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:
•
•
•
Full-duplex communication
Double-buffered data registers, which allow a continuous data stream
Independent framing and clocking for receive and transmit
In addition, the McBSP has the following capabilities:
•
•
•
•
•
•
Direct interface to:
–
T1/E1 framers
–
MVIP switching compatible and ST-BUS compliant devices
–
IOM-2 compliant devices
–
Serial peripheral interface devices
Multichannel transmit and receive of up to 128 channels
A wide selection of data sizes including 8, 12, 16, 20, 24, or 32 bits
µ-law and A-law companding
Programmable polarity for both frame synchronization and data clocks
Programmable 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:
•
•
•
•
•
•
BCLKX
BDX
BFSX
BCLKR
BDR
BFSR
Transmit reference clock
Transmit data
Transmit frame synchronization
Receive reference clock
Receive data
Receive frame synchronization
t
The six pins listed are functionally equivalent to previous serial port interface pins in the TMS320C5000
platform 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.
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.
TMS320C5000 is a trademark of Texas Instruments.
18
SPRS153B
December 2000 – Revised May 2001
Functional Overview
2.6.1 Programmable McBSP Functions
In addition to the standard serial port functions, the McBSP provides programmable clock and frame
synchronization signals. The programmable functions include:
•
•
•
•
•
•
Frame synchronization pulse width
Frame period
Frame synchronization delay
Clock reference (internal vs. external)
Clock division
Clock 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.
2.6.2 Enhanced McBSPs
The 5401 McBSPs have been enhanced to provide more flexibility in the choice of the sample rate generator
input clock source. On previous C5000 DSP platform devices, the McBSP sample rate input clock can be
driven from one of two possible choices: the internal CPU clock , or the external CLKS pin. However, most
C5000 DSP devices have only the internal CPU clock as a possible source because the CLKS pin is not
implemented on most device packages.
To accommodate applications that require an external reference clock for the sample rate generator, the 5401
McBSPs allow either the receive clock pin (BCLKR) or the transmit clock pin (BCLKX) to be configured as
the input clock to the sample rate generator. This enhancement is enabled through two register bits: pin control
register (PCR) bit 7 – enhanced sample clock mode (SCLKME), and sample rate generator register 2
(SRGR2) bit 13 – McBSP sample rate generator clock mode (CLKSM). SCLKME is an addition to the PCR
contained in the McBSPs on previous C5000 DSP devices. The new bit layout of the PCR is shown in
Figure 2–9. For a description of the remaining bits, see TMS320C54x DSP Reference Set, Volume 5:
Enhanced Peripherals (literature number SPRU302).
C5000 is a trademark of Texas Instruments.
December 2000 – Revised May 2001
SPRS153B
19
Functional Overview
15
14
13
12
11
10
9
8
Reserved
XIOEN
RIOEN
FSXM
FSRM
CLKXM
CLKRM
R,+0
RW,+0
RW,+0
RW,+0
RW,+0
RW,+0
RW,+0
7
6
5
4
3
2
1
0
SCLKME
CLKS_STAT
DX_STAT
DR_STAT
FSXP
FSRP
CLKXP
CLKRP
RW,+0
R,+0
R,+0
R,+0
RW,+0
RW,+0
RW,+0
RW,+0
Note:
R = Read, W = Write, +0 = Value at reset
Figure 2–9. Pin Control Register (PCR)
The selection of the sample rate generator (SRG) clock input source is made by the combination of the
CLKSM and SCLKME bit values as shown in Table 2–5.
Table 2–5. Sample Rate Generator Clock Source Selection
SCLKME
CLKSM
0
0
SRG Clock Source
CLKS (not available as a pin on 5401)
0
1
CPU clock
1
0
BCLKR pin
1
1
BCLKX pin
When either of the bidirectional pins, BCLKR or BCLKX, is configured as the clock input, its output buffer is
automatically disabled. For example, with SCLKME = 1 and CLKSM = 0, the BCLKR pin is configured as the
SRG input. In this case, both the transmitter and receiver circuits can be synchronized to the SRG output by
setting the PCR bits (9:8) for CLKXM = 1 and CLKRM = 1. However, the SRG output is only driven onto the
BCLKX pin because the BCLKR output is automatically disabled.
The McBSP supports independent selection of multiple channels for the transmitter and receiver. When
multiple channels are selected, each frame represents a time-division multiplexed (TDM) data stream. In
using time-division multiplexed 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 a maximum of 128 channels in a bit stream can be enabled or disabled.
2.7
Hardware Timer
The 5401 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.
2.8
Clock Generator
The clock generator provides clocks to the 5401 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.
NOTE: All revisions of the 5401 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.8 V power supply
(CVDD), rather than the 3 V 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 reference clock input is then divided by two (DIV mode) to generate clocks for the 5401 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.
20
SPRS153B
December 2000 – Revised May 2001
Functional Overview
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 5401
device.
This clock generator allows system designers to select the clock source. The sources that drive the clock
generator are:
•
•
A crystal resonator circuit. The crystal resonator circuit is connected across the X1 and X2/CLKIN pins
of the 5401 to enable the internal oscillator.
An external clock. The external clock source is directly connected to the X2/CLKIN pin, and X1 is left
unconnected.
NOTE: All revisions of the 5401 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.8 V power supply
(CVDD), rather than the 3 V 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:
•
•
PLL mode. The input clock (X2/CLKIN) is multiplied by 1 of 31 possible ratios. These ratios are achieved
using the PLL circuitry.
DIV (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 2–6.
Table 2–6. Clock Mode Settings at Reset
2.9
CLKMD1
CLKMD2
CLKMD3
CLKMD
RESET VALUE
0
0
0
E007h
PLL x 15
0
0
1
9007h
PLL x 10
0
1
0
4007h
PLL x 5
1
0
0
1007h
PLL x 2
1
1
0
F007h
PLL x 1
1
1
1
0000h
1/2 (PLL disabled)
1
0
1
F000h
1/4 (PLL disabled)
0
1
1
—
CLOCK MODE
Reserved (bypass mode)
DMA Controller
The 5401 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.
December 2000 – Revised May 2001
SPRS153B
21
Functional Overview
2.9.1 Features
The DMA has the following features:
•
•
•
•
•
•
•
•
The DMA operates independently of the CPU.
The DMA has six channels. The DMA can keep track of the contexts of six independent block transfers.
The DMA has higher priority than the CPU for internal accesses.
Each channel has independently programmable priorities.
Each channels 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.
Each read or write transfer may be initialized by selected events.
Upon completion of a half-block or an entire-block transfer, each DMA channel may send an interrupt to
the CPU.
The DMA can perform double-word transfers (a 32-bit transfer of two 16-bit words).
2.9.2 DMA Memory Map
The DMA memory map is shown in Figure 2–10 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
0FFF
1000
1FFF
2000
Reserved
McBSP
Registers
Reserved
Scratch-Pad
RAM†
Reserved
On-Chip DARAM
(4K x 16-bit)
On-Chip DARAM
(4K x 16-bit)
2FFF
3000
Reserved
FFFF
† The scratch-pad RAM area is physically a part of the DARAM block starting at address 1000h. Physical location can
affect multiple access performance. (See Section 2.2)
Figure 2–10. DMA Memory Map
2.9.3 DMA Priority Level
Each DMA channel can be independently assigned high priority or low priority relative to each other. Multiple
DMA channels that are assigned to the same priority level are handled in a round-robin manner.
2.9.4 DMA Source/Destination Address Modification
The DMA provides flexible address-indexing modes for easy implementation of data management schemes
such as autobuffering and circular buffers. Source and destination addresses can be indexed separately and
can be post-incremented, post-decremented, or post-incremented with a specified index offset.
22
SPRS153B
December 2000 – Revised May 2001
Functional Overview
2.9.5 DMA in Autoinitialization Mode
The DMA can automatically reinitialize itself after completion of a block transfer. Some of the DMA registers
can be preloaded for the next block transfer through the DMA global reload registers (DMGSA, DMGDA, and
DMGCR). Autoinitialization allows:
•
Continuous operation: Normally, the CPU would have to reinitialize the DMA immediately after the
completion of the current block transfer; but with the global reload registers, it can reinitialize these values
for the next block transfer any time after the current block transfer begins.
•
Repetitive operation: The CPU does not preload the global reload register with new values for each block
transfer but only loads them on the first block transfer.
2.9.6 DMA Transfer Counting
The DMA channel element count register (DMCTRx) and the frame count register (DMSFCx) contain bit fields
that represent the number of frames and the number of elements per frame to be transferred.
•
Frame count. This 8-bit value defines the total number of frames in the block transfer. The maximum
number of frames per block transfer is 128 (FRAME COUNT= 0ffh). The counter is decremented upon
the last read transfer in a frame transfer. Once the last frame is transferred, the selected 8-bit counter
is reloaded with the DMA global frame reload register (DMGFR) if the AUTOINIT bit is set to 1. A frame
count of 0 (default value) means the block transfer contains a single frame.
•
Element count. This 16-bit value defines the number of elements per frame. This counter is decremented
after the read transfer of each element. The maximum number of elements per frame is 65536
(DMCTRn = 0FFFFh). In autoinitialization mode, once the last frame is transferred, the counter is
reloaded with the DMA global count reload register (DMGCR).
2.9.7 DMA Transfer in Doubleword Mode
Doubleword mode allows the DMA to transfer 32-bit words in any index mode. In doubleword mode, two
consecutive 16-bit transfers are initiated and the source and destination addresses are automatically updated
following each transfer. In this mode, each 32-bit word is considered to be one element.
2.9.8 DMA Channel Index Registers
The particular DMA channel index register is selected by way of the SIND and DIND field in the DMA mode
control register (DMMCRx). Unlike basic address adjustment, in conjunction with the frame index DMFRI0
and DMFRI1, the DMA allows different adjustment amounts depending on whether or not the element transfer
is the last in the current frame. The normal adjustment value (element index) is contained in the element index
registers DMIDX0 and DMIDX1. The adjustment value (frame index) for the end of the frame, is determined
by the selected DMA frame index register, either DMFRI0 or DMFRI1.
The element index and the frame index affect address adjustment as follows:
•
Element index: For all except the last transfer in the frame, the element index determines the amount to
be added to the DMA channel for the source/destination address register (DMSRCx/DMDSTx) as
selected by the SIND/DIND bits.
•
Frame index: If the transfer is the last in a frame, the frame index is used for address adjustment as
selected by the SIND/DIND bits. This occurs in both single-frame and multi-frame transfer.
2.9.9 DMA Interrupts
The ability of the DMA to interrupt the CPU based on the status of the data transfer is configurable and is
determined by the IMOD and DINM bits in the DMA channel mode control register (DMMCRn). The available
modes are shown in Table 2–7.
December 2000 – Revised May 2001
SPRS153B
23
Functional Overview
Table 2–7. DMA Interrupts
MODE
DINM
IMOD
ABU (non-decrement)
1
0
At full buffer only
ABU (non-decrement)
1
1
At half buffer and full buffer
Multi-Frame
1
0
At block transfer complete (DMCTRn = DMSEFCn[7:0] = 0)
Multi-Frame
1
1
At end of frame and end of block (DMCTRn = 0)
Either
0
X
No interrupt generated
Either
0
X
No interrupt generated
2.9.10
INTERRUPT
DMA Controller Synchronization Events
The transfers associated with each DMA channel can be synchronized to one of several events. The DSYN
bit field of the DMA channel x sync select and frame count (DMSFCx) register selects the synchronization
event for a channel. The list of possible events and the DSYN values are shown in Table 2–8.
Table 2–8. DMA Synchronization Events
DSYN VALUE
DMA SYNCHRONIZATION EVENT
0000b
No synchronization used
0001b
McBSP0 receive event
0010b
McBSP0 transmit event
0011–0100b
Reserved
0101b
McBSP1 receive event
0110b
McBSP1 transmit event
0111b–0110b
2.9.11
Reserved
1101b
Timer0 interrupt
1110b
External interrupt 3
1111b
Timer1 interrupt
DMA Channel Interrupt Selection
The DMA controller can generate a CPU interrupt for each of the six channels. However, the interrupt sources
for channels 0,1, 2, and 3 are multiplexed with other interrupt sources. DMA channels 2 and 3 share an
interrupt line with the receive and transmit portions of McBSP1 (IMR/IFR bits 10 and 11), and DMA channel 1
shares an interrupt line with timer 1 (IMR/IFR bit 7). The interrupt source for DMA channel 0 is shared with
a reserved interrupt source. When the 5401 is reset, the interrupts from these four DMA channels are
deselected. The INTSEL bit field in the DMA channel priority and enable control (DMPREC) register can be
used to select these interrupts, as shown in Table 2–9.
Table 2–9. DMA Channel Interrupt Selection
INTSEL Value
IMR/IFR[6]
IMR/IFR[7]
IMR/IFR[10]
IMR/IFR[11]
00b (reset)
Reserved
TINT1
BRINT1
BXINT1
01b
Reserved
TINT1
DMAC2
DMAC3
10b
DMAC0
DMAC1
DMAC2
DMAC3
11b
Reserved
2.10 Memory-Mapped Registers
The 5401 has 27 memory-mapped CPU registers, which are mapped in data memory space addresses 0h
to 1Fh. Table 2–10 gives a list of CPU memory-mapped registers (MMRs) available on 5401. The device also
has a set of memory-mapped registers associated with peripherals. Table 2–11, Table 2–12, and Table 2–13
show additional peripheral MMRs associated with the 5401.
24
SPRS153B
December 2000 – Revised May 2001
Functional Overview
Table 2–10. CPU Memory-Mapped Registers
NAME
ADDRESS
DESCRIPTION
DEC
HEX
IMR
0
0
Interrupt mask register
IFR
1
1
Interrupt flag register
2–5
2–5
Reserved for testing
ST0
6
6
Status register 0
ST1
7
7
Status register 1
AL
8
8
Accumulator A low word (15–0)
AH
9
9
Accumulator A high word (31–16)
AG
10
A
Accumulator A guard bits (39–32)
–
BL
11
B
Accumulator B low word (15–0)
BH
12
C
Accumulator B high word (31–16)
BG
13
D
Accumulator B guard bits (39–32)
TREG
14
E
Temporary register
TRN
15
F
Transition register
AR0
16
10
Auxiliary register 0
AR1
17
11
Auxiliary register 1
AR2
18
12
Auxiliary register 2
AR3
19
13
Auxiliary register 3
AR4
20
14
Auxiliary register 4
AR5
21
15
Auxiliary register 5
AR6
22
16
Auxiliary register 6
AR7
23
17
Auxiliary register 7
SP
24
18
Stack pointer register
BK
25
19
Circular buffer size register
BRC
26
1A
Block repeat counter
RSA
27
1B
Block repeat start address
REA
28
1C
Block repeat end address
PMST
29
1D
Processor mode status (PMST) register
XPC
30
1E
Extended program page register
–
31
1F
Reserved
December 2000 – Revised May 2001
SPRS153B
25
Functional Overview
Table 2–11. Peripheral Memory-Mapped Registers
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
NAME
ADDRESS
DESCRIPTION
TYPE
DRR20
20h
McBSP0 data receive register 2
McBSP #0
DRR10
21h
McBSP0 data receive register 1
McBSP #0
DXR20
22h
McBSP0 data transmit register 2
McBSP #0
DXR10
23h
McBSP0 data transmit register 1
McBSP #0
TIM
24h
Timer0 register
Timer0
PRD
25h
Timer0 period counter
Timer0
TCR
26h
Timer0 control register
Timer0
–
27h
Reserved
SWWSR
28h
Software wait-state register
External Bus
BSCR
29h
Bank-switching control register
External Bus
–
2Ah
Reserved
SWCR
2Bh
Software wait-state control register
HPIC
2Ch
HPI control register
–
2Dh–2Fh
External Bus
HPI
Reserved
TIM1
30h
Timer1 register
Timer1
PRD1
31h
Timer1 period counter
Timer1
32h
Timer1 control register
Timer1
TCR1
–
33h–37h
SPSA0
SPSD0
–
38h
39h
3Ah–3Bh
Reserved
McBSP0 subbank address register†
McBSP0 subbank data register†
McBSP #0
McBSP #0
Reserved
GPIOCR
3Ch
General-purpose I/O pins control register
GPIO
GPIOSR
3Dh
General-purpose I/O pins status register
GPIO
–
3Eh–3Fh
Reserved
DRR21
40h
McBSP1 data receive register 2
McBSP #1
DRR11
41h
McBSP1 data receive register 1
McBSP #1
DXR21
42h
McBSP1 data transmit register 2
McBSP #1
43h
McBSP1 data transmit register 1
McBSP #1
DXR11
–
44h–47h
SPSA1
48h
SPSD1
49h
–
4Ah–53h
DMPREC
54h
DMSA
55h
Reserved
McBSP1 subbank address register†
McBSP1 subbank data register†
McBSP #1
McBSP #1
Reserved
DMA channel priority and enable control register
DMA subbank address register‡
DMA
DMA
PLL
DMSDI
56h
DMSDN
57h
DMA subbank data register with autoincrement‡
DMA subbank data register‡
CLKMD
58h
Clock mode register
DMA
DMA
–
59h–5Fh
Reserved
† See Table 2–12 for a detailed description of the McBSP control registers and their sub-addresses.
‡ See Table 2–13 for a detailed description of the DMA subbank addressed registers.
26
SPRS153B
December 2000 – Revised May 2001
Functional Overview
2.11 McBSP Control Registers and Subaddresses
The control registers for the multichannel buffered serial port (McBSP) are accessed using the subbank
addressing scheme. This allows a set or subbank of registers to be accessed through a single memory
location. The serial port subbank address (SPSA) register is used as a pointer to select a particular register
within the subbank. The serial port subbank data (SPSD) register is used to access (read or write) the selected
register. Table 2–12 shows the McBSP control registers and their corresponding sub-addresses.
Table 2–12. McBSP Control Registers and Subaddresses
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
McBSP0
McBSP1
NAME
ADDRESS
NAME
ADDRESS
SUBADDRESS
SPCR10
39h
SPCR11
49h
00h
Serial port control register 1
SPCR20
39h
SPCR21
49h
01h
Serial port control register 2
RCR10
39h
RCR11
49h
02h
Receive control register 1
RCR20
39h
RCR21
49h
03h
Receive control register 2
XCR10
39h
XCR11
49h
04h
Transmit control register 1
XCR20
39h
XCR21
49h
05h
Transmit control register 2
SRGR10
39h
SRGR11
49h
06h
Sample rate generator register 1
SRGR20
39h
SRGR21
49h
07h
Sample rate generator register 2
MCR10
39h
MCR11
49h
08h
Multichannel register 1
DESCRIPTION
MCR20
39h
MCR21
49h
09h
Multichannel register 2
RCERA0
39h
RCERA1
49h
0Ah
Receive channel enable register partition A
RCERB0
39h
RCERB1
49h
0Bh
Receive channel enable register partition B
XCERA0
39h
XCERA1
49h
0Ch
Transmit channel enable register partition A
XCERB0
39h
XCERB1
49h
0Dh
Transmit channel enable register partition B
PCR0
39h
PCR1
49h
0Eh
Pin control register
December 2000 – Revised May 2001
SPRS153B
27
Functional Overview
2.12 DMA Subbank Addressed Registers
The direct memory access (DMA) controller has several control registers associated with it. The main control
register (DMPREC) is a standard memory-mapped register. However, the other registers are accessed using
the subbank addressing scheme. This allows a set or subbank of registers to be accessed through a single
memory location. The DMA subbank address (DMSA) register is used as a pointer to select a particular
register within the subbank, while the DMA subbank data (DMSDN) register or the DMA subbank data register
with autoincrement (DMSDI) is used to access (read or write) the selected register.
When the DMSDI register is used to access the subbank, the subbank address is automatically
post-incremented so that a subsequent access affects the next register within the subbank. This
autoincrement feature is intended for efficient, successive accesses to several control registers. If the
autoincrement feature is not required, the DMSDN register should be used to access the subbank. Table 2–13
shows the DMA controller subbank addressed registers and their corresponding subaddresses.
Table 2–13. DMA Subbank Addressed Registers
ÑÑÑÑÑ
ÑÑÑÑÑ
ÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
DMA
ADDRESS
SUBADDRESS
DMSRC0
56h/57h
00h
DMA channel 0 source address register
DMDST0
56h/57h
01h
DMA channel 0 destination address register
DMCTR0
56h/57h
02h
DMA channel 0 element count register
DMSFC0
56h/57h
03h
DMA channel 0 sync select and frame count register
DMMCR0
56h/57h
04h
DMA channel 0 transfer mode control register
DMSRC1
56h/57h
05h
DMA channel 1 source address register
DMDST1
56h/57h
06h
DMA channel 1 destination address register
DMCTR1
56h/57h
07h
DMA channel 1 element count register
DMSFC1
56h/57h
08h
DMA channel 1 sync select and frame count register
DMMCR1
56h/57h
09h
DMA channel 1 transfer mode control register
DMSRC2
56h/57h
0Ah
DMA channel 2 source address register
DMDST2
56h/57h
0Bh
DMA channel 2 destination address register
DMCTR2
56h/57h
0Ch
DMA channel 2 element count register
DMSFC2
56h/57h
0Dh
DMA channel 2 sync select and frame count register
DMMCR2
56h/57h
0Eh
DMA channel 2 transfer mode control register
DMSRC3
56h/57h
0Fh
DMA channel 3 source address register
DMDST3
56h/57h
10h
DMA channel 3 destination address register
DMCTR3
56h/57h
11h
DMA channel 3 element count register
DMSFC3
56h/57h
12h
DMA channel 3 sync select and frame count register
DMMCR3
56h/57h
13h
DMA channel 3 transfer mode control register
DMSRC4
56h/57h
14h
DMA channel 4 source address register
DMDST4
56h/57h
15h
DMA channel 4 destination address register
DMCTR4
56h/57h
16h
DMA channel 4 element count register
DMSFC4
56h/57h
17h
DMA channel 4 sync select and frame count register
DMMCR4
56h/57h
18h
DMA channel 4 transfer mode control register
DMSRC5
56h/57h
19h
DMA channel 5 source address register
DMDST5
56h/57h
1Ah
DMA channel 5 destination address register
DMCTR5
56h/57h
1Bh
DMA channel 5 element count register
DMSFC5
56h/57h
1Ch
DMA channel 5 sync select and frame count register
DMMCR5
56h/57h
1Dh
DMA channel 5 transfer mode control register
DMSRCP
56h/57h
1Eh
DMA source program page address (common channel)
NAME
28
SPRS153B
DESCRIPTION
December 2000 – Revised May 2001
Functional Overview
Table 2–13. DMA Subbank Addressed Registers (Continued)
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ
DMA
ADDRESS
SUBADDRESS
DMDSTP
56h/57h
1Fh
DMA destination program page address (common channel)
DMIDX0
56h/57h
20h
DMA element index address register 0
DMIDX1
56h/57h
21h
DMA element index address register 1
DMFRI0
56h/57h
22h
DMA frame index register 0
DMFRI1
56h/57h
23h
DMA frame index register 1
DMGSA
56h/57h
24h
DMA global source address reload register
DMGDA
56h/57h
25h
DMA global destination address reload register
DMGCR
56h/57h
26h
DMA global count reload register
DMGFR
56h/57h
27h
DMA global frame count reload register
NAME
December 2000 – Revised May 2001
DESCRIPTION
SPRS153B
29
Functional Overview
2.13 Interrupts
Vector-relative locations and priorities for all internal and external interrupts are shown in Table 2–14.
Table 2–14. Interrupt Locations and Priorities
NAME
LOCATION
DECIMAL
HEX
RS, SINTR
0
00
NMI, SINT16
4
SINT17
8
SINT18
SINT19
PRIORITY
FUNCTION
1
Reset (hardware and software reset)
04
2
Nonmaskable interrupt
08
—
Software interrupt #17
12
0C
—
Software interrupt #18
16
10
—
Software interrupt #19
SINT20
20
14
—
Software interrupt #20
SINT21
24
18
—
Software interrupt #21
SINT22
28
1C
—
Software interrupt #22
SINT23
32
20
—
Software interrupt #23
SINT24
36
24
—
Software interrupt #24
SINT25
40
28
—
Software interrupt #25
SINT26
44
2C
—
Software interrupt #26
SINT27
48
30
—
Software interrupt #27
SINT28
52
34
—
Software interrupt #28
SINT29
56
38
—
Software interrupt #29
SINT30
60
3C
—
Software interrupt #30
INT0, SINT0
64
40
3
External user interrupt #0
INT1, SINT1
68
44
4
External user interrupt #1
INT2, SINT2
72
48
5
External user interrupt #2
TINT0, SINT3
76
4C
6
Timer0 interrupt
BRINT0, SINT4
80
50
7
McBSP #0 receive interrupt
BXINT0, SINT5
84
54
8
McBSP #0 transmit interrupt
Reserved(DMAC0), SINT6
88
58
9
Reserved (default) or DMA channel 0 interrupt.
The selection is made in the DMPREC register.
TINT1(DMAC1), SINT7
92
5C
10
Timer1 interrupt (default) or DMA channel 1
interrupt. The selection is made in the
DMPREC register.
INT3, SINT8
96
60
11
External user interrupt #3
HPINT, SINT9
100
64
12
HPI interrupt
BRINT1(DMAC2), SINT10
104
68
13
McBSP #1 receive interrupt (default) or DMA
channel 2 interrupt. The selection is made in
the DMPREC register.
BXINT1(DMAC3), SINT11
108
6C
14
McBSP #1 transmit interrupt (default) or DMA
channel 3 interrupt. The selection is made in
the DMPREC register.
DMAC4,SINT12
112
70
15
DMA channel 4 interrupt
DMAC5,SINT13
116
74
16
DMA channel 5 interrupt
120–127
78–7F
—
Reserved
Reserved
30
SPRS153B
December 2000 – Revised May 2001
Functional Overview
The bits of the interrupt flag register (IFR) and interrupt mask register (IMR) are arranged as shown in
Figure 2–11.
15–14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
RES
DMAC5
DMAC4
BXINT1
or
DMAC3
BRINT1
or
DMAC2
HPINT
INT3
TINT1
or
DMAC1
RES
or
DMAC0
BXINT0
BRINT0
TINT0
INT2
INT1
INT0
Figure 2–11. IFR and IMR Registers
Table 2–15. IFR and IMR Register Bit Fields
BIT
NUMBER
FUNCTION
NAME
15–14
–
13
DMAC5
DMA channel 5 interrupt flag/mask bit
12
DMAC4
DMA channel 4 interrupt flag/mask bit
11
BXINT1/DMAC3
This bit can be configured as either the McBSP1 transmit interrupt flag/mask bit, or the DMA
channel 3 interrupt flag/mask bit. The selection is made in the DMPREC register.
10
BRINT1/DMAC2
This bit can be configured as either the McBSP1 receive interrupt flag/mask bit, or the DMA
channel 2 interrupt flag/mask bit. The selection is made in the DMPREC register.
9
HPINT
Host to 54x interrupt flag/mask
8
INT3
External interrupt 3 flag/mask
7
TINT1/DMAC1
This bit can be configured as either the timer1 interrupt flag/mask bit, or the DMA channel 1 interrupt
flag/mask bit. The selection is made in the DMPREC register.
6
DMAC0
This bit can be configured as either reserved, or the DMA channel 0 interrupt flag/mask bit. The
selection is made in the DMPREC register.
5
BXINT0
McBSP0 transmit interrupt flag/mask bit
4
BRINT0
McBSP0 receive interrupt flag/mask bit
3
TINT0
2
INT2
External interrupt 2 flag/mask bit
1
INT1
External interrupt 1 flag/mask bit
0
INT0
External interrupt 0 flag/mask bit
December 2000 – Revised May 2001
Reserved for future expansion
Timer 0 interrupt flag/mask bit
SPRS153B
31
Documentation Support
3
Documentation Support
Extensive documentation supports all TMS320 DSP family of devices from product announcement through
applications development. The following types of documentation are available to support the design and use
of the C5000 platform of DSPs:
•
•
•
•
•
TMS320C54x DSP Functional Overview (literature number SPRU307)
Device-specific data sheets
Complete users guides
Development support tools
Hardware and software application reports
The five-volume TMS320C54x DSP Reference Set (literature number SPRU210) consists of:
•
•
•
•
•
Volume 1: CPU and Peripherals (literature number SPRU131)
Volume 2: Mnemonic Instruction Set (literature number SPRU172)
Volume 3: Algebraic Instruction Set (literature number SPRU179)
Volume 4: Applications Guide (literature number SPRU173)
Volume 5: Enhanced Peripherals (literature number SPRU302)
The reference set describes in detail the TMS320C54x DSP products currently available and the hardware
and software applications, including algorithms, for fixed-point TMS320 DSP family of devices.
A series of DSP textbooks is published by Prentice-Hall and John Wiley & Sons to support digital signal
processing research and education. The TMS320 DSP newsletter, Details on Signal Processing, is
published quarterly and distributed to update TMS320 DSP customers on product information.
Information regarding TI DSP products is also available on the Worldwide Web at http://www.ti.com uniform
resource locator (URL).
TMS320 is a trademark of Texas Instruments.
32
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4
Electrical Specifications
This section provides the absolute maximum ratings and the recommended operating conditions for the
TMS320VC5401 DSP.
4.1
Absolute Maximum Ratings
The list of absolute maximum ratings are specified over operating case temperature. Stresses beyond those
listed under “absolute maximum ratings” may cause permanent damage to the device. These are stress
ratings only, and functional operation of the device at these or any other conditions beyond those indicated
under Section 4.2 is not implied. Exposure to absolute-maximum-rated conditions for extended periods may
affect device reliability. All supply voltage values (core and I/O) are with respect to VSS. Figure 4–1 provides
the test load circuit values for a 3.3-V device.
Supply voltage I/O range, DVDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 4.0 V
Supply voltage core range, CVDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 2.4 V
Input voltage range, VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 4.5 V
Output voltage range, VO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 4.5 V
Operating case temperature range, TC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –40°C to 100°C
Storage temperature range, Tstg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –55°C to 150°C
4.2
Recommended Operating Conditions
DVDD
Device supply voltage, I/O†
CVDD
Device supply voltage, core†
VSS
Supply voltage, GND
VIH
VIL
IOH
IOL
High-level
High
level input voltage
DVDD = 3.3 0.3 V
"
Low-level input voltage
DVDD = 3.3 0.3 V
"
MIN
NOM
MAX
3
3.3
3.6
V
1.71
1.8
1.98
V
0
RS, INTn, NMI, BIO, BCLKR0, BCLKR1,
BCLKX0, BCLKX1, HCS, HDS1, HDS2, TDI,
TMS, CLKMDn
X2/CLKIN‡
UNIT
V
2.3
DVDD + 0.3
1.45
CVDD+0.3
TCK, TRST
2.6
DVDD + 0.3
All other inputs
2.1
DVDD + 0.3
RS, INTn, NMI, X2/CLKIN, BIO, BCLKR0,
BCLKR1, BCLKX0, BCLKX1, HCS, HDS1,
HDS2, TCK, CLKMDn
–0.3
0.5
All other inputs
–0.3
0.7
V
V
High-level output current
300
µA
Low-level output current
1.5
mA
TC
Operating case temperature
–40
100
°C
† Texas Instrument DSPs do not require specific power sequencing between the core supply and the I/O supply. However, systems should be
designed to ensure that neither supply is powered up for extended periods of time if the other supply is below the proper operating voltage. Excessive
exposure to these conditions can adversely affect the long term reliability of the devices. System-level concerns such as bus contention may require
supply sequencing to be implemented. In this case, the core supply should be powered up at the same time as or prior to the I/O buffers and then
powered down after the I/O buffers.
‡ All revisions of the 5401 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.
December 2000 – Revised May 2001
SPRS153B
33
Electrical Specifications
4.3
Electrical Characteristics
PARAMETER
TEST CONDITIONS
MIN
VOH
High-level output voltage
IOH = MAX
VOL
Low-level output voltage
IIZ
Input current for D[15:0], HD[7:0]
outputs in high
impedance
All other inputs
IOL = MAX
Bus holders enabled, DVDD = MAX,
VI = VSS to DVDD
Input current
DVDD = MAX, VO = VSS to DVDD
TRST
With internal pulldown
HPIENA
With internal pulldown
TMS, TCK, TDI, HPIw
With internal pullups,
HPIENA = 0
(VI = VSS
to DVDD)
IDDP
UNIT
V
0.5
only pins
All other input
input-only
IDDC
MAX
2.3
X2/CLKIN}
II
TYP†
–175
175
–10
10
–40
40
–10
300
–10
300
–300
10
10
–10
10
V
µA
µ
µA
Supply current, core CPU
CVDD = 1.8 V, fclock = 50 MHz¶, TC = 25°C#
22
mA
Supply current, pins
DVDD = 3.3 V, fclock = 50 MHz¶, TC = 25°C||
30
mA
2
mA
20
µA
IDLE2
PLL × 1 mode, 50 MHz input
IDLE3
Divide-by-two mode, CLKIN stopped
IDD
Supply
y current,
standby
Ci
Input capacitance
5
pF
Co
Output capacitance
5
pF
† All values are typical unless otherwise specified.
‡ All revisions of the 5401 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.8 V power supply (CVDD), rather than the 3 V I/O supply (DVDD). Refer to the
recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin.
§ HPI input signals except for HPIENA.
¶ Clock mode: PLL × 1 with external source
# This value represents the current consumption of the CPU, on-chip memory, and on-chip peripherals. Conditions include: program execution from
on-chip RAM, with 50% usage of MAC and 50% usage of NOP instructions. Actual operating current varies with program being executed.
|| This value was obtained using the following conditions: external memory writes at a rate of 20 million writes per second, CLKOFF=0, full-duplex
operation of McBSP0 and McBSP1 at a rate of 10 million bits per second each, and 15-pF loads on all outputs. For more details on how this calculation
is performed, refer to the Calculation of TMS320LC54x Power Dissipation Application Report (literature number SPRA164).
IOL
50 Ω
Tester Pin
Electronics
VLoad
CT
Output
Under
Test
IOH
Where:
IOL
IOH
VLoad
CT
=
=
=
=
1.5 mA (all outputs)
300 µA (all outputs)
1.5 V
40 pF typical load circuit capacitance
Figure 4–1. 3.3-V Test Load Circuit
34
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.4
Package Thermal Resistance Characteristics
Table 4–1 provides the thermal resistance characteristics for the recommended package types used on the
TMS320VC5401 DSP.
Table 4–1. Thermal Resistance Characteristics
4.5
PARAMETER
GGU
PACKAGE
PGE
PACKAGE
UNIT
RΘJA
38
56
°C / W
RΘJC
5
5
°C / W
Timing Parameter Symbology
Timing parameter symbols used in the timing requirements and switching characteristics tables are created
in accordance with JEDEC Standard 100. To shorten the symbols, some of the pin names and other related
terminology have been abbreviated as follows:
Lowercase subscripts and their meanings:
Letters and symbols and their meanings:
a
access time
H
High
c
cycle time (period)
L
Low
d
delay time
V
Valid
dis
disable time
Z
High impedance
en
enable time
f
fall time
h
hold time
r
rise time
su
setup time
t
transition time
v
valid time
w
pulse duration (width)
X
Unknown, changing, or don’t care level
December 2000 – Revised May 2001
SPRS153B
35
Electrical Specifications
4.6
Internal Oscillator With External Crystal
The internal oscillator is enabled by connecting a crystal across X1 and X2/CLKIN. The frequency of CLKOUT
is a multiple of the oscillator frequency. The multiply ratio is determined by the bit settings in the CLKMD
register. The crystal should be in fundamental-mode operation, and parallel resonant, with an effective series
resistance of 30 Ω and power dissipation of 1 mW.
The connection of the required circuit, consisting of the crystal and two load capacitors, is shown in
Figure 4–2. The load capacitors, C1 and C2, should be chosen such that the equation below is satisfied. CL
in the equation is the load specified for the crystal.
CL
+ (CC)CC )
1
1
2
2
Table 4–2. Input Clock Frequency Characteristics
MIN
fclock
Input clock frequency
10
X1
MAX
UNIT
20
MHz
X2/CLKIN
Crystal
C1
C2
Figure 4–2. Internal Oscillator With External Crystal
36
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.7
Clock Options
The frequency of the reference clock provided at the CLKIN pin can be divided by a factor of two or four to
generate the internal machine cycle.
4.7.1 Divide-By-Two Clock Option (PLL Disabled)
The frequency of the reference clock provided at the X2/CLKIN pin can be divided by a factor of two to
generate the internal machine cycle. The selection of the clock mode is described in the clock generator
section.
When an external clock source is used, the frequency injected must conform to specifications listed in the
timing requirements table.
NOTE:
All revisions of the 5401 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.8 V power supply
(CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document
for the allowable voltage levels of the X2/CLKIN pin.
Table 4–3 and Table 4–4 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–3).
Table 4–3. Divide-By-2 Clock Option Timing Requirements
tc(CI)
tf(CI)
Cycle time, X2/CLKIN
MIN
MAX
20
†
ns
8
ns
Fall time, X2/CLKIN
UNIT
tr(CI)
Rise time, X2/CLKIN
8
ns
† This device utilizes a fully static design and therefore can operate with tc(CI) approaching ∞. The device is characterized at frequencies approaching
0 Hz.
Table 4–4. Divide-By-2 Clock Option Switching Characteristics
PARAMETER
MIN
TYP
MAX
20‡
2tc(CI)
10
†
UNIT
ns
19
ns
tc(CO)
td(CIH-CO)
Cycle time, CLKOUT
tf(CO)
tr(CO)
Fall time, CLKOUT
2
ns
Rise time, CLKOUT
2
ns
Delay time, X2/CLKIN high to CLKOUT high/low
2
tw(COL)
Pulse duration, CLKOUT low
H–4
H+4
ns
tw(COH)
Pulse duration, CLKOUT high
H–4
H+4
ns
† This device utilizes a fully static design and therefore can operate with tc(CI) approaching ∞. The device is characterized at frequencies approaching
0 Hz.
‡ It is recommended that the PLL clocking option be used for maximum frequency operation.
tr(CI)
tc(CI)
tf(CI)
X2/CLKIN
tc(CO)
td(CIH-CO)
tw(COH)
tf(CO)
tr(CO)
tw(COL)
CLKOUT
Figure 4–3. External Divide-by-Two Clock Timing
December 2000 – Revised May 2001
SPRS153B
37
Electrical Specifications
4.7.2 Multiply-By-N Clock Option (PLL Enabled)
The frequency of the reference clock provided at the X2/CLKIN pin can be multiplied by a factor of N to
generate the internal machine cycle. The selection of the clock mode and the value of N is described in the
clock generator section.
When an external clock source is used, the external frequency injected must conform to specifications listed
in the timing requirements table.
NOTE:
All revisions of the 5401 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.8 V power supply
(CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document
for the allowable voltage levels of the X2/CLKIN pin.
Table 4–5 and Table 4–6 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–4).
Table 4–5. Multiply-By-N Clock Option Timing Requirements
tc(CI)
( )
Integer PLL multiplier N (N = 1–15)†
PLL multiplier N = x.5†
Cycle time, X2/CLKIN
MIN
20‡
MAX
20‡
20‡
100
PLL multiplier N = x.25, x.75†
tf(CI)
tr(CI)
UNIT
200
ns
50
Fall time, X2/CLKIN
8
ns
Rise time, X2/CLKIN
8
ns
† N = Multiplication factor
‡ The multiplication factor and minimum X2/CLKIN cycle time should be chosen such that the resulting CLKOUT cycle time is within the specified
range (tc(CO))
Table 4–6. Multiply-By-N Clock Option Switching Characteristics
PARAMETER
MIN
MAX
20
TYP
tc(CI)/N†
2
10
19
UNIT
tc(CO)
td(CI-CO)
Cycle time, CLKOUT
tf(CO)
tr(CO)
Fall time, CLKOUT
2
Rise time, CLKOUT
2
tw(COL)
tw(COH)
Pulse duration, CLKOUT low
H–4
H+4
ns
Pulse duration, CLKOUT high
H–4
H+4
ns
35
ms
Delay time, X2/CLKIN high/low to CLKOUT high/low
tp
Transitory phase, PLL lock up time
† N = Multiplication factor
ns
ns
ns
tf(CI)
tr(CI)
tc(CI)
ns
X2/CLKIN
td(CI-CO)
tc(CO)
tp
CLKOUT
tw(COH)
tf(CO)
tw(COL)
tr(CO)
Unstable
Figure 4–4. External Multiply-by-One Clock Timing
38
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.8
Memory and Parallel I/O Interface Timing
4.8.1 Memory Read
External memory reads can be performed in consecutive or nonconsecutive mode under control of the
CONSEC bit in the BSCR.
Table 4–7 and Table 4–8 assume testing over recommended operating conditions with MSTRB = 0 and
H = 0.5tc(CO) (see Figure 4–5).
Table 4–7. Memory Read Timing Requirements
MIN
MAX
UNIT
2H–9
ns
2H–10
ns
ta(A)M
ta(MSTRBL)
Access time, read data access from address valid†
tsu(D)R
th(D)R
Setup time, read data before CLKOUT low
8
ns
Hold time, read data after CLKOUT low
0
ns
th(A-D)R
Hold time, read data after address invalid
2
ns
2
ns
Access time, read data access from MSTRB low
th(D)MSTRBH Hold time, read data after MSTRB high
† Address, PS, and DS timings are all included in timings referenced as address.
Table 4–8. Memory Read Switching Characteristics
td(CLKL-A)
td(CLKH-A)
td(CLKL-MSL)
td(CLKL-MSH)
PARAMETER
Delay time, CLKOUT low to address valid†‡
MIN
MAX
–4
5
ns
Delay time, CLKOUT high (transition) to address valid†§
–4
5
ns
Delay time, CLKOUT low to MSTRB low
–3
5
ns
Delay time, CLKOUT low to MSTRB high
–3
5
ns
–4
5
ns
–4
5
ns
th(CLKL-A)R
Hold time, address valid after CLKOUT low†‡
th(CLKH-A)R
Hold time, address valid after CLKOUT high†§
† Address, PS, and DS timings are all included in timings referenced as address.
‡ In the case of a memory read preceded by a memory read
§ In the case of a memory read preceded by a memory write
December 2000 – Revised May 2001
SPRS153B
UNIT
39
Electrical Specifications
CLKOUT
td(CLKL-A)
th(CLKL-A)R
A[19:0]
th(A-D)R
tsu(D)R
ta(A)M
th(D)R
D[15:0]
th(D)MSTRBH
td(CLKL-MSL)
td(CLKL-MSH)
ta(MSTRBL)
MSTRB
R/W
PS, DS
NOTE A: A[19:16] are always driven low during accesses to external data space.
Figure 4–5. Memory Read (MSTRB = 0)
40
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.8.2 Memory Write
Table 4–9 assumes testing over recommended operating conditions with MSTRB = 0 and H = 0.5tc(CO) (see
Figure 4–6).
Table 4–9. Memory Write Switching Characteristics
MIN
MAX
td(CLKH-A)
td(CLKL-A)
Delay time, CLKOUT high to address valid†‡
Delay time, CLKOUT low to address valid†
PARAMETER
–4
5
ns
–4
5
ns
td(CLKL-MSL)
td(CLKL-D)W
Delay time, CLKOUT low to MSTRB low
–3
5
ns
Delay time, CLKOUT low to data valid
–2
8
ns
td(CLKL-MSH)
td(CLKH-RWL)
Delay time, CLKOUT low to MSTRB high
–3
5
ns
Delay time, CLKOUT high to R/W low
–3
5
ns
td(CLKH-RWH)
td(RWL-MSTRBL)
Delay time, CLKOUT high to R/W high
–3
5
ns
H–4
H+3
ns
th(A)W
Hold time, address valid after CLKOUT high†‡
5
ns
th(D)MSH
tw(SL)MS
Hold time, write data valid after MSTRB high
H+8
ns
Pulse duration, MSTRB low
2H–4
tsu(A)W
tsu(D)MSH
Setup time, address valid before MSTRB low†
2H–4
Setup time, write data valid before MSTRB high
2H–4
Delay time, R/W low to MSTRB low
ten(D–RWL)
Enable time, data bus driven after R/W low
tdis(RWH–D)
Disable time, R/W high to data bus high impedance
† Address, PS, and DS timings are all included in timings referenced as address.
‡ In the case of a memory write preceded by a memory write
December 2000 – Revised May 2001
–1
H–1
UNIT
ns
ns
2H+7
H–6
ns
ns
0
SPRS153B
ns
41
Electrical Specifications
CLKOUT
td(CLKH-A)
td(CLKL-A)
th(A)W
A[19:0]
td(CLKL-D)W
th(D)MSH
tsu(D)MSH
D[15:0]
td(CLKL-MSL)
tsu(A)W
tdis(RWH-D)
td(CLKL-MSH)
MSTRB
td(CLKH-RWL)
ten(D-RWL)
td(CLKH-RWH)
tw(SL)MS
td(RWL-MSTRBL)
R/W
PS, DS
NOTE A: A[19:16] are always driven low during accesses to external data space.
Figure 4–6. Memory Write (MSTRB = 0)
42
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.8.3 I/O Read
Table 4–10 and Table 4–11 assume testing over recommended operating conditions, IOSTRB = 0, and
H = 0.5tc(CO) (see Figure 4–7).
Table 4–10. I/O Read Timing Requirements
MAX
UNIT
ta(A)IO
ta(ISTRBL)IO
Access time, read data access from address valid†
MIN
3H–9
ns
Access time, read data access from IOSTRB low
2H–9
ns
tsu(D)IOR
th(D)IOR
Setup time, read data before CLKOUT high
8
ns
Hold time, read data after CLKOUT high
2
ns
2
ns
th(ISTRBH-D)R
Hold time, read data after IOSTRB high
† Address and IS timings are included in timings referenced as address.
Table 4–11. I/O Read Switching Characteristics
td(CLKL-A)
td(CLKH-ISTRBL)
td(CLKH-ISTRBH)
th(A)IOR
PARAMETER
Delay time, CLKOUT low to address valid†
MIN
MAX
–4
5
UNIT
ns
Delay time, CLKOUT high to IOSTRB low
–4
5
ns
Delay time, CLKOUT high to IOSTRB high
–4
5
ns
Hold time, address after CLKOUT low
–2
5
ns
† Address and IS timings are included in timings referenced as address.
CLKOUT
th(A)IOR
td(CLKL-A)
A[19:0]
tsu(D)IOR
ta(A)IO
th(D)IOR
D[15:0]
th(ISTRBH-D)R
td(CLKH-ISTRBH)
ta(ISTRBL)IO
td(CLKH-ISTRBL)
IOSTRB
R/W
IS
NOTE A: A[19:16] are always driven low during accesses to I/O space.
Figure 4–7. Parallel I/O Port Read (IOSTRB = 0)
December 2000 – Revised May 2001
SPRS153B
43
Electrical Specifications
4.8.4 I/O Write
Table 4–12 assumes testing over recommended operating conditions, IOSTRB = 0, and H = 0.5tc(CO) (see
Figure 4–8).
Table 4–12. I/O Write Switching Characteristics
PARAMETER
MIN
MAX
td(CLKL-A)
td(CLKH-ISTRBL)
Delay time, CLKOUT low to address valid†
–4
5
ns
td(CLKH-D)IOW
td(CLKH-ISTRBH)
Delay time, CLKOUT high to write data valid
td(CLKL-RWL)
td(CLKL-RWH)
Delay time, CLKOUT high to IOSTRB low
UNIT
–4
5
ns
H–7
H+11
ns
Delay time, CLKOUT high to IOSTRB high
–4
5
ns
Delay time, CLKOUT low to R/W low
–3
5
ns
Delay time, CLKOUT low to R/W high
–3
5
ns
th(A)IOW
Hold time, address valid after CLKOUT low†
–2
5
ns
th(D)IOW
Hold time, write data after IOSTRB high
H–5
H+9
ns
tsu(D)IOSTRBH
Setup time, write data before IOSTRB high
H–9
H+3
ns
H–4
H+4
ns
tsu(A)IOSTRBL
Setup time, address valid before IOSTRB low†
† Address and IS timings are included in timings referenced as address.
CLKOUT
tsu(A)IOSTRBL
td(CLKL-A)
th(A)IOW
A[19:0]
td(CLKH-D)IOW
th(D)IOW
D[15:0]
td(CLKH-ISTRBL)
td(CLKH-ISTRBH)
tsu(D)IOSTRBH
IOSTRB
td(CLKL-RWL)
td(CLKL-RWH)
R/W
IS
NOTE A: A[19:16] are always driven low during accesses to I/O space.
Figure 4–8. Parallel I/O Port Write (IOSTRB = 0)
44
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.9
Ready Timing for Externally Generated Wait States
Table 4–13 and Table 4–14 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–9, Figure 4–10, Figure 4–11, and Figure 4–12).
Table 4–13. Ready Timing Requirements for Externally Generated Wait States†
MIN
tsu(RDY)
th(RDY)
tv(RDY)MSTRB
th(RDY)MSTRB
Setup time, READY before CLKOUT low
8
Hold time, READY after CLKOUT low
Valid time, READY after MSTRB low‡
0
Hold time, READY after MSTRB low‡
Valid time, READY after IOSTRB low‡
4H
MAX
UNIT
ns
ns
4H–6
ns
ns
tv(RDY)IOSTRB
5H–6
ns
th(RDY)IOSTRB
Hold time, READY after IOSTRB low‡
5H
ns
† The hardware wait states can be used only in conjunction with the software wait states to extend the bus cycles. To generate wait states using
READY, at least two software wait states must be programmed. READY is not sampled until the completion of the internal software wait states.
‡ These timings are included for reference only. The critical timings for READY are those referenced to CLKOUT.
Table 4–14. Ready Switching Characteristics for Externally Generated Wait States†
PARAMETER
td(MSCL)
td(MSCH)
MIN
MAX
Delay time, MSC low to CLKOUT low
–1
3
UNIT
ns
Delay time, CLKOUT low to MSC high
–1
3
ns
† The hardware wait states can be used only in conjunction with the software wait states to extend the bus cycles. To generate wait states using
READY, at least two software wait states must be programmed. READY is not sampled until the completion of the internal software wait states.
CLKOUT
A[19:0]
tsu(RDY)
th(RDY)
READY
tv(RDY)MSTRB
th(RDY)MSTRB
MSTRB
tv(MSCH)
tv(MSCL)
MSC
Wait States
Generated Internally
Wait State
Generated
by READY
NOTE A: A[19:16] are always driven low during accesses to external data space.
Figure 4–9. Memory Read With Externally Generated Wait States
December 2000 – Revised May 2001
SPRS153B
45
Electrical Specifications
CLKOUT
A[19:0]
D[15:0]
th(RDY)
tsu(RDY)
READY
tv(RDY)MSTRB
th(RDY)MSTRB
MSTRB
tv(MSCH)
tv(MSCL)
MSC
Wait States
Generated Internally
Wait State Generated
by READY
NOTE A: A[19:16] are always driven low during accesses to external data space.
Figure 4–10. Memory Write With Externally Generated Wait States
46
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
CLKOUT
A[19:0]
th(RDY)
tsu(RDY)
READY
tv(RDY)IOSTRB
th(RDY)IOSTRB
IOSTRB
tv(MSCH)
tv(MSCL)
MSC
Wait States
Generated
Internally
Wait State Generated
by READY
NOTE A: A[19:16] are always driven low during accesses to I/O space.
Figure 4–11. I/O Read With Externally Generated Wait States
December 2000 – Revised May 2001
SPRS153B
47
Electrical Specifications
CLKOUT
A[19:0]
D[15:0]
th(RDY)
tsu(RDY)
READY
tv(RDY)IOSTRB
th(RDY)IOSTRB
IOSTRB
tv(MSCH)
tv(MSCL)
MSC
Wait State Generated by
READY
Wait States
Generated
Internally
NOTE A: A[19:16] are always driven low during accesses to I/O space.
Figure 4–12. I/O Write With Externally Generated Wait States
48
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.10 HOLD and HOLDA Timings
Table 4–15 and Table 4–16 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–13).
Table 4–15. HOLD and HOLDA Timing Requirements
MIN
tw(HOLD)
tsu(HOLD)
Pulse duration, HOLD low
Setup time, HOLD low/high before CLKOUT low
MAX
UNIT
4H+9
ns
9
ns
Table 4–16. HOLD and HOLDA Switching Characteristics
PARAMETER
MIN
MAX
UNIT
tdis(CLKL-A)
tdis(CLKL-RW)
Disable time, address, PS, DS, IS high impedance from CLKOUT low
7
ns
Disable time, R/W high impedance from CLKOUT low
7
ns
tdis(CLKL-S)
ten(CLKL-A)
Disable time, MSTRB, IOSTRB high impedance from CLKOUT low
7
ns
Enable time, address, PS, DS, IS from CLKOUT low
2H+7
ns
ten(CLKL-RW)
ten(CLKL-S)
Enable time, R/W enabled from CLKOUT low
2H+7
ns
tv(HOLDA)
(HOLDA)
tw(HOLDA)
Enable time, MSTRB, IOSTRB enabled from CLKOUT low
0
2H+7
ns
Valid time, HOLDA low after CLKOUT low
–3
4
ns
Valid time, HOLDA high after CLKOUT low
–3
4
ns
Pulse duration, HOLDA low duration
2H–3
ns
CLKOUT
tsu(HOLD)
tsu(HOLD)
tw(HOLD)
HOLD
HOLDA
tv(HOLDA)
tv(HOLDA)
tw(HOLDA)
tdis(CLKL-A)
ten(CLKL-A)
A[19:0]
PS, DS, IS
D[15:0]
tdis(CLKL-RW)
ten(CLKL-RW)
tdis(CLKL-S)
ten(CLKL-S)
tdis(CLKL-S)
ten(CLKL-S)
R/W
MSTRB
IOSTRB
Figure 4–13. HOLD and HOLDA Timings (HM = 1)
December 2000 – Revised May 2001
SPRS153B
49
Electrical Specifications
4.11 Reset, BIO, Interrupt, and MP/MC Timings
Table 4–17 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–14,
Figure 4–15, and Figure 4–16).
Table 4–17. Reset, BIO, Interrupt, and MP/MC Timing Requirements
MIN
MAX
UNIT
th(RS)
th(BIO)
Hold time, RS after CLKOUT low
2
ns
Hold time, BIO after CLKOUT low
2
ns
th(INT)
th(MPMC)
Hold time, INTn, NMI, after CLKOUT low†
2
ns
Hold time, MP/MC after CLKOUT low
Pulse duration, RS low‡§
2
ns
4H+7
ns
Pulse duration, BIO low, synchronous
2H+4
ns
tw(BIO)A
tw(INTH)S
Pulse duration, BIO low, asynchronous
4H+2
ns
Pulse duration, INTn, NMI high (synchronous)
2H+2
ns
tw(INTH)A
tw(INTL)S
Pulse duration, INTn, NMI high (asynchronous)
4H+2
ns
Pulse duration, INTn, NMI low (synchronous)
2H+4
ns
tw(INTL)A
tw(INTL)WKP
Pulse duration, INTn, NMI low (asynchronous)
4H+2
ns
Pulse duration, INTn, NMI low for IDLE2/IDLE3 wakeup
Setup time, RS before X2/CLKIN low¶
12
ns
Setup time, BIO before CLKOUT low
9
12
ns
Setup time, INTn, NMI, RS before CLKOUT low
9
12
ns
Setup time, MP/MC before CLKOUT low
7
tw(RSL)
tw(BIO)S
tsu(RS)
tsu(BIO)
tsu(INT)
tsu(MPMC)
7
ns
ns
† The external interrupts (INT0–INT3, NMI) are synchronized to the core CPU by way of a two-flip-flop synchronizer which samples these inputs with
consecutive falling edges of CLKOUT. The input to the interrupt pins is required to represent a 1-0-0 sequence at the timing that is corresponding
to three CLKOUT sampling sequences.
‡ If the PLL mode is selected, then at power-on sequence, or at wakeup from IDLE3, RS must be held low for at least 50 µs to ensure synchronization
and lock-in of the PLL.
§ Note that RS may cause a change in clock frequency, therefore changing the value of H.
¶ Divide-by-two mode
X2/CLKIN
tsu(RS)
tw(RSL)
RS, INTn, NMI
tsu(INT)
th(RS)
CLKOUT
tsu(BIO)
th(BIO)
BIO
tw(BIO)S
Figure 4–14. Reset and BIO Timings
50
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
CLKOUT
tsu(INT)
tsu(INT)
th(INT)
INTn, NMI
tw(INTH)A
tw(INTL)A
Figure 4–15. Interrupt Timing
CLKOUT
RS
th(MPMC)
tsu(MPMC)
MP/MC
Figure 4–16. MP/MC Timing
December 2000 – Revised May 2001
SPRS153B
51
Electrical Specifications
4.12 Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Timings
Table 4–18 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–17).
Table 4–18. Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Switching Characteristics
MIN
MAX
td(CLKL-IAQL)
td(CLKL-IAQH)
Delay time, CLKOUT low to IAQ low
PARAMETER
–3
5
ns
Delay time, CLKOUT low to IAQ high
–3
5
ns
td(A)IAQ
td(CLKL-IACKL)
Delay time, address valid to IAQ low
3
ns
Delay time, CLKOUT low to IACK low
–3
5
ns
td(CLKL-IACKH)
td(A)IACK
Delay time , CLKOUT low to IACK high
–3
5
ns
5
ns
th(A)IAQ
th(A)IACK
Hold time, IAQ high after address invalid
–4
ns
Hold time, IACK high after address invalid
–4
ns
tw(IAQL)
tw(IACKL)
Pulse duration, IAQ low
2H–4
ns
Pulse duration, IACK low
2H–4
ns
Delay time, address valid to IACK low
UNIT
CLKOUT
A[19:0]
td(CLKL-IAQH)
td(CLKL-IAQL)
th(A)IAQ
td(A)IAQ
tw(IAQL)
IAQ
td(CLKL-IACKL)
th(A)IACK
td(A)IACK
IACK
td(CLKL-IACKH)
tw(IACKL)
MSTRB
Figure 4–17. IAQ and IACK Timings
52
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.13 External Flag (XF) and TOUT Timings
Table 4–19 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–18 and
Figure 4–19).
Table 4–19. External Flag (XF) and TOUT Switching Characteristics
MIN
MAX
Delay time, CLKOUT low to XF high
PARAMETER
–3
5
Delay time, CLKOUT low to XF low
–3
5
td(TOUTH)
td(TOUTL)
Delay time, CLKOUT low to TOUT high
–2
6
ns
Delay time, CLKOUT low to TOUT low
–2
6
ns
tw(TOUT)
Pulse duration, TOUT
td(XF)
2H–2
UNIT
ns
ns
CLKOUT
td(XF)
XF
Figure 4–18. XF Timing
CLKOUT
td(TOUTH)
td(TOUTL)
TOUT
tw(TOUT)
Figure 4–19. TOUT Timing
December 2000 – Revised May 2001
SPRS153B
53
Electrical Specifications
4.14 Multichannel Buffered Serial Port (McBSP) Timing
4.14.1
McBSP Transmit and Receive Timings
Table 4–20 and Table 4–21 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–20 and Figure 4–21).
Table 4–20. McBSP Transmit and Receive Timing Requirements†
MIN
tc(BCKRX)
tw(BCKRX)
MAX
UNIT
Cycle time, BCLKR/X
BCLKR/X ext
4H
ns
Pulse duration, BCLKR/X high or BCLKR/X low
BCLKR/X ext
2H–2
ns
tsu(BFRH-BCKRL)
(BFRH BCKRL)
Setup time,
time external BFSR high before BCLKR low
th(BCKRL-BFRH)
h(BCKRL BFRH)
time external BFSR high after BCLKR low
Hold time,
tsu(BDRV-BCKRL)
(BDRV BCKRL)
Setup time,
time BDR valid before BCLKR low
th(BCKRL-BDRV)
h(BCKRL BDRV)
Hold time
time, BDR valid after BCLKR low
tsu(BFXH-BCKXL)
(BFXH BCKXL)
Setup time,
time external BFSX high before BCLKX low
th(BCKXL-BFXH)
h(BCKXL BFXH)
Hold time
time, external BFSX high after BCLKX low
BCLKR int
10
BCLKR ext
3
BCLKR int
2
BCLKR ext
5
BCLKR int
7
BCLKR ext
2
BCLKR int
2
BCLKR ext
6
BCLKX int
9
BCLKX ext
2
BCLKX int
2
BCLKX ext
5
ns
ns
ns
ns
ns
ns
tr(BCKRX)
Rise time, BCKR/X
BCLKR/X ext
8
ns
tf(BCKRX)
Fall time, BCKR/X
BCLKR/X ext
8
ns
† CLKRP = CLKXP = FSRP = FSXP = 0. If the polarity of any of the signals is inverted, then the timing references of that signal are also inverted.
Table 4–21. McBSP Transmit and Receive Switching Characteristics†
PARAMETER
MIN
MAX
UNIT
tc(BCKRX)
tw(BCKRXH)
Cycle time, BCLKR/X
BCLKR/X int
4H
Pulse duration, BCLKR/X high
BCLKR/X int
D – 4‡
D + 4‡
ns
tw(BCKRXL)
Pulse duration, BCLKR/X low
BCLKR/X int
C – 4‡
C + 4‡
ns
–4
4
ns
BCLKR ext
1
11
ns
BCLKX int
–2
6
BCLKX ext
6
13
BCLKX int
–3
6
BCLKX ext
11
BCLKX int
1
–2¶
BCLKX ext
1
13
td(BCKRH-BFRV)
d(BCKRH BFRV)
td(BCKXH-BFXV)
d(BCKXH BFXV)
BCLKR int
Delay time,
time BCLKR high to internal BFSR valid
Delay time,
time BCLKX high to internal BFSX valid
Disable time,, BCLKX high
g to BDX high
g impedance following
g last data
tdis(BCKXH-BDXHZ)
di (BCKXH BDXHZ) bit of transfer
td(BCKXH-BDXV)
d(BCKXH BDXV)
Delay time,
time BCLKX high to BDX valid
DXENA = 0§
ns
9
Delay time, BFSX high to BDX valid
BFSX int
–3¶
5
ONLY applies when in data delay 0 (XDATDLY = 00b) mode
BFSX ext
1
15
td(BFXH-BDXV)
d(BFXH BDXV)
ns
ns
ns
ns
† CLKRP = CLKXP = FSRP = FSXP = 0. If the polarity of any of the signals is inverted, then the timing references of that signal are also inverted.
‡ T = BCLKRX period = (1 + CLKGDV) * 2H
C = BCLKRX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even
D = BCLKRX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even
§ The transmit delay enable (DXENA) and A–bis mode (ABIS) features of the McBSP are not implemented on the TMS320VC5401.
¶ Minimum delay times also represent minimum output hold times.
54
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
tc(BCKRX)
tw(BCKRXH)
tr(BCKRX)
tw(BCKRXL)
BCLKR
td(BCKRH–BFRV)
td(BCKRH–BFRV)
tr(BCKRX)
BFSR (int)
tsu(BFRH–BCKRL)
th(BCKRL–BFRH)
BFSR (ext)
th(BCKRL–BDRV)
tsu(BDRV–BCKRL)
BDR
(RDATDLY=00b)
Bit (n–1)
(n–2)
tsu(BDRV–BCKRL)
(n–3)
(n–4)
th(BCKRL–BDRV)
BDR
(RDATDLY=01b)
Bit (n–1)
(n–2)
tsu(BDRV–BCKRL)
BDR
(RDATDLY=10b)
(n–3)
th(BCKRL–BDRV)
Bit (n–1)
(n–2)
Figure 4–20. McBSP Receive Timings
tc(BCKRX)
tw(BCKRXH)
tw(BCKRXL)
tr(BCKRX)
tf(BCKRX)
BCLKX
td(BCKXH–BFXV)
td(BCKXH–BFXV)
BFSX (int)
tsu(BFXH–BCKXL)
th(BCKXL–BFXH)
BFSX (ext)
td(BDFXH–BDXV)
BDX
(XDATDLY=00b)
Bit 0
Bit (n–1)
td(BCKXH–BDXV)
(n–2)
(n–3)
(n–4)
td(BCKXH–BDXV)
BDX
(XDATDLY=01b)
Bit 0
Bit (n–1)
(n–3)
td(BCKXH–BDXV)
tdis(BCKXH–BDXHZ)
BDX
(XDATDLY=10b)
(n–2)
Bit 0
Bit (n–1)
(n–2)
Figure 4–21. McBSP Transmit Timings
December 2000 – Revised May 2001
SPRS153B
55
Electrical Specifications
4.14.2
McBSP General-Purpose I/O Timing
Table 4–22 and Table 4–23 assume testing over recommended operating conditions (see Figure 4–22).
Table 4–22. McBSP General-Purpose I/O Timing Requirements
MIN
tsu(BGPIO-COH)
th(COH-BGPIO)
Setup time, BGPIOx input mode before CLKOUT high†
Hold time, BGPIOx input mode after CLKOUT high†
MAX
UNIT
11
ns
2
ns
† BGPIOx refers to BCLKRx, BFSRx, BDRx, BCLKXx, or BFSXx when configured as a general-purpose input.
Table 4–23. McBSP General-Purpose I/O Switching Characteristics
PARAMETER
td(COH-BGPIO)
Delay time, CLKOUT high to BGPIOx output mode‡
‡ BGPIOx refers to BCLKRx, BFSRx, BCLKXx, BFSXx, or BDXx when configured as a general-purpose output.
tsu(BGPIO-COH)
MIN
MAX
–2
7
UNIT
ns
td(COH-BGPIO)
CLKOUT
th(COH-BGPIO)
BGPIOx Input
Mode†
BGPIOx Output
Mode‡
† BGPIOx refers to BCLKRx, BFSRx, BDRx, BCLKXx, or BFSXx when configured as a general-purpose input.
‡ BGPIOx refers to BCLKRx, BFSRx, BCLKXx, BFSXx, or BDXx when configured as a general-purpose output.
Figure 4–22. McBSP General-Purpose I/O Timings
56
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.14.3
McBSP Transmit and Receive Timing Using CLKR/X as a Clock Source Input to
the Sample Rate Generator (SRGR)
The 5401 McBSP has been enhanced to allow the use of an external clock source as an input to the sample
rate generator (SRGR). This capability is enabled by reconfiguring either the transmit shift clock (BCLKX),
or the receive shift clock (BCLKR) to function as the input clock to the SRGR. When the McBSP is used in
this mode, the output of the SRGR is then used as a common shift clock for both the receive and transmit
sections of the serial port. This clock is output on the other of these two pins. Therefore, if BCLKX is
reconfigured as the SRGR input, then BCLKR is used as the shift clock for both the transmit and receive
sections of the McBSP. If BCLKR is reconfigured as the SRGR input, then BCLKX is used as the shift clock
for both the transmit and receive sections of the McBSP. The relevant timings for this mode of operation are
depicted in Figure 4–23. The other timings for serial port operations are the same as when using an internal
clock source as described in the standard McBSP transmit and receive timings presented in section 4.14.1.
Table 4–24 and Table 4–25 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–23).
Table 4–24. McBSP Sample Rate Generator Timing Requirements
MIN
MAX
2H
UNIT
tc(BCKS)
tw(BCKSH)
Cycle time, SRGR clock input
Pulse duration, SRGR clock input high
H–6
H+3
ns
ns
tw(BCKSL)
tr(BCKS)
Pulse duration, SRGR clock input low
H–6
H+3
ns
Rise time, SRGR clock input
10
ns
tf(BCKS)
Fall time, SRGR clock input
10
ns
Table 4–25. McBSP Sample Rate Generator Switching Characteristics
PARAMETER
td(BCKSH-BCLKRXH) Delay time, from SRGR clock input to SRGR output
December 2000 – Revised May 2001
MIN
MAX
1
15
SPRS153B
UNIT
ns
57
Electrical Specifications
tc(BCKS)
tw(BCKSH)
tr(BCKS)
tw(BCKSL)
SRGR Input
(BCLKX/BCLKR)
td(BCKSH–BCKRXH)
tf(BCKS)
SRGR Output
(BCLKR/BCLKX)
Receive Signals Referenced to Sample Rate Generator Output
BFSR
BDR
Bit (n–1)
(n–2)
(n–3)
(n–4)
Transmit Signals Referenced to Sample Rate Generator Output
BFSX
BDX
Bit 0
Bit (n–1)
(n–2)
(n–3)
(n–4)
Figure 4–23. McBSP Sample Rate Generator Timings
58
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.14.4
McBSP as SPI Master or Slave Timing
Table 4–26 through Table 4–33 assume testing over recommended operating conditions and H = 0.5tc(CO)
(see Figure 4–24 through Figure 4–27).
Table 4–26. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 0)†
MASTER
MIN
tsu(BDRV-BCKXL)
th(BCKXL-BDRV)
Setup time, BDR valid before BCLKX low
tsu(BFXL-BCKXH)
Setup time, BFSX low before BCLKX high
SLAVE
MAX
MIN
MAX
UNIT
11
– 12H
ns
2
7 + 12H
ns
12
ns
32H
ns
Hold time, BDR valid after BCLKX low
tc(BCKX)
Cycle time, BCLKX
12H
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4–27. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 0)†
MASTER‡
SLAVE
PARAMETER
th(BCKXL-BFXL)
td(BFXL-BCKXH)
Hold time, BFSX low after BCLKX low§
Delay time, BFSX low to BCLKX high¶
td(BCKXH-BDXV)
Delay time, BCLKX high to BDX valid
tdis(BCKXL-BDXHZ)
Disable time, BDX high impedance following last data bit from
BCLKX low
tdis(BFXH-BDXHZ)
Disable time, BDX high impedance following last data bit from BFSX
high
MIN
MAX
T –5
T +6
C–7
C +5
–4
6
C–4
C+5
MIN
MAX
UNIT
ns
ns
6H +3
10H + 17
ns
ns
2H+ 2
6H + 19
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
4H –4
8H + 19
ns
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
‡ T = BCLKX period = (1 + CLKGDV) * 2H
C = BCLKX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even
§ FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX
and BFSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP
¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock
(BCLKX).
LSB
tsu(BFXL-BCKXH)
tc(BCKX)
MSB
BCLKX
th(BCKXL-BFXL)
td(BFXL-BCKXH)
BFSX
tdis(BFXH-BDXHZ)
tdis(BCKXL-BDXHZ)
BDX
Bit 0
td(BFXL-BDXV)
td(BCKXH-BDXV)
Bit(n-1)
tsu(BDRV-BCLXL)
BDR
Bit 0
(n-2)
(n-3)
(n-4)
th(BCKXL-BDRV)
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4–24. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0
December 2000 – Revised May 2001
SPRS153B
59
Electrical Specifications
Table 4–28. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 0)†
MASTER
MIN
tsu(BDRV-BCKXH)
th(BCKXH-BDRV)
Setup time, BDR valid before BCLKX high
tsu(BFXL-BCKXH)
Setup time, BFSX low before BCLKX high
Hold time, BDR valid after BCLKX high
SLAVE
MAX
MIN
MAX
UNIT
14
2 – 12H
ns
6
5 + 12H
ns
12
ns
32H
ns
tc(BCKX)
Cycle time, BCLKX
12H
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4–29. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 0)†
MASTER‡
SLAVE
PARAMETER
MIN
MAX
C–5
C+6
MIN
MAX
UNIT
th(BCKXL-BFXL)
td(BFXL-BCKXH)
Hold time, BFSX low after BCLKX low§
Delay time, BFSX low to BCLKX high¶
T–7
T +5
td(BCKXL-BDXV)
Delay time, BCLKX low to BDX valid
–4
8
6H +3
10H + 17
ns
tdis(BCKXL-BDXHZ)
Disable time, BDX high impedance following last data bit from
BCLKX low
–4
6
6H +1
10H + 19
ns
ns
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
D–4
D +6
4H – 4
8H + 19
ns
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
‡ T = BCLKX period = (1 + CLKGDV) * 2H
C = BCLKX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even
D = BCLKX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even
§ FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX
and BFSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP
¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock
(BCLKX).
LSB
tc(BCKX)
MSB
tsu(BFXL-BCKXH)
BCLKX
td(BFXL-BCKXH)
th(BCKXL-BFXL)
BFSX
tdis(BCKXL-BDXHZ)
BDX
td(BCKXL-BDXV)
td(BFXL-BDXV)
Bit 0
Bit(n-1)
tsu(BDRV-BCKXH)
BDR
Bit 0
(n-2)
(n-3)
(n-4)
th(BCKXH-BDRV)
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4–25. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0
60
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
Table 4–30. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 1)†
MASTER
MIN
tsu(BDRV-BCKXH)
th(BCKXH-BDRV)
Setup time, BDR valid before BCLKX high
tsu(BFXL-BCKXL)
Setup time, BFSX low before BCLKX low
Hold time, BDR valid after BCLKX high
SLAVE
MAX
MIN
MAX
UNIT
14
2 – 12H
ns
6
5 + 12H
ns
12
ns
32H
ns
tc(BCKX)
Cycle time, BCLKX
12H
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4–31. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 1)†
MASTER‡
PARAMETER
th(BCKXH-BFXL)
td(BFXL-BCKXL)
Hold time, BFSX low after BCLKX high§
Delay time, BFSX low to BCLKX low¶
td(BCKXL-BDXV)
Delay time, BCLKX low to BDX valid
tdis(BCKXH-BDXHZ)
Disable time, BDX high impedance following last data bit from
BCLKX high
tdis(BFXH-BDXHZ)
Disable time, BDX high impedance following last data bit from BFSX
high
SLAVE
MIN
MAX
T–5
T+6
D–7
D+5
–4
8
D–4
D+5
MIN
MAX
UNIT
ns
ns
6H + 3
10H + 17
ns
ns
2H + 2
6H + 19
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
4H – 4
8H + 19
ns
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
‡ T = BCLKX period = (1 + CLKGDV) * 2H
D = BCLKX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even
§ FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX
and BFSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP
¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock
(BCLKX).
tsu(BFXL-BCKXL)
LSB
tc(BCKX)
MSB
BCLKX
th(BCKXH-BFXL)
td(BFXL-BCKXL)
BFSX
tdis(BFXH-BDXHZ)
tdis(BCKXH-BDXHZ)
BDX
Bit 0
td(BFXL-BDXV)
td(BCKXL-BDXV)
Bit(n-1)
tsu(BDRV-BCKXH)
BDR
Bit 0
(n-2)
(n-3)
(n-4)
th(BCKXH-BDRV)
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4–26. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1
December 2000 – Revised May 2001
SPRS153B
61
Electrical Specifications
Table 4–32. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 1)†
MASTER
MIN
tsu(BDRV-BCKXL)
th(BCKXL-BDRV)
Setup time, BDR valid before BCLKX low
tsu(BFXL-BCKXL)
Setup time, BFSX low before BCLKX low
Hold time, BDR valid after BCLKX low
SLAVE
MAX
MIN
UNIT
MAX
11
– 12H
ns
2
5 + 12H
ns
12
ns
32H
ns
tc(BCKX)
Cycle time, BCLKX
12H
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4–33. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 1)†
MASTER‡
SLAVE
PARAMETER
MIN
MAX
D–5
D+6
MIN
UNIT
MAX
th(BCKXH-BFXL)
td(BFXL-BCKXL)
Hold time, BFSX low after BCLKX high§
Delay time, BFSX low to BCLKX low¶
T–7
T+5
td(BCKXH-BDXV)
Delay time, BCLKX high to BDX valid
–4
8
6H + 3
10H + 17
ns
tdis(BCKXH-BDXHZ)
Disable time, BDX high impedance following last data bit from
BCLKX high
–4
6
6H + 1
10H + 19
ns
ns
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
C–4 C+6
4H – 4
8H + 19
ns
† For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1.
‡ T = BCLKX period = (1 + CLKGDV) * 2H
C = BCLKX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even
D = BCLKX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even
§ FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX
and BFSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP
¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock
(BCLKX).
LSB
tsu(BFXL-BCKXL)
tc(BCKX)
MSB
BCLKX
th(BCKXH-BFXL)
td(BFXL-BCKXL)
BFSX
tdis(BCKXH-BDXHZ)
BDX
td(BCKXH-BDXV)
td(BFXL-BDXV)
Bit 0
Bit(n-1)
tsu(BDRV-BCKXL)
BDR
Bit 0
(n-2)
(n-3)
(n-4)
th(BCKXL-BDRV)
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4–27. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1
62
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
4.15 Host-Port Interface (HPI8) Timing
Table 4–34 and Table 4–35 assume testing over recommended operating conditions and H = 0.5 * processor
clock (see Figure 4–28 through Figure 4–31). In the following tables, DS refers to the logical OR of HCS,
HDS1, and HDS2; HDx refers to any of the HPI data bus pins (HD0, HD1, HD2, etc.); and HAD stands for
HCNTL0, HCNTL1, and HR/W.
Table 4–34. HPI8 Timing Requirements†
MIN
MAX
UNIT
tsu(HBV-DSL)
th(DSL-HBV)
Setup time, HBIL and HAD valid before DS low or before HAS low‡§
Hold time, HBIL and HAD valid after DS low or after HAS low‡§
7
ns
7
ns
tsu(HSL-DSL)
tw(DSL)
Setup time, HAS low before DS low
12
ns
Pulse duration, DS low
20
ns
tw(DSH)
tsu(HDV-DSH)
Pulse duration, DS high
10
ns
Setup time, HDx valid before DS high, HPI write
4
ns
th(DSH-HDV)W
tsu(GPIO-COH)
Hold time, HDx valid after DS high, HPI write
5
ns
Setup time, HDx input valid before CLKOUT high, HDx configured as general-purpose input
8
ns
th(GPIO-COH)
Hold time, HDx input valid after CLKOUT high, HDx configured as general-purpose input
2
ns
† GPIO refers to the HD pins when they are configured as general-purpose input/outputs.
‡ HAD refers to HCNTL0, HCNTL1, and H/RW.
§ When the HAS signal is used to latch the control signals, this timing refers to the falling edge of the HAS signal. Otherwise, when HAS is not used
(always high), this timing refers to the falling edge of DS.
December 2000 – Revised May 2001
SPRS153B
63
Electrical Specifications
Table 4–35. HPI8 Switching Characteristics
PARAMETER
ten(DSL-HD)
td(DSL-HDV1)
d(DSL HDV1)
Enable time, HD driven from DS low
Delay
y time, DS low to HDx valid for first
byte of an HPI read
MIN
MAX
UNIT
0
18
ns
Case 1a: Memory accesses when
DMAC is active in 16-bit mode and
tw(DSH) < 18H†
Case 1b: Memory accesses when
DMAC is active in 16-bit mode and
tw(DSH) ≥ 18H†
Case 1c: Memory access when DMAC
is active in 32-bit mode and tw(DSH) <
26H†
18H+18 – tw(DSH)
18
26H+18 – tw(DSH)
ns
Case 1d: Memory access when DMAC
is active in 32-bit mode and tw(DSH) ≥
26H†
18
Case 2a: Memory accesses when
DMAC is inactive and tw(DSH) < 10H†
10H+18 – tw(DSH)
Case 2b: Memory accesses when
DMAC is inactive and tw(DSH) ≥ 10H†
18
Case 3: Register accesses
18
td(DSL-HDV2)
th(DSH-HDV)R
Delay time, DS low to HDx valid for second byte of an HPI read
tv(HYH-HDV)
td(DSH-HYL)
Valid time, HDx valid after HRDY high
11
Delay time, DS high to HRDY low (see Note 1)
18
ns
Case 1a: Memory accesses when
DMAC is active in 16-bit mode†
18H+18
ns
Case 1b: Memory accesses when
DMAC is active in 32-bit mode†
26H+18
ns
Case 2: Memory accesses when
DMAC is inactive†
10H+18
Case 3: Write accesses to HPIC
register (see Note 2)
6H+18
td(DSH-HYH)
Hold time, HDx valid after DS high, for a HPI read
Delay time,
time DS high to HRDY high
1
18
ns
7
ns
ns
td(HCS-HRDY)
td(COH-HYH)
Delay time, HCS low/high to HRDY low/high
18
ns
Delay time, CLKOUT high to HRDY high
5
ns
td(COH-HTX)
Delay time, CLKOUT high to HINT change
7
ns
td(COH-GPIO)
Delay time, CLKOUT high to HDx output change. HDx is configured as a
general-purpose output.‡
8
ns
NOTES: 1. The HRDY output is always high when the HCS input is high, regardless of DS timings.
2. This timing applies to the first byte of an access, when writing a one to the DSPINT bit or HINT bit of the HPIC register. All other writes
to the HPIC occur asynchronoulsy, and do not cause HRDY to be deasserted.
† DMAC stands for direct memory access (DMA) controller. The HPI8 shares the internal DMA bus with the DMAC, thus HPI8 access times are
affected by DMAC activity.
‡ GPIO refers to the HD pins when they are configured as general-purpose input/outputs.
64
SPRS153B
December 2000 – Revised May 2001
Electrical Specifications
Second Byte
First Byte
Second Byte
HAS
tsu(HBV-DSL)
tsu(HSL-DSL)
th(DSL-HBV)
HAD†
Valid
Valid
tsu(HBV-DSL)‡
th(DSL-HBV)‡
HBIL
HCS
tw(DSH)
tw(DSL)
HDS
td(DSH-HYH)
td(DSH-HYL)
HRDY
ten(DSL-HD)
td(DSL-HDV2)
th(DSH-HDV)R
HD READ
Valid
td(DSL-HDV1)
Valid
tsu(HDV-DSH)
Valid
tv(HYH-HDV)
th(DSH-HDV)W
HD WRITE
Valid
Valid
Valid
td(COH-HYH)
CLKOUT
† HAD refers to HCNTL0, HCNTL1, and HR/W.
‡ When HAS is not used (HAS always high)
Figure 4–28. Using HDS to Control Accesses (HCS Always Low)
December 2000 – Revised May 2001
SPRS153B
65
Electrical Specifications
Second Byte
First Byte
Second Byte
HCS
HDS
td(HCS-HRDY)
HRDY
Figure 4–29. Using HCS to Control Accesses
CLKOUT
td(COH-HTX)
HINT
Figure 4–30. HINT Timing
CLKOUT
tsu(GPIO-COH)
th(GPIO-COH)
GPIOx Input Mode†
td(COH-GPIO)
GPIOx Output Mode†
† GPIOx refers to HD0, HD1, HD2, ...HD7, when the HD bus is configured for general-purpose input/output (I/O).
Figure 4–31. GPIOx† Timings
66
SPRS153B
December 2000 – Revised May 2001
Mechanical Data
5
Mechanical Data
5.1
GGU (S-PBGA-N144)
PLASTIC BALL GRID ARRAY PACKAGE
12,10
SQ
11,90
9,60 TYP
0,80
0,80
N
M
L
K
J
H
G
F
E
D
C
B
A
1 2 3 4 5 6 7 8 9 10 11 12 13
0,95
0,85
1,40 MAX
Seating Plane
0,12
0,08
0,55
0,45
0,08 M
0,45
0,35
0,10
4073221-2/B 08/00
NOTES: A. All linear dimensions are in millimeters.
B. This drawing is subject to change without notice.
C. MicroStar BGA configuration
Figure 5–1. TMS320VC5401 144-Ball MicroStar BGA Plastic Ball Grid Array Package
MicroStar BGA is a trademark of Texas Instruments.
December 2000 – Revised May 2001
SPRS153B
67
Mechanical Data
5.2
PGE (S-PQFP-G144)
PLASTIC QUAD FLATPACK
108
73
109
72
0,27
0,17
0,08 M
0,50
144
0,13 NOM
37
1
36
Gage Plane
17,50 TYP
20,20 SQ
19,80
22,20
SQ
21,80
0,25
0,05 MIN
0°– 7°
0,75
0,45
1,45
1,35
Seating Plane
0,08
1,60 MAX
4040147 / C 10/96
NOTES: A. All linear dimensions are in millimeters.
B. This drawing is subject to change without notice.
C. Falls within JEDEC MS-026
Figure 5–2. TMS320VC5401 144-Pin Low-Profile Quad Flatpack
68
SPRS153B
December 2000 – Revised May 2001