Skip to main content

Real-Time Digital Signal Processing: Fundamentals, Implementations and Applications, 3rd Edition

Real-Time Digital Signal Processing: Fundamentals, Implementations and Applications, 3rd Edition

Sen M. Kuo, Bob H. Lee, Wenshun Tian

ISBN: 978-1-118-70668-8

Aug 2013

568 pages



Combines both the DSP principles and real-time implementations and applications, and now updated with the new eZdsp USB Stick, which is very low cost, portable and widely employed at many DSP labs.

Real-Time Digital Signal Processing introduces fundamental digital signal processing (DSP) principles and will be updated to include the latest DSP applications, introduce new software development tools and adjust the software design process to reflect the latest advances in the field. In the 3rd edition of the book, the key aspect of hands-on experiments will be enhanced to make the DSP principles more interesting and directly interact with the real-world applications. All of the programs will be carefully updated using the most recent version of software development tools and the new TMS320VC5505 eZdsp USB Stick for real-time experiments. Due to its lower cost and portability, the new software and hardware tools are now widely used in university labs and in commercial industrial companies to replace the older and more expensive generation. The new edition will have a renewed focus on real-time applications and will offer step-by-step hands-on experiments for a complete design cycle starting from floating-point C language program to fixed-point C implementation, code optimization using INTRINSICS, and mixed C-and-assembly programming on fixed-point DSP processors. This new methodology enables readers to concentrate on learning DSP fundamentals and innovative applications by relaxing the intensive programming efforts, namely, the traditional DSP assembly coding efforts. The book is organized into two parts; Part One introduces the digital signal processing principles and theories, and Part Two focuses on practical applications. The topics for the applications are the extensions of the theories in Part One with an emphasis placed on the hands-on experiments, systematic design and implementation approaches. The applications provided in the book are carefully chosen to reflect current advances of DSP that are of most relevance for the intended readership.

  • Combines both the DSP principles and real-time implementations and applications using the new eZdsp USB Stick, which is very low cost, portable and widely employed at many DSP labs is now used in the new edition
  • Places renewed emphasis on C-code experiments and reduces the exercises using assembly coding; effective use of C programming, fixed-point C code and INTRINSICS will become the main focus of the new edition.
  • Updates to application areas to reflect latest advances such as speech coding techniques used for next generation networks (NGN), audio coding with surrounding sound, wideband speech codec (ITU G.722.2 Standard), fingerprint for image processing, and biomedical signal processing examples.
  • Contains new addition of several projects that can be used as semester projects; as well as new many new real-time experiments using TI’s binary libraries – the experiments are prepared with flexible interface and modular for readers to adapt and modify to create other useful applications from the provided basic programs.
  • Consists of more MATLAB experiments, such as filter design, algorithm evaluation, proto-typing for C-code architecture, and simulations to aid readers to learn DSP fundamentals.

Includes supplementary material of program and data files for examples, applications, and experiments hosted on a companion website.

A valuable resource for Postgraduate students enrolled on DSP courses focused on DSP implementation & applications as well as Senior undergraduates studying DSP; engineers and programmers who need to learn and use DSP principles and development tools for their projects.

Preface xv

Acknowledgments xix

1 Introduction to Real-Time Digital Signal Processing 1

1.1 Basic Elements of Real-Time DSP Systems 2

1.2 Analog Interface 3

1.3 DSP Hardware 10

1.4 DSP System Design 16

1.5 Experiments and Program Examples 21

Exercises 42

References 43

2 DSP Fundamentals and Implementation Considerations 44

2.1 Digital Signals and Systems 44

2.2 System Concepts 48

2.3 Introduction to Random Variables 66

2.4 Fixed-Point Representations and Quantization Effects 72

2.5 Overflow and Solutions 81

2.6 Experiments and Program Examples 83

Exercises 99

References 101

3 Design and Implementation of FIR Filters 102

3.1 Introduction to FIR Filters 102

3.2 Design of FIR Filters 114

3.3 Implementation Considerations 125

3.4 Applications: Interpolation and Decimation Filters 130

3.5 Experiments and Program Examples 135

Exercises 144

References 147

4 Design and Implementation of IIR Filters 148

4.1 Introduction 148

4.2 Design of IIR Filters 154

4.3 Realization of IIR Filters 158

4.4 Design of IIR Filters Using MATLAB1 164

4.5 Implementation Considerations 168

4.6 Practical Applications 174

4.7 Experiments and Program Examples 179

Exercises 191

References 194

5 Frequency Analysis and the Discrete Fourier Transform 195

5.1 Fourier Series and Fourier Transform 195

5.2 Discrete Fourier Transform 198

5.3 Fast Fourier Transforms 205

5.4 Implementation Considerations 210

5.5 Practical Applications 214

5.6 Experiments and Program Examples 224

Exercises 236

References 238

6 Adaptive Filtering 239

6.1 Introduction to Random Processes 239

6.2 Adaptive Filters 243

6.3 Performance Analysis 252

6.4 Implementation Considerations 255

6.5 Practical Applications 259

6.6 Experiments and Program Examples 268

Exercises 280

References 282

7 Digital Signal Generation and Detection 283

7.1 Sine Wave Generators 283

7.2 Noise Generators 288

7.3 DTMF Generation and Detection 291

7.4 Experiments and Program Examples 298

Exercises 302

References 302

8 Adaptive Echo Cancellation 304

8.1 Introduction to Line Echoes 304

8.2 Adaptive Line Echo Canceler 306

8.3 Practical Considerations 309

8.4 Double-Talk Effects and Solutions 312

8.5 Nonlinear Processor 314

8.6 Adaptive Acoustic Echo Cancellation 315

8.7 Experiments and Program Examples 323

Exercises 328

References 329

9 Speech Signal Processing 330

9.1 Speech Coding Techniques 330

9.2 Speech Enhancement 350

9.3 VoIP Applications 355

9.4 Experiments and Program Examples 360

Exercises 374

References 375

10 Audio Signal Processing 377

10.1 Introduction 377

10.2 Audio Coding 378

10.3 Audio Equalizers 389

10.4 Audio Effects 397

10.5 Experiments and Program Examples 411

Exercises 427

References 428

11 Introduction to Digital Image Processing 430

11.1 Digital Images and Systems 430

11.2 Color Spaces 432

11.3 YCbCr Sub-sampled Color Space 433

11.4 Color Balance and Correction 434

11.5 Histogram Equalization 437

11.6 Image Filtering 440

11.7 Fast Convolution 448

11.8 Practical Applications 452

11.9 Experiments and Program Examples 461

Exercises 474

References 475

Appendix A Some Useful Formulas and Definitions 477

Appendix B Software Organization and List of Experiments 484

Appendix C Introduction to the TMS320C55xx Digital Signal Processor 490

References 535

Index 537