Preface p. xv Introduction p. 1 Digital signal processing and its benefits p. 1 Application areas p. 3 Key DSP operations p. 5 Digital signal processors p. 13 Overview of real-world applications of DSP p. 13 Audio applications of DSP p. 15 Telecommunication applications of DSP p. 23 Biomedical applications of DSP p. 29 Summary p. 35 Problems p. 35 References p. 35 Bibliography p. 36 Analog I/O interface for real-time DSP systems p. 37 Typical real-time DSP systems p. 38 Analog-to-digital conversion process p. 39 Sampling - lowpass and bandpass signals p. 40 Uniform and non-uniform quantization and encoding p. 65 Oversampling in A/D conversion p. 71 Digital-to-analog conversion process: signal recovery p. 84 The DAC p. 84 Anti-imaging filtering p. 86 Oversampling in D/A conversion p. 86 Constraints of real-time signal processing with analog input/output signals p. 90 Application examples p. 91 Summary p. 92 Problems p. 92 References p. 102 Bibliography p. 102 Discrete transforms p. 104 Introduction p. 104 DFT and its inverse p. 111 Properties of the DFT p. 118 Computational complexity of the DFT p. 120 The decimation-in-time fast Fourier transform algorithm p. 121 Inverse fast Fourier transform p. 132 Implementation of the FFT p. 133 Other discrete transforms p. 135 An application of the DCT: image compression p. 151 Worked examples p. 154
Problems p. 158 References p. 160 Appendices p. 161 C language program for direct DFT computation p. 161 C program for radix-2 decimation-in-time FFT p. 167 DFT and FFT with MATLAB p. 170 References for Appendices p. 171 The z-transform and its applications in signal processing p. 172 Discrete-time signals and systems p. 173 The z-transform p. 174 The inverse z-transform p. 179 Properties of the z-transform p. 194 Some applications of the z-transform in signal processing p. 197 Summary p. 218 Problems p. 218 References p. 223 Bibliography p. 223 Appendices p. 223 Recursive algorithm for the inverse z-transform p. 223 C program for evaluating the inverse z-transform and for cascade-to-parallel structure conversion p. 225 C program for estimating frequency response p. 231 z-transform operations with MATLAB p. 233 References for Appendices p. 241 Correlation and convolution p. 242 Introduction p. 242 Correlation description p. 243 Convolution description p. 273 Implementation of correlation and convolution p. 301 Application examples p. 302 Summary p. 310 Problems p. 311 References p. 315 Appendix p. 316 C language program for computing cross- and autocorrelation p. 316 A framework for digital filter design p. 317 Introduction to digital filters p. 318 Types of digital filters: FIR and IIR filters p. 319 Choosing between FIR and IIR filters p. 321 Filter design steps p. 324 Illustrative examples p. 334 Summary p. 339
Problems p. 339 Reference p. 341 Bibliography p. 341 Finite impulse response (FIR) filter design p. 342 Introduction p. 343 FIR filter design p. 349 FIR filter specifications p. 350 FIR coefficient calculation methods p. 351 Window method p. 352 The optimal method p. 367 Frequency sampling method p. 380 Comparison of the window, optimum and frequency sampling methods p. 398 Special FIR filter design topics p. 402 Realization structures for FIR filters p. 407 Finite wordlength effects in FIR digital filters p. 411 FIR implementation techniques p. 420 Design example p. 422 Summary p. 425 Application examples of FIR filters p. 425 Problems p. 426 References p. 435 Bibliography p. 436 Appendices p. 437 C programs for FIR filter design p. 437 FIR filter design with MATLAB p. 440 Design of infinite impulse response (IIR) digital filters p. 454 Introduction: summary of the basic features of IIR filters p. 455 Design stages for digital IIR filters p. 456 Performance specification p. 457 Coefficient calculation methods for IIR filters p. 459 Pole-zero placement method of coefficient calculation p. 459 Impulse invariant method of coefficient calculation p. 463 Matched z-transform (MZT) method of coefficient calculation p. 468 Bilinear z-transform (BZT) method of coefficient calculation p. 471 Use of BZT and classical analog filters to design IIR filters p. 482 Calculating IIR filter coefficients by mapping s-plane poles and zeros p. 500 Using IIR filter design programs p. 508 Choice of coefficient calculation methods for IIR filters p. 509 Realization structures for IIR digital filters p. 517 Finite wordlength effects in IIR filters p. 524 Implementation of IIR filters p. 529
A detailed design example of an IIR digital filter p. 530 Summary p. 535 Application examples in digital audio and instrumentation p. 536 Application examples in telecommunication p. 538 Problems p. 549 References p. 554 Bibliography p. 555 Appendices p. 557 C programs for IIR digital filter design p. 557 IIR filter design with MATLAB p. 562 Evaluation of complex square roots using real arithmetic p. 577 Multirate digital signal processing p. 579 Introduction p. 579 Concepts of multirate signal processing p. 581 Design of practical sampling rate converters p. 590 Software implementation of sampling rate converters--decimators p. 601 Software implementation of interpolators p. 606 Sample rate conversion using polyphase filter structure p. 612 Application examples p. 617 Summary p. 632 Problems p. 633 References p. 637 Bibliography p. 638 Appendices p. 639 C programs for multirate processing and systems design p. 639 Multirate digital signal processing with MATLAB p. 640 Adaptive digital filters p. 645 When to use adaptive filters and where they have been used p. 646 Concepts of adaptive filtering p. 647 Basic Wiener filter theory p. 651 The basic LMS adaptive algorithm p. 654 Recursive least squares algorithm p. 662 Application example 1 - adaptive filtering of ocular artefacts from the human EEG p. 666 Application example 2 - adaptive telephone echo cancellation p. 668 Other applications p. 670 Problems p. 674 References p. 674 Bibliography p. 675 Appendices p. 676 C language programs for adaptive filtering p. 676 MATLAB programs for adaptive filtering p. 680
Spectrum estimation and analysis p. 681 Introduction p. 682 Principles of spectrum estimation p. 684 Traditional methods p. 687 Modern parametric estimation methods p. 707 Autoregressive spectrum estimation p. 708 Comparison of estimation methods p. 715 Application examples p. 715 Summary p. 721 Worked example p. 721 Problems p. 722 References p. 724 Appendix p. 725 MATLAB programs for spectrum estimation and analysis p. 725 General- and special-purpose digital signal processors p. 727 Introduction p. 728 Computer architectures for signal processing p. 728 General-purpose digital signal processors p. 746 Selecting digital signal processors p. 759 Implementation of DSP algorithms on general-purpose digital signal processors p. 761 Special-purpose DSP hardware p. 787 Summary p. 792 Problems p. 793 References p. 796 Bibliography p. 797 Appendix p. 798 TMS320 assembly language programs for real-time signal processing and a C language program for constant geometry radix-2 FFT p. 798 Analysis of finite wordlength effects in fixed-point DSP systems p. 805 Introduction p. 805 DSP arithmetic p. 806 ADC quantization noise and signal quality p. 815 Finite wordlength effects in IIR digital filters p. 817 Finite wordlength effects in FFT algorithms p. 860 Summary p. 864 Problems p. 865 References p. 868 Bibliography p. 868 Appendices p. 870 Finite wordlength analysis program for IIR filters p. 870 L[subscript 2] scaling factor equations p. 870 Applications and design studies p. 873
Evaluation boards for real-time signal processing p. 874 DSP applications p. 877 Design studies p. 904 Computer-based multiple choice DSP questions p. 911 Summary p. 920 Problems p. 921 References p. 921 Bibliography p. 923 Appendix p. 923 The modified UD factorization algorithm p. 923 Index p. 925 Table of Contents provided by Blackwell's Book Services and R.R. Bowker. Used with permission.