TI TMS320DM641

TMS320DM641/TMS320DM640
Video/Imaging Fixed-Point Digital
Signal Processors
Data Manual
Literature Number: SPRS222C
June 2003 − Revised August 2004
! ! 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.
Following are URLs where you can obtain information on other Texas Instruments products and application
solutions:
Products
Applications
Amplifiers
amplifier.ti.com
Audio
www.ti.com/audio
Data Converters
dataconverter.ti.com
Automotive
www.ti.com/automotive
DSP
dsp.ti.com
Broadband
www.ti.com/broadband
Interface
interface.ti.com
Digital Control
www.ti.com/digitalcontrol
Logic
logic.ti.com
Military
www.ti.com/military
Power Mgmt
power.ti.com
Optical Networking
www.ti.com/opticalnetwork
Microcontrollers
microcontroller.ti.com
Security
www.ti.com/security
Telephony
www.ti.com/telephony
Video & Imaging
www.ti.com/video
Wireless
www.ti.com/wireless
Mailing Address:
Texas Instruments
Post Office Box 655303 Dallas, Texas 75265
Copyright  2004, Texas Instruments Incorporated
Revision History
Revision History
This data sheet revision history highlights the technical changes made to the SPRS222B device-specific data
sheet to make it an SPRS222C revision.
Scope: Applicable updates to the C64x device family, specifically relating to the TMS320DM641/TMS320DM640
devices, have been incorporated.
Added the device-specific information supporting the TMS320DM641/TMS320DM640 silicon revision 1.2 and 1.1
devices, which are now in the production data (PD) stage of development.
Video Port “RAW Video Capture” mode is now supported
PAGE(s)
NO.
ADDS/CHANGES/DELETES
Global:
Incorporated totally new format/outline structure. Updated/corrected device-specific data/information.
June 2003 − Revised August 2004
SPRS222C
3
Revision History
This page intentionally left blank
4
SPRS222C
June 2003 − Revised August 2004
Contents
Contents
Section
Page
1
Device Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.1
Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3
Device Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4
Device Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5
Functional Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.6
CPU (DSP Core) Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.6.1
CPU Core Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7
Memory Map Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7.1
L2 Architecture Expanded . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.8
Bootmode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9
Pin Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9.1
Pin Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9.2
Signal Groups Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.9.3
Terminal Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.10
Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.10.1
Development Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.10.2
Device Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.10.2.1
Device and Development-Support Tool Nomenclature . . . . . . . . .
1.10.2.2
Documentation Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.10.2.3
Device Silicon Revision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
15
16
18
20
20
22
25
28
30
31
32
32
36
42
64
64
65
65
66
67
2
Device Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1
Configurations at Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1
Peripheral Selection at Device Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.2
Device Configuration at Device Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2
Configurations After Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1
Peripheral Selection After Device Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3
Peripheral Configuration Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4
Device Status Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5
Multiplexed Pin Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.6
Debugging Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.7
Configuration Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
68
68
69
69
69
72
74
76
77
77
3
Device Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1
Absolute Maximum Ratings Over Operating Case Temperature Range . . . . . . . . . . . . . . . . . .
3.2
Recommended Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3
Electrical Characteristics Over Recommended Ranges of Supply Voltage and
Operating Case Temperature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
82
82
82
DM641/DM640 Peripheral Information and Electrical Specifications . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1
Parameter Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1
Parameter Information Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . .
4.1.1.1
Signal Transition Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1.2
Signal Transition Rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
84
84
84
84
84
4
June 2003 − Revised August 2004
SPRS222C
83
5
Contents
Section
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
6
SPRS222C
Page
4.1.1.3
Timing Parameters and Board Routing Analysis . . . . . . . . . . . . . . 85
Recommended Clock and Control Signal Transition Behavior . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Power Supplies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.1
Power-Supply Sequencing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.2
Power-Supply Design Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.3
Power-Supply Decoupling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.3.4
Peripheral Power-Down Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.3.5
Power-Down Modes Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.3.6
Triggering, Wake-up, and Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.3.7
C64x Power-Down Mode with an Emulator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Enhanced Direct Memory Access (EDMA) Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.4.1
EDMA Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.4.1.1
EDMA Channel Synchronization Events . . . . . . . . . . . . . . . . . . . . . 90
4.4.2
EDMA Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.5.1
Interrupt Sources and Interrupt Selector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.5.2
Interrupts Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
4.5.3
External Interrupts Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.6.1
Reset Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Clock PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.7.1
Clock PLL Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.7.2
Clock PLL Electrical Data/Timing (Input and Output Clocks) . . . . . . . . . . . . . . . 101
External Memory Interface (EMIIF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.8.1
EMIF Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.8.2
EMIF Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
4.8.3
EMIF Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.8.3.1
Asynchronous Memory Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.8.3.2
Programmable Synchronous Interface Timing . . . . . . . . . . . . . . . 109
4.8.3.3
Synchronous DRAM Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.8.3.4
HOLD/HOLDA Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
4.8.3.5
BUSREQ Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Multichannel Audio Serial Port (McASP0) Peripheral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.9.1
McASP0 Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.9.1.1
McASP Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.9.2
McASP0 Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.9.3
McASP0 Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.9.3.1
Multichannel Audio Serial Port (McASP) Timing . . . . . . . . . . . . . 125
Inter-Integrated Circuit (I2C) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
4.10.1
I2C Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
4.10.2
I2C Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
4.10.3
I2C Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
4.10.3.1
Inter-Integrated Circuits (I2C) Timing . . . . . . . . . . . . . . . . . . . . . . . 130
Host-Port Interface (HPI) [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
4.11.1
HPI Peripheral Register Description(s) [DM641 Only] . . . . . . . . . . . . . . . . . . . . 132
4.11.2
Host-Port Interface (HPI) Electrical Data/Timing [DM641 Only] . . . . . . . . . . . . 132
June 2003 − Revised August 2004
Contents
Section
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
5
Page
Multichannel Buffered Serial Port (McBSP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4.12.1
McBSP Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
4.12.2
McBSP Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
4.12.2.1
Multichannel Buffered Serial Port (McBSP) Timing . . . . . . . . . . . 138
Video Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
4.13.1
Video Port Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
4.13.2
Video Port Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
4.13.3
Video Port (VP0 [DM641/DM640], VP1 [DM641 Only]) Electrical
Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
4.13.3.1
VCLKIN Timing (Video Capture Mode) . . . . . . . . . . . . . . . . . . . . . 148
4.13.3.2
Video Data and Control Timing (Video Capture Mode) . . . . . . . . 149
4.13.3.3
VCLKIN Timing (Video Display Mode) . . . . . . . . . . . . . . . . . . . . . . 150
4.13.3.4
Video Control Input/Output and Video Display Data Output
Timing With Respect to VPxCLKINx and VPxCLKOUTx
(Video Display Mode) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
4.13.3.5
Video Dual-Display Sync Mode Timing (With Respect to
VPxCLKINx) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
VCXO Interpolated Control (VIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
4.14.1
VIC Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
4.14.2
VIC Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
4.14.3
VIC Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
4.14.3.1
STCLK Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Ethernet Media Access Controller (EMAC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4.15.1
EMAC Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4.15.2
EMAC Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
4.15.3
EMAC Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Management Data Input/Output (MDIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
4.16.1
Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
4.16.2
Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
4.16.3
Management Data Input/Output (MDIO) Electrical Data/Timing . . . . . . . . . . . . 162
Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4.17.1
Timer Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4.17.2
Timer Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
4.17.3
Timer Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
General-Purpose Input/Output (GPIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
4.18.1
GPIO Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
4.18.2
GPIO Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
4.18.3
General-Purpose Input/Output (GPIO) Electrical Data/Timing . . . . . . . . . . . . . 166
JTAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
4.19.1
JTAG Device-Specific Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
4.19.1.1
IEEE 1149.1 JTAG Compatibility Statement . . . . . . . . . . . . . . . . . 167
4.19.1.2
JTAG ID Register Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
4.19.2
JTAG Peripheral Register Description(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
4.19.3
JTAG Test-Port Electrical Data/Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
5.1
Thermal Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
June 2003 − Revised August 2004
SPRS222C
7
Figures
List of Figures
Figure
Page
1−1
1−2
1−3
1−4
1−5
1−6
1−7
Functional Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320C64x CPU (DSP Core) Data Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320DM641/DM640 L2 Architecture Memory Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DM641/DM640 Pin Map [Quadrant A] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CPU and Peripheral Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peripheral Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320DM64x DSP Device Nomenclature (Including the DM641 and DM640 Devices) . . . . . . . . . .
21
24
30
32
36
37
66
2−1
2−2
2−3
2−4
2−5
2−6
2−7
2−8
2−9
Peripheral Configuration Register (PERCFG) [Address Location: 0x01B3F000 − 0x01B3F003] . . . .
VP1, VP0, McBSP1, and McBSP0 Pin Muxing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peripheral Enable/Disable Flow Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PCFGLOCK Register Diagram [Address Location: 0x01B3 F018] − Read/Write Accesses . . . . . . . .
Device Status Register (DEVSTAT) Description − 0x01B3 F004 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuration Example A for DM641 (2 8-Bit Video Ports + 1 McASP0 + VIC + I2C0 + EMIF) . . . . .
Configuration Example B for DM641 (1 McASP0 + 2 McBSPs + VIC + I2C0 + EMIF) . . . . . . . . . . . . .
Configuration Example A for DM640 (1 8-Bit Video Port + 1 McASP0 + VIC + I2C0 + EMIF) . . . . . .
Configuration Example B for DM640 (1 McASP0 + 2 McBSPs + VIC + I2C0 + EMIF) . . . . . . . . . . . . .
70
71
72
73
74
78
79
80
81
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
Test Load Circuit for AC Timing Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Input and Output Voltage Reference Levels for AC Timing Measurements . . . . . . . . . . . . . . . . . . . . . . 84
Rise and Fall Transition Time Voltage Reference Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
Board-Level Input/Output Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Schottky Diode Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
Power-Down Mode Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
PWRD Field of the CSR Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
External/NMI Interrupt Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Reset Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
External PLL Circuitry for Either PLL Multiply Modes or x1 (Bypass) Mode . . . . . . . . . . . . . . . . . . . . . 100
CLKIN Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
CLKOUT4 Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
CLKOUT6 Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
AECLKIN Timing for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
AECLKOUT1 Timing for the EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
AECLKOUT2 Timing for the EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Asynchronous Memory Read Timing for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Asynchronous Memory Write Timing for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Programmable Synchronous Interface Read Timing for EMIFA (With Read Latency = 2) . . . . . . . . . 110
Programmable Synchronous Interface Write Timing for EMIFA (With Write Latency = 0) . . . . . . . . . 111
Programmable Synchronous Interface Write Timing for EMIFA (With Write Latency = 1) . . . . . . . . . 112
8
SPRS222C
June 2003 − Revised August 2004
Figures
Figure
4−22
4−23
4−24
4−25
4−26
4−27
4−28
4−29
4−30
4−31
4−32
4−33
4−34
4−35
4−36
4−37
4−38
4−39
4−40
4−41
4−42
4−43
4−44
4−45
4−46
4−47
4−48
4−49
4−50
4−51
4−52
4−53
4−54
4−55
4−56
4−57
4−58
4−59
4−60
4−61
4−62
Page
SDRAM Read Command (CAS Latency 3) for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
SDRAM Write Command for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
SDRAM ACTV Command for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
SDRAM DCAB Command for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
SDRAM DEAC Command for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
SDRAM REFR Command for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
SDRAM MRS Command for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
SDRAM Self-Refresh Timing for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
HOLD/HOLDA Timing for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
BUSREQ Timing for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
McASP0 Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
McASP Input Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
McASP Output Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
I2C0 Module Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
I2C Receive Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
I2C Transmit Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
HPI16 Read Timing (HAS Not Used, Tied High) [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
HPI16 Read Timing (HAS Used) [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
HPI16 Write Timing (HAS Not Used, Tied High) [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
HPI16 Write Timing (HAS Used) [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
McBSP Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
FSR Timing When GSYNC = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . 141
McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . 142
McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 143
McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Video Port Capture VPxCLKINx TIming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Video Port Capture Data and Control Input Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
Video Port Display VPxCLKINx Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Video Port Display Data Output Timing and Control Input/Output Timing With Respect to
VPxCLKINx and VPxCLKOUTx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Video Port Dual-Display Sync Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
STCLK Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
MRCLK Timing (EMAC − Receive) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
MTCLK Timing (EMAC − Transmit) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
EMAC Receive Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
EMAC Transmit Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
MDIO Input Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
MDIO Output Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Timer Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
GPIO Enable Register (GPEN) [Hex Address: 01B0 0000] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
GPIO Direction Register (GPDIR) [Hex Address: 01B0 0004] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
June 2003 − Revised August 2004
SPRS222C
9
Figures
Figure
4−63
4−64
4−65
10
Page
GPIO Port Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
JTAG ID Register Description − TMS320DM641/DM640 Register Value − 0x0007 902F . . . . . . . . . 167
JTAG Test-Port Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
SPRS222C
June 2003 − Revised August 2004
Tables
List of Tables
Table
Page
1−1
1−2
1−3
1−4
1−5
1−6
Characteristics of the DM641 Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Characteristics of the DM640 Processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peripherals Available on the DM641 and DM640 Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
L2 Cache Registers (C64x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320DM641/DM640 Memory Map Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Terminal Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
19
20
25
28
43
2−1
2−2
MAC_EN Peripheral Selection (EMAC and MDIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DM641/DM640 Device Configuration Pins (TOUT1/LENDIAN, AEA[22:19], and
TOUT0/MAC_EN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peripheral Configuration (PERCFG) Register Selection Bit Descriptions . . . . . . . . . . . . . . . . . . . . . . . .
PCFGLOCK Register Selection Bit Descriptions − Read Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PCFGLOCK Register Selection Bit Descriptions − Write Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Device Status (DEVSTAT) Register Selection Bit Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DM641/DM640 Device Multiplexed Pin Configurations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
2−3
2−4
2−5
2−6
2−7
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
69
70
73
73
74
76
Board-Level Timing Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
Characteristics of the Power-Down Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
TMS320DM641/DM640 EDMA Channel Synchronization Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
EDMA Registers (C64x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Quick DMA (QDMA) and Pseudo Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
EDMA Parameter RAM (C64x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
DM641/DM640 DSP Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Interrupt Selector Registers (C64x) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Timing Requirements for External Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Timing Requirements for Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Switching Characteristics Over Recommended Operating Conditions During Reset . . . . . . . . . . . . . . 97
TMS320DM641/DM640 PLL Multiply Factor Options, Clock Frequency Ranges, and Typical
Lock Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Timing Requirements for CLKIN for −400 Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Timing Requirements for CLKIN for −500 Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Timing Requirements for CLKIN for −600 Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Switching Characteristics Over Recommended Operating Conditions for CLKOUT4 . . . . . . . . . . . . . 102
Switching Characteristics Over Recommended Operating Conditions for CLKOUT6 . . . . . . . . . . . . . 103
Timing Requirements for AECLKIN for EMIFA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
Switching Characteristics Over Recommended Operating Conditions for AECLKOUT1 for the
EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Switching Characteristics Over Recommended Operating Conditions for AECLKOUT2 for the
EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
EMIFA Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Timing Requirements for Asynchronous Memory Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . 106
Switching Characteristics Over Recommended Operating Conditions for Asynchronous Memory
Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
Timing Requirements for Programmable Synchronous Interface Cycles for EMIFA Module . . . . . . . 109
Switching Characteristics Over Recommended Operating Conditions for Programmable
Synchronous Interface Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
June 2003 − Revised August 2004
SPRS222C
11
Tables
Table
4−26
4−27
4−28
4−29
4−30
4−31
4−32
4−33
4−34
4−35
4−36
4−37
4−38
4−39
4−40
4−41
4−42
4−43
4−44
4−45
4−46
4−47
4−48
4−49
4−50
4−51
4−52
4−53
4−54
4−55
4−56
4−57
4−58
4−59
4−60
4−61
4−62
4−63
4−64
4−65
12
Page
Timing Requirements for Synchronous DRAM Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . 113
Switching Characteristics Over Recommended Operating Conditions for Synchronous DRAM
Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
Timing Requirements for the HOLD/HOLDA Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . 119
Switching Characteristics Over Recommended Operating Conditions for the HOLD/HOLDA
Cycles for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Switching Characteristics Over Recommended Operating Conditions for the BUSREQ Cycles
for EMIFA Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
McASP0 Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
McASP0 Data Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Timing Requirements for McASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Switching Characteristics Over Recommended Operating Conditions for McASP . . . . . . . . . . . . . . . 125
I2C0 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Timing Requirements for I2C Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Switching Characteristics for I2C Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
HPI Registers [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Timing Requirements for Host-Port Interface Cycles [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Switching Characteristics Over Recommended Operating Conditions During Host-Port Interface
Cycles [DM641 Only] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
McBSP 0 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
McBSP 1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
Timing Requirements for McBSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Switching Characteristics Over Recommended Operating Conditions for McBSP . . . . . . . . . . . . . . . 139
Timing Requirements for FSR When GSYNC = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Timing Requirements for McBSP as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0 . . . . . . . . . . 141
Switching Characteristics Over Recommended Operating Conditions for McBSP as SPI
Master or Slave: CLKSTP = 10b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
Timing Requirements for McBSP as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0 . . . . . . . . . . 142
Switching Characteristics Over Recommended Operating Conditions for McBSP as SPI
Master or Slave: CLKSTP = 11b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Timing Requirements for McBSP as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1 . . . . . . . . . . 143
Switching Characteristics Over Recommended Operating Conditions for McBSP as SPI
Master or Slave: CLKSTP = 10b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
Timing Requirements for McBSP as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1 . . . . . . . . . . 144
Switching Characteristics Over Recommended Operating Conditions for McBSP as SPI
Master or Slave: CLKSTP = 11b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
Video Port 0 and 1 (VP0 and VP1) Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Timing Requirements for Video Capture Mode for VPxCLKINx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Timing Requirements in Video Capture Mode for Video Data and Control Inputs . . . . . . . . . . . . . . . . 149
Timing Requirements for Video Display Mode for VPxCLKINx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Timing Requirements in Video Display Mode for Video Control Input Shown With Respect to
VPxCLKINx and VPxCLKOUTx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
Switching Characteristics Over Recommended Operating Conditions in Video Display Mode
for Video Data and Control Output Shown With Respect to VPxCLKINx and VPxCLKOUTx . . . . . . 151
Timing Requirements for Dual-Display Sync Mode for VPxCLKINx . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
VCXO Interpolated Control (VIC) Port Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
Timing Requirments for STCLK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
Ethernet MAC (EMAC) Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
EMAC Statistics Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
EMAC Wrapper . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
SPRS222C
June 2003 − Revised August 2004
Tables
Table
4−66
4−67
4−68
4−69
4−70
Page
4−71
4−72
4−73
4−74
4−75
4−76
4−77
4−78
4−79
4−80
4−81
4−82
4−83
4−84
4−85
EWRAP Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Timing Requirements for MRCLK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Timing Requirements for MTCLK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Timing Requirements for EMAC MII Receive 10/100 Mbit/s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Switching Characteristics Over Recommended Operating Conditions for EMAC MII Transmit
10/100 Mbit/s . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
MDIO Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Timing Requirements for MDIO Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Switching Characteristics Over Recommended Operating Conditions for MDIO Output . . . . . . . . . . 162
Timer 0 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Timer 1 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Timer 2 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Timing Requirements for Timer Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Switching Characteristics Over Recommended Operating Conditions for Timer Outputs . . . . . . . . . 164
GP0 Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Timing Requirements for GPIO Inputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
Switching Characteristics Over Recommended Operating Conditions for GPIO Outputs . . . . . . . . . 166
JTAG ID Register Selection Bit Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
JTAG ID Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Timing Requirements for JTAG Test Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
Switching Characteristics Over Recommended Operating Conditions for JTAG Test Port . . . . . . . . 168
5−1
5−2
Thermal Resistance Characteristics (S-PBGA Package) [GDK] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
Thermal Resistance Characteristics (S-PBGA Package) [GNZ] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
June 2003 − Revised August 2004
SPRS222C
13
Tables
This page intentionally left blank
14
SPRS222C
June 2003 − Revised August 2004
Device Overview
1
Device Overview
1.1
Features
D High-Performance Digital Media Processor
D
D
D
D
D
(TMS320DM641/TMS320DM640)
− 2.5-, 2-, 1.67-ns Instruction Cycle Time
− 400-, 500-, 600-MHz Clock Rate
− Eight 32-Bit Instructions/Cycle
− 3200, 4000, 4800 MIPS
− Fully Software-Compatible With C64x
VelociTI.2 Extensions to VelociTI
Advanced Very-Long-Instruction-Word
(VLIW) TMS320C64x DSP Core
− Eight Highly Independent Functional
Units With VelociTI.2 Extensions:
− Six ALUs (32-/40-Bit), Each Supports
Single 32-Bit, Dual 16-Bit, or Quad
8-Bit Arithmetic per Clock Cycle
− Two Multipliers Support
Four 16 x 16-Bit Multiplies
(32-Bit Results) per Clock Cycle or
Eight 8 x 8-Bit Multiplies
(16-Bit Results) per Clock Cycle
− Load-Store Architecture With
Non-Aligned Support
− 64 32-Bit General-Purpose Registers
− Instruction Packing Reduces Code Size
− All Instructions Conditional
Instruction Set Features
− Byte-Addressable (8-/16-/32-/64-Bit Data)
− 8-Bit Overflow Protection
− Bit-Field Extract, Set, Clear
− Normalization, Saturation, Bit-Counting
− VelociTI.2 Increased Orthogonality
L1/L2 Memory Architecture
− 128K-Bit (16K-Byte) L1P Program Cache
(Direct Mapped)
− 128K-Bit (16K-Byte) L1D Data Cache
(2-Way Set-Associative)
− 1M-Bit (128K-Byte) L2 Unified Mapped
RAM/Cache
(Flexible RAM/Cache Allocation)
Endianess: Little Endian, Big Endian
32-Bit External Memory Interface (EMIF)
− Glueless Interface to Asynchronous
Memories (SRAM and EPROM) and
Synchronous Memories (SDRAM,
SBSRAM, ZBT SRAM, and FIFO)
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
D
− 1024M-Byte Total Addressable External
Memory Space
Enhanced Direct-Memory-Access (EDMA)
Controller (64 Independent Channels)
10/100 Mb/s Ethernet MAC (EMAC)
− IEEE 802.3 Compliant
− Media Independent Interface (MII)
− 8 Independent Transmit (TX) Channels
and 1 Receive (RX) Channel
Management Data Input/Output (MDIO)
Two Configurable Video Ports (DM641)
One Configurable Video Port (DM640)
− Providing a Glueless I/F to Common
Video Decoder and Encoder Devices
− Supports Multiple Resolutions and Video
Standards
VCXO Interpolated Control Port (VIC)
− Supports Audio/Video Synchronization
Host-Port Interface (HPI) [16-Bit] (DM641)
Multichannel Audio Serial Port (McASP)
− Four Serial Data Pins
− Wide Variety of I2S and Similar Bit
Stream Format
− Integrated Digital Audio I/F Transmitter
Supports S/PDIF, IEC60958-1, AES-3,
CP-430 Formats
Inter-Integrated Circuit (I2C) Bus
Two Multichannel Buffered Serial Ports
Three 32-Bit General-Purpose Timers
Eight General-Purpose I/O (GPIO) Pins
Flexible PLL Clock Generator
IEEE-1149.1 (JTAG†)
Boundary-Scan-Compatible
548-Pin Ball Grid Array (BGA) Package
(GDK Suffix), 0.8-mm Ball Pitch
548-Pin Ball Grid Array (BGA) Package
(GNZ Suffix), 1.0-mm Ball Pitch
0.13-µm/6-Level Cu Metal Process (CMOS)
3.3-V I/O, 1.2-V Internal (-400, -500)
3.3-V I/O, 1.4-V Internal (-600)
C64x, VelociTI.2, VelociTI, and TMS320C64x are trademarks of Texas Instruments.
All trademarks are the property of their respective owners.
† IEEE Standard 1149.1-1990 Standard-Test-Access Port and Boundary Scan Architecture.
June 2003 − Revised August 2004
SPRS222C
15
Description
1.2
Description
The TMS320C64x DSPs (including the TMS320DM641 and TMS320DM640 devices) are the
highest-performance fixed-point DSP generation in the TMS320C6000 DSP platform. The TMS320DM641
(DM641) and TMS320DM640 (DM640) devices are based on the second-generation high-performance,
advanced VelociTI very-long-instruction-word (VLIW) architecture (VelociTI.2) developed by Texas
Instruments (TI), making these DSPs an excellent choice for digital media applications. The C64x is a
code-compatible member of the C6000 DSP platform.
With performance of up to 4800 million instructions per second (MIPS) at a clock rate of 600 MHz, the DM641
device offers cost-effective solutions to high-performance DSP programming challenges.
With performance of up to 3200 million instructions per second (MIPS) at a clock rate of 400 MHz, the DM640
device offers cost-effective solutions to high-performance DSP programming challenges.
The DM641/DM640 DSP possesses the operational flexibility of high-speed controllers and the numerical
capability of array processors. The C64x DSP core processor has 64 general-purpose registers of 32-bit
word length and eight highly independent functional units—two multipliers for a 32-bit result and six arithmetic
logic units (ALUs)— with VelociTI.2 extensions. The VelociTI.2 extensions in the eight functional units
include new instructions to accelerate the performance in video and imaging applications and extend the
parallelism of the VelociTI architecture. The DM641 can produce four 16-bit multiply-accumulates (MACs)
per cycle for a total of 2400 million MACs per second (MMACS), or eight 8-bit MACs per cycle for a total of
4800 MMACS. The DM640 can produce four 16-bit multiply-accumulates (MACs) per cycle for a total of
1600 million MACs per second (MMACS), or eight 8-bit MACs per cycle for a total of 3200 MMACS. The
DM641/DM640 DSP also has application-specific hardware logic, on-chip memory, and additional on-chip
peripherals similar to the other C6000 DSP platform devices.
The DM641/DM640 uses a two-level cache-based architecture and has a powerful and diverse set of
peripherals. The Level 1 program cache (L1P) is a 128-Kbit direct mapped cache and the Level 1 data cache
(L1D) is a 128-Kbit 2-way set-associative cache. The Level 2 memory/cache (L2) consists of a 1-Mbit memory
space that is shared between program and data space. L2 memory can be configured as mapped memory,
cache, or combinations of the two. The peripheral set includes: two configurable video ports (DM641); one
configurable video port (DM640); a 10/100 Mb/s Ethernet MAC (EMAC); a management data input/output
(MDIO) module; a VCXO interpolated control port (VIC); one 4-bit multichannel buffered audio serial port
(McASP0); an inter-integrated circuit (I2C) Bus module; two multichannel buffered serial ports (McBSPs);
three 32-bit general-purpose timers; a 16-bit host-port interface (HPI16) [DM641]; an 8-pin general-purpose
input/output port (GP0) with programmable interrupt/event generation modes; and a 32-bit glueless external
memory interface (EMIFA), which is capable of interfacing to synchronous and asynchronous memories and
peripherals.
The DM641 device has two single-channel 8-bit configurable video port peripherals (VP0 and VP1). The
DM640 device has one single-channel 8-bit configurable video port peripheral (VP0). These video port
peripherals provide a glueless interface to common video decoder and encoder devices. The DM641/DM640
video port peripherals support multiple resolutions and video standards (e. g., CCIR601 and ITU−BT.656).
These video port peripherals are configurable and can support either video capture and/or video display
modes.
For more details on the Video Port peripherals, see the TMS320C64x DSP Video Port/VCXO Interpolated
Control (VIC) Port Reference Guide (literature number SPRU629).
The McASP0 port supports one transmit and one receive clock zone, with four serial data pins which can be
individually allocated to any of the two zones. The serial port supports time-division multiplexing on each pin
from 2 to 32 time slots. The DM641/DM640 has sufficient bandwidth to support all 4 serial data pins
transmitting a 192-kHz stereo signal. Serial data in each zone may be transmitted and received on multiple
serial data pins simultaneously and formatted in a multitude of variations on the Philips Inter-IC Sound (I2S)
format.
TMS320C6000, and C6000 are trademarks of Texas Instruments.
16
SPRS222C
June 2003 − Revised August 2004
Description
In addition, the McASP0 transmitter may be programmed to output multiple S/PDIF, IEC60958, AES-3,
CP-430 encoded data channels simultaneously, with a single RAM containing the full implementation of user
data and channel status fields.
McASP0 also provides extensive error-checking and recovery features, such as the bad clock detection circuit
for each high-frequency master clock which verifies that the master clock is within a programmed frequency
range.
The VCXO interpolated control (VIC) port provides digital-to-analog conversion with resolution from 9-bits to
up to 16-bits. The output of the VIC is a single bit interpolated D/A output. For more details on the VIC port,
see the TMS320C64x DSP Video Port/VCXO Interpolated Control (VIC) Port Reference Guide (literature
number SPRU629).
The ethernet media access controller (EMAC) provides an efficient interface between the DM641/DM640 DSP
core processor and the network. The DM641/DM640 EMAC support both 10Base-T and 100Base-TX, or 10
Mbits/second (Mbps) and 100 Mbps in either half- or full-duplex, with hardware flow control and quality of
service (QOS) support. The DM641/DM640 EMAC makes use of a custom interface to the DSP core that
allows efficient data transmission and reception. For more details on the EMAC, see the TMS320C6000 DSP
Ethernet Media Access Controller (EMAC) / Management Data Input/Output (MDIO) Module Reference
Guide (literature number SPRU628).
The management data input/output (MDIO) module continuously polls all 32 MDIO addresses in order to
enumerate all PHY devices in the system. Once a PHY candidate has been selected by the DSP, the MDIO
module transparently monitors its link state by reading the PHY status register. Link change events are stored
in the MDIO module and can optionally interrupt the DSP, allowing the DSP to poll the link status of the device
without continuously performing costly MDIO accesses. For more details on the MDIO, see the
TMS320C6000 DSP Ethernet Media Access Controller (EMAC) / Management Data Input/Output (MDIO)
Module Reference Guide (literature number SPRU628).
The I2C0 port on the TMS320DM641/DM640 allows the DSP to easily control peripheral devices and
communicate with a host processor. In addition, the standard multichannel buffered serial port (McBSP) may
be used to communicate with serial peripheral interface (SPI) mode peripheral devices.
The DM641/DM640 has a complete set of development tools which includes: a new C compiler, an assembly
optimizer to simplify programming and scheduling, and a Windows debugger interface for visibility into
source code execution.
Windows is a registered trademark of the Microsoft Corporation.
June 2003 − Revised August 2004
SPRS222C
17
Device Characteristics
1.3
Device Characteristics
Table 1−1 provides an overview of the DM641 DSP. The table shows significant features of the DM641 device,
including the capacity of on-chip RAM, the peripherals, the CPU frequency, and the package type with pin
count.
Table 1−1. Characteristics of the DM641 Processor
HARDWARE FEATURES
DM641
EMIFA (32-bit bus width)
(clock source = AECLKIN)
1
EDMA (64 independent channels)
1
McASP0 (uses Peripheral Clock [AUXCLK])
1
I2C0 (uses Peripheral Clock)
1
Peripherals
HPI (16-bit)
Not all peripherals pins are
available at the same time
(For more detail, see the
Device Configuration
section).
McBSPs
(internal clock source = CPU/4 clock frequency)
2
Configurable Video Ports (VP0 and VP1)
2
10/100 Ethernet MAC (EMAC)
1
Management Data Input/Output (MDIO)
1
VCXO Interpolated Control Port (VIC)
1
32-Bit Timers
(internal clock source = CPU/8 clock frequency)
3
General-Purpose Input/Output Port (GP0)
8
Size (Bytes)
On-Chip Memory
1 (HPI16)
160K
16K-Byte (16KB) L1 Program (L1P) Cache
Organization
16KB L1 Data (L1D) Cache
128KB Unified Mapped RAM/Cache (L2)
CPU ID + CPU Rev ID
Control Status Register (CSR.[31:16])
JTAG BSDL_ID
JTAGID register (address location: 0x01B3F008)
Frequency
MHz
Cycle Time
Voltage
ns
Core (V)
I/O (V)
PLL Options
BGA Package
0x0C01
0x0007902F
500, 600
2 ns (DM641-500)
[500-MHz CPU, 100 MHz EMIF†]
1.67 ns (DM641-600)
[600-MHz CPU, 133 MHz EMIF†]
1.2 V (-500)
1.4 V (-600)
3.3 V
CLKIN frequency multiplier
Bypass (x1), x6, x12
23 x 23 mm
548-Pin BGA (GDK)
27 x 27 mm
548-Pin BGA (GNZ)
Process Technology
µm
Product Status‡
Product Preview (PP), Advance Information (AI),
or Production Data (PD)
0.13 µm
PD
† On this DM64x device, the rated EMIF speed affects only the SDRAM interface on the EMIF. For more detailed information, see the EMIF device
speed portion of this data sheet.
‡ 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.
18
SPRS222C
June 2003 − Revised August 2004
Device Characteristics
Table 1−2 provides an overview of the DM640 DSP. The table shows significant features of the DM640 device,
including the capacity of on-chip RAM, the peripherals, the CPU frequency, and the package type with pin
count.
Table 1−2. Characteristics of the DM640 Processor
HARDWARE FEATURES
Peripherals
Not all peripherals pins are
available at the same time
(For more detail, see the
Device Configuration
section).
EMIFA (32-bit bus width)
(clock source = AECLKIN)
1
EDMA (64 independent channels)
1
McASP0 (uses Peripheral Clock [AUXCLK])
1
I2C0 (uses Peripheral Clock)
1
McBSPs
(internal clock source = CPU/4 clock frequency)
2
Configurable Video Port (VP0)
1
10/100 Ethernet MAC (EMAC)
1
Management Data Input/Output (MDIO)
1
VCXO Interpolated Control Port (VIC)
1
32-Bit Timers
(internal clock source = CPU/8 clock frequency)
3
General-Purpose Input/Output Port (GP0)
8
Size (Bytes)
On-Chip Memory
DM640
160K
16K-Byte (16KB) L1 Program (L1P) Cache
Organization
16KB L1 Data (L1D) Cache
128KB Unified Mapped RAM/Cache (L2)
CPU ID + CPU Rev ID
Control Status Register (CSR.[31:16])
JTAG BSDL_ID
JTAGID register (address location: 0x01B3F008)
Frequency
MHz
Cycle Time
ns
Core (V)
Voltage
PLL Options
BGA Package
I/O (V)
0x0C01
0x0007902F
400
2.5 ns (DM640-400)
[400-MHz CPU, 100 MHz EMIF†]
1.2 V (-400)
3.3 V
CLKIN frequency multiplier
Bypass (x1), x6, x12
23 x 23 mm
548-Pin BGA (GDK)
27 x 27 mm
548-Pin BGA (GNZ)
Process Technology
µm
Product Status‡
Product Preview (PP), Advance Information (AI),
or Production Data (PD)
0.13 µm
PD
† On this DM64x device, the rated EMIF speed affects only the SDRAM interface on the EMIF. For more detailed information, see the EMIF device
speed portion of this data sheet.
‡ 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.
June 2003 − Revised August 2004
SPRS222C
19
Device Compatibility
1.4
Device Compatibility
The DM641/DM640 device is a code-compatible member of the C6000 DSP platform.
The C64x DSP generation of devices has a diverse and powerful set of peripherals. The common peripheral
set and pin-compatibility that the DM641 and DM640 devices offer lead to easier system designs and faster
time to market.
The DM640 device is a sub-set of the DM641 device and does not support an HPI peripheral or a second Video
Port (VP1) peripheral. Table 1−3 identifies the peripherals that are available on the DM641 and DM640
devices.
Table 1−3. Peripherals Available on the DM641 and DM640 Devices†‡
DM641
DM640
EMIFA (32-bit bus width)
PERIPHERALS/COPROCESSORS
√
√
EDMA (64 independent channels)
√
√
10/100 EMAC
√
√
MDIO
√
√
HPI (16-bit)
√
—
McBSPs (McBSP0, McBSP1)
√
√
McASP (4-bit)
√
√
8-bit Video Port (VP0)
√
√
8-bit Video Port (VP1)
√
—
VIC
√
√
I2C
√
√
Timers (32-bit) [TIMER0, TIMER1, TIMER2]
√
√
GPIOs (GP[7:0])
√
√
† — denotes peripheral/coprocessor is not available on this device.
‡ Not all peripherals pins are available at the same time. (For more details, see the Device
Configuration section.)
1.5
Functional Block Diagram
Figure 1−1 shows the functional block diagram of the DM641/DM640 devices.
20
SPRS222C
June 2003 − Revised August 2004
Functional Block Diagram
SDRAM
32
SBSRAM
TMS320DM641/TMS320DM640
EMIF A
Timer 2
ZBT SRAM
Timer 1
FIFO
Timer 0
SRAM
VCXO
Interpolated
Control Port
(VIC)
ROM/FLASH
L1P Cache
Direct-Mapped
16K Bytes Total
I/O Devices
C64x DSP Core
Instruction Fetch
8-Bit
VP0
Instruction Dispatch
Advanced Instruction Packet
OR
McBSP0‡
Control
Logic
Instruction Decode
Data Path A
AND
A Register File
A31−A16
A15−A0
McASP0
Control
8-Bit
VP1†
Control
Registers
Enhanced
DMA
Controller
(EDMA)
L2
Cache
Memory
128KBytes
.L1
.S1
.M1 .D1
Data Path B
Test
B Register File
B31−B16
B15−B0
.D2 .M2 .S2
Advanced
In-Circuit
Emulation
Interrupt
Control
.L2
OR
See Note A
McBSP1‡
L1D Cache 2-Way Set-Associative
16K Bytes Total
AND
McASP0
Data
PLL
(x1, x6, x12)
HPI†
Power-Down
Logic
EMAC
MDIO
8
GP0
16
Boot Configuration
I2C0
† HPI and VP1 are not supported on the DM640 device.
‡ McBSPs: Framing Chips − H.100, MVIP, SCSA, T1, E1; AC97 Devices; SPI Devices; Codecs
NOTE A: The Video Port 0 (VP0) peripheral is muxed with the McBSP0 peripheral and the McASP0 control pins (DM641/DM640). The Video
Port 1 (VP1) peripheral is muxed with the McBSP1 peripheral and the McASP0 data pins (DM641 only). For more details on the
multiplexed pins of these peripherals, see the Device Configurations section of this data sheet.
Figure 1−1. Functional Block Diagram
June 2003 − Revised August 2004
SPRS222C
21
CPU (DSP Core) Description
1.6
CPU (DSP Core) Description
The CPU fetches VelociTI advanced very-long instruction words (VLIWs) (256 bits wide) to supply up to
eight 32-bit instructions to the eight functional units during every clock cycle. The VelociTI VLIW architecture
features controls by which all eight units do not have to be supplied with instructions if they are not ready to
execute. The first bit of every 32-bit instruction determines if the next instruction belongs to the same execute
packet as the previous instruction, or whether it should be executed in the following clock as a part of the next
execute packet. Fetch packets are always 256 bits wide; however, the execute packets can vary in size. The
variable-length execute packets are a key memory-saving feature, distinguishing the C64x CPUs from other
VLIW architectures. The C64x VelociTI.2 extensions add enhancements to the TMS320C62x DSP
VelociTI architecture. These enhancements include:
•
•
•
•
•
•
Register file enhancements
Data path extensions
Quad 8-bit and dual 16-bit extensions with data flow enhancements
Additional functional unit hardware
Increased orthogonality of the instruction set
Additional instructions that reduce code size and increase register flexibility
The CPU features two sets of functional units. Each set contains four units and a register file. One set contains
functional units .L1, .S1, .M1, and .D1; the other set contains units .D2, .M2, .S2, and .L2. The two register
files each contain 32 32-bit registers for a total of 64 general-purpose registers. In addition to supporting the
packed 16-bit and 32-/40-bit fixed-point data types found in the C62x VelociTI VLIW architecture, the
C64x register files also support packed 8-bit data and 64-bit fixed-point data types. The two sets of functional
units, along with two register files, compose sides A and B of the CPU [see the functional block and CPU (DSP
core) diagram, and Figure 1−2]. The four functional units on each side of the CPU can freely share the 32
registers belonging to that side. Additionally, each side features a “data cross path”—a single data bus
connected to all the registers on the other side, by which the two sets of functional units can access data from
the register files on the opposite side. The C64x CPU pipelines data-cross-path accesses over multiple clock
cycles. This allows the same register to be used as a data-cross-path operand by multiple functional units in
the same execute packet. All functional units in the C64x CPU can access operands via the data cross path.
Register access by functional units on the same side of the CPU as the register file can service all the units
in a single clock cycle. On the C64x CPU, a delay clock is introduced whenever an instruction attempts to read
a register via a data cross path if that register was updated in the previous clock cycle.
In addition to the C62x DSP fixed-point instructions, the C64x DSP includes a comprehensive collection
of quad 8-bit and dual 16-bit instruction set extensions. These VelociTI.2 extensions allow the C64x CPU
to operate directly on packed data to streamline data flow and increase instruction set efficiency. This is a key
factor for video and imaging applications.
Another key feature of the C64x CPU is the load/store architecture, where all instructions operate on registers
(as opposed to data in memory). Two sets of data-addressing units (.D1 and .D2) are responsible for all data
transfers between the register files and the memory. The data address driven by the .D units allows data
addresses generated from one register file to be used to load or store data to or from the other register file.
The C64x .D units can load and store bytes (8 bits), half-words (16 bits), and words (32 bits) with a single
instruction. And with the new data path extensions, the C64x .D unit can load and store doublewords (64 bits)
with a single instruction. Furthermore, the non-aligned load and store instructions allow the .D units to access
words and doublewords on any byte boundary. The C64x CPU supports a variety of indirect addressing modes
using either linear- or circular-addressing with 5- or 15-bit offsets. All instructions are conditional, and most
can access any one of the 64 registers. Some registers, however, are singled out to support specific
addressing modes or to hold the condition for conditional instructions (if the condition is not automatically
“true”).
TMS320C62x and C62x are trademarks of Texas Instruments.
22
SPRS222C
June 2003 − Revised August 2004
CPU (DSP Core) Description
The two .M functional units perform all multiplication operations. Each of the C64x .M units can perform two
16 × 16-bit multiplies or four 8 × 8-bit multiplies per clock cycle. The .M unit can also perform 16 × 32-bit multiply
operations, dual 16 × 16-bit multiplies with add/subtract operations, and quad 8 × 8-bit multiplies with add
operations. In addition to standard multiplies, the C64x .M units include bit-count, rotate, Galois field multiplies,
and bidirectional variable shift hardware.
The two .S and .L functional units perform a general set of arithmetic, logical, and branch functions with results
available every clock cycle. The arithmetic and logical functions on the C64x CPU include single 32-bit, dual
16-bit, and quad 8-bit operations.
The processing flow begins when a 256-bit-wide instruction fetch packet is fetched from a program memory.
The 32-bit instructions destined for the individual functional units are “linked” together by “1” bits in the least
significant bit (LSB) position of the instructions. The instructions that are “chained” together for simultaneous
execution (up to eight in total) compose an execute packet. A “0” in the LSB of an instruction breaks the chain,
effectively placing the instructions that follow it in the next execute packet. A C64x DSP device enhancement
now allows execute packets to cross fetch-packet boundaries. In the TMS320C62x/TMS320C67x DSP
devices, if an execute packet crosses the fetch-packet boundary (256 bits wide), the assembler places it in
the next fetch packet, while the remainder of the current fetch packet is padded with NOP instructions. In the
C64x DSP device, the execute boundary restrictions have been removed, thereby, eliminating all of the
NOPs added to pad the fetch packet, and thus, decreasing the overall code size. The number of execute
packets within a fetch packet can vary from one to eight. Execute packets are dispatched to their respective
functional units at the rate of one per clock cycle and the next 256-bit fetch packet is not fetched until all the
execute packets from the current fetch packet have been dispatched. After decoding, the instructions
simultaneously drive all active functional units for a maximum execution rate of eight instructions every clock
cycle. While most results are stored in 32-bit registers, they can be subsequently moved to memory as bytes,
half-words, or doublewords. All load and store instructions are byte-, half-word-, word-, or
doubleword-addressable.
For more details on the C64x CPU functional units enhancements, see the following documents:
•
•
TMS320C6000 CPU and Instruction Set Reference Guide (literature number SPRU189)
TMS320C64x Technical Overview (literature number SPRU395)
TMS320C67x is a trademark of Texas Instruments.
June 2003 − Revised August 2004
SPRS222C
23
CPU (DSP Core) Description
src1
.L1
src2
dst
long dst
long src
ST1b (Store Data)
ST1a (Store Data)
8
8
32 MSBs
32 LSBs
long src
long dst
dst
.S1 src1
Data Path A
8
8
Register
File A
(A0−A31)
src2
See Note A
See Note A
long dst
dst
.M1 src1
src2
LD1b (Load Data)
LD1a (Load Data)
32 MSBs
32 LSBs
DA1 (Address)
.D1
dst
src1
src2
2X
1X
src2
.D2
DA2 (Address)
LD2a (Load Data)
LD2b (Load Data)
src1
dst
32 LSBs
32 MSBs
src2
.M2 src1
dst
See Note A
See Note A
long dst
Register
File B
(B0− B31)
src2
Data Path B
.S2
src1
dst
long dst
long src
ST2a (Store Data)
ST2b (Store Data)
8
8
32 MSBs
32 LSBs
long src
long dst
dst
8
8
.L2 src2
src1
Control Register
File
NOTE A: For the .M functional units, the long dst is 32 MSBs and the dst is 32 LSBs.
Figure 1−2. TMS320C64x CPU (DSP Core) Data Paths
24
SPRS222C
June 2003 − Revised August 2004
CPU (DSP Core) Description
1.6.1
CPU Core Registers
Table 1−4. L2 Cache Registers (C64x)
HEX ADDRESS RANGE
ACRONYM
0184 0000
CCFG
REGISTER NAME
0184 0004 − 0184 0FFC
−
0184 1000
EDMAWEIGHT
0184 1004 − 0184 1FFC
−
0184 2000
L2ALLOC0
L2 allocation register 0
0184 2004
L2ALLOC1
L2 allocation register 1
Reserved
L2 EDMA access control register
Reserved
0184 2008
L2ALLOC2
L2 allocation register 2
0184 200C
L2ALLOC3
L2 allocation register 3
0184 2010 − 0184 3FFC
−
0184 4000
L2WBAR
L2 writeback base address register
0184 4004
L2WWC
L2 writeback word count register
0184 4010
L2WIBAR
L2 writeback invalidate base address register
0184 4014
L2WIWC
L2 writeback invalidate word count register
0184 4018
L2IBAR
L2 invalidate base address register
0184 401C
L2IWC
L2 invalidate word count register
0184 4020
L1PIBAR
L1P invalidate base address register
0184 4024
L1PIWC
L1P invalidate word count register
0184 4030
L1DWIBAR
L1D writeback invalidate base address register
0184 4034
L1DWIWC
L1D writeback invalidate word count register
Reserved
0184 4038 − 0184 4044
−
0184 4048
L1DIBAR
L1D invalidate base address register
0184 404C
L1DIWC
L1D invalidate word count register
0184 4050 − 0184 4FFC
−
0184 5000
L2WB
Reserved
Reserved
L2 writeback all register
0184 5004
L2WBINV
0184 5008 − 0184 7FFC
−
Reserved
0184 8000 −0184 81FC
MAR0 to
MAR127
Reserved
0184 8200
MAR128
Controls EMIFA CE0 range 8000 0000 − 80FF FFFF
0184 8204
MAR129
Controls EMIFA CE0 range 8100 0000 − 81FF FFFF
L2 writeback invalidate all register
0184 8208
MAR130
Controls EMIFA CE0 range 8200 0000 − 82FF FFFF
0184 820C
MAR131
Controls EMIFA CE0 range 8300 0000 − 83FF FFFF
0184 8210
MAR132
Controls EMIFA CE0 range 8400 0000 − 84FF FFFF
0184 8214
MAR133
Controls EMIFA CE0 range 8500 0000 − 85FF FFFF
0184 8218
MAR134
Controls EMIFA CE0 range 8600 0000 − 86FF FFFF
0184 821C
MAR135
Controls EMIFA CE0 range 8700 0000 − 87FF FFFF
0184 8220
MAR136
Controls EMIFA CE0 range 8800 0000 − 88FF FFFF
0184 8224
MAR137
Controls EMIFA CE0 range 8900 0000 − 89FF FFFF
0184 8228
MAR138
Controls EMIFA CE0 range 8A00 0000 − 8AFF FFFF
0184 822C
MAR139
Controls EMIFA CE0 range 8B00 0000 − 8BFF FFFF
0184 8230
MAR140
Controls EMIFA CE0 range 8C00 0000 − 8CFF FFFF
0184 8234
MAR141
Controls EMIFA CE0 range 8D00 0000 − 8DFF FFFF
June 2003 − Revised August 2004
COMMENTS
Cache configuration register
SPRS222C
25
CPU (DSP Core) Description
Table 1−4. L2 Cache Registers (C64x) (Continued)
26
HEX ADDRESS RANGE
ACRONYM
0184 8238
MAR142
Controls EMIFA CE0 range 8E00 0000 − 8EFF FFFF
REGISTER NAME
COMMENTS
0184 823C
MAR143
Controls EMIFA CE0 range 8F00 0000 − 8FFF FFFF
0184 8240
MAR144
Controls EMIFA CE1 range 9000 0000 − 90FF FFFF
0184 8244
MAR145
Controls EMIFA CE1 range 9100 0000 − 91FF FFFF
0184 8248
MAR146
Controls EMIFA CE1 range 9200 0000 − 92FF FFFF
0184 824C
MAR147
Controls EMIFA CE1 range 9300 0000 − 93FF FFFF
0184 8250
MAR148
Controls EMIFA CE1 range 9400 0000 − 94FF FFFF
0184 8254
MAR149
Controls EMIFA CE1 range 9500 0000 − 95FF FFFF
0184 8258
MAR150
Controls EMIFA CE1 range 9600 0000 − 96FF FFFF
0184 825C
MAR151
Controls EMIFA CE1 range 9700 0000 − 97FF FFFF
0184 8260
MAR152
Controls EMIFA CE1 range 9800 0000 − 98FF FFFF
0184 8264
MAR153
Controls EMIFA CE1 range 9900 0000 − 99FF FFFF
0184 8268
MAR154
Controls EMIFA CE1 range 9A00 0000 − 9AFF FFFF
0184 826C
MAR155
Controls EMIFA CE1 range 9B00 0000 − 9BFF FFFF
0184 8270
MAR156
Controls EMIFA CE1 range 9C00 0000 − 9CFF FFFF
0184 8274
MAR157
Controls EMIFA CE1 range 9D00 0000 − 9DFF FFFF
0184 8278
MAR158
Controls EMIFA CE1 range 9E00 0000 − 9EFF FFFF
0184 827C
MAR159
Controls EMIFA CE1 range 9F00 0000 − 9FFF FFFF
0184 8280
MAR160
Controls EMIFA CE2 range A000 0000 − A0FF FFFF
0184 8284
MAR161
Controls EMIFA CE2 range A100 0000 − A1FF FFFF
0184 8288
MAR162
Controls EMIFA CE2 range A200 0000 − A2FF FFFF
0184 828C
MAR163
Controls EMIFA CE2 range A300 0000 − A3FF FFFF
0184 8290
MAR164
Controls EMIFA CE2 range A400 0000 − A4FF FFFF
0184 8294
MAR165
Controls EMIFA CE2 range A500 0000 − A5FF FFFF
0184 8298
MAR166
Controls EMIFA CE2 range A600 0000 − A6FF FFFF
0184 829C
MAR167
Controls EMIFA CE2 range A700 0000 − A7FF FFFF
0184 82A0
MAR168
Controls EMIFA CE2 range A800 0000 − A8FF FFFF
0184 82A4
MAR169
Controls EMIFA CE2 range A900 0000 − A9FF FFFF
0184 82A8
MAR170
Controls EMIFA CE2 range AA00 0000 − AAFF FFFF
0184 82AC
MAR171
Controls EMIFA CE2 range AB00 0000 − ABFF FFFF
0184 82B0
MAR172
Controls EMIFA CE2 range AC00 0000 − ACFF FFFF
0184 82B4
MAR173
Controls EMIFA CE2 range AD00 0000 − ADFF FFFF
0184 82B8
MAR174
Controls EMIFA CE2 range AE00 0000 − AEFF FFFF
0184 82BC
MAR175
Controls EMIFA CE2 range AF00 0000 − AFFF FFFF
0184 82C0
MAR176
Controls EMIFA CE3 range B000 0000 − B0FF FFFF
0184 82C4
MAR177
Controls EMIFA CE3 range B100 0000 − B1FF FFFF
0184 82C8
MAR178
Controls EMIFA CE3 range B200 0000 − B2FF FFFF
0184 82CC
MAR179
Controls EMIFA CE3 range B300 0000 − B3FF FFFF
0184 82D0
MAR180
Controls EMIFA CE3 range B400 0000 − B4FF FFFF
0184 82D4
MAR181
Controls EMIFA CE3 range B500 0000 − B5FF FFFF
0184 82D8
MAR182
Controls EMIFA CE3 range B600 0000 − B6FF FFFF
0184 82DC
MAR183
Controls EMIFA CE3 range B700 0000 − B7FF FFFF
0184 82E0
MAR184
Controls EMIFA CE3 range B800 0000 − B8FF FFFF
SPRS222C
June 2003 − Revised August 2004
CPU (DSP Core) Description
Table 1−4. L2 Cache Registers (C64x) (Continued)
HEX ADDRESS RANGE
ACRONYM
0184 82E4
MAR185
Controls EMIFA CE3 range B900 0000 − B9FF FFFF
REGISTER NAME
0184 82E8
MAR186
Controls EMIFA CE3 range BA00 0000 − BAFF FFFF
0184 82EC
MAR187
Controls EMIFA CE3 range BB00 0000 − BBFF FFFF
0184 82F0
MAR188
Controls EMIFA CE3 range BC00 0000 − BCFF FFFF
0184 82F4
MAR189
Controls EMIFA CE3 range BD00 0000 − BDFF FFFF
0184 82F8
MAR190
Controls EMIFA CE3 range BE00 0000 − BEFF FFFF
0184 82FC
MAR191
Controls EMIFA CE3 range BF00 0000 − BFFF FFFF
0184 8300 −0184 83FC
MAR192 to
MAR255
Reserved
0184 8400 −0187 FFFF
−
Reserved
June 2003 − Revised August 2004
COMMENTS
SPRS222C
27
Memory Map Summary
1.7
Memory Map Summary
Table 1−5 shows the memory map address ranges of the DM641/DM640 device. Internal memory is always
located at address 0 and can be used as both program and data memory. The external memory address
ranges in the DM641/DM640 device begin at the hex address location 0x8000 0000 for EMIFA.
Table 1−5. TMS320DM641/DM640 Memory Map Summary
BLOCK SIZE
(BYTES)
HEX ADDRESS RANGE
Internal RAM (L2)
128K
0000 0000 – 0001 FFFF
Reserved
768K
0004 0000 – 000F FFFF
Reserved
23M
0010 0000 – 017F FFFF
External Memory Interface A (EMIFA) Registers
256K
0180 0000 – 0183 FFFF
L2 Registers
256K
0184 0000 – 0187 FFFF
HPI Registers (DM641 only)†
256K
0188 0000 – 018B FFFF
McBSP 0 Registers
256K
018C 0000 – 018F FFFF
McBSP 1 Registers
256K
0190 0000 – 0193 FFFF
Timer 0 Registers
256K
0194 0000 – 0197 FFFF
Timer 1 Registers
256K
0198 0000 – 019B FFFF
Interrupt Selector Registers
256K
019C 0000 – 019F FFFF
EDMA RAM and EDMA Registers
256K
01A0 0000 – 01A3 FFFF
Reserved
512K
01A4 0000 – 01AB FFFF
Timer 2 Registers
256K
01AC 0000 – 01AF FFFF
MEMORY BLOCK DESCRIPTION
GP0 Registers
256K − 4K
01B0 0000 – 01B3 EFFF
Device Configuration Registers
4K
01B3 F000 – 01B3 FFFF
I2C0 Data and Control Registers
16K
01B4 0000 – 01B4 3FFF
Reserved
32K
01B4 4000 – 01B4 BFFF
McASP0 Control Registers
16K
01B4 C000 – 01B4 FFFF
Reserved
192K
01B5 0000 – 01B7 FFFF
Reserved
256K
01B8 0000 – 01BB FFFF
Emulation
256K
01BC 0000 – 01BF FFFF
Reserved
256K
01C0 0000 – 01C3 FFFF
VP0 Control
16K
01C4 0000 – 01C4 3FFF
VP1 Control (DM641 only)†
16K
01C4 4000 – 01C4 7FFF
Reserved
32K
01C4 8000 – 01C4 FFFF
Reserved
192K
01C5 0000 – 01C7 FFFF
EMAC Control
4K
01C8 0000 – 01C8 0FFF
EMAC Wrapper
8K
01C8 1000 – 01C8 2FFF
EWRAP Registers
2K
01C8 3000 – 01C8 37FF
MDIO Control Registers
Reserved
QDMA Registers
Reserved
McBSP 0 Data
2K
01C8 3800 – 01C8 3FFF
3.5M
01C8 4000 – 01FF FFFF
52
0200 0000 – 0200 0033
928M – 52
0200 0034 – 2FFF FFFF
64M
3000 0000 – 33FF FFFF
† For the DM640 device, these memory address locations are reserved.The DM640 device does not support the HPI and VP1 peripherals.
28
SPRS222C
June 2003 − Revised August 2004
Memory Map Summary
Table 1−5. TMS320DM641/DM640 Memory Map Summary (Continued)
BLOCK SIZE
(BYTES)
HEX ADDRESS RANGE
McBSP 1 Data
64M
3400 0000 – 37FF FFFF
Reserved
64M
3800 0000 – 3BFF FFFF
MEMORY BLOCK DESCRIPTION
McASP0 Data
1M
3C00 0000 – 3C0F FFFF
Reserved
64M − 1M
3C10 0000 – 3FFF FFFF
Reserved
832M
4000 0000 – 73FF FFFF
VP0 Channel A Data
32M
7400 0000 – 75FF FFFF
Reserved
32M
7600 0000 – 77FF FFFF
VP1 Channel A Data (DM641 only)†
32M
7800 0000 – 79FF FFFF
Reserved
32M
7A00 0000 – 7BFF FFFF
Reserved
64M
7C00 0000 – 7FFF FFFF
EMIFA CE0
256M
8000 0000 – 8FFF FFFF
EMIFA CE1
256M
9000 0000 – 9FFF FFFF
EMIFA CE2
256M
A000 0000 – AFFF FFFF
EMIFA CE3
256M
B000 0000 – BFFF FFFF
1G
C000 0000 – FFFF FFFF
Reserved
† For the DM640 device, these memory address locations are reserved.The DM640 device does not support the HPI and VP1 peripherals.
June 2003 − Revised August 2004
SPRS222C
29
Memory Map Summary
1.7.1
L2 Architecture Expanded
Figure 1−3 shows the detail of the L2 architecture on the TMS320DM641/DM640 devices. For more
information on the L2MODE bits, see the cache configuration (CCFG) register bit field descriptions in the
TMS320C64x Two-Level Internal Memory Reference Guide (literature number SPRU610).
L2MODE†
011
64K SRAM
010
Block Base Address
ÏÏÏÏÏÏÏÏÏÏ
ÏÏÏÏÏÏÏÏÏÏ
ÏÏÏÏÏÏÏÏÏÏ
ÏÏÏÏÏÏÏÏÏÏ
ÏÏÏÏÏÏÏÏÏÏ
ÏÏÏÏÏÏÏÏÏÏ
ÏÏÏÏÏÏÏÏÏÏ
0x0000 0000
64K-Byte RAM
128K Cache (4 Way)
64K Cache (4 Way)
96K SRAM
001
32K Cache
(4 Way)
128K SRAM (All)
000
L2 Memory
0x0001 0000
32K-Byte RAM
0x0001 8000
32K-Byte RAM
0x0001 FFFF
0x0002 0000
† The L2MODE = 111b is not supported on the DM641/DM640 devices.
Figure 1−3. TMS320DM641/DM640 L2 Architecture Memory Configuration
30
SPRS222C
June 2003 − Revised August 2004
Bootmode
1.8
Bootmode
The DM641/DM640 device resets using the active-low signal RESET. While RESET is low, the device is held
in reset and is initialized to the prescribed reset state. Refer to reset timing for reset timing characteristics and
states of device pins during reset. The release of RESET starts the processor running with the prescribed
device configuration and boot mode.
The DM641 has three types of boot modes while the DM640 has only two types of boot modes:
•
Host boot [DM641 only]
If host boot is selected, upon release of RESET, the CPU is internally “stalled” while the remainder of the
device is released. During this period, an external host can initialize the CPU’s memory space as
necessary through the host interface, including internal configuration registers, such as those that control
the EMIF or other peripherals. For the DM641 device, the HPI peripheral is used for host boot. Once the
host is finished with all necessary initialization, it must set the DSPINT bit in the HPIC register to complete
the boot process. This transition causes the boot configuration logic to bring the CPU out of the “stalled”
state. The CPU then begins execution from address 0. The DSPINT condition is not latched by the CPU,
because it occurs while the CPU is still internally “stalled”. Also, DSPINT brings the CPU out of the “stalled”
state only if the host boot process is selected. All memory may be written to and read by the host. This
allows for the host to verify what it sends to the DSP if required. After the CPU is out of the “stalled” state,
the CPU needs to clear the DSPINT, otherwise, no more DSPINTs can be received.
•
EMIF boot (using default ROM timings)
Upon the release of RESET, the 1K-Byte ROM code located in the beginning of CE1 is copied to address 0
by the EDMA using the default ROM timings, while the CPU is internally “stalled”. The data should be
stored in the endian format that the system is using. In this case, the EMIF automatically assembles
consecutive 8-bit bytes to form the 32-bit instruction words to be copied. The transfer is automatically done
by the EDMA as a single-frame block transfer from the ROM to address 0. After completion of the block
transfer, the CPU is released from the “stalled” state and starts running from address 0.
•
No boot
With no boot, the CPU begins direct execution from the memory located at address 0. Note: operation is
undefined if invalid code is located at address 0.
June 2003 − Revised August 2004
SPRS222C
31
Pin Assignments
1.9
Pin Assignments
On Quadrants A, B, C, and D, shading denotes pin assignments that have different functionality between the
DM641 and DM640 devices [DM640 denoted within ( )]. See the Terminal Functions table for details.
1.9.1
Pin Map
1
2
3
4
5
6
7
8
9
10
11
12
13
AF
VSS
DVDD
RSV04
VP1CTL0
(RSV15)
RSV13
(RSV18)
RSV14
(RSV19)
VSS
VP1CLK0
(RSV13)
VSS
VP1CLK1
(RSV14)
VSS
VP0CLK1
VSS
AE
DVDD
DVDD
VSS
CLKMODE1 VP1CTL1
(RSV16)
VP1D[0]/
CLKX1
VP1D[3]/
CLKS1
VSS
RSV15
(RSV21)
VSS
AXR0[3]
VSS
DVDD
AD
VDAC
VSS
RSV03
VSS
VP1CTL2
(RSV17)
VP1D[1]/
FSX1
VP1D[4]/
DR1
VP1D[6]/
CLKR1
RSV16
(RSV22)
AXR0[1]
RSV17
(RSV23)
AFSX0
AMUTEIN0
AC
STCLK
CLKIN
VSS
RSV02
VSS
VP1D[2]/
DX1
VP1D[5]/
FSR1
VP1D[7]
(RSV20)
AXR0[0]
AXR0[2]
RSV18
(RSV24)
AHCLKX0
AMUTE0
AB
VSS
VSS
RSV01
VSS
DVDD
VSS
DVDD
DVDD
VSS
DVDD
RSV19
(RSV25)
RSV20
(RSV26)
ACLKX0
AA
HD1
(RSV111)
CLKMODE0
RSV00
VSS
VSS
CVDD
CVDD
VSS
DVDD
VSS
VSS
DVDD
VSS
Y
HD5
(RSV115)
HD3
(RSV113)
HD0
(RSV110)
HD2
(RSV112)
DVDD
CVDD
CVDD
CVDD
VSS
CVDD
CVDD
VSS
CVDD
W
VSS
HD7
(RSV117)
HD4
(RSV114)
HD6
(RSV116)
DVDD
VSS
RSV06
V
HD10
(RSV120)
HD8
(RSV118)
HD9
(RSV119)
RSV54
(RSV60)
VSS
PLLV
VSS
U
HD14
(RSV124)
HD12
(RSV122)
HD13
(RSV123)
HD11
(RSV121)
DVDD
VSS
CVDD
T
VSS
HDS2
(RSV101)
HD15
(RSV125)
RSV55
(RSV61)
VSS
VSS
CVDD
R
HCS
(RSV109)
HDS1
(RSV100)
HCNTL0
(RSV106)
RSV56
(RSV62)
MDCLK
RSV08
VSS
VSS
CVDD
P
HCNTL1
(RSV107)
VSS
HAS
(RSV108)
RESET
MDIO
VSS
CVDD
CVDD
VSS
1
2
3
4
5
6
7
12
13
8
9
10
11
Figure 1−4. DM641/DM640 Pin Map [Quadrant A]
32
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
14
15
16
17
18
19
20
21
22
23
24
25
26
VP0CLK0
VSS
VP0D[1]/
FSX0
VP0D[0]/
CLKX0
RSV09
VSS
RSV76
(RSV82)
RSV80
(RSV86)
VSS
RSV88
(RSV94)
RSV89
(RSV95)
DVDD
VSS
AF
VSS
VP0D[6]/
CLKR0
VP0D[2]/
DX0
VP0CTL0
RSV10
VSS
RSV78
(RSV84)
RSV82
(RSV88)
RSV84
(RSV90)
RSV87
(RSV93)
VSS
DVDD
DVDD
AE
ACLKR0
VP0D[7]
VP0D[3]/
CLKS0
VP0CTL2
VSS
RSV74
(RSV80)
RSV79
(RSV85)
RSV83
(RSV89)
RSV85
(RSV91)
RSV86
(RSV92)
DVDD
RSV59
(RSV65)
RSV58
(RSV64)
AD
AFSR0
RSV11
VP0D[4]/
DR0
VP0CTL1
VSS
RSV75
(RSV81)
RSV77
(RSV83)
RSV81
(RSV87)
VSS
DVDD
VSS
RSV60
(RSV66)
RSV61
(RSV67)
AC
AHCLKR0
RSV12
VP0D[5]/
FSR0
DVDD
VSS
DVDD
DVDD
VSS
DVDD
RSV64
(RSV70)
RSV62
(RSV68)
RSV63
(RSV69)
VSS
AB
VSS
DVDD
VSS
VSS
DVDD
VSS
CVDD
CVDD
VSS
RSV67
(RSV73)
RSV65
(RSV71)
RSV66
(RSV72)
RSV68
(RSV74)
AA
CVDD
VSS
CVDD
CVDD
VSS
CVDD
CVDD
CVDD
DVDD
RSV71
(RSV77)
RSV69
(RSV75)
RSV70
(RSV76)
RSV72
(RSV78)
Y
CVDD
VSS
DVDD
RSV73
(RSV79)
AHOLD
DVDD
VSS
W
VSS
DVDD
VSS
AEA18
AEA21
AEA20
AEA19
V
CVDD
VSS
DVDD
AEA22
AEA17
AEA16
AEA15
U
CVDD
VSS
RSV93
(RSV99)
RSV92
(RSV98)
AEA14
AEA13
VSS
T
VSS
CVDD
VSS
DVDD
ASOE3
AEA12
AEA11
RSV91
(RSV97)
RSV90
(RSV96)
R
CVDD
VSS
CVDD
VSS
ABUSREQ
AEA10
AEA9
DVDD
AEA8
P
14
15
20
21
22
23
24
25
26
16
17
18
19
Figure 1−4. DM641/DM640 Pin Map (Continued) [Quadrant B]
June 2003 − Revised August 2004
SPRS222C
33
Pin Assignments
1
2
3
4
5
6
7
N
HRDY
(RSV105)
DVDD
HHWIL
(RSV104)
HINT
(RSV103)
VSS
VSS
M
HR/W
(RSV102)
MTXD1
MTXD0
MTXD2
GP0[0]
L
VSS
MTXD3
MTXEN
MTCLK
K
RSV57
(RSV63)
MCOL
RSV46
(RSV52)
J
MRXD1
RSV47
(RSV53)
H
VSS
G
8
9
10
11
12
13
CVDD
VSS
CVDD
DVDD
VSS
CVDD
VSS
GP0[3]
VSS
CVDD
HD24/
AD24/
MRXD0
DVDD
VSS
CVDD
MRXD2
MRXDV
VSS
DVDD
VSS
MRXD3
MCRS
RSV49
(RSV55)
DVDD
VSS
RSV07
MRCLK
MRXER
RSV52
(RSV58)
RSV50
(RSV56)
DVDD
CVDD
CVDD
CVDD
VSS
CVDD
CVDD
VSS
CVDD
F
RSV48
(RSV54)
GP0[6]/
EXT_INT6
GP0[5]/
EXT_INT5
GP0[4]/
EXT_INT4
VSS
CVDD
CVDD
VSS
DVDD
VSS
VSS
DVDD
VSS
E
GP0[7]/
EXT_INT7
RSV53
(RSV59)
VSS
SCL0
DVDD
VSS
DVDD
DVDD
VSS
DVDD
RSV40
(RSV46)
RSV44
(RSV50)
RSV45
(RSV51)
D
VSS
VSS
SDA0
DVDD
VSS
CLKOUT4/
GP0[1]
RSV24
(RSV30)
RSV27
(RSV33)
RSV31
(RSV37)
RSV35
(RSV41)
RSV39
(RSV45)
RSV43
(RSV49)
VSS
C
RSV51
(RSV57)
VSS
DVDD
VSS
TOUT0/
MAC_EN
CLKOUT6/
GP0[2]
RSV25
(RSV31)
RSV26
(RSV32)
RSV30
(RSV36)
RSV34
(RSV40)
RSV38
(RSV44)
RSV42
(RSV48)
VSS
B
DVDD
DVDD
VSS
NMI
TOUT1/
LENDIAN
VSS
VSS
RSV23
(RSV29)
RSV29
(RSV35)
RSV33
(RSV39)
RSV37
(RSV43)
RSV41
(RSV47)
VSS
A
VSS
DVDD
VSS
TINP0
TINP1
VSS
RSV21
(RSV27)
VSS
RSV28
(RSV34)
RSV32
(RSV38)
RSV36
(RSV42)
VSS
RSV22
(RSV28)
1
2
3
4
5
6
7
8
9
10
11
12
13
Figure 1−4. DM641/DM640 Pin Map (Continued) [Quadrant C]
34
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
14
15
VSS
CVDD
16
17
18
19
20
21
22
23
24
25
26
CVDD
CVDD
VSS
AHOLDA
AEA7
AEA6
VSS
AEA5
N
VSS
VSS
DVDD
APDT
AEA4
AEA3
ABE3
ABE2
M
CVDD
VSS
AARDY
ABE1
ABE0
ASDCKE
ACE3
L
CVDD
VSS
DVDD
ACE2
ACE1
ACE0
AAWE/
ASDWE/
ASWE
K
VSS
DVDD
VSS
AECLKOUT2
AAOE/
ASDRAS/
ASOE
AARE/
ASDCAS/
ASADS/
ASRE
CVDD
VSS
DVDD
AED17
AED16
AECLKIN
VSS
H
AECLKOUT1 J
CVDD
VSS
CVDD
CVDD
VSS
CVDD
CVDD
CVDD
DVDD
AED19
AED21
AED20
AED18
G
VSS
DVDD
VSS
VSS
DVDD
VSS
CVDD
CVDD
VSS
AED23
AED25
AED24
AED22
F
RSV05
TMS
VSS
DVDD
VSS
DVDD
DVDD
VSS
DVDD
VSS
AED27
AED26
VSS
E
TRST
EMU4
EMU8
EMU11
VSS
AED14
AED12
AED8
VSS
DVDD
VSS
AED28
AED29
D
EMU1
EMU3
EMU6
EMU10
VSS
AED15
AED10
AED6
AED4
VSS
DVDD
AED30
AED31
C
DVDD
EMU2
EMU5
EMU9
TDO
VSS
AED11
AED7
AED3
AED2
AED0
DVDD
DVDD
B
VSS
EMU0
TCK
EMU7
TDI
VSS
AED13
AED9
VSS
AED5
AED1
DVDD
VSS
A
14
15
16
17
18
19
20
21
22
23
24
25
26
Figure 1−4. DM641/DM640 Pin Map (Continued) [Quadrant D]
June 2003 − Revised August 2004
SPRS222C
35
Pin Assignments
1.9.2
Signal Groups Description
CLKIN
CLKOUT4/GP0[1]†
CLKOUT6/GP0[2]†
CLKMODE1
CLKMODE0
PLLV
TMS
TDO
TDI
TCK
TRST
EMU0
EMU1
EMU2
EMU3
EMU4
EMU5
EMU6
EMU7
EMU8
EMU9
EMU10
EMU11
Reset and
Interrupts
Clock/PLL
RESET
NMI
GP0[7]/EXT_INT7‡
GP0[6]/EXT_INT6‡
GP0[5]/EXT_INT5‡
GP0[4]/EXT_INT4‡
RSV00
RSV01
RSV02
Reserved
RSV91(123)
RSV92(124)
RSV93(125)
IEEE Standard
1149.1
(JTAG)
Emulation
Peripheral
Control/Status
TOUT0/MAC_EN
Control/Status
GP0[7]/EXT_INT7‡
GP0[6]/EXT_INT6‡
GP0[5]/EXT_INT5‡
GP0[4]/EXT_INT4‡
GP0
(8-Bit)
GP0[3]
CLKOUT6/GP0[2]†
CLKOUT4/GP0[1]†
GP0[0]
General-Purpose Input/Output 0 (GP0) Port
† These pins are muxed with the GP0 pins and by default these signals function as clocks (CLKOUT4 or CLKOUT6). To use these
muxed pins as GPIO signals, the appropriate GPIO register bits (GPxEN and GPxDIR) must be properly enabled and configured.
For more details, see the Device Configurations section of this data sheet.
‡ These pins are GP0 pins that can also function as external interrupt sources (EXT_INT[7:4]). Default after reset is EXT_INTx or
GPIO as input-only.
Figure 1−5. CPU and Peripheral Signals
36
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
32
Data
AED[31:0]
AECLKIN
ACE3
ACE2
Memory Map
Space Select
ACE1
ACE0
20
External
Memory I/F
Control
Address
AEA[22:3]
ABE3
ABE2
ABE1
ABE0
Byte Enables
Bus
Arbitration
AECLKOUT1
AECLKOUT2
ASDCKE
AARE/ASDCAS/ASADS/ASRE
AAOE/ASDRAS/ASOE
AAWE/ASDWE/ASWE
AARDY
ASOE3
APDT
AHOLD
AHOLDA
ABUSREQ
EMIFA (32-bit)
Data
VDAC
VCXO Interpolated
Control Port (VIC)
16
HD[15:0]
HCNTL0
HCNTL1
Data
HPI
(Host-Port Interface)
[DM641 only]
Register Select
Control
HHWIL
Half-Word
Select
HAS
HR/W
HCS
HDS1
HDS2
HRDY
HINT
Figure 1−6. Peripheral Signals
June 2003 − Revised August 2004
SPRS222C
37
Pin Assignments
DM641/DM640
McBSP1
McBSP0
Transmit
VP0D[0]/CLKX0†‡
VP0D[1]/FSX0†‡
VP0D[2]/DX0†‡
Receive
Receive
VP0D[6]/CLKR0†‡
VP0D[5]/FSR0†‡
VP0D[4]/DR0†‡
Clock
Clock
VP0D[3]/CLKS0†‡
VP1D[0]/CLKX1†§
VP1D[1]/FSX1†§
VP1D[2]/DX1†§
Transmit
VP1D[6]/CLKR1†§
VP1D[5]/FSR1†§
VP1D[4]/DR1†§
VP1D[3]/CLKS1†§
McBSPs
(Multichannel Buffered Serial Ports)
TOUT1/LENDIAN
TINP1
TOUT0/MAC_EN
TINP0
Timer 0
Timer 1
Timer 2
Timers
SCL0
I2C0
SDA0
I2C0
† For DM641, these McBSP1 and McBSP0 pins are muxed with the Video Port 1 (VP1) and Video Port 0 (VP0) peripherals, respectively. By
default, these signals function as VP1 and VP0, respectively. For more details on these muxed pins, see the Device Configurations section
of this data sheet.
‡ For DM640, these McBSP0 pins are muxed with the Video Port 0 (VP0) peripheral. By default, these signals function as VP0. For more details
on these muxed pins, see the Device Configurations section of this data sheet.
§ The DM640 device does not support the VP1 peripheral; therefore, the McBSP1 peripheral pins are standalone perpheral functions, not
muxed.
Figure 1−6. Peripheral Signals (Continued)
38
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
EMAC
MTXD0
MTXD1
MTXD2
MTXD3
Transmit
MRXD0
MRXD1
MRXD2
MRXD3
Receive
MDIO
Input/Output
MDIO
MTXEN
MRXER
MRXDV
MCOL
MCRS
MTCLK
MRCLK
Error Detect
and Control
Clock
MDCLK
Clocks
Ethernet MAC (EMAC)
and MDIO
Figure 1−6. Peripheral Signals (Continued)
June 2003 − Revised August 2004
SPRS222C
39
Pin Assignments
STCLK
VP0CLK0
VP0CLK1
VP0CTL0
VP0CTL1
VP0CTL2
VP0D[0]/CLKX0
VP0D[1]/FSX0
VP0D[2]/DX0
VP0D[3]/CLKS0
Timing and
Control Logic
VP0D[4]/DR0
VP0D[5]/FSR0
VP0D[6]/CLKR0
VP0D[7]
Capture/Display
Buffer
(2560 Bytes)
Channel A†
Video Port 0 (VP0)
† Channel A supports: BT.656 (8-bit) display pipeline mode and BT.656 (8-bit) capture pipeline mode [TSI (8-bit) capture
pipeline mode − currently not supported].
Figure 1−6. Peripheral Signals (Continued)
40
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
STCLK‡
VP1CLK0
VP1CLK1
VP1CTL0
VP1CTL1
VP1CTL2
VP1D[0]/CLKX1
VP1D[1]/FSX1
VP1D[2]/DX1
VP1D[3]/CLKS1
Timing and
Control Logic
VP1D[4]/DR1
VP1D[5]/FSR1
VP1D[6]/CLKR1
VP1D[7]
Capture/Display
Buffer
(2560 Bytes)
Channel A†
Video Port 1 (VP1) [DM641 only]
† Channel A supports: BT.656 (8-bit) display pipeline mode and BT.656 (8-bit) capture pipeline mode [TSI (8-bit) capture
pipeline mode − currently not supported].
‡ For DM641, the same STCLK signal is used for both video ports (VP0 and VP1).
Figure 1−6. Peripheral Signals (Continued)
June 2003 − Revised August 2004
SPRS222C
41
Pin Assignments
(Transmit/Receive Data Pins)
(Transmit/Receive Data Pins)
8-Serial Ports
Flexible
Partitioning
Tx, Rx, OFF
AXR0[0]
AXR0[1]
AXR0[2]
AXR0[3]
(Transmit Bit Clock)
(Receive Bit Clock)
ACLKR0
AHCLKR0
Receive Clock
Generator
Transmit
Clock
Generator
(Receive Master Clock)
AFSR0
(Receive Frame Sync or
Left/Right Clock)
ACLKX0
AHCLKX0
(Transmit Master Clock)
Receive Clock
Check Circuit
Transmit
Clock Check
Circuit
Receive
Frame Sync
Transmit
Frame Sync
Error Detect
(see Note A )
Auto Mute
Logic
AFSX0
(Transmit Frame Sync or
Left/Right Clock)
AMUTE0
AMUTEIN0
McASP0
(Multichannel Audio Serial Port 0)
NOTES: A. The McASPs’ Error Detect function detects underruns, overruns, early/late frame syncs, DMA errors, and external mute input.
B. Bolded and italicized text within parentheses denotes the function of the pins in an audio system.
Figure 1−6. Peripheral Signals (Continued)
1.9.3
Terminal Functions
The terminal functions table (Table 1−6) identifies the external signal names, the associated pin (ball) numbers
along with the mechanical package designator, the pin type (I, O/Z, or I/O/Z), whether the pin has any internal
pullup/pulldown resistors and a functional pin description. For more detailed information on device
configuration, peripheral selection, multiplexed/shared pins, and debugging considerations, see the Device
Configurations section of this data sheet.
42
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
CLOCK/PLL CONFIGURATION
CLKIN
AC2
AC2
I
IPD
Clock Input. This clock is the input to the on-chip PLL.
CLKOUT4/GP0[1]§
D6
D6
I/O/Z
IPD
Clock output at 1/4 of the device speed (O/Z) [default] or this pin can be
programmed as a GP0 1 pin (I/O/Z).
CLKOUT6/GP0[2]§
C6
C6
I/O/Z
IPD
Clock output at 1/6 of the device speed (O/Z) [default] or this pin can be
programmed as a GP0 2 pin (I/O/Z).
CLKMODE1
AE4
AE4
I
IPD
CLKMODE0
AA2
AA2
I
IPD
V6
V6
A#
PLLV¶
Clock mode select
• Selects whether the CPU clock frequency = input clock frequency x1
(Bypass), x6, or x12.
For more details on the CLKMODE pins and the PLL multiply factors, see
the Clock PLL section of this data sheet.
PLL voltage supply
JTAG EMULATION
TMS
E15
E15
I
IPU
JTAG test-port mode select
TDO
B18
B18
O/Z
IPU
JTAG test-port data out
TDI
A18
A18
I
IPU
JTAG test-port data in
TCK
A16
A16
I
IPU
JTAG test-port clock
TRST
D14
D14
I
IPD
JTAG test-port reset. For IEEE 1149.1 JTAG compatibility, see the IEEE
1149.1 JTAG compatibility statement portion of this data sheet.
EMU11
D17
D17
I/O/Z
IPU
Emulation pin 11. Reserved for future use, leave unconnected.
EMU10
C17
C17
I/O/Z
IPU
Emulation pin 10. Reserved for future use, leave unconnected.
EMU9
B17
B17
I/O/Z
IPU
Emulation pin 9. Reserved for future use, leave unconnected.
EMU8
D16
D16
I/O/Z
IPU
Emulation pin 8. Reserved for future use, leave unconnected.
EMU7
A17
A17
I/O/Z
IPU
Emulation pin 7. Reserved for future use, leave unconnected.
EMU6
C16
C16
I/O/Z
IPU
Emulation pin 6. Reserved for future use, leave unconnected.
EMU5
B16
B16
I/O/Z
IPU
Emulation pin 5. Reserved for future use, leave unconnected.
EMU4
D15
D15
I/O/Z
IPU
Emulation pin 4. Reserved for future use, leave unconnected.
EMU3
C15
C15
I/O/Z
IPU
Emulation pin 3. Reserved for future use, leave unconnected.
Emulation pin 2. Reserved for future use, leave unconnected.
Emulation pin 1||
EMU2
B15
B15
I/O/Z
IPU
EMU1
C14
C14
I/O/Z
IPU
EMU0
A15
A15
I/O/Z
IPU
Emulation pin 0||
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
¶ PLLV is not part of external voltage supply. See the Clock PLL section for information on how to connect this pin.
# A = Analog signal (PLL Filter)
|| The EMU0 and EMU1 pins are internally pulled up with 30-kΩ resistors; therefore, for emulation and normal operation, no external
pullup/pulldown resistors are necessary. However, for boundary scan operation, pull down the EMU1 and EMU0 pins with a dedicated 1-kΩ
resistor.
June 2003 − Revised August 2004
SPRS222C
43
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
RESETS, INTERRUPTS, AND GENERAL-PURPOSE INPUT/OUTPUTS
RESET
P4
P4
I
Device reset
Nonmaskable interrupt, edge-driven (rising edge)
Note: Any noise on the NMI pin may trigger an NMI interrupt; therefore, if the
NMI pin is not used, it is recommended that the NMI pin be grounded versus
relying on the IPD.
NMI
B4
B4
I
IPD
GP0[7]/EXT_INT7
E1
E1
I/O/Z
IPU
GP0[6]/EXT_INT6
F2
F2
I/O/Z
IPU
GP0[5]/EXT_INT5
F3
F3
I/O/Z
IPU
GP0[4]/EXT_INT4
F4
F4
I/O/Z
IPU
General-purpose input/output (GPIO) pins (I/O/Z) or external interrupts
(input only). The default after reset setting is GPIO enabled as input-only.
• When these pins function as External Interrupts [by selecting the
corresponding interrupt enable register bit (IER.[7:4])], they are
edge-driven and the polarity can be independently selected via the
External Interrupt Polarity Register bits (EXTPOL.[3:0]).
GP0[3]
L5
L5
I/O/Z
IPD
The general-purpose 0 pin (GP0[3]) (I/O/Z).
GP0[0]
M5
M5
I/O/Z
IPD
GP0 0 pin (I/O/Z) [default]
This pin can be programmed as GPIO 0 (input only) [default] or as GP0[0]
(output only) pin or output as a general-purpose interrupt (GP0INT) signal
(output only).
Note: This pin must remain low during device reset.
CLKOUT6/
GP0[2]§
C6
C6
I/O/Z
IPD
Clock output at 1/6 of the device speed (O/Z) [default] or this pin can be
programmed as a GP0 2 pin (I/O/Z).
CLKOUT4/
GP0[1]§
D6
D6
I/O/Z
IPD
Clock output at 1/4 of the device speed (O/Z) [default] or this pin can be
programmed as a GP0 1 pin (I/O/Z).
HOST-PORT INTERFACE (HPI) [DM641 ONLY]
HINT
N4
—
I/O/Z
Host interrupt from DSP to host (O) [default]
HCNTL1
P1
—
I/O/Z
Host control − selects between control, address, or data registers (I) [default]
HCNTL0
R3
—
I/O/Z
Host control − selects between control, address, or data registers (I) [default]
HHWIL
N3
—
I/O/Z
Host half-word select − first or second half-word (not necessarily high or low
order) [For HPI16 bus width selection only] (I) [default]
HR/W
M1
—
I/O/Z
Host read or write select (I) [default]
HAS
P3
—
I/O/Z
Host address strobe (I) [default]
HCS
R1
—
I/O/Z
Host chip select (I) [default]
HDS1
R2
—
I/O/Z
Host data strobe 1 (I) [default]
HDS2
T2
—
I/O/Z
Host data strobe 2 (I) [default]
HRDY
N1
—
I/O/Z
Host ready from DSP to host (O) [default]
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
44
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
HOST-PORT INTERFACE (HPI) [DM641 ONLY] (CONTINUED)
HD15
T3
—
HD14
U1
—
HD13
U3
—
HD12
U2
—
HD11
U4
—
HD10
V1
—
HD9
V3
—
HD8
V2
—
HD7
W2
—
HD6
W4
—
HD5
Y1
—
HD4
W3
—
HD3
Y2
—
HD2
Y4
—
HD1
AA1
—
HD0
Y3
—
Host-port data (I/O/Z) [DM641 Only]
As HPI data bus
• Used for transfer of data, address, and control
I/O/Z
For proper DM641 device operation, the HD5 pin at device reset must be
10-k resistor.
pulldown via a 10-kΩ
EMIFA (32-BIT) − CONTROL SIGNALS COMMON TO ALL TYPES OF MEMORY
ACE3
L26
L26
O/Z
IPU
ACE2
K23
K23
O/Z
IPU
ACE1
K24
K24
O/Z
IPU
ACE0
K25
K25
O/Z
IPU
ABE3
M25
M25
O/Z
IPU
ABE2
M26
M26
O/Z
IPU
ABE1
L23
L23
O/Z
IPU
ABE0
L24
L24
O/Z
IPU
APDT
M22
M22
O/Z
IPU
EMIFA memory space enables
• Enabled by bits 28 through 31 of the word address
• Only one pin is asserted during any external data access
EMIFA byte-enable control
• Decoded from the low-order address bits. The number of address bits
or byte enables used depends on the width of external memory.
• Byte-write enables for most types of memory
• Can be directly connected to SDRAM read and write mask
signal (SDQM)
EMIFA peripheral data transfer, allows direct transfer between external
peripherals
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
June 2003 − Revised August 2004
SPRS222C
45
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
EMIFA (32-BIT) − BUS ARBITRATION
AHOLDA
N22
N22
O
IPU
EMIFA hold-request-acknowledge to the host
AHOLD
W24
W24
I
IPU
EMIFA hold request from the host
ABUSREQ
P22
P22
O
IPU
EMIFA bus request output
EMIFA (32-BIT) − ASYNCHRONOUS/SYNCHRONOUS MEMORY CONTROL
AECLKIN
H25
H25
I
IPD
EMIFA external input clock. The EMIFA input clock (AECLKIN, CPU/4 clock,
or CPU/6 clock) is selected at reset via the pullup/pulldown resistors on the
AEA[20:19] pins.
AECLKIN is the default for the EMIFA input clock.
AECLKOUT2
J23
J23
O/Z
IPD
EMIFA output clock 2. Programmable to be EMIFA input clock (AECLKIN,
CPU/4 clock, or CPU/6 clock) frequency divided-by-1, -2, or -4.
AECLKOUT1
J26
J26
O/Z
IPD
EMIFA output clock 1 [at EMIFA input clock (AECLKIN, CPU/4 clock, or
CPU/6 clock) frequency].
AARE/
ASDCAS/
ASADS/ASRE
J25
J25
O/Z
IPU
EMIFA asynchronous memory read-enable/SDRAM column-address
strobe/programmable synchronous interface-address strobe or read-enable
• For programmable synchronous interface, the RENEN field in the CE
Space Secondary Control Register (CExSEC) selects between ASADS
and ASRE:
If RENEN = 0, then the ASADS/ASRE signal functions as the ASADS
signal.
If RENEN = 1, then the ASADS/ASRE signal functions as the ASRE
signal.
AAOE/
ASDRAS/
ASOE
J24
J24
O/Z
IPU
EMIFA asynchronous memory output-enable/SDRAM row-address
strobe/programmable synchronous interface output-enable
AAWE/
ASDWE/
ASWE
K26
K26
O/Z
IPU
EMIFA asynchronous memory write-enable/SDRAM
write-enable/programmable synchronous interface write-enable
ASDCKE
L25
L25
O/Z
IPU
EMIFA SDRAM clock-enable (used for self-refresh mode).
• If SDRAM is not in system, ASDCKE can be used as a general-purpose
output.
ASOE3
R22
R22
O/Z
IPU
EMIFA synchronous memory output-enable for ACE3 (for glueless FIFO
interface)
AARDY
L22
L22
I
IPU
Asynchronous memory ready input
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
46
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
EMIFA (32-BIT) − ADDRESS
AEA22
U23
U23
AEA21
V24
V24
AEA20
V25
V25
AEA19
V26
V26
AEA18
V23
V23
AEA17
U24
U24
AEA16
U25
U25
AEA15
U26
U26
AEA14
T24
T24
AEA13
T25
T25
AEA12
R23
R23
AEA11
R24
R24
AEA10
P23
P23
AEA9
P24
P24
AEA8
P26
P26
AEA7
N23
N23
AEA6
N24
N24
AEA5
N26
N26
AEA4
M23
M23
AEA3
M24
M24
EMIFA external address (doubleword address)
EMIFA address numbering for the DM641/DM640 devices start with AEA3 to
maintain signal name compatibility with other C64x
C64x devices (e.g., C6414,
C6415, and C6416) [see the 32-bit EMIF addressing scheme in the
TMS320C6000 DSP External Memory Interface (EMIF) Reference Guide
(literature number SPRU266)].
O/Z
IPD
Boot Configuration:
• Controls initialization of DSP modes at reset (I) via pullup/pulldown
resistors
− Boot mode (AEA[22:21]):
00 – No boot (default mode)
01 − HPI [DM641 only]; Reserved [For DM640 device]
10 − Reserved
11 − EMIFA boot
− EMIF clock select
− AEA[20:19]: Clock mode select for EMIFA (AECLKIN_SEL[1:0])
00 – AECLKIN (default mode)
01 − CPU/4 Clock Rate
10 − CPU/6 Clock Rate
11 − Reserved
For more details, see the Device Configurations section of this data sheet.
EMIFA (32-BIT) − DATA
AED31
C26
C26
AED30
C25
C25
AED29
D26
D26
AED28
D25
D25
AED27
E24
E24
AED26
E25
E25
AED25
F24
F24
AED24
F25
F25
AED23
F23
F23
AED22
F26
F26
AED21
G24
G24
AED20
G25
G25
AED19
G23
G23
AED18
G26
G26
AED17
H23
H23
AED16
H24
H24
AED15
C19
C19
I/O/Z
IPU
EMIFA external data
AED14
D19
D19
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
June 2003 − Revised August 2004
SPRS222C
47
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
EMIFA (32-BIT) − DATA (CONTINUED)
AED13
A20
A20
AED12
D20
D20
AED11
B20
B20
AED10
C20
C20
AED9
A21
A21
AED8
D21
D21
AED7
B21
B21
AED6
C21
C21
AED5
A23
A23
AED4
C22
C22
AED3
B22
B22
AED2
B23
B23
AED1
A24
A24
AED0
B24
B24
MDCLK
R5
R5
I/O/Z
IPD
MDIO serial clock input/output (I/O/Z).
MDIO
P5
P5
I/O/Z
IPU
MDIO serial data input/output (I/O/Z).
I/O/Z
IPU
EMIFA external data
MANAGEMENT DATA INPUT/OUTPUT (MDIO)
VCX0 INTERPOLATED CONTROL PORT (VIC)
VDAC
AD1
AD1
O/Z
IPD
VCXO Interpolated Control Port (VIC) single-bit digital-to-analog converter
(VDAC) output [output only].
VIDEO PORTS (VP0 [DM641/DM640] AND VP1 [DM641 ONLY])
STCLK
AC1
AC1
I
IPD
The STCLK signal drives the hardware counter on the video ports.
8-BIT VIDEO PORT 1 (VP1) [DM641 ONLY]
VP1D[7]
AC8
—
VP1D[6]/CLKR1§
VP1D[5]/FSR1§
AD8
***
AC7
***
VP1D[4]/DR1§
AD7
***
Video port 1 (VP1) data input/output (I/O/Z) or McBSP1 data input/output
(I/O/Z) [default] [DM641 only]
I/O/Z
IPD
*** − The DM640 device does not support the VP1 peripheral; therefore, the
McBSP1 peripheral pins are standalone peripheral functions, not muxed.
VP1D[3]/CLKS1§
VP1D[2]/DX1§
AE7
***
AC6
***
VP1D[1]/FSX1§
AD6
***
VP1D[0]/CLKX1§
AE6
***
VP1CLK1
AF10
—
I/O/Z
IPD
VP1 clock 1 (I/O/Z)
VP1CLK0
AF8
—
I
IPD
VP1 clock 0 (I)
VP1CTL2
AD5
—
VP1CTL1
AE5
—
For more details on the McBSP1 pin functions [for both the DM641 and
DM640 devices], see McBSP1 section of this table and the Device
Configurations section of this data sheet.
VP1 control 2 (I/O/Z)
I/O/Z
IPD
VP1 control 1 (I/O/Z)
VP1CTL0
AF4
—
VP1 control 0 (I/O/Z)
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
48
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
8-BIT VIDEO PORT 0 (VP0) [DM641 AND DM640]
VP0D[7]
AD15
AD15
VP0D[6]/CLKR0§
VP0D[5]/FSR0§
AE15
AE15
AB16
AB16
VP0D[4]/DR0§
AC16
AC16
VP0D[3]/CLKS0§
VP0D[2]/DX0§
AD16
AD16
AE16
AE16
VP0D[1]/FSX0§
AF16
AF16
VP0D[0]/CLKX0§
AF17
AF17
VP0CLK1
AF12
AF12
I/O/Z
IPD
VP0 clock 1 (I/O/Z)
VP0CLK0
AF14
AF14
I
IPD
VP0 clock 0 (I)
VP0CTL2
AD17
AD17
VP0CTL1
AC17
AC17
VP0CTL0
AE17
AE17
Video port 0 (VP0) data input/output (I/O/Z) or McBSP0 data input/output
(I/O/Z) [default]
I/O/Z
IPD
For more details on the McBSP0 pin functions, see McBSP0 section of this
table and the Device Configurations section of this data sheet.
VP0 control 2 (I/O/Z)
I/O/Z
IPD
VP0 control 1 (I/O/Z)
VP0control 0 (I/O/Z)
TIMER 2
—
No external pins. The timer 2 peripheral pins are not pinned out as external
pins.
—
TIMER 1
TOUT1/LENDIAN
B5
B5
O/Z
IPU
TINP1
A5
A5
I
IPD
Timer 1 output (O/Z)
Boot Configuration: Device endian mode [LENDIAN] (I).
Controls initialization of DSP modes at reset via pullup/pulldown resistors
− Device Endian mode
0 – Big Endian
1 − Little Endian (default)
For more details on LENDIAN, see the Device Configurations section of this
data sheet.
Timer 1 or general-purpose input
TIMER 0
TOUT0/MAC_EN
C5
C5
O/Z
IPD
Timer 0 output (O/Z)
Boot Configuration: MAC enable pin [MAC_EN] (I)
The MAC_EN pin controls the selection (enable/disable) of the EMAC and
MDIO peripherals.
For more details, see the Device Configurations section of this data sheet.
TINP0
A4
A4
I
IPD
Timer 0 or general-purpose input
INTER-INTEGRATED CIRCUIT 0 (I2C0)
SCL0
E4
E4
I/O/Z
—
I2C0 clock.
SDA0
D3
D3
I/O/Z
—
I2C0 data.
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
June 2003 − Revised August 2004
SPRS222C
49
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
MULTICHANNEL BUFFERED SERIAL PORT 1 (McBSP1) [DM641 ONLY]
VP1D[6]/CLKR1§
AD8
—
I/O/Z
IPD
Video Port 1 (VP1) input/output data 6 pin (I/O/Z) or McBSP1 receive clock
(I/O/Z) [default]
VP1D[5]/FSR1§
AC7
—
I/O/Z
IPD
VP1 input/output data 5 pin (I/O/Z) or McBSP1 receive frame sync (I/O/Z)
[default]
VP1D[4]/DR1§
AD7
—
I
IPD
VP1 input/output data 4 pin (I/O/Z) or McBSP1 receive data (I) [default]
VP1D[3]/CLKS1§
AE7
—
I
IPD
VP1 input/output data 3 pin (I/O/Z) or McBSP1 external clock source (I)
(as opposed to internal) [default]
VP1D[2]/DX1§
AC6
—
I/O/Z
IPD
VP1 input/output data 2 pin (I/O/Z) or McBSP1 transmit data (O/Z) [default]
VP1D[1]/FSX1§
AD6
—
I/O/Z
IPD
VP1 input/output data 1 pin (I/O/Z) or McBSP1 transmit frame sync (I/O/Z)
[default]
VP1D[0]/CLKX1§
AE6
—
I/O/Z
IPD
VP1 input/output data 0 pin (I/O/Z) or McBSP1 transmit clock (I/O/Z) [default]
MULTICHANNEL BUFFERED SERIAL PORT 1 (McBSP1) [DM640 ONLY]
CLKR1
—
AD8
I/O/Z
IPD
McBSP1 receive clock (I/O/Z)
FSR1
—
AC7
I/O/Z
IPD
McBSP1 receive frame sync (I/O/Z)
DR1
—
AD7
I
IPD
McBSP1 receive data (I)
CLKS1
—
AE7
I
IPD
McBSP1 external clock source (I) (as opposed to internal)
DX1
—
AC6
I/O/Z
IPD
McBSP1 transmit data (O/Z)
FSX1
—
AD6
I/O/Z
IPD
McBSP1 transmit frame sync (I/O/Z)
CLKX1
—
AE6
I/O/Z
IPD
McBSP1 transmit clock (I/O/Z)
MULTICHANNEL BUFFERED SERIAL PORT 0 (McBSP0)
VP0D[6]/CLKR0§
AE15
AE15
I/O/Z
IPD
Video Port 0 (VP0) input/output data 6 pin (I/O/Z) or McBSP0 receive clock
(I/O/Z) [default]
VP0D[5]/FSR0§
AB16
AB16
I/O/Z
IPD
VP0 input/output data 5 pin (I/O/Z) or McBSP0 receive frame sync (I/O/Z)
[default]
VP0D[4]/DR0§
AC16
AC16
I
IPD
VP0 input/output data 4 pin (I/O/Z) or McBSP0 receive data (I) [default]
VP0D[3]/CLKS0§
AD16
AD16
I
IPD
VP0 input/output data 3 pin (I/O/Z) or McBSP0 external clock source (I)
(as opposed to internal) [default]
VP0D[2]/DX0§
AE16
AE16
O/Z
IPD
VP0 input/output data 2 pin (I/O/Z) or McBSP0 transmit data (O/Z) [default]
VP0D[1]/FSX0§
AF16
AF16
I/O/Z
IPD
VP0 input/output data 1 pin (I/O/Z) or McBSP0 transmit frame sync (I/O/Z)
[default]
VP0D[0]/CLKX0§
AF17
AF17
I/O/Z
IPD
VP0 input/output data 0 pin (I/O/Z) or McBSP0 transmit clock (I/O/Z) [default]
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
50
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
ETHERNET MAC (EMAC)
MRCLK
G1
G1
I
MCRS
H3
H3
I
MRXER
G2
G2
I
MRXDV
J4
J4
I
MRXD3
H2
H2
I
MRXD2
J3
J3
I
MRXD1
J1
J1
I
MRXD0
K4
K4
I
MTCLK
L4
L4
I
MCOL
K2
K2
I
MTXEN
L3
L3
O/Z
MTXD3
L2
L2
O/Z
MTXD2
M4
M4
O/Z
MTXD1
M2
M2
O/Z
MTXD0
M3
M3
O/Z
EMAC Media Independent I/F (MII) data, clocks, and control pins for
Transmit/Receive.
MII transmit clock (MTCLK),
Transmit clock source from the attached PHY.
MII transmit data (MTXD[3:0]),
Transmit data nibble synchronous with transmit clock (MTCLK).
MII transmit enable (MTXEN),
This signal indicates a valid transmit data on the transmit data pins
(MTDX[3:0]).
MII collision sense (MCOL)
Assertion of this signal during half-duplex operation indicates network
collision.
During full-duplex operation, transmission of new frames will not begin if
this pin is asserted.
MII carrier sense (MCRS)
Indicates a frame carrier signal is being received.
MII receive data (MRXD[3:0]),
Receive data nibble synchronous with receive clock (MRCLK).
MII receive clock (MRCLK),
Receive clock source from the attached PHY.
MII receive data valid (MRXDV),
This signal indicates a valid data nibble on the receive data pins
(MRDX[3:0]).
MII receive error (MRXER),
Indicates reception of a coding error on the receive data.
MULTICHANNEL AUDIO SERIAL PORT 0 (McASP0) CONTROL
AHCLKX0
AC12
AC12
I/O/Z
IPD
McASP0 transmit high-frequency master clock (I/O/Z).
AFSX0
AD12
AD12
I/O/Z
IPD
McASP0 transmit frame sync or left/right clock (LRCLK) (I/O/Z).
ACLKX0
AB13
AB13
I/O/Z
IPD
McASP0 transmit bit clock (I/O/Z).
AMUTE0
AC13
AC13
O/Z
IPD
McASP0 mute output (O/Z).
AMUTEIN0
AD13
AD13
I/O/Z
IPD
McASP0 mute input (I/O/Z).
AHCLKR0
AB14
AB14
I/O/Z
IPD
McASP0 receive high-frequency master clock (I/O/Z).
AFSR0
AC14
AC14
I/O/Z
IPD
McASP0 receive frame sync or left/right clock (LRCLK) (I/O/Z).
ACLKR0
AD14
AD14
I/O/Z
IPD
McASP0 receive bit clock (I/O/Z).
MULTICHANNEL AUDIO SERIAL PORT 0 (McASP0) DATA
AXR0[3]
AE11
AE11
AXR0[2]
AC10
AC10
AXR0[1]
AD10
AD10
I/O/Z
IPD
McASP0 TX/RX data pins [3:0] (I/O/Z).
AXR0[0]
AC9
AC9
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
§ These pins are multiplexed pins. For more details, see the Device Configurations section of this data sheet.
June 2003 − Revised August 2004
SPRS222C
51
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
RESERVED FOR TEST
RSV
E2
E2
I
IPD
Reserved. For proper DM641/DM640 device operation, this pin at device
reset must be pulled down via a 10-kΩ resistor.
RSV
—
Y1
I/O/Z
—
Reserved [for DM640 Only]. For proper DM640 device operation, this pin at
device reset must be pulled down via a 10-kΩ resistor.
RSV
H7
H7
A
—
Reserved. This pin must be connected directly to CVDD for proper device
operation.
RSV
R6
R6
A
—
Reserved. This pin must be connected directly to DVDD for proper device
operation.
ADDITIONAL RESERVED FOR TEST
RSV
A7
A7
I
IPD
A9
A9
I/O/Z
IPD
A10
A10
I/O/Z
IPD
A11
A11
I/O/Z
IPD
A13
A13
I/O/Z
IPD
B8
B8
I/O/Z
IPD
B9
B9
I/O/Z
IPD
B10
B10
I/O/Z
IPD
B11
B11
I/O/Z
IPD
B12
B12
I/O/Z
IPD
C1
C1
I/O/Z
—
C7
C7
I/O/Z
IPD
C8
C8
I/O/Z
IPD
C9
C9
I/O/Z
IPD
C10
C10
I/O/Z
IPD
C11
C11
I/O/Z
IPD
C12
C12
I/O/Z
IPD
D7
D7
I/O/Z
IPD
D8
D8
I/O/Z
IPD
D9
D9
I/O/Z
IPD
D10
D10
I/O/Z
IPD
D11
D11
I/O/Z
IPD
D12
D12
I/O/Z
IPD
E11
E11
I/O/Z
IPD
E12
E12
I/O/Z
IPD
E13
E13
I/O/Z
IPD
E14
E14
I
IPD
F1
F1
I/O/Z
—
G3
G3
I/O/Z
—
G4
G4
I/O/Z
—
Reserved (leave unconnected, do not connect to power or ground)
Pull down via a 10-kΩ resistor
Reserved (leave unconnected, do not connect to power or ground)
Pull down via a 10-kΩ resistor
H4
H4
I/O/Z
—
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
52
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
RSV
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
J2
J2
I/O/Z
—
K1
K1
I/O/Z
—
K3
K3
I/O/Z
—
R4
R4
I
IPU
R25
R25
O/Z
IPU
R26
R26
O/Z
IPU
T4
T4
O
IPD
T22
T22
O/Z
IPU
T23
T23
O/Z
IPU
V4
V4
I/O/Z
—
W7
W7
A
—
W23
W23
I/O/Z
IPU
Y23
Y23
I/O/Z
IPU
Y24
Y24
I/O/Z
IPU
Y25
Y25
I/O/Z
IPU
IPU
Y26
Y26
I/O/Z
AA3
AA3
A
—
AA23
AA23
I/O/Z
IPU
AA24
AA24
I/O/Z
IPU
AA25
AA25
I/O/Z
IPU
AA26
AA26
I/O/Z
IPU
AB3
AB3
I
—
AB11
AB11
I/O/Z
IPD
AB12
AB12
I/O/Z
IPD
AB15
AB15
I/O/Z
IPD
AB23
AB23
I/O/Z
IPU
AB24
AB24
I/O/Z
IPU
AB25
AB25
I/O/Z
IPU
AC4
AC4
O/Z
—
AC11
AC11
I/O/Z
IPD
AC15
AC15
I/O/Z
IPD
AC19
AC19
I/O/Z
IPU
AC20
AC20
I/O/Z
IPU
AC21
AC21
I/O/Z
IPU
AC25
AC25
I/O/Z
IPU
AC26
AC26
I/O/Z
IPU
AD3
AD3
O/Z
—
AD9
AD9
I/O/Z
IPD
AD11
AD11
I/O/Z
IPD
AD19
AD19
I/O/Z
IPU
DESCRIPTION
Pull down via a 10-kΩ resistor
Reserved (leave unconnected, do not connect to power or ground)
Pull down via a 10-kΩ resistor
Reserved (leave unconnected, do not connect to power or ground)
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
June 2003 − Revised August 2004
SPRS222C
53
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
RSV
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
AD20
AD20
I/O/Z
IPU
AD21
AD21
I/O/Z
IPU
AD22
AD22
I/O/Z
IPU
AD23
AD23
I/O/Z
IPU
AD25
AD25
I/O/Z
IPU
AD26
AD26
I/O/Z
IPU
AE9
AE9
I/O/Z
IPD
AE18
AE18
I/O/Z
IPD
AE20
AE20
I/O/Z
IPU
AE21
AE21
I/O/Z
IPU
AE22
AE22
I/O/Z
IPU
AE23
AE23
I/O/Z
IPU
AF3
AF3
O
IPU
AF5
AF5
I/O/Z
IPD
AF6
AF6
I/O/Z
IPD
AF18
AF18
I/O/Z
IPD
AF20
AF20
I/O/Z
IPU
AF21
AF21
I/O/Z
IPU
AF23
AF23
I/O/Z
IPU
AF24
AF24
I/O/Z
IPU
—
M1
I/O/Z
—
Pull up via a 10-kΩ resistor
—
N1
I/O/Z
—
Pull down via a 10-kΩ resistor
—
N3
I/O/Z
—
—
N4
I/O/Z
—
—
P1
I/O/Z
—
—
P3
I/O/Z
—
—
R1
I/O/Z
—
—
R2
I/O/Z
—
—
R3
I/O/Z
—
—
T2
I/O/Z
—
—
T3
I/O/Z
—
—
U1
I/O/Z
—
—
U2
I/O/Z
—
—
U3
I/O/Z
—
—
U4
I/O/Z
—
—
V1
I/O/Z
—
—
V2
I/O/Z
—
—
V3
I/O/Z
—
—
W2
I/O/Z
—
—
W3
I/O/Z
—
Reserved (leave unconnected, do not connect to power or ground)
Pull up via a 10-kΩ resistor
Pull down via a 10-kΩ resistor
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
54
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
RSV
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
—
W4
I/O/Z
—
—
Y2
I/O/Z
—
—
Y3
I/O/Z
—
—
Y4
I/O/Z
—
—
AA1
I/O/Z
—
—
AC8
I/O/Z
IPD
—
AD5
I/O/Z
IPD
—
AE5
I/O/Z
IPD
—
AF4
I/O/Z
IPD
—
AF8
I
IPD
—
AF10
I/O/Z
IPD
DESCRIPTION
Pull down via a 10-kΩ resistor
Reserved (leave unconnected, do not connect to power or ground)
SUPPLY VOLTAGE PINS
DVDD
A2
A2
A25
A25
B1
B1
B2
B2
B14
B14
B25
B25
B26
B26
C3
C3
C24
C24
D4
D4
D23
D23
E5
E5
E7
E7
E8
E8
E10
E10
E17
E17
E19
E19
E20
E20
E22
E22
F9
F9
F12
F12
F15
F15
S
3.3-V supply voltage
F18
F18
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
June 2003 − Revised August 2004
SPRS222C
55
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
SUPPLY VOLTAGE PINS (CONTINUED)
DVDD
G5
G5
G22
G22
H5
H5
H22
H22
J6
J6
J21
J21
K5
K5
K22
K22
M6
M6
M21
M21
N2
N2
P25
P25
R21
R21
U5
U5
U22
U22
V21
V21
W5
W5
W22
W22
W25
W25
Y5
Y5
Y22
Y22
AA9
AA9
AA12
AA12
AA15
AA15
AA18
AA18
AB5
AB5
AB7
AB7
AB8
AB8
AB10
AB10
AB17
AB17
AB19
AB19
AB20
AB20
S
3.3-V supply voltage
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
56
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
SUPPLY VOLTAGE PINS (CONTINUED)
DVDD
CVDD
AB22
AB22
AC23
AC23
AD24
AD24
AE1
AE1
AE2
AE2
AE13
AE13
AE25
AE25
AE26
AE26
AF2
AF2
AF25
AF25
F6
F6
F7
F7
F20
F20
F21
F21
G6
G6
G7
G7
G8
G8
G10
G10
G11
G11
G13
G13
G14
G14
G16
G16
G17
G17
G19
G19
G20
G20
G21
G21
H20
H20
K7
K7
K20
K20
L7
L7
L20
L20
M12
M12
M14
M14
N7
N7
S
3.3-V supply voltage
S
1.2-V supply voltage (-400, -500 devices)
1.4-V supply voltage (-600 device)
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
June 2003 − Revised August 2004
SPRS222C
57
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
SUPPLY VOLTAGE PINS (CONTINUED)
CVDD
N13
N13
N15
N15
N20
N20
P7
P7
P12
P12
P14
P14
P20
P20
R13
R13
R15
R15
T7
T7
T20
T20
U7
U7
U20
U20
W20
W20
Y6
Y6
Y7
Y7
Y8
Y8
Y10
Y10
Y11
Y11
Y13
Y13
Y14
Y14
Y16
Y16
Y17
Y17
Y19
Y19
Y20
Y20
Y21
Y21
AA6
AA6
AA7
AA7
AA20
AA20
AA21
AA21
S
1.2-V supply voltage (-400, -500 devices)
1.4-V supply voltage (-600 device)
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
58
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
GROUND PINS
VSS
A1
A1
A3
A3
A6
A6
A8
A8
A12
A12
A14
A14
A19
A19
A22
A22
A26
A26
B3
B3
B6
B6
B7
B7
B13
B13
B19
B19
C2
C2
C4
C4
C13
C13
C18
C18
C23
C23
D1
D1
D2
D2
D5
D5
D13
D13
D18
D18
D22
D22
D24
D24
E3
E3
E6
E6
E9
E9
E16
E16
E18
E18
E21
E21
E23
E23
E26
E26
GND
Ground pins
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
June 2003 − Revised August 2004
SPRS222C
59
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
GROUND PINS (CONTINUED)
VSS
F5
F5
F8
F8
F10
F10
F11
F11
F13
F13
F14
F14
F16
F16
F17
F17
F19
F19
F22
F22
G9
G9
G12
G12
G15
G15
G18
G18
H1
H1
H6
H6
H21
H21
H26
H26
J5
J5
J7
J7
J20
J20
J22
J22
K6
K6
K21
K21
L1
L1
L6
L6
L21
L21
M7
M7
M13
M13
M15
M15
M20
M20
N5
N5
N6
N6
N12
N12
GND
Ground pins
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
60
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
GROUND PINS (CONTINUED)
VSS
N14
N14
N21
N21
N25
N25
P2
P2
P6
P6
P13
P13
P15
P15
P21
P21
R7
R7
R12
R12
R14
R14
R20
R20
T1
T1
T5
T5
T6
T6
T21
T21
T26
T26
U6
U6
U21
U21
V5
V5
V7
V7
V20
V20
V22
V22
W1
W1
W6
W6
W21
W21
W26
W26
Y9
Y9
Y12
Y12
Y15
Y15
Y18
Y18
AA4
AA4
AA5
AA5
AA8
AA8
GND
Ground pins
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
June 2003 − Revised August 2004
SPRS222C
61
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
GROUND PINS (CONTINUED)
VSS
AA10
AA10
AA11
AA11
AA13
AA13
AA14
AA14
AA16
AA16
AA17
AA17
AA19
AA19
AA22
AA22
AB1
AB1
AB2
AB2
AB4
AB4
AB6
AB6
AB9
AB9
AB18
AB18
AB21
AB21
AB26
AB26
AC3
AC3
AC5
AC5
AC18
AC18
AC22
AC22
AC24
AC24
AD2
AD2
AD4
AD4
AD18
AD18
AE3
AE3
AE8
AE8
AE10
AE10
AE12
AE12
AE14
AE14
AE19
AE19
AE24
AE24
AF1
AF1
GND
Ground pins
AF7
AF7
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
62
SPRS222C
June 2003 − Revised August 2004
Pin Assignments
Table 1−6. Terminal Functions (Continued)
NAME
SIGNAL
DM641
DM640
TYPE†
IPD/
IPU‡
DESCRIPTION
GROUND PINS (CONTINUED)
VSS
AF9
AF9
AF11
AF11
AF13
AF13
AF15
AF15
AF19
AF19
AF22
AF22
AF26
AF26
GND
Ground pins
† I = Input, O = Output, Z = High impedance, S = Supply voltage, GND = Ground
‡ IPD = Internal pulldown, IPU = Internal pullup. (These IPD/IPU signal pins feature a 30-kΩ IPD or IPU resistor. To pull up a signal to the opposite
supply rail, a 1-kΩ resistor should be used.)
June 2003 − Revised August 2004
SPRS222C
63
Development
1.10 Development
1.10.1
Development Support
TI offers an extensive line of development tools for the TMS320C6000 DSP platform, including tools to
evaluate the performance of the processors, generate code, develop algorithm implementations, and fully
integrate and debug software and hardware modules.
The following products support development of C6000 DSP-based applications:
Software Development Tools:
Code Composer Studio Integrated Development Environment (IDE): including Editor
C/C++/Assembly Code Generation, and Debug plus additional development tools
Scalable, Real-Time Foundation Software (DSP/BIOS), which provides the basic run-time target software
needed to support any DSP application.
Hardware Development Tools:
Extended Development System (XDS) Emulator (supports C6000 DSP multiprocessor system debug)
EVM (Evaluation Module)
For a complete listing of development-support tools for the TMS320C6000 DSP platform, visit the Texas
Instruments web site on the Worldwide Web at http://www.ti.com uniform resource locator (URL). For
information on pricing and availability, contact the nearest TI field sales office or authorized distributor.
Code Composer Studio, DSP/BIOS, and XDS are trademarks of Texas Instruments.
64
SPRS222C
June 2003 − Revised August 2004
Development
1.10.2
Device Support
1.10.2.1 Device and Development-Support Tool Nomenclature
To designate the stages in the product development cycle, TI assigns prefixes to the part numbers of all
TMS320 DSP devices and support tools. Each TMS320 DSP commercial family member has one of three
prefixes: TMX, TMP, or TMS. Texas Instruments recommends two of three possible prefix designators for its
support tools: TMDX and TMDS. These prefixes represent evolutionary stages of product development from
engineering prototypes (TMX / TMDX) through fully qualified production devices/tools (TMS / TMDS).
Device development evolutionary flow:
TMX
Experimental device that is not necessarily representative of the final device’s electrical specifications
TMP
Final silicon die that conforms to the device’s electrical specifications but has not completed quality
and reliability verification
TMS
Fully qualified production device
Support tool development evolutionary flow:
TMDX Development-support product that has not yet completed Texas Instruments internal qualification
testing.
TMDS Fully qualified development-support product
TMX and TMP devices and TMDX development-support tools are shipped against the following disclaimer:
“Developmental product is intended for internal evaluation purposes.”
TMS devices and TMDS development-support tools have been characterized fully, and the quality and
reliability of the device have been demonstrated fully. TI’s standard warranty applies.
Predictions show that prototype devices ( TMX or TMP) have a greater failure rate than the standard
production devices. Texas Instruments recommends that these devices not be used in any production system
because their expected end-use failure rate still is undefined. Only qualified production devices are to be used.
TI device nomenclature also includes a suffix with the device family name. This suffix indicates the package
type (for example, GDK), the temperature range (for example, blank is the default commercial temperature
range), and the device speed range in megahertz (for example, -600 is 600 MHz). Figure 1−7 provides a
legend for reading the complete device name for any TMS320C6000 DSP platform member.
The DM641/DM640 device is currently not available in a “Pb-free” package.
For device part numbers and further ordering information for TMS320DM641/DM640 in the GDK and GNZ
package types, see the TI website (http://www.ti.com) or contact your TI sales representative.
TMS320 is a trademark of Texas Instruments.
June 2003 − Revised August 2004
SPRS222C
65
Development
TMX 320 DM641 GDK
PREFIX
TMX = Experimental device
TMP = Prototype device
TMS = Qualified device
SMX= Experimental device, MIL
SMJ = MIL-PRF-38535, QML
SM = High Rel (non-38535)
DEVICE FAMILY
320 = TMS320t DSP family
( )
600
DEVICE SPEED RANGE
400 (400-MHz CPU, 100-MHz EMIF)
500 (500-MHz CPU, 100-MHz EMIF)
600 (600-MHz CPU, 133-MHz EMIF)
TEMPERATURE RANGE (DEFAULT: 0°C TO 90°C)†
Blank = 0°C to 90°C, commercial temperature
A
= −40°C to 105°C, extended temperature
PACKAGE TYPE‡§
GDK = 548-pin plastic BGA
GNZ = 548-pin plastic BGA
DEVICE¶
DM64x DSP:
642
641
640
† For more details, see the recommended operating conditions portion of this data sheet.
‡ BGA = Ball Grid Array
§ The DM641/DM640 is currently not available in a “Pb-Free” package.
¶ For actual device part numbers (P/Ns) and ordering information, see the TI website (www.ti.com).
Figure 1−7. TMS320DM64x DSP Device Nomenclature (Including the DM641 and DM640 Devices)
1.10.2.2 Documentation Support
Extensive documentation supports all TMS320 DSP family generations of devices from product
announcement through applications development. The types of documentation available include: data
sheets, such as this document, with design specifications; complete user’s reference guides for all devices
and tools; technical briefs; development-support tools; on-line help; and hardware and software applications.
The following is a brief, descriptive list of support documentation specific to the C6000 DSP devices:
The TMS320C6000 CPU and Instruction Set Reference Guide (literature number SPRU189) describes the
C6000 DSP CPU (core) architecture, instruction set, pipeline, and associated interrupts.
The TMS320C6000 DSP Peripherals Overview Reference Guide (literature number SPRU190) provides an
overview and briefly describes the functionality of the peripherals available on the C6000 DSP platform of
devices. This document also includes a table listing the peripherals available on the C6000 devices along with
literature numbers and hyperlinks to the associated peripheral documents.
The TMS320C64x Technical Overview (literature number SPRU395) gives an introduction to the C64x
digital signal processor, and discusses the application areas that are enhanced by the C64x DSP
VelociTI.2 VLIW architecture.
The TMS320C64x DSP Video Port/VCXO Interpolated Control (VIC) Port Reference Guide (literature number
SPRU629) describes the functionality of the Video Port and VIC Port peripherals.
The TMS320C6000 DSP Multichannel Audio Serial Port (McASP) Reference Guide (literature number
SPRU041) describes the functionality of the McASP peripheral.
TMS320C6000 DSP Inter-Integrated Circuit (I2C) Module Reference Guide (literature number SPRU175)
describes the functionality of the I2C peripheral.
TMS320C6000 DSP Ethernet Media Access Controller (EMAC) / Management Data Input/Output (MDIO)
Module Reference Guide (literature number SPRU628) describes the functionality of the EMAC and MDIO
peripherals.
66
SPRS222C
June 2003 − Revised August 2004
Development
The TMS320DM641/TMS320DM640 Digital Signal Processors Silicon Errata (literature number SPRZ201)
describes the known exceptions to the functional specifications for particular silicon revisions of the
TMS320DM641 and TMS320DM640 devices.
The TMS320DM64x Power Consumption Summary application report (literature number SPRA962)
discusses the power consumption for user applications with the TMS320DM641/DM640 DSP devices.
The TMS320DM640/1 Hardware Designer’s Resource Guide (literature number SPRAA50) is organized by
development flow and functional areas to make design efforts as seamless as possible. This document
includes getting started, board design, system testing, and checklists to aid in initial designs and debug efforts.
Each section of this document includes pointers to valuable information including: technical documentation,
models, symbols, and reference designs for use in each phase of design. Particular attention is given to
peripheral interfacing and system-level design concerns.
The Using IBIS Models for Timing Analysis application report (literature number SPRA839) describes how to
properly use IBIS models to attain accurate timing analysis for a given system.
The tools support documentation is electronically available within the Code Composer Studio Integrated
Development Environment (IDE). For a complete listing of C6000 DSP latest documentation, visit the Texas
Instruments web site on the Worldwide Web at http://www.ti.com uniform resource locator (URL).
1.10.2.3 Device Silicon Revision
The device silicon revision can be determined by the “Die PG code” marked on the top of the package. For
more detailed information on the DM641/DM640 silicon revision, package markings, and the known
exceptions to the functional specifications as well as any usage notes, refer to the device-specific silicon
errata: TMS320DM641, TMS320DM640 Digital Signal Processors Silicon Errata (literature number
SPRZ201).
June 2003 − Revised August 2004
SPRS222C
67
Device Configurations
2
Device Configurations
On the DM641/DM640 device, bootmode and certain device configurations/peripheral selections are
determined at device reset, while other device configurations/peripheral selections are software-configurable
via the peripheral configurations register (PERCFG) [address location 0x01B3F000] after device reset.
2.1
Configurations at Reset
For proper device operation; the following external pins must be configured correctly:
•
•
•
2.1.1
For proper DM641 device operation, the HD5 [pin Y1] at device reset must be pulled down via a 10-kΩ
resistor.
For proper DM641/DM640 device operation, the reserved (RSV) [E2] pin at device reset must be pulled
down via a 10-kΩ resistor.
For proper DM641/DM640 device operation, the GP0[0] [pin M5] (IPD) must remain low at device reset.
Peripheral Selection at Device Reset
On the DM641/DM640 devices there are NO peripherals sharing the same pins (internally muxed, yet mutually
exclusive) that are controlled via external pins.
•
EMAC and MDIO peripherals
The MAC_EN pin is latched at reset. This pin determines specific peripheral selection, summarized in
Table 2−1.
Table 2−1. MAC_EN Peripheral Selection (EMAC and MDIO)
PERIPHERAL SELECTION
68
PERIPHERALS SELECTED
MAC_EN
Pin [C5]
HPI Data
(16-Bit) [DM641 Only]
EMAC and MDIO
0
√
Disabled
1
√
√
SPRS222C
June 2003 − Revised August 2004
Device Configurations
2.1.2
Device Configuration at Device Reset
Table 2−2 describes the DM641/DM640 device configuration pins, which are set up via external
pullup/pulldown resistors through the specified EMIFA address bus pins (AEA[22:19]) and the
TOUT1/LENDIAN pin (all of which are latched during device reset).
Table 2−2. DM641/DM640 Device Configuration Pins
(TOUT1/LENDIAN, AEA[22:19], and TOUT0/MAC_EN)
CONFIGURATION
PIN
NO.
TOUT1/LENDIAN
B5
AEA[22:21]
AEA[20:19]
FUNCTIONAL DESCRIPTION
Device Endian mode (LEND)
0 – System operates in Big Endian mode
1 − System operates in Little Endian mode (default)
[U23,
V24]
Bootmode [1:0]
− Boot mode (AEA[22:21]):
00 – No boot (default mode)
01 − HPI [DM641 only]; Reserved [For DM640 device]
10 − Reserved
11 − EMIFA boot
[V25,
V26]
EMIFA input clock select
Clock mode select for EMIFA (AECLKIN_SEL[1:0])
00 – AECLKIN (default mode)
01 − CPU/4 Clock Rate
10 − CPU/6 Clock Rate
11 − Reserved
Peripheral Selection
TOUT0/MAC_EN
2.2
2.2.1
C5
1 − EMAC and MDIO enabled
0 − EMAC and MDIO disabled
Configurations After Reset
Peripheral Selection After Device Reset
Video Ports, McBSP1, McBSP0, McASP0, and I2C0
The DM641/DM640 device has designated registers for peripheral configuration (PERCFG), device status
(DEVSTAT), and JTAG identification (JTAGID). These registers are part of the Device Configuration module
and are mapped to a 4K block memory starting at 0x01B3F000. The CPU accesses these registers via the
CFGBUS.
The peripheral configuration register (PERCFG), allows the user to control the peripheral selection of the
Video Ports (VP0 and VP1 [DM641 only]) McBSP0, McBSP1, McASP0, and I2C0 peripherals. For more
detailed information on the PERCFG register control bits, see Figure 2−1 and Table 2−3.
June 2003 − Revised August 2004
SPRS222C
69
Device Configurations
31
24
Reserved
R-0
16
23
Reserved
R-0
8
15
Reserved
R-0
7
6
5
4
3
2
1
0
Reserved
Reserved
VP1EN†
VP0EN
I2C0EN
MCBSP1EN
MCBSP0EN
MCASP0EN
R-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-1
R/W-1
R/W-0
Legend: R = Read only; R/W = Read/Write; -n = value after reset
† The DM640 device does not support the VP1 peripheral; therefore, this bit is Reserved.
Figure 2−1. Peripheral Configuration Register (PERCFG) [Address Location: 0x01B3F000 − 0x01B3F003]
Table 2−3. Peripheral Configuration (PERCFG) Register Selection Bit Descriptions
BIT
NAME
31:6
Reserved
5
VP1EN
DESCRIPTION
Reserved. Read-only, writes have no effect.
VP1 Enable bit [DM641 only].
Determines whether the VP1 peripheral is enabled or disabled.
0 = VP1 is disabled, and the module is powered down (default).
(This feature allows power savings by disabling the peripheral when not in use.)
1 = VP1 is enabled.
The DM640 device does not support the VP1 peripheral; therefore, this bit is Reserved.
4
VP0EN
VP0 Enable bit.
Determines whether the VP0 peripheral is enabled or disabled.
0 = VP0 is disabled, and the module is powered down (default).
(This feature allows power savings by disabling the peripheral when not in use.)
1 = VP0 is enabled.
3
I2C0EN
Inter-integrated circuit 0 (I2C0) enable bit.
Selects whether I2C0 peripheral is enabled or disabled (default).
0 = I2C0 is disabled, and the module is powered down (default).
1 = I2C0 is enabled.
2
70
MCBSP1EN
SPRS222C
Video Port 1 (VP1) lower data pins vs. McBSP1 enable bit.
Selects whether VP1 peripheral lower-data pins or the McBSP1 peripheral is enabled.
0 = VP1 lower-data pins are enabled and function (if VP1EN=1), McBSP1 is disabled; the
remaining VP1 upper-data pins are dependent on the MCASP0EN bit and the VP1EN bit
settings.
1 = McBSP1 is enabled, VP1 lower-data pin functions are disabled (default).
For a graphic (logic) representation of this Peripheral Configuration (PERCFG) Register selection bit and
the signal pins controlled/selected, see Figure 2−2.
June 2003 − Revised August 2004
Device Configurations
Table 2−3. Peripheral Configuration (PERCFG) Register Selection Bit Descriptions (Continued)
BIT
1
0
NAME
DESCRIPTION
MCBSP0EN
Video Port 0 (VP0) lower data pins vs. McBSP0 enable bit.
Selects whether VP0 peripheral lower-data pins or the McBSP1 peripheral is enabled.
0 = VP0 lower-data pins are enabled and function (if VP0EN=1), McBSP0 is disabled; the
remaining VP0 upper-data pins are dependent on the MCASP0EN bit and the VP1EN bit
settings.
1 = McBSP0 is enabled, VP0 lower-data pin functions are disabled (default).
For a graphic (logic) representation of this Peripheral Configuration (PERCFG) Register selection bit and
the signal pins controlled/selected, see Figure 2−2.
MCASP0EN
McASP0 select bit.
Selects whether the McASP0 peripheral or the VP0 and VP1 upper-data pins are enabled.
0 = Reserved [default].
1 = McASP0 is enabled.
For proper DM641/DM640 device operation, the pin must be set to a “1”.
McBSP0EN [PERCFG.1]
VP0 Data (8 pins)
VP0D[6:0] Muxed†
VP0D[7] Standalone
1
McBSP0
0
VP0 (Channel A)
McBSP1EN [PERCFG.2]
VP1 Data (8 pins)
VP1D[6:0] Muxed‡
VP1D[7] Standalone
1
McBSP1
0
VP1 (Channel A) [DM641 Only]
† Consists of: VP0D[6]/CLKR0, VP0D[5]/FSR0, VP0D[4]/DR0, VP0D[3]/CLKS0, VP0D[2]/DX0, VP0D[1]/FSX0, VP0D[0]/CLKX0.
‡ Consists of: VP1D[6]/CLKR1, VP1D[5]/FSR1, VP1D[4]/DR1, VP1D[3]/CLKS1, VP1D[2]/DX1, VP1D[1]/FSX1, VP1D[0]/CLKX1.
Figure 2−2. VP1, VP0, McBSP1, and McBSP0 Pin Muxing
June 2003 − Revised August 2004
SPRS222C
71
Device Configurations
2.3
Peripheral Configuration Lock
By default, the McASP0, VP0, VP1 [DM641 only], and I2C peripherals are disabled on power up. In order to
use these peripherals on the DM641/DM640 device, the peripheral must first be enabled in the Peripheral
Configuration register (PERCFG). Software muxed pins should not be programmed to switch
functionalities during run-time. Care should also be taken to ensure that no accesses are being
performed before disabling the peripherals. To help minimize power consumption in the DM641/DM640
device, unused peripherals may be disabled.
Figure 2−3 shows the flow needed to enable (or disable) a given peripheral on the DM641/DM640 devices.
Unlock the PERCFG Register
Using the PCFGLOCK Register
Write to
PERCFG Register
to Enable/Disable Peripherals
Read from
PERCFG Register
Wait 128 CPU Cycles Before
Accessing Enabled Peripherals
Figure 2−3. Peripheral Enable/Disable Flow Diagram
A 32-bit key (value = 0x10C0010C) must be written to the Peripheral Configuration Lock register
(PCFGLOCK) in order to unlock access to the PERCFG register. Reading the PCFGLOCK register
determines whether the PERCFG register is currently locked (LOCKSTAT bit = 1) or unlocked (LOCKSTAT
bit = 0), see Figure 2−4. A peripheral can only be enabled when the PERCFG register is “unlocked”
(LOCKSTAT bit = 0).
72
SPRS222C
June 2003 − Revised August 2004
Device Configurations
Read Accesses
31
1
0
Reserved
LOCKSTAT
R-0
R-1
Write Accesses
31
0
LOCK
W-0
Legend: R = Read only; R/W = Read/Write; -n = value after reset
Figure 2−4. PCFGLOCK Register Diagram [Address Location: 0x01B3 F018] − Read/Write Accesses
Table 2−4. PCFGLOCK Register Selection Bit Descriptions − Read Accesses
BIT
NAME
31:1
Reserved
0
LOCKSTAT
DESCRIPTION
Reserved. Read-only, writes have no effect.
Lock status bit.
Determines whether the PERCFG register is locked or unlocked.
0 = Unlocked, read accesses to the PERCFG register allowed.
1 = Locked, write accesses to the PERCFG register do not modify the register state [default].
Reads are unaffected by Lock Status.
Table 2−5. PCFGLOCK Register Selection Bit Descriptions − Write Accesses
BIT
31:0
NAME
LOCK
DESCRIPTION
Lock bits.
0x10C0010C = Unlocks PERCFG register accesses.
Any write to the PERCFG register will automatically relock the register. In order to avoid the unnecessary
overhead of multiple unlock/enable sequences, all peripherals should be enabled with a single write to the
PERCFG register with the necessary enable bits set.
Prior to waiting 128 CPU cycles, the PERCFG register should be read. There is no direct correlation between
the CPU issuing a write to the PERCFG register and the write actually occurring. Reading the PERCFG
register after the write is issued forces the CPU to wait for the write to the PERCFG register to occur.
Once a peripheral is enabled, the DSP (or other peripherals such as the HPI) must wait a minimum of 128 CPU
cycles before accessing the enabled peripheral. The user must ensure that no accesses are performed to a
peripheral while it is disabled.
June 2003 − Revised August 2004
SPRS222C
73
Device Configurations
2.4
Device Status Register Description
The device status register depicts the status of the device peripheral selection. For the actual register bit
names and their associated bit field descriptions, see Figure 2−5 and Table 2−6.
31
24
Reserved
R-0
16
23
Reserved
R-0
15
11
10
9
8
Reserved
MAC_EN
Reserved
Reserved
Reserved
R-0
R-x
R-0
R-x
R-0
14
13
12
7
6
5
4
3
2
1
0
Reserved
CLKMODE1
CLKMODE0
LENDIAN
BOOTMODE1
BOOTMODE0
AECLKINSEL1
AECLKINSEL0
R-x
R-x
R-x
R-x
R-x
R-x
R-x
R-x
Legend: R = Read only; R/W = Read/Write; -n = value after reset
Figure 2−5. Device Status Register (DEVSTAT) Description − 0x01B3 F004
Table 2−6. Device Status (DEVSTAT) Register Selection Bit Descriptions
BIT
NAME
31:12
Reserved
Reserved. Read-only, writes have no effect.
11
MAC_EN
EMAC enable bit.
Shows the status of whether EMAC peripheral is enabled or disabled (default).
0 = EMAC is disabled, and the module is powered down (default).
1 = EMAC is enabled.
10:7
Reserved
Reserved. Read-only, writes have no effect.
74
6
CLKMODE1
5
CLKMODE0
4
LENDIAN
3
BOOTMODE1
2
BOOTMODE0
SPRS222C
DESCRIPTION
Clock mode select bits
Shows the status of whether the CPU clock frequency equals the input clock frequency X1 (Bypass), x6,
or x12.
Clock mode select for CPU clock frequency (CLKMODE[1:0])
00 – Bypass (x1) (default mode)
01 − x6
10 − x12
11 − Reserved
For more details on the CLKMODE pins and the PLL multiply factors, see the Clock PLL section of this
data sheet.
Device Endian mode (LEND)
Shows the status of whether the system is operating in Big Endian mode or Little Endian mode (default).
0 – System is operating in Big Endian mode
1 − System is operating in Little Endian mode (default)
Bootmode configuration bits
Shows the status of what device bootmode configuration is operational.
Bootmode [1:0]
00 – No boot (default mode)
01 − HPI [DM641 only]; Reserved [For DM640 device]
10 − Reserved
11 − EMIFA boot
June 2003 − Revised August 2004
Device Configurations
Table 2−6. Device Status (DEVSTAT) Register Selection Bit Descriptions (Continued)
BIT
NAME
1
AECLKINSEL1
0
AECLKINSEL0
DESCRIPTION
EMIFA input clock select
Shows the status of what clock mode is enabled or disabled for the EMIF.
Clock mode select for EMIFA (AECLKIN_SEL[1:0])
00 – AECLKIN (default mode)
01 − CPU/4 Clock Rate
10 − CPU/6 Clock Rate
11 − Reserved
June 2003 − Revised August 2004
SPRS222C
75
Device Configurations
2.5
Multiplexed Pin Configurations
Multiplexed pins are pins that are shared by more than one peripheral and are internally multiplexed. Some
of these pins are configured by software, and the others are configured by external pullup/pulldown resistors
only at reset. Those muxed pins that are configured by software should not be programmed to switch
functionalities during run-time. Those muxed pins that are configured by external pullup/pulldown resistors
are mutually exclusive; only one peripheral has primary control of the function of these pins after reset.
Table 2−7 identifies the multiplexed pins on the DM641/DM640 device; shows the default (primary) function
and the default settings after reset; and describes the pins, registers, etc. necessary to configure specific
multiplexed functions.
Table 2−7. DM641/DM640 Device Multiplexed Pin Configurations
MULTIPLEXED PINS
NAME
NO.
DEFAULT
FUNCTION
DEFAULT
SETTING
CLKOUT4/GP0[1]
D6
CLKOUT4
GP1EN = 0 (disabled)
CLKOUT6/GP0[2]
C6
CLKOUT6
GP2EN = 0 (disabled)
VP1D[6]/CLKR1
AD8
VP1D[5]/FSR1
AC7
VP1D[4]/DR1
AD7
VP1D[3]/CLKS1
AE7
VP1D[2]/DX1
AC6
VP1D[1]/FSX1
AD6
VP1D[0]/CLKX1
AE6
VP0D[6]/CLKR0
AE15
VP0D[5]/FSR0
AB16
VP0D[4]/DR0
AC16
VP0D[3]/CLKS0
AD16
VP0D[2]/DX0
AE16
VP0D[1]/FSX0
AF16
VP0D[0]/CLKX0
AF17
76
SPRS222C
McBSP1
functions
VP1EN bit = 0
(disabled)
MCBSP1EN bit = 1
(enabled)
McBSP0
functions
VP0EN bit = 0
(disabled)
MCBSP0EN bit = 1
(enabled)
DESCRIPTION
These pins are software-configurable. To use these pins as
GPIO pins, the GPxEN bits in the GPIO Enable Register and
the GPxDIR bits in the GPIO Direction Register must be
properly configured.
GPxEN = 1:
GPx pin enabled
GPxDIR = 0:
GPx pin is an input
GPxDIR = 1:
GPx pin is an output
Muxed on the DM641 device only
[The DM640 device does not support the VP1 peripheral;
therefore, the McBSP1 peripheral pins are standalone
peripheral functions, not muxed.]
By default, the McBSP1 peripheral, function is enabled upon
reset (MCBSP1EN bit = 1).
To enable the Video Port 1 data pins, the VP1EN bit in the
PERCFG register must be set to a 1.
By default, the McBSP0 peripheral function is enabled upon
reset (MCBSP0EN bit = 1).
To enable the Video Port 0 data pins, the VP0EN bit in the
PERCFG register must be set to a 1.
June 2003 − Revised August 2004
Device Configurations
2.6
Debugging Considerations
It is recommended that external connections be provided to device configuration pins, including
TOUT1/LENDIAN, AEA[22:19] and TOUT0/MAC_EN. Although internal pullup/pulldown resistors exist on
these pins, providing external connectivity adds convenience to the user in debugging and flexibility in
switching operating modes.
Internal pullup/pulldown resistors also exist on the non-configuration pins on the AEA bus (AEA[18:0]). Do not
oppose the internal pullup/pulldown resistors on these non-configuration pins with external pullup/pulldown
resistors. If an external controller provides signals to these non-configuration pins, these signals must be
driven to the default state of the pins at reset, or not be driven at all.
For the internal pullup/pulldown resistors for all device pins, see the terminal functions table.
2.7
Configuration Examples
Figure 2−6 through Figure 2−9 illustrate examples of peripheral selections that are configurable on the DM641
and DM640 devices.
June 2003 − Revised August 2004
SPRS222C
77
Device Configurations
32
AED[31:0]
EMIFA
HD[15:0]
16
HPI
(16-Bit)
HRDY, HINT
HCNTL0, HCNTL1,
HHWIL, HAS, HR/W,
HCS, HDS1, HDS2
AECLKIN, AARDY, AHOLD
AEA[22:3], ACE[3:0], ABE[3:0],
AECLKOUT1, AECLKOUT2,
ASDCKE, ASOE3, APDT,
AHOLDA, ABUSREQ,
AARE/ASDCAS/ASADS/ASRE,
AAOE/ASDRAS/ASOE,
AAWE/ASDWE/ASWE
Clock
and
System
CLKIN,
CLKMODE0, CLKMODE1
MTXD[3:0], MTXEN
EMAC
TIMER2
MDIO
TIMER1
CLKOUT4, CLKOUT6, PLLV
MRXD[3:0], MRXER,
MRXDV, MCOL, MCRS,
MTCLK, MRCLK
TINP1
MDIO, MDCLK
TOUT1/LENDIAN
STCLK†
VP0CLK0
VP0CLK1,
VP0CTL[2:0],
VP0D[7:0]
AHCLKX0, AFSX0,
ACLKX0, AMUTE0,
AMUTEIN0,
AHCLKR0, AFSR0,
ACLKR0
TINP0
VP0
(8-Bit)
TIMER0
McBSP0
GP0
and
EXT_INT
TOUT0/MAC_EN
GP0[3:0]
GP0[7:4]
McASP0 Control
SCL0
I2C0
SDA0
McASP0 Data
AXR0[3:0]
McBSP1
VDAC
VIC
STCLK†
VP1
(8-Bit)
VP1CLK0
VP1CLK1,
VP1CTL[2:0],
VP1D[7:0]
Shading denotes a peripheral module not available for this configuration.
† STCLK supports both video ports (VP1 and VP0).
PERCFG Register Value:
Extenal Pins:
0x0000 0039
TOUT0/MAC_EN = 1
Figure 2−6. Configuration Example A for DM641
(2 8-Bit Video Ports + 1 McASP0 + VIC + I2C0 + EMIF)
[TBD Application]
78
SPRS222C
June 2003 − Revised August 2004
Device Configurations
32
AED[31:0]
EMIFA
HD[15:0]
16
HPI
(16-Bit)
HRDY, HINT
HCNTL0, HCNTL1,
HHWIL, HAS, HR/W,
HCS, HDS1, HDS2
Clock
and
System
AECLKIN, AARDY, AHOLD
AEA[22:3], ACE[3:0], ABE[3:0],
AECLKOUT1, AECLKOUT2,
ASDCKE, ASOE3, APDT,
AHOLDA, ABUSREQ,
AARE/ASDCAS/ASADS/ASRE,
AAOE/ASDRAS/ASOE,
AAWE/ASDWE/ASWE
CLKIN,
CLKMODE0, CLKMODE1
MTXD[3:0], MTXEN
EMAC
TIMER2
MDIO
TIMER1
MRXD[3:0], MRXER,
MRXDV, MCOL, MCRS,
MTCLK, MRCLK
CLKOUT4, CLKOUT6, PLLV
TINP1
MDIO, MDCLK
TOUT1/LENDIAN
CLKR0, FSR0, DR0,
CLKS0, DX0, FSX0,
CLKX0
AHCLKX0, AFSX0,
ACLKX0, AMUTE0,
AMUTEIN0, AHCLKR0,
AFSR0, ACLKR0
AXR0[3:0]
TINP0
VP0
(8-Bit)
TIMER0
McBSP0
GP0
and
EXT_INT
TOUT0/MAC_EN
McASP0 Control
GP0[3:0]
GP0[7:4]
SCL0
I2C0
SDA0
McASP0 Data
CLKR1, FSR1, DR1,
CLKS1, DX1, FSX1,
CLKX1
McBSP1
VIC
VDAC
VP1
(8-Bit)
Shading denotes a peripheral module not available for this configuration.
PERCFG Register Value:
Extenal Pins:
0x0000 000F
TOUT0/MAC_EN = 1
Figure 2−7. Configuration Example B for DM641
(1 McASP0 + 2 McBSPs + VIC + I2C0 + EMIF)
[TBD Application]
June 2003 − Revised August 2004
SPRS222C
79
Device Configurations
32
AED[31:0]
EMIFA
AECLKIN, AARDY, AHOLD
AEA[22:3], ACE[3:0], ABE[3:0],
AECLKOUT1, AECLKOUT2,
ASDCKE, ASOE3, APDT,
AHOLDA, ABUSREQ,
AARE/ASDCAS/ASADS/ASRE,
AAOE/ASDRAS/ASOE,
AAWE/ASDWE/ASWE
Clock
and
System
CLKIN,
CLKMODE0, CLKMODE1
MTXD[3:0], MTXEN
EMAC
TIMER2
MDIO
TIMER1
CLKOUT4, CLKOUT6, PLLV
MRXD[3:0], MRXER,
MRXDV, MCOL, MCRS,
MTCLK, MRCLK
TINP1
MDIO, MDCLK
TOUT1/LENDIAN
STCLK
VP0CLK0
VP0CLK1,
VP0CTL[2:0],
VP0D[7:0]
AHCLKX0, AFSX0,
ACLKX0, AMUTE0,
AMUTEIN0,
AHCLKR0, AFSR0,
ACLKR0
TINP0
VP0
(8-Bit)
TIMER0
McBSP0
GP0
and
EXT_INT
TOUT0/MAC_EN
GP0[3:0]
GP0[7:4]
McASP0 Control
SCL0
I2C0
SDA0
McASP0 Data
AXR0[3:0]
McBSP1
VDAC
VIC
Shading denotes a peripheral module not available for this configuration.
PERCFG Register Value:
Extenal Pins:
0x0000 0019
TOUT0/MAC_EN = 1
Figure 2−8. Configuration Example A for DM640
(1 8-Bit Video Port + 1 McASP0 + VIC + I2C0 + EMIF)
[TBD Application]
80
SPRS222C
June 2003 − Revised August 2004
Device Configurations
32
AED[31:0]
EMIFA
Clock
and
System
AECLKIN, AARDY, AHOLD
AEA[22:3], ACE[3:0], ABE[3:0],
AECLKOUT1, AECLKOUT2,
ASDCKE, ASOE3, APDT,
AHOLDA, ABUSREQ,
AARE/ASDCAS/ASADS/ASRE,
AAOE/ASDRAS/ASOE,
AAWE/ASDWE/ASWE
CLKIN,
CLKMODE0, CLKMODE1
MTXD[3:0], MTXEN
EMAC
TIMER2
MDIO
TIMER1
MRXD[3:0], MRXER,
MRXDV, MCOL, MCRS,
MTCLK, MRCLK
CLKOUT4, CLKOUT6, PLLV
TINP1
MDIO, MDCLK
TOUT1/LENDIAN
CLKR0, FSR0, DR0,
CLKS0, DX0, FSX0,
CLKX0
AHCLKX0, AFSX0,
ACLKX0, AMUTE0,
AMUTEIN0, AHCLKR0,
AFSR0, ACLKR0
AXR0[3:0]
TINP0
VP0
(8-Bit)
TIMER0
McBSP0
GP0
and
EXT_INT
TOUT0/MAC_EN
McASP0 Control
GP0[3:0]
GP0[7:4]
SCL0
I2C0
SDA0
McASP0 Data
CLKR1, FSR1, DR1,
CLKS1, DX1, FSX1,
CLKX1
McBSP1
VIC
VDAC
Shading denotes a peripheral module not available for this configuration.
PERCFG Register Value:
Extenal Pins:
0x0000 000F
TOUT0/MAC_EN = 1
Figure 2−9. Configuration Example B for DM640
(1 McASP0 + 2 McBSPs + VIC + I2C0 + EMIF)
[TBD Application]
June 2003 − Revised August 2004
SPRS222C
81
Device Operating Conditions
3
Device Operating Conditions
3.1
Absolute Maximum Ratings Over Operating Case Temperature Range (Unless Otherwise
Noted)†
Supply voltage ranges:
CVDD (see Note 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . − 0.3 V to 1.8 V
DVDD (see Note 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . −0.3 V to 4 V
Input voltage ranges:
VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . −0.3 V to 4 V
Output voltage ranges:
VO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . −0.3 V to 4 V
Operating case temperature ranges, TC: (default) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0_C to 90_C
Storage temperature range, Tstg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . −65_C to 150_C
† 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 “recommended operating conditions” is not
implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability.
NOTE 1: All voltage values are with respect to VSS.
3.2
Recommended Operating Conditions
MIN
NOM
MAX
UNIT
1.14
1.2
1.26
V
CVDD
Supply voltage, Core (-400 and -500 devices)‡
Supply voltage, Core (-600 device)‡
1.36
1.4
1.44
V
DVDD
Supply voltage, I/O
3.14
3.3
3.46
V
VSS
VIH
Supply ground
0
0
0
V
High-level input voltage
2
VIL
VOS
Low-level input voltage
Maximum voltage during overshoot/undershoot
−1.0§
V
0.8
4.3§
V
V
TC
Operating case temperature
0
90
_C
‡ Future variants of the C64x DSPs may operate at voltages ranging from 0.9 V to 1.4 V to provide a range of system power/performance options.
TI highly recommends that users design-in a supply that can handle multiple voltages within this range (i.e., 1.2 V, 1.25 V, 1.3 V, 1.35 V, 1.4 V
with ± 3% tolerances) by implementing simple board changes such as reference resistor values or input pin configuration modifications. Examples
of such supplies include the PT4660, PT5500, PT5520, PT6440, and PT6930 series from Power Trends, a subsidiary of Texas Instruments. Not
incorporating a flexible supply may limit the system’s ability to easily adapt to future versions of C64x devices.
§ The absolute maximum ratings should not be exceeded for more than 30% of the cycle period.
82
SPRS222C
June 2003 − Revised August 2004
Device Operating Conditions
3.3
Electrical Characteristics Over Recommended Ranges of Supply Voltage and Operating
Case Temperature (Unless Otherwise Noted)
PARAMETER
VOH
VOL
TEST CONDITIONS†
High-level output voltage
DVDD = MIN,
Low-level output voltage
DVDD = MIN,
IOH = MAX
IOL = MAX
MIN
TYP
Input current
High-level output current
uA
VI = VSS to DVDD opposing internal
pulldown resistor‡
−150
−100
−50
uA
−16
mA
−8
mA
−0.5
mA
16
mA
8
mA
3
mA
1.5
mA
Video Ports, Timer, TDO, GPIO
(Excluding GP0[2,1]), McBSP
Video Ports, Timer, TDO, GPIO
(Excluding GP0[2,1]), McBSP
HPI [DM641]
ICDD
IDDD
Ci
Off-state output current
Core supply current§
I/O supply current§
Input capacitance
uA
150
SCL0 and SDA0
IOZ
±10
100
EMIF, CLKOUT4, CLKOUT6, EMUx
Low-level output current
V
50
HPI [DM641]
IOL
0.4
VI = VSS to DVDD opposing internal
pullup resistor‡
EMIF, CLKOUT4, CLKOUT6, EMUx
IOH
UNIT
V
VI = VSS to DVDD no opposing internal
resistor
II
MAX
2.4
±10
VO = DVDD or 0 V
CVDD = 1.4 V, CPU clock = 600 MHz
890
mA
uA
CVDD = 1.2 V, CPU clock = 500 MHz
620
mA
CVDD = 1.2 V, CPU clock = 400 MHz
510
mA
DVDD = 3.3 V, CPU clock = 600 MHz
210
mA
DVDD = 3.3 V, CPU clock = 500 MHz
165
mA
DVDD = 3.3 V, CPU clock = 400 MHz
160
mA
10
pF
Co
Output capacitance
10
pF
† For test conditions shown as MIN, MAX, or NOM, use the appropriate value specified in the recommended operating conditions table.
‡ Applies only to pins with an internal pullup (IPU) or pulldown (IPD) resistor.
§ Measured with average activity (50% high/50% low power) at 25°C case temperature and 133-MHz EMIF for -600 speed (100-MHz EMIF for
-500 and -400 speeds). This model represents a device performing high-DSP-activity operations 50% of the time, and the remainder performing
low-DSP-activity operations. The high/low-DSP-activity models are defined as follows:
High-DSP-Activity Model:
CPU: 8 instructions/cycle with 2 LDDW instructions [L1 Data Memory: 128 bits/cycle via LDDW instructions;
L1 Program Memory: 256 bits/cycle; L2/EMIF EDMA: 50% writes, 50% reads to/from SDRAM (50% bit-switching)]
McBSP: 2 channels at E1 rate
Timers: 2 timers at maximum rate
Low-DSP-Activity Model:
CPU: 2 instructions/cycle with 1 LDH instruction [L1 Data Memory: 16 bits/cycle; L1 Program Memory: 256 bits per 4 cycles;
L2/EMIF EDMA: None]
McBSP: 2 channels at E1 rate
Timers: 2 timers at maximum rate
The actual current draw is highly application-dependent. For more details on core and I/O activity, refer to the TMS320DMx Power Consumption
Summary application report (literature number SPRA962).
June 2003 − Revised August 2004
SPRS222C
83
DM641/DM640 Peripheral Information and Electrical Specifications
4
DM641/DM640 Peripheral Information and Electrical Specifications
4.1
Parameter Information
4.1.1
Parameter Information Device-Specific Information
Tester Pin Electronics
42 Ω
Data Sheet Timing Reference Point
Output
Under
Test
3.5 nH
Transmission Line
Z0 = 50 Ω
(see note)
4.0 pF
Device Pin
(see note)
1.85 pF
NOTE: The data sheet provides timing at the device pin. For output timing analysis, the tester pin electronics and its transmission line effects
must be taken into account. A transmission line with a delay of 2 ns or longer can be used to produce the desired transmission line effect.
The transmission line is intended as a load only. It is not necessary to add or subtract the transmission line delay (2 ns or longer) from
the data sheet timings.
Input requirements in this data sheet are tested with an input slew rate of < 4 Volts per nanosecond (4 V/ns) at the device pin.
Figure 4−1. Test Load Circuit for AC Timing Measurements
The load capacitance value stated is only for characterization and measurement of AC timing signals. This
load capacitance value does not indicate the maximum load the device is capable of driving.
4.1.1.1
Signal Transition Levels
All input and output timing parameters are referenced to 1.5 V for both “0” and “1” logic levels.
Vref = 1.5 V
Figure 4−2. Input and Output Voltage Reference Levels for AC Timing Measurements
All rise and fall transition timing parameters are referenced to VIL MAX and VIH MIN for input clocks, VOL MAX
and VOH MIN for output clocks.
Vref = VIH MIN (or VOH MIN)
Vref = VIL MAX (or VOL MAX)
Figure 4−3. Rise and Fall Transition Time Voltage Reference Levels
4.1.1.2
Signal Transition Rates
All timings are tested with an input edge rate of 4 Volts per nanosecond (4 V/ns).
84
SPRS222C
June 2003 − Revised August 2004
Parameter Information
4.1.1.3
Timing Parameters and Board Routing Analysis
The timing parameter values specified in this data sheet do not include delays by board routings. As a good
board design practice, such delays must always be taken into account. Timing values may be adjusted by
increasing/decreasing such delays. TI recommends utilizing the available I/O buffer information specification
(IBIS) models to analyze the timing characteristics correctly. To properly use IBIS models to attain accurate
timing analysis for a given system, see the Using IBIS Models for Timing Analysis application report (literature
number SPRA839). If needed, external logic hardware such as buffers may be used to compensate any timing
differences.
For inputs, timing is most impacted by the round-trip propagation delay from the DSP to the external device
and from the external device to the DSP. This round-trip delay tends to negatively impact the input setup time
margin, but also tends to improve the input hold time margins (see Table 4−1 and Figure 4−4).
Figure 4−4 represents a general transfer between the DSP and an external device. The figure also represents
board route delays and how they are perceived by the DSP and the external device.
Table 4−1. Board-Level Timing Example (see Figure 4−4)
NO.
DESCRIPTION
1
Clock route delay
2
Minimum DSP hold time
3
Minimum DSP setup time
4
External device hold time requirement
5
External device setup time requirement
6
Control signal route delay
7
External device hold time
8
External device access time
9
DSP hold time requirement
10
DSP setup time requirement
11
Data route delay
ECLKOUTx
(Output from DSP)
1
ECLKOUTx
(Input to External Device)
Control Signals†
(Output from DSP)
2
3
4
5
Control Signals
(Input to External Device)
6
7
Data Signals‡
(Output from External Device)
8
10
9
11
Data Signals‡
(Input to DSP)
† Control signals include data for Writes.
‡ Data signals are generated during Reads from an external device.
Figure 4−4. Board-Level Input/Output Timings
4.2
Recommended Clock and Control Signal Transition Behavior
All clocks and control signals must transition between VIH and VIL (or between VIL and VIH) in a monotonic
manner.
June 2003 − Revised August 2004
SPRS222C
85
Power Supplies
4.3
Power Supplies
For more information regarding TI’s power management products and suggested devices to power TI DSPs,
visit www.ti.com/dsppower.
4.3.1
Power-Supply Sequencing
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
(>1 second) if the other supply is below the proper operating voltage.
4.3.2
Power-Supply Design Considerations
A dual-power supply with simultaneous sequencing can be used to eliminate the delay between core and I/O
power up. A Schottky diode can also be used to tie the core rail to the I/O rail (see Figure 4−5).
I/O Supply
DVDD
Schottky
Diode
C6000
DSP
Core Supply
CVDD
VSS
GND
Figure 4−5. Schottky Diode Diagram
Core and I/O supply voltage regulators should be located close to the DSP (or DSP array) to minimize
inductance and resistance in the power delivery path. Additionally, when designing for high-performance
applications utilizing the C6000 platform of DSPs, the PC board should include separate power planes for
core, I/O, and ground, all bypassed with high-quality low-ESL/ESR capacitors.
4.3.3
Power-Supply Decoupling
In order to properly decouple the supply planes from system noise, place as many capacitors (caps) as
possible close to the DSP. Assuming 0603 caps, the user should be able to fit a total of 60 caps, 30 for the
core supply and 30 for the I/O supply. These caps need to be close to the DSP power pins, no more than
1.25 cm maximum distance to be effective. Physically smaller caps, such as 0402, are better because of their
lower parasitic inductance. Proper capacitance values are also important. Small bypass caps (near 560 pF)
should be closest to the power pins. Medium bypass caps (220 nF or as large as can be obtained in a small
package) should be next closest. TI recommends no less than 8 small and 8 medium caps per supply (32 total)
be placed immediately next to the BGA vias, using the “interior” BGA space and at least the corners of the
“exterior”.
Eight larger caps (4 for each supply) can be placed further away for bulk decoupling. Large bulk caps (on the
order of 100 µF) should be furthest away (but still as close as possible). No less than 4 large caps per supply
(8 total) should be placed outside of the BGA.
Any cap selection needs to be evaluated from a yield/manufacturing point-of-view. As with the selection of any
component, verification of capacitor availability over the product’s production lifetime should be considered.
86
SPRS222C
June 2003 − Revised August 2004
Power Supplies
4.3.4
Peripheral Power-Down Operation
The DM641/DM640 device can be powered down in three ways:
•
•
•
Power-down due to pin configuration
Power-down due to software configuration − relates to the default state of the peripheral configuration bits
in the PERCFG register.
Power-down during run-time via software configuration
On the DM641/DM640 device, the EMAC and MDIO peripherals are controlled (selected) at the pin level
during chip reset (e.g., using the MAC_EN pin).
The McASP0, McBSP0, McBSP1, VP0, VP1 [DM641 only], and I2C0 peripheral functions are selected via the
peripheral configuration (PERCFG) register bits.
For more detailed information on the peripheral configuration pins and the PERCFG register bits, see the
Device Configurations section of this document.
4.3.5
Power-Down Modes Logic
Figure 4−6 shows the power-down mode logic on the DM641/DM640.
CLKOUT4
CLKOUT6
Internal Clock Tree
Clock
Distribution
and Dividers
PD1
PD2
PowerDown
Logic
Clock
PLL
IFR
IER
Internal
Peripherals
PWRD CSR
CPU
PD3
TMS320DM641/DM640
CLKIN
RESET
† External input clocks, with the exception of CLKIN, are not gated by the power-down mode logic.
Figure 4−6. Power-Down Mode Logic†
June 2003 − Revised August 2004
SPRS222C
87
Power Supplies
4.3.6
Triggering, Wake-up, and Effects
The power-down modes and their wake-up methods are programmed by setting the PWRD field (bits 15−10)
of the control status register (CSR). The PWRD field of the CSR is shown in Figure 4−7 and described in
Table 4−2. When writing to the CSR, all bits of the PWRD field should be set at the same time. Logic 0 should
be used when writing to the reserved bit (bit 15) of the PWRD field. The CSR is discussed in detail in the
TMS320C6000 CPU and Instruction Set Reference Guide (literature number SPRU189).
31
16
15
14
13
12
11
10
Reserved
Enable or
Non-Enabled
Interrupt Wake
Enabled
Interrupt Wake
PD3
PD2
PD1
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
7
9
8
0
Legend: R/W−x = Read/write reset value
NOTE: The shadowed bits are not part of the power-down logic discussion and therefore are not covered here. For information on these other
bit fields in the CSR register, see the TMS320C6000 CPU and Instruction Set Reference Guide (literature number SPRU189).
Figure 4−7. PWRD Field of the CSR Register
A delay of up to nine clock cycles may occur after the instruction that sets the PWRD bits in the CSR before the
PD mode takes effect. As best practice, NOPs should be padded after the PWRD bits are set in the CSR to
account for this delay.
If PD1 mode is terminated by a non-enabled interrupt, the program execution returns to the instruction where
PD1 took effect. If PD1 mode is terminated by an enabled interrupt, the interrupt service routine will be executed
first, then the program execution returns to the instruction where PD1 took effect. In the case with an enabled
interrupt, the GIE bit in the CSR and the NMIE bit in the interrupt enable register (IER) must also be set in order
for the interrupt service routine to execute; otherwise, execution returns to the instruction where PD1 took effect
upon PD1 mode termination by an enabled interrupt.
PD2 and PD3 modes can only be aborted by device reset. Table 4−2 summarizes all the power-down modes.
88
SPRS222C
June 2003 − Revised August 2004
Power Supplies
Table 4−2. Characteristics of the Power-Down Modes
PRWD FIELD
(BITS 15−10)
POWER-DOWN
MODE
WAKE-UP METHOD
000000
No power-down
—
001001
PD1
Wake by an enabled interrupt
010001
PD1
Wake by an enabled or
non-enabled interrupt
011010
011100
PD2†
PD3†
EFFECT ON CHIP’S OPERATION
—
CPU halted (except for the interrupt logic)
Power-down mode blocks the internal clock inputs at the
boundary of the CPU, preventing most of the CPU’s logic from
switching. During PD1, EDMA transactions can proceed between
peripherals and internal memory.
Wake by a device reset
Output clock from PLL is halted, stopping the internal clock
structure from switching and resulting in the entire chip being
halted. All register and internal RAM contents are preserved. All
functional I/O “freeze” in the last state when the PLL clock is
turned off.
Wake by a device reset
Input clock to the PLL stops generating clocks. All register and
internal RAM contents are preserved. All functional I/O “freeze” in
the last state when the PLL clock is turned off. Following reset, the
PLL needs time to re-lock, just as it does following power-up.
Wake-up from PD3 takes longer than wake-up from PD2 because
the PLL needs to be re-locked, just as it does following power-up.
All others
Reserved
—
—
† When entering PD2 and PD3, all functional I/O remains in the previous state. However, for peripherals which are asynchronous in nature or
peripherals with an external clock source, output signals may transition in response to stimulus on the inputs. Under these conditions,
peripherals will not operate according to specifications.
4.3.7
C64x Power-Down Mode with an Emulator
If user power-down modes are programmed, and an emulator is attached, the modes will be masked to allow
the emulator access to the system. This condition prevails until the emulator is reset or the cable is removed
from the header. If power measurements are to be performed when in a power-down mode, the emulator cable
should be removed.
When the DSP is in power-down mode PD2 or PD3, emulation logic will force any emulation execution
command (such as Step or Run) to spin in IDLE. For this reason, PC writes (such as loading code) will fail.
A DSP reset will be required to get the DSP out of PD2/PD3.
June 2003 − Revised August 2004
SPRS222C
89
Enhanced Direct Memory Access (EDMA) Controller
4.4
Enhanced Direct Memory Access (EDMA) Controller
The EDMA controller handles all data transfers between the level-two (L2) cache/memory controller and the
device peripherals on the DM641/DM640 DSP. These data transfers include cache servicing, non-cacheable
memory accesses, user-programmed data transfers, and host accesses.
EDMA Device-Specific Information
4.4.1
4.4.1.1
EDMA Channel Synchronization Events
The C64x EDMA supports up to 64 EDMA channels which service peripheral devices and external memory.
Table 4−3 lists the source of C64x EDMA synchronization events associated with each of the programmable
EDMA channels. For the DM641/DM640 device, the association of an event to a channel is fixed; each of the
EDMA channels has one specific event associated with it. These specific events are captured in the EDMA
event registers (ERL, ERH) even if the events are disabled by the EDMA event enable registers (EERL,
EERH). The priority of each event can be specified independently in the transfer parameters stored in the
EDMA parameter RAM. For more detailed information on the EDMA module and how EDMA events are
enabled, captured, processed, linked, chained, and cleared, etc., see the TMS320C6000 DSP Enhanced
Direct Memory Access (EDMA) Controller Reference Guide (literature number SPRU234).
Table 4−3. TMS320DM641/DM640 EDMA Channel Synchronization Events†
EDMA
CHANNEL
EVENT NAME
0
DSP_INT
1
TINT0
Timer 0 interrupt
2
TINT1
Timer 1 interrupt
3
SD_INTA
4
GPINT4/EXT_INT4
GP0 event 4/External interrupt pin 4
5
GPINT5/EXT_INT5
GP0 event 5/External interrupt pin 5
6
GPINT6/EXT_INT6
GP0 event 6/External interrupt pin 6
7
GPINT7/EXT_INT7
GP0 event 7/External interrupt pin 7
8
GPINT0
GP0 event 0
EVENT DESCRIPTION
HPI-to-DSP interrupt [For DM641 Only; “None” for DM640]
EMIFA SDRAM timer interrupt
9
GPINT1
GP0 event 1
10
GPINT2
GP0 event 2
11
GPINT3
GP0 event 3
12
XEVT0
McBSP0 transmit event
13
REVT0
McBSP0 receive event
14
XEVT1
McBSP1 transmit event
15
REVT1
McBSP1 receive event
16
VP0EVTYA
VP0 Channel A Y event DMA request
17
VP0EVTUA
VP0 Channel A Cb event DMA request
18
VP0EVTVA
VP0 Channel A Cr event DMA request
19
TINT2
20−31
–
Timer 2 interrupt
32
AXEVTE0
McASP0 transmit even event
33
AXEVTO0
McASP0 transmit odd event
34
AXEVT0
None
McASP0 transmit event
35
AREVTE0
McASP0 receive even event
† In addition to the events shown in this table, each of the 64 channels can also be synchronized with the transfer completion or alternate transfer
completion events. For more detailed information on EDMA event-transfer chaining, see the TMS320C6000 DSP Enhanced Direct Memory
Access (EDMA) Controller Reference Guide (literature number SPRU234).
90
SPRS222C
June 2003 − Revised August 2004
Enhanced Direct Memory Access (EDMA) Controller
Table 4−3. TMS320DM641/DM640 EDMA Channel Synchronization Events† (Continued)
EDMA
CHANNEL
EVENT NAME
36
AREVTO0
37
AREVT0
EVENT DESCRIPTION
McASP0 receive odd event
McASP0 receive event
38−43
–
44
ICREVT0
None
I2C0 receive event
45
ICXEVT0
I2C0 transmit event
46−47
–
48
GPINT8
None
GP0 event 8
49
GPINT9
GP0 event 9
50
GPINT10
GP0 event 10
51
GPINT11
GP0 event 11
52
GPINT12
GP0 event 12
53
GPINT13
GP0 event 13
54
GPINT14
GP0 event 14
55
GPINT15
GP0 event 15
56
VP1EVTYA
VP1 Channel A Y event DMA request [For DM641 Only; “None” for DM640]
57
VP1EVTUA
VP1 Channel A Cb event DMA request [For DM641 Only; “None” for DM640]
58
VP1EVTVA
VP1 Channel A Cr event DMA request [For DM641 Only; “None” for DM640]
59−63
–
None
† In addition to the events shown in this table, each of the 64 channels can also be synchronized with the transfer completion or alternate transfer
completion events. For more detailed information on EDMA event-transfer chaining, see the TMS320C6000 DSP Enhanced Direct Memory
Access (EDMA) Controller Reference Guide (literature number SPRU234).
June 2003 − Revised August 2004
SPRS222C
91
Enhanced Direct Memory Access (EDMA) Controller
4.4.2
EDMA Peripheral Register Description(s)
Table 4−4. EDMA Registers (C64x)
HEX ADDRESS RANGE
ACRONYM
01A0 0800 − 01A0 FF98
−
REGISTER NAME
Reserved
01A0 FF9C
EPRH
Event polarity high register
01A0 FFA4
CIPRH
Channel interrupt pending high register
01A0 FFA8
CIERH
Channel interrupt enable high register
01A0 FFAC
CCERH
Channel chain enable high register
01A0 FFB0
ERH
Event high register
01A0 FFB4
EERH
Event enable high register
01A0 FFB8
ECRH
Event clear high register
01A0 FFBC
ESRH
Event set high register
01A0 FFC0
PQAR0
Priority queue allocation register 0
01A0 FFC4
PQAR1
Priority queue allocation register 1
01A0 FFC8
PQAR2
Priority queue allocation register 2
01A0 FFCC
PQAR3
Priority queue allocation register 3
01A0 FFDC
EPRL
Event polarity low register
01A0 FFE0
PQSR
Priority queue status register
01A0 FFE4
CIPRL
Channel interrupt pending low register
01A0 FFE8
CIERL
Channel interrupt enable low register
01A0 FFEC
CCERL
Channel chain enable low register
01A0 FFF0
ERL
Event low register
01A0 FFF4
EERL
Event enable low register
01A0 FFF8
ECRL
Event clear low register
01A0 FFFC
ESRL
Event set low register
01A1 0000 − 01A3 FFFF
–
Reserved
Table 4−5. Quick DMA (QDMA) and Pseudo Registers
HEX ADDRESS RANGE
ACRONYM
0200 0000
QOPT
QDMA options parameter register
0200 0004
QSRC
QDMA source address register
0200 0008
QCNT
QDMA frame count register
0200 000C
QDST
QDMA destination address register
0200 0010
QIDX
QDMA index register
0200 0014 − 0200 001C
92
REGISTER NAME
Reserved
0200 0020
QSOPT
QDMA pseudo options register
0200 0024
QSSRC
QDMA psuedo source address register
0200 0028
QSCNT
QDMA psuedo frame count register
0200 002C
QSDST
QDMA destination address register
0200 0030
QSIDX
QDMA psuedo index register
SPRS222C
June 2003 − Revised August 2004
Enhanced Direct Memory Access (EDMA) Controller
Table 4−6. EDMA Parameter RAM (C64x)†
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
01A0 0000 − 01A0 0017
−
Parameters for Event 0 (6 words)
01A0 0018 − 01A0 002F
−
Parameters for Event 1 (6 words)
01A0 0030 − 01A0 0047
−
Parameters for Event 2 (6 words)
01A0 0048 − 01A0 005F
−
Parameters for Event 3 (6 words)
01A0 0060 − 01A0 0077
−
Parameters for Event 4 (6 words)
01A0 0078 − 01A0 008F
−
Parameters for Event 5 (6 words)
01A0 0090 − 01A0 00A7
−
Parameters for Event 6 (6 words)
01A0 00A8 − 01A0 00BF
−
Parameters for Event 7 (6 words)
01A0 00C0 − 01A0 00D7
−
Parameters for Event 8 (6 words)
01A0 00D8 − 01A0 00EF
−
Parameters for Event 9 (6 words)
01A0 00F0 − 01A0 00107
−
Parameters for Event 10 (6 words)
01A0 0108 − 01A0 011F
−
Parameters for Event 11 (6 words)
01A0 0120 − 01A0 0137
−
Parameters for Event 12 (6 words)
01A0 0138 − 01A0 014F
−
Parameters for Event 13 (6 words)
01A0 0150 − 01A0 0167
−
Parameters for Event 14 (6 words)
01A0 0168 − 01A0 017F
−
Parameters for Event 15 (6 words)
01A0 0150 − 01A0 0167
−
Parameters for Event 16 (6 words)
01A0 0168 − 01A0 017F
−
Parameters for Event 17 (6 words)
...
COMMENTS
Parameters for Event 0
(6 words) or Reload/Link
Parameters for other Event
...
01A0 05D0 − 01A0 05E7
−
Parameters for Event 62 (6 words)
01A0 05E8 − 01A0 05FF
−
Parameters for Event 63 (6 words)
01A0 0600 − 01A0 0617
−
Reload/link parameters for Event 0 (6 words)
01A0 0618 − 01A0 062F
−
Reload/link parameters for Event 1 (6 words)
...
Reload/Link Parameters for
other Event 0−15
...
01A0 07E0 − 01A0 07F7
−
Reload/link parameters for Event 20 (6 words)
01A0 07F8 − 01A0 080F
−
Reload/link parameters for Event 21 (6 words)
01A0 0810 − 01A0 0827
−
Reload/link parameters for Event 22 (6 words)
...
...
01A0 13C8 − 01A0 13DF
−
Reload/link parameters for Event 147 (6 words)
01A0 13E0 − 01A0 13F7
−
Reload/link parameters for Event 148 (6 words)
01A0 13F8 − 01A0 13FF
−
Scratch pad area (2 words)
01A0 1400 − 01A3 FFFF
−
Reserved
† The DM641/DM640 device has 213 EDMA parameters total: 64-Event/Reload channels and 149-Reload only parameter sets [six (6) words each]
that can be used to reload/link EDMA transfers.
June 2003 − Revised August 2004
SPRS222C
93
Interrupts
4.5
Interrupts
4.5.1
Interrupt Sources and Interrupt Selector
The C64x DSP core supports 16 prioritized interrupts, which are listed in Table 4−7. The highest-priority
interrupt is INT_00 (dedicated to RESET) while the lowest-priority interrupt is INT_15. The first four interrupts
(INT_00−INT_03) are non-maskable and fixed. The remaining interrupts (INT_04−INT_15) are maskable and
default to the interrupt source specified in Table 4−7. The interrupt source for interrupts 4−15 can be
programmed by modifying the selector value (binary value) in the corresponding fields of the Interrupt Selector
Control registers: MUXH (address 0x019C0000) and MUXL (address 0x019C0004).
Table 4−7. DM641/DM640 DSP Interrupts
INTERRUPT
SELECTOR
CONTROL
REGISTER
SELECTOR
VALUE
(BINARY)
INTERRUPT
EVENT
INT_00†
INT_01†
−
−
RESET
−
−
NMI
INT_02†
INT_03†
−
−
Reserved
Reserved. Do not use.
−
−
Reserved
Reserved. Do not use.
INT_04‡
INT_05‡
MUXL[4:0]
00100
GPINT4/EXT_INT4
GP0 interrupt 4/External interrupt pin 4
MUXL[9:5]
00101
GPINT5/EXT_INT5
GP0 interrupt 5/External interrupt pin 5
INT_06‡
INT_07‡
MUXL[14:10]
00110
GPINT6/EXT_INT6
GP0 interrupt 6/External interrupt pin 6
MUXL[20:16]
00111
GPINT7/EXT_INT7
GP0 interrupt 7/External interrupt pin 7
INT_08‡
INT_09‡
MUXL[25:21]
01000
EDMA_INT
EDMA channel (0 through 63) interrupt
MUXL[30:26]
01001
EMU_DTDMA
INT_10‡
INT_11‡
MUXH[4:0]
00011
SD_INTA
MUXH[9:5]
01010
EMU_RTDXRX
EMU real-time data exchange (RTDX) receive
INT_12‡
INT_13‡
MUXH[14:10]
01011
EMU_RTDXTX
EMU RTDX transmit
MUXH[20:16]
00000
DSP_INT
INT_14‡
INT_15‡
MUXH[25:21]
00001
TINT0
Timer 0 interrupt
MUXH[30:26]
00010
TINT1
Timer 1 interrupt
−
−
01100
XINT0
McBSP0 transmit interrupt
−
−
01101
RINT0
McBSP0 receive interrupt
−
−
01110
XINT1
McBSP1 transmit interrupt
−
−
01111
RINT1
McBSP1 receive interrupt
−
−
10000
GPINT0
−
−
10001
Reserved
Reserved. Do not use.
−
−
10010
Reserved
Reserved. Do not use.
−
−
10011
TINT2
−
−
10100
Reserved
Reserved. Do not use.
−
−
10101
Reserved
Reserved. Do not use.
−
−
10110
ICINT0
−
−
10111
Reserved
Reserved. Do not use.
−
−
11000
EMAC_MDIO_INT
EMAC/MDIO interrupt
−
−
11001
VPINT0
CPU
INTERRUPT
NUMBER
INTERRUPT SOURCE
EMU DTDMA
EMIFA SDRAM timer interrupt
HPI-to-DSP interrupt [DM641 Only]
GP0 interrupt 0
Timer 2 interrupt
I2C0 interrupt
VP0 interrupt
† Interrupts INT_00 through INT_03 are non-maskable and fixed.
‡ Interrupts INT_04 through INT_15 are programmable by modifying the binary selector values in the Interrupt Selector Control registers fields.
Table 4−7 shows the default interrupt sources for Interrupts INT_04 through INT_15. For more detailed information on interrupt sources and
selection, see the TMS320C6000 DSP Interrupt Selector Reference Guide (literature number SPRU646).
94
SPRS222C
June 2003 − Revised August 2004
Interrupt Sources and Interrupt Selector
Table 4−7. DM641/DM640 DSP Interrupts (Continued)
CPU
INTERRUPT
NUMBER
INTERRUPT
SELECTOR
CONTROL
REGISTER
SELECTOR
VALUE
(BINARY)
−
−
11010
VPINT1
−
−
11011
Reserved
−
−
11100
AXINT0
McASP0 transmit interrupt
−
−
11101
ARINT0
McASP0 receive interrupt
−
−
11110 − 11111
Reserved
INTERRUPT
EVENT
INTERRUPT SOURCE
VP1 interrupt [DM641 Only]
Reserved. Do not use.
Reserved. Do not use.
† Interrupts INT_00 through INT_03 are non-maskable and fixed.
‡ Interrupts INT_04 through INT_15 are programmable by modifying the binary selector values in the Interrupt Selector Control registers fields.
Table 4−7 shows the default interrupt sources for Interrupts INT_04 through INT_15. For more detailed information on interrupt sources and
selection, see the TMS320C6000 DSP Interrupt Selector Reference Guide (literature number SPRU646).
4.5.2
Interrupts Peripheral Register Description(s)
Table 4−8. Interrupt Selector Registers (C64x)
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
COMMENTS
019C 0000
MUXH
Interrupt multiplexer high
Selects which interrupts drive CPU
interrupts 10−15 (INT10−INT15)
019C 0004
MUXL
Interrupt multiplexer low
Selects which interrupts drive CPU
interrupts 4−9 (INT04−INT09)
019C 0008
EXTPOL
External interrupt polarity
Sets the polarity of the external
interrupts (EXT_INT4−EXT_INT7)
019C 000C − 019F FFFF
−
4.5.3
Reserved
External Interrupts Electrical Data/Timing
Table 4−9. Timing Requirements for External Interrupts† (see Figure 4−8)
−400
−500
−600
NO.
MIN
1
2
tw(ILOW)
tw(IHIGH)
UNIT
MAX
Width of the NMI interrupt pulse low
4P
ns
Width of the EXT_INT interrupt pulse low
8P
ns
Width of the NMI interrupt pulse high
4P
ns
Width of the EXT_INT interrupt pulse high
8P
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
1
2
EXT_INTx, NMI
Figure 4−8. External/NMI Interrupt Timing
June 2003 − Revised August 2004
SPRS222C
95
Reset
4.6
Reset
A hardware reset (RESET) is required to place the DSP into a known good state out of power-up. The RESET
signal can be asserted (pulled low) prior to ramping the core and I/O voltages or after the core and I/O voltages
have reached their proper operating conditions. As a best practice, reset should be held low during power-up.
Prior to deasserting RESET (low-to-high transition), the core and I/O voltages should be at their proper
operating conditions and CLKIN should also be running at the correct frequency.
For information on peripheral selection at the rising edge of RESET, see the Device Configuration section of
this data manual.
4.6.1
Reset Electrical Data/Timing
Table 4−10. Timing Requirements for Reset (see Figure 4−9)
−400
−500
−600
NO.
MIN
1
16
tw(RST)
tsu(boot)
17
Width of the RESET pulse
Setup time, boot configuration bits valid before RESET high†
Hold time, boot configuration bits valid after RESET high†
th(boot)
† AEA[22:19], LENDIAN, and HD5 are the boot configuration pins during device reset.
‡ E = 1/AECLKIN clock frequency in ns. C = 1/CLKIN clock frequency in ns.
Select the MIN parameter value, whichever value is larger.
§ P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
96
SPRS222C
UNIT
MAX
250
4E or 4C‡
µs
4P§
ns
ns
June 2003 − Revised August 2004
Reset
Table 4−11. Switching Characteristics Over Recommended Operating Conditions During Reset§¶#
(see Figure 4−9)
NO.
2
3
4
5
6
7
8
9
10
11
12
13
14
15
PARAMETER
−400
−500
−600
UNIT
MIN
MAX
td(RSTL-ECKI)
td(RSTH-ECKI)
Delay time, RESET low to AECLKIN synchronized internally
2E
3P + 20E
ns
Delay time, RESET high to AECLKIN synchronized internally
2E
8P + 20E
ns
td(RSTL-ECKO1HZ)
td(RSTH-ECKO1V)
Delay time, RESET low to AECLKOUT1 high impedance
2E
td(RSTL-EMIFZHZ)
td(RSTH-EMIFZV)
Delay time, RESET low to EMIF Z high impedance
td(RSTL-EMIFHIV)
td(RSTH-EMIFHV)
Delay time, RESET low to EMIF high group invalid
td(RSTL-EMIFLIV)
td(RSTH-EMIFLV)
Delay time, RESET low to EMIF low group invalid
td(RSTL-LOWIV)
td(RSTH-LOWV)
Delay time, RESET low to low group invalid
td(RSTL-ZHZ)
td(RSTH-ZV)
Delay time, RESET low to Z group high impedance
Delay time, RESET high to AECLKOUT1 valid
Delay time, RESET high to EMIF Z valid
ns
2E
3P + 4E
ns
16E
8P + 20E
ns
2E
Delay time, RESET high to EMIF high group valid
ns
8P + 20E
2E
Delay time, RESET high to EMIF low group valid
0
ns
ns
11P
0
2P
ns
ns
8P + 20E
Delay time, RESET high to low group valid
Delay time, RESET high to Z group valid
ns
8P + 20E
ns
ns
8P
ns
§ P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
¶ E = the EMIF input clock (AECLKIN, CPU/4 clock, or CPU/6 clock) period in ns for EMIFA.
# EMIF Z group consists of:
AEA[22:3], AED[31:0], ACE[3:0], ABE[3:0], AARE/ASDCAS/ASADS/ASRE,AAWE/ASDWE/ASWE,
AAOE/ASDRAS/ASOE, ASOE3, ASDCKE, and APDT.
EMIF high group consists of: AHOLDA (when the corresponding AHOLD input is high)
EMIF low group consists of: ABUSREQ; AHOLDA (when the corresponding AHOLD input is low)
Low group consists of:
Z group consists of:
HD[15:0], VP0D[0]/CLKX0, VP0D[1]/FSX0, VP0D[2]/DX0, CLKR0, VP0D[5]/FSR0, TOUT0, TOUT1, VDAC,
GP0[7:0], HR/W, HDS2, HDS1, HCS, HCNTL1, HAS, HCNTL0, HHWIL (16-bit HPI mode only), HRDY, HINT, and
VP0D[4,3].
VP1 signals apply to DM641 only:
VP1D[0]/CLKX1, VP1D[1]/FSX1, VP1D[2]/DX1, VP1D[6]/CLKR1, VP1D[5]/FSR1, and VP1D[4,3].
June 2003 − Revised August 2004
SPRS222C
97
Reset
CLKOUT4
CLKOUT6
1
RESET
2
3
4
5
6
7
AECLKIN
AECLKOUT1
AECLKOUT2
EMIF Z Group†‡
8
9
10
11
EMIF High Group†
EMIF Low Group†
12
13
14
15
Low Group†
Z Group†‡
16
Boot and Device
Configuration Inputs§
17
† EMIF Z group consists of:
AEA[22:3], AED[31:0], ACE[3:0], ABE[3:0], AARE/ASDCAS/ASADS/ASRE,AAWE/ASDWE/ASWE,
AAOE/ASDRAS/ASOE, ASOE3, ASDCKE, and APDT.
EMIF high group consists of: AHOLDA (when the corresponding AHOLD input is high)
EMIF low group consists of: ABUSREQ; AHOLDA (when the corresponding AHOLD input is low)
Low group consists of:
Z group consists of:
HD[15:0], VP0D[0]/CLKX0, VP0D[1]/FSX0, VP0D[2]/DX0, CLKR0, VP0D[5]/FSR0, TOUT0, TOUT1, VDAC,
GP0[7:0], HR/W, HDS2, HDS1, HCS, HCNTL1, HAS, HCNTL0, HHWIL (16-bit HPI mode only), HRDY, HINT, and
VP0D[4,3].
VP1 signals apply to DM641 only:
VP1D[0]/CLKX1, VP1D[1]/FSX1, VP1D[2]/DX1, VP1D[6]/CLKR1, VP1D[5]/FSR1, and VP1D[4,3].
‡ If AEA[22:19], LENDIAN, and HD5 pins are actively driven, care must be taken to ensure
no timing contention between parameters 6, 7, 14, 15, 16, and 17.
§ Boot and Device Configurations Inputs (during reset) include: AEA[22:19], LENDIAN, and HD5.
Figure 4−9. Reset Timing†
98
SPRS222C
June 2003 − Revised August 2004
Clock PLL
4.7
Clock PLL
The PLL controller features hardware-configurable PLL multiplier controller, dividers (/2, /4, /6, and /8), and
reset controller. The PLL controller accepts an input clock, as determined by the logic state on the
CLKMODE[1:0] pins, from the CLKIN pin. The resulting clock outputs are passed to the DSP core, peripherals,
and other modules inside the C6000 DSP.
4.7.1
Clock PLL Device-Specific Information
Most of the internal C64x DSP clocks are generated from a single source through the CLKIN pin. This source
clock either drives the PLL, which multiplies the source clock frequency to generate the internal CPU clock,
or bypasses the PLL to become the internal CPU clock.
To use the PLL to generate the CPU clock, the external PLL filter circuit must be properly designed.
Figure 4−10 shows the external PLL circuitry for either x1 (PLL bypass) or other PLL multiply modes.
To minimize the clock jitter, a single clean power supply should power both the C64x DSP device and the
external clock oscillator circuit. The minimum CLKIN rise and fall times should also be observed. For the input
clock timing requirements, see the input and output clocks electricals section.
Rise/fall times, duty cycles (high/low pulse durations), and the load capacitance of the external clock source
must meet the DSP requirements in this data sheet (see the electrical characteristics over recommended
ranges of supply voltage and operating case temperature table and the input and output clocks electricals
section).
June 2003 − Revised August 2004
SPRS222C
99
Clock PLL
3.3 V
CPU Clock
EMI
filter
C1
C2
10 µF
0.1 µF
/2
Peripheral Bus, EDMA
Clock
/8
Timer Internal Clock
PLLV
CLKMODE0
CLKMODE1
PLLMULT
/4
CLKOUT4, Peripheral Clock
(AUXCLK for McASP),
McBSP Internal Clock
/6
CLKOUT6
PLL
x6, x12
CLKIN
PLLCLK
1
00 01 10
/4
0
/2
ECLKIN
AEA[20:19]
Internal to DM641/DM640
(For the PLL Options, CLKMODE Pins Setup, and
PLL Clock Frequency Ranges, see Table 9.)
EMIF
00 01 10
ECLKOUT1
ECLKOUT2
EK2RATE
(GBLCTL.[19,18])
NOTES: A. Place all PLL external components (C1, C2, and the EMI Filter) as close to the C6000 DSP device as possible. For the best
performance, TI recommends that all the PLL external components be on a single side of the board without jumpers, switches, or
components other than the ones shown.
B. For reduced PLL jitter, maximize the spacing between switching signals and the PLL external components (C1, C2, and the EMI
Filter).
C. The 3.3-V supply for the EMI filter must be from the same 3.3-V power plane supplying the I/O voltage, DVDD.
D. EMI filter manufacturer TDK part number ACF451832-333, -223, -153, -103. Panasonic part number EXCCET103U.
Figure 4−10. External PLL Circuitry for Either PLL Multiply Modes or x1 (Bypass) Mode
100
SPRS222C
June 2003 − Revised August 2004
Clock PLL
Table 4−12. TMS320DM641/DM640 PLL Multiply Factor Options, Clock Frequency Ranges,
and Typical Lock Time†‡
GDK PACKAGE − 23 x 23 mm BGA,
GNZ PACKAGE − 27 x 27 mm BGA
CLKMODE1 CLKMODE0
CLKMODE
(PLL MULTIPLY
FACTORS)
CLKIN
RANGE
(MHz)
CPU CLOCK
FREQUENCY
RANGE (MHz)
CLKOUT4
RANGE (MHz)
CLKOUT6
RANGE (MHz)
TYPICAL
LOCK TIME
(µs)§
N/A
0
0
Bypass (x1)
30−75
30−75
7.5−18.8
5−12.5
0
1
x6
30−75
180−450
45−112.5
30−75
1
0
x12
30−50
360−600
90−150
60−100
75
1
1
Reserved
−
−
−
−
−
† These clock frequency range values are applicable to a DM641−600 speed device. For −400, −500 device speed values, see the CLKIN timing
requirements table for the specific device speed.
‡ Use external pullup resistors on the CLKMODE pins (CLKMODE1 and CLKMODE0) to set the DM641/DM640 device to one of the valid PLL
multiply clock modes (x6 or x12). With internal pulldown resistors on the CLKMODE pins (CLKMODE1, CLKMODE0), the default clock mode
is x1 (bypass).
§ Under some operating conditions, the maximum PLL lock time may vary by as much as 150% from the specified typical value. For example, if
the typical lock time is specified as 100 µs, the maximum value may be as long as 250 µs.
4.7.2
Clock PLL Electrical Data/Timing (Input and Output Clocks)
Table 4−13. Timing Requirements for CLKIN for −400 Devices†‡§ (see Figure 4−11)
−400
PLL MODE x12
NO.
1
2
3
4
MIN
MAX
30
33.3
PLL MODE x6
x1 (BYPASS)
MIN
MAX
13.3
33.3
UNIT
MIN
MAX
13.3
33.3
tc(CLKIN)
tw(CLKINH)
Cycle time, CLKIN
Pulse duration, CLKIN high
0.45C
0.45C
0.45C
ns
tw(CLKINL)
tt(CLKIN)
Pulse duration, CLKIN low
0.45C
0.45C
0.45C
ns
Transition time, CLKIN
5
5
tJ(CLKIN)
Period jitter, CLKIN
0.02C
† The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
‡ For more details on the PLL multiplier factors (x6, x12), see the Clock PLL section of this data sheet.
§ C = CLKIN cycle time in ns. For example, when CLKIN frequency is 50 MHz, use C = 20 ns.
ns
5
1
ns
0.02C
0.02C
ns
Table 4−14. Timing Requirements for CLKIN for −500 Devices†‡§ (see Figure 4−11)
−500
PLL MODE x12
NO.
1
2
3
4
MIN
MAX
24
33.3
PLL MODE x6
x1 (BYPASS)
MIN
MAX
13.3
33.3
UNIT
MIN
MAX
13.3
33.3
tc(CLKIN)
tw(CLKINH)
Cycle time, CLKIN
Pulse duration, CLKIN high
0.45C
0.45C
0.45C
ns
tw(CLKINL)
tt(CLKIN)
Pulse duration, CLKIN low
0.45C
0.45C
0.45C
ns
Transition time, CLKIN
5
5
tJ(CLKIN)
Period jitter, CLKIN
0.02C
† The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
‡ For more details on the PLL multiplier factors (x6, x12), see the Clock PLL section of this data sheet.
§ C = CLKIN cycle time in ns. For example, when CLKIN frequency is 50 MHz, use C = 20 ns.
June 2003 − Revised August 2004
ns
5
1
ns
0.02C
0.02C
ns
SPRS222C
101
Clock PLL
Table 4−15. Timing Requirements for CLKIN for −600 Devices†‡§ (see Figure 4−11)
−600
PLL MODE x12
NO.
1
2
3
4
PLL MODE x6
x1 (BYPASS)
UNIT
MIN
MAX
MIN
MAX
MIN
MAX
20
33.3
13.3
33.3
13.3
33.3
tc(CLKIN)
tw(CLKINH)
Cycle time, CLKIN
Pulse duration, CLKIN high
0.45C
0.45C
0.45C
tw(CLKINL)
tt(CLKIN)
Pulse duration, CLKIN low
0.45C
0.45C
0.45C
Transition time, CLKIN
5
5
tJ(CLKIN)
Period jitter, CLKIN
0.02C
† The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
‡ For more details on the PLL multiplier factors (x6, x12), see the Clock PLL section of this data sheet.
§ C = CLKIN cycle time in ns. For example, when CLKIN frequency is 50 MHz, use C = 20 ns.
ns
ns
ns
5
1
ns
0.02C
0.02C
ns
1
5
4
2
CLKIN
3
4
Figure 4−11. CLKIN Timing
Table 4−16. Switching Characteristics Over Recommended Operating Conditions for CLKOUT4†‡§
(see Figure 4−12)
NO.
−400
−500
−600
PARAMETER
UNIT
CLKMODE = x1, x6, x12
MIN
1
2
tw(CKO4H)
tw(CKO4L)
MAX
Pulse duration, CLKOUT4 high
2P − 0.7
2P + 0.7
ns
Pulse duration, CLKOUT4 low
2P − 0.7
2P + 0.7
ns
1
ns
3
tt(CKO4)
Transition time, CLKOUT4
† The reference points for the rise and fall transitions are measured at VOL MAX and VOH MIN.
‡ PH is the high period of CLKIN in ns and PL is the low period of CLKIN in ns.
§ P = 1/CPU clock frequency in nanoseconds (ns)
3
1
CLKOUT4
2
3
Figure 4−12. CLKOUT4 Timing
102
SPRS222C
June 2003 − Revised August 2004
Clock PLL
Table 4−17. Switching Characteristics Over Recommended Operating Conditions for CLKOUT6†‡§
(see Figure 4−13)
NO.
−400
−500
−600
PARAMETER
UNIT
CLKMODE = x1, x6, x12
MIN
1
MAX
tw(CKO6H)
tw(CKO6L)
Pulse duration, CLKOUT6 high
3P − 0.7
3P + 0.7
ns
2
Pulse duration, CLKOUT6 low
3P − 0.7
3P + 0.7
ns
3
tt(CKO6)
Transition time, CLKOUT6
1
ns
† The reference points for the rise and fall transitions are measured at VOL MAX and VOH MIN.
‡ PH is the high period of CLKIN in ns and PL is the low period of CLKIN in ns.
§ P = 1/CPU clock frequency in nanoseconds (ns)
3
1
CLKOUT6
2
3
Figure 4−13. CLKOUT6 Timing
Table 4−18. Timing Requirements for AECLKIN for EMIFA†‡§ (see Figure 4−14)
−400
−500
−600
NO.
1
MIN
6¶
tc(EKI)
tw(EKIH)
Cycle time, AECLKIN
Pulse duration, AECLKIN high
2.7
tw(EKIL)
tt(EKI)
Pulse duration, AECLKIN low
2.7
4
5
tJ(EKI)
Period jitter, AECLKIN
2
3
Transition time, AECLKIN
UNIT
MAX
16P
ns
ns
ns
3
ns
0.02E
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
§ E = the EMIF input clock (AECLKIN, CPU/4 clock, or CPU/6 clock) period in ns for EMIFA.
¶ Minimum AECLKIN cycle times must be met, even when AECLKIN is generated by an internal clock source. Minimum AECLKIN times are based
on internal logic speed; the maximum useable speed of the EMIF may be lower due to AC timing requirements. On the 600 device, 133-MHz
operation is achievable if the requirements of the EMIF Device Speed section are met. On the 400 and 500 devices, 100-MHz operation is
achievable if the requirements of the EMIF Device Speed section are met.
1
5
4
2
AECLKIN
3
4
Figure 4−14. AECLKIN Timing for EMIFA
June 2003 − Revised August 2004
SPRS222C
103
Clock PLL
Table 4−19. Switching Characteristics Over Recommended Operating Conditions for AECLKOUT1 for the
EMIFA Module§#|| (see Figure 4−15)
NO.
−400
−500
−600
PARAMETER
UNIT
MIN
MAX
tw(EKO1H)
tw(EKO1L)
Pulse duration, AECLKOUT1 high
EH − 0.7
EH + 0.7
ns
Pulse duration, AECLKOUT1 low
EL − 0.7
EL + 0.7
ns
tt(EKO1)
td(EKIH-EKO1H)
Transition time, AECLKOUT1
1
ns
8
ns
td(EKIL-EKO1L)
Delay time, AECLKIN low to AECLKOUT1 low
1
8
§ E = the EMIF input clock (AECLKIN, CPU/4 clock, or CPU/6 clock) period in ns for EMIFA.
# The reference points for the rise and fall transitions are measured at VOL MAX and VOH MIN.
|| EH is the high period of E (EMIF input clock period) in ns and EL is the low period of E (EMIF input clock period) in ns for EMIFA.
k This cycle-to-cycle jitter specification was measured with CPU/4 or CPU/6 as the source of the EMIF input clock.
ns
1
2
3
4
Delay time, AECLKIN high to AECLKOUT1 high
1
5
AECLKIN
5
1
4
2
3
3
AECLKOUT1
Figure 4−15. AECLKOUT1 Timing for the EMIFA Module
Table 4−20. Switching Characteristics Over Recommended Operating Conditions for AECLKOUT2 for the
EMIFA Module†‡ (see Figure 4−16)
NO.
−400
−500
−600
PARAMETER
MIN
1
UNIT
MAX
tw(EKO2H)
tw(EKO2L)
Pulse duration, AECLKOUT2 high
0.5NE − 0.7
0.5NE + 0.7
ns
Pulse duration, AECLKOUT2 low
0.5NE − 0.7
0.5NE + 0.7
ns
Transition time, AECLKOUT2
4
tt(EKO2)
td(EKIH-EKO2H)
Delay time, AECLKIN high to AECLKOUT2 high
5
td(EKIH-EKO2L)
Delay time, AECLKIN high to AECLKOUT2 low
2
3
1
ns
1
8
ns
1
8
ns
† The reference points for the rise and fall transitions are measured at VOL MAX and VOH MIN.
‡ E = the EMIF input clock (AECLKIN, CPU/4 clock, or CPU/6 clock) period in ns for EMIFA.
N = the EMIF input clock divider; N = 1, 2, or 4.
§ This cycle-to-cycle jitter specification was measured with CPU/4 or CPU/6 as the source of the EMIF input clock.
AECLKIN
5
4
1
2
3
3
AECLKOUT2
Figure 4−16. AECLKOUT2 Timing for the EMIFA Module
104
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
4.8
External Memory Interface (EMIIF)
EMIF supports a glueless interface to a variety of external devices, including:
•
•
•
•
4.8.1
Pipelined synchronous-burst SRAM (SBSRAM)
Synchronous DRAM (SDRAM)
Asynchronous devices, including SRAM, ROM, and FIFOs
An external shared-memory device
EMIF Device-Specific Information
EMIF Device Speed
The rated EMIF speed of these devices only applies to the SDRAM interface when in a system that meets the
following requirements:
•
•
•
•
•
1 chip-enable (CE) space (maximum of 2 chips) of SDRAM connected to EMIF
up to 1 CE space of buffers connected to EMIF
EMIF trace lengths between 1 and 3 inches
166-MHz SDRAM for 133-MHz operation
143-MHz SDRAM for 100-MHz operation
Other configurations may be possible, but timing analysis must be done to verify all AC timings are met.
Verification of AC timings is mandatory when using configurations other than those specified above. TI
recommends utilizing I/O buffer information specification (IBIS) to analyze all AC timings.
To properly use IBIS models to attain accurate timing analysis for a given system, see the Using IBIS Models
for Timing Analysis application report (literature number SPRA839).
To maintain signal integrity, serial termination resistors should be inserted into all EMIF output signal lines (see
the Terminal Functions table for the EMIF output signals).
For more detailed information on the DM641/DM640 EMIF peripheral, see the TMS320C6000 DSP External
Memory Interface (EMIF) Reference Guide (literature number SPRU266).
4.8.2
EMIF Peripheral Register Description(s)
Table 4−21. EMIFA Registers
HEX ADDRESS RANGE
ACRONYM
0180 0000
GBLCTL
EMIFA global control
REGISTER NAME
0180 0004
CECTL1
EMIFA CE1 space control
EMIFA CE0 space control
0180 0008
CECTL0
0180 000C
−
0180 0010
CECTL2
EMIFA CE2 space control
0180 0014
CECTL3
EMIFA CE3 space control
0180 0018
SDCTL
EMIFA SDRAM control
0180 001C
SDTIM
EMIFA SDRAM refresh control
0180 0020
SDEXT
EMIFA SDRAM extension
0180 0024 − 0180 003C
−
0180 0040
PDTCTL
Peripheral device transfer (PDT) control
0180 0044
CESEC1
EMIFA CE1 space secondary control
0180 0048
CESEC0
EMIFA CE0 space secondary control
0180 004C
−
0180 0050
CESEC2
EMIFA CE2 space secondary control
0180 0054
CESEC3
EMIFA CE3 space secondary control
0180 0058 − 0183 FFFF
–
June 2003 − Revised August 2004
COMMENTS
Reserved
Reserved
Reserved
Reserved
SPRS222C
105
External Memory Interface (EMIIF)
4.8.3
EMIF Electrical Data/Timing
4.8.3.1
Asynchronous Memory Timing
Table 4−22. Timing Requirements for Asynchronous Memory Cycles for EMIFA Module†‡
(see Figure 4−17 and Figure 4−18)
−400
−500
−600
NO.
MIN
3
4
6
tsu(EDV-AREH)
th(AREH-EDV)
Setup time, AEDx valid before AARE high
tsu(ARDY-EKO1H)
th(EKO1H-ARDY)
UNIT
MAX
6.5
ns
Hold time, AEDx valid after AARE high
1
ns
Setup time, AARDY valid before AECLKOUTx high
3
ns
7
Hold time, AARDY valid after AECLKOUTx high
2
ns
† To ensure data setup time, simply program the strobe width wide enough. AARDY is internally synchronized. The AARDY signal is only
recognized two cycles before the end of the programmed strobe time and while AARDY is low, the strobe time is extended cycle-by-cycle. When
AARDY is recognized low, the end of the strobe time is two cycles after AARDY is recognized high. To use AARDY as an asynchronous input,
the pulse width of the AARDY signal should be wide enough (e.g., pulse width = 2E) to ensure setup and hold time is met.
‡ RS = Read setup, RST = Read strobe, RH = Read hold, WS = Write setup, WST = Write strobe, WH = Write hold. These parameters are
programmed via the EMIF CE space control registers.
Table 4−23. Switching Characteristics Over Recommended Operating Conditions for Asynchronous
Memory Cycles for EMIFA Module‡§¶ (see Figure 4−17 and Figure 4−18)
NO.
PARAMETER
−400
−500
−600
MIN
1
2
5
8
9
UNIT
MAX
tosu(SELV-AREL)
toh(AREH-SELIV)
Output setup time, select signals valid to AARE low
RS * E − 1.5
ns
Output hold time, AARE high to select signals invalid
RH * E − 1.9
ns
td(EKO1H-AREV)
tosu(SELV-AWEL)
Delay time, AECLKOUTx high to AARE valid
Output setup time, select signals valid to AAWE low
WS * E − 1.7
ns
toh(AWEH-SELIV)
td(EKO1H-AWEV)
Output hold time, AAWE high to select signals invalid
WH * E − 2.5
ns
1
7
ns
10
Delay time, AECLKOUTx high to AAWE valid
1.3
7.1
ns
‡ RS = Read setup, RST = Read strobe, RH = Read hold, WS = Write setup, WST = Write strobe, WH = Write hold. These parameters are
programmed via the EMIF CE space control registers.
§ E = AECLKOUT1 period in ns for EMIFA
¶ Select signals for EMIFA include: ACEx, ABE[3:0], AEA[22:3], AAOE; and for EMIFA writes, include AED[31:0].
106
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
Setup = 2
Strobe = 3
Not Ready
Hold = 2
AECLKOUTx
1
2
1
2
ACEx
ABE[3:0]
BE
2
1
AEA[22:3]
Address
3
4
AED[31:0]
1
2
Read Data
AAOE/ASDRAS/ASOE†
5
5
AARE/ASDCAS/ASADS/ASRE†
AAWE/ASDWE/ASWE†
7
7
6
6
AARDY
† AAOE/ASDRAS/ASOE, AARE/ASDCAS/ASADS/ASRE, and AAWE/ASDWE/ASWE operate as AAOE (identified under select signals), AARE,
and AAWE, respectively, during asynchronous memory accesses.
Figure 4−17. Asynchronous Memory Read Timing for EMIFA
June 2003 − Revised August 2004
SPRS222C
107
External Memory Interface (EMIIF)
Setup = 2
Strobe = 3
Hold = 2
Not Ready
AECLKOUTx
9
8
ACEx
9
8
ABE[3:0]
BE
9
8
AEA[22:3]
Address
9
8
AED[31:0]
Write Data
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/ASRE†
10
10
AAWE/ASDWE/ASWE†
7
7
6
6
AARDY
† AAOE/ASDRAS/ASOE, AARE/ASDCAS/ASADS/ASRE, and AAWE/ASDWE/ASWE operate as AAOE (identified under select signals), AARE,
and AAWE, respectively, during asynchronous memory accesses.
Figure 4−18. Asynchronous Memory Write Timing for EMIFA
108
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
4.8.3.2
Programmable Synchronous Interface Timing
Table 4−24. Timing Requirements for Programmable Synchronous Interface Cycles for EMIFA Module
(see Figure 4−19)
−400
−500
NO.
MIN
6
7
tsu(EDV-EKOxH)
th(EKOxH-EDV)
−600
MAX
MIN
UNIT
MAX
Setup time, read AEDx valid before AECLKOUTx high
3.1
2
ns
Hold time, read AEDx valid after AECLKOUTx high
1.5
1.5
ns
Table 4−25. Switching Characteristics Over Recommended Operating Conditions for Programmable
Synchronous Interface Cycles for EMIFA Module† (see Figure 4−19−Figure 4−21)
NO.
1
2
3
4
5
8
9
10
11
12
PARAMETER
−400
−500
−600
UNIT
MIN
MAX
MIN
MAX
1.3
6.4
1.3
4.9
ns
4.9
ns
td(EKOxH-CEV)
td(EKOxH-BEV)
Delay time, AECLKOUTx high to ACEx valid
td(EKOxH-BEIV)
td(EKOxH-EAV)
Delay time, AECLKOUTx high to ABEx invalid
td(EKOxH-EAIV)
td(EKOxH-ADSV)
Delay time, AECLKOUTx high to AEAx invalid
1.3
Delay time, AECLKOUTx high to ASADS/ASRE valid
1.3
6.4
1.3
4.9
ns
td(EKOxH-OEV)
td(EKOxH-EDV)
Delay time, AECLKOUTx high to ASOE valid
1.3
6.4
1.3
4.9
ns
4.9
ns
td(EKOxH-EDIV)
td(EKOxH-WEV)
Delay time, AECLKOUTx high to AEDx invalid
1.3
Delay time, AECLKOUTx high to ASWE valid
1.3
Delay time, AECLKOUTx high to ABEx valid
6.4
1.3
Delay time, AECLKOUTx high to AEAx valid
1.3
6.4
Delay time, AECLKOUTx high to AEDx valid
ns
4.9
1.3
6.4
ns
1.3
1.3
ns
ns
† The following parameters are programmable via the EMIF CE Space Secondary Control register (CExSEC):
− Read latency (SYNCRL): 0-, 1-, 2-, or 3-cycle read latency
− Write latency (SYNCWL): 0-, 1-, 2-, or 3-cycle write latency
− ACEx assertion length (CEEXT): For standard SBSRAM or ZBT SRAM interface, ACEx goes inactive after the final command has been issued
(CEEXT = 0). For synchronous FIFO interface with glue, ACEx is active when ASOE is active (CEEXT = 1).
− Function of ASADS/ASRE (RENEN): For standard SBSRAM or ZBT SRAM interface, ASADS/ASRE acts as ASADS with deselect cycles
(RENEN = 0). For FIFO interface, ASADS/ASRE acts as ASRE with NO deselect cycles (RENEN = 1).
− Synchronization clock (SNCCLK): Synchronized to AECLKOUT1 or AECLKOUT2
June 2003 − Revised August 2004
6.4
ns
4.9
SPRS222C
109
External Memory Interface (EMIIF)
READ latency = 2
AECLKOUTx
1
1
ACEx
ABE[3:0]
2
BE1
3
BE2
BE3
BE4
4
AEA[22:3]
EA1
5
EA3
EA2
6
AED[31:0]
EA4
7
Q1
Q2
Q3
Q4
8
8
AARE/ASDCAS/ASADS/
ASRE§
9
9
AAOE/ASDRAS/ASOE§
AAWE/ASDWE/ASWE§
† The read latency and the length of ACEx assertion are programmable via the SYNCRL and CEEXT fields, respectively, in the EMIFA CE Space
Secondary Control register (CExSEC). In this figure, SYNCRL = 2 and CEEXT = 0.
‡ The following parameters are programmable via the EMIF CE Space Secondary Control register (CExSEC):
− Read latency (SYNCRL): 0-, 1-, 2-, or 3-cycle read latency
− Write latency (SYNCWL): 0-, 1-, 2-, or 3-cycle write latency
− ACEx assertion length (CEEXT): For standard SBSRAM or ZBT SRAM interface, ACEx goes inactive after the final command has been issued
(CEEXT = 0). For synchronous FIFO interface with glue, ACEx is active when ASOE is active (CEEXT = 1).
− Function of ASADS/ASRE (RENEN): For standard SBSRAM or ZBT SRAM interface, ASADS/ASRE acts as ASADS with deselect cycles
(RENEN = 0). For FIFO interface, ASADS/ASRE acts as ASRE with NO deselect cycles (RENEN = 1).
− Synchronization clock (SNCCLK): Synchronized to AECLKOUT1 or AECLKOUT2
§ AARE/ASDCAS/ASADS/ASRE, AAOE/ASDRAS/ASOE, and AAWE/ASDWE/ASWE operate as ASADS/ASRE, ASOE, and ASWE,
respectively, during programmable synchronous interface accesses.
Figure 4−19. Programmable Synchronous Interface Read Timing for EMIFA
(With Read Latency = 2)†‡
110
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
AECLKOUTx
1
1
ACEx
3
ABE[3:0]
2
BE1
AEA[22:3]
4
EA1
EA2
EA3
EA4
10
Q1
Q2
Q3
Q4
10
AED[31:0]
AARE/ASDCAS/ASADS/ASRE§
BE2
BE3
BE4
5
11
8
8
AAOE/ASDRAS/ASOE§
12
12
AAWE/ASDWE/ASWE§
† The write latency and the length of ACEx assertion are programmable via the SYNCWL and CEEXT fields, respectively, in the EMIFA CE Space
Secondary Control register (CExSEC). In this figure, SYNCWL = 0 and CEEXT = 0.
‡ The following parameters are programmable via the EMIF CE Space Secondary Control register (CExSEC):
− Read latency (SYNCRL): 0-, 1-, 2-, or 3-cycle read latency
− Write latency (SYNCWL): 0-, 1-, 2-, or 3-cycle write latency
− ACEx assertion length (CEEXT): For standard SBSRAM or ZBT SRAM interface, ACEx goes inactive after the final command has been issued
(CEEXT = 0). For synchronous FIFO interface with glue, ACEx is active when ASOE is active (CEEXT = 1).
− Function of ASADS/ASRE (RENEN): For standard SBSRAM or ZBT SRAM interface, ASADS/ASRE acts as ASADS with deselect cycles
(RENEN = 0). For FIFO interface, ASADS/ASRE acts as ASRE with NO deselect cycles (RENEN = 1).
− Synchronization clock (SNCCLK): Synchronized to AECLKOUT1 or AECLKOUT2
§ AARE/ASDCAS/ASADS/ASRE, AAOE/ASDRAS/ASOE, and AAWE/ASDWE/ASWE operate as ASADS/ASRE, ASOE, and ASWE,
respectively, during programmable synchronous interface accesses.
Figure 4−20. Programmable Synchronous Interface Write Timing for EMIFA
(With Write Latency = 0)†‡§
June 2003 − Revised August 2004
SPRS222C
111
External Memory Interface (EMIIF)
Write
Latency =
1‡
AECLKOUTx
1
1
ACEx
ABE[3:0]
2
BE1
AEA[22:3]
4
EA1
10
AED[31:0]
3
BE2
BE3
BE4
EA2
10
EA3
EA4
Q1
Q2
Q3
5
11
Q4
8
8
AARE/ASDCAS/ASADS/
ASRE§
AAOE/ASDRAS/ASOE§
12
12
AAWE/ASDWE/ASWE§
† The write latency and the length of ACEx assertion are programmable via the SYNCWL and CEEXT fields, respectively, in the EMIFA CE Space
Secondary Control register (CExSEC). In this figure, SYNCWL = 1 and CEEXT = 0.
‡ The following parameters are programmable via the EMIF CE Space Secondary Control register (CExSEC):
− Read latency (SYNCRL): 0-, 1-, 2-, or 3-cycle read latency
− Write latency (SYNCWL): 0-, 1-, 2-, or 3-cycle write latency
− ACEx assertion length (CEEXT): For standard SBSRAM or ZBT SRAM interface, ACEx goes inactive after the final command has been issued
(CEEXT = 0). For synchronous FIFO interface with glue, ACEx is active when ASOE is active (CEEXT = 1).
− Function of ASADS/ASRE (RENEN): For standard SBSRAM or ZBT SRAM interface, ASADS/ASRE acts as ASADS with deselect cycles
(RENEN = 0). For FIFO interface, ASADS/ASRE acts as ASRE with NO deselect cycles (RENEN = 1).
− Synchronization clock (SNCCLK): Synchronized to ECLKOUT1 or ECLKOUT2
§ AARE/ASDCAS/ASADS/ASRE, AAOE/ASDRAS/ASOE, and AAWE/ASDWE/ASWE operate as ASADS/ASRE, ASOE, and ASWE,
respectively, during programmable synchronous interface accesses.
Figure 4−21. Programmable Synchronous Interface Write Timing for EMIFA
(With Write Latency = 1)†‡
112
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
4.8.3.3
Synchronous DRAM Timing
Table 4−26. Timing Requirements for Synchronous DRAM Cycles for EMIFA Module (see Figure 4−22)
−400
−500
NO.
MIN
6
7
tsu(EDV-EKO1H)
th(EKO1H-EDV)
−600
MAX
MIN
UNIT
MAX
Setup time, read AEDx valid before AECLKOUTx high
2.1
0.6
ns
Hold time, read AEDx valid after AECLKOUTx high
2.5
1.8
ns
Table 4−27. Switching Characteristics Over Recommended Operating Conditions for Synchronous DRAM
Cycles for EMIFA Module (see Figure 4−22−Figure 4−29)
NO.
1
PARAMETER
−400
−500
−600
UNIT
MIN
MAX
MIN
MAX
1.3
6.4
1.3
4.9
ns
4.9
ns
td(EKO1H-CEV)
td(EKO1H-BEV)
Delay time, AECLKOUTx high to ACEx valid
td(EKO1H-BEIV)
td(EKO1H-EAV)
Delay time, AECLKOUTx high to ABEx invalid
td(EKO1H-EAIV)
td(EKO1H-CASV)
Delay time, AECLKOUTx high to AEAx invalid
1.3
Delay time, AECLKOUTx high to ASDCAS valid
1.3
td(EKO1H-EDV)
td(EKO1H-EDIV)
Delay time, AECLKOUTx high to AEDx valid
Delay time, AECLKOUTx high to AEDx invalid
1.3
td(EKO1H-WEV)
td(EKO1H-RAS)
Delay time, AECLKOUTx high to ASDWE valid
1.3
6.4
1.3
4.9
ns
12
Delay time, AECLKOUTx high to ASDRAS valid
1.3
6.4
1.3
4.9
ns
13
td(EKO1H-ACKEV)
Delay time, AECLKOUTx high to ASDCKE valid
1.3
6.4
1.3
4.9
ns
14
td(EKO1H-PDTV)
Delay time, AECLKOUTx high to APDT valid
1.3
6.4
1.3
4.9
ns
2
3
4
5
8
9
10
11
Delay time, AECLKOUTx high to ABEx valid
6.4
1.3
Delay time, AECLKOUTx high to AEAx valid
June 2003 − Revised August 2004
1.3
6.4
ns
4.9
1.3
6.4
1.3
6.4
ns
ns
4.9
ns
4.9
ns
1.3
ns
SPRS222C
113
External Memory Interface (EMIIF)
READ
AECLKOUTx
1
1
ACEx
2
BE1
ABE[3:0]
4
Bank
5
AEA[22:14]
4
Column
5
AEA[12:3]
4
3
BE2
BE3
BE4
5
AEA13
6
D1
AED[31:0]
7
D2
D3
D4
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/
ASRE†
8
8
AAWE/ASDWE/ASWE†
14
14
APDT‡
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
‡ APDT signal is only asserted when the EDMA is in PDT mode (set the PDTS bit to 1 in the EDMA options parameter RAM). For APDT read, data
is not latched into EMIF. The PDTRL field in the PDT control register (PDTCTL) configures the latency of the APDT signal with respect to the
data phase of a read transaction. The latency of the APDT signal for a read can be programmed to 0, 1, 2, or 3 by setting PDTRL to 00, 01, 10,
or 11, respectively. PDTRL equals 00 (zero latency) in Figure 4−22.
Figure 4−22. SDRAM Read Command (CAS Latency 3) for EMIFA
114
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
WRITE
AECLKOUTx
1
2
2
4
ACEx
ABE[3:0]
BE1
4
3
BE2
BE3
BE4
D2
D3
D4
5
Bank
AEA[22:14]
5
4
Column
AEA[12:3]
4
5
AEA13
9
AED[31:0]
10
9
D1
AAOE/ASDRAS/ASOE†
8
8
11
11
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
14
14
APDT‡
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
‡ APDT signal is only asserted when the EDMA is in PDT mode (set the PDTD bit to 1 in the EDMA options parameter RAM). For APDT write,
data is not driven (in High-Z). The PDTWL field in the PDT control register (PDTCTL) configures the latency of the APDT signal with respect to
the data phase of a write transaction. The latency of the APDT signal for a write transaction can be programmed to 0, 1, 2, or 3 by setting PDTWL
to 00, 01, 10, or 11, respectively. PDTWL equals 00 (zero latency) in Figure 4−23.
Figure 4−23. SDRAM Write Command for EMIFA
June 2003 − Revised August 2004
SPRS222C
115
External Memory Interface (EMIIF)
ACTV
AECLKOUTx
1
1
ACEx
ABE[3:0]
4
Bank Activate
5
AEA[22:14]
4
Row Address
5
AEA[12:3]
4
Row Address
5
AEA13
AED[31:0]
12
12
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
Figure 4−24. SDRAM ACTV Command for EMIFA
DCAB
AECLKOUTx
1
1
4
5
12
12
11
11
ACEx
ABE[3:0]
AEA[22:14, 12:3]
AEA13
AED[31:0]
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
Figure 4−25. SDRAM DCAB Command for EMIFA
116
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
DEAC
AECLKOUTx
1
1
ACEx
ABE[3:0]
4
5
Bank
AEA[22:14]
AEA[12:3]
4
5
12
12
11
11
AEA13
AED[31:0]
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
Figure 4−26. SDRAM DEAC Command for EMIFA
REFR
AECLKOUTx
1
1
12
12
8
8
ACEx
ABE[3:0]
AEA[22:14, 12:3]
AEA13
AED[31:0]
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
Figure 4−27. SDRAM REFR Command for EMIFA
June 2003 − Revised August 2004
SPRS222C
117
External Memory Interface (EMIIF)
MRS
AECLKOUTx
1
1
4
MRS value
5
12
12
8
8
11
11
ACEx
ABE[3:0]
AEA[22:3]
AED[31:0]
AAOE/ASDRAS/
ASOE†
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
Figure 4−28. SDRAM MRS Command for EMIFA
≥ TRAS cycles
End Self-Refresh
Self Refresh
AECLKOUTx
ACEx
ABE[3:0]
AEA[22:14, 12:3]
AEA13
AED[31:0]
AAOE/ASDRAS/ASOE†
AARE/ASDCAS/ASADS/
ASRE†
AAWE/ASDWE/ASWE†
13
13
ASDCKE
† AARE/ASDCAS/ASADS/ASRE, AAWE/ASDWE/ASWE, and AAOE/ASDRAS/ASOE operate as ASDCAS, ASDWE, and ASDRAS,
respectively, during SDRAM accesses.
Figure 4−29. SDRAM Self-Refresh Timing for EMIFA
118
SPRS222C
June 2003 − Revised August 2004
External Memory Interface (EMIIF)
4.8.3.4
HOLD/HOLDA Timing
Table 4−28. Timing Requirements for the HOLD/HOLDA Cycles for EMIFA Module† (see Figure 4−30)
−400
−500
−600
NO.
MIN
3
th(HOLDAL-HOLDL)
Hold time, HOLD low after HOLDA low
UNIT
MAX
E
ns
† E = the EMIF input clock (ECLKIN, CPU/4 clock, or CPU/6 clock) period in ns for EMIFA.
Table 4−29. Switching Characteristics Over Recommended Operating Conditions for the HOLD/HOLDA
Cycles for EMIFA Module†‡§ (see Figure 4−30)
NO.
−400
−500
−600
PARAMETER
MIN
1
2
4
5
6
7
td(HOLDL-EMHZ)
td(EMHZ-HOLDAL)
Delay time, HOLD low to EMIFA Bus high impedance
td(HOLDH-EMLZ)
td(EMLZ-HOLDAH)
Delay time, HOLD high to EMIF Bus low impedance
td(HOLDL-EKOHZ)
td(HOLDH-EKOLZ)
Delay time, EMIF Bus high impedance to HOLDA low
UNIT
2E
MAX
¶
ns
0
2E
ns
2E
7E
ns
Delay time, EMIFA Bus low impedance to HOLDA high
0
ns
Delay time, HOLD low to AECLKOUTx high impedance
2E
2E
¶
Delay time, HOLD high to AECLKOUTx low impedance
2E
7E
ns
ns
† E = the EMIF input clock (ECLKIN, CPU/4 clock, or CPU/6 clock) period in ns for EMIFA.
‡ EMIFA Bus consists of: ACE[3:0], ABE[3:0], AED[31:0], AEA[22:3], AARE/ASDCAS/ASADS/ASRE, AAOE/ASDRAS/ASOE, and
AAWE/ASDWE/ASWE , ASDCKE, ASOE3, and APDT.
§ The EKxHZ bits in the EMIF Global Control register (GBLCTL) determine the state of the ECLKOUTx signals during HOLDA. If EKxHZ = 0,
ECLKOUTx continues clocking during Hold mode. If EKxHZ = 1, ECLKOUTx goes to high impedance during Hold mode, as shown in Figure 4−30.
¶ All pending EMIF transactions are allowed to complete before HOLDA is asserted. If no bus transactions are occurring, then the minimum delay
time can be achieved. Also, bus hold can be indefinitely delayed by setting NOHOLD = 1.
External Requestor
Owns Bus
DSP Owns Bus
DSP Owns Bus
3
HOLD
2
5
HOLDA
EMIF Bus†
1
DM641/DM640
4
6
7
DM641/DM640
AECLKOUTx‡
(EKxHZ = 0)
AECLKOUTx‡
(EKxHZ = 1)
† EMIFA Bus consists of: ACE[3:0], ABE[3:0], AED[31:0], AEA[22:3], AARE/ASDCAS/ASADS/ASRE, AAOE/ASDRAS/ASOE, and
AAWE/ASDWE/ASWE, ASDCKE, ASOE3, and APDT.
‡ The EKxHZ bits in the EMIF Global Control register (GBLCTL) determine the state of the ECLKOUTx signals during HOLDA. If EKxHZ = 0,
ECLKOUTx continues clocking during Hold mode. If EKxHZ = 1, ECLKOUTx goes to high impedance during Hold mode, as shown in Figure 4−30.
Figure 4−30. HOLD/HOLDA Timing for EMIFA
June 2003 − Revised August 2004
SPRS222C
119
External Memory Interface (EMIIF)
4.8.3.5
BUSREQ Timing
Table 4−30. Switching Characteristics Over Recommended Operating Conditions for the BUSREQ Cycles
for EMIFA Module (see Figure 4−31)
NO.
1
PARAMETER
td(AEKO1H-ABUSRV)
Delay time, AECLKOUTx high to ABUSREQ valid
−400
−500
−600
UNIT
MIN
MAX
MIN
MAX
0.6
7.1
1
5.5
ns
AECLKOUTx
1
1
ABUSREQ
Figure 4−31. BUSREQ Timing for EMIFA
120
SPRS222C
June 2003 − Revised August 2004
Multichannel Audio Serial Port (McASP0) Peripheral
4.9
Multichannel Audio Serial Port (McASP0) Peripheral
The McASP functions as a general-purpose audio serial port optimized for the needs of multichannel audio
applications. The McASP is useful for time-division multiplexed (TDM) stream, Inter-Integrated Sound (I2S)
protocols, and intercomponent digital audio interface transmission (DIT).
4.9.1
McASP0 Device-Specific Information
The TMS320DM641/DM640 device includes one multichannel audio serial port (McASP) interface peripheral
(McASP0). The McASP is a serial port optimized for the needs of multichannel audio applications.
The McASP consists of a transmit and receive section. These sections can operate completely independently
with different data formats, separate master clocks, bit clocks, and frame syncs or alternatively, the transmit
and receive sections may be synchronized. The McASP module also includes a pool of 16 shift registers that
may be configured to operate as either transmit data, receive data, or general-purpose I/O (GPIO).
The transmit section of the McASP can transmit data in either a time-division-multiplexed (TDM) synchronous
serial format or in a digital audio interface (DIT) format where the bit stream is encoded for S/PDIF, AES-3,
IEC-60958, CP-430 transmission. The receive section of the McASP supports the TDM synchronous serial
format.
The McASP can support one transmit data format (either a TDM format or DIT format) and one receive format
at a time. All transmit shift registers use the same format and all receive shift registers use the same format.
However, the transmit and receive formats need not be the same.
Both the transmit and receive sections of the McASP also support burst mode which is useful for non-audio
data (for example, passing control information between two DSPs).
The McASP peripheral has additional capability for flexible clock generation, and error detection/handling, as
well as error management.
For more detailed information on and the functionality of the McASP peripheral, see the TMS320C6000 DSP
Multichannel Audio Serial Port (McASP) Reference Guide (literature number SPRU041).
4.9.1.1
McASP Block Diagram
Figure 4−32 illustrates the major blocks along with external signals of the TMS320DM641/DM640 McASP0
peripheral; and shows the 8 serial data [AXR] pins. The McASP also includes full general-purpose I/O (GPIO)
control, so any pins not needed for serial transfers can be used for general-purpose I/O.
June 2003 − Revised August 2004
SPRS222C
121
Multichannel Audio Serial Port (McASP0) Peripheral
McASP0
DIT
RAM
Transmit
Frame Sync
Generator
Transmit
Clock Check
(HighFrequency)
Transmit
Clock
Generator
Receive
Clock Check
(HighFrequency)
Receive
Clock
Generator
Transmit
Data
Formatter
Receive
Frame Sync
Generator
INDIVIDUALLY PROGRAMMABLE TX/RX/GPIO
DMA Transmit
DMA Receive
AHCLKX0
ACLKX0
AMUTE0
AMUTEIN0
Error
Detect
Receive
Data
Formatter
AFSX0
AHCLKR0
ACLKR0
AFSR0
Serializer 0
AXR0[0]
Serializer 1
AXR0[1]
Serializer 2
AXR0[2]
Serializer 3
AXR0[3]
Serializer 4
Serializer 5
Serializer 6
Serializer 7
GPIO
Control
Figure 4−32. McASP0 Configuration
122
SPRS222C
June 2003 − Revised August 2004
Multichannel Audio Serial Port (McASP0) Peripheral
4.9.2
McASP0 Peripheral Register Description(s)
Table 4−31. McASP0 Control Registers
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
01B4 C000
PID
01B4 C004
PWRDEMU
Peripheral Identification register [Register value: 0x0010 0101]
01B4 C008
−
Reserved
01B4 C00C
−
Reserved
01B4 C010
PFUNC
Pin function register
01B4 C014
PDIR
Pin direction register
01B4 C018
PDOUT
Pin data out register
01B4 C01C
PDIN/PDSET
01B4 C020
PDCLR
Power down and emulation management register
Pin data in / data set register
Read returns: PDIN
Writes affect: PDSET
Pin data clear register
01B4 C024 − 01B4 C040
−
01B4 C044
GBLCTL
Reserved
Global control register
01B4 C048
AMUTE
Mute control register
01B4 C04C
DLBCTL
Digital Loop-back control register
01B4 C050
DITCTL
DIT mode control register
01B4 C054 − 01B4 C05C
−
01B4 C060
RGBLCTL
01B4 C064
RMASK
01B4 C068
RFMT
01B4 C06C
AFSRCTL
01B4 C070
ACLKRCTL
01B4 C074
AHCLKRCTL
Reserved
Alias of GBLCTL containing only Receiver Reset bits, allows transmit to be reset
independently from receive.
Receiver format unit bit mask register
Receive bit stream format register
Receive frame sync control register
Receive clock control register
High-frequency receive clock control register
01B4 C078
RTDM
01B4 C07C
RINTCTL
01B4 C080
RSTAT
Status register − Receiver
01B4 C084
RSLOT
Current receive TDM slot register
01B4 C088
RCLKCHK
01B4 C08C − 01B4 C09C
−
01B4 C0A0
XGBLCTL
01B4 C0A4
XMASK
01B4 C0A8
XFMT
01B4 C0AC
AFSXCTL
Receive TDM slot 0−31 register
Receiver interrupt control register
Receiver clock check control register
Reserved
Alias of GBLCTL containing only Transmitter Reset bits, allows transmit to be reset
independently from receive.
Transmit format unit bit mask register
Transmit bit stream format register
Transmit frame sync control register
01B4 C0B0
ACLKXCTL
01B4 C0B4
AHCLKXCTL
01B4 C0B8
XTDM
Transmit TDM slot 0−31 register
01B4 C0BC
XINTCTL
Transmit interrupt control register
01B4 C0C0
XSTAT
Status register − Transmitter
01B4 C0C4
XSLOT
Current transmit TDM slot
01B4 C0C8
XCLKCHK
June 2003 − Revised August 2004
Transmit clock control register
High-frequency Transmit clock control register
Transmit clock check control register
SPRS222C
123
Multichannel Audio Serial Port (McASP0) Peripheral
Table 4−31. McASP0 Control Registers (Continued)
HEX ADDRESS RANGE
ACRONYM
01B4 C0CC
XEVTCTL
REGISTER NAME
Transmitter DMA control register
01B4 C0D0 − 01B4 C0FC
−
01B4 C100
DITCSRA0
Reserved
Left (even TDM slot) channel status register file
01B4 C104
DITCSRA1
Left (even TDM slot) channel status register file
01B4 C108
DITCSRA2
Left (even TDM slot) channel status register file
01B4 C10C
DITCSRA3
Left (even TDM slot) channel status register file
01B4 C110
DITCSRA4
Left (even TDM slot) channel status register file
01B4 C114
DITCSRA5
Left (even TDM slot) channel status register file
01B4 C118
DITCSRB0
Right (odd TDM slot) channel status register file
01B4 C11C
DITCSRB1
Right (odd TDM slot) channel status register file
01B4 C120
DITCSRB2
Right (odd TDM slot) channel status register file
01B4 C124
DITCSRB3
Right (odd TDM slot) channel status register file
01B4 C128
DITCSRB4
Right (odd TDM slot) channel status register file
01B4 C12C
DITCSRB5
Right (odd TDM slot) channel status register file
01B4 C130
DITUDRA0
Left (even TDM slot) user data register file
01B4 C134
DITUDRA1
Left (even TDM slot) user data register file
01B4 C138
DITUDRA2
Left (even TDM slot) user data register file
01B4 C13C
DITUDRA3
Left (even TDM slot) user data register file
01B4 C140
DITUDRA4
Left (even TDM slot) user data register file
01B4 C144
DITUDRA5
Left (even TDM slot) user data register file
01B4 C148
DITUDRB0
Right (odd TDM slot) user data register file
01B4 C14C
DITUDRB1
Right (odd TDM slot) user data register file
01B4 C150
DITUDRB2
Right (odd TDM slot) user data register file
01B4 C154
DITUDRB3
Right (odd TDM slot) user data register file
01B4 C158
DITUDRB4
Right (odd TDM slot) user data register file
01B4 C15C
DITUDRB5
Right (odd TDM slot) user data register file
01B4 C160 − 01B4 C17C
−
01B4 C180
SRCTL0
Reserved
Serializer 0 control register
01B4 C184
SRCTL1
Serializer 1 control register
01B4 C188
SRCTL2
Serializer 2 control register
01B4 C18C
SRCTL3
Serializer 3 control register
01B4 C190 − 01B4 C1FC
−
01B4 C200
XBUF0
Reserved
Transmit Buffer for Serializer 0
01B4 C204
XBUF1
Transmit Buffer for Serializer 1
01B4 C208
XBUF2
Transmit Buffer for Serializer 2
01B4 C20C
XBUF3
Transmit Buffer for Serializer 3
01B4 C210 − 01B4 C27C
−
01B4 C280
RBUF0
Receive Buffer for Serializer 0
01B4 C284
RBUF1
Receive Buffer for Serializer 1
01B4 C288
RBUF2
Receive Buffer for Serializer 2
01B4 C28C
RBUF3
Receive Buffer for Serializer 3
01B4 C290 − 01B4 FFFF
−
124
SPRS222C
Reserved
Reserved
June 2003 − Revised August 2004
Multichannel Audio Serial Port (McASP0) Peripheral
Table 4−32. McASP0 Data Registers
HEX ADDRESS RANGE
3C00 0000 − 3C0F FFFF
4.9.3
ACRONYM
RBUF/XBUFx
REGISTER NAME
COMMENTS
McASPx receive buffers or McASPx transmit buffers via
the Peripheral Data Bus.
(Used when RSEL or XSEL
bits = 0 [these bits are located
in the RFMT or XFMT
registers, respectively].)
McASP0 Electrical Data/Timing
4.9.3.1
Multichannel Audio Serial Port (McASP) Timing
Table 4−33. Timing Requirements for McASP (see Figure 4−33 and Figure 4−34)
−400
−500
−600
NO.
MIN
1
2
3
4
tc(AHCKRX)
tw(AHCKRX)
Cycle time, AHCLKR/X
tc(CKRX)
tw(CKRX)
Cycle time, ACLKR/X
ACLKR/X ext
Pulse duration, ACLKR/X high or low
tsu(FRXC-KRX)
Setup time, AFSR/X input valid before ACLKR/X latches data
6
th(CKRX-FRX)
Hold time, AFSR/X input valid after ACLKR/X latches data
7
8
tsu(AXR-CKRX)
th(CKRX-AXR)
Setup time, AXR input valid before ACLKR/X latches data
Hold time, AXR input valid after ACLKR/X latches data
MAX
20
ns
10
ns
33
ns
ACLKR/X ext
16.5
ns
ACLKR/X int
5
ns
ACLKR/X ext
5
ns
Pulse duration, AHCLKR/X high or low
5
UNIT
ACLKR/X int
5
ns
ACLKR/X ext
5
ns
ACLKR/X int
5
ns
ACLKR/X ext
5
ns
ACLKR/X int
5
ns
ACLKR/X ext
5
ns
Table 4−34. Switching Characteristics Over Recommended Operating Conditions for McASP
(see Figure 4−33 and Figure 4−34)
NO.
−400
−500
−600
PARAMETER
MIN
9
10
11
12
UNIT
MAX
tc(AHCKRX)
tw(AHCKRX)
Cycle time, AHCLKR/X
20
ns
Pulse duration, AHCLKR/X high or low
10
ns
tc(CKRX)
tw(CKRX)
Cycle time, ACLKR/X
ACLKR/X int
33
ns
Pulse duration, ACLKR/X high or low
ACLKR/X int
16.5
ACLKR/X int
−1
5
ns
ACLKR/X ext
0
10
ns
13
td(CKRX-FRX)
Delay time, ACLKR/X transmit edge to AFSX/R output valid
14
td(CKX-AXRV)
Delay time, ACLKX transmit edge to AXR output valid
15
tdis(CKRX−AXRHZ)
Disable time, AXR high impedance following last data bit from
ACLKR/X transmit edge
June 2003 − Revised August 2004
ns
ACLKX int
−1
5
ns
ACLKX ext
0
10
ns
ACLKR/X int
0
10
ns
ACLKR/X ext
0
10
ns
SPRS222C
125
Multichannel Audio Serial Port (McASP0) Peripheral
2
1
2
AHCLKR/X (Falling Edge Polarity)
AHCLKR/X (Rising Edge Polarity)
4
3
4
ACLKR/X (Falling Edge Polarity)
ACLKR/X (Rising Edge Polarity)
6
5
AFSR/X (Bit Width, 0 Bit Delay)
AFSR/X (Bit Width, 1 Bit Delay)
AFSR/X (Bit Width, 2 Bit Delay)
AFSR/X (Slot Width, 0 Bit Delay)
AFSR/X (Slot Width, 1 Bit Delay)
AFSR/X (Slot Width, 2 Bit Delay)
8
7
AXR[n] (Data In/Receive)
A0
A1
A30 A31 B0 B1
B30 B31 C0 C1
C2 C3
C31
Figure 4−33. McASP Input Timings
126
SPRS222C
June 2003 − Revised August 2004
Multichannel Audio Serial Port (McASP0) Peripheral
10
10
9
AHCLKR/X (Falling Edge Polarity)
AHCLKR/X (Rising Edge Polarity)
12
11
12
ACLKR/X (Falling Edge Polarity)
ACLKR/X (Rising Edge Polarity)
13
13
13
13
AFSR/X (Bit Width, 0 Bit Delay)
AFSR/X (Bit Width, 1 Bit Delay)
AFSR/X (Bit Width, 2 Bit Delay)
13
13
13
AFSR/X (Slot Width, 0 Bit Delay)
AFSR/X (Slot Width, 1 Bit Delay)
14
AFSR/X (Slot Width, 2 Bit Delay)
14
14
14
15
14
14
AXR[n] (Data Out/Transmit)
A0
A1
A30 A31 B0 B1
B30 B31 C0
C1 C2 C3
C31
Figure 4−34. McASP Output Timings
June 2003 − Revised August 2004
SPRS222C
127
Inter-Integrated Circuit (I2C)
4.10 Inter-Integrated Circuit (I2C)
The inter-integrated circuit (I2C) module provides an interface between a TMS320C6000 DSP and other
devices compliant with Philips Semiconductors Inter-IC bus (I2C-bus) specification version 2.1 and connected
by way of an I2C-bus. External components attached to this 2-wire serial bus can transmit/receive up to 8-bit
data to/from the DSP through the I2C module.
4.10.1
I2C Device-Specific Information
The I2C module on the TMS320DM641/DM640 may be used by the DSP to control local peripherals ICs
(DACs, ADCs, etc.) while the other may be used to communicate with other controllers in a system or to
implement a user interface.
The I2C port supports:
• Compatible with Philips I2C Specification Revision 2.1 (January 2000)
• Fast Mode up to 400 Kbps (no fail-safe I/O buffers)
• Noise Filter to Remove Noise 50 ns or less
• Seven- and Ten-Bit Device Addressing Modes
• Master (Transmit/Receive) and Slave (Transmit/Receive) Functionality
• Events: DMA, Interrupt, or Polling
• Slew-Rate Limited Open-Drain Output Buffers
Figure 4−35 is a block diagram of the I2C0 module.
I2C0 Module
Clock
Prescale
Peripheral Clock
(CPU/4)
I2CPSCx
SCL
Noise
Filter
I2C Clock
Bit Clock
Generator
Control
I2CCLKHx
I2COARx
Own
Address
I2CSARx
Slave
Address
I2CMDRx
Mode
I2CCNTx
Data
Count
I2CCLKLx
Transmit
I2CXSRx
Transmit
Shift
I2CDXRx
Transmit
Buffer
Interrupt/DMA
SDA
I2C Data
Noise
Filter
Receive
I2CIERx
Interrupt
Enable
I2CDRRx
Receive
Buffer
I2CSTRx
Interrupt
Status
I2CRSRx
Receive
Shift
I2CISRCx
Interrupt
Source
NOTE A: Shading denotes control/status registers.
Figure 4−35. I2C0 Module Block Diagram
128
SPRS222C
June 2003 − Revised August 2004
Inter-Integrated Circuit (I2C)
For more detailed information on the I2C peripheral, see the TMS320C6000 DSP Inter-Integrated Circuit (I2C)
Module Reference Guide (literature number SPRU175).
4.10.2
I2C Peripheral Register Description(s)
Table 4−35. I2C0 Registers
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
01B4 0000
I2COAR0
I2C0 own address register
01B4 0004
I2CIER0
I2C0 interrupt enable register
01B4 0008
I2CSTR0
I2C0 interrupt status register
01B4 000C
I2CCLKL0
I2C0 clock low-time divider register
01B4 0010
I2CCLKH0
I2C0 clock high-time divider register
01B4 0014
I2CCNT0
I2C0 data count register
01B4 0018
I2CDRR0
I2C0 data receive register
01B4 001C
I2CSAR0
I2C0 slave address register
01B4 0020
I2CDXR0
I2C0 data transmit register
01B4 0024
I2CMDR0
I2C0 mode register
I2C0 interrupt source register
01B4 0028
I2CISRC0
01B4 002C
−
01B4 0030
I2CPSC0
I2C0 prescaler register
01B4 0034
I2CPID10
I2C0 Peripheral Identification register 1 [Value: 0x0000 0101]
01B4 0038
I2CPID20
I2C0 Peripheral Identification register 2 [Value: 0x0000 0005]
01B4 003C − 01B4 3FFF
−
June 2003 − Revised August 2004
Reserved
Reserved
SPRS222C
129
Inter-Integrated Circuit (I2C)
4.10.3
I2C Electrical Data/Timing
4.10.3.1 Inter-Integrated Circuits (I2C) Timing
Table 4−36. Timing Requirements for I2C Timings† (see Figure 4−36)
−400
−500
−600
NO.
STANDARD
MODE
MIN
1
tc(SCL)
2
Setup time, SCL high before SDA low (for a repeated START
tsu(SCLH-SDAL)
condition)
3
Hold time, SCL low after SDA low (for a START and a repeated
th(SCLL-SDAL)
START condition)
4
tw(SCLL)
tw(SCLH)
5
6
7
8
9
10
12
Pulse duration, SCL low
Pulse duration, SCL high
14
15
4.7
0.6
µs
4
0.6
µs
4.7
1.3
µs
4
0.6
100‡
0§
µs
0.9¶
1.3
20 + 0.1Cb#
300
ns
20 + 0.1Cb#
20 + 0.1Cb#
300
ns
300
ns
20 + 0.1Cb#
0.6
300
0
50
ns
400
pF
4.7
tw(SP)
Cb#
MAX
µs
tw(SDAH)
tr(SDA)
Rise time, SDA
1000
Rise time, SCL
1000
Fall time, SDA
300
tf(SCL)
Fall time, SCL
tsu(SCLH-SDAH) Setup time, SCL high before SDA high (for STOP condition)
13
MIN
2.5
250
0§
Pulse duration, SDA high between STOP and START conditions
MAX
10
tsu(SDAV-SDLH) Setup time, SDA valid before SCL high
th(SDA-SDLL) Hold time, SDA valid after SCL low (For I2C bus devices)
tr(SCL)
tf(SDA)
11
Cycle time, SCL
UNIT
FAST
MODE
300
4
Pulse duration, spike (must be suppressed)
Capacitive load for each bus line
ns
µs
µs
ns
µs
400
† The I2C pins SDA and SCL do not feature fail-safe I/O buffers. These pins could potentially draw current when the device is powered down.
‡ A Fast-mode I2C-bus device can be used in a Standard-mode I2C-bus system, but the requirement tsu(SDA−SCLH) ≥ 250 ns must then be met.
This will automatically be the case if the device does not stretch the LOW period of the SCL signal. If such a device does stretch the LOW period
of the SCL signal, it must output the next data bit to the SDA line tr max + tsu(SDA−SCLH) = 1000 + 250 = 1250 ns (according to the Standard-mode
I2C-Bus Specification) before the SCL line is released.
§ A device must internally provide a hold time of at least 300 ns for the SDA signal (referred to the VIHmin of the SCL signal) to bridge the undefined
region of the falling edge of SCL.
¶ The maximum th(SDA−SCLL) has only to be met if the device does not stretch the low period [tw(SCLL)] of the SCL signal.
# Cb = total capacitance of one bus line in pF. If mixed with HS-mode devices, faster fall-times are allowed.
11
9
SDA
6
8
14
4
13
5
10
SCL
1
12
3
2
7
3
Stop
Start
Repeated
Start
Stop
Figure 4−36. I2C Receive Timings
130
SPRS222C
June 2003 − Revised August 2004
Inter-Integrated Circuit (I2C)
Table 4−37. Switching Characteristics for I2C Timings† (see Figure 4−37)
−400
−500
−600
NO.
PARAMETER
16
tc(SCL)
Cycle time, SCL
td(SCLH-SDAL) Delay time, SCL high to SDA low (for a repeated START condition)
STANDARD
MODE
MIN
17
18
19
20
21
22
23
24
25
26
27
28
MAX
UNIT
FAST
MODE
MIN
MAX
10
2.5
µs
4.7
0.6
µs
4
0.6
µs
4.7
1.3
µs
4
0.6
µs
td(SDAV-SDLH) Delay time, SDA valid to SCL high
tv(SDLL-SDAV) Valid time, SDA valid after SCL low (For I2C bus devices)
250
100
0
0
0.9
tw(SDAH)
tr(SDA)
Pulse duration, SDA high between STOP and START conditions
4.7
Rise time, SDA
1000
300
ns
tr(SCL)
tf(SDA)
Rise time, SCL
1000
1.3
20 + 0.1Cb†
20 + 0.1Cb†
300
ns
300
ns
Delay time, SDA low to SCL low (for a START and a repeated
td(SDAL-SCLL)
START condition)
tw(SCLL)
tw(SCLH)
Pulse duration, SCL low
Pulse duration, SCL high
Fall time, SDA
300
tf(SCL)
Fall time, SCL
td(SCLH-SDAH) Delay time, SCL high to SDA high (for STOP condition)
300
4
20 + 0.1Cb†
20 + 0.1Cb†
ns
µs
300
10
26
ns
µs
0.6
29
Cp
Capacitance for each I2C pin
10
† Cb = total capacitance of one bus line in pF. If mixed with HS-mode devices, faster fall-times are allowed.
µs
pF
24
SDA
21
23
19
28
20
25
SCL
16
27
18
17
22
18
Stop
Start
Repeated
Start
Stop
Figure 4−37. I2C Transmit Timings
June 2003 − Revised August 2004
SPRS222C
131
Host-Port Interface (HPI) [DM641 Only]
4.11
Host-Port Interface (HPI) [DM641 Only]
The HPI is a parallel port through which a host processor can directly access the CPU memory space. The
host device functions as a master to the interface, which increases ease of access. The host and CPU can
exchange information via internal or external memory. The host also has direct access to memory-mapped
peripherals. Connectivity to the CPU memory space is provided through the enhanced DMA (EDMA)
controller. Both the host and the CPU can access the HPI control register (HPIC) and the HPI address register
(HPIA). The host can access the HPI data register (HPID) and the HPIC by using the external data and
interface control signals.
For more detailed information on the HPI peripheral, see the TMS320C6000 DSP Host Port Interface (HPI)
Reference Guide (literature number SPRU578).
4.11.1 HPI Peripheral Register Description(s) [DM641 Only]
Table 4−38. HPI Registers [DM641 Only]
HEX ADDRESS RANGE
ACRONYM
−
HPID
HPI data register
REGISTER NAME
Host read/write access only
COMMENTS
0188 0000
HPIC
HPI control register
HPIC has both Host/CPU read/write access
0188 0004
HPIA
(HPIAW)†
HPI address register
(Write)
0188 0008
HPIA
(HPIAR)†
HPI address register
(Read)
0188 000C − 0189 FFFF
−
018A 0000
HPI_TRCTL
HPIA has both Host/CPU read/write access
Reserved
HPI transfer request control
register
018A 0004 − 018B FFFF
−
Reserved
† Host access to the HPIA register updates both the HPIAW and HPIAR registers. The CPU can access HPIAW and HPIAR independently.
4.11.2
Host-Port Interface (HPI) Electrical Data/Timing [DM641 Only]
Table 4−39. Timing Requirements for Host-Port Interface Cycles†‡ (see Figure 4−38 through Figure 4−41)
[DM641 Only]
−400
−500
−600
NO.
MIN
1
2
3
4
10
11
12
13
tsu(SELV-HSTBL)
th(HSTBL-SELV)
Setup time, select signals§ valid before HSTROBE low
Hold time, select signals§ valid after HSTROBE low
tw(HSTBL)
tw(HSTBH)
Pulse duration, HSTROBE low
tsu(SELV-HASL)
th(HASL-SELV)
tsu(HDV-HSTBH)
th(HSTBH-HDV)
14
th(HRDYL-HSTBL)
18
tsu(HASL-HSTBL)
th(HSTBL-HASL)
19
Pulse duration, HSTROBE high between consecutive accesses
Setup time, select signals§ valid before HAS low
UNIT
MAX
5
ns
2.4
4P¶
ns
4P
ns
ns
5
ns
Hold time, select signals§ valid after HAS low
2
ns
Setup time, host data valid before HSTROBE high
5
ns
2.8
ns
2
ns
2
ns
2.1
ns
Hold time, host data valid after HSTROBE high
Hold time, HSTROBE low after HRDY low. HSTROBE should not be
inactivated until HRDY is active (low); otherwise, HPI writes will not complete
properly.
Setup time, HAS low before HSTROBE low
Hold time, HAS low after HSTROBE low
† HSTROBE refers to the following logical operation on HCS, HDS1, and HDS2: [NOT(HDS1 XOR HDS2)] OR HCS.
‡ P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
§ Select signals include: HCNTL[1:0], HR/W, and HHWIL.
¶ Select the parameter value of 4P or 12.5 ns, whichever is larger.
132
SPRS222C
June 2003 − Revised August 2004
Host-Port Interface (HPI) [DM641 Only]
Table 4−40. Switching Characteristics Over Recommended Operating Conditions During Host-Port
Interface Cycles†‡ (see Figure 4−38 through Figure 4−41) [DM641 Only]
NO.
−400
−500
−600
PARAMETER
UNIT
MIN
MAX
1.3
4P + 8
6
td(HSTBL-HRDYH)
Delay time, HSTROBE low to HRDY high#
7
td(HSTBL-HDLZ)
Delay time, HSTROBE low to HD low impedance for an HPI read
2
ns
8
Delay time, HD valid to HRDY low
−3
ns
9
td(HDV-HRDYL)
toh(HSTBH-HDV)
Output hold time, HD valid after HSTROBE high
1.5
15
td(HSTBH-HDHZ)
Delay time, HSTROBE high to HD high impedance
ns
ns
12
ns
16
td(HSTBL-HDV)
Delay time, HSTROBE low to HD valid (HPI16 mode, 2nd half-word only)
4P + 8
ns
† HSTROBE refers to the following logical operation on HCS, HDS1, and HDS2: [NOT(HDS1 XOR HDS2)] OR HCS.
‡ P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
# This parameter is used during HPID reads and writes. For reads, at the beginning of the first half-word transfer (HPI16) on the falling edge of
HSTROBE, the HPI sends the request to the EDMA internal address generation hardware, and HRDY remains high until the EDMA internal
address generation hardware loads the requested data into HPID. For writes, HRDY goes high if the internal write buffer is full.
HAS
1
1
2
2
HCNTL[1:0]
1
1
2
2
HR/W
1
1
2
2
HHWIL
4
3
HSTROBE†
3
HCS
7
15
9
16
15
9
HD[15:0] (output)
6
1st half-word
8
2nd half-word
HRDY
† HSTROBE refers to the following logical operation on HCS, HDS1, and HDS2: [NOT(HDS1 XOR HDS2)] OR HCS.
Figure 4−38. HPI16 Read Timing (HAS Not Used, Tied High) [DM641 Only]
June 2003 − Revised August 2004
SPRS222C
133
Host-Port Interface (HPI) [DM641 Only]
HAS†
19
11
19
10
11
10
HCNTL[1:0]
11
11
10
10
HR/W
11
11
10
10
HHWIL
4
3
HSTROBE‡
18
18
HCS
15
7
9
15
16
9
HD[15:0] (output)
6
1st half-word
8
2nd half-word
HRDY
† For correct operation, strobe the HAS signal only once per HSTROBE active cycle.
‡ HSTROBE refers to the following logical operation on HCS, HDS1, and HDS2: [NOT(HDS1 XOR HDS2)] OR HCS.
Figure 4−39. HPI16 Read Timing (HAS Used) [DM641 Only]
HAS
1
1
2
2
HCNTL[1:0]
1
1
2
2
HR/W
1
1
2
2
HHWIL
3
3
4
HSTROBE†
HCS
12
13
12
13
HD[15:0] (input)
1st half-word
6
2nd half-word
14
HRDY
† HSTROBE refers to the following logical operation on HCS, HDS1, and HDS2: [NOT(HDS1 XOR HDS2)] OR HCS.
Figure 4−40. HPI16 Write Timing (HAS Not Used, Tied High) [DM641 Only]
134
SPRS222C
June 2003 − Revised August 2004
Host-Port Interface (HPI) [DM641 Only]
19
HAS†
19
11
11
10
10
HCNTL[1:0]
11
11
10
10
HR/W
11
11
10
10
HHWIL
3
4
HSTROBE‡
18
18
HCS
12
13
12
13
HD[15:0] (input)
1st half-word
6
2nd half-word
14
HRDY
† For correct operation, strobe the HAS signal only once per HSTROBE active cycle.
‡ HSTROBE refers to the following logical operation on HCS, HDS1, and HDS2: [NOT(HDS1 XOR HDS2)] OR HCS.
Figure 4−41. HPI16 Write Timing (HAS Used) [DM641 Only]
June 2003 − Revised August 2004
SPRS222C
135
Multichannel Buffered Serial Port (McBSP)
4.12 Multichannel Buffered Serial Port (McBSP)
The McBSP provides these functions:
•
•
•
•
•
Full-duplex communication
Double-buffered data registers, which allow a continuous data stream
Independent framing and clocking for receive and transmit
Direct interface to industry-standard codecs, analog interface chips (AICs), and other serially connected
analog-to-digital (A/D) and digital-to-analog (D/A) devices
External shift clock or an internal, programmable frequency shift clock for data transfer
For more detailed information on the McBSP peripheral, see the TMS320C6000 DSP Multichannel Buffered
Serial Port (McBSP) Reference Guide (literature number SPRU580).
4.12.1
McBSP Peripheral Register Description(s)
Table 4−41. McBSP 0 Registers
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
018C 0000
DRR0
McBSP0 data receive register via Configuration Bus
0x3000 0000 − 0x33FF FFFF
DRR0
McBSP0 data receive register via Peripheral Bus
018C 0004
DXR0
McBSP0 data transmit register via Configuration Bus
0x3000 0000 − 0x33FF FFFF
DXR0
McBSP0 data transmit register via Peripheral Bus
COMMENTS
The CPU and EDMA controller
can only read this register; they
cannot write to it.
018C 0008
SPCR0
018C 000C
RCR0
McBSP0 serial port control register
McBSP0 receive control register
018C 0010
XCR0
McBSP0 transmit control register
018C 0014
SRGR0
018C 0018
MCR0
018C 001C
RCERE00
McBSP0 enhanced receive channel enable register 0
018C 0020
XCERE00
McBSP0 enhanced transmit channel enable register 0
018C 0024
PCR0
McBSP0 sample rate generator register
McBSP0 multichannel control register
McBSP0 pin control register
018C 0028
RCERE10
McBSP0 enhanced receive channel enable register 1
018C 002C
XCERE10
McBSP0 enhanced transmit channel enable register 1
018C 0030
RCERE20
McBSP0 enhanced receive channel enable register 2
018C 0034
XCERE20
McBSP0 enhanced transmit channel enable register 2
018C 0038
RCERE30
McBSP0 enhanced receive channel enable register 3
018C 003C
XCERE30
McBSP0 enhanced transmit channel enable register 3
018C 0040 − 018F FFFF
–
136
SPRS222C
Reserved
June 2003 − Revised August 2004
Multichannel Buffered Serial Port (McBSP)
Table 4−42. McBSP 1 Registers
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
0190 0000
DRR1
McBSP1 data receive register via Configuration Bus
0x3400 0000 − 0x37FF FFFF
DRR1
McBSP1 data receive register via peripheral bus
0190 0004
DXR1
McBSP1 data transmit register via configuration bus
0x3400 0000 − 0x37FF FFFF
DXR1
McBSP1 data transmit register via peripheral bus
0190 0008
SPCR1
0190 000C
RCR1
McBSP1 receive control register
0190 0010
XCR1
McBSP1 transmit control register
0190 0014
SRGR1
0190 0018
MCR1
0190 001C
RCERE01
McBSP1 enhanced receive channel enable register 0
0190 0020
XCERE01
McBSP1 enhanced transmit channel enable register 0
McBSP1 serial port control register
McBSP1 sample rate generator register
McBSP1 multichannel control register
0190 0024
PCR1
0190 0028
RCERE11
McBSP1 enhanced receive channel enable register 1
0190 002C
XCERE11
McBSP1 enhanced transmit channel enable register 1
0190 0030
RCERE21
McBSP1 enhanced receive channel enable register 2
0190 0034
XCERE21
McBSP1 enhanced transmit channel enable register 2
McBSP1 pin control register
0190 0038
RCERE31
McBSP1 enhanced receive channel enable register 3
0190 003C
XCERE31
McBSP1 enhanced transmit channel enable register 3
0190 0040 − 0193 FFFF
–
June 2003 − Revised August 2004
COMMENTS
The CPU and EDMA controller
can only read this register; they
cannot write to it.
Reserved
SPRS222C
137
Multichannel Buffered Serial Port (McBSP)
4.12.2
McBSP Electrical Data/Timing
4.12.2.1 Multichannel Buffered Serial Port (McBSP) Timing
Table 4−43. Timing Requirements for McBSP† (see Figure 4−42)
−400
−500
−600
NO.
MIN
2
3
tc(CKRX)
tw(CKRX)
Cycle time, CLKR/X
Pulse duration, CLKR/X high or CLKR/X low
5
tsu(FRH-CKRL)
Setup time, external FSR high before CLKR low
6
th(CKRL-FRH)
Hold time, external FSR high after CLKR low
7
tsu(DRV-CKRL)
Setup time, DR valid before CLKR low
8
th(CKRL-DRV)
Hold time, DR valid after CLKR low
10
tsu(FXH-CKXL)
Setup time, external FSX high before CLKX low
11
th(CKXL-FXH)
Hold time, external FSX high after CLKX low
UNIT
MAX
CLKR/X ext
4P or 6.67‡§
ns
CLKR/X ext
0.5tc(CKRX) − 1¶
ns
CLKR int
9
CLKR ext
1.3
CLKR int
6
CLKR ext
3
CLKR int
8
CLKR ext
0.9
CLKR int
3
CLKR ext
3.1
CLKX int
9
CLKX ext
1.3
CLKX int
6
CLKX ext
3
ns
ns
ns
ns
ns
ns
† CLKRP = CLKXP = FSRP = FSXP = 0. If polarity of any of the signals is inverted, then the timing references of that signal are also inverted.
‡ P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
§ Use whichever value is greater. Minimum CLKR/X cycle times must be met, even when CLKR/X is generated by an internal clock source. The
minimum CLKR/X cycle times are based on internal logic speed; the maximum usable speed may be lower due to EDMA limitations and AC timing
requirements.
¶ This parameter applies to the maximum McBSP frequency. Operate serial clocks (CLKR/X) in the reasonable range of 40/60 duty cycle.
138
SPRS222C
June 2003 − Revised August 2004
Multichannel Buffered Serial Port (McBSP)
Table 4−44. Switching Characteristics Over Recommended Operating Conditions for McBSP†‡
(see Figure 4−42)
NO.
−400
−500
−600
PARAMETER
Delay time, CLKS high to CLKR/X high for internal CLKR/X generated
from CLKS input
UNIT
MIN
MAX
1.4
10
4P or 6.67§¶#
C − 1||
C + 1||
ns
ns
1
td(CKSH-CKRXH)
2
Cycle time, CLKR/X
3
tc(CKRX)
tw(CKRX)
Pulse duration, CLKR/X high or CLKR/X low
CLKR/X int
4
td(CKRH-FRV)
Delay time, CLKR high to internal FSR valid
CLKR int
−2.1
3
CLKX int
−1.7
3
CLKX ext
1.7
9
9
td(CKXH-FXV)
Delay time, CLKX high to internal FSX valid
12
tdis(CKXH-DXHZ)
Disable time, DX high impedance following last data bit
from CLKX high
13
td(CKXH-DXV)
Delay time, CLKX high to DX valid
14
td(FXH-DXV)
CLKR/X int
ns
ns
CLKX int
−3.9
4
CLKX ext
2.0
9
CLKX int
−3.9 + D1k
4 + D2k
CLKX ext
2.0 + D1k
9 + D2k
Delay time, FSX high to DX valid
FSX int
−2.3 + D1h
5.6 + D2h
ONLY applies when in data
delay 0 (XDATDLY = 00b) mode
FSX ext
1.9 + D1h
9 + D2h
ns
ns
ns
ns
† CLKRP = CLKXP = FSRP = FSXP = 0. If polarity of any of the signals is inverted, then the timing references of that signal are also inverted.
‡ Minimum delay times also represent minimum output hold times.
§ Minimum CLKR/X cycle times must be met, even when CLKR/X is generated by an internal clock source. Minimum CLKR/X cycle times are based
on internal logic speed; the maximum usable speed may be lower due to EDMA limitations and AC timing requirements.
¶ P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
# Use whichever value is greater.
|| C = H or L
S = sample rate generator input clock = 4P if CLKSM = 1 (P = 1/CPU clock frequency)
= sample rate generator input clock = P_clks if CLKSM = 0 (P_clks = CLKS period)
H = CLKX high pulse width = (CLKGDV/2 + 1) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
L = CLKX low pulse width = (CLKGDV/2) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
CLKGDV should be set appropriately to ensure the McBSP bit rate does not exceed the maximum limit (see ¶ footnote above).
k Extra delay from CLKX high to DX valid applies only to the first data bit of a device, if and only if DXENA = 1 in SPCR.
if DXENA = 0, then D1 = D2 = 0
if DXENA = 1, then D1 = 4P, D2 = 8P
h Extra delay from FSX high to DX valid applies only to the first data bit of a device, if and only if DXENA = 1 in SPCR.
if DXENA = 0, then D1 = D2 = 0
if DXENA = 1, then D1 = 4P, D2 = 8P
June 2003 − Revised August 2004
SPRS222C
139
Multichannel Buffered Serial Port (McBSP)
CLKS
1
2
3
3
CLKR
4
4
FSR (int)
5
6
FSR (ext)
7
DR
8
Bit(n-1)
(n-2)
(n-3)
2
3
3
CLKX
9
FSX (int)
11
10
FSX (ext)
FSX (XDATDLY=00b)
14
13†
12
DX
Bit 0
13†
Bit(n-1)
(n-2)
(n-3)
† Parameter No. 13 applies to the first data bit only when XDATDLY ≠ 0.
Figure 4−42. McBSP Timing
Table 4−45. Timing Requirements for FSR When GSYNC = 1 (see Figure 4−43)
−400
−500
−600
NO.
MIN
1
2
tsu(FRH-CKSH)
th(CKSH-FRH)
UNIT
MAX
Setup time, FSR high before CLKS high
4
ns
Hold time, FSR high after CLKS high
4
ns
CLKS
1
2
FSR external
CLKR/X (no need to resync)
CLKR/X (needs resync)
Figure 4−43. FSR Timing When GSYNC = 1
140
SPRS222C
June 2003 − Revised August 2004
Multichannel Buffered Serial Port (McBSP)
Table 4−46. Timing Requirements for McBSP as SPI Master or Slave:
CLKSTP = 10b, CLKXP = 0†‡ (see Figure 4−44)
−400
−500
−600
NO.
MASTER
MIN
4
5
tsu(DRV-CKXL)
th(CKXL-DRV)
Setup time, DR valid before CLKX low
UNIT
SLAVE
MAX
MIN
MAX
12
2 − 12P
ns
4
5 + 24P
ns
Hold time, DR valid after CLKX low
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4−47. Switching Characteristics Over Recommended Operating Conditions for McBSP as
SPI Master or Slave: CLKSTP = 10b, CLKXP = 0†‡ (see Figure 4−44)
NO.
−400
−500
−600
PARAMETER
MASTER§
2
th(CKXL-FXL)
td(FXL-CKXH)
Hold time, FSX low after CLKX low¶
Delay time, FSX low to CLKX high#
3
td(CKXH-DXV)
Delay time, CLKX high to DX valid
6
tdis(CKXL-DXHZ)
Disable time, DX high impedance following last data bit
from CLKX low
7
tdis(FXH-DXHZ)
Disable time, DX high impedance following last data bit
from FSX high
8
td(FXL-DXV)
Delay time, FSX low to DX valid
1
UNIT
SLAVE
MIN
MAX
MIN
MAX
T−2
T+3
ns
L − 2.5
L+3
ns
−2
4
L−2
L+3
12P + 2.8
20P + 17
ns
ns
4P + 3
12P + 17
ns
8P + 1.8
16P + 17
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
§ S = Sample rate generator input clock = 4P if CLKSM = 1 (P = 1/CPU clock frequency)
= Sample rate generator input clock = P_clks if CLKSM = 0 (P_clks = CLKS period)
T = CLKX period = (1 + CLKGDV) * S
H = CLKX high pulse width = (CLKGDV/2 + 1) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
L = CLKX low pulse width = (CLKGDV/2) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
¶ FSRP = FSXP = 1. As a SPI Master, FSX is inverted to provide active-low slave-enable output. As a Slave, the active-low signal input on FSX
and FSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for Master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for Slave McBSP
# FSX 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
(CLKX).
CLKX
1
2
FSX
7
6
DX
8
3
Bit 0
Bit(n-1)
4
DR
Bit 0
(n-2)
(n-3)
(n-4)
5
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4−44. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0
June 2003 − Revised August 2004
SPRS222C
141
Multichannel Buffered Serial Port (McBSP)
Table 4−48. Timing Requirements for McBSP as SPI Master or Slave:
CLKSTP = 11b, CLKXP = 0†‡ (see Figure 4−45)
−400
−500
−600
NO.
MASTER
MIN
4
5
tsu(DRV-CKXH)
th(CKXH-DRV)
Setup time, DR valid before CLKX high
UNIT
SLAVE
MAX
MIN
MAX
12
2 − 12P
ns
4
5 + 24P
ns
Hold time, DR valid after CLKX high
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4−49. Switching Characteristics Over Recommended Operating Conditions for McBSP as
SPI Master or Slave: CLKSTP = 11b, CLKXP = 0†‡ (see Figure 4−45)
NO.
−400
−500
−600
PARAMETER
MASTER§
UNIT
SLAVE
MIN
MAX
L−2
L+3
MIN
MAX
ns
T − 2.5
T+3
ns
2
th(CKXL-FXL)
td(FXL-CKXH)
Hold time, FSX low after CLKX low¶
Delay time, FSX low to CLKX high#
3
td(CKXL-DXV)
Delay time, CLKX low to DX valid
−2
4 12P + 3
20P + 17
ns
6
tdis(CKXL-DXHZ)
Disable time, DX high impedance following last data bit from
CLKX low
−2
4 12P + 3
20P + 17
ns
7
td(FXL-DXV)
Delay time, FSX low to DX valid
16P + 17
ns
1
H−2
H+4
8P + 2
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
§ S = Sample rate generator input clock = 4P if CLKSM = 1 (P = 1/CPU clock frequency)
= Sample rate generator input clock = P_clks if CLKSM = 0 (P_clks = CLKS period)
T = CLKX period = (1 + CLKGDV) * S
H = CLKX high pulse width = (CLKGDV/2 + 1) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
L = CLKX low pulse width = (CLKGDV/2) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
¶ FSRP = FSXP = 1. As a SPI Master, FSX is inverted to provide active-low slave-enable output. As a Slave, the active-low signal input on FSX
and FSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for Master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for Slave McBSP
# FSX 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
(CLKX).
CLKX
1
2
6
Bit 0
7
FSX
DX
3
Bit(n-1)
4
DR
Bit 0
(n-2)
(n-3)
(n-4)
5
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4−45. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0
142
SPRS222C
June 2003 − Revised August 2004
Multichannel Buffered Serial Port (McBSP)
Table 4−50. Timing Requirements for McBSP as SPI Master or Slave:
CLKSTP = 10b, CLKXP = 1†‡ (see Figure 4−46)
−400
−500
−600
NO.
MASTER
MIN
4
5
tsu(DRV-CKXH)
th(CKXH-DRV)
Setup time, DR valid before CLKX high
UNIT
SLAVE
MAX
MIN
MAX
12
2 − 12P
ns
4
5 + 24P
ns
Hold time, DR valid after CLKX high
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4−51. Switching Characteristics Over Recommended Operating Conditions for McBSP as
SPI Master or Slave: CLKSTP = 10b, CLKXP = 1†‡ (see Figure 4−46)
NO.
−400
−500
−600
PARAMETER
MASTER§
MIN
UNIT
SLAVE
MAX
MIN
MAX
2
th(CKXH-FXL)
td(FXL-CKXL)
Hold time, FSX low after CLKX high¶
Delay time, FSX low to CLKX low#
3
td(CKXL-DXV)
Delay time, CLKX low to DX valid
6
tdis(CKXH-DXHZ)
Disable time, DX high impedance following last data bit
from CLKX high
7
tdis(FXH-DXHZ)
Disable time, DX high impedance following last data bit
from FSX high
4P + 3
12P + 17
ns
8
td(FXL-DXV)
Delay time, FSX low to DX valid
8P + 2
16P + 17
ns
1
T−2
T+3
ns
H − 2.5
H+3
ns
−2
H−2
4 12P + 3
20P + 17
H+3
ns
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
§ S = Sample rate generator input clock = 4P if CLKSM = 1 (P = 1/CPU clock frequency)
= Sample rate generator input clock = P_clks if CLKSM = 0 (P_clks = CLKS period)
T = CLKX period = (1 + CLKGDV) * S
H = CLKX high pulse width = (CLKGDV/2 + 1) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
L = CLKX low pulse width = (CLKGDV/2) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
¶ FSRP = FSXP = 1. As a SPI Master, FSX is inverted to provide active-low slave-enable output. As a Slave, the active-low signal input on FSX
and FSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for Master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for Slave McBSP
# FSX 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
(CLKX).
CLKX
1
2
FSX
7
6
DX
8
3
Bit 0
Bit(n-1)
4
DR
Bit 0
(n-2)
(n-3)
(n-4)
5
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4−46. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1
June 2003 − Revised August 2004
SPRS222C
143
Multichannel Buffered Serial Port (McBSP)
Table 4−52. Timing Requirements for McBSP as SPI Master or Slave:
CLKSTP = 11b, CLKXP = 1†‡ (see Figure 4−47)
−400
−500
−600
NO.
MASTER
MIN
4
5
tsu(DRV-CKXH)
th(CKXH-DRV)
Setup time, DR valid before CLKX high
UNIT
SLAVE
MAX
MIN
MAX
12
2 − 12P
ns
4
5 + 24P
ns
Hold time, DR valid after CLKX high
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
Table 4−53. Switching Characteristics Over Recommended Operating Conditions for McBSP as
SPI Master or Slave: CLKSTP = 11b, CLKXP = 1†‡ (see Figure 4−47)
NO.
−400
−500
−600
PARAMETER
MASTER§
MIN
MAX
H−2
H+3
ns
T − 2.5
T + 1.5
ns
Delay time, CLKX high to DX valid
−2
4
12P + 3
20P + 17
ns
tdis(CKXH-DXHZ)
Disable time, DX high impedance following last data bit
from CLKX high
−2
4
12P + 3
20P + 17
ns
td(FXL-DXV)
Delay time, FSX low to DX valid
L−2
L+4
8P + 2
16P + 17
ns
2
th(CKXH-FXL)
td(FXL-CKXL)
Hold time, FSX low after CLKX high¶
Delay time, FSX low to CLKX low#
3
td(CKXH-DXV)
6
7
1
UNIT
SLAVE
MIN
MAX
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ For all SPI Slave modes, CLKG is programmed as 1/4 of the CPU clock by setting CLKSM = CLKGDV = 1.
§ S = Sample rate generator input clock = 4P if CLKSM = 1 (P = 1/CPU clock frequency)
= Sample rate generator input clock = P_clks if CLKSM = 0 (P_clks = CLKS period)
T = CLKX period = (1 + CLKGDV) * S
H = CLKX high pulse width = (CLKGDV/2 + 1) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
L = CLKX low pulse width = (CLKGDV/2) * S if CLKGDV is even
= (CLKGDV + 1)/2 * S if CLKGDV is odd or zero
¶ FSRP = FSXP = 1. As a SPI Master, FSX is inverted to provide active-low slave-enable output. As a Slave, the active-low signal input on FSX
and FSR is inverted before being used internally.
CLKXM = FSXM = 1, CLKRM = FSRM = 0 for Master McBSP
CLKXM = CLKRM = FSXM = FSRM = 0 for Slave McBSP
# FSX 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
(CLKX).
CLKX
1
2
FSX
6
DX
7
3
Bit 0
Bit(n-1)
4
DR
Bit 0
(n-2)
(n-3)
(n-4)
5
Bit(n-1)
(n-2)
(n-3)
(n-4)
Figure 4−47. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1
144
SPRS222C
June 2003 − Revised August 2004
Video Port
4.13 Video Port
Each Video Port is capable of sending and receiving digital video data. The Video Ports are also capable of
capturing/displaying RAW data. The Video Port peripherals follow video standards such as CCIR601 and
ITU-BT.656.
4.13.1
Video Port Device-Specific Information
The TMS320DM641 device has two video port peripherals [VP0 and VP1]. The TMS320DM640 device only
supports one video port peripheral [VP0].
The video port peripheral can operate as a video capture port, video display port, or as a transport stream
interface (TSI) capture port.
The port consists of a single channel A. A 2560-byte capture/display buffer is utilized on this channel. The port
is always configured for either video capture or display only. Separate data pipelines control the parsing and
formatting of video capture or display data for each of the BT.656, raw video, and TSI modes.
For video capture operation, the video port may operate as a single channel of 8-bit BT.656, 8-bit raw video,
or 8-bit TSI.
For video display operation, the video port may operate as 8-bit BT.656 or 8-bit raw video.
Note: The following Video Port mode currently is not supported:
•
8-Bit Transport Stream Interface (TSI) capture port [TSI currently not supported]
For more detailed information on the DM641 and DM640 Video Port peripherals, see the TMS320C64x DSP
Video Port/VCXO Interpolated Control (VIC) Port Reference Guide (literature number SPRU629).
4.13.2
Video Port Peripheral Register Description(s)
Table 4−54. Video Port 0 and 1 (VP0 and VP1) Control Registers
HEX ADDRESS RANGE
VP0
VP1
[DM641 ONLY]
ACRONYM
01C4 0000
01C4 4000
VP_PIDx
Video Port Peripheral Identification Register
01C4 0004
01C4 4004
VP_PCRx
Video Port Peripheral Control Register
01C4 0008
01C4 4008
−
Reserved
01C4 000C
01C4 400C
−
Reserved
01C4 0020
01C4 4020
VP_PFUNCx
Video Port Pin Function Register
01C4 0024
01C4 4024
VP_PDIRx
Video Port Pin Direction Register
01C4 0028
01C4 4028
VP_PDINx
Video Port Pin Data Input Register
01C4 002C
01C4 402C
VP_PDOUTx
Video Port Pin Data Output Register
01C4 0030
01C4 4030
VP_PDSETx
Video Port Pin Data Set Register
01C4 0034
01C4 4034
VP_PDCLRx
Video Port Pin Data Clear Register
01C4 0038
01C4 4038
VP_PIENx
Video Port Pin Interrupt Enable Register
01C4 003C
01C4 403C
VP_PIPOx
Video Port Pin Interrupt Polarity Register
01C4 0040
01C4 4040
VP_PISTATx
Video Port Pin Interrupt Status Register
01C4 0044
01C4 4044
VP_PICLRx
Video Port Pin Interrupt Clear Register
01C4 00C0
01C4 40C0
VP_CTLx
Video Port Control Register
01C4 00C4
01C4 40C4
VP_STATx
Video Port Status Register
June 2003 − Revised August 2004
DESCRIPTION
SPRS222C
145
Video Port
Table 4−54. Video Port 0 and 1 (VP0 and VP1) Control Registers (Continued)
HEX ADDRESS RANGE
146
VP0
VP1
[DM641 ONLY]
ACRONYM
DESCRIPTION
01C4 00C8
01C4 40C8
VP_IEx
Video Port Interrupt Enable Register
01C4 00CC
01C4 40CC
VP_ISx
Video Port interrupt Status Register
01C4 0100
01C4 4100
VC_STATx
Video Capture Channel A Status Register
01C4 0104
01C4 4104
VC_CTLx
Video Capture Channel A Control Register
01C4 0108
01C4 4108
VC_ASTRTx
Video Capture Channel A Field 1 Start Register
01C4 010C
01C4 410C
VC_ASTOPx
Video Capture Channel A Field 2 Stop Register
01C4 0110
01C4 4110
VC_ASTRTx
Video Capture Channel A Field 2 Start Register
01C4 0114
01C4 4114
VC_ASTOPx
Video Capture Channel A Field 1 Stop Register
01C4 0118
01C4 4118
VC_AVINTx
Video Capture Channel A Vertical Interrupt Register
01C4 011C
01C4 411C
VC_ATHRLDx
Video Capture Channel A Threshold Register
01C4 0120
01C4 4120
VC_AEVTCTx
Video Capture Channel A Event Count Register
01C4 0180
01C4 4180
TSI_CTLx
01C4 0184
01C4 4184
TSI_CLKINITLx
TCI Clock Initialization LSB Register
01C4 0188
01C4 4188
TSI_CLKINITMx
TCI Clock Initialization MSB Register
01C4 018C
01C4 418C
TSI_STCLKLx
TCI System Time Clock LSB Register
01C4 0190
01C4 4190
TSI_STCLKMx
TCI System Time Clock MSB Register
01C4 0194
01C4 4194
TSI_STCMPLx
TCI System Time Clock Compare LSB Register
01C4 0198
01C4 4198
TSI_STCMPMx
TCI System Time Clock Compare MSB Register
01C4 019C
01C4 419C
TSI_STMSKLx
TCI System Time Clock Compare Mask LSB Register
01C4 01A0
01C4 41A0
TSI_STMSKMx
TCI System Time Clock Compare Mask MSB Register
01C4 01A4
01C4 41A4
TSI_TICKSx
01C4 0200
01C4 4200
VD_STATx
Video Display Status Register
01C4 0204
01C4 4204
VD_CTLx
Video Display Control Register
TCI Capture Control Register
TCI System Time Clock Ticks Interrupt Register
01C4 0208
01C4 4208
VD_FRMSZx
Video Display Frame Size Register
01C4 020C
01C4 420C
VD_HBLNKx
Video Display Horizontal Blanking Register
01C4 0210
01C4 4210
VD_VBLKS1x
Video Display Field 1 Vertical Blanking Start Register
01C4 0214
01C4 4214
VD_VBLKE1x
Video Display Field 1 Vertical Blanking End Register
01C4 0218
01C4 4218
VD_VBLKS2x
Video Display Field 2 Vertical Blanking Start Register
01C4 021C
01C4 421C
VD_VBLKE2x
Video Display Field 2 Vertical Blanking End Register
01C4 0220
01C4 4220
VD_IMGOFF1x
01C4 0224
01C4 4224
VD_IMGSZ1x
01C4 0228
01C4 4228
VD_IMGOFF2x
01C4 022C
01C4 422C
VD_IMGSZ2x
01C4 0230
01C4 4230
VD_FLDT1x
Video Display Field 1 Timing Register
01C4 0234
01C4 4234
VD_FLDT2x
Video Display Field 2 Timing Register
01C4 0238
01C4 4238
VD_THRLDx
Video Display Threshold Register
01C4 023C
01C4 423C
VD_HSYNCx
Video Display Horizontal Synchronization Register
01C4 0240
01C4 4240
VD_VSYNS1x
Video Display Field 1 Vertical Synchronization Start Register
01C4 0244
01C4 4244
VD_VSYNE1x
Video Display Field 1 Vertical Synchronization End Register
01C4 0248
01C4 4248
VD_VSYNS2x
Video Display Field 2 Vertical Synchronization Start Register
SPRS222C
Video Display Field 1 Image Offset Register
Video Display Field 1 Image Size Register
Video Display Field 2 Image Offset Register
Video Display Field 2 Image Size Register
June 2003 − Revised August 2004
Video Port
Table 4−54. Video Port 0 and 1 (VP0 and VP1) Control Registers (Continued)
HEX ADDRESS RANGE
VP0
VP1
[DM641 ONLY]
ACRONYM
DESCRIPTION
01C4 024C
01C4 424C
VD_VSYNE2x
Video Display Field 2 Vertical Synchronization End Register
01C4 0250
01C4 4250
VD_RELOADx
Video Display Counter Reload Register
01C4 0254
01C4 4254
VD_DISPEVTx
Video Display Display Event Register
01C4 0258
01C4 4258
VD_CLIPx
01C4 025C
01C4 425C
VD_DEFVALx
Video Display Clipping Register
01C4 0260
01C4 4260
VD_VINTx
Video Display Vertical Interrupt Register
01C4 0264
01C4 4264
VD_FBITx
Video Display Field Bit Register
01C4 0268
01C4 4268
VD_VBIT1x
Video Display Field 1Vertical Blanking Bit Register
01C4 026C
01C4 426C
VD_VBIT2x
Video Display Field 2Vertical Blanking Bit Register
Video Display Default Display Value Register
7400 000
7800 0000
Y_RSCA
7400 0008
7800 0008
CB_SRCA
CB FIFO Source Register A
7400 0010
7800 0010
CR_SRCA
CR FIFO Source Register A
7400 0020
7800 0020
Y_DSTA
Y FIFO Destination Register A
7400 0028
7800 0028
CB_DST
CB FIFO Destination Register A
7400 0030
7800 0030
CR_DST
CR FIFO Destination Register A
June 2003 − Revised August 2004
Y FIFO Source Register A
SPRS222C
147
Video Port
4.13.3
Video Port (VP0 [DM641/DM640], VP1 [DM641 Only]) Electrical Data/Timing
4.13.3.1 VCLKIN Timing (Video Capture Mode)
Table 4−55. Timing Requirements for Video Capture Mode for VPxCLKINx† (see Figure 4−48)
−400
−500
−600
NO.
MIN
1
2
3
UNIT
MAX
tc(VKI)
tw(VKIH)
Cycle time, VPxCLKINx
12.5
ns
Pulse duration, VPxCLKINx high
5.4
ns
tw(VKIL)
tt(VKI)
Pulse duration, VPxCLKINx low
5.4
ns
4
Transition time, VPxCLKINx
† The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
3
ns
4
1
3
2
VPxCLKINx
4
Figure 4−48. Video Port Capture VPxCLKINx TIming
148
SPRS222C
June 2003 − Revised August 2004
Video Port
4.13.3.2 Video Data and Control Timing (Video Capture Mode)
Table 4−56. Timing Requirements in Video Capture Mode for Video Data and Control Inputs
(see Figure 4−49)
−400
−500
−600
NO.
MIN
1
2
3
4
UNIT
MAX
tsu(VDATV-VKIH) Setup time, VPxDx valid before VPxCLKINx high
th(VDATV-VKIH) Hold time, VPxDx valid after VPxCLKINx high
2.9
ns
0.5
ns
tsu(VCTLV-VKIH) Setup time, VPxCTLx valid before VPxCLKINx high
th(VCTLV-VKIH) Hold time, VPxCTLx valid after VPxCLKINx high
2.9
ns
0.5
ns
VPxCLKINx
1
2
VPxD[7:0] (Input)
3
4
VPxCTLx (Input)
Figure 4−49. Video Port Capture Data and Control Input Timing
June 2003 − Revised August 2004
SPRS222C
149
Video Port
4.13.3.3 VCLKIN Timing (Video Display Mode)
Table 4−57. Timing Requirements for Video Display Mode for VPxCLKINx† (see Figure 4−50)
−400
−500
−600
NO.
MIN
1
2
3
UNIT
MAX
tc(VKI)
tw(VKIH)
Cycle time, VPxCLKINx
9
ns
Pulse duration, VPxCLKINx high
4.1
ns
tw(VKIL)
tt(VKI)
Pulse duration, VPxCLKINx low
4.1
ns
4
Transition time, VPxCLKINx
† The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
3
ns
4
1
3
2
VPxCLKINx
4
Figure 4−50. Video Port Display VPxCLKINx Timing
4.13.3.4 Video Control Input/Output and Video Display Data Output Timing With Respect to
VPxCLKINx and VPxCLKOUTx (Video Display Mode)
Table 4−58. Timing Requirements in Video Display Mode for Video Control Input Shown With
Respect to VPxCLKINx and VPxCLKOUTx (see Figure 4−51)
−400
−500
−600
NO.
MIN
13
14
15
16
UNIT
MAX
tsu(VCTLV-VKIH)
th(VCTLV-VKIH)
Setup time, VPxCTLx valid before VPxCLKINx high
2.9
ns
Hold time, VPxCTLx valid after VPxCLKINx high
0.5
ns
tsu(VCTLV-VKOH)
th(VCTLV-VKOH)
Setup time, VPxCTLx valid before VPxCLKOUTx high‡
Hold time, VPxCTLx valid after VPxCLKOUTx high‡
7.4
ns
−0.9
ns
‡ Assuming non-inverted VPxCLKOUTx signal.
150
SPRS222C
June 2003 − Revised August 2004
Video Port
Table 4−59. Switching Characteristics Over Recommended Operating Conditions in Video
Display Mode for Video Data and Control Output Shown With Respect to
VPxCLKINx and VPxCLKOUTx†‡ (see Figure 4−51)
NO.
1
2
3
4
5
6
7
8
9
10
11
12
−400
−500
−600
PARAMETER
MIN
MAX
V − 0.7
V + 0.7
ns
Pulse duration, VPxCLKOUTx high
VH − 0.7
VH + 0.7
ns
Pulse duration, VPxCLKOUTx low
VL − 0.7
VL + 0.7
ns
1.8
ns
1.1
5.7
ns
1.1
5.7
ns
Delay time, VPxCLKINx high to VPxCLKOUTx low
1.1
5.7
ns
Delay time, VPxCLKINx low to VPxCLKOUTx high
1.1
5.7
ns
9
ns
tc(VKO)
tw(VKOH)
Cycle time, VPxCLKOUTx
tw(VKOL)
tt(VKO)
td(VKIH-VKOH)
td(VKIL-VKOL)
Delay time, VPxCLKINx high to VPxCLKOUTx high§
Delay time, VPxCLKINx low to VPxCLKOUTx low§
td(VKIH-VKOL)
td(VKIL-VKOH)
td(VKIH-VPOUTV)
td(VKIH-VPOUTIV)
Delay time, VPxCLKINx high to VPxOUT valid¶
td(VKOH-VPOUTV)
td(VKOH-VPOUTIV)
UNIT
Transition time, VPxCLKOUTx
Delay time, VPxCLKINx high to VPxOUT invalid¶
Delay time, VPxCLKOUTx high to VPxOUT valid†¶
1.7
ns
4.3
Delay time, VPxCLKOUTx high to VPxOUT invalid†¶
ns
−0.2
ns
† V = the video input clock (VPxCLKINx) period in ns.
‡ VH is the high period of V (video input clock period) in ns and VL is the low period of V (video input clock period) in ns.
§ Assuming non-inverted VPxCLKOUTx signal.
¶ VPxOUT consists of VPxCTLx and VPxD[7:0]
VPxCLKINx
5
2
1
6
3
VPxCLKOUTx
[VCLK2P = 0]
4
4
7
8
VPxCLKOUTx
(Inverted)
[VCLK2P = 1]
12
11
VPxCTLx,
VPxD[7:0]
(Outputs)
10
9
15
16
14
13
VPxCTLx
(Input)
Figure 4−51. Video Port Display Data Output Timing and Control Input/Output Timing
With Respect to VPxCLKINx and VPxCLKOUTx
June 2003 − Revised August 2004
SPRS222C
151
Video Port
4.13.3.5 Video Dual-Display Sync Mode Timing (With Respect to VPxCLKINx)
Table 4−60. Timing Requirements for Dual-Display Sync Mode for VPxCLKINx (see Figure 4−52)
−400
−500
−600
NO.
MIN
1
tskr(VKI)
MAX
±500
Skew rate, VPxCLKINx before VPyCLKINy
UNIT
ps
VPxCLKINx
1
VPyCLKINy
Figure 4−52. Video Port Dual-Display Sync Timing
152
SPRS222C
June 2003 − Revised August 2004
VCXO Interpolated Control (VIC)
4.14 VCXO Interpolated Control (VIC)
The VIC can be used in conjunction with the Video Ports (VPs) to maintain synchronization of a video stream.
The VIC can also be used to control a VCXO to adjust the pixel clock rate to a video port.
4.14.1
VIC Device-Specific Information
The VCXO interpolated control (VIC) port provides digital-to-analog conversation with resolution from 9-bits
to up to 16-bits. The output of the VIC is a single bit interpolated D/A output (VDAC pin).
Typical D/A converters provide a discrete output level for every value of the digital word that is being converted.
This is a problem for digital words that are long. This is avoided in a Sigma Delta type D/A converter by
choosing a few widely spaced output levels and interpolating values between them. The interpolating
mechanism causes the output to oscillate rapidly between the levels in such a manner that the average output
represents the value of input code.
In the VIC, two output levels are chosen (0 and 1), and Sigma Delta interpolation scheme is implemented to
interpolate between these levels with a rapidly changing signal. The frequency of interpolation is dependent
on the resolution needed.
When the video port is used in transport stream interface (TSI) mode [currently not supported], the VIC port
is used to control the system clock, VCXO, for MPEG transport stream.
The VIC supports the following features:
•
•
•
Single interpolation for D/A conversion
Programmable precision from 9-to-16 bits
Interface for register accesses
For more detailed information on the DM641 and DM640 VCXO interpolated control (VIC) peripheral, see the
TMS320C64x DSP Video Port/VCXO Interpolated Control (VIC) Port Reference Guide (literature number
SPRU629).
4.14.2
VIC Peripheral Register Description(s)
Table 4−61. VCXO Interpolated Control (VIC) Port Registers
HEX ADDRESS RANGE
ACRONYM
01C4 C000
VICCTL
REGISTER NAME
VIC control register
01C4 C004
VICIN
VIC input register
01C4 C008
VPDIV
VIC clock divider register
01C4 C00C − 01C4 FFFF
−
June 2003 − Revised August 2004
Reserved
SPRS222C
153
VCXO Interpolated Control (VIC)
4.14.3
VIC Electrical Data/Timing
4.14.3.1 STCLK Timing
Table 4−62. Timing Requirments for STCLK† (see Figure 4−53)
−400
−500
−600
NO.
MIN
1
2
3
tc(STCLK)
tw(STCLKH)
Cycle time, STCLK
tw(STCLKL)
tt(STCLK)
UNIT
MAX
33.3
ns
Pulse duration, STCLK high
16
ns
Pulse duration, STCLK low
16
ns
4
Transition time, STCLK
† The reference points for the rise and fall transitions are measured at VIL MAX and VIH MIN.
3
4
1
2
ns
3
STCLK
4
Figure 4−53. STCLK Timing
154
SPRS222C
June 2003 − Revised August 2004
Ethernet Media Access Controller (EMAC)
4.15 Ethernet Media Access Controller (EMAC)
The EMAC controls the flow of packet data from the DSP to the PHY.
4.15.1
EMAC Device-Specific Information
The ethernet media access controller (EMAC) provides an efficient interface between the DM641/DM640 DSP
core processor and the network. The DM641/DM640 EMAC support both 10Base-T and 100Base-TX, or 10
Mbits/second (Mbps) and 100 Mbps in either half- or full-duplex, with hardware flow control and quality of
service (QOS) support. The DM641/DM640 EMAC makes use of a custom interface to the DSP core that
allows efficient data transmission and reception.
The EMAC controls the flow of packet data from the DSP to the PHY. The MDIO module controls PHY
configuration and status monitoring.
Both the EMAC and the MDIO modules interface to the DSP through a custom interface that allows efficient
data transmission and reception. This custom interface is referred to as the EMAC control module, and is
considered integral to the EMAC/MDIO peripheral. The control module is also used to control device reset,
interrupts, and system priority.
The TMS320C6000 DSP Ethernet Media Access Controller (EMAC) / Management Data Input/Output (MDIO)
Module Reference Guide (literature number SPRU628) describes the DM641/DM640 EMAC peripheral in
detail. Some of the features documented in this peripheral reference guide are not supported on the
DM641/DM640 at this time. The DM641/DM640 supports one receive channel and does not support receive
quality of service (QOS). For a list of supported registers and register fields, see Table 4−63 [Ethernet MAC
(EMAC) Control Registers] and Table 4−64 [EMAC Statistics Registers] in this data manual.
4.15.2
EMAC Peripheral Register Description(s)
Table 4−63. Ethernet MAC (EMAC) Control Registers
HEX ADDRESS RANGE
ACRONYM
01C8 0000
TXIDVER
01C8 0004
TXCONTROL
01C8 0008
TXTEARDOWN
01C8 000C
−
REGISTER NAME
Transmit Identification and Version Register
Transmit Control Register
Transmit Teardown Register
Reserved
01C8 0010
RXIDVER
01C8 0014
RXCONTROL
01C8 0018
RXTEARDOWN
01C8 001C − 01C8 00FF
−
01C8 0100
RXMBPENABLE
Receive Multicast/Broadcast/Promiscuous Channel Enable Register
(The RXQOSEN field is reserved and only supports writes of 0. The
PROMCH, BROADCH, and MUCTCH bit fields only support writes of 0.)
01C8 0104
RXUNICASTSET
Receive Unicast Set Register
(Bits 7−1 are reserved and only support writes of 0.)
01C8 0108
RXUNICASTCLEAR
Receive Unicast Clear Register
(Bits 7−1 are reserved and only support writes of 0.)
01C8 010C
RXMAXLEN
01C8 0110
RXBUFFEROFFSET
01C8 0114
RXFILTERLOWTHRESH
01C8 0118 − 01C8 011F
−
01C8 0120
RX0FLOWTHRESH
June 2003 − Revised August 2004
Receive Identification and Version Register
Receive Control Register
Receive Teardown Register
(RXTDNCH field only supports writes of 0.)
Reserved
Receive Maximum Length Register
Receive Buffer Offset Register
Receive Filter Low Priority Packets Threshold Register
Reserved
Receive Channel 0 Flow Control Threshold Register
SPRS222C
155
Ethernet Media Access Controller (EMAC)
Table 4−63. Ethernet MAC (EMAC) Control Registers (Continued)
HEX ADDRESS RANGE
ACRONYM
01C8 0124
RX1FLOWTHRESH
01C8 0128
RX2FLOWTHRESH
01C8 012C
RX3FLOWTHRESH
01C8 0130
RX4FLOWTHRESH
01C8 0134
RX5FLOWTHRESH
01C8 0138
RX6FLOWTHRESH
01C8 013C
RX7FLOWTHRESH
01C8 0140
RX0FREEBUFFER
01C8 0144
RX1FREEBUFFER
01C8 0148
RX2FREEBUFFER
01C8 014C
RX3FREEBUFFER
01C8 0150
RX4FREEBUFFER
01C8 0154
RX5FREEBUFFER
01C8 0158
RX6FREEBUFFER
01C8 015C
RX7FREEBUFFER
01C8 0160
MACCONTROL
01C8 0164
MACSTATUS
01C8 0168 − 01C8 016C
−
01C8 0170
TXINTSTATRAW
01C8 0174
TXINTSTATMASKED
REGISTER NAME
Reserved. Do not write.
Receive Channel 0 Free Buffer Count Register
Reserved. Do not write.
MAC Control Register
MAC Status Register (RXQOSACT field is reserved.)
Reserved
Transmit Interrupt Status (Unmasked) Register
Transmit Interrupt Status (Masked) Register
01C8 0178
TXINTMASKSET
01C8 017C
TXINTMASKCLEAR
01C8 0180
MACINVECTOR
01C8 0184 − 01C8 018F
−
01C8 0190
RXINTSTATRAW
01C8 0194
RXINTSTATMASKED
01C8 0198
RXINTMASKSET
Receive Interrupt Mask Set Register
(Bits 7−1 are reserved and only support writes of 0.)
01C8 019C
RXINTMASKCLEAR
Receive Interrupt Mask Clear Register
(Bits 7−1 are reserved and only support writes of 0.)
01C8 01A0
MACINTSTATRAW
01C8 01A4
MACINTSTATMASKED
01C8 01A8
MACINTMASKSET
01C8 01AC
MACINTMASKCLEAR
01C8 01B0
MACADDRL0
01C8 01B4
MACADDRL1
156
01C8 01B8
MACADDRL2
01C8 01BC
MACADDRL3
01C8 01C0
MACADDRL4
01C8 01C4
MACADDRL5
01C8 01C8
MACADDRL6
01C8 01CC
MACADDRL7
01C8 01D0
MACADDRM
SPRS222C
Transmit Interrupt Mask Set Register
Transmit Interrupt Mask Clear Register
MAC Input Vector Register
Reserved
Receive Interrupt Status (Unmasked) Register
(Bits 7−1 are reserved.)
Receive Interrupt Status (Masked) Register
(Bits 7−1 are reserved.)
MAC Interrupt Status (Unmasked) Register
MAC Interrupt Status (Masked) Register
MAC Interrupt Mask Set Register
MAC Interrupt Mask Clear Register
MAC Address Channel 0 Lower Byte Register
Reserved. Do not write.
MAC Address Middle Byte Register
June 2003 − Revised August 2004
Ethernet Media Access Controller (EMAC)
Table 4−63. Ethernet MAC (EMAC) Control Registers (Continued)
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
01C8 01D4
MACADDRH
MAC Address High Bytes Register
01C8 01D8
MACHASH1
MAC Address Hash 1 Register
01C8 01DC
MACHASH2
MAC Address Hash 2 Register
01C8 01E0
BOFFTEST
Backoff Test Register
01C8 01E4
TPACETEST
Transmit Pacing Test Register
01C8 01E8
RXPAUSE
Receive Pause Timer Register
01C8 01EC
TXPAUSE
Transmit Pause Timer Register
01C8 01F0 − 01C8 01FF
−
01C8 0200 − 01C8 05FF
(see Table 4−64)
Reserved
01C8 0600
TX0HDP
Transmit Channel 0 DMA Head Descriptor Pointer Register
01C8 0604
TX1HDP
Transmit Channel 1 DMA Head Descriptor Pointer Register
01C8 0608
TX2HDP
Transmit Channel 2 DMA Head Descriptor Pointer Register
01C8 060C
TX3HDP
Transmit Channel 3 DMA Head Descriptor Pointer Register
01C8 0610
TX4HDP
Transmit Channel 4 DMA Head Descriptor Pointer Register
01C8 0614
TX5HDP
Transmit Channel 5 DMA Head Descriptor Pointer Register
EMAC Statistics Registers
01C8 0618
TX6HDP
Transmit Channel 6 DMA Head Descriptor Pointer Register
01C8 061C
TX7HDP
Transmit Channel 7 DMA Head Descriptor Pointer Register
01C8 0620
RX0HDP
Receive Channel 0 DMA Head Descriptor Pointer Register
01C8 0624
RX1HDP
01C8 0628
RX2HDP
01C8 062C
RX3HDP
01C8 0630
RX4HDP
01C8 0634
RX5HDP
01C8 0638
RX6HDP
Reserved. Do not write.
01C8 063C
RX7HDP
01C8 0640
TX0INTACK
Transmit Channel 0 Interrupt Acknowledge Register
01C8 0644
TX1INTACK
Transmit Channel 1 Interrupt Acknowledge Register
01C8 0648
TX2INTACK
Transmit Channel 2 Interrupt Acknowledge Register
01C8 064C
TX3INTACK
Transmit Channel 3 Interrupt Acknowledge Register
01C8 0650
TX4INTACK
Transmit Channel 4 Interrupt Acknowledge Register
01C8 0654
TX5INTACK
Transmit Channel 5 Interrupt Acknowledge Register
01C8 0658
TX6INTACK
Transmit Channel 6 Interrupt Acknowledge Register
01C8 065C
TX7INTACK
Transmit Channel 7 Interrupt Acknowledge Register
01C8 0660
RX0INTACK
Receive Channel 0 Interrupt Acknowledge Register
01C8 0664
RX1INTACK
01C8 0668
RX2INTACK
01C8 066C
RX3INTACK
01C8 0670
RX4INTACK
01C8 0674
RX5INTACK
01C8 0678
RX6INTACK
01C8 067C
RX7INTACK
01C8 0680 − 01C8 0FFF
−
June 2003 − Revised August 2004
Reserved. Do not write.
Reserved
SPRS222C
157
Ethernet Media Access Controller (EMAC)
Table 4−64. EMAC Statistics Registers
HEX ADDRESS RANGE
ACRONYM
01C8 0200
RXGOODFRAMES
REGISTER NAME
Good Receive Frames Register
01C8 0204
RXBCASTFRAMES
Broadcast Receive Frames Register
01C8 0208
RXMCASTFRAMES
Multicast Receive Frames Register
01C8 020C
RXPAUSEFRAMES
Pause Receive Frames Register
01C8 0210
RXCRCERRORS
01C8 0214
RXALIGNCODEERRORS
Receive CRC Errors Register
Receive Alignment/Code Errors Register
01C8 0218
RXOVERSIZED
01C8 021C
RXJABBER
Receive Oversized Frames Register
01C8 0220
RXUNDERSIZED
Receive Undersized Frames Register
01C8 0224
RXFRAGMENTS
Receive Frame Fragments Register
01C8 0228
RXFILTERED
01C8 022C
RXQOSFILTERED
Receive Jabber Frames Register
Filtered Receive Frames Register
Reserved
01C8 0230
RXOCTETS
Receive Octet Frames Register
01C8 0234
TXGOODFRAMES
Good Transmit Frames Register
01C8 0238
TXBCASTFRAMES
Broadcast Transmit Frames Register
01C8 023C
TXMCASTFRAMES
Multicast Transmit Frames Register
01C8 0240
TXPAUSEFRAMES
Pause Transmit Frames Register
01C8 0244
TXDEFERRED
Deferred Transmit Frames Register
01C8 0248
TXCOLLISION
Collision Register
01C8 024C
TXSINGLECOLL
01C8 0250
TXMULTICOLL
01C8 0254
TXEXCESSIVECOLL
01C8 0258
TXLATECOLL
01C8 025C
TXUNDERRUN
01C8 0260
TXCARRIERSLOSS
01C8 0264
TXOCTETS
01C8 0268
FRAME64
Single Collision Transmit Frames Register
Multiple Collision Transmit Frames Register
Excessive Collisions Register
Late Collisions Register
Transmit Underrun Register
Transmit Carrier Sense Errors Register
Transmit Octet Frames Register
Transmit and Receive 64 Octet Frames Register
01C8 026C
FRAME65T127
Transmit and Receive 65 to 127 Octet Frames Register
01C8 0270
FRAME128T255
Transmit and Receive 128 to 255 Octet Frames Register
01C8 0274
FRAME256T511
Transmit and Receive 256 to 511 Octet Frames Register
01C8 0278
FRAME512T1023
Transmit and Receive 512 to 1023 Octet Frames Register
01C8 027C
FRAME1024TUP
Transmit and Receive 1024 or Above Octet Frames
Register
01C8 0280
NETOCTETS
Network Octet Frames Register
01C8 0284
RXSOFOVERRUNS
Receive Start of Frame Overruns Register
01C8 0288
RXMOFOVERRUNS
Receive Middle of Frame Overruns Register
01C8 028C
RXDMAOVERRUNS
Receive DMA Overruns Register
01C8 0290 − 01C8 05FF
−
Reserved
Table 4−65. EMAC Wrapper
HEX ADDRESS RANGE
ACRONYM
01C8 1000 − 01C8 1FFF
01C8 2000 − 01C8 2FFF
158
SPRS222C
REGISTER NAME
EMAC Control Module Descriptor Memory
−
Reserved
June 2003 − Revised August 2004
Ethernet Media Access Controller (EMAC)
Table 4−66. EWRAP Registers
HEX ADDRESS RANGE
ACRONYM
01C8 3000
EWTRCTRL
01C8 3004
EWCTL
01C8 3008
EWINTTCNT
01C8 300C − 01C8 37FF
−
4.15.3
REGISTER NAME
TR control
Interrupt control register
Interrupt timer count
Reserved
EMAC Electrical Data/Timing
Table 4−67. Timing Requirements for MRCLK (see Figure 4−54)
−400
−500
−600
NO.
MIN
1
UNIT
MAX
tc(MRCLK)
tw(MRCLKH)
Cycle time, MRCLK
40
ns
2
Pulse duration, MRCLK high
14
ns
3
tw(MRCLKL)
Pulse duration, MRCLK low
14
ns
1
3
2
MRCLK
Figure 4−54. MRCLK Timing (EMAC − Receive)
Table 4−68. Timing Requirements for MTCLK (see Figure 4−54)
−400
−500
−600
NO.
MIN
1
UNIT
MAX
tc(MTCLK)
tw(MTCLKH)
Cycle time, MTCLK
40
ns
2
Pulse duration, MTCLK high
14
ns
3
tw(MTCLKL)
Pulse duration, MTCLK low
14
ns
1
2
3
MTCLK
Figure 4−55. MTCLK Timing (EMAC − Transmit)
June 2003 − Revised August 2004
SPRS222C
159
Ethernet Media Access Controller (EMAC)
Table 4−69. Timing Requirements for EMAC MII Receive 10/100 Mbit/s† (see Figure 4−56)
−400
−500
−600
NO.
MIN
1
tsu(MRXD-MRCLKH) Setup time, receive selected signals valid before MRCLK high
2
th(MRCLKH-MRXD) Hold time, receive selected signals valid after MRCLK high
† Receive selected signals include: MRXD3−MRXD0, MRXDV, and MRXER.
UNIT
MAX
8
ns
8
ns
MRXD3−MRXD0 is driven by the PHY on the falling edge of MRCLK. MRXD3−MRXD0 timing must be met
during clock periods when MRXDV is asserted. MRXDV is asserted and deasserted by the PHY on the falling
edge of MRCLK. MRXER is driven by the PHY on the falling edge of MRCLK (xx = 00−01).
1
2
MRCLK (Input)
MRXD3−MRXD0,
MRXDV, MRXER (Inputs)
Figure 4−56. EMAC Receive Interface Timing
Table 4−70. Switching Characteristics Over Recommended Operating Conditions for EMAC
MII Transmit 10/100 Mbit/s‡ (see Figure 4−57)
−400
−500
−600
NO.
1
td(MTCLKH-MTXD)
Delay time, MTCLK high to transmit selected signals valid
UNIT
MIN
MAX
5
25
ns
‡ Transmit selected signals include: MTXD3−MTXD0, and MTXEN.
MTXD3−MTXD0 is driven by the reconciliation sublayer synchronous to the MTCLK. MTXEN is asserted and
deasserted by the reconciliation sublayer synchronous to the MTCLK rising edge.
1
MTCLK (Input)
MTXD3−MTXD0,
MTXEN (Outputs)
Figure 4−57. EMAC Transmit Interface Timing
160
SPRS222C
June 2003 − Revised August 2004
Management Data Input/Output (MDIO)
4.16 Management Data Input/Output (MDIO)
The MDIO module controls PHY configuration and status monitoring.
4.16.1
Device-Specific Information
The management data input/output (MDIO) module continuously polls all 32 MDIO addresses in order to
enumerate all PHY devices in the system.
The management data input/output (MDIO) module implements the 802.3 serial management interface to
interrogate and control Ethernet PHY(s) using a shared two-wire bus. Host software uses the MDIO module
to configure the auto-negotiation parameters of each PHY attached to the EMAC, retrieve the negotiation
results, and configure required parameters in the EMAC module for correct operation. The module is designed
to allow almost transparent operation of the MDIO interface, with very little maintenance from the core
processor.
The TMS320C6000 DSP Ethernet Media Access Controller (EMAC) / Management Data Input/Output (MDIO)
Module Reference Guide (literature number SPRU628) describes the DM641/DM640 MDIO peripheral in
detail. Some of the features documented in this peripheral reference guide are not supported on the
DM641/DM640 at this time. The DM641/DM640 only supports one EMAC module. For a list of supported
registers and register fields, see Table 4−71 [MDIO Registers] in this data manual.
4.16.2
Peripheral Register Description(s)
Table 4−71. MDIO Registers
HEX ADDRESS RANGE
ACRONYM
01C8 3800
VERSION
MDIO Version Register
REGISTER NAME
01C8 3804
CONTROL
MDIO Control Register
01C8 3808
ALIVE
01C8 380C
LINK
01C8 3810
LINKINTRAW
MDIO Link Status Change Interrupt Register
(MAC1 field is reserved and only supports writes of 0.)
01C8 3814
LINKINTMASKED
MDIO Link Status Change Interrupt (Masked) Register
(MAC1 field is reserved and only supports writes of 0.)
01C8 3818
USERINTRAW
MDIO User Command Complete Interrupt Register
(MAC1 field is reserved and only supports writes of 0.)
01C8 381C
USERINTMASKED
MDIO User Command Complete Interrupt (Masked) Register
(MAC1 field is reserved and only supports writes of 0.)
01C8 3820
USERINTMASKSET
MDIO User Command Complete Interrupt Mask Set Register
(MAC1 field is reserved and only supports writes of 0.)
01C8 3824
USERINTMASKCLEAR
MDIO PHY Alive Indication Register
MDIO PHY Link Status Register
MDIO User Command Complete Interrupt Mask Clear Register
(MAC1 field is reserved and only supports writes of 0.)
01C8 3828
USERACCESS0
MDIO User Access Register 0
01C8 382C
USERACCESS1
Reserved. Do not write.
01C8 3830
USERPHYSEL0
MDIO User PHY Select Register 0
01C8 3834
USERPHYSEL1
Reserved. Do not write.
01C8 3838 − 01C8 3FFF
−
June 2003 − Revised August 2004
Reserved
SPRS222C
161
Management Data Input/Output (MDIO)
4.16.3
Management Data Input/Output (MDIO) Electrical Data/Timing
Table 4−72. Timing Requirements for MDIO Input (see Figure 4−58 and Figure 4−59)
−400
−500
−600
NO.
MIN
1
UNIT
MAX
Cycle time, MDCLK
400
ns
2
tc(MDCLK)
tw(MDCLK)
Pulse duration, MDCLK high/low
180
ns
3
tsu(MDIO-MDCLKH)
Setup time, MDIO data input valid before MDCLK high
10
ns
4
th(MDCLKH-MDIO)
Hold time, MDIO data input valid after MDCLK high
0
ns
1
MDCLK
3
4
MDIO
(input)
Figure 4−58. MDIO Input Timing
Table 4−73. Switching Characteristics Over Recommended Operating Conditions for MDIO Output
(see Figure 4−59)
−400
−500
−600
NO.
7
td(MDCLKL-MDIO)
Delay time, MDCLK low to MDIO data output valid
UNIT
MIN
MAX
−10
100
ns
1
MDCLK
7
MDIO
(output)
Figure 4−59. MDIO Output Timing
162
SPRS222C
June 2003 − Revised August 2004
Timer
4.17 Timer
The C6000 DSP device has 32-bit general-purpose timers that can be used to:
•
•
•
•
•
Time events
Count events
Generate pulses
Interrupt the CPU
Send synchronization events to the DMA
The timers have two signaling modes and can be clocked by an internal or an external source. The timers have
an input pin and an output pin. The input and output pins (TINP and TOUT) can function as timer clock input
and clock output. They can also be respectively configured for general-purpose input and output.
With an internal clock, for example, the timer can signal an external A/D converter to start a conversion, or
it can trigger the DMA controller to begin a data transfer. With an external clock, the timer can count external
events and interrupt the CPU after a specified number of events.
4.17.1
Timer Device-Specific Information
The DM641/DM640 device has a total of three 32-bit general-purpose timers (Timer0, Timer1, and Timer2).
Timer2 is not externally pinned out.
For more detailed information, see the TMS320C6000 DSP 32-Bit Timer Reference Guide (literature number
SPRU582).
4.17.2
Timer Peripheral Register Description(s)
Table 4−74. Timer 0 Registers
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
COMMENTS
0194 0000
CTL0
Timer 0 control register
Determines the operating mode of the timer, monitors the
timer status, and controls the function of the TOUT pin.
0194 0004
PRD0
Timer 0 period register
Contains the number of timer input clock cycles to count.
This number controls the TSTAT signal frequency.
0194 0008
CNT0
Timer 0 counter register
Contains the current value of the incrementing counter.
0194 000C − 0197 FFFF
−
Reserved
Table 4−75. Timer 1 Registers
HEX ADDRESS RANGE
ACRONYM
REGISTER NAME
COMMENTS
0198 0000
CTL1
Timer 1 control register
Determines the operating mode of the timer, monitors the
timer status, and controls the function of the TOUT pin.
0198 0004
PRD1
Timer 1 period register
Contains the number of timer input clock cycles to count.
This number controls the TSTAT signal frequency.
0198 0008
CNT1
Timer 1 counter register
Contains the current value of the incrementing counter.
0198 000C − 019B FFFF
−
Reserved
Table 4−76. Timer 2 Registers
HEX ADDRESS RANGE
ACRONYM
01AC 0000
CTL2
Timer 2 control register
Determines the operating mode of the timer, monitors the
timer status.
01AC 0004
PRD2
Timer 2 period register
Contains the number of timer input clock cycles to count.
This number controls the TSTAT signal frequency.
01AC 0008
CNT2
Timer 2 counter register
Contains the current value of the incrementing counter.
01AC 000C − 01AF FFFF
−
June 2003 − Revised August 2004
REGISTER NAME
COMMENTS
Reserved
SPRS222C
163
Timer
4.17.3
Timer Electrical Data/Timing
Table 4−77. Timing Requirements for Timer Inputs† (see Figure 4−60)
−400
−500
−600
NO.
MIN
1
2
tw(TINPH)
tw(TINPL)
UNIT
MAX
Pulse duration, TINP high
8P
ns
Pulse duration, TINP low
8P
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
Table 4−78. Switching Characteristics Over Recommended Operating Conditions for Timer Outputs†
(see Figure 4−60)
NO.
−400
−500
−600
PARAMETER
MIN
3
4
tw(TOUTH)
tw(TOUTL)
UNIT
MAX
Pulse duration, TOUT high
8P −3
ns
Pulse duration, TOUT low
8P −3
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
2
1
TINPx
4
3
TOUTx
Figure 4−60. Timer Timing
164
SPRS222C
June 2003 − Revised August 2004
General-Purpose Input/Output (GPIO)
4.18 General-Purpose Input/Output (GPIO)
The GPIO peripheral provides dedicated general-purpose pins that can be configured as either inputs or
outputs. When configured as an output, you can write to an internal register to control the state driven on the
output pin. When configured as an input, you can detect the state of the input by reading the state of an internal
register.
In addition, the GPIO peripheral can produce CPU interrupts and EDMA events in different interrupt/event
generation modes.
4.18.1
GPIO Device-Specific Information
To use the GP[7:0] software-configurable GPIO pins, the GPxEN bits in the GP Enable (GPEN) Register and
the GPxDIR bits in the GP Direction (GPDIR) Register must be properly configured.
GPxEN =
1
GP[x] pin is enabled
GPxDIR =
0
GP[x] pin is an input
GPxDIR =
1
GP[x] pin is an output
where “x” represents one of the 7 through 0 GPIO pins
Figure 4−61 shows the GPIO enable bits in the GPEN register for the DM641/DM640 device. To use any of
the GPx pins as general-purpose input/output functions, the corresponding GPxEN bit must be set to “1”
(enabled). Default values are device-specific, so refer to Figure 4−61 for the DM641/DM640 default
configuration.
31
24 23
16
Reserved
R-0
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
Reserved
GP7
EN
GP6
EN
GP5
EN
GP4
EN
GP3
EN
GP2
EN
GP1
EN
GP0
EN
R/W-0000 0000
R/W-1
R/W-1
R/W-1
R/W-1
R/W-1
R/W-0
R/W-0
R/W-1
Legend: R/W = Readable/Writeable; -n = value after reset, -x = undefined value after reset
Figure 4−61. GPIO Enable Register (GPEN) [Hex Address: 01B0 0000]
Figure 4−62 shows the GPIO direction bits in the GPDIR register. This register determines if a given GPIO
pin is an input or an output providing the corresponding GPxEN bit is enabled (set to “1”) in the GPEN register.
By default, all the GPIO pins are configured as input pins.
31
24 23
16
Reserved
R-0
15
14
13
12
11
7
6
5
4
3
2
1
0
Reserved
GP7
DIR
GP6
DIR
GP5
DIR
GP4
DIR
GP3
DIR
GP2
DIR
GP1
DIR
GP0
DIR
R/W-0000 0000
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
R/W-0
10
9
8
Legend: R/W = Readable/Writeable; -n = value after reset, -x = undefined value after reset
Figure 4−62. GPIO Direction Register (GPDIR) [Hex Address: 01B0 0004]
For more detailed information on general-purpose inputs/outputs (GPIOs), see the TMS320C6000 DSP
General-Purpose Input/Output (GPIO) Reference Guide (literature number SPRU584).
June 2003 − Revised August 2004
SPRS222C
165
General-Purpose Input/Output (GPIO)
4.18.2
GPIO Peripheral Register Description(s)
Table 4−79. GP0 Registers
HEX ADDRESS RANGE
ACRONYM
01B0 0000
GPEN
GP0 enable register
REGISTER NAME
01B0 0004
GPDIR
GP0 direction register
01B0 0008
GPVAL
GP0 value register
01B0 000C
−
01B0 0010
GPDH
GP0 delta high register
01B0 0014
GPHM
GP0 high mask register
01B0 0018
GPDL
GP0 delta low register
01B0 001C
GPLM
GP0 low mask register
01B0 0020
GPGC
GP0 global control register
01B0 0024
GPPOL
GP0 interrupt polarity register
01B0 0028 − 01B3 EFFF
−
4.18.3
Reserved
Reserved
General-Purpose Input/Output (GPIO) Electrical Data/Timing
Table 4−80. Timing Requirements for GPIO Inputs†‡ (see Figure 4−63)
−400
−500
−600
NO.
MIN
1
2
tw(GPIH)
tw(GPIL)
UNIT
MAX
Pulse duration, GPIx high
8P
ns
Pulse duration, GPIx low
8P
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ The pulse width given is sufficient to generate a CPU interrupt or an EDMA event. However, if a user wants to have the DSP recognize the GPIx
changes through software polling of the GPIO register, the GPIx duration must be extended to at least 12P to allow the DSP enough time to access
the GPIO register through the CFGBUS.
Table 4−81. Switching Characteristics Over Recommended Operating Conditions for GPIO Outputs†
(see Figure 4−63)
NO.
3
4
−400
−500
−600
PARAMETER
tw(GPOH)
tw(GPOL)
Pulse duration, GPOx high
MIN
24P − 8‡
Pulse duration, GPOx low
24P − 8‡
UNIT
MAX
ns
ns
† P = 1/CPU clock frequency in ns. For example, when running parts at 600 MHz, use P = 1.67 ns.
‡ This parameter value should not be used as a maximum performance specification. Actual performance of back-to-back accesses of the GPIO
is dependent upon internal bus activity.
2
1
GPIx
4
3
GPOx
Figure 4−63. GPIO Port Timing
166
SPRS222C
June 2003 − Revised August 2004
JTAG
4.19 JTAG
The JTAG interface is used for BSDL testing and emulation of the DM641/DM640 device.
4.19.1
JTAG Device-Specific Information
4.19.1.1 IEEE 1149.1 JTAG Compatibility Statement
The TMS320DM641/DM640 DSP requires that both TRST and RESET be asserted upon power up to be
properly initialized. While RESET initializes the DSP core, TRST initializes the DSP’s emulation logic. Both
resets are required for proper operation.
Note: TRST is synchronous and must be clocked by TCLK; otherwise, BSCAN may not respond as expected
after TRST is asserted.
While both TRST and RESET need to be asserted upon power up, only RESET needs to be released for the
DSP to boot properly. TRST may be asserted indefinitely for normal operation, keeping the JTAG port interface
and DSP’s emulation logic in the reset state. TRST only needs to be released when it is necessary to use a
JTAG controller to debug the DSP or exercise the DSP’s boundary scan functionality. RESET must be
released in order for boundary-scan JTAG to read the variant field of IDCODE correctly. Other boundary-scan
instructions work correctly independent of current state of RESET.
For maximum reliability, the TMS320DM641/DM640 DSP includes an internal pulldown (IPD) on the TRST
pin to ensure that TRST will always be asserted upon power up and the DSP’s internal emulation logic will
always be properly initialized. JTAG controllers from Texas Instruments actively drive TRST high. However,
some third-party JTAG controllers may not drive TRST high but expect the use of a pullup resistor on TRST.
When using this type of JTAG controller, assert TRST to intialize the DSP after powerup and externally drive
TRST high before attempting any emulation or boundary scan operations.
Following the release of RESET, the low-to-high transition of TRST must occur to latch the state of EMU1 and
EMU0. The EMU[1:0] pins configure the device for either Boundary Scan mode or Normal/Emulation mode.
For more detailed information, see the terminal functions section of this data sheet.
Note: The DESIGN_WARNING section of the TMS320DM641/DM640 BSDL file contains information and
constraints regarding proper device operation while in Boundary Scan Mode.
For more detailed information on the DM641 and DM640 JTAG emulation, see the TMS320C6000 DSP
Designing for JTAG Emulation Reference Guide (literature number SPRU641).
4.19.1.2 JTAG ID Register Description
The JTAG ID register is a read-only register that identifies to the customer the JTAG/Device ID. For the
DM641/DM640 device, the JTAG ID register resides at address location 0x01B3 F008. The register hex value
for the DM641/DM640 device is: 0x0007 902F. For the actual register bit names and their associated bit field
descriptions, see Figure 4−64 and Table 4−82.
31−28
27−12
11−1
0
VARIANT (4-Bit)
PART NUMBER (16-Bit)
MANUFACTURER (11-Bit)
LSB
R-0000
R-0000 0000 0111 1001
R-0000 0010 111
R-1
Legend: R = Read only; -n = value after reset
Figure 4−64. JTAG ID Register Description − TMS320DM641/DM640 Register Value − 0x0007 902F
June 2003 − Revised August 2004
SPRS222C
167
JTAG
Table 4−82. JTAG ID Register Selection Bit Descriptions
BIT
NAME
DESCRIPTION
31:28
VARIANT
27:12
PART NUMBER
11−1
MANUFACTURER
0
LSB
4.19.2
Variant (4-Bit) value. DM641/DM640 value: 0000.
Part Number (16-Bit) value. DM641/DM640 value: 0000 0000 0111 1001.
Manufacturer (11-Bit) value. DM641/DM640 value: 0000 0010 111.
LSB. This bit is read as a “1” for DM641/DM640.
JTAG Peripheral Register Description(s)
Table 4−83. JTAG ID Register
HEX ADDRESS RANGE
01B3 F008
4.19.3
ACRONYM
JTAGID
REGISTER NAME
COMMENTS
Read-only. Provides 32-bit
JTAG ID of the device.
JTAG Identification Register
JTAG Test-Port Electrical Data/Timing
Table 4−84. Timing Requirements for JTAG Test Port (see Figure 4−65)
−400
−500
−600
NO.
MIN
1
UNIT
MAX
Cycle time, TCK
35
ns
3
tc(TCK)
tsu(TDIV-TCKH)
Setup time, TDI/TMS/TRST valid before TCK high
10
ns
4
th(TCKH-TDIV)
Hold time, TDI/TMS/TRST valid after TCK high
9
ns
Table 4−85. Switching Characteristics Over Recommended Operating Conditions for JTAG Test Port
(see Figure 4−65)
NO.
2
−400
−500
−600
PARAMETER
td(TCKL-TDOV)
Delay time, TCK low to TDO valid
UNIT
MIN
MAX
0
18
ns
1
TCK
2
2
TDO
4
3
TDI/TMS/TRST
Figure 4−65. JTAG Test-Port Timing
168
SPRS222C
June 2003 − Revised August 2004
Mechanical Data
5
Mechanical Data
The following table(s) show the thermal resistance characteristics for the PBGA − GDK and GNZ mechanical
packages.
5.1
Thermal Data
Table 5−1. Thermal Resistance Characteristics (S-PBGA Package) [GDK]
°C/W
Air Flow (m/s†)
Junction-to-case
3.3
N/A
Junction-to-board
7.92
N/A
3
18.2
0.00
4
15.3
0.5
13.7
1.0
6
12.2
2.00
7
0.37
0.00
0.47
0.5
NO
1
2
5
RΘJC
RΘJB
RΘJA
Junction-to-free air
8
9
PsiJT
Junction-to-package top
0.57
1.0
10
0.7
2.00
11
11.4
0.00
12
11
0.5
10.7
1.0
10.2
2.00
13
PsiJB
Junction-to-board
14
† m/s = meters per second
Table 5−2. Thermal Resistance Characteristics (S-PBGA Package) [GNZ]
°C/W
Air Flow (m/s†)
Junction-to-case
3.3
N/A
Junction-to-board
7.46
N/A
3
17.4
0.00
4
14.0
0.5
12.3
1.0
6
10.8
2.00
7
0.37
0.00
0.47
0.5
0.57
1.0
10
0.7
2.00
11
11.4
0.00
12
11
0.5
NO
1
2
5
RΘJC
RΘJB
RΘJA
Junction-to-free air
8
9
13
PsiJT
PsiJB
Junction-to-package top
Junction-to-board
14
10.7
1.0
10.2
2.00
† m/s = meters per second
The following mechanical package diagram(s) reflect the most up-to-date mechanical data released for these
designated device(s).
June 2003 − Revised August 2004
SPRS222C
169
MECHANICAL DATA
MPBG301 – JULY 2002
GDK (S–PBGA–N548)
PLASTIC BALL GRID ARRAY
23,10
SQ
22,90
20,00 TYP
21,10
SQ
20,90
0,80
0,40
AF
AE
AD
AC
AB
AA
Y
W
V
U
0,80
T
R
P
N
M
L
0,40
K
A1 Corner
J
H
G
F
E
D
C
B
A
1
3
2
5
4
7
6
9
8
11 13 15 17 19 21 23 25
10 12 14 16 18 20 22 24 26
Bottom View
2,80 MAX
0,50 NOM
Seating Plane
0,55
0,45
0,10
0,45
0,35
0,12
4203481-3/B 07/02
NOTES: A. All linear dimensions are in millimeters.
B. This drawing is subject to change without notice.
C. Flip chip application only.
POST OFFICE BOX 655303
• DALLAS, TEXAS 75265
1
MPBG314A – OCTOBER 2002 – REVISED DECEMBER 2002
GNZ (S–PBGA–N548)
PLASTIC BALL GRID ARRAY
27,20
SQ
26,80
25,00 TYP
1,00
25,20
SQ
24,80
0,50
AF
AE
AD
AC
AB
AA
Y
W
V
U
T
R
P
N
M
L
K
J
H
G
F
E
D
C
B
A
A1 Corner
1,00
0,50
1
3
2
5
4
7
6
9
8
11 13 15 17 19 21 23 25
10 12 14 16 18 20 22 24 26
Bottom View
2,80 MAX
0,50 NOM
Seating Plane
0,70
0,50
0,10
0,60
0,40
0,15
4202595-5\E 12/02
NOTES: A.
B.
C.
D.
All linear dimensions are in millimeters.
This drawing is subject to change without notice.
Flip chip application only.
Substrate color may vary.
POST OFFICE BOX 655303
• DALLAS, TEXAS 75265
1