
Digital Signal Processing and Applications with the TMS320C6713 and TMS320C6416 DSK
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
Reviews / Votes
"While there are numerous texts on DSP, this one is very useful due to the succinct style of presentation and the inclusion of many illustrative programming examples and student projects. The typesetting and layout are praiseworthy, and the coverage of topics is laudable." (Computing Reviews, October 1, 2008)More details
Other editions
Additional editions


Persons
Content
Preface xv
Preface to the First Edition xvii
List of Examples xxi
Programs/Files on Accompanying CD xxvii
1 DSP Development System 1
1.1 Introduction 1
1.2 DSK Support Tools 3
1.3 Code Composer Studio 6
1.4 Quick Tests of the DSK (On Power On and Using CCS) 7
1.5 Programming Examples to Test the DSK Tools 9
1.6 Support Files 30
1.7 Assignments 38
References 41
2 Input and Output with the DSK 45
2.1 Introduction 45
2.2 TLV320AIC23 (AIC23) Onboard Stereo Codec for Input and Output 46
2.3 Programming Examples Using C Code 48
2.4 Assignments 101
References 101
3 Architecture and Instruction Set of the C6x Processor 102
3.1 Introduction 102
3.2 TMS320C6x Architecture 104
3.3 Functional Units 105
3.4 Fetch and Execute Packets 106
3.5 Pipelining 108
3.6 Registers 110
3.7 Linear and Circular Addressing Modes 110
3.8 TMS320C6x Instruction Set 112
3.9 Assembler Directives 115
3.10 Linear Assembly 116
3.11 ASM Statement Within C 117
3.12 C-Callable Assembly Function 117
3.13 Timers 118
3.14 Interrupts 118
3.15 Multichannel Buffered Serial Ports 121
3.16 Direct Memory Access 122
3.17 Memory Considerations 122
3.18 Fixed- and Floating-Point Format 124
3.19 Code Improvement 126
3.20 Constraints 128
3.21 Programming Examples Using C, Assembly, and Linear Assembly 130
3.22 Assignments 142
References 145
4 Finite Impulse Response Filters 146
4.1 Introduction to the z-Transform 146
4.1.1 Mapping from s-Plane to z-Plane 149
4.1.2 Difference Equations 150
4.2 Discrete Signals 151
4.3 FIR Filters 152
4.4 FIR Lattice Structure 154
4.5 FIR Implementation Using Fourier Series 158
4.6 Window Functions 162
4.7 Programming Examples Using C and ASM Code 165
4.8 Assignments 207
References 207
5 Infinite Impulse Response Filters 210
5.1 Introduction 210
5.2 IIR Filter Structures 211
5.3 Bilinear Transformation 217
5.4 Programming Examples Using C and ASM Code 220
5.5 Assignments 252
References 253
6 Fast Fourier Transform 255
6.1 Introduction 255
6.2 Development of the FFT Algorithm with Radix-2 256
6.3 Decimation-in-Frequency FFT Algorithm with Radix-2 257
6.4 Decimation-in-Time FFT Algorithm with Radix-2 263
6.5 Bit Reversal for Unscrambling 268
6.6 Development of the FFT Algorithm with Radix-4 269
6.7 Inverse Fast Fourier Transform 272
6.8 Programming Examples 273
References 318
7 Adaptive Filters 319
7.1 Introduction 319
7.2 Adaptive Structures 321
7.3 Adaptive Linear Combiner 324
7.4 Performance Function 327
7.5 Searching for the Minimum 329
7.6 Programming Examples for Noise Cancellation and System Identification 332
References 352
8 Code Optimization 354
8.1 Introduction 354
8.2 Optimization Steps 355
8.3 Procedure for Code Optimization 356
8.4 Programming Examples Using Code Optimization Techniques 356
8.5 Software Pipelining for Code Optimization 363
8.6 Execution Cycles for Different Optimization Schemes 372
References 373
9 DSP/BIOS and RTDX Using MATLAB, Visual C++, Visual Basic, and LabVIEW 374
9.1 Introduction to DSP/BIOS 374
9.2 RTDX Using MATLAB to Provide Interface Between PC and DSK 386
9.3 RTDX Using Visual C++ to Interface with DSK 400
9.4 RTDX Using Visual Basic to Provide Interface Between PC and DSK 411
9.5 RTDX Using LabVIEW to Provide Interface Between PC and DSK 415
Acknowledgments 421
References 421
10 DSP Applications and Student Projects 422
10.1 DTMF Signal Detection Using Correlation, FFT, and Goertzel Algorithm 422
10.2 Beat Detection Using Onboard LEDs 429
10.3 FIR with RTDX Using Visual C++ for Transfer of Filter Coefficients 434
10.4 Radix-4 FFT with RTDX Using Visual C++ and MATLAB for Plotting 435
10.5 Spectrum Display Through EMIF Using a Bank of 32 LEDs 438
10.6 Spectrum Display Through EMIF Using LCDs 440
10.7 Time-Frequency Analysis of Signals with Spectrogram 445
10.8 Audio Effects (Echo and Reverb, Harmonics, and Distortion) 451
10.9 Voice Detection and Reverse Playback 453
10.10 Phase Shift Keying-BPSK Encoding and Decoding with PLL 454
10.11 Binary Phase Shift Keying 468
10.12 Modulation Schemes-PAM and PSK 470
10.13 Selectable IIR Filter and Scrambling Scheme Using Onboard Switches 479
10.14 Convolutional Encoding and Viterbi Decoding 482
10.15 Speech Synthesis Using Linear Prediction of Speech Signals 493
10.16 Automatic Speaker Recognition 496
10.17 u-Law for Speech Companding 500
10.18 SB-ADPCM Encoder/Decoder: Implementation of G.722 Audio Coding 501
10.19 Encryption Using the Data Encryption Standard Algorithm 503
10.20 Phase-Locked Loop 506
10.21 Miscellaneous Projects 508
Acknowledgments 522
References 523
Appendix A TMS320C6x Instruction Set 528
A.1 Instructions for Fixed- and Floating-Point Operations 528
A.2 Instructions for Floating-Point Operations 528
References 528
Appendix B Registers for Circular Addressing and Interrupts 530
Reference 530
Appendix C Fixed-Point Considerations 533
C.1 Binary and Two's-Complement Representation 533
C.2 Fractional Fixed-Point Representation 536
C.3 Multiplication 536
Reference 539
Appendix D MATLAB and Goldwave Support Tools 540
D.1 fdatool for FIR Filter Design 540
D.2 fdatool for IIR Filter Design 542
D.3 MATLAB for FIR Filter Design Using the Student Version 544
D.4 MATLAB for IIR Filter Design Using the Student Version 546
D.5 Using the Goldwave Shareware Utility as a Virtual Instrument 548
References 549
Appendix E Fast Hartley Transform 550
References 556
Appendix F Goertzel Algorithm 557
F.1 Design Considerations 557
References 560
Appendix G TMS320C6416 DSK 561
G.1 TMS320C64x Processor 561
G.2 Programming Examples Using the C6416 DSK 562
References 566
Index 567
List of Examples
1.1 Sine Wave Generation Using Eight Points with DIP Switch Control (sine8_LED) 1.2 Generation of Sinusoid and Plotting with CCS (sine8_buf) 1.3 Dot Product of Two Arrays (dotp4) 2.1 Basic Input and Output Using Polling (loop_poll) 2.2 Basic Input and Output Using Interrupts (loop_intr) 2.3 Modifying Program loop_intr.c to Create a Delay (delay) 2.4 Modifying Program loop_intr.c to Create an Echo (echo) 2.5 Echo with GEL Slider Control of Delay and Feedback (echo_control) 2.6 Loop Program with Input Data Stored in a Buffer (loop_buf) 2.7 Sine Wave Generation Using a Lookup Table (sine8_intr) 2.8 Sine Wave Generation Using sin() Function Call (sine_intr) 2.9 Sine Wave Generation with Stereo Output (sine_stereo) 2.10 Sine Wave Generation with Two Sliders for Amplitude and Frequency Control (sine2sliders) 2.11 Sweep Sinusoid Using Table with 8000 Points (sweep8000) 2.12 Generation of DTMF Tones Using a Lookup Table (sineDTMF_intr) 2.13 Sine Wave Generation with Table Values Generated Within Program (sinegen_table) 2.14 Sine Wave Generation with Table Created by MATLAB (sin1500MATL) 2.15 Sine Wave Generation with DIP Switch Control (sine_led_ctrl) 2.16 Signal Reconstruction, Aliasing, and the Properties of the AIC23 Codec 2.17 Square Wave Generation Using Lookup Table (squarewave) 2.18 Step and Impulse Responses of the DAC Reconstruction Filter (dimpulse) 2.19 Frequency Response of the DAC Reconstruction Filter Using Pseudorandom Noise (prandom) 2.20 Step Response of the AIC23 Codec Antialiasing Filter (loop_buf) 2.21 Demonstration of Aliasing (aliasing) 2.22 Identification of AIC23 Codec Bandwidth Using an Adaptive Filter (sysid) 2.23 Identification of AIC23 Codec Bandwidth Using Adaptive Filter (sysid16) 2.24 Ramp Generation (ramp) 2.25 Amplitude Modulation (am) 2.26 Use of External Memory to Record Voice (record) 2.27 Use of Flash Memory to Run an Application on Power Up (flash_sine) 3.1 Sum of n + (n - 1) + (n - 2) + · · · + 1, Using C Calling an Assembly Function (sum) 3.2 Factorial of a Number Using C Calling an Assembly Function (factorial) 3.3 32-bit Pseudorandom Noise Generation Using C Calling an Assembly Function (Noisegen_casm) 3.4 Code Detection Using C Calling an ASM Function (code_casm) 3.5 Dot Product Using Assembly Program Calling an Assembly Function (dotp4a) 3.6 Dot Product Using C Function Calling a Linear Assembly Function (dotp4clasm) 3.7 Factorial Using C Calling a Linear Assembly Function (factclasm) 4.1 Moving Average Filter (average) 4.2 Moving Average Filter with Internally Generated Pseudorandom Noise as Input (averagen) 4.3 Identification of Moving Average Filter Frequency Response Using a Second DSK (sysid) 4.4 FIR Filter with Moving Average, Bandstop, and Bandpass Characteristics (fir) 4.5 FIR Implementation with a Pseudorandom Noise Sequence as Input to a Filter (firprn) 4.6 FIR Filter with Internally Generated Pseudorandom Noise as Input to a Filter and Output Stored in Memory (firprnbuf) 4.7 Effects on Voice or Music Using Three FIR Lowpass Filters (FIR3LP) 4.8 Implementation of Four Different Filters: Lowpass, Highpass, Bandpass, and Bandstop (fir4types) 4.9 Two Notch Filters to Recover a Corrupted Speech Recording (notch2) 4.10 FIR Implementation Using Two Different Methods (fir2ways) 4.11 Voice Scrambling Using Filtering and Modulation (scrambler) 4.12 FIR Implementation Using C Calling an ASM Function (FIRcasm) 4.13 FIR Implementation Using C Calling a Faster ASM Function (FIRcasmfast) 4.14 FIR Implementation Using C Calling an ASM Function with a Circular Buffer (FIRcirc) 4.15 FIR Implementation Using C Calling an ASM Function Using a Circular Buffer in External Memory (FIRcirc_ext) 5.1 Implementation of IIR Filter Using Cascaded Second Order Direct Form II Sections (iirsos) 5.2 Implementation of IIR Filter Using Cascaded Second Order Transposed Direct Form II Sections (iirsostr) 5.3 Estimating the Frequency Response of an IIR Filter Using Pseudorandom Noise as Input (iirsosprn) 5.4 Estimating the Frequency Response of an IIR Filter Using a Sequence of Impulses as Input (iirsosdelta) 5.5 Fourth Order Elliptical Lowpass IIR Filter Designed Using fdatool 5.6 Bandpass Filter Designed Using fdatool 5.7 Fixed-Point Implementation of IIR Filter (iir) 5.8 Generation of a Sine Wave Using a Difference Equation (sinegenDE) 5.9 Generation of DTMF Signal Using Difference Equations (sinegenDTMF) 5.10 Generation of a Swept Sinusoid Using a Difference Equation (sweepDE) 5.11 Sine Wave Generation Using a Difference Equation with C Calling an ASM Function (sinegencasm) 6.1 DFT of a Sequence of Real Numbers with Output in the CCS Graphical Display Window (dft) 6.2 Estimating Execution Times for DFT and FFT Functions (fft) 6.3 Frame-Based Processing (frames) 6.4 DFT of a Signal in Real-Time Using a DFT Function with Precalculated Twiddle Factors (dft128c) 6.5 FFT of a Real-Time Input Signal Using an FFT Function in C (fft128c.c) 6.6 FFT of a Sinusoidal Signal from a Table Using TI's C Callable Optimized FFT Function (FFTsinetable) 6.7 FFT of Real-Time Input Using TI's C Callable Optimized Radix-2 FFT Function (FFTr2) 6.8 Radix-4 FFT of Real-Time Input Using TI's C Callable Optimized FFT Function (FFTr4) 6.9 Frame-Based Implementation of FIR Filters Using Time-Domain Convolution (timeconvdemo) 6.10 Real-Time Frame-Based Implementation of FIR Filters Using Time-Domain Convolution (timeconv) 6.11 Frame-Based Implementation of FIR Filters Using Frequency-Domain Convolution (fastconvdemo) 6.12 Real-Time Frame-Based Fast Convolution (fastconv) 6.13 Graphic Equalizer (graphicEQ) 7.1 Adaptive Filter Using C Code (adaptc) 7.2 Adaptive Filter for Sinusoidal Noise Cancellation (adaptnoise) 7.3 Adaptive FIR Filter for Noise Cancellation Using External Inputs (adaptnoise_2IN) 7.4 Adaptive FIR Filter for System ID of a Fixed FIR as an Unknown System (adaptIDFIR) 7.5 Adaptive FIR for System ID of a Fixed FIR as an Unknown System with Weights of an Adaptive Filter Initialized as an FIR Bandpass (adaptIDFIRw) 7.6 Adaptive FIR for System ID of Fixed IIR as an Unknown System (iirsosadapt) 7.7 Adaptive FIR Filter for System Identification of System External to DSK...System requirements
File format: ePUB
Copy protection: Adobe-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Install the free reader Adobe Digital Editions prior to download (see eBook Help).
- Tablet/smartphone (Android; iOS): Install the free app Adobe Digital Editions or the app PocketBook before downloading (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (not Kindle).
The file format ePub works well for novels and non-fiction books – i.e., „flowing” text without complex layout. On an e-reader or smartphone, line and page breaks automatically adjust to fit the small displays.
This eBook uses Adobe-DRM, a „hard” copy protection. If the necessary requirements are not met, unfortunately you will not be able to open the eBook. You will therefore need to prepare your reading hardware before downloading.
Please note: We strongly recommend that you authorise using your personal Adobe ID after installation of any reading software.
For more information, see our ebook Help page.