ETC TMS320UC5402-80

TMS320UC5402 Fixed-Point
Digital Signal Processor
Data Manual
Literature Number: SPRS096B
April 1999 – Revised September 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 Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications,
enhancements, improvements, and other changes to its products and services at any time and to discontinue
any product or service without notice. Customers should obtain the latest relevant information before placing
orders and should verify that such information is current and complete. All products are sold subject to TI’s terms
and conditions of sale supplied at the time of order acknowledgment.
TI warrants performance of its hardware products to the specifications applicable at the time of sale in
accordance with TI’s standard warranty. Testing and other quality control techniques are used to the extent TI
deems necessary to support this warranty. Except where mandated by government requirements, testing of all
parameters of each product is not necessarily performed.
TI assumes no liability for applications assistance or customer product design. Customers are responsible for
their products and applications using TI components. To minimize the risks associated with customer products
and applications, customers should provide adequate design and operating safeguards.
TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right,
copyright, mask work right, or other TI intellectual property right relating to any combination, machine, or process
in which TI products or services are used. Information published by TI regarding third–party products or services
does not constitute a license from TI to use such products or services or a warranty or endorsement thereof.
Use of such information may require a license from a third party under the patents or other intellectual property
of the third party, or a license from TI under the patents or other intellectual property of TI.
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. Reproduction
of this information with alteration is an unfair and deceptive business practice. TI is not responsible or liable for
such altered documentation.
Resale of TI 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 and
is an unfair and deceptive business practice. TI is not responsible or liable for any such statements.
Mailing Address:
Texas Instruments
Post Office Box 655303
Dallas, Texas 75265
Copyright  2001, Texas Instruments Incorporated
REVISION HISTORY
REVISION
DATE
PRODUCT STATUS
HIGHLIGHTS
*
April 1999
Product Preview
Original
A
December 1999
Product Preview
Updated characteristic data.
B
September 2001
Production Data
Converted document to Data Manual format. Udated
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 Dual-Access RAM (DARAM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2
On-Chip ROM With Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.3
Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.4
Relocatable Interrupt Vector Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.5
Extended Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2
On-Chip Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1
Software-Programmable Wait-State Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2
Parallel I/O Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.3
Hardware Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.4
Clock Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.5
DMA Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3
Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1
CPU Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2
Peripheral Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.3
McBSP Control Registers and Subaddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.4
DMA Subbank Addressed Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.1
IFR and IMR Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
9
9
10
11
11
12
13
13
16
18
18
20
23
23
24
25
25
27
28
3
Documentation Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
4
Electrical Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1
Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2
Recommended Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3
Electrical Characteristics Over Recommended Operating Case Temperature
Range (Unless Otherwise Noted) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4
Package Thermal Resistance Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5
Timing Parameter Symbology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6
Clock Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6.1
Internal Oscillator With External Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6.2
Divide-By-Two Clock Option (PLL disabled) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.6.3
Multiply-By-N Clock Option (PLL Enabled) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
30
30
April 1999 – Revised September 2001
SPRS096B
31
32
32
33
33
34
35
v
Contents
Section
4.7
Memory and Parallel I/O Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7.1
Memory Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7.2
Memory Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7.3
I/O Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.7.4
I/O Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Ready Timing for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HOLD and HOLDA Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Reset, BIO, Interrupt, and MP/MC Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Timings . . . . . . . . . . . . . . . . .
External Flag (XF) and TOUT Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multichannel Buffered Serial Port (McBSP) Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13.1
McBSP Transmit and Receive Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13.2
McBSP General-Purpose I/O Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13.3
McBSP as SPI Master or Slave Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Host-Port Interface Timing (HPI8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
36
38
40
41
42
45
46
48
49
50
50
53
54
58
Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.1
Ball Grid Array Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2
Low-Profile Quad Flatpack Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
62
63
4.8
4.9
4.10
4.11
4.12
4.13
4.14
5
vi
Page
SPRS096B
April 1999 – Revised September 2001
Figures
List of Figures
Figure
Page
1–1
1–2
144-Terminal GGU Ball Grid Array (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
Block Diagram of the TMS320UC5402 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320UC5402 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] . . . . . . . . . . . . . . . . . . . . . . . . . . . .
UC5402 HPI8 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
UC5402 DMA Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IFR and IMR Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
11
12
13
13
14
15
16
20
28
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
1.8-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 Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . .
McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . .
31
33
34
35
37
39
40
41
42
43
43
44
45
46
47
47
48
49
49
52
52
53
54
55
56
April 1999 – Revised September 2001
SPRS096B
vii
Figures
Figure
Page
4–26
4–27
4–28
4–29
4–30
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
60
61
61
61
5–1
5–2
TMS320UC5402 144-Ball MicroStar BGA Plastic Ball Grid Array . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320UC5402 144-Pin Low-Profile Quad Flatpack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
62
63
viii
SPRS096B
April 1999 – Revised September 2001
Tables
List of Tables
Table
Page
1–1
1–2
Terminal Assignments (144-Terminal GGU 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
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) Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
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 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
14
14
15
19
22
22
22
23
24
25
26
27
28
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
4–28
Thermal Resistance Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Divide-By-2 and Divide-by-4 Clock Options Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . .
Divide-By-2 and Divide-by-4 Clock Options 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 as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 0) . . . . . . . . . .
McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 0) . . . . . .
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) . . . . . .
32
34
34
35
35
36
36
38
40
40
41
42
42
45
45
46
48
49
50
51
53
53
54
54
55
55
56
56
April 1999 – Revised September 2001
SPRS096B
ix
Tables
Table
4–29
4–30
4–31
4–32
x
Page
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 Mode Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HPI8 Mode Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SPRS096B
57
57
58
59
April 1999 – Revised September 2001
Introduction
1
Introduction
This section describes the main features of the TMS320UC5402, 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 theTMS320C54x DSP Functional
Overview (literature number SPRU307).
1.1
Features
D Advanced Multibus Architecture With Three
D
D
D
D
D
D
D
D
D
D
D
D
D
D
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
16K x 16-Bit On-Chip Dual-Access 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
Instructions With Two- or Three-Operand
Reads
Arithmetic Instructions With Parallel Store
and Parallel Load
D Conditional Store Instructions
D Fast Return From Interrupt
D On-Chip Peripherals
D
D
D
D
D
D
D
D
– 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
12.5-ns Single-Cycle Fixed-Point
Instruction Execution Time (80 MIPS)
1.8-V Core Power Supply
1.8-V to 3.6-V I/O Power Supply Enables
Operation With a Single 1.8-V Supply or
with Dual Supplies
Available in a 144-Pin Low-Profile Quad
Flatpack (LQFP) (PGE Suffix)
Available in a 144-Ball MicroStar Ball Grid
Array (BGA) (GGU Suffix)
TMS320C54x and MicroStar BGA are trademarks of Texas Instruments.
† IEEE Standard 1149.1-1990 Standard-Test-Access Port and Boundary Scan Architecture.
April 1999 – Revised September 2001
SPRS096B
1
Introduction
1.2
Description
The TMS320UC5402 fixed-point, digital signal processor (DSP) (hereafter referred to as the UC5402 unless
otherwise specified) is ideal for low-power, high-performance applications. This processor offers very low
power consumption and the flexibility to support various system voltage configurations. The wide range of I/O
voltage enables it to operate with a single 1.8-V power supply or with dual power supplies for mixed voltage
systems. This feature eliminates the need for external level-shifting and reduces power consumption in
emerging sub-3V systems.
Texas Instrument (TI) 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 device.
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 powered down
after the I/O buffers.
The UC5402 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.
1.3
Pin Assignments
Figure 1–1 illustrates the ball locations for the 144-terminal ball grid array (BGA) package and is used in
conjunction with Table 1–1 to locate signal names and ball grid numbers. 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.
1.3.1 Terminal Assignments for the GGU Package
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-Terminal GGU Ball Grid Array (Bottom View)
2
SPRS096B
April 1999 – Revised September 2001
Introduction
Table 1–1. Terminal Assignments (144-Terminal GGU 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
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
A6
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.
‡ If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
April 1999 – Revised September 2001
SPRS096B
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 TMS320UC5402PGE 144-pin low-profile quad flatpack (LQFP) pin assignments are shown in
Figure 1–2. 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.
NOTE A: NC = No connection. These pins should be left unconnected.
Figure 1–2. 144-Pin PGE Low-Profile Quad Flatpack (Top View)
4
SPRS096B
April 1999 – Revised September 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
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 EMU1/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 EMU1/OFF is low.
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)
(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 UC5402, the bus holders keep the pins at the previous logic level. The data bus holders on the UC5402
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 EMU1/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 bit (in the ST1
register) or the IMR. When NMI is activated, the processor traps to the appropriate vector location.
† I = input, O = output, Z = high impedance, S = supply
‡ If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
April 1999 – Revised September 2001
SPRS096B
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
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.
XF
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 EMU1/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 in the high-impedance state in the hold mode; the signals also go into the high-impedance state when
EMU1/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 EMU1/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 EMU1/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 EMU1/OFF is low.
I
Hold. HOLD is asserted to request control of the address, data, and control lines. When acknowledged by the
C54x, these lines go into the high-impedance state.
O/Z
Hold acknowledge. HOLDA indicates that the UC5402 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 EMU1/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
EMU1/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 EMU1/OFF is low.
HOLD
HOLDA
† I = input, O = output, Z = high impedance, S = supply
‡ If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
C54x is a trademark of Texas Instruments.
6
SPRS096B
April 1999 – Revised September 2001
Introduction
Table 1–2. Signal Descriptions (Continued)
TERMINAL
NAME
TYPE†
DESCRIPTION
PLL/TIMER SIGNALS
O/Z
Master clock output signal. CLKOUT cycles at the machine-cycle rate of the CPU. The internal machine cycle
is bounded by the rising edges of this signal. CLKOUT also goes into the high-impedance state when EMU1/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
Clock/PLL input. If the internal oscillator is not being used, the X2/CLKIN functions as the clock input.
X1
O
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 EMU1/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 EMU1/OFF is low.
HINT/TOUT1
O/Z
Timer1 output. TOUT1 signals a pulse when the on-chip timer 1 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 EMU1/OFF is low.
CLKOUT
MULTICHANNEL BUFFERED SERIAL PORT SIGNALS
BCLKR0
BCLKR1
I/O/Z
Receive clock input. BCLKR serves as the serial shift clock for the buffered serial port receiver.
BDR0
BDR1
I
BFSR0
BFSR1
I/O/Z
Frame synchronization pulse for receive input. 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
EMU1/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 EMU1/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 EMU1/OFF is low.
Serial data receive input
HOST-PORT INTERFACE SIGNALS
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 EMU1/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 UC5402, 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.
HCNTL0
HCNTL1
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.
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.
HD0–HD7
† I = input, O = output, Z = high impedance, S = supply
‡ If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
April 1999 – Revised September 2001
SPRS096B
7
Introduction
Table 1–2. Signal Descriptions (Continued)
TERMINAL
NAME
TYPE†
DESCRIPTION
HOST-PORT INTERFACE SIGNALS (CONTINUED)
HR/W
I
Read/write. HR/W controls the direction of an HPI transfer. HR/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 EMU1/OFF is low.
HINT/TOUT1
O/Z
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 EMU1/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 UC5402
is reset.
CVDD
S
DVDD
S
+VDD. Dedicated power supply for the core CPU
+VDD. Dedicated power supply for the I/O pins
VSS
S
Ground
SUPPLY PINS
MISCELLANEOUS SIGNAL
NC
No connection
TEST PINS
TCK
I
IEEE standard 1149.1 (JTAG) 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 EMU1/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.
EMU0
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). Therefore, for the OFF feature, the following apply:
TRST = low
EMU0 = high
EMU1/OFF = low
EMU1/OFF
† I = input, O = output, Z = high impedance, S = supply
‡ If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
8
SPRS096B
April 1999 – Revised September 2001
Functional Overview
2
Functional Overview
The following functional overview is based on the block diagram in Figure 2–1.
54x Core
16K Dual-Access RAM
Program/Data
Dbus
Cbus
Pbus
Ebus
Dbus
Cbus
Pbus
Ebus
Dbus
Pbus
Cbus
P, C, D, E Buses and Control Signals
4K ROM Program/Data
JTAG
Peripheral Bus
GPIO
External Memory Interface
McBSP0
HPI8 Module
McBSP1
DMA Controller
6 Channels
Timer0
Timer1
APLL
DMA Bus
Figure 2–1. Block Diagram of the TMS320UC5402
2.1
Memory
The UC5402 device provides both on-chip ROM and RAM to aid in system performance and integration.
2.1.1 On-Chip Dual-Access RAM (DARAM)
The UC5402 device contains 16K × 16-bit of on-chip dual-access RAM (DARAM). The DARAM is composed
of two blocks of 8K words each. Each block in the DARAM can support two reads in one cycle, or a read and
a write in one cycle. The DARAM is located in the address range 0080h–3FFFh in data space, and can be
mapped into program/data space by setting the OVLY bit to 1.
April 1999 – Revised September 2001
SPRS096B
9
Functional Overview
2.1.2 On-Chip ROM With Bootloader
The UC5402 features 4K × 16-bit of on-chip maskable ROM. Customers can arrange to have the ROM of the
UC5402 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 UC5402 .
A bootloader is available in the standard UC5402 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 UC5402 bootloader
provides different ways to download the code to accomodate 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.
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 UC5402 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.
10
SPRS096B
April 1999 – Revised September 2001
Functional Overview
2.1.3 Memory Map
Hex Page 0 Program
0000
Hex
0000
Page 0 Program
Reserved
(OVLY = 1)
External
(OVLY = 0)
Reserved
(OVLY = 1)
External
(OVLY = 0)
007F
0080
005F
0060
Scratch-Pad
RAM
On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
3FFF
4000
Memory
Mapped
Registers
007F
0080
007F
0080
On-Chip DARAM
(OVLY = 1)
External
(OVLY = 0)
Data
Hex
0000
On-Chip DARAM
(16K x 16-bit)
3FFF
4000
3FFF
4000
External
EFFF
F000
External
EFFF
F000
Reserved
FF7F
FF80
Interrupts
(External)
FFFF
FEFF
FF00
Reserved
(DROM=1)
or External
(DROM=0)
Interrupts
(On-Chip)
FFFF
FFFF
MP/MC= 1
(Microprocessor Mode)
ROM (DROM=1)
or External
(DROM=0)
On-Chip ROM
(4K x 16-bit)
FEFF
FF00
FF7F
FF80
External
MP/MC= 0
(Microcomputer Mode)
Figure 2–2. TMS320UC5402 Memory Map
2.1.4 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.
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.
April 1999 – Revised September 2001
SPRS096B
11
Functional Overview
15
7
6
5
4
3
2
1
0
SMUL
SST
R/W
R/W
IPTR
MP/MC
OVLY
AVIS
DROM
CLK
OFF
R/W
R/W
R/W
R
R
R
LEGEND: R = Read, W = Write
Figure 2–3. Processor Mode Status (PMST) Register
2.1.5 Extended Program Memory
The UC5402 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 UC5402 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 UC5402:
–
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.
12
SPRS096B
April 1999 – Revised September 2001
Functional Overview
Program memory in the UC5402 is organized into 16 pages that are each 64K in length, as shown in
Figure 2–4.
0 0000
1 0000
1 3FFF
Page 1
Lower
16K}
External
2 0000
2 3FFF
...
Page 2
Lower
16K}
External
...
F 3FFF
...
2 4000
1 4000
F 0000
Page 15
Lower
16K}
External
F 4000
Page 0
Page 1
Upper
48K
External
64K
Words{
Page 15
Upper
48K
External
2 FFFF
1 FFFF
0 FFFF
Page 2
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
is mapped to the lower 16K words of all program space pages.
Figure 2–4. Extended Program Memory
2.2
On-Chip Peripherals
The UC5402 device supports the following on-chip 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.2.1 Software-Programmable Wait-State Generator
The software wait-state generator of the UC5402 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
UC5402.
The software wait-state register (SWWSR) controls the operation of the wait-state generator. The 15 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]
April 1999 – Revised September 2001
SPRS096B
13
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 the 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 (SWSM) 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
BIT
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
14
SWSM
SPRS096B
0
-
SWSM = 0: wait-state base values are unchanged (multiplied by 1).
-
SWSM = 1: wait-state base values are mulitplied by 2 for a maximum of 14 wait states.
April 1999 – Revised September 2001
Functional Overview
2.2.1.1
Programmable Bank-Switching Wait States
The programmable bank-switching logic of the UC5402 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) Bit Fields
NO.
15–12
11
10–3
2
1
0
BIT
NAME
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
current bus cycle.
cycle 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.
BNKCMP
HBH
BH
EXIO
April 1999 – Revised September 2001
SPRS096B
15
Functional Overview
2.2.2 Parallel I/O Ports
The UC5402 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 UC5402 can
interface easily with external devices through the I/O ports while requiring minimal off-chip address-decoding
circuits.
2.2.2.1
Enhanced 8-Bit Host-Port Interface (HPI8)
The UC5402 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 UC5402 HPI8:
•
•
Access to entire on-chip RAM through DMA bus
Capability to continue transferring during emulation stop
Hex
0000
Reserved
001F
0020
0023
0024
McBSP
Registers
Reserved
005F
0060
Scratch-Pad
RAM
007F
0080
(16K x 16-bit)
On-Chip DARAM
3FFF
4000
Reserved
FFFF
Figure 2–8. UC5402 HPI8 Memory Map
The HPI8 functions as a slave and enables the host processor to access the on-chip memory of the UC5402.
A major enhancement to the UC5402 HPI over previous versions is that it allows host access to the entire
on-chip memory range of the DSP. 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 UC5402 clock, an active input clock (CLKIN) is required for HPI8 accesses
during IDLE states, and host accesses are not allowed while the UC5402 reset pin is asserted.
16
SPRS096B
April 1999 – Revised September 2001
Functional Overview
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 UC5402.
2.2.2.2
Multichannel Buffered Serial Ports
The UC5402 device includes two high-speed, full-duplex multichannel buffered serial ports (McBSPs) that
allow direct interface to other C54x/LC54x DSPs, 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
The six pins listed are functionally equivalent to the 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.
April 1999 – Revised September 2001
SPRS096B
17
Functional Overview
In addition to the standard serial port functions, the McBSP provides programmable clock and frame
synchronization generation. Among the programmable functions are:
•
•
•
•
•
•
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 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. Clock-stop mode works with only single-phase frames and one word per frame. 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.2.3 Hardware Timer
The UC5402 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.2.4 Clock Generator
The clock generator provides clocks to the UC5402 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 reference clock source. The
reference clock input is then divided by two or four (DIV mode) to generate clocks for the UC5402 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. This allows the 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.
NOTE: If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
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
UC5402 device.
18
SPRS096B
April 1999 – Revised September 2001
Functional Overview
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 UC5402 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: If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
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 the 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 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 clock 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–5.
Table 2–5. Clock Mode Settings at Reset
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
—
April 1999 – Revised September 2001
CLOCK MODE
Reserved (bypass mode)
SPRS096B
19
Functional Overview
2.2.5 DMA Controller
The UC5402 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.
2.2.5.1
Features
The DMA has the following features:
•
•
•
•
•
•
•
•
2.2.5.2
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 channel’s source and destination address registers can have configurable indexes through memory
on each read and write transfer, respectively. The address may remain constant, be postincremented,
postdecremented, 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).
DMA Memory Map
The DMA memory map allows DMA transfers to be unaffected by the status of the MP/MC, DROM, and OVLY
bits. The DMA memory map (see Figure 2–9) is identical to that of the HPI8 controller .
Hex
0000
Reserved
001F
0020
0023
0024
McBSP
Registers
Reserved
005F
0060
Scratch-Pad
RAM
007F
0080
(16K x 16-bit)
On-Chip DARAM
3FFF
4000
Reserved
FFFF
Figure 2–9. UC5402 DMA Memory Map
2.2.5.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.
20
SPRS096B
April 1999 – Revised September 2001
Functional Overview
2.2.5.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 postincremented, postdecremented, or postincremented with a specified index offset.
2.2.5.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.2.5.6
DMA Transfer Counting
The DMA channel element count register (DMCTRx) and the frame count register (DMFRCx) 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.2.5.7
DMA Transfers 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.2.5.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.2.5.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 mode control register (DMMCRx). The available modes
are shown in Table 2–6.
April 1999 – Revised September 2001
SPRS096B
21
Functional Overview
Table 2–6. DMA Interrupts
MODE
DINM
IMOD
INTERRUPT
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 (DMCTRx = DMSEFCx[7:0] = 0)
Multi-Frame
1
1
At end of frame and end of block (DMCTRx = 0)
Either
0
X
No interrupt generated
Either
0
X
No interrupt generated
2.2.5.10 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–7.
Table 2–7. 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
Reserved
1101b
Timer0 interrupt
1110b
External interrupt 3
1111b
Timer1 interrupt
2.2.5.11 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 UC5402 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–8.
Table 2–8. 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
22
SPRS096B
Reserved
April 1999 – Revised September 2001
Functional Overview
2.3
Memory-Mapped Registers
The UC5402 has a set of memory-mapped registers associated with the CPU, on-chip peripherals, the
McBSPs, and the DMA.
2.3.1 CPU Memory-Mapped Registers
The UC5402 has 27 memory-mapped CPU registers, which are mapped in data memory space addresses
0h to 1Fh. Table 2–9 gives a list of the CPU memory-mapped registers (MMRs) available on UC5402.
Table 2–9. CPU Memory-Mapped Registers
ADDRESS
NAME
DESCRIPTION
DEC
HEX
IMR
0
0
Interrupt mask register
IFR
1
1
Interrupt flag register
Reserved for testing
–
2–5
2–5
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
April 1999 – Revised September 2001
SPRS096B
23
Functional Overview
2.3.2 Peripheral Memory-Mapped Registers
The UC5402 has a set of memory-mapped registers associated with peripherals as shown in Table 2–10.
Table 2–10. 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
GPIOCR
GPIOSR
–
Reserved
McBSP0 subbank address register†
McBSP0 subbank data register†
McBSP #0
McBSP #0
Reserved
3Ch
General-purpose I/O pins control register
GPIO
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–11 for a detailed description of the McBSP control registers and their subaddresses.
‡ See Table 2–12 for a detailed description of the DMA subbank addressed registers.
24
SPRS096B
April 1999 – Revised September 2001
Functional Overview
2.3.3 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–11 shows the McBSP control registers and their corresponding subaddresses.
Table 2–11. McBSP Control Registers and Subaddresses
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁ
McBSP0
NAME
ADDRESS
NAME
McBSP1
ADDRESS
SUBADDRESS
DESCRIPTION
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
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
2.3.4 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
postincremented 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–12 shows the DMA
controller subbank addressed registers and their corresponding subaddresses.
April 1999 – Revised September 2001
SPRS096B
25
Functional Overview
Table 2–12. DMA Subbank Addressed Registers
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)
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
DESCRIPTION
† Address 56h is used to access DMA subbank data registers with autoincrement (DMSDI) while address 57h is used to access DMA subbank
data register without autoincrement (DMSDN).
26
SPRS096B
April 1999 – Revised September 2001
Functional Overview
2.4
Interrupts
Vector-relative locations and priorities for all internal and external interrupts are shown in Table 2–13.
Table 2–13. Interrupt Locations and Priorities
NAME
LOCATION
DECIMAL
HEX
RS, SINTR
0
00
NMI, SINT16
4
SINT17
8
SINT18
PRIORITY
FUNCTION
1
Reset (hardware and software reset)
04
2
Nonmaskable interrupt
08
—
Software interrupt #17
12
0C
—
Software interrupt #18
SINT19
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
April 1999 – Revised September 2001
SPRS096B
27
Functional Overview
2.4.1 IFR and IMR Registers
The bits of the interrupt flag register (IFR) and interrupt mask register (IMR) are arranged as shown in
Figure 2–10.
15–14
13
RES
DMAC5
12
11
10
DMAC4
BXINT1
or
DMAC3
BRINT1
or
DMAC2
9
HPINT
8
7
6
5
4
3
2
1
0
INT3
TINT1
or
DMAC1
RES
or
DMAC0
BXINT0
BRINT0
TINT0
INT2
INT1
INT0
Figure 2–10. IFR and IMR Registers
Table 2–14. IFR and IMR Register Bit Fields
BIT
28
FUNCTION
NUMBER
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
8
INT3
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
Reserved or DMAC0
This bit can be configured either as reserved or as 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
SPRS096B
Reserved for future expansion
Host to C54x interrupt flag/mask
External interrupt 3 flag/mask
Timer 0 interrupt flag/mask bit
April 1999 – Revised September 2001
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 user’s 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 and C5000 are trademarks of Texas Instruments.
April 1999 – Revised September 2001
SPRS096B
29
Electrical Specifications
4
Electrical Specifications
This section provides the absolute maximum ratings and the recommended operating conditions for the
TMS320UC5402 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 voltage values are with respect to VSS. Figure 4–1 provides the test load circuit
values for a 1.8-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.0 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
MIN
DVDD Device supply voltage, I/O
CVDD Device supply voltage, core
VSS
DVDD = 1.90
1 90 V to 2.99
2 99 V
VIH
1.71
Supply voltage, GND
DVDD = 1.71
1 71 V to 1.89
1 89 V
High-level
High
level in
input
ut
voltage
DVDD = 3.0 V to 3.6 V
VIL
Low-level input
voltage
DVDD = 1.90 V to 3.6 V
1.8
MAX
UNIT
3.6
V
1.98
V
0
V
X2/CLKIN
1.35
CVDD + 0.3
All other inputs
1.35
DVDD + 0.3
X2/CLKIN
1.35
CVDD + 0.3
All other inputs
1.7
DVDD + 0.3
X2/CLKIN
1.35
CVDD + 0.3
RS, INTn, NMI, BIO,
BCLKR0, BCLKR1, BCLKX0,
BCLKX1, HCS, HDS1,
HDS2, TDI, TMS, CLKMDn
2.2
DVDD + 0.3
TCK, TRST
2.5
DVDD + 0.3
2
DVDD + 0.3
X2/CLKIN
–0.3
0.6
All other inputs
–0.3
0.6
X2/CLKIN
–0.3
0.6
RS, INTn, NMI, BIO,
BCLKR0, BCLKR1, BCLKX0,
BCLKX1, HCS, HDS1,
HDS2, TCK, CLKMDn
–0.3
0.6
All other inputs
–0.3
0.8
All other inputs
1 71 V to 1.89
1 89 V
DVDD = 1.71
NOM
1.71
V
V
IOH
IOL
High-level output current
–300
µA
Low-level output current
1.5
mA
TC
Operating case temperature
100
°C
30
SPRS096B
–40
April 1999 – Revised September 2001
Electrical Specifications
4.3
Electrical Characteristics Over Recommended Operating Case Temperature
Range (Unless Otherwise Noted)
PARAMETER
VOH
High-level output voltage
VOL
Low-level
L
l
l
voltage
IIZ
TEST CONDITIONS
IOH = MAX
Input current for
outputs
out
uts in high
impedance
Input current
0.4
0.35
All outputs
0.4
DVDD = 1.9 to 3.6 V
IOL = MAX
D[15:0], HD[7:0]
Bus holders enabled, DVDD = MAX,
VI = VSS to DVDD
–175
175
All other inputs
DVDD = MAX, VO = VSS to DVDD
–5
5
–40
40
TRST
With internal pulldown
–5
300
HPIENA
With internal pulldown
–5
300
TMS, TCK, TDI, HPI}
With internal pullups,
HPIENA = 0
–300
5
–5
5
5
(VI = VSS
to DVDD)
IDDP
Supply current, core CPU
CVDD = 1.8 V, fclock = 80 MHz,w
TC = 25°C
Supply current,
current pins
fclock = 80 MHz,w
TC = 25°C
DVDD = 1.71 to
1.89 V
12
DVDD = 1.9 to
3.6 V
27
PLL × 1 mode,
IDLE3
Divide-by-two mode, CLKIN stopped
V
µA
µA
35
IDLE2
UNIT
V
All other outputs
All other in
input-only
ut only
pins
IDDC
MAX
CLKOUT
X2/CLKIN
II
TYP†
DVDD – 0.3
DVDD = 1.71
1 71 to 1.89
1 89 V IOL = MAX
output
t t
MIN
mA
mA
1.6
mA
20
µA
Input capacitance
5
pF
Output capacitance
5
pF
IDD
Su ly current,
Supply
standby
Ci
Co
80 MHz input
† All values are typical unless otherwise specified.
‡ HPI input signals except for HPIENA.
§ Clock mode: PLL × 1 with external source
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)
0.855 V
40 pF typical load circuit capacitance
Figure 4–1. 1.8-V Test Load Circuit
April 1999 – Revised September 2001
SPRS096B
31
Electrical Specifications
4.4
Package Thermal Resistance Characteristics
Table 4–1 provides the estimated thermal resistance characteristics for the recommended package types
used on the TMS320UC5402 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:
32
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
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
4.6
Clock Options
The frequency of the reference clock provided at the CLKIN pin can be divided by a factor of two or four or
multiplied by one of several values to generate the internal machine cycle.
4.6.1 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 circuit shown in Figure 4–2 represents
fundamental-mode operation.
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 +
C 1C 2
(C 1 ) C 2)
MIN
fclock
Input clock frequency
10
X1
MAX
UNIT
20
MHz
X2/CLKIN
Crystal
C1
C2
Figure 4–2. Internal Oscillator With External Crystal
April 1999 – Revised September 2001
SPRS096B
33
Electrical Specifications
4.6.2 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 external frequency injected must conform to specifications listed
in Table 4–2.
NOTE: If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
Table 4–2 and Table 4–3 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–3).
Table 4–2. Divide-By-2 and Divide-by-4 Clock Options Timing Requirements
tc(CI)
tf(CI)
Cycle time, X2/CLKIN
MIN
MAX
6.25
†
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–3. Divide-By-2 and Divide-by-4 Clock Options Switching Characteristics
PARAMETER
MIN
12.5‡
TYP
MAX
2tc(CI)
12
†
UNIT
ns
20
ns
tc(CO)
td(CIH-CO)
Cycle time, CLKOUT
tf(CO)
tr(CO)
Fall time, CLKOUT
4
ns
Rise time, CLKOUT
4
ns
Delay time, X2/CLKIN high to CLKOUT high/low
7
tw(COL)
Pulse duration, CLKOUT low
H–2
H+2
ns
tw(COH)
Pulse duration, CLKOUT high
H–2
H+2
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
34
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
4.6.3 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 Table 4–4.
NOTE: If an external clock source is used, the CLKIN signal level should not exceed CVDD + 0.3 V.
Table 4–4 and Table 4–5 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–4).
Table 4–4. Multiply-By-N Clock Option Timing Requirements†
tc(CI)
Cycle time, X2/CLKIN
MIN
MAX
Integer PLL multiplier N (N = 1–15)
12.5N
400N
PLL multiplier N = x.5
12.5N
200N
PLL multiplier N = x.25, x.75
12.5N
100N
tf(CI)
Fall time, X2/CLKIN
tr(CI)
Rise time, X2/CLKIN
† N = Multiplication factor
UNIT
ns
8
ns
8
ns
Table 4–5. Multiply-By-N Clock Option Switching Characteristics
PARAMETER
MIN
MAX
12.5
TYP
tc(CI)/N†
7
10
20
UNIT
tc(CO)
td(CI-CO)
Cycle time, CLKOUT
tf(CO)
tr(CO)
Fall time, CLKOUT
4
Rise time, CLKOUT
4
tw(COL)
tw(COH)
Pulse duration, CLKOUT low
H–2
H+2
ns
Pulse duration, CLKOUT high
H–2
H+2
ns
30
ms
Delay time, X2/CLKIN high/low to CLKOUT high/low
ns
ns
ns
tp
Transitory phase, PLL lock up time
† N = Multiplication factor
tr(CI)
tc(CI)
ns
tf(CI)
X2/CLKIN
td(CI-CO)
tc(CO)
tp
tw(COH)
tf(CO)
tw(COL)
tr(CO)
Unstable
CLKOUT
Figure 4–4. External Multiply-by-One Clock Timing
April 1999 – Revised September 2001
SPRS096B
35
Electrical Specifications
4.7
Memory and Parallel I/O Interface Timing
4.7.1 Memory Read
Table 4–6 and Table 4–7 assume testing over recommended operating conditions with MSTRB = 0 and
H = 0.5tc(CO) (see Figure 4–5).
Table 4–6. Memory Read Timing Requirements†
MAX
UNIT
ta(A)M
ta(MSTRBL)
Access time, read data access from address valid
MIN
2H–14
ns
Access time, read data access from MSTRB low
2H–14
ns
tsu(D)R
th(D)R
Setup time, read data before CLKOUT low
7
ns
Hold time, read data after CLKOUT low
–2
ns
th(A-D)R
Hold time, read data after address invalid
–3
ns
–3
ns
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–7. Memory Read Switching Characteristics†
td(CLKL-A)
td(CLKL-MSL)
td(CLKL-MSH)
th(CLKL-A)R
PARAMETER
Delay time, CLKOUT low to address valid‡
MAX
UNIT
0
8
ns
Delay time, CLKOUT low to MSTRB low
0
8
ns
Delay time, CLKOUT low to MSTRB high
0
8
ns
Hold time, address valid after CLKOUT low‡
Hold time, address valid after CLKOUT high§
0
7
ns
0
5
ns
th(CLKH-A)R
† 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
36
MIN
SPRS096B
April 1999 – Revised September 2001
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 external data space accesses.
Figure 4–5. Memory Read (MSTRB = 0)
April 1999 – Revised September 2001
SPRS096B
37
Electrical Specifications
4.7.2 Memory Write
Table 4–8 assumes testing over recommended operating conditions with MSTRB = 0 and H = 0.5tc(CO) (see
Figure 4–6).
Table 4–8. Memory Write Switching Characteristics†
PARAMETER
MIN
MAX
td(CLKH-A)
td(CLKL-A)
Delay time, CLKOUT high to address valid‡
Delay time, CLKOUT low to address valid§
0
5
ns
0
8
ns
td(CLKL-MSL)
td(CLKL-D)W
Delay time, CLKOUT low to MSTRB low
0
8
ns
Delay time, CLKOUT low to data valid
0
17
ns
td(CLKL-MSH)
td(CLKH-RWL)
Delay time, CLKOUT low to MSTRB high
0
8
ns
–1
5
ns
td(CLKH-RWH)
td(RWL-MSTRBL)
Delay time, CLKOUT high to R/W high
–2
5
ns
H–4
H+2
ns
th(A)W
Hold time, address valid after CLKOUT high‡
0
5
ns
th(D)MSH
tw(SL)MS
Hold time, write data valid after MSTRB high
H–3
H+14
ns
Pulse duration, MSTRB low
2H–5
tsu(A)W
tsu(D)MSH
Setup time, address valid before MSTRB low
2H–4
Delay time, CLKOUT high to R/W low
Delay time, R/W low to MSTRB low
Setup time, write data valid before MSTRB high
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
§ In the case of a memory write preceded by an I/O cycle
38
SPRS096B
2H–14
UNIT
ns
ns
2H+5
H–5
ns
ns
0
ns
April 1999 – Revised September 2001
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 external data space accesses.
Figure 4–6. Memory Write (MSTRB = 0)
April 1999 – Revised September 2001
SPRS096B
39
Electrical Specifications
4.7.3 I/O Read
Table 4–9 and Table 4–10 assume testing over recommended operating conditions, IOSTRB = 0, and
H = 0.5tc(CO) (see Figure 4–7).
Table 4–9. I/O Read Timing Requirements
MIN
MAX
UNIT
ta(A)IO
ta(ISTRBL)IO
Access time, read data access from address valid†
3H–17
ns
Access time, read data access from IOSTRB low
3H–17
ns
tsu(D)IOR
th(D)IOR
Setup time, read data before CLKOUT high
Hold time, read data after CLKOUT high
th(ISTRBH-D)R
Hold time, read data after IOSTRB high
† Address and IS timings are included in timings referenced as address.
9
ns
–1
ns
–3
ns
Table 4–10. 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
0
8
UNIT
ns
Delay time, CLKOUT high to IOSTRB low
–2
5
ns
Delay time, CLKOUT high to IOSTRB high
Hold time, address after CLKOUT low†
–2
5
ns
0
8
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 I/O accesses.
Figure 4–7. Parallel I/O Port Read (IOSTRB = 0)
40
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
4.7.4 I/O Write
Table 4–11 assumes testing over recommended operating conditions, IOSTRB = 0, and H = 0.5tc(CO) (see
Figure 4–8).
Table 4–11. I/O Write Switching Characteristics
PARAMETER
MIN
MAX
td(CLKL-A)
td(CLKH-ISTRBL)
Delay time, CLKOUT low to address valid†
0
8
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 low to R/W low
Delay time, CLKOUT high to IOSTRB low
UNIT
–2
5
ns
H–5
H+14
ns
–2
5
ns
0
8
ns
Delay time, CLKOUT low to R/W high
0
8
ns
th(A)IOW
Hold time, address valid after CLKOUT low†
0
8
ns
th(D)IOW
Hold time, write data after IOSTRB high
tsu(D)IOSTRBH
Setup time, write data before IOSTRB high
Delay time, CLKOUT high to IOSTRB high
H–3
H+11
ns
H–11
H+1
ns
H–2
H+2
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 I/O accesses.
Figure 4–8. Parallel I/O Port Write (IOSTRB = 0)
April 1999 – Revised September 2001
SPRS096B
41
Electrical Specifications
4.8
Ready Timing for Externally Generated Wait States
Table 4–12 and Table 4–13 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–9 through Figure 4–12).
Table 4–12. Ready Timing Requirements for Externally Generated Wait States†
MIN
tsu(RDY)
th(RDY)
Setup time, READY before CLKOUT low
tv(RDY)MSTRB
th(RDY)MSTRB
tv(RDY)IOSTRB
th(RDY)IOSTRB
MAX
UNIT
7
ns
Hold time, READY after CLKOUT low
Valid time, READY after MSTRB low‡
–2
ns
Hold time, READY after MSTRB low‡
Valid time, READY after IOSTRB low‡
4H–4
Hold time, READY after IOSTRB low‡
5H–3
4H–11
ns
ns
5H–11
ns
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 by 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–13. Ready Switching Characteristics for Externally Generated Wait States†
PARAMETER
td(MSCL)
td(MSCH)
MIN
MAX
UNIT
Delay time, CLKOUT low to MSC low
0
8
ns
Delay time, CLKOUT low to MSC high
–1
8
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 by 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
td(MSCH)
td(MSCL)
MSC
Wait States
Generated Internally
Wait State
Generated
by READY
NOTE A: A[19:16] are always driven low during external data space accesses.
Figure 4–9. Memory Read With Externally Generated Wait States
42
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
CLKOUT
A[19:0]
D[15:0]
th(RDY)
tsu(RDY)
READY
tv(RDY)MSTRB
th(RDY)MSTRB
MSTRB
td(MSCH)
td(MSCL)
MSC
Wait States
Generated Internally
Wait State Generated
by READY
NOTE A: A[19:16] are always driven low during external data space accesses.
Figure 4–10. Memory Write With Externally Generated Wait States
CLKOUT
A[19:0]
th(RDY)
tsu(RDY)
READY
tv(RDY)IOSTRB
th(RDY)IOSTRB
IOSTRB
td(MSCH)
td(MSCL)
MSC
Wait
States
Generated
Internally
Wait State Generated
by READY
NOTE A: A[19:16] are always driven low during I/O space accesses.
Figure 4–11. I/O Read With Externally Generated Wait States
April 1999 – Revised September 2001
SPRS096B
43
Electrical Specifications
CLKOUT
A[19:0]
D[15:0]
th(RDY)
tsu(RDY)
READY
tv(RDY)IOSTRB
th(RDY)IOSTRB
IOSTRB
td(MSCH)
td(MSCL)
MSC
Wait State Generated
by READY
Wait States
Generated
Internally
NOTE A: A[19:16] are always driven low during I/O accesses.
Figure 4–12. I/O Write With Externally Generated Wait States
44
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
4.9
HOLD and HOLDA Timings
Table 4–14 and Table 4–15 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–13).
Table 4–14. 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+7
ns
7
ns
Table 4–15. 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
3
ns
Disable time, R/W high impedance from CLKOUT low
3
ns
tdis(CLKL-S)
ten(CLKL-A)
Disable time, MSTRB, IOSTRB high impedance from CLKOUT low
3
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
Enable time, MSTRB, IOSTRB enabled from CLKOUT low
2H+7
ns
tv(HOLDA)
tw(HOLDA)
Valid time, HOLDA low after CLKOUT low
0
8
ns
Valid time, HOLDA high after CLKOUT low
0
8
ns
Pulse duration, HOLDA low duration
2H
ns
CLKOUT
tsu(HOLD)
tsu(HOLD)
tw(HOLD)
HOLD
tv(HOLDA)
tv(HOLDA)
tw(HOLDA)
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)
April 1999 – Revised September 2001
SPRS096B
45
Electrical Specifications
4.10 Reset, BIO, Interrupt, and MP/MC Timings
Table 4–16 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–14,
Figure 4–15, and Figure 4–16).
Table 4–16. Reset, BIO, Interrupt, and MP/MC Timing Requirements
MIN
MAX
UNIT
th(RS)
th(BIO)
Hold time, RS after CLKOUT low
0
ns
Hold time, BIO after CLKOUT low
–2
ns
th(INT)
th(MPMC)
Hold time, INTn, NMI, after CLKOUT low†
–3
ns
0
ns
tw(RSL)
tw(BIO)S
Hold time, MP/MC after CLKOUT low
Pulse duration, RS low‡§
4H+5
ns
Pulse duration, BIO low, synchronous
2H+4
ns
tw(BIO)A
tw(INTH)S
Pulse duration, BIO low, asynchronous
4H
ns
2H–1
ns
tw(INTH)A
tw(INTL)S
Pulse duration, INTn, NMI high (asynchronous)
4H
ns
Pulse duration, INTn, NMI low (synchronous)
2H+1
ns
tw(INTL)A
tw(INTL)WKP
Pulse duration, INTn, NMI low (asynchronous)
tsu(RS)
tsu(BIO)
tsu(INT)
tsu(MPMC)
Pulse duration, INTn, NMI high (synchronous)
4H
ns
Pulse duration, INTn, NMI low for IDLE2/IDLE3 wakeup
Setup time, RS before X2/CLKIN low¶
8
ns
5
ns
Setup time, BIO before CLKOUT low
7
12
ns
Setup time, INTn, NMI, RS before CLKOUT low
8
12
ns
Setup time, MP/MC before CLKOUT low
10
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
46
SPRS096B
April 1999 – Revised September 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
April 1999 – Revised September 2001
SPRS096B
47
Electrical Specifications
4.11 Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Timings
Table 4–17 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–17).
Table 4–17. 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
0
9
ns
Delay time, CLKOUT low to IAQ high
0
7
ns
td(A)IAQ
td(CLKL-IACKL)
Delay time, address valid to IAQ low
2
ns
Delay time, CLKOUT low to IACK low
0
9
ns
td(CLKL-IACKH)
td(A)IACK
Delay time , CLKOUT low to IACK high
1
6
ns
2
ns
th(A)IAQ
th(A)IACK
Hold time, IAQ high after address invalid
–3
ns
Hold time, IACK high after address invalid
–2
ns
tw(IAQL)
tw(IACKL)
Pulse duration, IAQ low
2H–2
ns
Pulse duration, IACK low
2H–1
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
48
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
4.12 External Flag (XF) and TOUT Timings
Table 4–18 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–18 and
Figure 4–19).
Table 4–18. External Flag (XF) and TOUT Switching Characteristics
PARAMETER
td(XF)
MIN
MAX
Delay time, CLKOUT low to XF high
–1
8
Delay time, CLKOUT low to XF low
–1
8
UNIT
ns
td(TOUTH)
td(TOUTL)
Delay time, CLKOUT low to TOUT high
0
11
ns
Delay time, CLKOUT low to TOUT low
0
9
ns
tw(TOUT)
Pulse duration, TOUT
2H–1
ns
CLKOUT
td(XF)
XF
Figure 4–18. XF Timing
CLKOUT
td(TOUTH)
td(TOUTL)
TOUT
tw(TOUT)
Figure 4–19. TOUT Timing
April 1999 – Revised September 2001
SPRS096B
49
Electrical Specifications
4.13 Multichannel Buffered Serial Port (McBSP) Timing
4.13.1
McBSP Transmit and Receive Timings
Table 4–19 and Table 4–20 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–20 and Figure 4–21).
Table 4–19. 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–1
ns
tsu(BFRH-BCKRL)
Setup time,
time external BFSR high before BCLKR low
th(BCKRL-BFRH)
time external BFSR high after BCLKR low
Hold time,
tsu(BDRV-BCKRL)
Setup time,
time BDR valid before BCLKR low
th(BCKRL-BDRV)
Hold time,
time BDR valid after BCLKR low
tsu(BFXH-BCKXL)
Setup time,
time external BFSX high before BCLKX low
th(BCKXL-BFXH)
Hold time,
time external BFSX high after BCLKX low
BCLKR int
20
BCLKR ext
0
BCLKR int
–3
BCLKR ext
4
BCLKR int
17
BCLKR ext
0
BCLKR int
0
BCLKR ext
8
BCLKX int
20
BCLKX ext
0
BCLKX int
–4
BCLKX ext
5
ns
ns
ns
ns
ns
ns
tr(BCKRX)
Rise time, BCLKR/X
BCLKR/X ext
8
ns
tf(BCKRX)
Fall time, BCLKR/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.
50
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
Table 4–20. McBSP Transmit and Receive Switching Characteristics†
PARAMETER
tc(BCKRX)
tw(BCKRXH)
tw(BCKRXL)
td(BCKRH-BFRV)
MIN
UNIT
Cycle time, BCLKR/X
BCLKR/X int
4H
Pulse duration, BCLKR/X high
BCLKR/X int
D – 3‡
D + 2‡
ns
BCLKR/X int
C – 3‡
C + 2‡
ns
BCLKR int
–3
6
ns
BCLKR ext
7
13
ns
BCLKX int
0
6
BCLKX ext
5
19
BCLKX int
1
6
BCLKX ext
13
BCLKX int
7
0¶
BCLKX ext
5
19
Pulse duration, BCLKR/X low
Delay time,
time BCLKR high to internal BFSR valid
td(BCKXH-BFXV)
Delay time,
time BCLKX high to internal BFSX valid
tdis(BCKXH-BDXHZ)
Disable time, BCLKX high to BDX high im
impedance
edance following last data
bit of transfer
td(BCKXH-BDXV)
Delay time,
time BCLKX high to BDX valid
td(BFXH-BDXV)
MAX
DXENA = 0§
ns
ns
ns
6
Delay time, BFSX high to BDX valid
BFSX int
1¶
2
ONLY applies when in data delay 0 (XDATDLY = 00b) mode
BFSX ext
7
18
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 TMS320UC5402.
¶ Minimum delay times also represent minimum output hold times.
April 1999 – Revised September 2001
SPRS096B
51
Electrical Specifications
tc(BCKRX)
tw(BCKRXH)
tr(BCKRX)
tw(BCKRXL)
BCLKR
td(BCKRH–BFRV)
tr(BCKRX)
td(BCKRH–BFRV)
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(BFXH–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
52
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
4.13.2
McBSP General-Purpose I/O Timing
Table 4–21 and Table 4–22 assume testing over recommended operating conditions (see Figure 4–22).
Table 4–21. 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
9
ns
0
ns
† BGPIOx refers to BCLKRx, BFSRx, BDRx, BCLKXx, or BFSXx when configured as a general-purpose input.
Table 4–22. 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
0
5
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
April 1999 – Revised September 2001
SPRS096B
53
Electrical Specifications
4.13.3
McBSP as SPI Master or Slave Timing
Table 4–23 to Table 4–30 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–23, Figure 4–24, Figure 4–25, and Figure 4–26).
Table 4–23. 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
16
– 12H
ns
4
12H + 5
ns
10
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–24. 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–4
T+5
C–6
C+4
–3
7
C–2
C+3
MIN
MAX
UNIT
ns
ns
6H + 6
10H + 20
ns
ns
2H+ 8
6H + 21
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
4H –3
8H + 21
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).
tsu(BFXL-BCKXH)
LSB
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-BCKXL)
BDR
Bit 0
(n-2)
(n-3)
(n-4)
th(BCKXL-BDRV)
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4–23. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0
54
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
Table 4–25. 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
16
– 12H
ns
4
12H + 5
ns
10
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–26. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, 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(BCKXL-BDXV)
Delay time, BCLKX low to BDX valid
tdis(BCKXL-BDXHZ)
Disable time, BDX high impedance following last data bit from
BCLKX low
MIN
MAX
UNIT
MIN
MAX
C –4
C+5
T–6
T+4
–3
7
6H + 6
10H + 20
ns
0
6
6H +7
10H + 21
ns
ns
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
D–2 D+4
4H –3
8H + 21
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).
tsu(BFXL-BCKXH)
LSB
tc(BCKX)
MSB
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–24. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0
April 1999 – Revised September 2001
SPRS096B
55
Electrical Specifications
Table 4–27. 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
16
– 12H
ns
4
12H + 5
ns
10
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–28. 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–4
T+5
D–6
D+4
–3
7
D–2
D+3
MIN
MAX
UNIT
ns
ns
6H + 6
10H + 20
ns
ns
2H + 7
6H + 21
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
4H – 3
8H + 21
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–25. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1
56
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
Table 4–29. 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
16
– 12H
ns
4
12H + 5
ns
10
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–30. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 1)†
MASTER‡
SLAVE
PARAMETER
th(BCKXH-BFXL)
td(BFXL-BCKXL)
Hold time, BFSX low after BCLKX high§
Delay time, BFSX low to BCLKX low¶
td(BCKXH-BDXV)
Delay time, BCLKX high to BDX valid
tdis(BCKXH-BDXHZ)
Disable time, BDX high impedance following last data bit from
BCLKX high
MIN
UNIT
MIN
MAX
MAX
D–4
D+5
T–6
T+4
–3
7
6H + 6
10H + 20
ns
0
6
6H +7
10H + 21
ns
ns
ns
td(BFXL-BDXV)
Delay time, BFSX low to BDX valid
C–2 C+4
4H – 3
8H + 21
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–26. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1
April 1999 – Revised September 2001
SPRS096B
57
Electrical Specifications
4.14 Host-Port Interface Timing (HPI8)
Table 4–31 and Table 4–32 assume testing over recommended operating conditions and H = 0.5tc(CO) (see
Figure 4–27 through Figure 4–30). In the following tables, DS refers to the logical OR of HCS, HDS1, and
HDS2. HD refers to any of the HPI data bus pins (HD0, HD1, HD2, etc.). HAD stands for HCNTL0, HCNTL1,
and HR/W. GPIO refers to the HD pins when they are configured as general-purpose input/outputs.
NOTE: During all cycles, DS should not be driven high to complete the cycle until HRDY is
high. In the case of a read cycle, HDx should also be valid before rising DS.
Table 4–31. HPI8 Mode Timing Requirements
MIN
MAX
UNIT
tsu(HBV-DSL)
th(DSL-HBV)
Setup time, HBIL valid before DS low
5
ns
Hold time, HBIL valid after DS low
6
ns
tsu(HSL-DSL)
tw(DSL)
Setup time, HAS low before DS low
5
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
12
ns
th(DSH-HDV)W
tsu(GPIO-COH)
Hold time, HDx valid after DS high, HPI write
8
ns
Setup time, HDx input valid before CLKOUT high, HDx configured as general-purpose input
9
ns
th(GPIO-COH)
Hold time, HDx input valid after CLKOUT high, HDx configured as general-purpose input
–3
ns
58
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
Table 4–32. HPI8 Mode Switching Characteristics
PARAMETER
ten(DSL-HD)
td(DSL-HDV1)
d(DSL HDV1)
Enable time, HD driven from DS low
Delay time, DS low to HDx valid for
first byte of an HPI read
MIN
MAX
UNIT
5
21
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 + 21 – tw(DSH)
21
26H + 21 – tw(DSH)
ns
Case 1d: Memory access when
DMAC is active in 32-bit mode and
tw(DSH) ≥ 26H†
21
Case 2a: Memory accesses when
DMAC is inactive and tw(DSH) < 10H†
10H + 21 – tw(DSH)
Case 2b: Memory accesses when
DMAC is inactive and tw(DSH) ≥ 10H†
21
Case 3: Register accesses
21
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
12
Delay time, DS high to HRDY low (see Note 1)
21
ns
Case 1a: Memory accesses when
DMAC is active in 16-bit mode†
18H + 21
ns
Case 1b: Memory accesses when
DMAC is active in 32-bit mode†
26H + 21
ns
Case 2: Memory accesses when
DMAC is inactive†
10H + 21
Case 3: Write accesses to HPIC
register (see Note 2)
6H + 21
td(DSH-HYH)
Hold time, HDx valid after DS high, for a HPI read
Delay time,
time DS high to HRDY high
5
21
ns
9
ns
ns
td(HCS-HRDY)
td(COH-HYH)
Delay time, HCS low/high to HRDY low/high
19
ns
Delay time, CLKOUT high to HRDY high
5
ns
td(COH-HTX)
Delay time, CLKOUT high to HINT change
5
ns
td(COH-GPIO)
Delay time, CLKOUT high to HDx output change. HDx is configured as a
general-purpose output.
9
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 asynchronously, 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.
April 1999 – Revised September 2001
SPRS096B
59
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–27. Using HDS to Control Accesses (HCS Always Low)
60
SPRS096B
April 1999 – Revised September 2001
Electrical Specifications
Second Byte
First Byte
Second Byte
HCS
HDS
td(HCS-HRDY)
HRDY
Figure 4–28. Using HCS to Control Accesses
CLKOUT
td(COH-HTX)
HINT
Figure 4–29. 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–30. GPIOx† Timings
April 1999 – Revised September 2001
SPRS096B
61
Mechanical Data
5
Mechanical Data
5.1
Ball Grid Array Mechanical Data
GGU (S-PBGA-N144)
PLASTIC BALL GRID ARRAY
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. TMS320UC5402 144-Ball MicroStar BGA Plastic Ball Grid Array
MicroStar BGA is a trademark of Texas Instruments.
62
SPRS096B
April 1999 – Revised September 2001
Mechanical Data
5.2
Low-Profile Quad Flatpack Mechanical Data
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. TMS320UC5402 144-Pin Low-Profile Quad Flatpack
April 1999 – Revised September 2001
SPRS096B
63