|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 cjsb37 于 2013-4-29 09:10 编辑
DSP Applications Using C and the TMS320C6x DSK (Hardcover)
by Rulph Chassaing (Author) "Chapter 1 introduces several tools available for digital signal processing (DSP)..." (more) 
Key Phrases: twiddle constants, audio daughter card, linear assembly function, Texas Instruments, New York, Upper Saddle River (more...) 
4.1 out of 5 stars 
See all reviews (7 customer reviews)
Contents
Preface xi
List of Examples xv
Programs/Files on Accompanying Disk xix
1 DSP Development System 1
1.1 Introduction 1
1.2 DSK Support Tools 2
1.2.1 DSK Board 4
1.2.2 TMS320C6711 Digital Signal Processor 4
1.3 Code Composer Studio 5
1.3.1 CCS Installation and Support 5
1.3.2 Useful Types of Files 6
1.4 Programming Examples to Test the DSK Tools 7
1.4.1 Quick Test of DSK 7
1.4.2 Support Files 8
1.4.3 Examples 8
1.5 Support Programs/Files Considerations 24
1.5.1 Initialization/Communication File 24
1.5.2 Vector File 26
1.5.3 Linker File 26
1.6 Compiler/Assembler/Linker Shell 26
1.6.1 Compiler 28
1.6.2 Assembler 29
1.6.3 Linker 29
References 30
v
2 Input and Output with the DSK 33
2.1 Introduction 33
2.2 TLC320AD535 (AD535) Onboard Codec for Input and Output 34
2.3 PCM3003 Stereo Codec for Input and Output 35
2.4 Programming Examples Using C Code 37
References 60
3 Architecture and Instruction Set of the C6x Processor 61
3.1 Introduction 61
3.2 TMS320C6x Architecture 63
3.3 Functional Units 65
3.4 Fetch and Execute Packets 66
3.5 Pipelining 67
3.6 Registers 68
3.7 Linear and Circular Addressing Modes 69
3.7.1 Indirect Addressing 69
3.7.2 Circular Addressing 70
3.8 TMS320C6x Instruction Set 71
3.8.1 Assembly Code Format 71
3.8.2 Types of Instructions 72
3.9 Assembler Directives 74
3.10 Linear Assembly 74
3.11 ASM Statement within C 76
3.12 C-Callable Assembly Function 76
3.13 Timers 76
3.14 Interrupts 77
3.14.1 Interrupt Control Registers 77
3.14.2 Selection of XINT0 79
3.14.3 Interrupt Acknowledgment 80
3.15 Multichannel Buffered Serial Ports 80
3.16 Direct Memory Access 81
3.17 Memory Considerations 82
3.17.1 Data Allocation 82
3.17.2 Data Alignment 82
3.17.3 Pragma Directives 83
3.17.4 Memory Models 83
3.18 Fixed- and Floating-Point Format 83
3.18.1 Data Types 83
3.18.2 Floating-Point Format 84
3.18.3 Division 85
vi Contents
3.19 Code Improvement 85
3.19.1 Intrinsics 85
3.19.2 Trip Directive for Loop Count 86
3.19.3 Cross-Paths 86
3.19.4 Software Pipelining 86
3.20 Constraints 87
3.20.1 Memory Constraints 87
3.20.2 Cross-Paths Constraints 87
3.20.3 Load/Store Constraints 88
3.20.4 Pipelining Effects with More Than One EP
within an FP 88
3.21 TMS320C64x Processor 89
3.22 Programming Examples Using C, Assembly, and Linear
Assembly 90
References 100
4 Finite Impulse Response Filters 102
4.1 Introduction to the z-Transform 102
4.1.1 Mapping from s-Plane to z-Plane 105
4.1.2 Difference Equations 106
4.2 Discrete Signals 107
4.3 Finite Impulse Response Filters 108
4.4 FIR Implementation Using Fourier Series 110
4.5 Window Functions 114
4.5.1 Hamming Window 115
4.5.2 Hanning Window 115
4.5.3 Blackman Window 115
4.5.4 Kaiser Window 116
4.5.5 Computer-Aided Approximation 116
4.6 Programming Examples Using C and ASM Code 116
References 155
5 Infinite Impulse Response Filters 159
5.1 Introduction 159
5.2 IIR Filter Structures 160
5.2.1 Direct Form I Structure 160
5.2.2 Direct Form II Structure 161
5.2.3 Direct Form II Transpose 163
5.2.4 Cascade Structure 164
Contents vii
5.2.5 Parallel Form Structure 165
5.3 Bilinear Transformation 167
5.3.1 Bilinear Transformation Design Procedure 168
5.4 Programming Examples Using C Code 169
References 181
6 Fast Fourier Transform 182
6.1 Introduction 182
6.2 Development of the FFT Algorithm with Radix-2 183
6.3 Decimation-in-Frequency FFT Algorithm with Radix-2 184
6.4 Decimation-in-Time FFT Algorithm with Radix-2 191
6.5 Bit Reversal for Unscrambling 195
6.6 Development of the FFT Algorithm with Radix-4 195
6.7 Inverse Fast Fourier Transform 198
6.8 Programming Examples 199
6.8.1 Fast Convolution 206
References 214
7 Adaptive Filters 216
7.1 Introduction 216
7.2 Adaptive Structures 218
7.3 Programming Examples for Noise Cancellation and System
Identification 221
References 237
8 Code Optimization 239
8.1 Introduction 239
8.2 Optimization Steps 240
8.2.1 Compiler Options 240
8.2.2 Intrinsic C Functions 241
8.3 Procedure for Code Optimization 241
8.4 Programming Examples Using Code Optimization Techniques 241
8.5 Software Pipelining for Code Optimization 248
8.5.1 Procedure for Hand-Coded Software Pipelining 249
8.5.2 Dependency Graph 249
8.5.3 Scheduling Table 251
8.6 Execution Cycles for Different Optimization Schemes 258
References 259
viii Contents
9 DSP Applications and Student Projects 260
9.1 Voice Scrambler Using DMA and User Switches 260
9.2 Phase-Locked Loop 261
9.2.1 RTDX for Real-Time Data Transfer 263
9.3 SB-ADPCM Encoder/Decoder: Implementation of
G.722 Audio Coding 263
9.4 Adaptive Temporal Attenuator 264
9.5 Image Processing 265
9.6 Filter Design and Implementation Using a Modified
Prony’s Method 266
9.7 FSK Modem 266
9.8 m-Law for Speech Companding 267
9.9 Voice Detection and Reverse Playback 268
9.10 Miscellaneous Projects 268
9.10.1 Acoustic Direction Tracker 268
9.10.2 Multirate Filter 269
9.10.3 Neural Network for Signal Recognition 270
9.10.4 PID Controller 270
9.10.5 Four-Channel Multiplexer for Fast Data Acquisition 270
9.10.6 Video Line Rate Analysis 270
References 272
Appendix A TMS320C6x Instruction Set 276
A.1 Instructions for Fixed- and Floating-Point Operations 276
A.2 Instructions for Floating-Point Operations 276
References 276
Appendix B Registers for Circular Addressing and Interrupts 278
Reference 278
Appendix C Fixed-Point Considerations 281
C.1 Binary and Two’s-Complement Representation 281
C.2 Fractional Fixed-Point Representation 284
C.3 Multiplication 285
Reference 287
Appendix D Matlab Support Tools 288
D.1 MATLAB GUI Filter Designer SPTOOL for FIR Filter Design 288
D.2 MATLAB GUI Filter Designer SPTOOL for IIR Filter Design 290
Contents ix
D.3 MATLAB for FIR Filter Design Using the Student Version 292
D.4 MATLAB for IIR Filter Design Using the Student Version 294
D.5 Bilinear Transformation Using MATLAB and Support Programs
on Disk 295
D.6 FFT and IFFT 302
References 302
Appendix E Additional Support Tools 303
E.1 Goldwave Shareware Utility as Virtual Instrument 303
E.2 Filter Design Using DigiFilter 304
E.2.1 FIR Filter Design 304
E.2.2 IIR Filter Design 305
E.3 FIR Filter Design Using Filter Development Package 306
E.3.1 Kaiser Window 306
E.3.2 Hamming Window 306
E.4 Visual Application Builder 306
E.5 Miscellaneous Support 308
References 309
Appendix F Input and Output with PCM3003 Stereo Codec 310
F.1 PCM3003 Audio Daughter Card 310
F.2 Programming Examples Using the PCM3003 Stereo Codec 315
References 324
Appendix G DSP/BIOS and RTDX for Real-Time Data Transfer 325
References 327
Index 329
x Contents
|
|