Cover
Title
Copyright
Dedication
Contents
Preface
1 Introduction
1.1 Signals
1.1.1 Mathematical representation of signals
1.1.2 Physical representation of signals
1.1.3 Deterministic and random signals
1.2 Systems
1.2.1 Continuous-time systems
1.2.2 Discrete-time systems
1.2.3 Interface systems
1.3 Analog, digital, and mixed signal processing
1.4 Applications of digital signal processing
1.5 Book organization
Learning summary
Terms and Concepts
Further Reading
Review questions
2 Discrete-time signals and systems
2.1 Discrete-time signals
2.2 Signal generation and plotting in Matlab
2.3 Discrete-time systems
2.3.1 Causality and stability
2.3.2 Linearity and time invariance
2.3.3 Block diagrams, signal flow graphs, and practical realizability
2.4 Convolution description of linear time-invariant systems
2.5 Properties of linear time-invariant systems
2.5.1 Properties of convolution
2.5.2 Causality and stability
2.5.3 Convolution of periodic sequences
2.5.4 Response to simple test sequences
2.6 Analytical evaluation of convolution
2.7 Numerical computation of convolution
2.8 Real-time implementation of FIR filters
2.9 FIR spatial filters
2.10 Systems described by linear constant-coefficientdifference equations
2.11 Continuous-time LTI systems
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
3 The z-transform
3.1 Motivation
3.2 The z-transform
3.3 The inverse z-transform
3.4 Properties of the z-transform
3.5 System function of LTI systems
3.6 LTI systems characterized by linear constant-coefficientdifference equations
3.7 Connections between pole-zero locations and time-domain behavior
3.7.1 First-order systems
3.7.2 Second-order systems
3.8 The one-sided z-transform
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
4 Fourier representation of signals
4.1 Sinusoidal signals and their properties
4.1.1 Continuous-time sinusoids
4.1.2 Discrete-time sinusoids
4.2 Fourier representation of continuous-time signals
4.2.1 Fourier series for continuous-time periodic signals
4.2.2 Fourier transforms for continuous-time aperiodic signals
4.3 Fourier representation of discrete-time signals
4.3.1 Fourier series for discrete-time periodic signals
4.3.2 Fourier transforms for discrete-time aperiodic signals
4.4 Summary of Fourier series and Fourier transforms
4.5 Properties of the discrete-time Fourier transform
4.5.1 Relationship to the z-transform and periodicity
4.5.2 Symmetry properties
4.5.3 Operational properties
4.5.4 Correlation of signals
4.5.5 Signals with poles on the unit circle
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
5 Transform analysis of LTI systems
5.1 Sinusoidal response of LTI systems
5.2 Response of LTI systems in the frequency domain
5.2.1 Response to periodic inputs
5.2.2 Response to aperiodic inputs
5.2.3 Energy or power gain
5.3 Distortion of signals passing through LTI systems
5.4 Ideal and practical filters
5.5 Frequency response for rational system functions
5.6 Dependence of frequency response on poles and zeros
5.6.1 Geometrical evaluation of H(ej omega)
from poles and zeros
5.6.2 Significance of poles and zeros
5.7 Design of simple filters by pole-zero placement
5.7.1 Discrete-time resonators
5.7.2 Notch filters
5.7.3 Comb filters
5.7.4 Pole-zero pattern rotation -- frequency transformations
5.8 Relationship between magnitude and phase responses
5.9 Allpass systems
5.10 Invertibility and minimum-phase systems
5.11 Transform analysis of continuous-time LTI systems
5.11.1 System function and frequency response
5.11.2 The Laplace transform
5.11.3 Systems with rational system functions
5.11.4 Frequency response from pole-zero location
5.11.5 Minimum-phase and allpass systems
5.11.6 Ideal filters
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
6 Sampling of continuous-time signals
6.1 Ideal periodic sampling of continuous-time signals
6.2 Reconstruction of a bandlimited signal from its samples
6.3 The effect of undersampling: aliasing
6.4 Discrete-time processing of continuous-time signals
6.5 Practical sampling and reconstruction
6.5.1 Analog-to-digital conversion
6.5.2 Digital-to-analog conversion
6.6 Sampling of bandpass signals
6.6.1 Integer band positioning
6.6.2 Arbitrary band positioning
6.6.3 Creating integer band positioning with guard bands
6.7 Image sampling and reconstruction
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
7 The Discrete Fourier Transform
7.1 Computational Fourier analysis
7.2 The Discrete Fourier Transform (DFT)
7.2.1 Algebraic formulation of DFT
7.2.2 Matrix formulation of DFT
7.2.3 Inherent periodicity of DFT and IDFT
7.3 Sampling the Discrete-Time Fourier Transform
7.3.1 Frequency-domain sampling
7.3.2 Time-domain aliasing
7.3.3 Reconstruction of DTFT tilde X (ej omega)
7.3.4 Relationships between CTFT, DTFT, and DFT
7.4 Properties of the Discrete Fourier Transform
7.4.1 Linearity
7.4.2 Periodic, circular, and modulo-N operations
7.4.3 Symmetry properties of the DFT
7.4.4 Circular shift of a sequence
7.4.5 Circular convolution
7.4.6 Circular correlation
7.4.7 DFT of stretched and sampled sequences
7.4.8 Summary of properties of the DFT
7.5 Linear convolution using the DFT
7.5.1 Linear convolution using circular convolution
7.5.2 Implementation of FIR filters using the DFT
7.6 Fourier analysis of signals using the DFT
7.6.1 Effects of time-windowing on sinusoidal signals
7.6.2 Effects of time-windowing on signals with continuous spectra
7.6.3 ``Good'' windows and the uncertainty principle
7.6.4 Effects of frequency-domain sampling
7.6.5 The spectrogram
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
8 Computation of the Discrete FourierTransform
8.1 Direct computation of the Discrete Fourier Transform
8.2 The FFT idea using a matrix approach
8.3 Decimation-in-time FFT algorithms
8.3.1 Algebraic derivation
8.3.2 Practical programming considerations
8.3.3 Alternative forms
8.4 Decimation-in-frequency FFT algorithms
8.5 Generalizations and additional FFT algorithms
8.6 Practical considerations
8.7 Computation of DFT for special applications
8.7.1 Goertzel's algorithm
8.7.2 Chirp transform algorithm (CTA)
8.7.3 The zoom-FFT
8.7.4 A quick Fourier transform (QFT)
8.7.5 Sliding DFT (SDFT)
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
9 Structures for discrete-time systems
9.1 Block diagrams and signal flow graphs
9.2 IIR system structures
9.2.1 Direct form structures
9.2.2 Cascade form structures
9.2.3 Parallel form structures
9.3 FIR system structures
9.3.1 Direct form
9.3.2 Cascade form
9.3.3 Direct form for linear-phase FIR systems
9.3.4 Frequency-sampling form
9.4 Lattice structures
9.4.1 All-zero lattice structure
9.4.2 All-pole lattice structure
9.4.3 Further discussion
9.5 Structure conversion, simulation, and verification
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
10 Design of FIR filters
10.1 The filter design problem
10.1.1 Filter specifications
10.1.2 Filter approximation
10.1.3 Optimality criteria for filter design
10.2 FIR filters with linear phase
10.2.1 Type-I FIR linear-phase filters
10.2.2 Type-II FIR linear-phase filters
10.2.3 Type-III FIR linear-phase filters
10.2.4 Type-IV FIR linear-phase filters
10.2.5 Amplitude response function of FIR filters with linear phase
10.2.6 Zero locations of FIR filters with linear phase
10.3 Design of FIR filters by windowing
10.3.1 Direct truncation of an ideal impulse response
10.3.2 Smoothing the frequency response using fixed windows
10.3.3 Filter design using the adjustable Kaiser window
10.4 Design of FIR filters by frequency sampling
10.5 Chebyshev polynomials and minimax approximation
10.5.1 Definition and properties
10.5.2 Minimax approximation optimality
10.6 Equiripple optimum Chebyshev FIR filter design
10.6.1 Problem formulation
10.6.2 Specifying the optimum Chebyshev approximation
10.6.3 Finding the optimum Chebyshev approximation
10.6.4 Design examples using Matlab
10.7 Design of some special FIR filters
10.7.1 Discrete-time differentiators
10.7.2 Discrete-time Hilbert transformers
10.7.3 Ideal raised-cosine pulse-shaping lowpass filters
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
11 Design of IIR filters
11.1 Introduction to IIR filter design
11.2 Design of continuous-time lowpass filters
11.2.1 The Butterworth approximation
11.2.2 The Chebyshev approximation
11.2.3 The inverse Chebyshev or Chebyshev II approximation
11.2.4 The elliptic or Cauer approximation
11.3 Transformation of continuous-time filtersto discrete-time IIR filters
11.3.1 Impulse-invariance transformation
11.3.2 Bilinear transformation
11.4 Design examples for lowpass IIR filters
11.5 Frequency transformations of lowpass filters
11.5.1 Continuous-time frequency transformations
11.5.2 Discrete-time frequency transformations
11.6 Design examples of IIR filters using Matlab
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
12 Multirate signal processing
12.1 Sampling rate conversion
12.1.1 Sampling rate decrease by an integer factor
12.1.2 Sampling rate increase by an integer factor
12.1.3 Sampling rate change by a noninteger factor
12.2 Implementation of multirate systems
12.2.1 Sampling rate compressors and expanders
12.2.2 The multirate identities
12.2.3 Polyphase filter structures
12.2.4 Polyphase structures for decimation and interpolation
12.3 Filter design for multirate systems
12.3.1 Half-band and Kth-band (Nyquist) FIR filters
12.3.2 Multistage decimation and interpolation
12.3.3 Interpolated FIR (IFIR) filters
12.4 Two-channel filter banks
12.4.1 Input-output description
12.4.2 Conditions for perfect reconstruction
12.4.3 Perfect reconstruction orthogonal FIR filter banks
12.4.4 FIR quadrature mirror filter (QMF) banks
12.5 Multichannel filter banks
12.5.1 Modulated filter banks
12.5.2 Tree-structured filter banks
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
13 Random signals
13.1 Probability models and random variables
13.1.1 Randomness and statistical regularity
13.1.2 Random variables
13.1.3 Probability distributions
13.1.4 Statistical averages
13.1.5 Two useful random variables
13.2 Jointly distributed random variables
13.2.1 Probability functions
13.2.2 Covariance and correlation
13.2.3 Linear combinations of random variables
13.3 Covariance, correlation, and linear estimation
13.4 Random processes
13.4.1 Statistical specification of random processes
13.4.2 Stationary random processes
13.4.3 Response of linear time-invariant systems to random processes
13.4.4 Power spectral densities
13.5 Some useful random process models
13.5.1 White noise process
13.5.2 Linear processes
13.5.3 Autoregressive moving average (ARMA) processes
13.5.4 Harmonic process models
13.5.5 The Wold decomposition theorem
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
14 Random signal processing
14.1 Estimation of mean, variance, and covariance
14.1.1 Basic concepts and terminology
14.1.2 Sample mean
14.1.3 Sample variance
14.1.4 Sample covariance
14.2 Spectral analysis of stationary processes
14.2.1 Estimation of mean, variance, and ACVS/ACRS
14.2.2 The periodogram
14.2.3 Statistical properties of the periodogram
14.2.4 The modified periodogram
14.2.5 The Blackman--Tukey method: smoothing a single periodogram
14.2.6 The Bartlett--Welch method: averaging multiple periodograms
14.3 Optimum linear filters
14.3.1 Filters that maximize the output signal-to-noise ratio
14.3.2 Filters that minimize the output mean square error
14.4 Linear prediction and all-pole signal modeling
14.4.1 Linear prediction and AR modeling
14.4.2 The Levinson--Durbin algorithm
14.4.3 Lattice structures for linear prediction
14.4.4 Linear prediction in practice
14.5 Optimum orthogonal transforms
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
15 Finite wordlength effects
15.1 Number representation
15.1.1 Binary fixed-point number representation
15.1.2 Quantization process
15.1.3 Floating-point representation
15.2 Statistical analysis of quantization error
15.2.1 Input A/D quantization noise through discrete-time systems
15.3 Oversampling A/D and D/A conversion
15.3.1 Oversampled A/D conversion with direct quantization
15.3.2 Oversampled A/D conversion with noise shaping
15.3.3 Oversampled D/A conversion with noise shaping
15.4 Quantization of filter coefficients
15.4.1 Quantization of IIR filter coefficients
15.4.2 Quantization of FIR filter coefficients
15.5 Effects of finite wordlength on digital filters
15.5.1 Effects of round-off noise in direct-form FIR filters
15.5.2 Scaling to avoid overflows in direct-form FIR filters
15.5.3 Round-off noise and scaling in IIR filters
15.5.4 Limit cycle oscillations
15.6 Finite wordlength effects in FFT algorithms
Learning summary
Terms and Concepts
Further Reading
Review questions
Problems
References
Index