TMS320 DSP Development Support Reference Guide
TMS320 DSP Development Support Reference Guide
Reference Guide
IMPORTANT NOTICE
Texas Instruments (TI) reserves the right to make changes to its products or to discontinue any
semiconductor product or service without notice, and advises its customers to obtain the latest
version of relevant information to verify, before placing orders, that the information being relied
on is current.
TI warrants performance of its semiconductor products and related software to the specifications
applicable at the time of sale in accordance with TIs standard warranty. Testing and other quality
control techniques are utilized to the extent TI deems necessary to support this warranty.
Specific testing of all parameters of each device is not necessarily performed, except those
mandated by government requirements.
Certain applications using semiconductor products may involve potential risks of death,
personal injury, or severe property or environmental damage (Critical Applications).
TI SEMICONDUCTOR PRODUCTS ARE NOT DESIGNED, INTENDED, AUTHORIZED, OR
WARRANTED TO BE SUITABLE FOR USE IN LIFE-SUPPORT APPLICATIONS, DEVICES
OR SYSTEMS OR OTHER CRITICAL APPLICATIONS.
Inclusion of TI products in such applications is understood to be fully at the risk of the customer.
Use of TI products in such applications requires the written approval of an appropriate TI officer.
Questions concerning potential risk applications should be directed to TI through a local SC
sales office.
In order to minimize risks associated with the customers applications, adequate design and
operating safeguards should be provided by the customer to minimize inherent or procedural
hazards.
TI assumes no liability for applications assistance, customer product design, software
performance, or infringement of patents or services described herein. Nor does TI warrant or
represent that any license, either express or implied, is granted under any patent right, copyright,
mask work right, or other intellectual property right of TI covering or relating to any combination,
machine, or process in which such semiconductor products or services might be or are used.
Preface
iii
Contents
How to Use This Manual
Chapter 13, Code Generation Tools, provides an overview of software development. A discussion of software development products includes information
on the TMS320C2x/C2xx/C5x, the TMS320C54x, TMS320C3x/C4x, and
TMS320C8x C compilers and the TMS320 macro assembler/linker.
Chapter 14, System Integration and Debugging Tools, gives the reader an overview of the integration and debugging process. This chapter also discusses system integration and debugging products such as the TMS320 debuggers interface (C/assembly source debugger) and the TMS320 software simulators and
emulators. Chapter 15 also covers system integration and evaluation tools,
TMS320C2x/C3x/C5x DSP starters kits (DSKs), TMS320 XDS upgrade packages, and the parallel processing development system (PPDS) for the
TMS320C40.
Chapter 15, TMS320 Technical Support, provides an overview of the technical
literature and technical assistance. The chapters technical literature overview
covers application reports, data sheets, the TMS320 newsletter (Details on Signal
Processing), product bulletins, technical articles, users guides, and textbooks.
The overview of the technical assistance covers the TMS320 Hotline, FAX capabilities, and the TMS320 Bulletin Board Service (BBS).
Chapter 16, TMS320 Third-Party Support explains how to get listings of thirdparty algorithims currently available and information on how to license thirdparty software. This chapter also how to obtain lists of the third-party companies
and consultants who support the TMS320 DSP family.
Chapter 17, TMS320 Seminars and Workshops, covers seminars and 3-day
(or longer) workshops offered by the TI Technical Training Organization (TTO).
The chapter discusses design assistance services offered by the TI worldwide
Customer Design Centers and lists their offices and addresses.
Chapter 18, TMS320 University Program, presents an overview of TMS320 codegeneration, system-integration, and debugging tools available to universities. Additionally, it lists textbooks on DSP theories and applications using the TMS320 devices and discusses how to establish a DSP lab/research environment.
Appendix A covers Factory Repair and Exchange Instructions, while Appendix B
presents the Program License Agreements. Appendix C discusses the ROM
Codes, and Appendix D covers TMS320 PROM Programming.
iv
Contents
Notational Conventions / Related Documentation From Texas Instruments
Notational Conventions
This document uses the following conventions.
- Program listings, program examples, and interactive displays are shown
0005
0005
0005
0006
0001
0003
0006
.field
.field
.field
.even
1, 2
3, 4
6, 3
csr a /user/ti/simuboard/utilities
Contents
Contents
1h / 2h
Trademarks
Trademarks
AT and XT are trademarks of International Business Machines Corporation.
AURIS is a trademark of CSELT.
cDSP is a trademark of Texas Instruments Incorporated.
CGS is a trademark of Alta Group of Cadence Design Systems.
Code Composer is a trademark of Texas Instruments Incorporated.
DAQ-200 is a trademark of Sonitech International, Incorporated.
DAS is a trademark of Tektronix.
DEC is a trademark of Digital Equipment Corporation.
Dolby is a trademark of Dolby Laboratories Licensing Corporation.
DSP On-Line Lab is a trademark of Texas Instruments Incorporated.
Elf is a trademark of Atlanta Signal Processors, Incorporated.
ELOQUENS is a trademark of CSELT.
EPIC is a trademark of Texas Instruments Incorporated.
FLEXUS is a trademark of CSELT.
Helios is a trademark of Perihelion Software, Limited.
Hotline On-Line is a trademark of Texas Instruments Incorporated.
IBM is a trademark of International Business Machines Corporation.
Intel, i286, i386, and i486 are trademarks of Intel Corporation.
MAC II, Macintosh, and MPW are trademarks of Apple Computer Corporation.
Motorola-S is a trademark of Motorola, Incorporated.
MS-Windows is a registered trademark of Microsoft Corporation.
Microsoft is a registered trademark of Microsoft Corporation.
MS-DOS is a registered trademark of Microsoft Corporation.
NEC is a trademark of NEC Corporation.
OpenWindows is a trademark of Sun Microsystems, Inc.
vi
Contents
Trademarks
vii
Contents
If You Need Assistance
http://www.ti.com
http://www.ti.com/sc/docs/pic/home.htm
http://www.ti.com/dsps
http://www.ti.com/sc/docs/dsps/support.htm
Email: dsph@ti.com
Fax: +33 1 30 70 10 32
Fax: +49 81 61 80 40 10
Asia-Pacific
Literature Response Center
+852 2 956 7288 Fax: +852 2 956 2200
Hong Kong DSP Hotline
+852 2 956 7268 Fax: +852 2 956 1002
Korea DSP Hotline
+82 2 551 2804 Fax: +82 2 551 2828
Korea DSP Modem BBS
+82 2 551 2914
Singapore DSP Hotline
Fax: +65 390 7179
Taiwan DSP Hotline
+886 2 377 1450 Fax: +886 2 377 2718
Taiwan DSP Modem BBS
+886 2 376 2592
Taiwan DSP Internet BBS via anonymous ftp to ftp://dsp.ee.tit.edu.tw/pub/TI/
Japan
Product Information Center
+0120-81-0026 (in Japan)
+03-3457-0972 or (INTL) 813-3457-0972
DSP Hotline
+03-3769-8735 or (INTL) 813-3769-8735
DSP BBS via Nifty-Serve
Type Go TIASP
Documentation
When making suggestions or reporting errors in documentation, please include the following information that is on the title
page: the full title of the book, the publication date, and the literature number.
Mail: Texas Instruments Incorporated
Email: dsph@ti.com
Technical Documentation Services, MS 702
P.O. Box 1443
Houston, Texas 77251-1443
Note:
viii
When calling a Literature Response Center to order documentation, please specify the literature number of the book.
Contents
Contents
1
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Outlines the advantages and applications of DSP technology, gives an overview of TI DSPs,
and lists the development support products for the TMS320 family.
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2
Selection Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Choosing the right DSP for your needs is an important process, and one that can be confusing
given the wide range of choices. This chapter is intended to help with the selection process.
2.1
2.2
2.3
2.4
Contents
TMS320C20x Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Describes the devices, lists key features, and provides block diagrams for the TMS320C20x
devices.
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
3.9
3.10
3.11
3.12
3.13
4.10
4.11
4.12
4.13
4.14
4.15
4.16
x
TMS320C20x Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
TMS320C20x Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
TMS320C20x Enhanced Synchronous Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
TMS320C20x Asynchronous Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
TMS320C20x Boot Loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
TMS320C20x Memory Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
TMS320C203 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 310
TMS320LC203 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
TMS320C206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
TMS320LC206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
TMS320F206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
TMS320C209 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
Tools for TMS320C20x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Contents
TMS320C3x Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Describes the devices, lists key features, and provides block diagrams for the TMS320C3x devices.
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
TMS320C4x Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
Describes the devices, lists key features, and provides block diagrams for the TMS320C4x devices.
6.1
6.2
6.3
6.4
6.5
6.6
6.7
6.8
6.9
TMS320C3x Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
TMS320C3x Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
TMS320C3x CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
TMS320C3x Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
TMS320C3x DMA Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 510
TMS320C3x Sum of Products Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512
TMS320C30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
TMS320C31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 515
TMS320C32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 517
Tools for TMS320C3x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 518
TMS320C4x Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
TMS320C4x Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
TMS320C4x CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
TMS320C4x Memory and Bus Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
TMS320C4x Communication Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
TMS320C4x DMA Coprocessor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
TMS320C40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 611
TMS320C44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 613
Tools for TMS320C4x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 614
TMS320C5x Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
Describes the devices, lists key features, and provides block diagrams for the TMS320C5x devices.
7.1
7.2
7.3
7.4
7.5
7.6
7.7
7.8
7.9
7.10
7.11
7.12
7.13
7.14
TMS320C5x Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
TMS320C5x Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
TMS320LC57/BC57S Host Port Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
TMS320LC56/LC57/BC57S Buffered Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
TMS320C5x Multiplier/ALU Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
TMS320C5x Parallel Logic Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710
TMS320C5x Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 711
TMS320C5x Circular Addressing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 712
Repeat and Block Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713
TMS320C50 and TMS320LC50 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 714
TMS320C51 and TMS320LC51 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
TMS320C52 and TMS320LC52 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 718
TMS320C53 and TMS320LC53 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 719
TMS320C53S and TMS320LC53S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720
Contents
xi
Contents
7.15
7.16
7.17
7.18
8
TMS320C54x Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
TMS320C54x CPU Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
TMS320C541, TMS320LC541 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
TMS320C542, TMS320LC542, and TMS320LC543 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
TMS320LC545 and TMS320LC546 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
TMS320LC548 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
TMS320LC549 and TMS320VC549 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Tools for TMS320C54x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 810
TMS320C6x Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Describes the devices, lists key features, and provides a block diagram for the TMS320C62x
CPU.
9.1
9.2
9.3
9.4
9.5
9.6
9.7
xii
721
722
723
724
TMS320C54x Devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
Describes the devices, lists key features, and provides block diagrams for the TMS320C54x
devices.
8.1
8.2
8.3
8.4
8.5
8.6
8.7
8.8
TMS320LC56 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320LC57 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320BC57S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Tools for TMS320C5x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320C6x Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
TMS320C62x Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
TMS320C67x Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
9.3.1 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
9.3.2 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
Central Processing Unit (CPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
TMS320C6201/C6701 Internal Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
9.5.1 TMS320C6201/C6701 Data-Memory System . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
9.5.2 TMS320C6201/C6701 Program-Memory System . . . . . . . . . . . . . . . . . . . . . . . . 98
TMS320C6201/C6701 Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.6.1 TMS320C6201/C6701 External Memory Interface (EMIF) . . . . . . . . . . . . . . . . . 99
9.6.2 TMS320C6201/C6701 Direct-Memory Access (DMA) . . . . . . . . . . . . . . . . . . . . 99
9.6.3 TMS320C6201/C6701 Host-Port Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 910
9.6.4 TMS320C6201/C6701 Power-Down Logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
9.6.5 TMS320C6201/C6701 Multichannel Buffered Serial Port (McBSP) . . . . . . . . 911
9.6.6 TMS320C6201/C6701 Timers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 911
Tools for TMS320C6x . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 912
Contents
11.3
11.4
11.5
11.6
Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
Benefits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Key Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Contents
xiii
Contents
13.2
14.2
14.3
14.4
152
153
154
158
Contents
15.5
15.6
15.7
15.8
15.9
15.10
University Textbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Technical Articles Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320 Newsletter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320 DSP Bulletin Board Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320 DSP ftp Site . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
TMS320 DSP Technical Hotline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1511
1514
1517
1518
1519
1520
17.2
17.3
182
183
184
187
A1
A2
A3
A3
A4
A6
xv
Contents
ROM Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.1 Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.2 Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.2.1 Customer Required Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.2.2 TI Performs ROM Receipt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.2.3 Customer Approves ROM Receipt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.2.4 TI Orders Masks, Manufactures, and Ships Prototypes . . . . . . . . . . . . . . . . . . .
C.2.5 Customer Approves Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.2.6 Customer Release to Production . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.3
Code Submittal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C.4 Ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
C1
C2
C3
C4
C4
C5
C5
C5
C5
C6
C7
D1
D2
D3
D4
D4
Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E1
xvi
Figures
Figures
11
12
13
14
15
16
17
18
19
110
111
112
113
114
115
116
117
118
21
22
31
32
33
34
35
36
37
38
41
42
43
44
45
46
47
48
A/D-D/A Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Architectures of Digital Processors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Typical DSP System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Example Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Modem Tasks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
TI Fax/Modem System Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
TI DSPs for ISDN Infrastructure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
ISDN Terminal Videoconferencing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
Dual Mode ISDN Modem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Multimedia Opportunities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
Voice Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Digital Motor Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
TMS320C2xx-Based Electricity Meter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
ATM Switch Based on a TMS320C40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
N-ISDN to ATM Switch Based on a TMS320C542 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
TMS320 Family Development Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
Typical TMS320 Application Development Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
TMS320 Development Product Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
The TMS320 Family Road Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
TMS320 Device Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
TMS320C20x Enhanced Synchronous Serial Port (ESSP) . . . . . . . . . . . . . . . . . . . . . . . . . . 35
TMS320C2xx Asynchronous Serial Port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
TMS320C2xx Boot Loader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
TMS320C20x Memory Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
TMS320C203 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
TMS320C206/LC206 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
TMS320F206 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
TMS320C209 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
TMS320C240/F240 Peripheral Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
TMS320C240/F240 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
TMS320C241/F241 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
TMS320C242 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411
TMS320F243 Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
TMS320C24x Memory Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
TMS320C240 Event Manager Block Diagram/Functions . . . . . . . . . . . . . . . . . . . . . . . . . . 418
4-Pin Serial Peripheral Interface (SPI) Module Block Diagram . . . . . . . . . . . . . . . . . . . . . . 420
Contents
xvii
Figures
49
410
411
412
51
52
53
54
55
56
61
62
63
64
65
66
71
72
73
74
75
76
77
78
79
710
711
712
713
714
715
81
82
83
84
85
91
101
102
103
104
105
106
107
xviii
Figures
108
111
112
113
114
115
116
117
118
119
1110
1111
1112
1113
1114
1115
1116
1117
141
142
143
144
145
146
C1
Contents
xix
Tables
Tables
11
12
21
22
23
24
25
26
27
28
29
210
211
212
213
31
41
111
151
152
171
172
173
174
D1
xx
Examples
Examples
131
132
133
134
135
136
137
138
139
1310
Contents
xxi
Chapter 1
Introduction
Texas Instruments (TI) has been the worldwide digital signal processor (DSP)
market leader since 1982, with the introduction of the TMS32010 DSP. Since
that first TMS320 DSP was introduced in 1982, Texas Instruments has been
dedicated to the advancement of digital signal processing technology and its
applications. TI recognizes that fast time to market, increased productivity, and
design ease are of primary importance in the development of DSP-based applications. TI offers an innovative, comprehensive program of development support for TMS320 DSPs to facilitate the design process from system concept
to production.
Topic
Page
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
Introduction
1-1
1-2
Digital samples
Samples
ADC
Transducer
Assigned
digital
equivalent
DSP
Introduction
1-3
1.2.1
DSP Architecture
All DSPs consist of several fundamental modules: a digital signal processing
core to perform mathematical operations, memory to store data and program
instructions, and possibly a mixed-signal product to converse between the
analog and digital worlds.
As a stored-program machine, the processor must be told what to do every
clock cycle. Typically, a DSP fetches an instruction and some data from
memory, operates on these, and then returns the manipulated data to storage.
The way this is conducted is not the same for all processors. Two different architectures can be identified: Von Neumann and Harvard (see Figure 12).
The DSP application, in addition to the memory and peripheral configuration,
usually governs the type of architecture employed.
Program
control
Stored
program
and data
Input/
output
Arithmetic
logic unit
Harvard Architecture
Stored
program
Program
control
Arithmetic
logic unit
Input/
output
Stored
data
Von Neumann architecture has set the standard for computer development
over the past 40 years. Essentially, the architecture is very simple. Both program and data can reside in the same memory-mapped space. This architecture forms a basis for more general-purpose processing needs, as seen in the
x86 range. The disadvantage with this architecture is that there is only one bus
that shares both data and memory addresses. Therefore, only data space or
program space can be accessed in one cycle at any one time.
1-4
Where fast data manipulation is vital, accessing both program and data
memory in a single cycle is advantageous. Harvard architecture separates the
program and data memory spaces. Having two buses to serve each address
space ensures that data and program access occurs in parallel, increasing
processing speed. Unfortunately, processing power comes with a cost penalty.
Two memory spaces require twice as many addresses, and therefore, twice
as many data pins. An elegant solution has been found that is a compromise
between price and performance. Modified Harvard architecture has only one
external bus (thus reducing pin count), yet has both program and data internal
buses. Many of the DSPs supplied by Texas Instruments support modified
Harvard architecture to reduce cost for the customer while maintaining speed.
DSP
Memory
Memory
A/D
Converters
Analog-to-digital
Digital-to-analog
D/A
Some of the common features in a typical DSP system (see Figure 13) are
as follows:
- A DSP to perform mathematical operations
- Memory (both on-chip and external) to store data and program instructions
- Converters to convert signals from analog to digital and from digital to analog
The DSP system may require external memory. In practice, the program to be
run is normally held in external memory and then downloaded onto the DSP
when the system is started.
Introduction
1-5
1.2.2
A = BC + D
The addition function is quite simple for conventional computers and can be
performed in a single clock cycle. The same is true of subtraction. Most computers subtract by negating one number and then adding it to the other. Multiply functions take much longer, especially when considering numbers such
as . A general-purpose processor may take several hundreds of clock cycles
to implement such a calculation. A machine is needed that can perform a multiply and an add in just one clock cycle. This requires an architecture molded
to the specific application. DSPs have hardwired units within the processors
for completing a multiply and add within one single clock cycle. Because such
multiply and accumulate (MAC) instructions are the fundamental building
blocks for many DSP applications, efficient execution is imperative.
Pipelining is an additional method of speeding up the instruction throughput of
a processor, rather than speeding up the actual time to execute a single instruction. The simplest analogy is that of a car production line. It might take 10 hours
to assemble a complete car, but because the construction of the car is broken
down into many subsections, a car might be finished every 10 minutes. Computer
instructions can be broken down into stages, such as fetching the instruction,
decoding the instruction, fetching any data, executing the instruction, and storing
the result. In a way similar to that of a production line, instructions are executed
more quickly.
1.2.3
Example Architecture
Programmable DSPs can be categorized into two distinct groups according to
their math type: floating point and fixed point. Each has a different architecture
that benefits some applications and reduces the effectiveness of others.
- Fixed-point DSPs represent a number in a fixed range with a finite number
of bits of precision. For example, a 16-bit processor will give a "215 range.
The earliest DSPs were based on this technology and, for the majority of
applications today, the industry chooses 16-bit fixed-point processors.
The price advantage gained from fixed-point 16-bit DSPs is significant.
1-6
- Floating-point DSPs express numbers between +1.0 and 1.0 using a man-
Introduction
1-7
Controller
Program
ROM
A0A15
D15D0
Data/program crossover
Data
memory
Central
processing
unit
Data Bus
The internal hardware of the processor executes functions that other processors
typically implement in software or microcode. For example, the device contains hardware for single-cycle 16 x 16-bit multiplication, data shifting, and
address manipulation. This hardware-intensive approach provides computing
power previously unavailable on a single chip.
1-8
Complete DSP
Solutions
Complete DSP Solutions/Typical
Applications
Introduction
1-9
Typical Applications
General-Purpose DSP
Digital filtering
Convolution
Correlation
Hilbert transforms
Fast Fourier transforms (FFTs)
Adaptive filtering
Windowing
Waveform generation
Discrete cosine transforms
Hartley transforms
Instrumentation
Spectrum analysis
Function generation
Pattern matching
Seismic processing
Transient analysis
Digital filtering
Phase-locked loops
Control
Disk control
Servo control
Robot control
Laser printer control
Engine control
Motor control
Automotive
Engine control
Vibration analysis
Antilock brakes
Antiskid brakes
Adaptive ride control
Global positioning
navigation
Voice commands
Digital radio
Cellular telephones
Active suspension
Noise suppression
Electronic power steering
4-wheel steering
Air bag control
System diagnosis
Radar detectors
Intelligent cruise control
1-10
Telecommunications
Hand-free speaker phones/
echo cancellations
ADPCM transcoders
Digital PBXs
Line repeaters
Channel multiplexing
1200- to 56,000 kilobit modems
Adaptive equalizers
DTMF encoding/decoding
Data encryption
Low-speed transcoders/
vocoders
ISDN basic/primary rate
interfaces
FAX
Cellular telephones
Cordless telephones
Digital speech
interpolation (DSI)
Packet switching and protocol
Videoconferencing/video compression/multimedia
Spread spectrum
communications
Answering machines
Cable modems
Network switching
Modems
Consumer
Radar detectors
Power tools
Digital audio/TV
Music synthesizer
Educational toys
Answering machines
Multimedia
Digital cameras
Digital videodisk players
White goods (dishwashers,
washing machines, etc.)
Karaoke
Feature phones
Arcade games
Set top boxes
Graphics/Imaging
3-D rotation
Robot vision
Image transmission/
compression
Pattern recognition
Image enhancement
Homomorphic processing
Workstations
Animation/digital map
Voice/Speech
Voice mail
Speech vocoding
Speech recognition
Speaker verification
Speech enhancement
Speech synthesis
Text-to-speech
Industrial
Robotics
Numeric control
Security access
Power line monitors
Active noise cancellation
Electronic meters
Computers
Laser printers/copiers
Scanner/bar-code scanner
Optical character recognition
(OCR)
Neural networks
High-speed array processors
Imaging
Videoconferencing
Modems
Networking controller
Military
Secure communications
Radar processing
Sonar processing
Image processing
Navigation
Missile guidance
Radio frequency modems
Telecommunications Applications
1.5.1
Modems
The mathematically intensive calculations inherent in modem design dictate
using the most powerful and sophisticated DSP performance levels. Typically,
when modem data rates double for a given bandwidth, DSP performance must
increase fourfold. Typical modem tasks are shown in Figure 15.
Modem evolution is dominated by the processing power of DSPs to the extent
that virtually all modems available today use a DSP or a chipset with an
embedded DSP equivalent. Application-specific DSPs and customizable DSP
(cDSPt) devices are also being increasingly used in modems for notebook
and portable computers, where size, weight, and power consumption are key
concerns.
Introduction
1-11
Telecommunications Applications
Telephone
Line
System
control
AT commands
Data compression
Error correction
Modem configuration
Protocol handling
Pulse dialing
On/Off-hook control
T.30 FAX protocol
Modem
data pump
Analog
front end
Modulation/demodulation
Scrambler/descrambler
Decoder/encoder
Carrier generation
Fixed/adaptive equalization
Carrier/timing recovery
Echo cancellation
Filtering
Gain control
DTMF
Line
interface
A/D conversion
D/A conversion
2/4 wire hybrid line
interface (DAA)
1-12
Telecommunications Applications
Two wire
to
four wire
Line
protection
Codec
TI
DSP
Interface
device
Memory
Interface Device
Internal UARTS
TL16C550B/C, TL16C554,
TL16C750, TL16PN550,
TL16C552A
Stand Alone: RS232 driver/receivers
SN75C188/9, MC1488/1489
PCMCIA: UART + PCMCIA LOGIC
TL16PC564A
Additional Circuitry
Voltage supervisors (TL77XX)
Voltage regulators (TL750LXX, 79LXX)
Virtual grounds (TLE2425)
Voltage converters (LT1054)
DSPs in modems are not only increasing processing power, they are also
saving energy through low-power modes and providing circuit flexibility
through high speed, smaller form factors, and greater functionality.
1.5.2
ISDN
The Integrated services digital network (ISDN) offers a dramatic increase in
the speed of data and document transfer at a significantly reduced cost. The
speed achieved through ISDN empowers a new breed of applications:
-
Interactive publishing
Telecommuting
Inexpensive videoconferencing
LAN-to-LAN connectivity
Teleradiology
Remote health care
Teleteaching
Remote broadcasting
Collaborative CAD/CAM engineering
Introduction
1-13
Telecommunications Applications
ISDN brings the digital network to the individual user. The same twisted-pair
copper telephone line that could traditionally only support one voice or one
digital conversation can now carry as many as three separate conversations
simultaneously through the same line.
Texas Instruments DSPs provide the necessary processing performance to
ensure that the secure connection between multiple devices in the ISDN is
maintained. TI DSPs support all the equipment incorporated in the ISDN interface device and in the public switched telephone network (PSTN), as shown
in Figure 17.
Office
Network router
network bridge
TI
DSP
ISDN
line
ISDN
terminal
ISDN line
Home
Office
TI
DSP
1.5.3
Public
switched
telephone
network
TI
DSP
TI
DSP
Analog line
T1
line
Modem
Home
Private branch
exchange (PBX)
ISDN Videoconferencing
The high transmission rates associated with videoconferencing require significant bandwidth. Traditionally, such bandwidth requirements dictated dedicated
broad-band lines that often had to be leased. It is now possible, through ISDN,
to use videoconferencing without the added expense of leased lines (see
Figure 18).
1-14
Telecommunications Applications
Camera,
microphone
RAM/ROM
RS232
PCI ISA
Host
port
interface
TI
DSP
Transceiver
Public
switched
telephone
network
Camera,
microphone
RAM/ROM
RS232
PCI ISA
1.5.4
Host
port
interface
TI
DSP
Transceiver
Introduction
1-15
Telecommunications Applications
To
PC
DRAM/SRAM
Memory
Host
port
interface
TI
DSP
ISDN layer
1 and 2
microcontroller
S0
(Twisted pairs)
ISDN line
System Bus
TMS320C3x
TMS320C54x
TMS320C5x
TMS320C2xx
TI DSPs can also be used for high-end ISDN telephone sets with features
including hands-free function with echo cancellation, high-quality speech
compression (G.722), and digital answering machine functions.
1-16
Audio Applications
1.6.1
Multimedia
Multimedia is being driven by the conversion of traditional analog video signals
to digital signals. Movies and video segments are already available on CDs for
games, business presentations, and educational purposes. Digital video data
will soon be transmitted over cable TV channels, telephone lines, and cellular
channels and through satellites. The massive amounts of data generated by
digitizing video require high-performance DSPs that reduce storage space
and transmission bandwidth for cost-effective delivery of digital video.
Standard multipurpose CPUs work well at directing a variety of host functions;
however, they are not well-suited for the multitasking and computing-intensive
processing of real-time multimedia. Optimized for processing power, DSPs
provide a cost-effective means of off-loading the digital signal processing from
host CPUs. Telephone answering, speech and audio processing, sound effects,
and music are rapidly becoming standard functions in workstations and PCs.
DSPs are designed specifically to execute numeric-intensive tasks like these,
where processing information must correspond to real-time events and several
tasks are often performed simultaneously.
Texas Instruments offers programmable 16-bit fixed-point and 32-bit floatingpoint DSPs ranging from 20 MIPS to 1600 MIPS, as well as a family of application-specific MPEG audio and video decoders. Table 12 summarizes the
compatibility of the TMS320 family with multimedia applications.
Introduction
1-17
Audio Applications
C5x
C54x
C6x
C8x
Mixed
Signal
Modems
Audio
Speech
Application
Digital Tapeless
Answering Device
(DTAD)
Graphics/Imaging
1.6.1.1
Video
Videoconference
1-18
Audio Applications
The real-time multitasking capability of the C80 enables the parallel execution
of video and audio encoding/decoding, video scaling, color space conversion,
acoustic echo cancellation, filtering, error correction, multiplexing, and bitstream protocol handling (see Figure 110). The C80 is the only single-chip
DSP solution available today that offers these capabilities. Videoconferencing,
video CD (MPEG-1 or MPEG-2), and collaborative computing are emerging
technologies that are supported by the real-time manipulation of multiple data
streams offered by the C8x. With its full programmability, the C80 provides
the flexibility to respond to evolving standards and to create products with
many features.
The C8x generation supports all industry-standard algorithms, such as H.320,
MPEG, and JPEG, while offering designers the opportunity to blend their own
proprietary algorithms to clearly differentiate their products. To simplify development of C8x-based video systems, TI now offers a library of popular functions
and standard algorithms, including a complete H.320 software library. Additional
standards libraries such as H.324 and imaging/graphics libraries are planned
for the future.
Introduction
1-19
Audio Applications
Video
decode
TL320AD65
audio
codec
PC
memory
TI
DSP
24M-bit
DRAM
TMS320C8x
PCI
interface
Palette
1.6.1.2
1-20
Audio Applications
1.6.2
Speech
The need for embedded processing systems for speech in general-purpose
computing machinery is growing fast. Multimedia speech processing applications include recognition, verification, voice mail, and text-to-speech voice processing, all of which are computationally demanding. The solution is to convert
analog voice to a digital equivalent and then compress this digital signal for efficient storage and/or transmission. A general speech-processing system is
shown in Figure 111.
T
Analog
voice
A/D
D/A
Data
DSP
Interface
Introduction
1-21
Audio Applications
1.6.2.1
Speech Compression
Representing speech with a minimum number of bits while keeping the highest
quality at the lowest cost, all within the applications environmental constraints,
is the challenge of speech compression. Contemporary single-chip DSPs
have made implementing real-time speech compression algorithms relatively
inexpensive and easy and therefore commercially viable.
In general, high-quality speech compression at low bit rates is accomplished
using very complex and computing-intensive coding algorithms. For example,
a real-time implementation of a low-rate algorithm may require up to 40 MIPS
of DSP processing power. Among the different types of speech coders, two
families can be distinguished: waveform coders and parametric coders.
Waveform coders use direct quantization, that is, a binary representation of the
speech samples themselves. They often operate in the time domain by quantizing the derivative of amplitude. Parametric coders, however, are based on a
mathematical representation of speech model and spectral parameters. Most
of the existing standards result from modifications and enhancements of a few
different algorithmic approaches including adaptive differential pulse code
modulation (ADPCM) and code excited linear prediction (CELP).
1.6.2.2
Speech Recognition
Automatic speech recognition lets computer users replace their keyboards
with verbal instructions. Until recently, use of such systems, which carry out
the users spoken commands, have been restricted by the limitations inherent
in voice recognition technology, as well as by the problems associated with
language dialects and noisy environments. However, many of these limitations
are being overcome through the use of powerful DSP technology.
Speech recognition is primarily used for telecommunications applications,
such as hands-free dialing for cellular telephones and caller identification.
Demand is also growing in industrial applications, including visual inspection
processes, inventory control, and hands-free operations. Hands-free operations enhance safety in areas where dangerous machinery, toxic chemicals,
or high temperatures pose a potential threat to workers. In the event of an
emergency, the ability to issue commands to the equipment by voice allows the
user to quickly shut down a process without having to search for a shut-down
switch. In the multimedia world, speech recognition systems are beginning to
allow users to navigate through their PC software applications by voice.
1-22
Audio Applications
1.6.3
Answering Machines
An existing Texas Instruments solution for a solid-state answering machine
application the digital tapeless answering machine or DTAD is based on
the chipset containing the MSP58C80 and the MSP58C20. This high-performance mixed-signal processor chipset has incorporated CMOS technology to
give low power consumption. With its internal phase-locked loop (PLL), it is
capable of running at an internal clock speed of 65.536 MHz by referencing
an external oscillator of 4.096 MHz. Designing a DTAD system is simplified by
using the glueless logic interface supported by the MSP58C80. The total system component count, and thus the cost, is minimal with a range of peripherals
and advanced built-in DSP algorithms incorporated in the MSP58C80. Further
cost saving in speech storage is provided by an internal 4.8-kbps MCELP
vocoder, which can achieve close to 15 minutes of recording time using just
4M-bits of audio random-access memory (ARAM).
Texas Instruments DTAD chipset can be driven by an external host MCU. A
powerful command set is included as a software interface to the MSP58C80 for
implementation of a DTAD system. Programming using this command set is
made very simple with the random access feature in the message management
commands. The command set also supports direct control over the peripherals
in the MSP58C80. Intelligent and flexible data transfer protocol is incorporated
in the command set to minimize communication error.
Introduction
1-23
Audio Applications
7.2 kbps
- Recording time up to 20 minutes per 4 Mbits at 4.8 kbps with silence
compression
- Directs parallel MCU interface (eight data plus four control lines)
- Supports direct external ROM interface for customized DTS, voice menu,
ARAM interface
- 4.096-MHz external crystal with internal PLL
- Real-time clock function
- Two 8-bit general-purpose user I/O ports (MSP58C024)
- Three 8-bit ADC inputs with user-defined thresholds for event monitoring
- User-programmable single/dual tone generator with adjustable tone level
- Call progress tone detect for U.S., Germany, France, and United Kingdom
- Reliable DTMF detect
- Ring detect with programmable bandwidth
- Internal day-time stamp with voice clock (English version male voice)
- Ease of use and powerful MCU command set
- Supports up to eight mailboxes
- Random access of out-going message (OGM) record, playback, delete, and
Audio Applications
Introduction
1-25
Control Applications
1.7.1
Motor Control
Todays generations of automated systems must be designed with environmental consciousness in mind, with more efficient power conservation and a
more robust control function implementation. Such systems are now possible
through the use of digital motor control technologies (see Figure 112).
To address this growing market, TI offers a broad line of semiconductor
technology oriented to motor control applications, as well as an extensive
selection of development tools and third-party support. Optimized specifically
for digital motor and motion control, TI offers the TMS320C24x DSP controllers,
as well as other TMS320 digital signal processors. The TMS370 family of microcontrollers and the industrys only family of integrated power switching transistors completes TIs spectrum of motor control solutions.
Command
Reference
profile or
move/state
trajectory
Controller
Feedback
Motor load
D/A
Sensors
Regulator
A/D
1-26
Plant
Power
amplifier
or
actuator
Control Applications
Motor control systems have traditionally been implemented using analog and
passive components such as operational amplifiers, resistors, capacitors, and
voltage regulators. Alternatively, control may be performed digitally by converting a discrete sample of the analog input signal to a digital equivalent. The
input signal is not processed continuously but is sampled at discrete intervals.
A sampling interval of at least six to ten times the bandwidth of the system is
usually implemented, placing significant performance demands on the system
processor.
Due to the high performance and low cost of digital signal processors and microcontrollers, digital motor control systems are replacing analog controllers in
todays designs.
Advantages of DSP-based motor control include:
- Real-time generation of smooth reference and move profiles
- Integration of memory (lookup tables) or multiple processors into a single
DSP
- Use of advanced algorithms, resulting in fewer sensors and lower system
cost
- Vector control of brushless and induction motors
- Control of power switching inverters and the generation of high-resolution
1.7.2
1-27
Control Applications
and electromechanical methods has existed for some time. However, more
revolutionary products will emerge as advanced image/signal processing is
applied to do more than simply copy documents.
DSP solutions are the key to the transformation of copiers into document processing workstations. Already, high-performance DSP devices, such as the
TMS320C62xx and TMS320C3x, offer the processing power to take copying
machines to a higher level.
A single processor that can handle both image printing and recognition reduces
the overall system cost. When scanning a document for faxing, the C8x could
analyze the document and correct it for rotation, also carrying out the process
know as grid stretching in order to send a document. This would eliminate most
of the jaggies commonly associated with faxed material. Similarly, image processing could clean up a document sent by a machine that did not have jaggy
removal.
The move to digital processing on high-end, high-volume copiers and color
copiers is already prolific. However, much of the digital processing in these
products is dedicated to specific copying tasks. These copiers are using digital
processing to improve their reliability, ease of use, and image quality.
1.7.3
1-28
Control Applications
Input
signals
UL1 UL3
IL1 IL3
Temp.
0 Ref.
Measurement
and
signal
conditioning
CLKOUT
4 or
8
inputs
TMS320C2xx
MPX
ADC
Parallel
IF
Serial
IF
Display/
LCD
driver
EPROM
EEPROM
User interface
Control
signals
Parallel
IF
Address / Data
1.7.4
Networking Controllers
Emerging applications such as videomail, virtual reality, and interactive television require flexible transmission bandwidths. In addition, they must have their
own worldwide standards and maintain compatibility with existing systems
and networks.
ISDN and multimedia networks must therefore have the capability of transmitting
a combination of signals of varying bandwidths simultaneously on the same
transmission line. High-performance networks already exist with the capacity to
transmit image, voice, and data for these applications cost-effectively and in real
time. asynchronous transfer mode (ATM) is becoming the worldwide standard for
high-speed data communication. Texas Instruments offers solutions based on
standard products like the C40 for ATM switching (see Figure 114).
Introduction
1-29
Control Applications
8-bit
8-bit
STM1
TDC1500A
+ UTOPIA/CPIF
8-bit
8-bit
STM1
TDC1500A
+ UTOPIA/CPIF
8-bit
155.52-Mbit
electrical
or optical
interfaces
C
P
C
P
C
P
C
P
C
P
32-bit-wide
global bus,
arbitrated for
multiple C40
access
TMS320C40 DSP
STM1
C
P
TMS320C40 DSP
8-bit
1500A
+ UTOPIA/CPIF
C
P
C
P
C
P
C
P
C
P
C
P
32-bit
local bus
32-bit
local bus
Program
memory
for pirmware
Program
memory
for pirmware
8-bit
1500A
+ UTOPIA/CPIF
STM1
TDC1500A
+ UTOPIA/CPIF
STM1
TDC1500A
+ UTOPIA/CPIF
STM1
8-bit
8-bit
8-bit
8-bit
8-bit
155.52-Mbit
electrical
or optical
interfaces
The data flow to and from the TDCs is controlled via internal direct memory
access (DMA) channels. Data bandwidths of 60M bytes/s per C40 are achievable with the system. For data exchange to other lines, the C40s global bus
can be shared by several other processors. Access arbitration, internal data
routing, and signaling are all performed with software. The TNETA1500 singlechip line interface to STM-1/STC3c scrambles and descrambles the signal and
facilitates framing, idle cell insertion, and extraction. It also generates status
messages on dedicated error lines for fast reaction. This configuration allows
a fast time to market and can be used as a cheap emulation tool.
DSPs can also be used to connect narrow-band ISDN networks with ATM networks, as shown in Figure 115. The C542 offers 10K words of on-chip RAM,
used for cell buffering. Internal logic interfaces directly to PCM32/PCM128.
OAM flow, control flow, and feedback control are performed by software. Connection, rewiring, and software updates are done by OAM cell booting. This
configuration allows flexible algorithms like multiple SRTS handling in those
areas where specifications are not fully defined.
1-30
Control Applications
TDC1500A
374
PCM32/PCM128
TMS320C542
Core
STM1 Line
374
Utopia bus
arbitration
Memory
8-bit
wide
FIFO
DP MEM
TMS320C542
Memory
G.703
bitcoder
G.804
framer
2x E1/E2
interface
G.703
bitcoder
G.804
framer
2x E1/E2
interface
DP MEM
Shift reg
DP MEM
Shift reg
TMS320C542
Core
8-bit
wide
FIFO
Shift reg
Shift reg
Core
374
8-bit
wide
FIFO
DP MEM
Memory
DP MEM
Shift reg
DP MEM
Shift reg
G.703
bitcoder
G.804
framer
Introduction
2x E1/E2
interface
1-31
1-32
Introduction
1-33
Production
TMS320
evaluation
Prototype
H/W and
S/W design
System
debugging
DSP starter kits (DSKs), evaluation modules (EVMs), simulators, assembler/linkers, and compilers from TI and from third parties. Using these
tools, a developer can benchmark code and determine single or multiple
DSP system configurations. TIs extensive documentation provides the
necessary information on specifications and capabilities.
1-34
- Hardware and software designs. You can design these modules in par-
ware and hardware modules and debugging of the entire DSP system.
You can use emulators and the new source-level debugger at this stage;
technical assistance is available from the hotline and/or field technical
staff.
- Prototype. When you complete your system prototype, you can submit
and/or release your devices ROM code to TI through the BBS. One-timeprogrammable and Flash DSPs provide for early prototype development
and smooth the transition to the production phase.
- Production. Once system production begins, you can design a system
Introduction
1-35
TMS320C6x only
Assembly
source linear
code
Macro
Source
Files
C Compiler
Assembly
optimizer
Archiver
Assembler
Source
Assembly
optimized
file
Macro
Library
Assembler
Debugging
tools
Archiver
Library of
Object
Files
1-36
Runtime
Support
Library
Linker
Executable
COFF
File
Hex Conversion
Utility
EPROM
Programmer
COFF
Object
Files
Cross-reference
lister
TMS320
DSP
Debugging
tools
Absolute
lister
Chapter 2
Selection Guide
Choosing the right DSP for your needs is an important process, and one that
can be confusing given the wide range of choices. This chapter is intended to
help with the selection process.
Topic
Page
2.1
2.2
2.3
2.4
2-1
2-2
C6000
(C62x, C67x)
C5000
(C54x)
C2000
(C20x, C24x)
C1/2x
C5x
C8x
C3x/4x
High performance
Power efficient
performance
Control optimized
Selection Guide
2-3
TMS devices and SMJ devices have been properly tested, and the quality and
reliability of the devices have been successfully demonstrated. TIs standard
warranty applies.
2-4
=
=
=
=
=
MIL-PRF-38535 (QML)
MIL-PRF-38535 (QML) plastic
experimental device
prototype device
qualified device
Device Family
320
= TMS320 family
Technology
No letter= NMOS
AV
= audio/video encoders or decoders
BC
= CMOS with ROM bootloader
C
= CMOS
E
= CMOS EPROM
F
= CMOS with flash memory
LBC
= low-voltage CMOS with
ROM bootloader
LC
= low-voltage CMOS
LF
= low-voltage CMOS with flash memory
P
= CMOS one-time-programmable ROM
VC
= very low voltage
Device
1x-generation microprocessors/microcomputers:
10, 14, 15, 16, 17
2x-generation microprocessors: 25, 26
2xx-generation microprocessors: 203, 206, 209,
240, 241, 242, 243
3x-generation microprocessors: 30, 31, 32
4x-generation microprocessors: 40, 44
5x-generation microprocessors:
50, 51, 52, 53, 56, 57
54x-generation microprocessors:
541, 542, 543, 545, 546, 548, 549,
6x-generation microprocessors
6201, 6701
8x-generation microprocessors: 80, 82
AVxxx-generation microprocessors:
110, 120, 411
Note:
25
FN L 40
Speed
(in MHz or MIPS)
Temperature Range
A
= 40 to 85C
H
= 0 to 85C
L
= 0 to 70C
M
= 55 to 125C
S
= 55 to 100C
Package Type*
FD
FJ
FN
FZ
GB
GE
GF
GFA
GFW
GGU
HFG
HFH
J
JD
KGD
N
PCM
PDB
PE
PG
PGE
PH
PN
PJ
PPM
PQ
PZ
TA
TAB
TB
TBB
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
LCCC
JLCC
PLCC
CERQUAD
CPGA
CPGA
CPGA
CPGA
PBGA
BGA (ball grid array)
CQFP
CQFP
CDIP
CDIP SB
known good die
plastic DIP
PQFP
PQFP
PQFP
PQFP
TQFP
PQFP
TQFP
PQFP
PQFP
PQFP
TQFP
TAB (encapsulated)
TAB (encapsulated)
TAB (bare die)
TAB (bare die)
Questions on availability should be directed to the nearest TI Sales Office, Authorized TI Distributor,
or TI Semiconductor Product Information Center (PIC).
Selection Guide
2-5
2-6
TMS320F240 a 16-bit, fixed-point DSP with an optimized event manager, dual on-chip 10-bit analog-to-digital converters, SPI and SCI ports,
16K words of flash memory, 28 bidirectional I/O pins, and a watchdog
timer
C3x
C4x
C5x
C54x
C6x
C8x
AVxxx
C203
C30
C40
C50
C541
C6201
C80
AV110
LC203
C31
C44
LC50
LC541
C6701
C82
AV120
C206
LC31
C51
C542
F206
C32
LC51
LC542
C209
LC32
C52
LC543
C240
LC52
LC545
F240
C53
LC546
C241
LC53
LC548
F241
C53S
LC549
C242
LC53S
VC549
F243
LC56
LC57
BC57S
- TMS320C3x generation
J
2-7
- TMS320C4x generation
J
TMS320C44 a lower-cost version of the C40 with four communications ports and a smaller address reach
- TMS320C5x generation
2-8
- TMS320C54x generation
J
- TMS320C6x generation
J
TMS320C6701 floating point version of the TMS320C6201 available with an instruction cycle time of 6ns. Based on the VelociTI VLIW
Selection Guide
2-9
2-10
Device Name
Freq
(MHz)
Cycle
Time
(ns)
MIPS
RAM
ROM
Flash
Data
Prog
C203PZ
40
50
20
544
64K
64K
On-Chip
Peripherals
I/O
Serial
Port
Timers
Package Type
Typ
Diss
(mW)
64K 16
190
0/70
(p)
Off-Chip
Temp
Range
(C)
C203PZ57
57
35
28.5
544
64K
64K
64K 16
100 TQFP
270
0/70
C203PZ80
80
25
40
544
64K
64K
64K 16
380
0/70
LC203PZ
40
50
20
544
64K
64K
64K 16
100 TQFP
73
0/70
LC203PZA
40
50
20
544
64K
64K
64K 16
100 TQFP
73
40/85
C206
80
25
40
4.5K
32K
64K
64K
64K 16
100 TQFP
400
0/70
LC206
80
25
40
4.5K
32K
64K
64K
64K 16
100 TQFP
400
0/70
F206PZ
40
50
20
4.5K
32K
64K
64K
64K 16
100 TQFP
190
0/70
C209PN
40
50
20
4.5K
4K
64K
64K
64K 16
80 TQFP (p)
190
0/70
(p)
(p)
C209PN57
57
35
28.5
4.5K
4K
64K
64K
64K 16
80 TQFP
270
0/70
C240
40
50
20
544
16K
64K
64K
64K 16
132 PQFP
400
40/85
F240
40
50
20
544
16K
64K
64K
64K 16
132 PQFP
400
40/85
C241
40
50
20
544
8K
64K
64K
64K 16
68 PLCC
64 PQFP
400
40/85
F241
40
50
20
544
8K
64K
64K
64K 16
68 PLCC
64 PQFP
400
40/85
C242
40
50
20
544
4K
64K
64K
64K 16
68 PLCC
64 PQFP
400
40/85
F243
40
50
20
544
8K
64K
64K
64K 16
144 TQFP
400
40/85
Industrial temperature, military devices, and automotive temperature qualification devices are also available.
See Figure 22 for explanation of device nomenclature.
Plastic package
The core operates as 3.3V; I/O operates at 5V.
2-11
Selection Guide
Memory (Words)
Device Name
Freq
(MHz)
Cycle
Time
(ns)
On-Chip
MIPS
MOPS
RAM
ROM
Peripherals
Package
Type
Typ
Diss
(mW)
Temp
Range
(C)
181 CPGA
1000
0/85
Off-Chip
Cache
Serial
Port
Timer
DMA
Channels
32
Parallel
C30GEL
33
60
16.667
183.337
2K
4K
64
16M x
C30GEL40
40
50
20
220
2K
4K
64
16M x 32
181 CPGA
1250
0/85
C30GEL50
50
60
25
275
2K
4K
64
16M x 32
181 CPGA
1500
0/85
C31PQL40
40
50
20
220
2K
BL
64
16M x 32
132 PQFP
900
0/85
LC31PQ40
40
50
20
220
2K
BL
64
16M x 32
132 PQFP
700
0/85
C31PQL50
50
40
25
275
2K
BL
64
16M x 32
132 PQFP
1100
0/85
C31PQL60
60
33
30
330
2K
BL
64
16M x 32
132 PQFP
1300
0/85
C31PQA40
40
50
20
220
2K
BL
64
16M x 32
132 PQFP
900
40/125
C32PCM40
40
50
20
220
512
BL
64
16M x 8/16/32
144 PQFP
900
0/85
2-12
Device Name
Freq
(MHz)
Cycle
Time
(ns)
MIPS
MOPS
C32PCMA40
40
50
20
C32PCM50
50
40
C32PCMA50
50
C32PCM60
60
On-Chip
Peripherals
Package
Type
Typ
Diss
(mW)
Temp
Range
(C)
40/125
Off-Chip
RAM
ROM
Cache
Timer
DMA
Channels
220
512
BL
64
16M x 8/16/32
144 PQFP
900
25
275
512
BL
64
16M x 8/16/32
144 PQFP
1100
0/85
40
25
275
512
BL
64
16M x 8/16/32
144 PQFP
1100
40/125
33
30
330
512
BL
64
16M8/16/32
144 PQFP
1300
0/85
Parallel
Serial
Port
FREQ
(MHZ)
Cycle
y
Ti
Time
(ns)
On-Chip
MIPS
MOPS
C40GFL50
50
40
25
C40GFL60
60
33
C44PDB50
50
C44PDB60
Off-Chip
Package
Type
Typ
yp
Di
Diss
(mW)
Temp
p
Range
R
(C)
RAM
ROM
Cache
Parallel
Serial
Port
Timer
DMA
Channels
275
2K
BL
128
4G x 32
6 (12)
325 CPGA
1500
0/85
30
330
2K
BL
128
4G x 32
6 (12)
325 CPGA
1800
0/85
40
25
275
2K
BL
128
32M x 32
6 (12)
304 PQFP
1800
0/85
60
33
30
330
2K
BL
128
32M x 32
6 (12)
304 PQFP
1800
0/85
C44GFW50
50
40
25
275
2K
BL
128
32M x 32
6(12)
388 BGA
0/85
C44GFWA50
50
40
25
275
2K
BL
128
32M x 32
6(12)
388 BGA
40/125
C44GFW60
60
33
30
330
2K
BL
128
32M x 32
6(12)
388 BGA
0/70
2-13
Selection Guide
Device
Name
Peripherals
Memory (Words)
Device Name
Cycle
Freq Time
(MHz) (ns)
MIPS
RAM
ROM
OTP
Data
Prog
C50PQ
40
20
10K
BL
64K
C50PQ-57
C50PQ-80
C50PQA
57
80
40
50
35
25
50
On-Chip
28.57
40
20
10K
10K
10K
BL
BL
BL
Peripherals
Off-Chip
64K
64K
64K
Package
Type
Typ
Diss
(mW)
Temp
Range
(C)
I/O
Serial
Port
Timers
HPI
64K
64K 16
132 PQFP
525
0/70
64K
64K 16
132 PQFP
590
0/70
64K
64K 16
132 PQFP
825
0/70
64K
64K 16
132 PQFP
525
40/85
C50PQA-57
57
35
28.57
10K
BL
64K
64K
64K 16
132 PQFP
590
40/85
LC50PQ
40
50
20
10K
BL
64K
64K
64K 16
132 PQFP
155
0/70
BC51PQ-57
57
35
28.57
2K
8K
64K
64K
64K 16
132 PQFP
590
0/70
BC51PQ-80
80
25
40
2K
8K
64K
64K
64K 16
132 PQFP
825
0/70
64K
64K 16
132 PQFP
975
0/70
64K
64K 16
132 PQFP
590
40/85
64K
64K 16
100 PQFP
650
0/70
64K
64K 16
100
750
0/70
132 PQFP
590
0/70
BC51PQ-100
BC51PQA-57
BC51PZ57
BC51PZ80
BC51PQ57
100
57
57
80
57
20
35
35
25
35
50
28.57
28.57
40
28.57
2K
2K
2K
2K
2K
8K
8K
8K
8K
8K/
64K
64K
64K
64K
TQFP
64K
64K
64K 16
64K
64K
64K 16
132 PQFP
825
0/70
64K
64K
64K 16
132 PQFP
975
0/70
BL
BC51PQ80
80
25
40
2K
8K/
BL
BC51PQ100
100
20
50
2K
8K/
BL
2-14
Device Name
Cycle
Freq Time
(MHz) (ns)
On-Chip
MIPS
RAM
ROM
Peripherals
Off-Chip
OTP
Data
Package
Type
Typ
Diss
(mW)
Temp
Range
(C)
Prog
I/O
Serial
Port
Timers
HPI
132 PQFP
590
40/85
BC51PQA57
57
35
28.57
2K
8K/
BL
64K
64K
64K 16
LBC51PQ57
57
35
28.57
2K
8K/
BL
64K
64K
64K 16
132 PQFP
190
0/70
C51PZ80
80
25
40
2K
8K
64K
64K
64K 16
21
100 TQFP
825
0/70
BC51PZ57
57
35
28.57
2K
8K
64K
64K
64K 16
21
100 TQFP
590
0/70
BC51PZ80
80
25
40
2k
8K
64K
64K
64K 16
21
100 TQFP
825
0/70
BC51PZ100
100
20
50
2K
8K/
64K
64K
64K 16
21
100 TQFP
975
0/70
64K
64K
64K 16
132 PQFP
190
0/70
64K
64K
64K 16
100 PQFP
825
0/70
100 PQFP
590
0/70
BL
LBC51PZ57
57
35
28.57
2K
8K/
BL
C52PJ80
BC52PJ57
80
57
25
35
40
28.57
1K
1K
4K
4K/
64K
64K
64K 16
64K
64K
64K 16
100 PQFP
835
0/70
64K
64k
64K 16
100 PQFP
590
40/85
64k
64k
64K 16
100 PQFP
195
0/70
BL
BC52PJ80
80
25
40
1K
4K/
BL
BC52PJA57
57
35
28.57
1K
4K/
LBC52PJ57
57
35
28.57
1K
4K/
BL
2-15
Selection Guide
BL
Memory (Words)
Device Name
Cycle
Freq Time
(MHz) (ns)
MIPS
RAM
ROM
OTP
Data
Prog
BC52PZ57
57
35
28.57
1K
4K/
BL
64K
64K
BC52PZ80
80
25
40
1K
4K/
BL
64K
BC52PZ100
100
20
50
1K
4K/
BL
BC52PZA57
57
35
28.57
1K
4K/
BL
LC52PZ
40
50
20
1K
4K
LC52PZ57
LC52PZA
57
40
35
50
On-Chip
28.57
20
1K
1K
4K
4K
Peripherals
Off-Chip
Temp
Range
(C)
I/O
Timers
HPI
64K 16
100 TQFP
590
0/70
64K
64K 16
100 TQFP
825
0/70
64K
64K
64K 16
100 TQFP
975
0/70
64K
64K
64K 16
100 TQFP
590
40/85
64K
64K
64K 16
100 TQFP
155
0/70
64K
64K 16
100
TQFP
190
0/70
64K
64K 16
100
TQFP
155
40/85
100
TQFP
190
0/70
64K
64K
1
1
Package
Type
Typ
Diss
(mW)
Serial
Port
LBC52PZ57
57
35
28.57
1K
4K/
BL
64K
64K
64K 16
C53PQA
40
50
20
4K
16K
64K
64K
64K 16
132 PQFP
525
40/85
132 PQFP
590
0/70
BC53PQ57
57
35
28.57
4K
16K/
64K
64K
64K 16
64K
64K
64K 16
132 PQFP
825
0/70
64K
64K
64K 16
132 PQFP
525
40/85
64K
64K
64K 16
132 PQFP
155
0/70
BL
BC53PQ80
80
25
40
4K
16K/
BL
BC53PQA
40
50
20
4K
16K/
BL
LBC53PQ
40
50
20
4K
16K/
BL
2-16
Device Name
Cycle
Freq Time
(MHz) (ns)
On-Chip
MIPS
RAM
ROM
Peripherals
Off-Chip
OTP
Data
Package
Type
Typ
Diss
(mW)
Temp
Range
(C)
Prog
I/O
Serial
Port
Timers
HPI
100 TQFP
590
0/70
BC53SPZ57
57
35
28.57
4K
16K/
BL
64K
64K
64K 16
2#
BC53SPZ80
80
25
40
4K
16K/
BL
64K
64K
64K 16
2#
100 TQFP
825
0/70
LBC56PZ57
57
35
28.57
7K
32K
64K
64K
64K 16
2||
100 TQFP
190
0/70
LBC56PZ80
80
25
40
7K
32K
64K
64K
64K 16
2||
100 TQFP
305
0/70
LBC57PBK57
57
35
28.57
7K
32K
64K
64K
64K 16
2||
128 TQFP
190
0/70
LBC57PBK80
80
25
40
7K
32K
64K
64K
64K 16
2||
128 TQFP
305
0/70
64K
64K 16
2||
144 TQFP
590
0/70
64K
64K 16
2||
144 TQFP
825
0/70
BC57SPGE57
BC57SPGE80
57
80
35
25
28.57
40
7K
7K
BL
BL
64K
64K
2-17
Selection Guide
Memory (Words)
Device
Name
Freq
(MHz)
Cycle
Time
(ns)
C541#-40
80
25
40
5K
28K
64K
C542#-40
80
25
40
10K
2K
LC541#-40
80
25
40
5K
LC541#-50
100
25
40
LC541#-66
133
15
LC542#-40
80
LC542#-50
Peripherals
Package Type
Typ
Diss
(mW)
Temp
Range
(C)
100 TQFP
350
40/85
128/144 TQFP
350
40/85
100 TQFP
80
40/85
64K 16
100 TQFP
100
40/85
64K
64K 16
100 TQFP
131
40/85
64K
64K
64K 16
128/144 TQFP
150
40/85
2K
64K
64K
64K 16
128/144 TQFP
175
40/85
10K
2K
64K
64K
64K 16
100 TQFP
150
40/85
50
10K
2K
64K
64K
64K 16
100 TQFP
175
40/85
25
40
6K
48K
64K
64K
64K 16
128 TQFP
80
40/85
100
20
50
6K
48K
64K
64K
64K 16
128 TQFP
100
40/85
LC546#-40
80
25
40
6K
48K
64K
64K
64K 16
100 TQFP
80
40/85
LC546#-50
100
20
50
6K
48K
64K
64K
64K 16
100 TQFP
100
40/85
LC548#-66
133
15
66
32K
2K
64K
8M
64K 16
3#
144 TQFP
131
40/85
LC548#-80
160
12.5
80
32K
2K
64K
8M
64K 16
3#
144 TQFP
158
40/85
LC549#-80
160
12.5/15
80
32K
16K
64K
8M
64K 16
3#
144 TQFP/BGA
158
40/85
VC549#-100
200
10
100
32K
16K
64K
8M
64K 16
3#
144 TQFP/BGA
113
40/85
On-Chip
Off-Chip
I/O
Serial
Port
HPI
Timers
64K
64K 16
64K
64K
64K 16
28K
64K
64K
64K 16
5K
28K
64K
64K
40
5K
28K
64K
25
40
10K
2K
100
20
50
10K
LC543#-40
80
25
40
LC543#-50
100
20
LC545#-40
80
LC545#-50
MIPS
RAM
ROM
Data
Prog
2-18
Freq
(MHz)
Cycle
Time
(ns)
C6201
200
C6701
167
On-Chip
MIPS
Data
type
RAM
1600
fixed
1336
floating
Peripherals
Off-Chip
Parallel
Serial
Port
128K
8/16/32
128K
8/16/32
Typ
Diss
(mW)
Temp
Range
(C)
Timers
DMA
channels
Package
Type
352 BGA
0/85
352 BGA
0/85
Freq
(MHz)
Cycle
Time
(ns)
BOPS
SRAM
On-Chip
ROM
Peripherals
Off-Chip
Cache
Prog
I/O
Serial
Port
HPI
Timers
Package Type
Typ
Diss
(mW)
Temp
Range
(C)
60
16
2.5
50K
4G x 8
305 PGA
0/85
C80GF50
50
20
2.5
50K
4G x 8
305 PGA
0/85
C80GGP50
50
20
2.5
50K
4G x 8
352 BGA
0/85
C80GGP60
50
20
2.5
50K
4G x 8
352 BGA
0/85
C82GGP
50
20
1.5
44K
4G x 8
352 BGA
0/85
C82GGP
50
20
1.5
44K
4G x 8
352 BGA
0/85
2-19
Selection Guide
C80GF60
Controller
Interface
Off-Chip Memory
Package Type
8-bit
Optional 1M DRAM
120-pin PQFP
16- or 18-bit
None
None
44-pin PLCC
RGB, YCbCr
9-bit
Device Name
Function
Input Format
Output Format
AV110
AV120
AV411/410
100-pin PQFP
2-20
Operating
Frequency
Package
Type
Typical
Dissipation
Temp
Range, C
SMJ320C10JDM
20.5 MHz
165 mW
55/125
SMJ320C10JDM25
25.6 MHz
200 mW
55/125
SMJ320C15JDM
20.5 MHz
165 mW
55/125
SMJ320C15JDM25
25.6 MHz
200 mW
55/125
SMJ320C15FJM
20.5 MHz
44-pin JLCC
165 mW
55/125
SMJ320C15FJM25
25.6 MHz
44-pin JLCC
200 mW
55/125
SMJ320E14GBM
20.5 MHz
68-pin PGA
325 mW
55/125
SMJ320E14FJM
20.5 MHz
68-pin JLCC
325 mW
55/125
SMJ320C25GBM
40 MHz
68-pin PGA
550 mW
55/125
SMJ320C25GBM50
50 MHz
68-pin PGA
700 mW
55/125
SMJ320C25FJM
40 MHz
68-pin JLCC
550 mW
55/125
SMJ320C25FJM50
50 MHz
68-pin JLCC
700 mW
55/125
SMJ320C25FDM
40 MHz
68-pin LCCC
550 mW
55/125
SMJ320C26BGBM
40 MHz
68-pin PGA
550 mW
55/125
SMJ320C26BFDM
40 MHz
68-pin JLCC
550 mW
55/125
SMJ320C30GBM33
33.3 MHz
181-pin PGA
1100 mW
55/125
SMJ320C30HFGM33
33.3 MHz
196-pin CQFP
1100 mW
55/125
SMJ320C30GBM40
40 MHz
181-pin PGA
1250 mW
55/125
SMJ320C30HFGM40
40 MHz
196-pin CQFP
1250 mW
55/125
SMJ320C30TAM33
33.3 MHz
1100 mW
55/125
SMJ320C30TBM33
33.3 MHz
1100 mW
55/125
SMJ320C30TAM40
40 MHz
1250 mW
55/125
SMJ320C30TBM40
40 MHz
1250 mW
55/125
TMP320C30TAL40
40 MHz
1250 mW
0/70
SMJ320C30KGDM33
33.3 MHz
203-pad KGD
1100 mW
55/125
SMJ320C30KGDM40
40 MHz
203-pad KGD
1250 mW
55/125
Calculated from typical ICC current and nominal VCC supply voltage
Selection Guide
2-21
Operating
Frequency
Package
Type
Typical
Dissipation
TMP320C30KGDL40
40 MHz
203-pad KGD
1250 mW
0/70
SMJ320C31GFAM33
33.3 MHz
141-pin PGA
750 mW
55/125
SMJ320C31HFGM33
33.3 MHz
132-pin CQFP
750 mW
55/125
SMJ320C31GFAM40
40 MHz
141-pin PGA
1250 mW
55/125
SMJ320C31HFGM40
40 MHz
132-pin CQFP
1250 mW
55/125
SMJ320C31GFAM50
50 MHz
141-pin PGA
1750 mW
55/125
SMJ320C31HFGM50
50 MHz
132-pin CQFP
1750 mW
55/125
SMJ320C31TAM33
33.3 MHz
750 mW
55/125
SMJ320C31TBM33
33.3 MHz
750 mW
55/125
SMJ320C31TAM40
40 MHz
1250 mW
55/125
SMJ320C31TBM40
40 MHz
1250 mW
55/125
SMJ320C31TAM50
50 MHz
1750 mW
55/125
SMJ320C31TBM50
50 MHz
1750 mW
55/125
TMP320C31TAL50
50 MHz
1750 mW
0/70
SMJ320C31KGDM33
33.3 MHz
132-pad KGD
750 mW
55/125
SMJ320C31KGDM40
40 MHz
132-pad KGD
1250 mW
55/125
SMJ320C31KGDM50
50 MHz
132-pad KGD
1750 mW
55/125
TMP320C31KGDL50
50 MHz
132-pad KGD
1750 mW
0/70
SMQ320C32PCMM50
50 MHz
144-pin PQFP
1000 mW
55/125
SMJ320C40GFM33
33.3 MHz
325-pin PGA
1000 mW
55/125
SMJ320C40HFHM33
33.3 MHz
352-pin CQFP
1000 mW
55/125
SMJ320C40GFM40
40 MHz
325-pin PGA
1750 mW
55/125
SMJ320C40HFHM40
40 MHz
352-pin CQFP
1750 mW
55/125
SMJ320C40GFM50
50 MHz
325-pin PGA
2500 mW
55/125
SMJ320C40HFHM50
50 MHz
352-pin CQFP
2500 mW
55/125
SMJ320C40TABM40
40 MHz
1750 mW
55/125
Calculated from typical ICC current and nominal VCC supply voltage
2-22
Temp
Range, C
Temp
Range, C
1750 mW
55/125
50 MHz
2500 mW
55/125
SMJ320C40TBBM50
50 MHz
2500 mW
55/125
TMP320C40TABL50
50 MHz
2500 mW
0/70
TMP320C40TABL60
60 MHz
3250 mW
0/70
SMJ320C40KGDM40
40 MHz
325-pad KGD
1750 mW
55/125
SMJ320C40KGDM50
50 MHz
325-pad KGD
2500 mW
55/125
TMP320C40KGDL50
50 MHz
325-pad KGD
2500 mW
0/70
TMP320C40KGDL60
60 MHz
325-pad KGD
3250 mW
0/70
TMP320C50KGDL40
40 MHz
117-pad KGD
525 mW
0/70
TMP320C50KGDL57
57 MHz
117-pad KGD
590 mW
0/70
SMJ320C50KGDM50
50 MHz
117-pad KGD
450 mW
55/125
SMJ320C50KGDM66
66 MHz
117-pad KGD
600 mW
55/125
SMJ320C50GFAM50
50 MHz
141-pin PGA
450 mW
55/125
SMJ320C50GFAM66
66 MHz
141-pin PGA
600 mW
55/125
SMJ320C50HFGM50
50 MHz
132-pin CQFP
450 mW
55/125
SMJ320C50HFGM66
66 MHz
132-pin CQFP
600 mW
55/125
SMQ320C50PQM66
66 MHz
132-pin PQFP
600 mW
55/125
TMP320BC51KGDL40
40 MHz
117-pad KGD
525 mW
0/70
TMP320BC51KGDL57
57 MHz
117-pad KGD
590 mW
0/70
SMJ320C80GFM40
40 MHz
305-pin CPGA
3W
55/125
SMJ320C80GFM50
50 MHz
320-pin CPGA
TBD
55/125
SMJ320C80HFHM40
40 MHz
305-pin CQFP
3W
55/125
SMJ320C80HFHM50
50 MHz
320-pin CQFP
TBD
55/125
Device
Name
Operating
Frequency
SMJ320C40TBBM40
40 MHz
SMJ320C40TABM50
Package
Type
Calculated from typical ICC current and nominal VCC supply voltage
Selection Guide
2-23
C4x
C5x
C54x
C6x
EVM
DSK
Parallel
Processing Development
System
(PPDS)
EVM
DSK
EVM
DSKplus
EVM
Simulator
Software With
Debugger
C
Compiler/
Assembler/
Linker
C
Compiler
Assembler/
Linker
C
Compiler
Assembler/
Linker
C
Compiler
Assembler/
Linker
C
Compiler
Assembler/
Linker
C
Compiler/
Assembler/
Linker/
Assembly
Optimizer
C
Compiler/
Assembler/
Linker
C2xx
C8x
XDS510/
XDS510/
XDS510/
XDS510/
XDS510/
XDS510/
XDS510/
XDS510WS
XDS510WS
XDS510WS
XDS510WS
XDS510WS
XDS510WS
XDS510WS
Hardware
Hardware
Hardware
Hardware
Hardware
Hardware
Hardware
Conversion
Cable
Conversion
Cable
Conversion
Cable
Conversion
Cable
Conversion
Cable
Conversion
Cable
Conversion
Cable
Code
Composer
Code
Composer
Code
Composer
Code
Composer
Code
Composer
Code
Composer
Evaluation module
DSP starter kit
2-24
EVM, SDB
or PPDS
Simulator
XDS510
C30
C50
C54x
C6x
C8x
C2xx
C3x
C4x
C5x
C54x
C6x
C8x
C2xx
C3x
C4x
C5x
C54x
C6x
C8x
Development purpose:
Evaluation/benchmarking
Software design
Hardware design
Line-by-line or reverse assembler
Modify/display memory and registers
Single-stepping
Breakpoint on instruction acquisition
Breakpoint on memory access/read/write
Time-stamping/clock counter
Real-time trace samples
Multiuser system
HLL user interface
Files associated with I/O ports
Yes
Yes
No
Yes
Yes
Yes
Yes
No
No
No
No
Yes
No
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
Yes
No
No
Yes
Yes
No
Yes
No
N/A
N/A
No
Yes
16K
384K
64K
64K
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
EVM = evaluation module, SDB = software development board, PPDS = parallel processing development system
The memory expansion board (included in the C2x XDS/22) allows for memory expansion to 64K total words
of program and data memory, configurable in 1K-word blocks.
Program/data expansion depends on the users target system.
Selection Guide
2-25
2.4.1
TMDS
TMDC
TMX and TMP devices and TMDX development support tools are shipped with
the following disclaimer:
Developmental product intended for internal evaluation purposes.
Note:
Texas Instruments recommends that prototype devices (TMX or TMP) not
be used in production systems, because their expected end-use failure rate
is undefined but is predicted to be greater than the failure rate of standard,
qualified production devices.
TMDS development support tools have been properly tested, and the quality
and reliability of the devices have been successfully demonstrated. TIs standard warranty applies.
2.4.2
2-26
Product Description
Part Number
Host
Operating System
C2xx
Assembler/Linker
TMDS324285002
PC
OS/2
DOS Ext
C Compiler
Assembler/Linker
TMDS324285502
PC
OS/2
DOS Ext
C Compiler
Assembler/Linker
TMDS324255508
SPARC
HP9000
N/A
Assembler/Linker
TMDS324385002
PC
OS/2
DOS Ext
Win32
C Compiler
Assembler/Linker
TMDS324385502
PC
OS/2
DOS Ext
Win32
C Compiler
Assembler/Linker
TMDS324355508
SPARC
HP9000
N/A
C3x
Selection Guide
2-27
Product Description
Part Number
Host
Operating System
C4x
Assembler/Linker
TMDS324385002
PC
OS/2
DOS Ext
Win32
C Compiler
Assembler/Linker
TMDS324385502
PC
OS/2
DOS Ext
Win32
C Compiler
Assembler/Linker
TMDS324355508
SPARC
HP9000
N/A
Assembler/Linker
TMDS324285002
PC
OS/2
DOS Ext
C Compiler
Assembler/Linker
TMDS324285502
PC
OS/2
DOS Ext
C Compiler
Assembler/Linker
TMDS324555508
SPARC
HP9000
N/A
Assembler/Linker
TMDS324L85002
PC
OS/2
DOS Ext
C Compiler
Assembler/Linker
TMDS324L85502
PC
OS/2
DOS Ext
C Compiler
Assembler/Linker
TMDS324L55509
SPARC
N/A
C Compiler
Assembler/Linker
TMDX324688507
PC
Win32
Compiler
Assembler/Linker
TMDX324655507
SPARC
C5x
C54x
C6x
2-28
Operating System
SPARC
N/A
PC
Windows NT
Device
Product Description
C8x
Part Number
Selection Guide
2-29
Product Description
Part Number
Host
Operating System
C2xx
Simulator
TMDX324X85102
PC
DOS
Win16
Simulator
TMDX324X55109
SPARC
OpenWin
XDS510 Debugger
TMDX324012XX
PC
DOS
Win16
OS/2
XDS510WS Debugger
TMDX324062XX
SPARC
OpenWin
XDS510 Board
JTAG Emulator Cable
TMDS00510
PC (ISA)
N/A
XDS510WS Box
JTAG Emulator Cable
TMDS00510WS
SPARC
OpenWin
TMDS3080002
N/A
N/A
TMDX324002XX
PC
DOS
Win16
OS/2
2-30
Product Description
Part Number
Host
Operating System
C3x
Simulator
TMDS324385102
PC
DOS
Win16
Simulator
TMDS324355109
SPARC
OpenWin
XDS510 Debugger
TMDS3240130
PC
DOS
Win16
XDS510WS Debugger
TMDS3240630
SPARC
OpenWin
XDS510 Board
MPSD Cable
TMDS00510M
PC (ISA)
N/A
XDS510WS Controller
MPSD Cable
Power Supply
SCSI Cable
TMDS00510WSM
SPARC
N/A
MPSD Cable
TMDS3080004
PC
SPARC
N/A
TMDS3240030
PC
DOS
Win16
TMDS3260030
PC(ISA)
DOS
Win16
C31 DSK
Assembler/Debugger
TMDS3200031
PC(DB25)
DOS
Selection Guide
2-31
Product Description
Part Number
Host
Operating System
C4x
Simulator
TMDS324485102
PC
DOS
Win16
Simulator
TMDS324455109
SPARC
OpenWin
XDS510 Debugger
TMDS3240140
PC
OS/2
DOS
Win16
XDS510WS Debugger
TMDS3240640
SPARC
OpenWin
XDS510 Board
JTAG Cable
TMDS00510
PC (ISA)
N/A
XDS510WS Controller
JTAG Cable
Power Supply
SCSI Cable
TMDS00510WS
SPARC
N/A
JTAG Cable
TMDS3080002
PC
SPARC
N/A
TMDX3240040
PC
OS/2
DOS
Win16
TMDX3261040
PC XDS510
SPARC
XDS510WS
N/A
2-32
Product Description
Part Number
Host
Operating System
C5x
Simulator
TMDS324585102
PC
DOS
Win16
Simulator
TMDS324555109
SPARC
OpenWin
XDS510 Debugger
TMDS3240150
PC
DOS
Win16
OS/2
XDS510WS Debugger
TMDS3240650
SPARC
OpenWin
XDS510 Board
JTAG Emulator Cable
TMDS00510
PC (ISA)
N/A
XDS510WS Box
JTAG Emulator Cable
TMDS00510WS
SPARC
OpenWin
TMDS3080002
N/A
N/A
TMDX3240050
PC
DOS
Win16
OS/2
PC (ISA)
DOS
Win16
C50 DSK
Assembler/Debugger
PC (UART)
DOS
TMDS3200051
Selection Guide
2-33
Product Description
Part Number
Host
Operating System
C54x
Simulator
TMDS324L85102
PC
DOS
Win16
Simulator
TMDS324L55109
SPARC
OpenWin
XDS510 Debugger
TMDS32401L0
PC
DOS
Win16
OS/2
XDS510WS Debugger
TMDS32406L0
SPARC
OpenWin
XDS510 Board
JTAG Emulator Cable
TMDS00510
PC (ISA)
N/A
XDS510WS Box
JTAG Emulator Cable
TMDS00510WS
SPARC
OpenWin
TMDS3080002
N/A
N/A
TMDX32400L0
PC
DOS
Win16
OS/2
TMDS3260051
PC (ISA)
DOS
Win16
C54x DSKplus
Assembler/Debugger
TMDS32000L0
PC (UART)
DOS
2-34
Product Description
Part Number
Host
Operating System
C6x
Simulator
TMDX32455107
SPARC
N/A
Simulator
TMDX324685107
PC
DOS, OS/2
Win32
XDS510 Debugger
TMDX324016007
PC
DOS, OS/2
Win32
XDS510 Emulator
Hardware
JTAG Cable
TMDS00510
PC
DOS, OS/2
Win32
TMS320C6201
Test and Evaluation
Board
TMD326106201
TMS320C62x
Test and Evaluation
Board
TMD326006201
PC
Win32
TMDS3240680
SPARC
N/A
TMDS3240180
PC
Windows NT
TMDS00510
PC (ISA)
N/A
TMDS00510WS
SPARC
N/A
TMDS3080002
TMDX3240080
PC
SPARC
C8x
Selection Guide
2-35
Chapter 3
TMS320C20x Devices
The TMS320C1x generation of digital signal processors was the first series of
DSPs developed by Texas Instruments. Its first member, the TMS320C10,
was introduced in 1982. The C2x expanded the C1x architecture (16-bit fixedpoint Harvard architecture).
Texas Instruments further enhanced the DSP market with the powerful, cost-effective TMS320C20x devices. These DSPs feature a 16-bit fixed-point, Harvard
architecture family that offers performance up to 40 MIPS and power dissipation
of as little as 1.1 mA/MIPS.
Topic
Page
3.1
3.2
3.3
3.4
3.5
3.6
3.7
TMS320C203 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-10
3.8
TMS320LC203 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
3.9
TMS320C206 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13
3-1
TMS320C20x Introduction
MIPS
40
50
20
57
35
28.5
80
25
40
The C20x generation also features the first TI DSPs with on-chip flash
memory. The F206 has 32K words of flash memory and 4.5K words of RAM,
enabling designers to eliminate costly off-chip memory.
3-2
execution
- 16-bit on-chip timer
- 16-bit barrel shifter
- 8-level hardware stack
- Built-in power-down mode
- Software wait-state generator
- 80- or 100-pin TQFP packages
- Various PLL options for reduced electromagnetic interference (EMI) and
TMS320C20x Devices
3-3
All C20x devices, except the C209, feature this serial port.
Figure 31 shows a block diagram of the enhanced synchronous serial port.
3-4
Control
logic
(receive)
(transmit)
Receive (0)
Transmit (0)
RSR
XSR
RINT
XINT
CLKR
DR
CLKX
FSR
FSX
DX
TMS320C20x Devices
3-5
Full duplex
Double buffered
8-bit data transfers
16-bit register for baud-rate generation
Baud rates up to 2.5 Mbps (at a 25-ns instruction cycle time)
All C20x devices, except the C209, feature this asynchronous serial port.
Figure 32 shows a block diagram of the asynchronous serial port.
Control
logic
ADTR (8)
Control
logic
ADTR (8)
(transmit)
(receive)
TXRXINT
Sequence
control
TXRXINT
ARSR (8)
AXSR (8)
Sequence
control
Baud rate
generator
RX
3-6
CLKOUT1
TX
16
16
RAM
Boot loader
RAM
BR DS ADDR Data
16
Boot EPROM
TMS320C20x Devices
3-7
3-8
B1
256x 16
B2
32 x 16
Program address
Address
Program data
TMS320C2xx
CPU
External
logic
interface Data
TMS320C20x Devices
3-9
TMS320C203
3.7 TMS320C203
The C203 incorporates all the features of the C20x core and adds two
high-performance serial ports for enhanced communication with peripheral
devices. There is one synchronous serial port with a 4-level-deep FIFO, which
results in less intervention from the CPU, but at a low cost. One full-duplex
asynchronous serial port, a programmable wait-state generator, and a 16-bit
timer are also included. The serial ports, timer, and wait-state generator are
mapped into I/O space. The C203 is packaged in a 100-pin TQFP.
Features of the C203 include:
-
5-V version
25-, 35-, and 50-ns instruction cycle times
544 words RAM
192K-word external address reach
2040 million instructions per second (MIPS)
Accepts source code from the TMS320C1x/C2x generations
ANSI C compiler
+2, 1, 2, and 4 PLL options
IEEE 1149.1-standard (JTAG) emulator control
Boot ROM option
Full-duplex synchronous serial port with 4-level-deep FIFO
Full-duplex asynchronous serial port (UART)
100-pin TQFP package
3-10
TMS320LC203
3.8 TMS320LC203
The LC203 is a low-power version of the TMS320C203.
Features of the TMS320C203 include:
-
3.3-V version
50-ns instruction cycle time
544 words RAM
192K word external address reach
20 MIPS
ANSI C compiler
Boot ROM option
Two full duplex-synchronous serial ports with 4-level deep FIFO
Two full duplex asynchronous serial ports (UART)
100-pin TQFP package
Data
RAM
B1
Data
RAM
B2
256 x 16
256 x 16
A(150), D(150)
PA(64K0)
IS asserted
A(150)
I/O ports
65K x 16
D(150)
CPU
Barrel
shifter (L)
(016 bits)
16bit T register
16bit x 16bit
multiply
32bit P register
ShiftL (0,1,4,6 bits)
32bit ALU
32bit accumulator
ShiftL (07 bits)
8 auxiliary registers
8level hardware stack
Repeat instruction counter
2 status registers
Software
waitstate
generator
Timer
Synchronous
serial port
Asynchronous
serial port
PLL
TMS320C20x Devices
3-11
TMS320LC203
3-12
TMS320C206
3.9 TMS320C206
The architecture of the C206 is based on that of the TMS320C2xx series and
is optimized for low-power operation.
Features of the C206 include:
-
TMS320C20x Devices
3-13
TMS320LC206
3.10 TMS320LC206
The LC206 is a low-power version of the C206.
Features of the TMS320LC206 include:
-
3.3-V version
4.5K words RAM
32K words ROM
192K-word external address reach
Accepts source code from the C1x/C2x generations
ANSI C compiler
2, 1, 2, and 4 PLL options
IEEE 1149.1-standard JTAG emulator control
Full-duplex synchronous serial ports with 4-level deep FIFOs
Full-duplex asynchronous serial ports (UART)
100-pin TQFP packaging
3-14
TMS320LC206
Data/
program
RAM
B0
256 x 16
Data
RAM
B1
Data
RAM
B2
Program
ROM
256 x 16
256 x 16
32K x 16
A(150), D(150)
PA(64K0)
IS asserted
A(150)
I/O ports
65K x 16
D(150)
CPU
Barrel
shifter (L)
(016 bits)
16bit T register
16bit x 16bit
multiply
32bit P register
ShiftL (0,1,4,6 bits)
32bit ALU
32bit accumulator
ShiftL (07 bits)
8 auxiliary registers
8level hardware stack
Repeat instruction counter
2 status registers
Software
waitstate
generator
Timer
Synchronous
serial port
Asynchronous
serial port
PLL
TMS320C20x Devices
3-15
TMS320F206
3.11 TMS320F206
The F206 is the first digital signal processor from Texas Instruments with onchip flash memory. The F206 Flash DSP has 32K words of flash integrated
into program memory. Flash memory is attractive for program memory
because it has a lower cost than SRAM and more flexibility than ROM. The
flash memory on the F206 can be programmed through the C20x emulator
for easy changes in the program during prototyping. The reprogrammability of
the flash allows quick changes to the product to adapt to new standards and
to add new features to the end equipment.
In addition to the flash, the F206 also has a total of 4.5K of on-chip RAM. This
level of memory integration allows a chip solution for many systems.
The F206 is based on the same C20x core as other members of this generation and incorporates the same serial ports as the C203. The F206 comes in
a 100-pin TQFP package and is footprint-compatible with the C203, C206,
and LC206.
Features of the F206 Flash DSP include:
-
3-16
TMS320F206
Data/
program
RAM
B0
256 x 16
Data
RAM
B1
Data
RAM
B2
Program
flash
256 x 16
256 x 16
32K x 16
A(150), D(150)
PA(64K0)
IS asserted
I/O ports
65K x 16
CPU
Barrel
shifter (L)
(016 bits)
16bit T register
16bit x 16bit
multiply
32bit P register
ShiftL (0,1,4,6 bits)
32bit ALU
32bit accumulator
ShiftL (07 bits)
8 auxiliary registers
8level hardware stack
Repeat instruction counter
2 status registers
Software
waitstate
generator
Timer
Synchronous
serial port
Asynchronous
serial port
PLL
TMS320C20x Devices
3-17
TMS320C209
3.12 TMS320C209
The C209 was the first member of the C20x generation. It takes the C20x
core and adds 4K words of ROM and an additional 4K words of RAM (total of
4.5K words). The large on-chip memory, small packaging, and low cost make
this device attractive for space-constrained applications such as small form
factor hard-disk drives.
The C209 does not include the serial ports of the C203. It has performance
ratings of 20 MIPS and 28.5 MIPS and comes in an 80-pin TQFP.
The TMS320C209 features:
-
3-18
TMS320C209
Data
RAM
B1
256
Data
RAM
B2
16
32
16
Data/
program
RAM
Program
ROM
4K
4K
16
16
A(150)
D(150)
CPU
Barrel
shifter (L)
(016 bits)
16-bit T register
16-bit
16-bit
multiply
32-bit P register
ShiftL (0, 1, 4, 6 bits)
32-bit ALU
A(150), D(150)
PA(64K0)
IS asserted
I/O ports
64K
16
Software
wait-state
generator
32-bit accumulator
ShiftL (07 bits)
Timer
8 auxiliary registers
8-level hardware stack
Repeat instruction counter
2 status registers
TMS320C20x Devices
3-19
3-20
Chapter 4
Topic
Page
4.1
4.2
4.3
4.4
TMS320C240/F240 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
4.5
TMS320C241/F241 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
4.6
TMS320C242 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11
4.7
TMS320F243 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-12
4.8
4.9
4-1
4-2
Timers
Serial communication ports
Data converters
Event managers
TMS320C24x Architecture
4-3
32-bit accumulator
Eight 16-bit auxiliary registers with a dedicated arithmetic unit for indirect
addressing of data memory
- Memory
J
- Program control:
J
User-maskable interrupts
- Instruction set
4-4
Indexed-addressing capability
- Power:
J
Source code compatible with the C25 and C2xx devices and upwardly
compatible with the C5x generations of DSPs
4-5
F240/C240
F241/C241
F243
C242
On-chip ROM/flash
memory (words)
16K flash/
16K ROM
8K flash
8K ROM
8K flash
4K ROM
On-chip dual-access
RAM (words)
544
544
544
544
Total memory-address
range (words)
64K program
64K data
64K I/O
32K global
64K program
64K data
3 general-purpose
with compares
1 watchdog
2 general purpose
1 watchdog
1 watchdog
1 watchdog
Serial communications
interface (SCI)
Timers
9 total
5 total
5 total
5 total
Capture inputs
4 total
2 quadrature encoder
pulse (QEP)
I/O functions
28
26
32
26
10 bit
10 bit
10 bit
8 total
8 total
8 total
Package
68PLCC,
64 PQFP
144 TQFP
68PLCC,
64 PQFP
4-6
132-pin PQFP
TMS320C240/F240
4.4 TMS320C240/F240
These are key features of the C240x and F240x:
- High-performance static CMOS technology
- Includes the T320C2xLP core CPU
J
J
J
- Memory
J
J
J
- Event-manager module with 12 pulse width modulation (PWM) outputs on the F240/C240,
-
8 PWMs on the F241/C241, 8 PWMs on the F243, and 8 PWMs on the C242
Dual 10-bit analog-to-digital conversion module
28 individually programmable, multiplexed I/O pins
Phase-locked loop (PLL)-based clock module
Watchdog timer module (with real-time interrupt)
Serial communication interface (SCI) module
Serial peripheral interface (SPI) module
Six external interrupts
Four power-down modes for low-power operation
Scan-based emulation
Extended temperature range options available
4-7
TMS320C240/F240
16
Internal
Bus
Control
logic
16
16
20
16
4-8
Watchdog
timer
Timer/compare 1
T1CMP
Timer/compare 2
T2CMP
Timer/compare 3
T3CMP
Event
manager:
compare
PWM
capture
quadrature encoder
Asynchronous
serial port
Bit I/O
PWM1/CMP1
PWM12/CMP9
CAP1,QEP1
CAP2,QEP2
CAP3
CAP4
TXD
RXD
IOP1
IOP5
IOP20
Synchronous
serial port
CLK, STE
SIMO, SOMI
IEEE Standard
1149.1 Scan
TMS320C240/F240
Program ROM
or flash
16K-word x 16
Data RAM
544-word x 16
Three timers
12 PWM
outputs
A(150)
Nine ompares
outputs
Program/data buses
Dead-band
logic
D(150)
Four input
captures with
two quadrature
pulse interfaces
16-bit x 16-bit
multiply
32-bit P register
Three 8-bit
I/O ports
Shift L (0,1,4,6)
32-bit ALU
Watchdog
timer
32-bit accumulator
Peripheral bus
Shift L (07)
SPI
SCI
10-bit
ADC1
10-bit
ADC2
4-9
TMS320C241/F241
4.5 TMS320C241/F241
The C241 device has the following features:
-
Data RAM
544 words
A(15-0)
Event manager
Two timers
Eight PWM
output
Five compares
outputs
Program/data buses
Deadband
logic
D(15-0)
C2xx DSP core
Three
captures with
quadrature encoder
pulse interface
16-bit T register
16-bit barrel
shifter (L)
16-bit x 16-bit
multiply
Three 8-bit
I/O ports
32-bit P register
32-bit ALU
32-bit accumulator
Shift L (07)
Eight auxiliary registers
Eight-level hardware stack
Peripheral bus
Shift L (0,1,4,6)
Watchdog
Timer
SPI
SCI
10-Bit ADC
Repeat count
Two status registers
PLL clock
CAN
4-10
TMS320C242
4.6 TMS320C242
The C242 device has the following features:
-
Program ROM
544 words
4K words
Event manager
Two timers
Eight PWM
output
A(15-0)
Five compares
outputs
Program/data buses
Deadband
logic
D(15-0)
Three
captures with
quadrature encoder
pulse interface
16-bit x 16-bit
multiply
Three 8-bit
I/O ports
32-bit P register
32-bit ALU
32-bit accumulator
Shift L (07)
Eight auxiliary registers
Peripheral bus
Shift L (0,1,4,6)
Watchdog
timer
SCI
10-bit ADC
PLL clock
4-11
TMS320F243
4.7 TMS320F243
The F243 device has the following features:
-
Flash Memory
544 words
8K words
Event manager
Two timers
Eight PWM
output
A(15-0)
Five compares
outputs
Program/data buses
Deadband
logic
D(15-0)
Three
captures with
quadrature encoder
pulse interface
16-bit x 16-bit
multiply
Three 8-bit
I/O ports
32-bit P register
32-bit ALU
32-bit accumulator
Shift L (07)
Eight auxiliary registers
Eight-level hardware stack
Peripheral bus
Shift L (0,1,4,6)
Watchdog
timer
SPI
SCI
10-bit ADC
Repeat count
Two status registers
PLL clock
CAN
4-12
4-13
B1
256x 16
B2
32 x 16
Program address
Address
Program data
TMS320C2xx
CPU
Data-read address
External
logic
interface Data
Data-read data
Data-write address
Control
Data-write data
4-14
4.9.1
clocks
- Control logic and four maskable interrupts and interrupt flags: underflow,
4-15
4.9.2
Compare Units
There are three full compare units on the C240. These compare units use
GP timer1 as the timebase and generate six outputs for compare and highprecision PWM waveforms generation using the programmable deadband circuit. The states of the six outputs are configurable independently.
4.9.2.1
Simple Compares
The C240 is equipped with three simple compares that can be used to generate
three additional independent compare or high-precision PWM waveforms. GP
timer1 or timer2 can be selected as the timebase for the three simple compares.
The states of the outputs of the three simple compares are configurable as lowactive or high-active, or can be forced low or high independently.
4.9.2.2
4.9.2.3
Compare/PWMs Characteristics
The characteristics of the compare/PWM waveforms include:
- 16-bit, 50-ns resolutions
- Programmable deadband for the PWM output pairs, from 0 to 102 ms
- Minimum deadband width of 50 ns
- On-the-fly change of the PWM carrier frequency, the PWM frequency
wobbling
- On-the-fly change of the PWM pulse widths within and after each PWM
period
- External maskable power and drive protection interrupts
- Pulse pattern generator circuit (Figure 47), for programmable generation
registers
4-16
4.9.3
Capture Unit
The capture unit provides a logging function for different events or transitions.
The values of the GP timer2 counter and/or GP timer3 counter are captured
and stored in the 2-level FIFO stacks when selected transitions are detected
on capture input pins. The capture unit of the C240 consists of four capture
circuits.
The capture unit includes the following features:
- One 16-bit capture control register
- One 16-bit capture FIFO status register
- Optional selection of GP timer2 and/or GP timer3 through two 16-bit multi-
plexers (MUXs)
- Four 16-bit by 2 FIFO stack registers
- Four possible Schmitt-triggered capture input pins
- User-specified edge-detection mode at the input pins
- Four maskable interrupts/flags
4.9.4
4-17
Memory
(ROM, RAM, Flash)
DSP
GP timer 1
GP timer compare 1
Compare unit 1
PPG
Compare unit 2
PPG
Compare unit 3
PPG
GP timer 2
MUX
GP timer compare 2
Output
logic unit
Program
deadband
Program
deadband
Program
deadband
Output logic
circuit
Output logic
circuit
Output logic
circuit
GP timer compare 2
Output
logic unit
SCMP1/SPWM1
SCMP2/SPWM2
SCMP3/SPWM3
Output
logic unit
GP timer compare 3
Simple compare 3
GP timer 3
GP timer compare 3
CMP1/PWM1
CMP2/PWM2
CMP3/PWM3
CMP4/PWM4
CMP5/PWM5
CMP6/PWM6
Output
logic unit
Simple compare 1
Simple compare 2
GP timer compare 1
MUX
4-18
Capture unit 1
QEP1
CAP1/QEP1
Capture unit 2
QEP2
CAP2/QEP2
Capture unit 3
CAP3
Capture unit 4
CAP4
Event
manager
ADC1 MUX
8 ADC1 inputs
ADC2 MUX
8 ADC2 inputs
SYSCLK
- Data-word format: one to eight data bits
- Four clocking schemes controlled by the clock polarity and clock phase bits:
J
Falling edge without phase delay: SPICLK inactive high. SPI transmits
data on the falling edge of the SPICLK and receives data on the rising
edge of the SPICLK signal.
Falling edge with phase delay: SPICLK inactive high. SPI transmits data
one-half cycle ahead of the falling edge of the SPICLK and receives data
on the falling edge of the SPICLK signal.
Rising edge without phase delay: SPICLK inactive low. SPI transmits
data on the rising edge of the SPICLK and receives data on the falling
edge of the SPICLK signal.
Rising edge with phase delay: SPICLK inactive low. SPI transmits data
one-half cycle ahead of the falling edge of the SPICLK and receives data
on the rising edge of the SPICLK signal.
TMS320C24x DSP Controllers
4-19
Ten SPI module control registers located in the control register frame
beginning at address 7040h
Figure 48. 4-Pin Serial Peripheral Interface (SPI) Module Block Diagram
Internal bus
Control registers
Input
buffer
SPISOMI/IO
Shift
register
SPISIMO/IO
Control logic
SPISTE/IO
SPI interrupt
4-20
SPICLK/IO
SCICLK: SCI bidirectional serial clock pin or general-purpose bidirectional I/O pin
4-21
1+8
TX control register
BR select register
TXD
TXSHF register
TX buffer
Baud rate
generator clock
External clock
1+8
RX control register
4-22
RX buffer
RXSHF register
RXD
4-23
bus is idle
- Provides distinction between temporary errors and permanent failures of
4-24
Message transmitted
Message received
Error condition
Global interrupt enable/disable
Self test
Bus failure diagnostic
Network monitoring
- Other features
J
J
J
J
vides the full implementation of the CAN protocol plus additional features
The software layer is executed by a RISC protocol processor (RPP), which accesses the CAN hardware layer through peripheral registers implemented in
the CAN hardware-primitive module.
The CPU accesses the CAN module services through a communication
memory. The communication memory holds all CAN messages received and
to e sent, as well as all exchanged information.
TMS320C24x DSP Controllers
4-25
INT
SEL
R/W
DATA D15D0
ADDR A7A0
B/W
RESET
HOST_RST
8bit
address
SYSCLK
Communication
data RAM
256 bytes
CPU
interface
CAN
hardware
primitive
CAN_RST
HOST_INT
11bit address
24bit program
16bit
data
RISC
protocol
processor
(RPP)
Address
and
select
NMI
FASTIN
4-26
External
connections
16bit data
9bit address
and select
Program
ROM
2k 24bit words
WKUP_HOST
Internal
data RAM
256 bytes
FASTOUT
CANERR
CANEN
CANSTB
CANWKUP
CANRX
CANTX
simultaneously
- Each ADC unit can perform single or continuous sample/hold and conver-
sion operations.
- Two 2-level-deep FIFO result registers for ADC units 1 and 2
- ADC module (both A/D converters) can start operation by software instruc-
be written to at any time. A new conversion of ADC can start either immediately or when the previous conversion process is completed according to
the control-register bits.
- At the end of each conversion, an interrupt flag is set and an interrupt is
generated if it is unmasked/enabled.
- The result of previous conversions stored in data register 1 for ADC1 and
in data register 2 for ADC2 are lost when new results are generated.
Figure 411 shows a block diagram of the C240 ADC module.
4-27
8/1
MUX
S/H
8/1
MUX
Internal
bus
10-bit
A/D
converter
(1)
10-bit
A/D
converter
(2)
S/H
Control logic
single/continuous/event ops.
interrupts
sleep mode
Data register 1
2-level deep FIFO
Data register 1
2-level deep FIFO
VREF
Int.
VREF
VREF select
internal/
external
Supply
voltage
AGND
4-28
VCCA
Program clock
prescaler
Control
register
Three WD control registers located in the control register frame beginning at address 7020h
Two RTI control registers located in the control register frame beginning at address 7020h.
4-29
CLR
RTI prescale
select bits
RTICNTR.70
Real-time
interrupt
counter reg.
8-Bit
Counter
CLR
16-KHz
WDCLK
System
reset
WD
prescale
select
bits
/128
/64
/32
/16
/8
/4
/2
7-bit
Freerunning
counter
CLR
WDCR.20
RTICR.20
111
/16384
/2048 110
/512 101
/256 100
RTI ENA
RTICR.6
CLR
011
010
001
000
CLR
000
001
010
011
100
101
110
111
Interrupt
request priority
level 1
INT acknowledge
Clear RTI flag
RTICR.7
Read RTI flag
RTICR.7
Clear RTI flag
RTICR.7
WDCNTR.70
8-bit watchdog
counter
CLR
Reset flag
WDCR.7
One-cycle
delay
WDKEY.70
Watchdog reset
key register
Bad key
WDCR.53
Good key
System reset
Writing to bits WDCR.53 with anything but the correct pattern (101) generates a system reset.
4-30
System
reset
request
lowing conditions:
J
Reset
Low-power modes
Not simultaneously writing the KEY1, KEY0, and EXE bits to their
proper state to initiate the write or erase sequence
4-31
4-32
Chapter 5
TMS320C3x Devices
The TMS320C3x generation is the first of TIs floating-point digital signal processors. The C3x devices provide an easy-to-use, high-performance architecture,
which allows users to develop breakthrough products quickly.
C3x devices can be used in a wide variety of areas including automotive applications, digital audio, industrial automation and control, data communications, and
office equipment such as multifunction peripherals, copiers, and laser printers.
Topic
Page
5.1
5.2
5.3
5.4
5.5
5.6
5.7
TMS320C30 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-13
5.8
TMS320C31 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-15
5.9
TMS320C32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-17
5-1
TMS320C3x Introduction
5-2
60-MHz clock
60 MFLOPS
30 MIPS
50-MHz clock
50 MFLOPS
25 MIPS
40-MHz clock
40 MFLOPS
20 MIPS
33-MHz clock
33.3 MFLOPS
16.7 MIPS
TMS320C3x Devices
5-3
Two address generators with eight auxiliary registers and two auxiliary
register arithmetic units
- Peripherals
Memory-mapped serial ports to support 8-, 16-, 24-, or 32-bit fullduplex transfers
- Memory
- Memory interfaces
5-4
Low power (3.3 VC31) with two power-down modes: 2-MHz operation
and idle
CMOS technology
Packages
Temperature rages:
Commercial 0/85C
Extended40/125C
TMS320C3x Devices
5-5
TMS320C3x CPU
5-6
TMS320C3x CPU
32
40
40
32-bit barrel
shifter
Multiplier
ALU
40
40
40
40
Extended-precision
registers (R0R7)
40
32
40
ARAU0
24
24
32
32
BK
ARAU1
24
Auxiliary registers
(AR0AR7)
24
32
32
32
32
TMS320C3x Devices
5-7
TMS320C3x Memory
To realize the full performance of the C3x CPU, it is important to have a bus and
memory architecture that can keep pace. The C3x fetches up to four words per
cycle. These consist of a program opcode, two CPU data operands, and a DMA
data transfer. The internal buses can transfer all four words in parallel, relying
on seven memory sources for data.
The C3x uses seven internal buses to access on-chip resources:
Program address/data: The CPU uses these buses to maintain instruction
fetches every cycle.
Data address/data: In any cycle, the CPU can fetch two data operands,
because it has two data address buses and one data bus that can be
accessed twice in a single cycle.
DMA address/data: The DMA uses these buses to perform DMA transfers
in parallel with CPU operation.
With the internal buses in place to feed the DMA and CPU, the C3x devices
can use both internal and external data and program memory. The C30 and
C31 have two 1K 32-bit-word blocks of dual-access RAM, while the C32 has
two 256K 32-bit words of on-chip RAM. This memory provides up to four words
of program or data in a single cycle. All C3x devices feature an on-chip cache
to boost system performance. The primary bus for each device has 16M words
of address reach. The C30 features an expansion bus that has an 8K-word
address reach, which is often used to interface to peripherals.
The C32 offers the ability to access 8-, 16-, and 32-bit data stored in 8-, 16-, and
32-bit wide external memory, giving the flexibility of nine memory interface options.
This feature can significantly affect total system cost savings. Additionally, the C32
memory interface allows for storage of the 32-bit instruction word in either 16- or
32-bit-wide external memory.
Figure 52 shows a block diagram of the C3x memory.
5-8
TMS320C3x Memory
Cache
64 32
32
24
24
RAM
block 1
1K 32
512 32
(C32)
32
24
4K 32
(TMS320C30 only)
ROM block
boot ROM
(C31/C32)
24
32
32
P data bus
P address bus
RDY
HOLD
HOLDA
STRB
R/W
D(310)
A(23-0)
XRDY
MSTRB (C30 only)
IOSTRB
XR/W
XD31-XD0
XA12-XA0
D data bus
D address bus
D address 2 bus
Program counter/
instruction register
32
24
CPU
24
32
24
DMA
controller
Peripheral
bus
TMS320C3x Devices
5-9
5-10
TMS320C3x Devices
5-11
*AR0++ , *AR1++ , R0
MPY
*AR0++ , *AR1++ , R2
RPTS
MPYF
| |
ADDF
ADDF
5-12
n3
*AR0++ , *AR1++ , R0
R0 , R2 , R2
R0 , R2
TMS320C30
5.7 TMS320C30
The C30 features a second external data bus, two timers, and two serial ports.
The expansion bus has a 13-bit address bus and a 32-bit data bus. Each serial
port has independent double-buffered transmit and receive sections with a
maximum data rate of 15 Mbps with a 60-MHz input clock.
Features of the TMS320C30 include:
40-, 50-, and 60-ns instruction cycle times
16M-word external-address reach
Single-cycle multiply and accumulate (MAC) operation
Two serial ports
Two timers
4K-words on-chip ROM
Optimizing ANSI C compiler
On-chip DMA
Packaging: 181-pin PGA
Figure 54 shows a block diagram of the C30.
TMS320C3x Devices
5-13
TMS320C30
RAM
block 0
1K 32
RAM
block 1
1K 32
ROM
4K 32
XRDY
MSTRB
A(23-0)
IOSTRB
XR/W
D(31-0)
XA(120)
Floatingpoint
and
integer
multiply
CPU
Floatingpoint
and
integer
ALU
8 extendedprecision registers
DMA
XD(310)
Source
Destination
XFR count
Control
Timer 0
Timer 1
Serial port 0
8 auxiliary registers
2 index registers
Address
Address
generator 0 generator 1
14 control registers
5-14
Serial port 1
TMS320C31
5.8 TMS320C31
The C31 is the second member of the C3x generation and is object-code compatible with the C30. The C31 has the same fast CPU as all other members
of the C3x generation, but offers a different mix of peripherals to achieve a
unique price/performance point.
The C31 offers a lower cost than the C30 by removing the expansion bus and
one of the serial ports and replacing the 4K 32-bit words of internal ROM with
a boot ROM. A low-power version of the C31 is available at 40 MHz at 3.3 V,
which significantly reduces power consumption. The C31 comes in a 132-pin
PQFP.
The TMS320C31 features:
33-, 40- and 50-ns MHz clock rates
16M word external address reach
Single-cycle multiply and accumulate (MAC) operation
Optimizing ANSI C compiler
On-chip DMA
Boot ROM
3.3-V version up to 40 MHz
Two low-power modes
Two 32-bit timers
Serial port
64-word cache
132-pin PQFP
Figure 55 shows a block diagram of the C31.
TMS320C3x Devices
5-15
TMS320C31
RAM
RAM
cache
block 0
block 1
64 32
1K 32
1K 32
Boot
ROM
A(230)
D(310)
CPU
DMA
Floating-
Floating-
Source
point
point
Destination
and
and
XFR count
integer
integer
Control
multiplier
ALU
8 extendedprecision registers
8 auxiliary registers
2 index registers
Address
Address
generator 0 generator 1
12 control registers
5-16
Timer 0
Timer 1
Serial port 0
TMS320C32
5.9 TMS320C32
The C32 is the lowest cost floating-point device TI offers. The C32 is objectcode compatible with the C30 and C31. The C32 has a flexible memory interface that supports 8-, 16-, or 32-bit data types in 8-, 16-, or 32-bit memory. Additionally, it supports program storage in 16- or 32-bit memory. This can lead to
considerable savings in system cost.
There are also two low-power modes on the C32. One reduces the clock rate
of the device but continues execution, while the other suspends instruction
execution and puts the device on hold. These are valuable features in powercritical applications.
The C32 features the same boot ROM as the C31, has two 256-word, 32-bit
blocks of on-chip RAM, and comes in a 144-pin PQFP.
Features of the TMS320C32 include:
33-, 40-, and 50-ns instruction cycle times
Object-code compatibility with the C30/C31
16M-word external-address reach
Flexible memory interface (8, 16, or 32 bits)
2-channel DMA with configurable priorities
Low-power modes
64-word program cache
Two 32-bit timers
144-pin PQFP
Serial port
Figure 56 shows the C32 boot ROM block diagram.
TMS320C3x Devices
5-17
RAM
RAM
cache
block 0
block 1
64 32
256 32
256 32
Boot
ROM
Memory interface
8-, 16-, and 32-bit
data accesses
16- and 32-bit
program access
Controller
CPU
DMA
Floating-
Floating-
point
point
and
and
DMA channel 0
integer
integer
DMA channel 1
multiplier
ALU
8 extendedprecision registers
Coprocessor
Timer 0
Timer 1
Serial port 0
8 auxiliary registers
2 index registers
Address
generator 0
Address
generator 1
12 control registers
5-18
Chapter 6
TMS320C4x Devices
The TMS320C4x devices are 32-bit floating-point DSPs optimized for parallel
processing. The C4x family combines a high-performance CPU and DMA
controller with up to six communication ports to meet the needs of multiprocessor and I/O-intensive applications.
Key applications of the C4x family include 3-dimensional graphics, image processing, networking, and telecommunications base stations.
Topic
Page
6.1
6.2
6.3
6.4
6.5
6.6
6.7
TMS320C40 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11
6.8
TMS320C44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-13
6.9
6-1
TMS320C4x
TMS320C4x Introduction
Introduction/TMS320C4x Key Features
I /O capability
J
J
J
J
and a bootloader
- Two external buses providing an address reach of up to 4G words
- Two memory-mapped 32-bit timers
- 6- and 12-channel DMA
- Up to six communication ports for multiprocessor communication
- Idle mode for reduced power consumption
- Optimizing ANSI C compiler
6-2
TMS320C4x CPU
sustained performance
J
J
J
J
Floating-point/integer multiply
Floating-point/integer addition
Two data accesses
Zero-overhead branch and loop counter update
TMS320C4x Devices
6-3
TMS320C4x CPU
40
40
40
32-bit barrel
shifter
Multiplier
ALU
40
40
40
40
Extended-precision
registers (R0-R11)
40
32
40
ARAU0
6-4
BK
ARAU1
32
32
32
32
32
Auxiliary registers
(AR0AR7)
32
32
32
32
32
TMS320C4x Devices
6-5
32
32
D(310)
RAM
block 0
1K 32
32
32
RAM
block 1
1K 32
32
32
Boot
ROM
32
32
32
MUX
MUX
STRBx
R/Wx
PAGEx
RDYx
STAT(30)
P data bus
LSTRBx
P address bus
LR/Wx
D data bus
LPAGEx
D address 1 bus
LRDYx
LSTAT(30)
D address 2 bus
LLOCK
LOCK
CEx
DE
LD(310)
LA(300)*
A(300)*
LCEx
32
32
32
32
32
LDE
32
LAE
AE
Peripheral bus
MUX
Program counter/
instruction register
* 24-bit address bus in TMS320C44
6-6
CPU
DMA
controller
TMS320C4x Devices
6-7
32
Input FIFO
8 32 bit
CREQ
CACK
CSTRB
32
Peripheral
address
bus
Output FIFO
8 32 bit
Peripheral
data
bus
Arbitration
and control
Communication port
control register
Single
communication port
6-8
CRDY
CD(7-0)
Performance of 90 MOPS
TMS320C4x Devices
6-9
DMA channel 1
DMA channel 0
DMA channel control
Source Address
address
address index
Source Address
Index
Transfer Count
count
Transfer
Destination Address
address
Destination
Destination address
index
Link pointer
(for autoinitialization)
6-10
TMS320C40
6.7 TMS320C40
The C40 is the original member of the C4x family. It features a CPU that can
deliver up to 30 MIPS and 60 MFLOPS with a maximum I/O bandwidth of
384 Mbytes/s. The C40 has 2K words of on-chip RAM, 128 words of program
cache, and a bootloader. Two external buses provide an address reach of 4G
of unified memory space. The C40 is available in a 325-pin PGA.
Features of the C40 include:
33-and 50-ns instruction cycle times
4G-word external address reach
Optimizing ANSI C compiler
IEEE floating-point conversion for ease of use
6- or 12-channel on-chip DMA
Six communication ports
Accepts source code from C3x
Figure 65 shows a block diagram of the C40.
TMS320C4x Devices
6-11
TMS320C40
Program
cache
128 words
RAM
block 1
1K words
Boot
loader
Analysis
module
Timer 0
Timer 1
A(300)
LA(300)
Local
bus
Global
Bus
LD(310)
D(310)
CPU
Floatingpoint
and
integer
multiply
Floatingpoint
and
integer
ALU
DMA
Coprocessor
Communication
port 1
Channel 1
Communication
port 2
Channel 2
Address
Address
generator 0 generator 1
Communication
port 0
Channel 0
12 extendedprecision registers
Channel 3
Barrel shifter
6-12
On-chip parallel
debug support
8 auxiliary
registers
Channel 4
14 control
registers
Channel 5
Communication
port 3
Communication
port 4
Communication
port 5
TMS320C44
6.8 TMS320C44
The C44 is a lower-cost version of the C40, used for parallel-processing applications that are more price-sensitive. The C44 features four communication
ports and has an external address reach of 32M words over two external
buses. To further reduce cost, the C44 comes in a 304-pin PQFP. The
TMS320C44 can deliver up to 30-MIPS/60-MFLOPS performance with a maximum I/O bandwidth of 336 Mbytes/s. The C44 is source-code compatible with
the C40.
Features of the C44 include:
33- and 40-ns instruction cycle times
Idle mode for reduced power consumption
Optimizing ANSI C compiler
IEEE floating-point conversion for ease of use
6- or 12-channel on-chip DMA
304-pin PQFP/388 BGA
32M word external address reach
Four communication ports
Figure 66 shows a block diagram of the C44.
TMS320C4x Devices
6-13
RAM
block 0
1K words
RAM
block 1
1K words
Boot
loader
Analysis
module
Timer 0
Timer 1
A(230)
On-chip parallel
debug support
LA(230)
Local
bus
Global
bus
D(310)
LD(310)
CPU
Floating-point Floating-point
and integer
and integer
multiply
ALU
12 extendedprecision registers
Address
generator 0
Address
generator 1
DMA
coprocessor
Channel 0
Communication
port 1
Channel 1
Communication
port 2
Channel 2
Channel 3
Barrel shifter
8 auxiliary registers
14 control registers
Communication
port 4
Channel 4
Channel 5
Communication
port 5
6-14
Chapter 7
TMS320C5x Devices
The TMS320C5x generation is TIs most widely used fixed-point DSP. The
C5x devices offer performance of 20-50 MIPS with power consumption
reduced to 2.35 mA/MIPS for typical applications. The 3-V versions maintain
40-MIPS performance and reduce power consumption to 1.15 mA/MIPS.
Topic
Page
7.1
7.2
7.3
7.4
7.5
7.6
7.7
7.8
7.9
7-1
TMS320C5x Introduction
7-2
Power-down modes
- Peripherals
7-3
Interval timer with period and control registers for software stops,
starts, and resets
IEEE 1149.1-standard (JTAG) scan-path test bus for system test and
emulation
- Memory
- Memory interfaces
7-4
TMS320C5x Devices
7-5
1000h/8800h
DSP
Address
HCNTL1
HCNTL0
HBIL
HR/W
HAS
HCS
HDS1
HDS2
HRDY
HINT
7-6
17FFh/8FFFh
07FFh
HPI memory block
DSP
address
Data
16
16
Data
16
Address
ABU
AXR
ARR
BKX
BKR
Control
logic
XRDY RRDY
CLKX
FSX
DX
DR
FSR
CLKR
DXR
XBUF RBUF
Serial Port
XINT
XSR
RSR
SPC
SPCE
Control
logic
RINT
DRR
TMS320C5x Devices
7-7
7-8
16
16
16
MUX
16
MUX
T register 0 (16)
32
16
Right/left
shifter
(0-16)
P register (32)
16
32
Left shifter (0, 1, 4, 6) bits
32
32
32
MUX
32
32
16
32
Left shifter (07) Bits
TMS320C5x Devices
7-9
PLU Instructions
Mnemonic
APL #
CPL #
OPL #
XPL #
SPLK #
7-10
Description
AND DBMR/constant with data memory
Compare DBMR/constant with data memory
OR DBMR/constant with data memory
XOR DBMR/constant with data memory
Store Long-immediate to data memory
TMS320C5x Interrupts
RINT
XINT
RESET
INT1
Interrupt mask and
flag registers
INT2
INT3
IFR(15-0)
INT4
IMR(15-0)
TRAP
Accumulator
NMI
Accumulator buffer
Prog
Data
P register
ST0
ADDR
DATA
ST1
T register 0
INT4- INT1
CPU
Shadow
registers
T register 1
T register 2
IACK
Index register
Control
Auxiliary compare
PMST
TMS320C5x Devices
7-11
Start
CBSR1
0331
3829
03F7
93CD
0065
FF08
0072
34A9
End
CBER1
Start
CBSR2
End
CBER2
CBCR
Circular buffer control register
7-12
Start
PASR(16)
00A6
LDPK 1
LAC temp, 1
MACD temp2, mlt
Repeat
BRCR(16)
PAER(16)
CMPL
0F3B
End
RPT:
SACL result
TMS320C5x Devices
7-13
7-14
Data
RAM
B1
Data
RAM
B2
Data/
program
RAM
Program
ROM
9K 16
2K 16
A(15-0)
A(150), D(150)
PA(64K0)
IS asserted
D(15-0)
I/O ports
64K x 16
512 16 32 16
CPU
16-bit TREG1,
TREG2
16-bit barrel
shifter (R or L)
Software
wait-state
generator
16-bit T register 0
16-bit 16-bit
multiply
32-bit P register
Timer
Serial port
synchronous
Serial port
sync/TDM
Multiply-by1 (PLL)
PLU
bit set, clear
test, toggle
3 status registers
Block repeat/circular buffer
11 shadow registers
TMS320C5x Devices
7-15
7-16
Data
RAM
B1
Data
RAM
B2
Data/
program
RAM
Program
ROM
512 x 16
32 x 16
1K x 16
8K x 16
A(150)
A(150), D(150)
PA(64K0)
IS asserted
I/O ports
64K x 16
D(150)
CPU
16-bit
TREG1, TREG2
16-bit barrel
shifter (R or L)
Software
wait-state
generator
16-bit T register 0
16-Bit x 16-bit
multiply
Timer
32-bit P register
Serial port
sync
Serial port
sync/TDM
Multiply-byone (PLL)
PLU
bit set, clear
test, toggle
11 shadow registers
TMS320C5x Devices
7-17
Data
RAM
B1
Data
RAM
B2
Program
ROM
512 x 16
32 x 16
4K x 16
A(150)
A(150), D(150)
PA(64K0)
IS asserted
I/O ports
64K x 16
D(150)
CPU
16-bit
T register 1,
T register 2
16-Bit barrel
shifter (R or L)
16-bit T register 0
Software
wait-state
generator
16-bit x 16-bit
multiply
Timer
32-bit P register
Serial port
sync
Multiply by
2( PLL)
7-18
PLU
bit set, clear
test, toggle
Data
RAM
B1
Data
RAM
B2
Data/
program
RAM
Program
ROM
512 x 16
32 x 16
3K x 16
16K x 16
A(150)
A(150), D(150)
PA(64K-0)
IS asserted
I/O ports
64K x 16
D(150)
CPU
16-bit
T register 1,
T register 2
16-Bit barrel
shifter (R or L)
16-bit T register 0
Software
wait-state
generator
16-bit x 16-bit
multiply
Timer
32-bit P register
Serial port
sync/TDM
Multiply-by1 (PLL)
8 auxiliary registers
8-level hardware stack
PLU
3 status registers
TMS320C5x Devices
7-19
Data
RAM
B1
Data
RAM
B2
Data/
program
RAM
Program
ROM
512 x 16
32 x 16
3K x 16
16K x 16
A(150)
I/O ports
64K x 16
D(150)
Software
wait-state
generator
CPU
16-bit
T register 1,
T register 2
16-bit barrel
shifter (R or L)
16-bit T register 0
Timer
16-bit x 16-bit
multiply
32-bit P register
ShiftL (0, 1, 4, 6 bits)
32-bit ALU
32-bit accumulator and buffer
ShiftL (07 bits)
8 auxiliary registers
8-level hardware stack
3 status registers
Block repeat/circular buffer
11 shadow registers
7-20
A(150), D(150)
PA(64K0)
IS asserted
Synchronous
serial port
Synchronous
serial port
Multiply-by1 (PLL)
PLU
bit set, clear
test, toggle
TMS320LC56
7.15 TMS320LC56
The LC56 provides greater integration of on-chip ROM than the C53. With 32K
16-bit words of on-chip ROM and 7K 16-bit words of on-chip RAM, the LC56
can accommodate large program and data spaces on-chip, thereby minimizing
off-chip accesses. The communications ports comprise a full-duplex synchronous serial port and a very fast BSP with a dedicated bus. The BSP is capable
of 40 Mbps at a 25-ns instruction cycle time. The LC56 is optimized for highperformance, low-power applications; as a result, it operates at 3.3 V only.
The LC56 offers 25- and 35-ns instruction cycle times and accepts source code
from the C1x, C2x, and C2xx generations. Other features of the LC56 include
a 192K-word external address reach, an ANSI C compiler, and an IEEE
1149.1-standard (JTAG) emulator control, a boot ROM option, and programmable PLL. The LC56 comes in a 100-pin TQFP.
Figure 713 shows a block diagram of the LC56.
Data
RAM
B1
Data
RAM
B2
Data/
program
RAM
Program
ROM
512 x 16
32 x 16
6K x 16
32K x 16
A(150)
A(150), D(150)
PA(64K0)
IS asserted
I/O ports
64K x 16
D(150)
Software
wait-state
generator
CPU
16-bit
T register 1,
T register 2
16-bit barrel
shifter (R or L)
16-bit T register 0
Timer
16-bit x 16-bit
multiply
32-bit P register
ShiftL (0, 1, 4, 6 bits)
32-bit ALU
32 bit accumulator and buffer
ShiftL (0-7 bits)
Serial port
sync
Serial port
sync/BSP
Prog PLL
1,2,3,4,5,9
8 auxiliary registers
8-level hardware stack
3 status registers
Block repeat/circular buffer
PLU
bit set, clear
test, toggle
11 shadow registers
TMS320C5x Devices
7-21
TMS320LC57
7.16 TMS320LC57
The LC57 incorporates the same amount of on-chip memory as the LC56 and
offers a high-throughput buffered serial port. In addition, the LC57 provides
an 8-bit wide host port interface (HPI), which can be used to communicate with
other LC57 devices or embedded microprocessors. The LC57, like the LC56,
is capable of 25-ns instruction cycle time at 3.3 V.
The LC57 offers 25- and 35-ns instruction cycle times and accepts source
code from the C1x, C2x, and C2xx generations. Other features of the LC57
include a boot load through the HPI or a standard serial port, a 192K-word
external address reach, an ANSI C compiler, and an IEEE 1149.1-standard
(JTAG) emulator control. The LC57 also offers a boot ROM option, a full-duplex
synchronous serial port, programmable PLL, a BSP with a dedicated bus, and
an HPI with a dedicated bus. The LC57 is packaged in a 128-pin TQFP.
Figure 714 shows a block diagram of the LC57.
Data
RAM
B1
Data
RAM
B2
Program
ROM
Data/
program
RAM
512 x 16
32 x 16
32K x 16
6K x 16
A(150)
Host port
interface
D(150)
CPU
16-bit
T register 1,
T register 2
16-bit barrel
shifter (R or L)
Serial port
sync/BSP
16-bit T register 0
I/O ports
64K x 16
16-bit x 16-bit
multiply
Software
wait-state
generator
32-bit P register
ShiftL (0, 1, 4, 6 bits)
32-bit ALU
32-bit accumulator and buffer
ShiftL (07 bits)
8 auxiliary registers
8-level hardware stack
Timer
Serial port
sync
Prog PLL
1,2,3,4,5,9
3 status registers
Block repeat/circular buffer
11 shadow registers
7-22
PLU
bit set, clear
test, toggle
TMS320BC57S
7.17 TMS320BC57S
The BC57S takes advantage of the same peripherals that are on the LC57
to make the BC57S a cost-effective embedded data I/O engine. In order to
provide a broad-based appeal, the BC57S differs from the LC57 in four ways:
The 32K 16-bit words of ROM space has been replaced with a boot ROM.
The BC57S can operate at 5 V.
The 144-pin package of the BC57S has a wider lead pitch than the package
of the LC57.
The BC57S is lower in cost.
The BC57S offers 25 and 35-ns instruction cycle times at 5 V; accepts source
code from the C1x, C2x, and C2xx generations; and has 7K 16-bit words of
RAM. Other features include a 192K-word external address reach, an ANSI
C compiler, and an IEEE 1149.1-standard (JTAG) emulator control. The communication ports include a full-duplex synchronous serial port, an HPI with a
dedicated bus, and a BSP with a dedicated bus. The LC57S is packaged in a
144-pin TQFP.
Figure 715 shows a block diagram of the BC57S.
TMS320C5x Devices
7-23
Data
RAM
B1
Data
RAM
B2
Program
ROM
Data/
program
RAM
512 x 16
32 x 16
2K x 16
6K x 16
A(150)
Host port
Interface
D(150)
Serial port
sync/BSP
CPU
16-bit
T register 1,
T register 2
16-bit barrel
shifter (R or L)
16-bit T register 0
I/O ports
64K x 16
16-bit x 16-bit
multiply
Software
wait-state
generator
32-bit P register
ShiftL (0, 1, 4, 6 bits)
32-bit ALU
32-bit accumulator and buffer
ShiftL (07 bits)
8 auxiliary registers
8-level hardware stack
Timer
Serial port
sync
Prog PLL
1,2,3,4,5,9
3 status registers
Block repeat/circular buffer
11 Shadow registers
PLU
bit set, clear
test, toggle
7-24
Chapter 8
TMS320C54x Devices
The TMS320C54x devices are fixed-point digital signal processors (DSPs) in
the TMS320 family. The 54x meets the specific needs of real-time embedded
applications, such as telecommunications. The 54x central processing unit
(CPU), with its modified Harvard architecture, features minimized power consumption and a high degree of parallelism. Also, the versatile addressing
modes and instruction set improve the overall system performance.
The 54x devices offer these advantages:
- Enhanced Harvard architecture built around one program and three data
power consumption
- Low power consumption and increased radiation hardness because of
Topic
Page
8.1
8.2
8.3
8.4
8.5
8.6
TMS320LC548 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
8.7
8.8
8-1
TMS320C54x Introduction
accumulators
- 17-bit by 17-bit parallel multiplier coupled to a 40-bit dedicated adder for
Viterbi operator
- Exponent encoder to compute the exponent of a 40-bit accumulator value
in a single cycle
- Two address generators, including eight auxiliary registers and two auxil-
TMS320C54x Devices
8-3
TMS320C541, TMS320LC541
8K-word
program/
data
ROM
5K-word
program/
data
RAM
A(15 0)
Standard
serial port 0
D(15 0)
MAC
ALU
17 17 MPY
40-bit ALU
40-bit adder
CMPS operator
(Viterbi accelerator)
Round, saturate
EXP encoder
Shifter
Accumulators
40-bit barrel
( 16, 31)
40-bit ACC A
40-bit ACC B
Addressing Unit
8 auxiliary registers
2 addressing units
Note: The LC541 is available with one of two different PLL options.
You choose one of the options listed.
8-4
Standard
serial port 1
Timer
Software
wait-state
generator
PLL clock
generator
opt. 1: 1, 1.5, 2, 3
opt. 2: 1, 4, 4.5, 5
2K-word
program
ROM
A(15 0)
Autobuffered
serial port
D(15 0)
MAC
ALU
17 x 17 MPY
40-bit ALU
40-bit adder
CMPS operator
(Viterbi accelerator)
Round, saturate
EXP encoder
Shifter
Accumulators
40-bit barrel
(16, 31)
40-bit ACC A
40-bit ACC B
Addressing Unit
8 auxiliary registers
TDM
serial port
Timer
Software
wait-state
generator
PLL clock
generator
opt. 1: x 1, 1.5, 2, 3
opt. 2: x 1, 4, 4.5, 5
Host port interface
(LC542 only)
2 addressing units
Note: The LC542 and LC543 are available with one of two different PLL options.
You choose one of the options listed.
TMS320C54x Devices
8-5
16K-word
program/
data
ROM
6K-word
program/
data
RAM
A(15 0)
Autobuffered
serial port
D(15 0)
MAC
ALU
17 x 17 MPY
40-bit ALU
40-bit adder
CMPS operator
(Viterbi accelerator)
Round, saturate
EXP encoder
Shifter
Accumulators
40-bit barrel
(16, 31)
40-bit ACC A
40-bit ACC B
Addressing Unit
8 auxiliary registers
Standard
serial port
Timer
Software
wait-state
generator
PLL clock
generator
Opt. 1: x 1, 1.5, 2, 3
Opt. 2: x 1, 4, 4.5, 5
Host port interface
(LC545 only)
2 addressing units
Note: The LC545 and LC546 are available with one of two different PLL options.
You choose one of the options listed.
8-6
TMS320LC548
8.6 TMS320LC548
The TMS320LC548 combines high performance with low power consumption,
making it well suited for wireless telecommunications and other mobile systems that need to perform complex functions while also conserving battery
power. The LC548 includes two high-speed BSPs, one TDM serial port, a HPI,
and a 16-bit on chip timer. The LC548 can operate at 15 ns (66 MIPS), 12.5
ns (80 MIPS), or 10 ns (100 MIPS) with a supply voltage of 3.3 V. These devices offer 32K 16-bit words of RAM and 2K 16-bit words of boot ROM on-chip,
as well as an extended addressing mode for 8M by 16-bit maximum addressable external program space.
These devices also feature an integrated Viterbi accelerator; powerful singlecycle instructions (dual-operand, parallel, and conditional instructions); low
active-mode power dissipation (less than 35 mW to run VSELP); low-power
standby modes; and JTAG with boundary scan.
Figure 84 shows a block diagram of the LC548/VC548.
8K-word
program/
data
RAM
24K-word
program/
data
RAM
A(23 0)
Autobuffered
serial port 0
D(15 0)
MAC
ALU
17 x 17 MPY
40-bit ALU
40-bit adder
CMPS operator
(Viterbi accelerator)
Round, saturate
Autobuffered
serial port 1
TDM
serial port
Timer
EXP encoder
Shifter
Accumulators
40-bit barrel
(16, 31)
40-bit ACC A
40-bit ACC B
Addressing Unit
8 auxiliary registers
2 addressing units
Software
wait-state
generator
Programmable PLL
clock generator
Host port interface
TMS320C54x Devices
8-7
cycles
- 2.5- and 3.3-V operation
- 32K 16-bit words of RAM and 16K 16-bit words of boot ROM on-chip
- Extended addressing mode for 8M x 16bit maximum addressable exter-
conditional instructions)
- Low active-mode power dissipation (less than 35 mW to run VSELP
- Lowpower standby mode
- JTAG with boundary scan
- 16-bit on-chip timer
8-8
8K-word
program/
data
RAM
24K-word
program/
data
RAM
A(23 0)
Autobuffered
serial port 0
D(15 0)
MAC
ALU
17 x 17 MPY
40-bit ALU
40-bit adder
CMPS operator
(Viterbi accelerator)
Round, saturate
Autobuffered
serial port 1
TDM
serial port
Timer
EXP encoder
Shifter
Accumulators
40-bit barrel
(16, 31)
40-bit ACC A
40-bit ACC B
Addressing Unit
8 auxiliary registers
2 addressing units
Software
wait-state
generator
Programmable PLL
clock generator
Host port interface
TMS320C54x Devices
8-9
8-10
Chapter 9
TMS320C6x Devices
The TMS320C6x devices are the first devices to feature VelociTIt, an advanced very long instruction word (VLIW) architecture developed by Texas Instruments, which allows performance of up to 1600 million instructions per
second (MIPS). The first device in the series is the TMS320C6201, a fixedpoint digital signal processor (DSP). TI announced the TMS320C6701, a floating-point version of the C6201, performing 1 GFLOPS (one billion floatingpoint operations per second), in April 1998.
Topic
Page
9.1
9.2
9.3
9.4
9.5
9.6
9.7
9-1
TMS320C6x Introduction
The C6x devices also can be used for improved performance on existing applications, such as:
- Wireless local-loop base stations
- Beam-forming base stations
- Pooled modems and remote access servers
- Virtual reality 3-D graphics
- Speech recognition
- Atmospheric modeling
- Finite element analysis and imaging (for example, fingerprint recognition,
9-2
Load/store architecture
Instruction packing for reduced code size
100% conditional instructions for faster execution
Intuitive, reduced instruction set computing (RISC)-like instruction set
- CPU
J
32 32-bit registers
Dual-endian support
Saturation
Normalization
- Memory/peripherals
J
Two timers
TMS320C6x Devices
9-3
Figure 91 shows the CPU core and peripherals for a TMS320C62x device.
Peripheral
bus
controller
Data memory
controller
DMA
controller
Host port
PLL
EMIF
Power
down
Data memory
CPU core
Program fetch
Instruction dispatch
Instruction decode
Data path Data path
1
2
9-4
with 32-bit results and six arithmetic logic units [ALUs] with 32/40-bit
results)
J 32 32-bit registers
J
1336 million instructions per second (MIPS)/ 1 bilion floating-point operations per second (1 GFLOPS)
J 5-ns cycle time
J
Dual-endian support
Saturation
Normalization
Two timers
9-5
9.3.1
Addressing Modes
The addressing mode options on the C62x and C67x are either linear or circular, as specified by the addressing-mode register (AMR).
For more information on addressing modes, see the TMS320C62x/
TMS320C67x CPU and Instruction Set Reference Guide.
9.3.2
Interrupts
The CPU has 14 interrupts. These are the reset interrupt, the nonmaskable
interrupt (NMI), and interrupts 415. These interrupts correspond to the
RESET, NMI, and INT4INT15 signals on the CPU boundary. In some C62x
and C67x devices, these signals may be tied directly to pins on the device,
connected to on-chip peripherals, or may be disabled permanently by being
tied inactive on chip. Generally, RESET and NMI are connected directly to pins
on the device.
For more information on interrupts see the TMS320C62x/TMS320C67x Instruction Set Reference Guide.
9-6
The CPU has two data paths where processing occurs. Each data path has
four functional units and a register file containing 16 32-bit registers. The functional units execute logic, shift, multiply, and data address operations. All instructions operate on the registers. The two sets of data-addressing units are
exclusively responsible for all data transfers between the register files and the
memory.
TMS320C6x Devices
9-7
9.5.1
9.5.2
Program-memory mode
Cache-enable mode
Cache-freeze mode
Cache-bypass mode
The DMA can write data into an addressed space of program memory. The
DMA cannot read from the internal program memory in program memory
mode.
For details on cache modes, see the TMS320C6201/C6701 Peripherals Reference Guide.
9-8
TMS320C6201/C6701 Peripherals
9.6.1
9.6.2
9-9
TMS320C6201/C6701 Peripherals
A DMA operation consists of a 32-bit word transfer to or from any of the three
C6201/C6701 modules:
- Internal data memory
- Internal program memory that is not configured as cache as a destination
of a transfer
- EMIF
The processor can use one of the DMA channels during the boot load startup
procedure to initialize the internal program memory after reset. The DMA
channels can be used to write to internal program memory.
The boot loader uses the DMA to boot load code from off-chip memory to the
internal program memory area. An external pin (sampled at reset) selects
whether this boot load is performed. The serial port can also be used for booting.
The DMA controller can access all internal program memory, all internal data
memory, and all devices mapped to the EMIF. However, the DMA cannot use
program memory as the source of a transfer and it cannot access memories
configured as cache or memory-mapped on-chip peripheral registers.
See the data sheet for the specific device to find the memory mapping of DMA
control registers. These are 2-bit-wide registers and must be accessed
through 32-bit accesses from the CPU. For more information on the DMA operations, see the TMS20C6201/C6701 Peripheral Reference Guide.
9.6.3
9-10
TMS320C6201/C6701 Peripherals
9.6.4
9.6.5
9.6.6
TMS320C6201/C6701 Timers
The device has two 32-bit general purpose timers that you can use to:
- Time events
- Count events
- Generate pulses
- Interrupt the CPU
- Send synchronization events to the DMA
The timer has two signaling modes and can be clocked by an internal or an
external source. The timer has an I/O pin that functions as an input clock, as
an output clock, or as a general-purpose I/O pin.
TMS320C6x Devices
9-11
9-12
Chapter 10
TMS320C8x Devices
TMS320C8x devicesthe worlds first 64-bit DSPs designed for the multiprocessing environmentinclude the C80 and the C82. This chapter describes
the devices, lists key features, and provides block diagrams.
Topic
Page
10-1
TMS320C8x Introduction
10-2
words
- 50K bytes of on-chip RAM on the C80 and 44K bytes of on-chip RAM on
the C82
- An on-chip crossbar that allows multiple instruction fetches and parallel
- Efficient packaging
305-pin ceramic pin grid array (CPGA) or 352 ceramic ball grid array
(CBGA) (C80)
10-3
31 32-bit registers
10-4
Integer unit
32
Floating-point
unit
Instruction and
data cache
control
64
32
Instruction
TMS320C8x Devices
10-5
Hardware-exception handling
Floating-point multiply unit performs all multiplies (integer and floatingpoint), divides, and square roots
3-stage pipeline
Register file scoreboard prevents races
10-6
Unpacker
Pipe
M. Reg
Pipe
Pipe
Pipe
MUX
MUX
Mantissa align
Pipe
Pipe
FP multiplier
FP ALU
Pipe
Pipe
Normalize
Normalize
Accumulators 03
MUX
To MP register file
TMS320C8x Devices
10-7
Better handling of pixels and Z-buffers than in other DSPs or generalpurpose processors
Two multiplier sources, three ALU sources, one multiplier result, one
ALU result, and three LD/ST/MOVE
Single-cycle multiplier
Data unit
Multiplier
Integer and
pixel data
patch
Address registers
32
Local
data port
Three
zero-overhead
loop/branch
controllers
32
Global
data port
Instruction and
cache control
Data
64-bit instruction
TMS320C8x Devices
10-9
Mixed arithmetic and Boolean in one cycle (mask and add/sub in one
pass)
Barrel rotator
Mask generator
N-to-1 and 1-to-N translations via mf register
Left/rightmost 1 and bit-change
44 user-visible registers
Eight D registers
Conditional operations
Src3
Dest2
Src1/
0x1
mf
Src4/
Src2/Imm
Src4
d0
Dest1
32
M. MUX
LMO,
RMO,
LMBC,
RMBC
R. MUX
5
5
Expander
32
Barrel
5 Mask generator
rotator
32
C. MUX
Multiplier
(splittable)
B
3-input ALU (splittable)
Scale
Round
N,C,V,Z
Barrel rotator
input sign bit
C
ALU function
code logic
mf
TMS320C8x Devices
10-11
Intelligent request
The C82 TC includes a memory configuration cache that consists of six 32-bit
words that describe the properties of the six most recently used banks of
memory. The cache automatically loads configuration words each time an
access to a new bank is made and it can be locked into a set high or low priority.
The configuration cache reduces the number of pins necessary in the C82 and
in support chips.
Figure 105 shows a block diagram of the C8x TC.
10-12
Source
Burst
control and
FIFO
alignment
64
Destination
control and
alignment
Internal
memory
64
Cache control
and buffer
interface
To crossbar
Request prioritization
System
memory
64
Memory
interface
SDRAM,
DRAM, and
VRAM control
Memory
and control
configuration
cache
(C82 only)
MP
requests
PPs
requests
Video controller
requests
External
requests
TMS320C8x Devices
10-13
TMS320C80
10.8 TMS320C80
The C80, the first member of the TMS320C8x generation, is a 50-, or 60-MHz,
CMOS multiprocessor DSP designed for high-performance processing. The
C80 architecture combines a floating-point unit and a RISC processor to provide a multiprocessor environment on a single device.
The C80 combines four 32-bit parallel processors (PPs) with a 32-bit master
RISC processor, a video controller, a transfer controller, and 50K bytes of SRAM
on a single chip. Each PP is capable of many parallel operations per cycle. The
PPs perform pixel/field processing as well as digital signal processing. The
RISC processor has a 120-MFLOPS IEEE-754 floating-point unit.
The C80 has a 16- or 20-ns cycle time, executes at over 2 BOPS, and
achieves 400M bytes/s of data to off-chip memory.
The C80s on-chip RAM supports many parallel accesses per cycle. A crossbar switch supports up to 4.2G bytes/s transfer rates: 2.4G bytes/s of data and
1.8G bytes/s of instructions. The 32K bytes of RAM can be shared by all processors and the transfer controller. The video controller supports any display or
capture resolution. Other features of the C80 include:
Transfer controller (supports multidimensional packet transfers)
10-14
TMS320C80
PP
I
PP
I
MP/
FPU
PP
C/D
IC = Instruction cache
DC = Data cache
32
32
64
32
32
64
32
32
64
32
32
64
64
32
Crossbar
32
32
32
32
Shared
RAM
10K bytes
32
64
IC
32
32
32
Shared
RAM
10K bytes
32
64
IC
32
32
32
Shared
RAM
10K bytes
32
64
IC
32
32
32
Shared
RAM
10K bytes
64
64
32
64
IC
MP D
RAM C
IC
64
Video
controller
Display/
capture
Transfer
controller
8/16/32/64
10K bytes
TMS320C8x Devices
10-15
SRT controller
10-16
Frame
timer 0
FT0
events
VC
request
to TC
SRT
controller
MUX
Frame
timer 1
FT1
events
SCLK0
SCLK1
FCLK1
FCLK0
TMS320C8x Devices
10-17
TMS320C82
10.10 TMS320C82
The C82 is a 50- or 60-MHz DSP that combines two PPs with 64-bit instructions and 32-bit fixed-point data. Each PP is capable of many parallel operations per cycle. The PPs perform pixel/field processing as well as digital signal
processing. The RISC processor has a 100-MFLOPS IEEE-754 floating-point
unit. The C82 is capable of executing at more than 1.5 BOPS, with a 16-ns
cycle time.
The C82s on-chip RAM supports many parallel accesses per cycle. A crossbar switch supports up to 2.6-Gbytes/s transfer rates: 1.6 Gbytes/s of data and
1.0 Gbytes/s of instructions. 32K bytes of RAM can be shared by all processors
and the transfer controller. Other features of the C82 include:
Transfer controller (supports multidimensional packet transfers)
Access to 8-, 16-, 32-, or 64-bit SRAM, DRAM, SDRAM, and EDO
DRAM
10-18
PP
I
32 64
G
32
32
64
MP/FPU
IC = Instruction cache
C/D
DC = Data cache
64
I
32
Crossbar
32
32
32
32
64
32
32
64
32
64
64
64
Shared
RAM IC
16K bytes
Shared
RAM IC
16K bytes
Transfer
controller
8/16/32/64
MP
DC IC
RAM
12K bytes
TMS320C8x Devices
10-19
Chapter 11
Mixed-Signal Products
A mixed-signal product is one that provides an interface between the digital and
the analog world. Digital signal processing solutions often include a DSP, software, an I/O interface, and mixed-signal products. This chapter describes mixedsignal products that are well suited to providing interfaces for DSP solutions.
Topic
Page
11-1
DSP Solutions
RAM/ROM
software
Mixed
signal
Real world
signals
11-2
DSP Solutions
Wireless/Cellular
Voiceband audio
RF codecs
Automotive
Consumer Audio
PCMCIA Modem
$
Stereo A/D D/A
Mixed
Signal
Multimedia
Stereo audio
Imaging
Graphics palette
DSP
Micro
controller
ASIC
Digital radio
Active suspension
DTAD
Speech synthesizer
Mixed signal processor
VOLUME
LOW
BATTERY
ANNC
CLOCK
MEMO
2 WAY
FWD
DELETE
STOP
ON
OFF
REPEAT
PLAY
Data converters are the classic form of DSP peripherals from the analog point
of view. Classic data converters, 10- to 12-bit data converters with a 10-s
conversion time, have been around for several years, supplied by Texas
Instruments and other manufacturers. The new equipment, driven by DSPs,
is pushing this envelope out in two directions. In the video direction, the need
is for much greater speed. Bits of resolution are not as important as very high
speed, often with conversion time of 10 ns or less.
On the other end of the spectrum, in audio, the ear is a very discriminating
instrument so you need very high resolution and speed is not as critical. For
the 10-s conversion time, we need 18-bit precision conversion. Figure 113
shows the progress being made in data converters. Driven by the pervasion
of DSP solutions, this progress spans the range of DSP markets.
Mixed-Signal Products
11-3
DSP Solutions
multimedia
Bits of Resolution
18
16
High performance
High speed modems
14
12
Industrial
controls
10
Hard
disk
drive
Voice processing
100
10 s
1 s
Conversion Time
11-4
Digital
Oscilloscopes
& spectrum
analyzers
Automotive
Optical
disk
drive
100 ns
Multimedia
video
10 ns
Mixed-Signal Products
11-5
fs = 30 SPS
TLC7135
8 bit
10 bit
5V
5V
TLCD820A
TLC1550
TLC1551
8 bit
12 bit
3V
TLC2543
8 bit
5V
8 bit
3V
10 bit
5V
3V
5V
18 bit
20 bit
5V
5V
TLC320AD57 TLC320AD75
TLC320AD58
5V
Digital
Audio
3V
5V
TLC2543
TLCD838 TLC548
TLC540 TLC549
TLC541
10 bit
5V
TLV1543
TLV1544
TLV1548
TLV1549
5V
TLC1541
TLC1542
TLC1543
TLC1549
TLV1544
TLV1548
11-6
8 bit
8 bit
8 bit
5V
5V
TLC5602}
TL5632}
TLC7524}
TLC7528}
TLC7628}
10 bit
3V
5V
TLV5613{
TLV5620
TLV5621
TLV5628
AD7524M
TLC5620
TLC5628
TLC7225}
TLC7226}
3V
Digital
audio
12 bit
5V
3V
5V
18 bit
20 bit
9V
5V
TPS7150
VCC
VCC
Ain TLC1550
CLK
_
++
TMS320CXXX
10
D0 DY
TLC226x
Serial
Port
4
TLC5620
Mixed-Signal Products
11-7
Successive
approximation
register
Control
logic
WR
RD
10
DGTL
V DD1
CLKIN
REF+
REF
AIN
11-8
100k
NOM
Frequency
divided by 2
Clock detector
Internal
clock
10-Bit
capacitor
DAC and S/H
10
D0 D9
TLC5620C 0 to 70C
TLC5620I -40 to 85C
Mixed-Signal Products
11-9
DAC
8
REF B
10
9
Data
8
Load
11-10
Latch
Latch
DAC
Latch
Latch
Latch
DAC
8
CLK
DAC
DAC
REF D
Latch
REF C
Latch
Latch
7
Serial
interface
LDAC
Power-on
0 reset
14
x2
13
x2
12
x2
x2
11
DAC A
DAC B
DAC C
DAC D
DATA
BCK
LRCK
Serial
data
interface
XOUT 256FSO
MUTEL
Serial
control
Attenuation
XIN
Interpolation
filter
Deemphasis
filter
MUTER
DAC
Modulator
L1
DAC
modulator
R1
L2
Right channel
Zero-data
defect
Zero-data
defect
Interpolation
filter
Deemphasis
filter
R2
Left channel
Mixed-Signal Products
11-11
INLP
INLM
V
High-pass
filter
FSYNC
REF
REF1
INRP
INRM
DOUT
Sigma-delta
modulator
Decimation
filter
High-pass
filter
Serial Interface
REF0
Decimation
filter
LRCLK
OSFR
OSFL
MCLK
CMODE
MODE 0-2
11-12
Control
SCLK
Mixed-Signal Products
11-13
Stereo ADC
INLP
Sigma-delta
modulator
INLM
Decimation
filter
High-pass
filter
ADOUT
SCLKA
VREF
REFO
REFI
INRP
Sigma-delta
modulator
INRM
Decimation
filter
High-pass
filter
Serial
interface
LRCKA
MCLKI
Stereo DAC
256CK
L1
L2
PWM
Digital
modulator
Interpolation
filter
512CK
Digital
attenuator
XOUT
XIN
De-emphasis
filter
Serial
interface
De-emphasis
filter
LRCKD
SCLKD
R1
R2
PWM
Digital
modulator
Interpolation
filter
Digital
attenuator
DDATA
CPU
interface
CDIN
SHIFT
LATCH
V35D
3 V or 5 V
11-14
TLC320AD80 applications include DBS set-top boxes, high-definition television (HDTV), digital audio broadcast receivers, video laser discs, and video
CD.
Figure 1112 shows a block diagram of the AD80 audio processing subsystem.
Mixed-Signal Products
11-15
47
REF
46
8
SDATA
BCLK
LRCLK
ASDATA
ABCLK
ALRCLK
MCLK 1
MCLK 2
48
Bandgap
reference
BGFLTR
REFF
9
10
M
U
X
11
12
13
Serial data
interface
Sigma-delta
DAC
Low-pass
and
de-emphasis
SC filters
29
Analog
LP filters
EXT OUTL
M
U
X
30
EXT OUTR
26
27
4
3
M
U
X
Clock
generator
EXT INL
EXT INR
35
AUDIO LEFT
TV BASEBAND P
TV BASEBAND M
AUX AUDIO2M
AUX AUDIO1L
NTSCAUDIO L
AUX AUDIO1R
NTSCAUDIO R
CS
SCLK
CDIN
CDOUT
Volume
balance
control
53
Monaural
decoder
54
Analog
LP filter
19
AUDIO MONO
38
24
21
39
AUDIO RIGHT
M
U
X
(This channel may feed EXT OUT L/R for mono mode)
41
42
MUX IN1
MUX IN2
23
20
M
U
X
59
60
61
62
SPI bus
controller
Command
decoder
Control
M
U
X
43
MUX OUT
11-16
Single 5-V
supply
"5-V supply
16 bit
TLC320AD50
TLC320AD52
TLC320AD56
14 bit
14 bit
18 bit
16 bit
20 bit
TLC32040
TLC32041
TLC32044
TLC32045
TLC32046
TLC32047
Sampling
Rate
(kHz)
Bandwidth
(kHz)
Supply
Voltage(s)
(V)
Pd (mW)
typ
SNR (dB)
typ
Conversion
Method
TLC320AD75
20
44.1
0.002 20
400
104
Sigma-delta
TLC320AD80
18
48
Sigma-delta
Audio processor
subsystem
TLC320AD56
16
22.05
8.8
5/3
100
70
Sigma-delta
Sigma-delta AIC
TLC320AD50
16
22.05
8.8
5/3
175
70
Sigma-delta
Sigma-delta AIC
with mstr/slv
function
TLC320AD52
16
22.05
8.8
5/3
175
70
Sigma-delta
Sigma-delta AIC
with mstr/slv
function
TLC320AD55
16
10.3
150
70
Sigma-delta
Sigma-delta AIC
TLC320AC02
14
25
10.8
100
70
Succesive
approx.
Single-supply AIC
TLC320AC01
14
25
10.8
100
72
Succesive
approx.
Single-supply AIC
TLC32047
14
25
0.3 11.4
375
70
Succesive
approx.
TLC32046
14
25
0.3 7.2
375
85
Succesive
approx.
Device
Description
Mixed-Signal Products
11-17
Sampling
Rate
(kHz)
Bandwidth
(kHz)
Supply
Voltage(s)
(V)
Pd (mW)
typ
SNR (dB)
typ
TLC32045
14
19.2
0.1 3.8
375
TLC32044
14
19.2
0.1 3.8
TLC32041
14
19.2
0.3 3.6
TLC32040
14
19.2
0.3 3.6
Device
Conversion
Method
Description
80
Succesive
approx.
Voice-band AIC
(relaxed TLC32044)
375
80
Succesive
approx.
Voice-band AIC
375
89
Succesive
approx.
375
89
Succesive
approx.
AIC
DOUT
Serial Port
AUXM
AUXP
Voltage
reference
SCLK
/FSYNC
MCLK
OUTM
OUTP
DAC
DIN
/FSdelay
11-18
AD50 applications include modems (V.34, DSVD, telephony), personal computer memory card international association (PCMCIA ) fax modems, DSP
analog interface, noise suppression/cancellation, and industrial process control.
Mixed-Signal Products
11-19
27
MUX
MONOUT
PGA
Sigmadelta
ADC
Decimation
filter
11
Buffer
DOUT
PGA
AUXP
AUXM
3
4
MUX
Digital
loopback
1
Analog
loopback
OUT
P
OUTM
REFP
Vref
23
Low
pass
filter
24
12
Sigmadelta
DAC
DIN
Interpolation
filter
22
21
PGA
Buffer
14
17
PWRDWN
RESET
FILT
MCLK
18
16
20
15
19
13
28
Internal
clock
circuit
M/S
FSD
ALTDATA
FC
FS
SCLK
FLAG
I/O
control
PLL (x4)
10
DVSS
11-20
REFM
9
DVDD
7
AVDD(PLL)
8
AVSS(PLL)
26
AVSS
25
AVDD
Decimation Filter
INP
INM
AUXP
AUXM
Sigma
Delta
ADC
MUX
SINC
filter
FIR
filter
DOUT
(2s Complement)
Buffer
Digital
loopback
REFCAPADC
VREF
Analog
loopback
Enable
VREF
REFCAPDAC
OUTP
OUTM
Sigma
Delta
DAC
SCF
filter
Interpolation
filter
Fk
FSCLK
FCLK
Buffer
DIN
(2s Complement)
I/O control
MCLK
SCLK
Mixed-Signal Products
11-21
INP
INM
MUX
AUXP
Sigmadelta
ADC
SYNC
filter
FIR filter
Buffer
DOUT
(2s Comp.)
AUXM
VREF
Digital
loopback
REF
VREF
DIN
(2s COMP.)
LSFILT
FLAG 0
Sigmadelta
DAC
OUTP
OUTM
Interpolation filter
Buffer
FLAG 1
ALT DATA
FC
FRAME SYNC
+8
MCLK
I/O control
+2
+4
11-22
FCLK
SCLK
Chapter 12
Topic
Page
12-1
Attributes
12.1 Attributes
Various combinations of cores, memory blocks, peripherals, and ASIC logic
are available through TIs cDSP and ASIC libraries to build a cDSP device configured to your specifications. Cores are optimized to minimize size and power
consumption while maximizing processing power and ease of use. Presently,
there are three proven TMS320 family cores available: the TMS320C2xLP,
T320C52, and T320C54x. In addition to core memory, numerous selections
of on-chip memory are available, including RAM, ROM, flash, and DRAM. The
cDSP option offers an array of peripherals targeted at the wireless, hard disk
drive, multimedia, and automotive markets. The complete ASIC library is available to integrate your custom design functions onto the die of the cDSP.
TI defines customizable DSPs as the ability to integrate on a single chip:
-
For instance, TI supplies about 95 percent of the DSPs found in hard disk drives
today, and because a single DSP can replace multi-component designs, HDD
manufacturers have been able to cut the cost of drive electronics by more than
30 percent.
Development time for an HDD is just six months in todays competitive environment, followed by a short product life cycle of about 18 months. This makes
time-to-market critical to the success of the new products. TI has demonstrated
that it is able to move cDSP solutions for HDD designs from samples to volume
production in less than three months.
12-2
Benefits
12.2 Benefits
The goal of TIs cDSP solution is to develop a unique product with enhanced
system integration and performance, reduced cost, low power consumption
and, most importantly, fast time to market. By consolidating system memory,
logic, and peripherals within a single chip, cDSP customers save significant
board space and reduce cost. Power consumption is lowered by reducing the
system loading from several devices and their interconnection to a single
cDSP. In addition, consolidation will increase system performance due to
reduced access times and enhanced architecture. To minimize your time to
market, the cDSP design flow is accompanied by extensive tools and support
every step of the way. From a starter kit that allows you to sample the power
of DSP products to the in-depth analysis of an IEEE Standard 1149.1
(JTAG)-compliant scan port, you are empowered with the tools and technical
support needed to get your product to market quickly. By defining a cDSP solution to meet your exact system requirements, you can clearly differentiate your
product from those of your competitors.
12-3
Key Features
ASIC Family
Performance
Power Consumption
(3/5 V)
TMS320C2xLP
TxC2000, TxC4000
30 and 40 MIPS
1.1/1.9 mA/MIPS
T320C52
TxC2000
40 and 50 MIPS
1.4/2.0 mA/MIPS
T320C54x
TxC4000, TSC5000
40 and 60 MIPS
1.5/2.5 mA/MIPS
The cDSP option offers many peripherals needed by DSP systems. The
peripherals listed below are available or planned for development.
Peripherals:
- Analog switch
- ASIC PLL (APLL)
- Host port interface (HPI)
- 16-bit timer
- Synchronous serial port
- Serial-port interface (SPI)
- Keyboard interface
- Serial-control interface (SCI)
- Pulse-width modulation (PWM)
- Universal asynchronous receiver/transmitter (UART)
- Real-time clock
- Interface controller
- LCD controller
- Buffered serial port (BSP)
- General-purpose chip selects
- Maskable interrupts
- Synchronous serial port
- Asynchronous serial port
- Event timer
- Watchdog timer
- DMA controller
12-4
Key Features
You can specify any of the available memory options listed below to meet your
system specifications. All three cores can address up to 64K 16-bit words of
program memory, 64K 16-bit words of local data memory, 32K 16-bit words of
global data memory, and 64K 16-bit words of I/O ports for a total of 224K words
address reach.
Memory type:
-
Single-access RAM
ROM
Flash
DRAM
Because cDSP is built into TI ASIC backplane technology, you benefit from all
the features that are part of the associated TI ASIC library, including:
-
8-bit ADC
10-bit ADC
8-bit DAC
ASIC logic
General-purpose and specialized I/Os
12-5
Chapter 13
Topic
Page
13-1
C2xx/C5x and the C54x compilers are referred to as the fixed-point compilers.
- The TMS320 C3x/C4x floating-point optimizing ANSI C compiler is a full-
featured C compiler that supports the C3x and C4x. Throughout this
book, this compiler is referred to as the floating-point compiler.
- The C6x optimizing ANSI C compiler offers many global and local code
optimizations and supports both the fixed-point C62x product and the
floating-point C67x product.
- The C80 compiler is actually two compilers, one for the master processor
Kernighan and Ritchie (K&R) standard. Most C programs that compile and
run under a K&R compiler (including earlier releases of the TMS320 C
compilers) should be capable of running under the new optimizing ANSI
compiler. The few cases of obscure, obsolete, or questionable program
constructions can be easily rewritten for ANSI compliance. ANSI compatibility also enhances portability; that is, existing code written for another
processor can be ported into the TMS320 C compiler with little or no additional coding.
- New types. The new const and volatile types allow improved optimizations.
- Improved function conventions. Function prototypes allow improved
13-3
The fixed-point C compiler and assembly language tools support modular programming by allowing you to compile and assemble individual modules and
then link them together. The fixed-point C compilers also perform both global
optimizations and loop optimizations, such as strength reduction.
13-4
memory configuration, and partial linking and contains features that allow
easy runtime relocation of code
Code Generation Tools
13-5
executable code
- Fast compilation to increase productivity
- Unlimited symbol table space (up to the amount of available host memory)
- Complete and useful diagnostics (error messages)
- An archiver utility that allows you to collect files into a single archive file
The TMS320 C compilers have passed all Plum-Hall validation suites, which
are a series of routines that test the validity and conformability of a C compiler.
Plum-Hall validation is the de facto standard for validating ANSI C compilers.
13-6
Copy propagation
Common subexpression elimination
Redundant assignment elimination
J
J
J
J
J
Register variables
Cost-based register allocation
Autoincrement addressing modes
Repeat blocks
Delayed branches, calls, and returns
Arranging of variables on the local frame
Elimination of unnecessary LDPK instructions
Register variables
Register tracking/targeting
Cost-based register allocation
Autoincrement addressing modes
Repeat blocks
Delayed branch instructions
Use of registers for passing function arguments
Parallel instructions
Conditional instructions
Loop unrolling
13-7
Copy propagation
Following an assignment to a variable, the compiler replaces references
to the variable with its value. The value could be another variable, a
constant, or a common subexpression. This may result in increased
opportunities for constant folding, common subexpression elimination,
or even total elimination of the variable.
13-8
simp(int
{
int
int
int
int
j)
a
b
c
d
=
=
=
=
3;
(j*a)+(j*2);
(j<<a);
(j>>3)+(j<<b);
call(a,b,c,d);
...
}
13-9
j)
=
=
=
=
3;
(j * a) + (j * 2);
(j << a);
(j >> 3) + (j << b);
call(a,b,c,d);
...
}
The constant 3, assigned to a, is copy-propagated into all uses of a. a becomes a dead variable
and is removed completely. The sum of multiplying j by 3 (a) and by 2 is simplified into a multiply
by 5, which is computed with a shift and add. The expression (j << a) is computed once for
assignment to c and then reused for calculating d. These optimizations are also performed
across jumps.
13-10
break;
break;
break;
;
;
;
;
;
;
;
;
;
;
;
;
The switch statement and the state variable from this simple finite-state machine process are
optimized completely away, leaving a streamlined series of conditional branches.
13-11
Loop induction variables are variables whose value within a loop is directly
related to the number of executions of the loop. Array indices and control
variables of FOR loops are very often induction variables. Strength reduction is the process of replacing costly expressions involving induction variables with more efficient expressions. For example, code that indexes into
a sequence of array elements is replaced with code that increments a
pointer through the array. Loops controlled by incrementing a counter are
implemented with block repeat instructions, or with efficient decrementand-branch instructions. Induction variable analysis and strength reduction together often remove all references to the programmers loop control
variable, allowing it to be eliminated entirely.
- Loop rotation
The special keyword inline directs the compiler to replace calls to a function
with inline code, saving the overhead associated with a function call as well
as providing increased opportunities to apply other optimizations. See
Example 134 and Example 135.
13-12
.set
....
LARK
MAR
LACK
SACL
LARK
MAR
LAR
LACK
SAMM
RPTB
LAC
ADD
SACL
AR6,1
*0+
0
*,AR2
AR2, 3+LF2
*0+
AR5,*,AR5
99
BRCR
L91
*+,AR6
*
*,AR5
L9:
;ARP = AR6
;AR6 = &acc_1_sum
;ACC = 0
;acc_1_sum = 0
;AR2 = &p
;AR5 = p
;loop 100 times
;begin loop
;ACC = *p+
;ACC += acc_1_sum
:acc_1_sum = ACC
;end loop
....
The keyword inline signals the compiler to expand the call to acc in place. The
symbol acc_1_sum is created to accumulate the sum.
13-13
BK,AR2
R2,AR4
*AR4++,R0
10
R0,*AR2++
*AR4++,R0
R0,*AR2++
;blkcpy_1_to = ps
;blkcpy_1_from = t
;+
;| expansion of blkcpy:
;| copy 12 words
;+
;
The special inline declaration of blkcpy results in the call being replaced with the functions
body. The compiler creates temporary variables blkcpy_1_to and blkcpy_1_from, corresponding to the parameters of blkcpy. Often, copy propagation can eliminate assignments
to such variables when the argument expressions are not reused after the call.
The compiler maximizes the use of the address registers of the C2xx/C5x
DSPs by using them as pointers. This optimization is particularly effective
for pointers that arise when array index constructs are turned into loop induction variables.
- Cost-based register allocation
The C5x supports a number of delayed branch, call, and return instructions.
Three of these are used by the compiler: branch unconditional (BD), call to
a named function (CALLD), and simple return (RETD). These instructions
execute in two fewer cycles than their nondelayed counterparts. They
execute two instruction words after they enter the instruction stream.
Sometimes it is necessary to insert an NOP after a delayed instruction to
ensure proper operation. This involves one more word of code than a nondelayed sequence, but it is still one cycle faster. Note that the compiler
emits a comment in the instruction sequence where the delayed instruction executes. See Example 136.
- Arranging variables on the local frame
Local variables are accessed by adjusting AR2 to point to the variable on the
frame and then by accessing AR2 indirectly. If variables that are allocated far
apart on the local frame must be accessed sequentially, an ADRK or SBRK
instruction is required to adjust AR2. If variables that are allocated next to
each other must be accessed sequentially, the ADRK or SBRK instruction is
not required, because AR2 can be adjusted to point to the next variable by
adding a + or a symbol to the previous indirect access. The compiler takes
advantage of this situation by recognizing local variables that are accessed
sequentially and allocating those variables next to each other. See
Example 137.
- Autoincrement addressing modes
For pointer expressions of the form *p++, the compiler uses efficient
C2xx/C5x autoincrement addressing modes. In many cases, where code
steps through an array in a loop, such as for (i = 0; i < N; ++i) a[i ]..., the loop
optimizations convert the array references to indirect references through
autoincremented register variable pointers.
- Repeat blocks
For the C5x, the compiler supports zero-overhead loops with the RPTB
instruction. The compiler can detect loops controlled by counters and generate them via the efficient repeat forms. The iteration count can be either a
constant or an expression.
13-15
Example 136. Fixed-Point Compiler Delayed Branch, Call, and Return Instructions
driver()
{
int i0, i1;
while (input(&i0) && input(&i1))
process(i0, i1);
}
***
;save AR6
;save AR7
;AR6 = &i0
;AR7 = &i1
;begin branch to loop control
L2
LAC
SACL
CALLD
LAC
SACL
CALL
SBRK
* ,AR1
*+,AR6
_process
* ,AR1
*+
_process
2
;stack *AR7
;call occurs
L2:
CALLD _input
MAR
*,AR1
SAR
AR6,*+
*** CALL
_input OCCURS
MAR
*
BZ
EPI0_1
CALLD
_input
SAR
AR7,*+
NOP
CALL
_input
MAR
*,AR7
BNZ
L1
EPI0_1:
MAR
*,AR1
;
<restore register vars>
MAR
*
LAR
AR7,*
LAR
AR6,*
SBRK
4
PSHD
*
RETD
LAR
AR0,*
NOP
*** RET
OCCURS
13-16
;loop control
;begin call
;stack AR6 (&i0)
;call occurs
;clear stack
;quit if _input returns 0
;begin call
;stack AR7 (&il)
;necessary, no branches in delay slot
;call occurs
;clear stack
;continue if _input returns !0
;function epilog
;restore AR7
;restore AR6
;clear local frame
;push return address on hardware stack
;begin return
;restore AR0
;necessary, no PSHD in delay slot
;return occurs
***
LAC
ADD
SACL
LAC
CALLD
ADD
SACL
CALL
SBRK
points to b
point to j
points to a
points to i
The compiler rearranges the order of the variables on the local frame from int a,b,i,j; to int b,j,a,i;
so that the expressions can be computed without unnecessary additional adjustments to AR2,
the local variable pointer register.
13-17
_g3
_g3
_g2
_g1
_g2
_e1
_e1
Because g1, g2, and g3 are all declared in the local module, the compiler can determine where the
variables are in relation to page boundaries and can change the page pointer accordingly in
this case, only once. Note that the page pointer is reset to access the variable that is declared in
another module and only referenced in this module.
The compiler helps maximize the use of registers for storing local variables,
parameters, and temporary values. Variables stored in registers can be
accessed more efficiently than variables in memory. This optimization is
particularly effective for pointers that arise when array index constructs
are turned into loop induction variables. See Example 139 and
Example 1310.
13-18
i
j
;R0 = call()
;R0 &= i
;gvar = R0
;tracks gvar in R0,
;targets result into R5 (j)
The compiler allocates local variables i and j into registers R4 and R5,
as indicated by the comments in the assembly listing. Allocating i to R4
and tracking gvar in R0 allows the sum gvar + i to be computed with a
3-operand instruction, targeting the result directly into j in R5.
- Register tracking/targeting
13-19
Example 1310.
@CONST+0,AR4
@CONST+1,AR5
R4,*AR5++,R0
8
R0,*AR4++
R4,*AR5++,R0
R0,*AR4++
;
;
;
;
;
;
;
AR4 = &a[0]
AR5 = &b[0]
compute first product
loop for next 9
store this product...
...and compute next
store last product
This process shows general and floating-point-specific optimizations working together to generate
highly efficient code. Induction variable elimination and loop test replacement allow the compiler to
recognize the loop as a simple counting loop and then generate a repeat block. Strength reduction
turns the arrays references into efficient pointer autoincrements. The compiler unrolls the loop once
to separate the first multiply and last store, allowing the body of the loop to be written as a single
parallel instruction.
- Cost-based register allocation
For pointer expressions of the form *p++, *p , *++p, or * p, the compiler uses efficient TMS320 autoincrement addressing modes. In many
cases, where code steps through an array in a loop, such as for (i = 0; i < N;
++i ) a [ i ]..., the loop optimizations convert the arrays references to indirect references through autoincremented register variable pointers. See
Example 1310.
13-20
- Repeat blocks
Example 1311.
***
LDI *AR4,R0
TSTB 128,R0
BZ L6
BD L6
LDI *AR4,R0
OR 0f0h,R0
STI R0,*AR4
B
L6
;
;
;
;
;
;
;
;
R0 = *p (AR4 is allocated to p)
test *p & 0x80
false: loop back
true: loop back (delayed)
R0 = *p
R0 = *p | 0xF0
*p = R0
branch occurs
The unconditional branch at the bottom of this loop is written as a delayed branch,
allowing it to execute in one machine cycle.
13-21
The compiler supports a new, optional calling sequence that passes arguments
to registers rather than pushing them onto the stack. This can result in significant
improvement in performance, especially if calls are important in the application.
- Parallel instructions
The load instructions in the floating-point C compiler can be executed conditionally. For simple assignments such as a = condition ? expr1 : expr2 or if
(condition) a = b, the compiler can use conditional loads to avoid costly
branches.
- Loop unrolling
When the compiler determines that a short loop is executed a low, constant
number of times, it replicates the body of the loop rather than generating the
loop; note that low and short are subjective judgments made by the compiler.
This avoids any branches or use of the repeat registers. See Example 1312.
Example 1312.
Loop Unrolling
add3(int a[3])
{
int i, sum = 0;
for (i = 0; i < 3; ++i) sum += a[i]
return sum;
}
*FP(2),AR4
*AR4++,RC
*AR4++,RC
*AR4++,RC
RC,R0
;
;
;
;
;
AR4 = &a[0]
sum += a[0]
sum += a[1]
sum += a[2]
return sum
The compiler determines that this loop is short enough to unroll, resulting
in a simple three-instruction sequence and no branches.
13-22
13-23
13-24
object file
- Produces a source listing (if requested) and provides control over this listing
- Appends a cross-reference listing to the source listing (if requested)
- Allows segmentation of your code
- Maintains a section program counter (SPC) for each section of object code
- Defines and references global symbols
- Assembles conditional blocks
- Supports macros, allowing the user to define macros either inline with or
13-25
Directives map program and data code on specific processors for fast
integration and debugging of parallel-processing code.
The linker combines object files into a single executable object module. As it
creates the executable module, it performs relocation operations and resolves
external references. The linker accepts COFF object files (created by the
assembler) as its input. It can also accept archive library members and modules
created by a previous linker run. Linker directives allow you to combine object
file sections, bind sections and symbols to specific addresses, and define/redefine
global symbols. The linker has these features:
-
The archiver makes it possible to collect a group of files into a single archive
file. For example, several macros can be collected together into a macro
library. The assembler searches through the library and uses the members
that are called as macros by the source file. Also, it is possible to use the archiver to collect a group of object files into an object library. The linker includes
the members in the library that resolve external references during the link.
Most EPROM programmers do not accept COFF object files as their input. The
assembler/linker includes a utility to convert the COFF file into Intelt, Tektronixt,
TI-tagged, Motorola-St, or ASCII hex-object formats.
13-26
Chapter 14
Topic
Page
14-1
14-2
Context-sensitive
status bar
C source display
Disassembly
display
Natural-format
data displays
Function call
traceback
14-3
the C/assembly debugger is enhanced with special parallel-processing capabilities (multiple-processor debug/breakpoint and single-step).
- Multilevel debugging. The debugger allows you to debug both C and
code, data, and commands into manageable information. You can select
from several displays or, since the debuggers display is completely configurable, you can create the interface that best suits the application. You can
change the display colors, the physical appearance of displayed features
(such as window borders), and the window size and position.
- Flexible command entry. Commands can be entered by using a mouse,
the function keys, or the pull-down menus. The debuggers command history
can be used to reenter commands. Symbolic debug is supported, so structure and variable names can be used instead of address or data locations.
- On-screen editing. Any data value displayed in any window can be
changed easily by pointing (with the mouse) at the value, clicking, and
entering the correct value.
- Continuous update. The debugger continuously updates information on
14-4
watching, displaying, and editing the values of variables, arrays, structures, pointers any kind of data in their natural format (floating point,
integer, character, enumerated, or pointer). Entire linked lists can be displayed.
- Powerful command set. The TMS320 debugger supports a powerful
command set that makes full use of C expressions. One debugger command performs actions that might require several commands in another
system.
- Compatibility. The C source debugger runs on IBM PC-ATs and compatible
order that they are called and put on the stack. A function name is removed
when popped from the calls stack. This allows you to debug a program that
is not executing properly because of a lack of stack space.
- Memory window. Memory contents can be displayed and edited to allow
you to observe the movement of data and compare expected values to actual
ones.
manipulate profile areas on the global, module, function, and explicit levels,
so you can efficiently profile even the most complex applications.
System Integration and Debugging Tools
14-5
The number of times each area was entered during the profile session
- Versatile display. The profiler allows you to choose profile areas, the type
of statistical data, and the sorting criteria, which ensures an efficient, customized display of statistics. The data also can be accompanied by histograms to show the statistical relationship between profile areas.
- Disabled areas. You can disable portions of a profile area to prevent them
from adding to the statistics. This is convenient for removing the timing
impact of standard library functions or a fully optimized portion of code.
14-6
Instruction acquisition
Memory reads and writes (data or program)
Data patterns on the data bus or the program bus
Error conditions
- Trace on:
J
J
J
Accumulator
Program counter
Auxiliary registers
System Integration and Debugging Tools
14-7
- Single-stepping of instructions
- Interrupt generation at user-specified intervals
- Error messages for:
J
J
Illegal opcodes
Invalid data entries
- Execution modes
J
J
J
J
J
J
- Cycle counting
14-8
Externally generated mode that can be configured with wait states for
accurate cycle counting (C2xx, C3x, C4x)
The simulators use TMS320 object code produced by the TMS320 macro
assembler/linker or ANSI C compiler. Input and output files can be associated
with the port addresses of the I/O instructions to simulate I/O devices
connected to the processor. Each interrupt flag can be set periodically at a
user-defined interval for simulating an interrupt signal. Before program execution is initiated, breakpoints can be defined ( a branch to self is detected ), and
the trace mode set ( execution is halted ).
Once program execution is suspended, the internal registers and both program
and data memories can be inspected and/or modified. The trace memory can
also be displayed. A record of the simulation session can be maintained in a
journal file so it can be reexecuted to regain the same machine state during
another simulation session.
14-9
14-10
Instruction acquisition
Error conditions
The simulator offers the following additional features to the TMS320 debugger
interface:
- Can connect memory mapped I/O to a host file to simulate I/O such as syn-
14-11
with your PC
- A 2.1-mm jack that allows you to attach a simple wall-mounted ac or dc
(C5x only)
- 10K of on-chip RAM words on the 40-MHz C5x board, or 2K words of on-
14-12
RCA Jack
(Analog Input)
TI
DSP
RCA Jack
(Analog Output)
must learn
The TMS320 DSKs run on a PC-AT with MS-DOS or PC-DOS (version 4.01
and later).
14-13
14-14
The C3x EVM enables you to benchmark and evaluate code in real time while
the device is operating at 33 MHz in the rich development environment of the
C3x assembler/linker and C/assembly source debugger interface. Applications
can be benchmarked and tested easily with the analog-ready interface.
The C3x EVM comes complete with a PC half-card and software package.
The EVM board contains:
- One C30 a 33-MFLOPS, 32-bit, floating-point DSP
- 16K-word, zero wait-state SRAM, allowing coding of most algorithms
14-15
The system also comes with all of the software required to begin application
development on a PC host:
- The window-oriented, mouse-controlled interface supports downloading,
ming, the optimizing ANSI C and the Ada compilers are offered separately.
face circuit
- Standard RCA connector analog input and output for direct connections
controller (TBC)
- 16-bit bidirectional PC host-communications port
- I/O expansion bus for application use
- IBM PC-compatible 16-bit half card, mappable in one of four memory
locations
14-16
14-17
14.3.2.4
TMS320C6x EVM
The TMS320C6x evaluation module (EVM) is a low-cost, general-purpose
platform for the development, analysis, and testing of C6x digital signal processor (DSP) algorithms and applications. The C6x EVM allows you to evaluate the C6x DSP and algorithms to determine if your application requirements
can be met.
The C6x EVM hardware design information and software APIs also provide
a reference design that can be used to ease your own C6x-based hardware
and software development.The C6x EVM has a C6201 DSP onboard that allows full-speed verification of C6x code with the included source debugger.
The C6x EVM has the following features:
- The EVM can be plugged into a peripheral component interconnect (PCI)
in the development of your own C6x-based products. In addition to providing a reference for interfacing the DSP to various types of memories and
peripherals, the design also addresses power, clock, JTAG, and PCI controller interfaces.
14-19
20 19 18 17 16 15 14 1312
CPU B
P9
Global Arbitration
CPU C
JP3
DSP
P11
L
M
N
P
R
S
T
V
W
TMS320C40
PARALLEL PROCESSOR
DEVELOPMENT SYSTEM
D6
TMX320C40GFL
E9117
10373980
1991 TI USA
P10
CPU A
D4
FIXROT D8D9D10D11
UL19
System Clock
RESET
B
C
D
E
F
G
H
J
K
CPU D
JP4
D7
DSP
Reset Control
RUNNING
TMX320C40GFL
E9117
10373980
1991 TI USA
D5
P8
TMX320C40GFL
E9117
10373980
1991 TI USA
JP2
TMX320C40GFL
E9117
10373980
1991 TI USA
P12
CPU C
Local
Memory
CPU C
EPROM
11 10 9 8 7 6 5 4
CPU D
CPU D
Local
EPROM
Memory
P1
External
Control
Buffers
Global
Memory
Control
Buffers
P3
External
Bus
Connector
IEEE 1149.1
Connector
X
UY1
20 19 18 17 16 15 14 13 12
Reset
Switch
DSP
DSP
P6
P7
10 9 8 7 6 5 4 3
Global
Memory
(Bank 0)
JP1
P5
CPU A
Local
Memory
CPU A
EPROM
S1
CPU B
Local
Memory
CPU B
EPROM
P4
Global
Memory
(Bank 1)
IEEE 1149.1
Test Clock
The PPDS is placed on the desktop and is controlled through the XDS510,
available separately. The PPDS is shipped with a dedicated desktop stand and
its own 20-A, 50-W power supply. You also need a C compiler.
Each C40 on the PPDS has direct connections to each of the other C40s in
the system through the communication ports, allowing you to experiment with
various parallel-processing topologies that are best suited for your end
application. In addition, each C40 also has two communication ports pinned
out to external connectors on the left edge of the board, allowing other
C40-based boards or peripheral boards to be connected to the C40s on the
PPDS.
The C40s are also connected on a shared bus (see Figure 145) that has
arbitration logic to decide which C40 receives access to the shared bus at any
given time. The shared bus is brought to a connector, allowing DRAM, data
acquisition, and other shared resources to be added to the PPDS.
14-20
Even though the PPDS is used with the XDS510, each C40 has its own
source-level debugging window for code development.
These features give you the flexibility to distribute tasks between multiple processors and to develop, benchmark, and debug multiprocessing algorithms.
64K-Word
SRAM
(UA12-UA19)
P6
CPU A
Out
32
8K-Byte
EPROM
(UB19)
64K-Word
SRAM
(UA3-UA10)
8
32
32
32
LSTRB1
8
Com5
Com2
Com0
LSTRB0
LSTRB0 8
LSTRB1
P7
CPU B
In
P8
CPU B
Out
8K-Byte
EPROM
(UB10)
TMS320C40
CPU B
(UB17)
Com5
Com2
Com4
Com1
Com0
Com4
Com1
Com3
8
TMS320C40
CPU A
(UB8)
Com3
Global
Expansion
Bus
P3
8
8
8
Com3
P10
CPU C
Out
8
P11
CPU D
In
P12
CPU D
Out
Com5
Com2
TMS320C40
CPU C
(UB15)
64K-Word
SRAM
(UY13-UY20)
Com3
Com1
Com4
Com5
Com2
Com4
LSTRB0
LSTRB1
32
Com0
Com1
32
8K-Byte
EPROM
(UW13)
8
8
TMS320C40
CPU D
(UB6)
LSTRB1
32
64K-Word
SRAM
(UY4-UY11)
Com0
128KWord
Global
SRAM
P4
LSTRB0
32
8K-Byte
EPROM
(UW4)
14-21
14-22
14-23
The emulators configurability gives your system flexibility. You can configure
both memory and screen color. The address range, memory type, and access
type assigned to each location can be configured also. The memory map,
which may include EPROM, SRAM, DRAM, SDRAM, and on-chip memory
and peripherals, can be configured to reflect the actual peripheral environment
of the target system, including wait states and access privileges.
The C2xx, C3x, C4x, C5x, C54x, C6x, and C8x XDS510 emulator packages include:
- XDS510 emulator PC board
-
- C2xx, C3x, C4x, C5x, C54x, C6x, or C8x user interface software
(sold separately)
All XDS510 systems use the IEEE 1149.1 target cable, except the C3x XDS510
which uses the MPSD cable.
The XDS510 emulator operates on a PC-AT system and requires one 16-bit slot.
IEEE Std 1149.1-1990, IEEE Standard Test Access Port and Boundary-Seam Architecture
14-25
agement system keeps track of all files and their dependencies. This allows
Code Composer to save you compile time by recompiling only those files
that have changed since the last compile.
- Tightly integrated editor tuned for writing C and DSP assembly code.
point. Graphical display windows allow the user to view signals in time
domain or frequency domain. For frequency domain graphs, the FFT is performed on the host; this allows you to view the spectrum of the interested
signal without any modification to its DSP code. Graphical displays can also
be connected to a probe point. A probe point (when set at a particular location in the algorithm) specifies when the graphical display window should
be updated. This allows you to take a snapshot of the signal when execution
of the code reaches that point.
- File probes to extract or inject signals/data at any algorithm point via
files. Instead of reading signals in real time, Code Composer allows you
to stream signals from/to your PC. This allows you to simulate your algorithm (on the DSP target) with known samples.
- Graphical profiling. Code Composers profiling capabilities are inte-
mand). You can execute any DOS programs from within Code Composer
and have the output piped to Code Composers output window. This allows
you to integrate your own applications to Code Composer.
- State-of-the-art watch window. Code Composers watch window allows
means that you dont have to carry your Users Guide everywhere.
- User extensible. The GO DSP Corporations Extension Language (GEL)
allows you to add your own menu items to Code Composers menu bar.
14-27
14-28
Chapter 15
Topic
Page
15-1
15-2
Technical Documentation
The DSP Solutions world wide web site (http://www.ti.com/dsps) contains electronic versions of most of the TMS320 technical documentation, including all
data sheets and application reports currently available.
The following list describes the general contents of each major category of
technical documentation available through the TI Literature Response Center.
- Product bulletins and product briefs give an overview of the devices and
15-3
Table 151.
Application Reports
Location/
Literature No.
Device
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRU083
TMS320C31
Application
Topic
Data Communications
Digital Cellular
Digital Control
Refer to DFT/FFT and Convolution Algorithms by C. S. Burrus and T. W. Parks, published by John Wiley & Sons.
15-4
Table 151.
Device
SPRA021
TMS320C3x
SPRA021
TMS320C30
SPRA039
TMS320C30
SPRA040
TMS320C32
Application
Topic
DSP Interface
Image/Graphics
DSP Routines
SPRA033
TMS320C5x
SPRA055
TMS320C8x
SPRA056
TMS320C8x
SPRA024
TMS320C3x
SPRA033
TMS320C5x
SPRA069
TMS320C8x
BBS
TMS320
SPRA035
TMS320
BBS
TMS320C1x
BBS, JW
TMS320C10
BBS
TMS320C14
Self Test
SPRA012
TMS320C1x/C2x
BBS
TMS320C2x
SPRA012
TMS320C2x
BBS
TMS320C25
BBS
TMS320C25
BBS
TMS320C25
BBS, SPRA017
TMS320C26
SPRA017
TMS320C25/C30
BBS
TMS320C25/C30
BBS
TMS320C3x
BBS
TMS320C30
Refer to DFT/FFT and Convolution Algorithms by C. S. Burrus and T. W. Parks, published by John Wiley & Sons.
15-5
Table 151.
Device
BBS
TMS320C30
BBS
TMS320C30
BBS
TMS320C30
BBS
TMS320C30
BBS
TMS320C30
BBS
TMS320C30
BBS
TMS320C30
SPRA031
TMS320C30
BBS
TMS320C4x
BBS
TMS3206201
BBS
TMS320C6201
BBS
TMS320C6201
SPRA022
TMS320
SPRA069
TMS320C8x
SPRA069
TMS320C8x
SPRA069
TMS320C8x
SPRA069
TMS320C8x
SPRA069
TMS320C80
SPRA012
TMS320
SPRA021
TMS320C30
SPRA030
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA033
TMS320C5x
SPRA063
TMS320C8x
Application
Topic
DSP Routines
Speech Coding/
Recognition
Refer to DFT/FFT and Convolution Algorithms by C. S. Burrus and T. W. Parks, published by John Wiley & Sons.
15-6
Table 151.
Application
Topic
Location/
Literature No.
Device
Telecommunications
SPRA066
TMS320C8x
Tools
SPRA021
TMS320C30
SPRA021
TMS320C30
SPRA048
TMS320C32
BBS
TMS320C6201
Refer to DFT/FFT and Convolution Algorithms by C. S. Burrus and T. W. Parks, published by John Wiley & Sons.
15-7
Table 152. Currently Available Designers Notebook Pages for TMS320 DSPs
15-8
No.
Topic
10
11
12
13
14
15
16
17
18
19
20
21
TMS320C5x Interrupts
22
23
Table 152. Currently Available Designers Notebook Pages for TMS320 DSPs (Continued)
No.
Topic
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
15-9
Table 152. Currently Available Designers Notebook Pages for TMS320 DSPs (Continued)
15-10
No.
Topic
54
55
56
57
58
59
60
Accessing States and Control Fields and I/O Ports in the TMS320Cxx
HLL Debugger
61
Multipass Linking
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
University Textbooks
15-11
University Textbooks
15-12
Theory and Design of Adaptive Filters (J.R. Treichler, C.R. Johnson, Jr., and M.G. Larimore) introduces the fundamental concepts,
design techniques, and application guidelines of adaptive filters. This
text discusses the analysis and design of the three basic classes of
adaptive filters: FIR, IIR, and adaptive property restorative filters. Several
TMS320 design examples are presented. ISBN #0471-832200, U.S.
$108.00
Active Noise Control Systems Algorithms and DSP Implementations (Sen M. Kuo) emphasizes the practical aspects of active
noise control (ANC) systems using a signal processing and DSP
implementation perspective. The principles of adaptive signal processing are combined with experimental results and practical issues
including the application of these structures and algorithms using C
and assembly programs on the TMS320C25 and TMS320C30. ISBN
#0-471-13424-4, U.S. $79.95
University Textbooks
41 Madison Avenue
New York, NY 10010
(212) 349-8263
15-13
DSP Design Takes Top-Down Approach, Andy Fritsch and Kim Asal,
EE Times DSP Series Part III, July 17, 1995.
The Growing Spectrum of Custom DSPs, Gene Frantz and Kun Lin,
EE Times DSP Series, Part II, April 18, 1994.
- Control
J
- DSP Technology
J
15-14
DSP Design Takes Top-Down Approach, Andy Fritsch and Kim Asal,
EE Times DSP Series Part III, July 17, 1995.
- General-Purpose DSP
J
The Wide World of DSPs, Jim Larimer, Design News, June 27, 1994.
- Graphics/Imaging
J
- Military
J
- Multimedia
J
15-15
- Power Dissipation
J
- Speech/Voice
J
- Telecommunications
15-16
TMS320 Newsletter
15-17
15-18
To transfer a file from the BBS to your system, enter the F (Files Area) command from the main menu. This allows access to all available BBS files. To get
a list and a brief description of the different files available, select the L (List file)
command. To download a file, choose the D command. Select the default protocol by selecting Your Setting on the main menu. The BBS supports the most
popular protocols, including ASCII, XMODEM, XMODEM-CRC, YMODEM,
and ZMODEM. The BBS then asks for a filename. Enter the filename you are
interested in. If you use the MS-DOS wildcard characters * and ? and you are
using the YMODEM or ZMODEM protocols, you can download several files
sequentially. Refer to the MS-DOS manual for the details on wildcard characters. With the proper protocol, the BBS waits for you to start the file transfer.
To log off the BBS, enter the G (Goodbye) command. The BBS updates the
log-in data and waits for the next BBS customer.
See page viii for other worldwide BBSs available.
15-19
15-21
Chapter 16
Topic
Page
16-1
16-2
16-3
16-4
Chapter 17
Topic
Page
17-1
TTO Services
Length, days
4.0
3.5
3.5
4.0
4.0
4.0
4.0
TTO Services
location.
- Smoking is not permitted in Texas Instruments facilities.
- The suggested attire is business casual.
17-3
TTO Services
- Irvine
17-4
TTO Services
Architectural overview
Assembly language tools
Data addressing modes
Basic programming techniques
Advanced programming techniques
Numerical issues
DSP fundamentals
Logical operations
Interrupts
Logic/memory interfacing, special peripherals
cDSP/ASIC design considerations
Using the C compiler
Design support
17-5
TTO Services
Architectural overview
Assembly language tools
Data addressing modes
Basic programming techniques
Advanced programming techniques
Numerical issues
DSP fundamentals
Logical operations
Interrupts
Hardware interfacing
Serial ports and multiprocessor features
Using the C compiler
17-6
TTO Services
17-7
TTO Services
Architectural overview
Introduction to pipeline
Getting started with C
Getting started with Assembly
Using the Linker
System initialization
Accessing data and program control
Assembly optimization
Using the assembly optimizer
Optimizing the performance of C
Logical and bitfield operations
Numerical issues
Interrupts
Memory I/F
Internal program memory and cache
DMA and boot loader
Serial port
HPIF and system considerations
TTO Services
C80 architecture
Functional block interaction
Programming the PPs
Programming the executive and master processor, calling library routines,
and partitioning tasks
- Using development tools
Following is an outline of the TMS320C6x workshop:
-
17-9
Design Services
After the various trade-offs/options are selected and approved, Texas Instruments can provide further assistance in the design of a customers product,
sharing a mutual goal of bringing a successful product to market as quickly as
possible.
17-10
NORTHERN CALIFORNIA
Texas Instruments
2825 North First Street, Suite 200
San Jose, CA. 95134
(408) 3832363
BOSTON
Texas Instruments
400-1 Totten Pond Raod
Waltham, MA 021541263
(781) 8959196
SOUTHERN CALIFORNIA
Texas Instruments
1920 Main St., Suite 900
Irvine, CA 92714
(714) 6608140
CHICAGO
Texas Instruments
515 W. Algonquin Road
Arlington Heights, IL 60005
(708) 6402909
OTTAWA
Texas Instruments Canada, Ltd
301 Moodie Drive, Suite 102
Nepean, Ontario
Canada, K2H 9C4
(613) 7261970
DALLAS
Texas Instruments
7839 Churchill Way
Park Central V, MS 3984
Dallas, TX 75251
(972) 9173881
MEXICO CITY
Texas Instruments de Mexico
Alfonso Reyes 115
Col. Hipodromo Condesa
Mexico, D.F., Mexico 06170
(52) (5) 5156081
(52) (5) 5156249
INDIANAPOLIS
Texas Instruments
550 Congressional Blvd., Suite 100
Carmel, IN 46032
(317) 5736400
17-11
17-12
AUSTRALIA
Texas Instruments Australia Ltd.
610 Talavera Road, North Ryde
New South Wales, Australia 2113
(61) (2) 8789000
JAPAN (Tokyo)
Texas Instruments Japan Ltd
Ms Shibaura Building 9F
41323 Shibaura
Minato-Ku, Tokyo, JAPAN 108
(81) (3) 37698700
BRAZIL
Texas Instruments Electronicos
Rua Paez Leme, 5247 Andar 05424
Sao Paulo, Brazil
(55) (11) 8156166
JAPAN (Osaka)
Texas Instruments Asia LTD
Osaka Branch
Nissho-Iwai Bldg 5F
258 Imabashi Chuou-Ku
Osaka, Japan 541
(81) (6) 2041881
KOREA
Texas Instruments Korea Ltd.
28th Floor, Trade Tower
159 Samsung-Dong
Kangnam-Ku, Seoul
Trade Center P.O. Box 45
Seoul, Korea 135729
(82) (2) 5512800
SINGAPORE
Texas Instruments Singapore (Pte) Ltd.
Asia Pacific Division
101 Thomson Road #2301
United Square
Singapore 1130
(65) 2519818
FRANCE (Paris)
Texas Instruments France
810 Avenue Morane Saulnier
Bote Postale 67
Velizy Villcoublay Cedex, France
(33) (13) 0701001
SWEDEN
Texas Instruments International
Trade
Corporation
Box 30
S164 93 Kista
Isafjordsgatan 7, Sweden
(8) 7525800
TAIWAN
Texas Instruments Taiwan Ltd.
Taipei Branch
10 Floor, Bank Tower
205 Tung Hua N. Road
Taipei, Taiwan 105
Republic of China
(886) (2) 7139311
ITALY (Milan)
Texas Instruments Italia S.P.A.
Centro Direzionale Colleoni
Palazzo Perseo
Via Paracelso, North 12
20041 Agrate Brianza, MI, Italy
(39) (39) 63221
UNITED KINGDOM
Texas Instruments Ltd.
Regional Technology Center
Manton Lane
Bedford, England MK41 7PA
(44) (234) 270111
Contact
Telephone Number
France/Israel/Turkey/S. Africa
Sylviane Huguet
+33 1 30 70 11 57
Nordic
Marja Kinos
+46 87 52 58 36
United Kingdom
Claudia Dolente
+44 16 04 66 31 10
Benelux
+32 2 745 55 30
Italy/Spain/Portugal
Vanda Tomasi
+39 39 68 4 22 19
Central Europe
Martina Luther
Beatrix Szeleczky
+49 81 61 80 44 86
+36 1 3 19 28 14
17-13
Chapter 18
Topic
Page
18-1
18-2
18-3
PC or Sun / SPARC
C2x simulator
C2x EVM (or C2x DSK)
C2x/C5x optimizing ANSI C compiler package
C2x/C5x assembler/linker
PC or Sun / SPARC
C2xx simulator
C5x EVM (or C5x DSK)
C2xx optimizing ANSI C compiler/assembler/linker package
PC or Sun / SPARC
C3x simulator
C3x EVM (or C3x DSK)
C3x/C4x optimizing ANSI C compiler package
C3x/C4x assembler/linker
PC or Sun / SPARC
C4x simulator
C3x/C4x optimizing ANSI C compiler
C3x/C4x assembler/linker
18-4
PC or Sun / SPARC
C5x simulator
C5x EVM (or C5x DSK)
C2x/C5x optimizing ANSI C compiler package
C2x/C5x assembler/linker
PC or Sun / SPARC
C54x simulator
C54x EVM
C54x optimizing ANSI C compiler/assembler/linker package
PC or Sun / SPARC
C6x simulator
C6x EVM
C6x optimizing ANSI C compiler/assembler/linker package
PC
C8x PC software toolset
- C2xx Workstation
Digital Signal Processing Applications With the TMS320C30 Evaluation Module from Texas Instruments (literature number SPRA021)
- C4x Workstation
18-5
C5x Workstation
18-6
After the DSP lab workstation or DSP research workstation is set up, Texas
Instruments provides continued support to the university in the form of suggestions for DSP projects, up-to-date documentation, TMS320 WWW site and
BBS, and a hotline. Third-party companies offer special workstation packages
and development tools that support the TMS320 digital signal processors.
TMS320 University Program
18-7
For more information about the TMS320 University Program and associated pricing, write or e-mail to:
North America
Texas Instruments Incorporated
P.O. Box 1443, M/S 722
Houston, TX 772511443
Attention: University Program
e-mail: univ@msg.ti.com
Fax: 281-274-2279
North American University Program Web Site:
http://www.ti.com/sc/ university
Product Information:
TI Product Information Center USA . . . . . . . . . . . . . . . . . . 800-336-5236
TMS320 BBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281-274-2323
TMS320 Hotline e-mail address . . . . . . . . . . . . . . . . . . . . . dsph@ti.com
TMS320 Internet BBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ftp.ti.com
Software Registration/Upgrades . . . . . . . . . . . . . . . . . . . . 214-638-0333
Asia/Pacific
Texas Instruments Asia Ltd.
24F, Tun Hua S. Rd
Taipei 106, Taiwan ROC
Attn.: University Program
email: tiasia@ti.com
Fax: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 886-2-377-5624
Product Information:
International . . . . . . . . . . . . . . . . . . . . . . . . . . 866-2-23786800
Domestic . . . . . . . . . . . . Local Accesss Code . . . . . . . . . . . TI Number
Australia . . . . . . . . . . . . . . . 1-800-881-011 . . . . . . . . . . . 800-800-1450
China . . . . . . . . . . . . . . . . . . . . . 10811 . . . . . . . . . . . . . . . 800-800-1450
Hong Kong . . . . . . . . . . . . . . . 800-96-1111 . . . . . . . . . . . . 800-800-1450
Indonesia . . . . . . . . . . . . . . . . 001-801-10 . . . . . . . . . . . . 800-800-1450
Korea . . . . . . . . . . . . . . . . . . 080-551-2804
Malaysia . . . . . . . . . . . . . . . 1-800-800-011 . . . . . . . . . . . 800-800-1450
New Zealand . . . . . . . . . . . . . . 000-911 . . . . . . . . . . . . . . 800-800-1450
Philippines . . . . . . . . . . . . . . . . . 105-11 . . . . . . . . . . . . . . 800-800-1450
Singapore . . . . . . . . . . . . . . . 800-01111-111 . . . . . . . . . . . 800-800-1450
Taiwan . . . . . . . . . . . . . . . . . . 080-006800
Thailand . . . . . . . . . . . . . . . 0019-991-1111 . . . . . . . . . . . 800-800-1450
18-8
Japan
Texas Instruments Japan Ltd.
MS-Shibaura Bldg.
41323
Minato-ku,
Tokyo 108-0023 Japan
Attn.: University Program
e-mail: jup@ti.com
Fax: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813-3457-7344
Product Information
Product Information Center in Japan . . . . . . . . . . . . 0120-81-0026
or call 03-3457-0972-or (Intl). 813-3457-0972
Product Information Center in Japan (Fax) . . . . . . 0120-81-0036
or call 03-3457-1259or (intl.) 813-3457-1259
Texas Instruments Japan Homepage:
http://www.tij.co.jp/dsps
India
Texas Instruments (India) Ltd.
DSP Product Development Centre (India),
Golf View Homes
Wind Tunnel Road
Murugeshpalya
Bangalore 560 017, India
Attention: Sanjeev
Das Mohapatra Manager, University Program
e-mail: sanjeev@india.ti.com
Telephone: . . . . . . . . . . . . . . . . . . . . . . . . . 91-80-5269451 Ext 198
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91-80-5099198
Fax: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91-80-5298519
Product Information:
Literature Response Center . . . . . . . . . . . . . . . . . 852-2-956-7288
Literature Response Center Fax . . . . . . . . . . . . . 852-2-956-2200
Taiwan DSP BBS . . . . . . . . . . . . . . . . . . . . . . . . . . 886-2-376-2592
Korea DSP Hotline . . . . . . . . . . . . . . . . . . . . . . . . . . 82-2-551-2804
Korea DSP Hotline Fax . . . . . . . . . . . . . . . . . . . . . . . 82-2-5512828
Korea DSP BBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82-2-551-2914
Hong Kong DSP Hotline . . . . . . . . . . . . . . . . . . . . . 852-2956-7268
Hong Kong DSP Hotline Fax . . . . . . . . . . . . . . . . . 852-2956-1002
Singapore DSP Hotline Fax . . . . . . . . . . . . . . . . . . . . 65-390-7179
18-9
Mexico
Texas Instruments Mexico
Xola 613, Mod.1-2, col. del Valle,
031000 Mexico DF, Mexico
Attention: University Program
e-mail: s-martini@ti.com
Fax: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525-6399226
Product Information
TI Product Information Center USA . . . . . . . . . . . . . . . . . . 800-336-5236
TMS320 BBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281-274-2323
TMS320 Hotline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . dsph@ti.com
TMS320 Internet BBS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ftp.ti.com
Software Registration/Upgrades . . . . . . . . . . . . . . . . . . . . 214-638-0333
Europe, Middle East and Africa
Texas Instruments Europe
Product information and multilingual support from:
The European Product Information Centre (EPIC)
Attention: The University Programme
810 avenue Morane SaulnierBP 67
78141 Velizy-Villacoublay
Cedex France
e-mail epic@ti.com
Telephone: (English) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-130-70-1165
(French) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33-130-70-64
(Italian) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33-130-70-1167
(German) . . . . . . . . . . . . . . . . . . . . . . . . . . 33-130-70-1168
Fax: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33-130-70-1032
BBS: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33-130-70-199
European University Programme Web Site:
http://www.ti.com/europe/docs/univ/docs/main.htm
18-10
Appendix
AppendixAA
Topic
Page
A.1
A.2
A.3
A.4
A.5
A-1
caused by accident, alteration, improper installation, improper testing, misuse, neglect, or unauthorized repair.
- Texas Instruments does not accept responsibility for customerinstalled
changes, including, but not limited to, customergenerated software in programmable devices. Texas Instruments also reserves the right to refuse to
repair and the right to return, at the customers expense, any product that
cannot be tested to its specifications because of the customers modifications.
Note:
If TI accepts your unit for repair and if you ask for return of the same serialnumbered unit, TI will repair that specific unit. If you do not ask for return of
the specific serial-numbered unit, TI reserves the option to repair your
returned unit or to exchange it for an equivalent unit.
Exchanged products will be replaced with refurbished units that meet TI workmanship standards for refurbished products.
A-2
Nonwarranty
Exchange
Repair
Nonwarranty Exchange
or Repair
/ SystemorUpdates
A-3
Shipping Instructions
The RMA number; note that Texas Instruments will not accept your
equipment without this number
Model number
Serial number
Bill To address
3) Make a copy of the waybill and the Factory Repair and Exchange Questionnaire card for your records in case tracing of your shipment becomes
necessary.
4) Pack the unit carefully and securely, preferably with the packing material
from its original shipping box. If the original packing material is not available,
be sure to use an antistatic packing material where needed to prevent
electrostatic discharge damage to board assemblies, components, and
target cables. Before sealing, enclose the original copies of the waybill and
the Factory Repair and Exchange Questionnaire.
A-4
Shipping Instructions
A-5
A-6
Appendix
AppendixBA
B-1
B-2
Appendix
AppendixCA
ROM Codes
This appendix defines the scope of code-customized DSPs and describes the
procedures for developing prototype and production units. Information on submitting object code and on ordering customer ROM-coded devices is also
included.
Topic
Page
C.1
Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-2
C.2
Procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-3
C.3
C.4
Ordering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-7
ROM Codes
C-1
Scope
C.1 Scope
A repetitive routine (for example, boot code) or an entire system algorithm can
be embedded (programmed) into the on-chip ROM of a TMS320 DSP. With
external memory expansion still available, this reduces the total chip count and
allows for more flexibility in program design. Multiple functions are easily
implemented by a single device, thus enhancing the systems capabilities. In
many instances, embedded ROM code can reduce the bulk and mechanical
size of the end application.
The embedded device, due to its customer-specific code, can only be offered
for sale as such to that customer or the customers formally designated representative. The customers intellectual property (that is, his unique embedded
code level) within the device is protected by a unique part number, as well as
customer copyright indicated by device symbolization.
Code-customized DSP processors offer these advantages:
-
Standard TMS320 development tools are used to develop, test, refine, and
finalize the algorithms. The microprocessor/microcomputer mode (MC/MP for
C3x; MP/MC for C2x, C2xx, C5x, and C54x) is available on all TMS320 DSP
devices (with ROM) when on- or off-chip memory access is required. The microprocessor mode is used to develop, test, and refine a system application.
In this mode of operation, the TMS320 acts as a standard microprocessor by
using external memory only. When the algorithm has been finalized, you may
submit the code to Texas Instruments for masking into the on-chip program
ROM. At that time, the TMS320 becomes a microcomputer that executes a
customized program out of the on-chip ROM. Should the code need changing
or upgrading later, the TMS320 may once again be used in the microprocessor
mode for development to manage the transition to the revised ROM code. This
simplifies the upgrade process by allowing for a rolling (code) change, and reduces the possibility of finished and work-in-process inventory obsolescence,
while affording an orderly continuation of end-product output.
C-2
Procedure
C.2 Procedure
Figure C1 illustrates the procedural flow for TMS320 masked parts. When
ordering, there is a one-time nonrefundable (NRE) charge for mask tooling
and related one-time engineering costs. This charge also covers the costs for
a finite number of supplied prototype units. A minimum production order per
year is required for any masked-ROM device, and assurance of that order is
expected at the time of NRE order acceptance.
Customer submits
custom code
Customer submits
device requirements
Customer submits
new code release form
TI performs
ROM receipt
No
Customer
approves
ROM receipt
Yes
TI orders masks,
manufactures, and
ships prototypes
No
Customer
approves
prototype
Yes
Customer releases
to production
TI ships
production devices
ROM Codes
C-3
Procedure
TMS77C82)
- MS-DOS formatted disk compatible with IBM PC
- Electronic ROM transfer: PC-to-PC via Xmodem, Ymodem, Zmodem,
Procedure
C-5
Code Submittal
C-6
Ordering
C.4 Ordering
Customer embedded-code devices are user-specified, and thus, each is an
unreleased new product until prototype approval and formal release to production. With each initial order of a ROM-coded device, the customer must include
written recognition that he understands the following:
The units to be shipped against this order were assembled, for expediency
purposes, on a prototype (that is, nonproduction qualified) manufacturing
line, the reliability of which is not fully characterized. Therefore, the anticipated reliability of these prototype units cannot be defined.
Sometimes to shorten time to market and upon mutual agreement, the customer may order (and TI will accept) a Risk Production order prior to prototype
approval. Under this noncancellable order arrangement, the customer agrees
to accept delivery of product containing his code as initially verified and TI
agrees to ship to that requirement. The customer is, in effect, agreeing to not
change the originally submitted code for the Risk Production order units. He
must use the term Risk Production in a letter or in a note on the order as a
matter of record.
TI does reserve the right to sell excess customer ROM-coded devices as standards to reduce the financial liability incurred through premature ordered
quantity reductions or overbuilds. Units thus marketed by TI have all original
customer custom symbols or other means of external identification, removed
and replaced by a standard product symbol to mask the custom die presence.
It is standard practice to require a one-time statement from the customer stating that the customer knows and concurs.
Your local TI Field Sales Office and/or TI Authorized Distributor can be of further
assistance on embedded ROM procedure questions and in actually processing
your code.
ROM Codes
C-7
Appendix
AppendixDA
Topic
Page
D.1
Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D-2
D.2
D.3
D.4
D-1
Programming
D.1 Programming
The TMS320 PROM cell is programmed using the same family and service
codes as the TMS27C64 8K 8-bit EPROM uses. The TMS27C64 EPROM
series are ultraviolet-light erasable, electrically programmable read-only memories. They are fabricated using HVCMOS technology. The TMS27C64 is pin
compatible with existing 28-pin ROMs and EPROMs.
The TMS320 PROM family, like the TMS27C64, operates from a single 5-VDC
supply in the read mode. In the programming mode, an additional 12.5-VDC supply is required. All programming signals are TTL level. Memory locations can
be programmed individually, in blocks, or at random. Many of the commercial
EPROM programmers can be used for programming outside of the resident
system.
In block programming, data is loaded into the TMS320 PROM one byte at
a time. From the programmers point of view, data for each memory location
is loaded high byte first, low byte second.
The PROM versions of the TMS320 family do not support the signature
mode available with some EPROM programmers. The signature mode
on these programmers places a high voltage (12.5 VDC) on address pin
A9. The TMS320 PROM cell is not designed for this feature and will be
damaged if subjected to this voltage. A 3.9-k resistor is standard on the
TI programmer socket between address pin A9 and the programmer.
This protects the device from unintentional use of the signature mode.
Each ROM version of a TMS320 DSP device has a reserved area for TI internal use. When developing a ROM code for release on a TI DSP, do not use this
portion of the ROM.
The reserved areas that cannot be used for ROM code development are listed
in Table D1.
D-2
Programming /Fast
Fast and
and SNAP!
SNAP! Pulse
Pulse Programming
Programming
No. of Words
Reserved
for Testing
C51
8K
256
C52
4K
256
C53
16K
256
C56
32K
256
C57
32K
256
C541
28K
128
C545
48K
128
C546
48K
128
Device
TMS320C5x
TMS320C54x
D-3
Version
Version Verification
Verification / PROM Security
D-4
Appendix
AppendixEA
Glossary
A
A0A15: External address pins for data/program memory or I/O devices.
ACC: See accumulator (ACC).
accumulator (ACC): A 32-bit register that stores the results of an arithmetic
logic unit (ALU) operation and provides an input for subsequent
ALU operations. The ACC is accessible in two halves: accumulator
high (ACCH) and accumulator low (ACCL).
active window: The window that is currently selected for moving, sizing,
editing, closing, or some other function.
ADC: See analog-to-digital converter.
address:
Glossary
Glossary
B
benchmark: A test of performance of a computer or peripheral device.
bit-reversed addressing: Addressing in which several bits of an address
are reversed in order to speed processing of algorithms, such as Fourier
transforms.
bit-reversed index addressing: A method of indirect addressing that allows
efficient I/O operations by resequencing the data points in a radix-2
FFT program. The direction of carry propagation in the ARAU is reversed.
boot:
boot loader: A built-in segment of code that transfers code from an external
source to memory at power up.
BOOT port: A port that enables the boot loader. When BOOT is held low, the
processor executes the boot loader program after a hardware reset.
When BOOT is held high. the processor skips execution of the boot loader.
Glossary
E-3
Glossary
C
C: A high-level, general-purpose programming language useful for writing
compilers and operating systems and for programming microprocessors.
C compiler: A program that translates C source statements into assembly
language source statements.
CAD: Computer-aided design.
CALU: Central arithmetic logic unit.
CAM: Computer-aided manufacturing.
carry bit: A bit in the status register ST1 used by the ALU for extended arithmetic operations and accumulator shifts and rotates. The carry bit can
be tested by conditional instructions.
central arithmetic logic unit (CALU): The 32-bit wide, main arithmetic logic
unit that performs arithmetic and logic operations.
central processing unit (CPU): The module that controls and interprets the
machine-language program and its execution.
circular addressing: An addressing mode in which an auxiliary register is
used to cycle through a range of addresses to create a circular buffer in
memory.
CLK register:
Glossary
CLKR: Receive clock input pin. A pin that receives an external clock signal
to clock data from the DR pin in to the serial port receive shift register.
clock modes: Options used by the clock generator to change the internal
CPU clock frequency to a fraction or multiple of the frequency of the input
clock signal.
code:
continuous mode: A synchronous serial port mode in which only one frame
synchronization pulse is necessary to transmit several packets at maximum frequency.
CPU: Central processing unit. The unit that coordinates the functions of a
processor.
CPU cycle: The time it takes the CPU to go through one logic phase (during
which internal values are changed) and one latch phase (during which
the values are held constant).
current auxiliary register: The auxiliary register pointed to by the auxiliary
register pointer (ARP).
Glossary
E-5
Glossary
D
D0D31: External data-bus pins that transfer data between the processor
and external data/program memory or I/O devices. See also LD0LD31.
DAB: See direct-address bus (DAB).
DARAM: Dual-access RAM. Memory that can be accessed twice in a single
clock cycle.
data-address generation logic: Logic circuitry that generates the addresses
for data-memory reads and writes. This circuitry can generate one address
per machine cycle. See also program-address generation logic.
data bus: A group of connections used to route data.
data-display windows: Windows for observing and modifying various
types of data. This category includes the MEMORY, CPU, DISP, and
WATCH windows.
data memory: A memory region used for storing and manipulating data.
data-page pointer (DP): A field in the status register that specifies what is
currently selected for direct address generation.
data-read address bus: A 16bit bus that provides the address for data
read operations and is driven by the C2cLP CPU.
data-write bus: A 16-bit bus that provides data for a data memory write and
is driven by the C2xLP CPU.
data-write address bus: A 16-bit bus that provides the address for data
write operations and is driven by the C2xLP CPU.
decode phase: The phase of the pipeline in which the instruction is decoded
(identified).
debugger: A window-oriented software interface that helps to debug C2xx
programs running on a C2xx emulator or simulator.
DIE: See DMA interrupt-enable register.
DIM: Delta-interrupt mask bit. Bit 9 of the ASPCR, which enables and disables
delta-detect. The delta-detect function allows or prevents interrupts from
being generated by changes on the I/O pins.
direct address bus (DAB): A 16-bit bus that provides the data address
used by the central processing unit (CPU).
E-6
Glossary
direct memory access (DMA): A mode where a device other than the host
processor contends for, and receives, mastership of the memory bus so
that data transfers may take place independent of the host.
directives: Special-purpose commands that control the actions and functions
of a software tool (as opposed to assembly language instructions, which
control the actions of a device).
disassembly window: A window that displays the disassembly of memory
contents.
DMA: See direct memory access (DMA).
DMA coprocessor: A peripheral that transfers the contents of memory locations independently of the processor (except for initialization).
DMA-interrupt enable register (DIE): A register (in the CPU register file)
that controls to which interrupts the DMA coprocessor responds.
DP: Data-page pointer. A field in the status register that specifies what is currently selected for direct address generation
DR bit: Data ready indicator for the receiver. A bit that is automatically reset
to zero when the receive register is read, or when the device is reset.
DR pin: Serial-data-receive pin. A pin that receives serial data into the serial
port receive shift register.
DRAB: Data-read address bus. A 16-bit bus that provides data for a datamemory read and is driven by the memories or the logic interface.
DRAM: Dynamic random-access memory.
dual-access RAM (DARAM): Memory space that can be read from and
written to in the same clock cycle.
DWAB: Data-write address bus. A 16-bit bus that provides the address for
data-write operations and is driven by the C2xLP CPU.
DWEB: Data-write bus. A 16-bit bus that provides data for a data-memory
write and is driven by the C2xLP CPU.
Glossary
E-7
Glossary
E
EMI: Electromagnetic interference.
emulator: A device that is built to work like another.
emurst: A utility that reads the emulator.
EVM: Evaluation module.
EVRC: Enhanced variable-rate coder.
expression: A statement that describes data and processing as part of a program. The statement usually includes a constant, a symbol, or a series of
constants and symbols separated by arithmetic operators.
extended-precision floating-point format: A 40-bit representation of a
floating-point number with a 32-bit mantissa and an 8-bit exponent.
extended-precision register: A 40-bit register used primarily for extendedprecision floating-point calculations. Floating-point operations use bits
390 of an extended-precision register. Integer operations, however, use
only bits 310.
external interrupt: A hardware interrupt triggered by a pin.
external symbol: A symbol that is used in the current program module but
is defined in a different program module.
F
fast Fourier transform (FFT): An efficient method of computing the discrete
Fourier transform, which transforms functions between the time domain
and frequency domain. The time-to-frequency domain is called the forward transform, and the frequency-to-time domain is called the inverse
transformation.
FFT: See fast Fourier transform (FFT).
FIFO buffer: First-in, first-out buffer. A portion of memory in which data is
stored and then retrieved in the same order in which it was stored. Thus,
the first word stored in this buffer is retrieved first.
FIR: Finite impulse response.
FMV: Full motion video.
framing error: An error that occurs when a data character received by the
asynchronous serial port does not have a valid stop bit.
E-8
Glossary
G
general-purpose input/output pins: Ports that can be used to supply input
signals from an external device or output signals to an external device.
These pins are not linked to specific uses; rather, they provide input or
output signals for a variety of purposes.
global-data memory space: One of four memory spaces. The global-data
memory space can either share data with other processors within the
system or serve as additional data-memory space.
global-memory allocation register (GREG): An 8-bit memory-mapped
register that specifies the size of the global memory space. At reset, the
GREG is cleared.
GP: General purpose.
GREG: See global memory allocation register (GREG).
GSM: Global System for Mobile Communications.
H
hardware interrupt: An interrupt triggered through physical connections
with on-chip peripherals or external devices.
hex conversion utility: A program which accepts COFF files and converts
them into one of several standard ASCII hexadecimal formats suitable
for loading into an EPROM programmer.
hardware interrupt: An interrupt triggered through physical connections
with on-chip peripherals or external devices.
high-level language debugging: The ability of a compiler to retain symbolic
and high-level language information (such as type and function definitions)
so that a debugging tool can use this information.
host-port interface (HPI): An on-chip module consisting of an 8-bit parallel
port that interfaces a host processor to the TMS320C57. The HPI has
two modes of operation, shared-access mode (SAM) and host-only
mode (HOM). Status and control of the HPI is specified in the HPI control
register (HPIC). See also shared-access mode (SAM) and host-only
mode (HOM).
HPI: See host port interface (HPI).
Glossary
E-9
Glossary
I
I/O switches: Hardware switches on the emulator or EVM board that identify
the PC I/O memory space used for emulatordebugger or EVM-debugger
communications.
IACK: Interrupt acknowledge signal. An output signal that indicates that an
interrupt has been received and that the program counter is fetching the
interrupt vector that will force the processor into an interrupt service
routine.
IFR: See interrupt flag register (IFR).
IFR:
Glossary
instruction: The basic unit of programming that causes the execution of one
operation; it consists of an opcode and operands along with optional
labels and comments.
internal interrupt: A hardware interrupt caused by an on-chip peripheral.
internal interrupt-enable register: A register (in the CPU register file) that
determines whether or not the CPU will respond to interrupts from the
communication ports, the timers, and the DMA coprocessor.
interrupt: A signal sent to the CPU that (when not masked) forces the CPU
into a subroutine called an interrupt service routine. This signal can be
triggered by an external device, an on-chip peripheral, or an instruction
(INTR, NMI, or TRAP).
interrupt acknowledge (IACK): A signal that indicates that an interrupt has
been received, and that the program counter is fetching the interrupt vector
location.
interrupt-flag register (IFR): A 16-bit memory-mapped register used to flag
several hardware and software interrupts. The IFR may be read to identify
pending interrupts and written to clear selected interrupts.
interrupt mask register (IMR): A 16-bit memory-mapped register used to
mask several external and internal interrupts. You can read from the IMR
to determine which interrupts are masked/unmasked. A write to any IMR
bit enables a corresponding interrupt (when INTM = 0).
interrupt service routine (ISR): A module of code that is executed in
response to a hardware or software interrupt.
IR: Instruction register. A 16-bit register that contains the instruction being
executed.
ISA: Industry Standard Architecture. A subset of the EISA standard.
ISR: Interrupt service routine. A module of code that is executed in response
to a hardware or software interrupt.
J
JTAG: Joint Test Action Group. A group of 200 members that designed a
testability standard sanctioned by IEEE (IEEE Standard 1149.1).
Glossary
E-11
Glossary
L
LA0LA30: External address pins for data/program memory or I/O devices.
These pins are on the local bus. See also A0A30.
LD0LD31: External data bus pins that transfer data between the processor
and external data/program memory or I/O devices. See also D0D31.
linker: A software tool that combines object files to form an object module
that can be allocated into TMS320C6200 system memory and executed
by the device.
listing file: An output file, created by the assembler, that lists source statements, their line numbers, and their effects on the SPC.
M
MAC: Multiply and accumulate.
macro: A user-defined routine that can be used as an instruction.
mantissa: A component of a floating-point number consisting of a fraction
and a sign bit. The mantissa represents a normalized fraction whose
binary point is shifted by the exponent.
map file: An output file, created by the linker, that shows the memory
configuration, section composition, and section allocation, as well as
symbols and the addresses at which they were defined.
maskable interrupt: A hardware interrupt that can be enabled or disabled
through software.
master clock output signal (CLKOUT1): The output signal of the on-chip
clock generator. The CLKOUT1 high pulse signifies the CPUs logic
phrase (when internal values are changed), while the CLKOUT1 low
pulse signifies the CPUs latch phase (when the values are held
constant).
memory map: A map of target system memory space, which is partitioned
into functional blocks.
memory-mapped register: One of the on-chip registers mapped to addresses
in memory. Some memory-mapped registers are mapped to data memory,
and some are mapped to input/output memory.
MFLOPS: Million floating-point operations per second. A measure of floatingpoint processor speed that counts of the number of floating-point operations made per second.
E-12
Glossary
N
next auxiliary register: The register that will be pointed to by the auxiliary
register pointer (ARP) when an instruction that modifies ARP is finished
executing.
nonmaskable interrupt (NMI): A hardware interrupt that uses the same
logic as the maskable interrupts but cannot be masked.
NTSC: National Television Standards Committee.
O
object file: A file that has been assembled or linked and contains machinelanguage object code.
off-chip:
on-chip:
opcode: operation code. In most cases, the first byte of the machine code
that describes the type of operation and combination of operands to the
central processing unit (CPU).
operand: The part of an instruction that designates where the central processing unit (CPU) will fetch or store data. The operand consists of the
arguments, or parameters, of an assembly language instruction, assembler directive, or macro directive.
operands: The arguments, or parameters, of an assembly language
instruction, assembler directive, or macro directive.
options: Command parameters that allow you to request additional or
specific functions when you invoke a software tool.
output data-scaling shifter: 32- to 16- bit barrel left shifter. Shifts the 32-bit
accumulator output from 0 to 7 bits left for quantization management,
and outputs either the 16-bit high or low half of the shifted 32bit data to
the data write bus.
Glossary
E-13
Glossary
output module: A linked, executable object file that can be downloaded and
executed on a target system.
overflow: A condition in which the result of an arithmetic operation exceeds
the capacity of the register used to hold that result.
overflow mode: A condition in which the result of an arithmetic operation
exceeds the capacity of the register used to hold that result.
P
PAB: Program-address bus. A 16-bit bus that provides the address for program memory reads and writes.
PAR: Program-address register. A register that holds the address currently
being driven on the program address bus for as many cycles as it takes
to complete all memory operations scheduled for the current machine
cycle.
parallel logic unit (PLU): A 16-bit logic unit that executes logic operations
from either long immediate operands or the contents of the dynamic bit
manipulation register (DBMR) directly upon data locations without affecting
the contents of the accumulator (ACC) or product register (PREG).
PC: Personal computer or program counter, depending on the context and
use in this book: 1) In installation instructions or information relating to
hardware and boards, PC means personal computer (as in IBM PC).
2) In general debugger and program-related information, PC means
program counter, which is the register that identifies the current statement in a program.
PDM: Parallel debug manager. A program used for creating and controlling
multiple debuggers for the purpose of debugging code in a parallelprocessing environment.
peripheral bus: A bus that is used by the CPU to communicate the DMA
coprocessor, communication ports, and timers.
pipeline: A method of executing instructions in an assembly-line fashion.
pipelining: A design technique for reducing the effective propagation delay
per instruction operation by partitioning the operation into a series of four
independent stages, each of which performs a portion of the operation.
PLL: Phase-locked loop.
PLU: See parallel logic unit (PLU).
E-14
Glossary
E-15
Glossary
program counter: A register that contains the address of the next instruction to be executed.
program-read data bus (PRDB): A 16-bit bus that provides data for program
memory reads and is driven by the memories or the logic interface.
P-SCALER: Product shifter. A 0-, 1-, or 4-bit left shifter that removes extra
signed bits (gained in the multiply operation) when fixed-point arithmetic is
used; or a 6-bit right shifter that scales the products down to avoid overflow
in the accumulation process. The shift mode is specified by the product shift
mode (PM) bits.
pulse code modulation (PCM): A technique for digitizing speech by sampling the sound waves and converting each sample into a binary number.
R
READY: Data ready input. A memory control signal indicating that an external
device is prepared for a bus transaction to be completed.
register: A group of bits used for temporarily holding data or for controlling
or specifying the status of a device.
repeat counter (RPTC): A 16-bit register that counts the number of times
a single instruction is executed.
repeat counter register: A register (in the CPU register file) that specifies
the number of times minus one that a block of code is to be repeated
when a block repeat is performed.
repeat mode: A zero-overhead method for repeating the execution of a
block of code.
reset: A means to bring the central processing unit (CPU) to a known state
by setting the registers and control bits to predetermined values and
signaling execution to start at a specified address.
RSR: Receive shift register. One of two registers that perform shift operations
in and out of the serial port. The other register is the transmit shift register
(XSR).
run address: The address where a section runs.
E-16
Glossary
S
SAM: Shared-access mode.
SARAM: Single-access RAM. Memory thatcan be read from or written to
only in a single clock cycle.
scalar type: A C type in which the variable in a single variable, not composed
of other variables.
SDTR: Synchronous serial port transmit/receive register. The SDTR is an
I/O-mapped read/write register that sends data to the transmit FIFO buffer,
and extracts data from the receive FIFO buffer.
serial-port-control register (SPC): A 16-bit memory-mapped register that
contains status and control bits for the serial-port interface. The SPC is
identical to the time-division multiplexed serial-port control register
(TSPC), except that bit 0 is reserved for the TDM bit.
serial-port interface: An on-chip full-duplex serial port interface that provides
direct serial communication to serial devices with a minimum of external
hardware, such as codecs and serial analog-to-digital (A/D) converters.
Status and control of the serial port is specified in the serial port control
register (SPC).
simulator: A development tool that simulates the operation of the device
for executing and debugging applications programs by using the device
debugger.
single-access RAM (SARAM): Memory space that only can be read from
or written to in a single clock cycle.
single-precision floating-point format: A 32-bit representation of a floatingpoint number with a 24-bit mantissa and an 8-bit exponent.
single-step: A form of program execution that allows you to see the effects
of each statement. The program is executed statement by statement; the
debugger pauses after each statement to update the data-display windows.
software interrupt: An interrupt caused by the execution of an INTR, NMI,
or TRAP instruction.
source file: A file that contains C code or assembly language code that will
be compiled or assembled to form an object file.
ST: See status register.
Glossary
E-17
Glossary
ST0/ST1: Two 16-bit registers that contain status and control bits.
stack: A block of memory used for storing return addresses for subroutines
and interrupt service routines or for storing data. The C2xLP stack is
16 bits wide and eight levels deep.
status register: A register in the CPU register file that contains global
information related to the CPU.
string table: A table that stores symbol names that are longer than eight
characters (symbol names of eight characters or longer cannot be stored
in the symbol table; instead, they are stored in the string table). The name
portion of the symbols entry points to the location of the string in the
string table.
symbol: A string of alphanumeric characters that represents an address or
a value.
symbolic debugging: The ability of a software tool to retain symbolic information so that it can be used by a debugging tool such as a simulator or
an emulator.
symbol table: A portion of a COFF object file that contains information
about the symbols that are defined and used by the file.
synchronous serial port control register (SSPCR): The 16-bit memorymapped SSPCR controls the operation of the synchronous serial port.
synchronous serial port transmit/receive register (SDTR): Transmit
interrupt bit. This maskable bit (bit 4) of the interrupt mask register is tied
to a transmit interrupt for the synchronous serial port.
synchronous serial port receive interrupt: Receive-interrupt pin. Bit 3 of
the interrupt mask register is tied to the receive interrupt for the synchronous
serial port.
T
T320C2xLP: Texas Instruments cDSP core.
TCR: Timer control register. A 16-bit register that controls the operation of
the on-chip timer.
TEC: Texas Instruments embedded gate array. A gate array embedded with
a hardware macro.
TGC: Texas Instruments gate array.
E-18
Glossary
U
UART: Universal asynchronous receiver/transmitter. Used as another name
for the asynchronous serial port.
URST: Reset asychronous serial port bit. Bit 13 of the ASPCR resets the
asynchronous port.
V
VGA: Video Graphics Array. An industry standard for video cards.
Glossary
E-19
Glossary
W
wait state: A period of time that the CPU must wait for external program,
data, or I/O memory to respond when reading from or writing to that
external memory. The CPU waits one extra cycle for every wait state.
wait-state generator: A program that can be modified to generate a limited
number of wait states for a given off-chip memory space (lower program,
upper program, data, or I/O).
wait-state generator-control register (WSGR): This register, which is
mapped to I/O memory, controls the wait-state generator.
WATCH window: A window that displays the values of selected expressions,
symbols, addresses, and registers.
WD: Watchdog.
word: A 16-bit addressable location in target memory.
word: A word, as defined in this document, consists of a sequence of
16 adjacent bits (two bytes).
WSGR: Wait-state generator-control register. This register, which is mapped
to I/O memory, control the wait-state generator.
WWW: World Wide Web
X
XDS: Extended development system
E-20
Appendix
AppendixFA
B
BGA: ball grid array
BOPS: billion operations per second
BRI: basic rate service (of ISON)
BSP: buffered serial port
BSR: bank-select register
BTT: breakpoint, trace, and time-stamping
C
CAD: computer-aided design
CALU: central arithmetic logic unit
CAM: computer-aided manufacturing
CBCR: circular buffer control register
CD: computer disk
cDSP: customizable digital signal processor
CELP: code excited linear prediction
codec:
F-2
D
D/A: digital-to-analog
DAB: direct-address bus
DAC: digital-to-analog converter
DASP: Dallas Application-Specific Products
DMOV: data move
DARAM: dual-access RAM
DBMR: dynamic bit-manipulation register
DIE: DMA interrupt-enable register
DIM: delta-interrupt mask bit
DIP: dual in-line package
DMA: direct memory access
DP: data-page pointer
DRAB: data-read address bus
DRAM: dynamic random-access memory
DSI: digital speech interpolation
DSK: DSP starter kit
DSP: digital signal processor
DTAD: digital tapeless answering device
DTMF:
E
EEPROM: electrically-erasable programmable read-only memory
EMI: electromagnetic interference
EPK: emulator porting kit
EPROM: erasable programmable read-only memory
EV: event manager
EVM: evaluation module
EVRC: enhanced variable-rate coder
Acronyms and Abbreviations
F-3
F
FIFO:
first-in, first-out
full-motion video
G
GEL: GO DSP Corporations extension language
GP: general purpose
GPT CON: general-purpose timer control register
GREG: global memory allocation register
GSM: global system for mobile communications
H
HDD: hard disk drive
HLL: high-level language
HOM: host-only mode
HPI: host-port interface
I
ICM: incoming message
IDE: integrated development environment
IFR: interrupt-flag register
I/O: input/output
IIE: internal interrupt enable
IIR: infinite impulse response
IMR: interrupt-mark register
F-4
J
JLCC: J-leaded chip carrier
JPEG: Joint Photographic Experts Group
JTAG: Joint Test Action Group (IEEE Standard 1149.1)
L
LAN: local area network
LCCC: leadless ceramic chip carrier
M
MAC: multiply and accumulate
MACD: multiply, accumulate, and data move
MCU: microcontroller unit
MFLOPS: million floating-point operations per second
MIPS: million instructions per second
MP: master processor
MPEG: Moving Picture Expert Group
MPY:
multiply
MUX: multiplexor
MVP: multimedia video processor
N
NCRF: New Code Release Form
NRZ: Non-return to zero
NTSC: National Television Standards Committee
Acronyms and Abbreviations
F-5
O
OCR: optical character recognition
OGM: out-going message
OTP: one-time programmable
P
PAB: program-address bus
PAL: phase alternate line
PAR: program-address register
PCB: printed circuit board
PC: personal computer
PCI: peripheral component interconnect
PCM: pulse code modulation
PCMCIA: Personal Computer Memory Card International Association
PCS: personal communications system
PDA: personal digital assistant
PDC: personal digital cellular
PDM: parallel debug manager
PGA: pin grid array
PIC: Product Information Center
PLCC: plastic J-leaded chip carrier
PLL: phase-locked loop
PLU: parallel logic unit
PM: processor module
PMA: program memory address
PMST: processor mode status register
F-6
R
RAM: random-access memory
ROM: read only memory
RPTC: repeat counter
RSR: receive shift register
RTI: real-time interrupt
S
S/N: signal-to-noise
SAM: shared access mode
SARAM: single-access RAM
SCI: serial communications interface; serial control interface
SCSI: small computer system interface
SDB: software development board
SDRAM: synchronous dynamic random-access memory
SDTR: synchronous serial-port transmit/receive register
SNR: signal-to-noise ratio
Acronyms and Abbreviations
F-7
T
TBC: test bus controller
TC: transfer controller
TCR: timer-control register
TDM: time division multiplex
TEC: Texas Instruments embedded gate array
TI:
Texas Instruments
TI & ME: DSP solutions web site individual page (i.e., Texas Instruments & Me)
TQFP: thin quad flat pack
TR: temporary register
TSPC: time-division-multiplexed serial-port control register
TTL:
transistor-to-transistor logic
U
UART: universal asynchronous receiver/transmitter
URST: reset asynchronous serial-port bit
F-8
V
VC: video controller
VLSI: very-large-scale integration
VRAM: video read-access memory
W
WD: watchdog
WDCR: watchdog control register
WWW: World Wide Web
X
XDS: extended development system
XSR: transmit shift register
F-9
Index
A
A/D converter
definition E-1
A/D-D/A conversion
figure 1-3
A0A15 pin E-1
accumulator (ACC) E-1
active window
definition E-1
adapter sockets D-1
adaptive filter design (TMS32020) 15-12
address
bus pins E-1
address pins
external E-12
addressing modes 13-20, E-1
algebraic reordering 13-7
aliasing
definition E-1
ALU E-1
See also arithmetic logic unit
analog interface circuits (AICs) 11-17
analog-to-digital converter (ADC) module 4-27
figure 4-28
analog-to-digital converter (ADC)
choosing 11-5
ANSI C
compiler 13-2
definition E-1
answering machines 1-23
application reports 15-4
table 15-4 to 15-9
application(s)
development support 15-14
developmental cycle 1-34
application(s) (continued)
general-purpose 15-15
speech/voice 15-16
textbooks 15-11
architecture
central processing unit (CPU) E-4
figure 1-8
archive libraries
defined E-2
archiver 13-26
defined E-2
arithmetic logic unit (ALU)
definition E-2
arranging variables
local frame, example 13-17
assembler
defined E-2
TMS320 13-25
assembly
mode
definition E-2
source debugger 14-2
ATM switch
figure 1-30
audio
applications, multimedia 1-17
autoincrement addressing modes 13-20
autoinitialization
defined E-3
auxiliary
register (AR) E-3
register pointer (ARP)
definition E-3
registers
definition E-3
auxiliary-register arithmetic unit (ARAU)
definition E-3
AVxxx
commercial devices 2-20
Index-1
B
BBS. See Bulletin Board Service
BC57S 7-23
block diagram 7-24
benchmarking
definition E-3
bibliography (technical articles) 15-14
bit-reversed addressing
definition E-3
breakpoints
definition E-4
BSP E-4
Bulletin Board Service 15-18
bulletins 15-3
burst mode (serial port) E-4
C
C compiler
defined E-4
TMS320 13-2
C source debugger 14-2
C203 3-10
C204 3-11 to 3-12
block diagram 3-11
C206 3-13
C206/LC206/F206
block diagram 3-15, 3-17
C209 3-18 to 3-19
block diagram 3-19
C240/F240 4-7
block diagram 4-9
event manager (EV) module 4-15
capture unit 4-17
compare units 4-16
compare/PWM waveform generation 4-16
compare/PWMs characteristics 4-16
general purpose (GP) timers 4-15
quadrature encoder pulse (QEP) circuit 4-17
simple compares 4-16
peripheral overview 4-8
C241/F241 4-10
block diagram 4-10
C242 4-11
block diagram 4-11
Index-2
C24x
current device configurations 4-6
event manager block diagram 4-18
memory bus 4-13, 4-14
program control 4-4
tools 4-32
C2xx
asynchronous serial port 3-6
boot loader 3-7
commercial devices 2-11
enhanced synchronous serial port 3-5
introduction 3-2
key features 3-3
memory bus 3-8, 3-9
simulator 14-9
synchronous serial port 3-4
tools 3-20
C30
block diagram 5-14
features 5-13
C31
block diagram 5-16
features 5-15
C32
block diagram 5-18
features 5-17
C3x
commercial devices 2-12
CPU 5-6, 5-7
DMA controller 5-10, 5-11
introduction 5-2
key features 5-3
memory 5-8, 5-9
simulator 14-9
sum of products example 5-12
tools 5-18
C40
block diagram 6-12
features 6-11
PPDS block diagram 14-21
PPDS board 14-20
C44
block diagram 6-14
features 6-13
C4x
commercial devices 2-13
communication ports 6-7
figure 6-8
CPU 6-3
figure 6-4
DMA coprocessor 6-9, 6-10
introduction 6-2
key features 6-2
memory and bus structure 6-5
figure 6-6
parallel-processing development system 14-18
simulator 14-10
tools 6-14
C50/LC50 7-14
block diagram 7-15
C51/LC51 7-16
block diagram 7-17
C52/LC52 7-18
block diagram 7-18
C53/LC53
block diagram 7-19
C53S/LC53S
block diagram 7-20
C541 8-4
block diagram 8-4
C542/LC542/LC543 8-5
C542/LC542
block diagram 8-5
C54x
commercial devices 2-18
CPU key features 8-3
introduction 8-2
memory 4-4
simulator 14-10
tools 8-10
C5x
circular addressing 7-12
figure 7-12
commercial devices 2-14 to 2-26
interrupts 7-11
figure 7-11
introduction 7-2
key features 7-3
multiplier/ALU features 7-8
figure 7-9
parallel logic unit 7-10
figure 7-10
simulator 14-10
tools 7-24
C6201
internal memory 9-8
peripherals 9-9
direct memory access 9-9
external memory interface 9-9
host port interface 9-10
multichannel buffered serial port 9-11
power-down logic 9-11
timers 9-11
C62x
CPU core with peripherals 9-4
key features 9-3
C6701
internal memory 9-8
peripherals 9-9
direct memory access 9-9
external memory interface 9-9
host port interface 9-10
multichannel buffered serial port 9-11
power-down logic 9-11
timers 9-11
C67x
key features 9-5
C6x
commercial devices 2-19
compiler
optimizations 13-23
CPU 9-7
dynamic profiler 14-6
evaluation module 14-18
introduction 9-2
simulator 14-11
tools 9-12
C80
block diagram 10-15
features 10-14
video controller 10-16
figure 10-17
C82
block diagram 10-19
features 10-18
C8x
commercial devices 2-19
introduction 10-2
key features 10-3
master processor 10-4
figure 10-5
floating-point unit 10-6, 10-7
parallel processing advanced DSPs 10-8
figure 10-9
Index-3
C8x (continued)
PP data unit 10-10
figure 10-11
simulator 14-11
tools 10-19
transfer controller 10-12
figure 10-13
cDSP
attributes 12-2
benefits 12-3
key features 12-4
peripherals 12-4
central arithmetic logic unit (CALU) E-4
central processing unit (CPU) E-4
Central Registration office 17-9
circular addressing
definition E-4
clock modes E-5
code (ROM or EPROM) C-1
code composer
features 14-26
integrated development environment
(IDE) 14-26
using 14-28
code development support tools
table 2-27 to 2-30
code profiler
key features 14-5
code submittal C-6
code-generation tools 13-1 to 13-26
assembler 13-25
C compiler 13-2
linker 13-25
macro assembler 13-25
COFF 13-25, 13-26
command files
defined E-5
comments
defined E-5
common object file format
defined E-5
compiler
addressing modes 13-20
algebraic reordering 13-7
branch optimizations 13-12
C6x 13-5
code motion 13-12
conditional instructions 13-22
Index-4
compiler (continued)
constant folding 13-7
control-flow 13-12
copy propagation 13-8
data flow optimizations 13-8
delayed instructions 13-21
disambiguation 13-7
fixed-point 13-3, 13-4
function calls 13-12
inline expansion 13-12
loop induction variable optimizations 13-12
loop rotation 13-12
loop unrolling 13-22
loop-invariant code motion 13-12
multiprocessing 13-5
parallel instructions 13-22
redundant elimination 13-8
register allocation 13-20
register targeting 13-19
register tracking 13-19
register variables
fixed-point 13-18
floating-point 13-18
repeat blocks 13-21
rotation 13-12
strength reduction 13-12
subexpression elimination 13-8
symbolic simplification 13-7
TMS320 optimizing ANSI C 13-2
unrolling 13-22
conditional instructions 13-22
constant folding 13-7
constants
defined E-5
control applications 1-26, 15-14
motor control 1-26
controller area network (CAN) module 4-23 to 4-26
figure 4-26
copy propagation 13-8
and control-flow simplification
floating-point compilers 13-11
CPU
C24x 4-3
C2xx 3-2
C3x 5-6
C4x 6-3
C54x 8-3
C5x 7-3
C62X 9-3
C67X 9-5
CPU (continued)
C8x 10-4
definition E-5
customer
approves prototype C-5
approves ROM receipt C-5
design center
international 17-12
North America 17-11
release to production C-5
required information C-4
D
D0-D31
definition E-6
DAB E-6
See also direct address bus (DAB)
DARAM E-6
data
bus E-6
memory E-6
optimizations
for fixed-point compilers 13-9
for floating-point compilers 13-10
sheets 15-3
data-address generation logic
definition E-6
debug and system integration tools
debugger 14-2
DSP Starter Kit (DSK) 14-12
emulators 14-22
evaluation and system debug 14-12
evaluation module (EVM) 14-14
C3x 14-14
C54x 14-17
C5x 14-16
simulator 14-7
debugger 14-2
customized display 14-3
features 14-4
decode phase
definition E-6
delay calls
fixed-point 13-15
delay returns
fixed-point 13-15
delayed instructions 13-21
Index-5
DSP (continued)
architecture
Harvard 1-5
overview 1-4
Von Neumann 1-4
articles 15-14, 15-16
audio applications 1-17
multimedia 1-17
Bulletin Board Services (BBS) 15-18
design workshops 17-2
Designers Notebook Pages 15-8
Details on Signal Processing (newsletter) 15-17
Hotline 15-20
overview 2-6
research lab 18-7
seminars 17-1
solutions 1-9, 11-2 to 11-4
mixed-signal products 11-4
solutions applications 15-15
support 1-32
system
features 1-5
figure 1-5
technology 1-3, 15-14
textbooks 15-11, 15-12, 18-4
tools/development support 15-14
types
fixed-point 1-6
floating-point 1-7
university lab 18-4
DSP Starter Kit (DSK)
introduction 14-12
DSP-based motor control
advantages 1-27
DSPs
features 1-2
for ISDN infrastructure
figure 1-14
for multimedia
table 1-18
high-end metering 1-28
high-speed communications 1-18
dual-mode
modem 1-15
ISDN 1-16
dual-access RAM (DARAM) E-7
dynamic profiler 14-6
Index-6
E
education 15-11
electricity meter
figure 1-29
elimination of unnecessary LDPK instructions
example 13-18
emulator
scan-based 14-22
XDS tools 14-22
EPROM
fast programming D-3
introduction D-1
programming D-2
security D-4
SNAP! Pulse programming D-3
version verification D-4
evaluation module (EVM)
introduction 14-14
TMS320C3x 14-14
TMS320C54x 14-17
TMS320C5x 14-16
evaluation module (EVM)
description 14-18
exchanges A-1
expressions
defined E-8
extended-precision
floating-point format E-8
register E-8
external
interrupt E-8
symbols E-8
F
F206 3-16 to 3-17
F243 4-12
block diagram 4-12
factory exchanges/repairs
cost A-6
introduction A-1
nonwarranty A-3
shipping instructions A-4
updated systems A-3
warranty A-2
Factory Repair and Exchange Questionnaire A-4
Factory Repair Center A-4
G
general-purpose applications 15-15
global data memory E-9
global memory allocation register (GREG) E-9
graphics/imagery applications 15-15
GREG E-9
H
hard disk drive applications 15-15
Harvard architecture 1-5, 8-1
hex conversion utility
defined E-9
high-speed communications
DSPs 1-18
I
IACK
definition E-10
IFR E-10
See also interrupt flag register (IFR)
IIOF flag register (IIF)
definition E-10
index registers
definition E-10
inline expansion 13-12
inline function expansion
floating-point compilers 13-14
instructions
conditional 13-22
delayed 13-21
parallel 13-22
repeat blocks 13-21
integrated
services digital network (ISDN) 1-13
internal
buses
C3x 5-8
interrupt enable register E-11
interrupt E-11
acknowledge (IACK)
definition E-11
flag register (IFR) E-11
mask register (IMR) E-11
service routine (ISR) E-11
interrupts
hardware E-9
ISDN modems 1-15
ISR. See interrupt service routine (ISR)
L
LA0-LA30
definition E-12
laser printers and copiers 1-27
LC206 3-14 to 3-15
LC545/LC546 8-6
block diagram 8-6
Index-7
LC548 8-7
block diagram 8-7
LC549/VC549 8-8 to 8-9
block diagram 8-9
LC56 7-21
block diagram 7-21
LC56/LC57/BC57S buffered serial port 7-7
figure 7-7
LC57 7-22
block diagram 7-22
LC57/BC57S host port interface 7-5
figure 7-6
LD0-LD31
definition E-12
linker
defined E-12
TMS320 13-25
listing
file, defined E-12
literature 15-3
loop
code motion 13-12
induction variable optimizations 13-12
rotation 13-12
unrolling 13-22
example 13-22
M
macro
archiver 13-26
defined E-12
library 13-25
object format converter 13-26
mantissa
definition E-12
map file
defined E-12
maskable interrupt
definition E-12
memory
map, defined E-12
memory-mapped register
definition E-12
MFLOPS
definition E-12
Index-8
microcomputer mode
definition E-13
microprocessor mode
definition E-13
military applications 15-15
MIPS
definition E-13
modem 15-19
modem tasks
figure 1-12
module
analog-to-digital-converter 4-27
controller area network 4-23 to 4-26
flash EEPROM 4-31
serial communications interface (SCI) 4-21
serial peripheral interface (SPI) 4-19
MSLP 1394 1-20
multimedia
applications 15-15
opportunities 1-20
speech processing 1-21
multiplier
definition E-13
multiprocessing compiler optimizations 13-23
N
naming conventions 2-4
networking controllers 1-29
newsletter 15-17
N-ISDN to ATM switch
figure 1-31
nonmaskable interrupt (NMI)
definition E-13
nonwarranty A-3
O
object file
defined E-13
object format converter 13-26
off-chip
defined E-13
on-chip
defined E-13
opcode
See also assembler
defined E-13
operands
defined E-13
optimizations
branch 13-12
data flow 13-8
fixed-point 13-6, 13-7, 13-14
floating-point 13-6, 13-7, 13-18
general-purpose 13-7
loop induction variable 13-12
optimizing ANSI C
compiler, optimizations 13-6
options
defined E-13
ordering C-7
output
module, defined E-14
P
parallel instructions 13-22
parallel logic unit (PLU) E-14
parallel processing development system 14-18
peripheral bus
definition E-14
pipeline 1-6
defined E-14
definition E-14
PLU E-14
See also parallel logic unit (PLU)
power dissipation applications 15-16
PREG E-15
prescaling shifter E-15
preview bulletins 15-3
procedure C-3
product
bulletins 15-3
integration chart 1-36
register (PREG) E-15
program
controller E-15
counter E-16
license agreement B-1 to B-2
programming
EPROM D-2
fast D-3
SNAP! Pulse D-3
protocols 15-19
prototypes C-5
p-scaler E-16
pulse code modulation mode (PCM) bit E-16
R
real-time algorithms 1-6
redundant elimination 13-8
reference guides 15-3
Regional Technology Center
locations 17-11
services 17-10
register
allocation 13-20
auxiliary (AR) E-3
global memory allocation (GREG) E-9
interrupt flag (IFR) E-11
interrupt mask (IMR) E-11
product (PREG) E-15
serial port control (SPC) E-17
targeting 13-19
temporary E-19
timer control (TCR) E-19
tracking
floating-point 13-19
tracking/targeting
example 13-19
variables
example 13-19
fixed-point 13-18
floating-point 13-18
repairable A-3
repairs A-1
repeat
blocks 13-21
counter register E-16
mode E-16
repeat and block instructions 7-13
figure 7-13
research 15-11
reset
defined E-16
Return Material Authorization number (RMA) A-4
ROM codes
disclaimer statements C-7
procedures C-3
RTC. See Regional Technology Center
Index-9
S
SARAM E-17
See also single-access RAM (SARAM)
scan-based emulators 14-22
scope
C-2
security D-4
selection guide
introduction 2-1
seminars 17-1
serial
communications interface (SCI) module 4-21 to
4-22
figure 4-22
peripheral interface (SPI) module 4-19 to 4-20
port control register (SPC) E-17
port interface E-17
shifters
prescaler E-15
product E-16
shipping instructions A-4
simulator
definition E-17
overview 14-7
TMS320C2xx 14-9
TMS320C4x 14-10
TMS320C54x 14-10
TMS320C5x 14-10
TMS320C6x 14-11
TMS320C8x 14-11
single-access RAM (SARAM) E-17
single-precision floating-point format
definition E-17
SNAP! pulse programming D-3
software
interrupt E-17
simulators
key features 14-7
source file
defined E-17
speech
compression 1-22
processing 1-21
recognition 1-22
status register
definition E-18
Index-10
string table
defined E-18
subexpression elimination 13-8
symbol
defined E-18
table
defined E-18
symbolic
debugging E-18
simplification 13-7
system integration and debug tools 14-1 to 14-28
T
technical
articles 15-14
assistance 15-20
training
design workshops 17-4
introduction 17-2
locations 17-3
Technical Training Organization
registration 17-9
services 17-2
TMS320C3x workshop 17-7
TMS320C4x workshop 17-7
TMS320C5x workshop 17-6
telecommunications
applications 15-16
modems 1-11
temporary register 0 (TREG0) E-19
temporary register 1 (TREG1) E-19
temporary register 2 (TREG2) E-19
terminal videoconferencing 1-15
Texas Instruments technical workshops
table 17-2
textbooks 15-11
third-party
contacts 17-2
tools (universities) 18-2, 18-3
TI Literature Response Center 15-3
TI performs ROM receipt C-4
TI standards 1-1
time-division multiplexing (TDM)
defined E-19
timer
definition E-19
timer control register (TCR) E-19
timer-period register
definition E-19
TLC320AC01/02 AICs 11-18
figure 11-18
TLC320AD50
functional block diagram 11-20
TLC320AD55
sigma-delta AIC 11-21
TLC320AD56
functional block diagram 11-22
sigma-delta AIC 11-19, 11-22
TLC320AD57/58
functional block diagram 11-12
stereo sigma-delta AICs 11-12
TLC320AD75
functional block diagram 11-14
high-performance stereo ADA 11-13
TLC320AD80
functional block diagram 11-16
TLC5620 digital-to-analog converter
block diagram 11-10
features 11-9
TLS1550/51 analog-to-digital converters
block diagram 11-8
features 11-8
TLS320AD55
block diagram 11-21
TMS320
design workshops
registration 17-9
TMS320C3x 17-7
TMS320C4x 17-7
TMS320C5x 17-6
device
naming conventions 2-4 to 2-5
nomenclature 2-5
DSP
applications list 1-10
family overview 2-2
family road map 2-3
military part numbers 2-21 to 2-24
overview 2-6
EPROM programming D-1
generations
TMS320C2xx 2-6
TMS320C3x 2-7
TMS320C4x 2-8
TMS320C54x 2-9
TMS320 (continued)
TMS320C5x 2-8
TMS320C6x 2-9
TMS320C8x 2-10
optimizing ANSI C
compiler goals 13-3
support
bibliography list 15-14
Bulletin Board Service (BBS) 15-18
custom designed systems 17-10
Customer Response Center (CRC) 15-20
design services 17-10
documentation 15-1, 16-1
DSP tools 1-33
family members 2-6
hotline 15-20
newsletter 15-17
preview bulletins 15-3
product bulletins 15-3
product integration chart 1-36
product seminars 17-1
programs 1-32
RTC 17-10
technical 15-1, 16-1
Technical Training Organization 17-2
third-party 1-32
university programs 18-1
workshops 17-1
TMS320 third-party support reference guide 16-2
TMS320C203 3-10
TMS320C204 3-11 to 3-12
TMS320C206 3-13
TMS320C209 3-18 to 3-19
TMS320C24x 4-1 to 4-32
TMS320C2xx 3-1 to 3-20
TMS320C30 5-13 to 5-14
TMS320C31 5-15 to 5-16
TMS320C32 5-17 to 5-18
TMS320C3x 5-1 to 5-18
CPU 5-7
design workshop 17-7
TMS320C40 6-11 to 6-12
TMS320C44 6-13 to 6-14
TMS320C4x 6-1 to 6-14
design workshop 17-7
TMS320C54x 8-1 to 8-10
TMS320C5x 7-1 to 7-24
design workshop 17-6
Index-11
U
universities 15-11
university program 18-1
users guides 15-3
V
version verification D-4
videoconferencing 1-14
Index-12
voice processing
figure 1-21
Von Neumann architecture 1-4
W
wait state
definition E-20
wait-state generator
definition E-20
warranty A-2
watchdog and real-time interrupt (RTI) module 4-29
block diagram 4-30
word
defined E-20
workshop
registration and general information 17-3
workshops 17-2
X
XDS
emulator 14-22
scan-based emulators 14-22
XDS510
advantages
TMS320C40 14-24
equipment list
TMS320C40 14-25
scan path interface
TMS320C40 14-24