TMS320C55x DSP Library
Programmer’s Reference
SPRU422J − May 2000
Revised − January 2009
iii
Read This First
Preface
About This Manual
The Texas Instruments TMS320C55x DSPLIB is an optimized DSP Function
Library for C programmers on TMS320C55x devices. It includes over 50
C-callable assembly-optimized general-purpose signal processing routines.
These routines are typically used in computationally intensive real-time
applications where optimal execution speed is critical. By using these routines
you can achieve execution speeds considerable faster than equivalent code
written in standard ANSI C language. In addition, by providing ready-to-use
DSP functions, TI DSPLIB can shorten significantly your DSP application
development time.
Related Documentation
- The MathWorks, Inc. Matlab Signal Processing Toolbox User’s Guide. Na-
tick, MA: The MathWorks, Inc., 1996. .
- Lehmer, D.H. “Mathematical Methods in large-scale computing units.”
Proc. 2nd Sympos. on Large-Scale Digital Calculating Machinery, Cam-
bridge, MA, 1949. Cambridge, MA: Harvard University Press, 1951.
- Oppenheim, Alan V. and Ronald W Schafer. Discrete-Time Signal Proces-
sing. Englewood Cliffs, NJ: Prentice Hall, 1989.
- Digital Signal Processing with the TMS320 Family (SPR012)
- TMS320C55x DSP CPU Reference Guide (SPRU371)
- TMS320C55x Optimizing C Compiler User’s Guide (SPRU281)
Trademarks
TMS320, TMS320C55x, and C55x are trademarks of Texas Instruments.
Matlab is a trademark of Mathworks, Inc.
iv
Contents
v
1 Contents
Introduction to the TMS320C55x DSP Library
1.1 DSP Routines 1-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Features and Benefits 1-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 DSPLIB: Quality Freeware That You Can Build On and Contribute To 1-2. . . . . . . . . . . . . .
2 Contents
Describes how to install the DSPLIB
2.1 DSPLIB Content 2-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 How to Install DSPLIB 2-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.1 De-Archive DSPLIB 2-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.2 Relocate Library File 2-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 How to Rebuild DSPLIB 2-4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.1 For Full Rebuild of 55xdsp.lib 2-4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3.2 For Partial Rebuild of 55xdsp.lib
(modification of a specific DSPLIB function,
for example fir.asm) 2-4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Contents
Describes how to use the DSPLIB
3.1 DSPLIB Arguments and Data Types 3-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.1 DSPLIB Arguments 3-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1.2 DSPLIB Data Types 3-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Calling a DSPLIB Function from C 3-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3 Calling a DSPLIB Function from Assembly Language Source Code 3-3. . . . . . . . . . . . . . .
3.4 Where to Find Sample Code 3-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.5 How DSPLIB is Tested − Allowable Error 3-4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.6 How DSPLIB Deals with Overflow and Scaling Issues 3-4. . . . . . . . . . . . . . . . . . . . . . . . . . .
3.7 Where DSPLIB Goes From Here 3-6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Contents
Provides descriptions for the TMS320C55x DSPLIB functions
4.1 Arguments and Conventions Used 4-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 DSPLIB Functions 4-3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 DSPLIB Benchmarks and Performance Issues 5-1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Describes benchmarks and performance issues for the DSPLIB functions
5.1 What DSPLIB Benchmarks are Provided 5-2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .