1 Signals and Signal Processing 1
1.1 Characterization and Classification of Signals 1
1.2 Typical Signal Processing Operations 4
1.3 Examples of Typical Signals 13
1.4 Typical Signal Processing Applications 21
1.5 Why Digital Signal Processing? 29
2 Discrete-Time Signals in the Time Domain 33
2.1 Time-Domain Representation 34
2.2 Operations on Sequences 38
2.3 Operations on Finite-Length Sequences 47
2.4 Typical Sequences and Sequence Representation 54
2.5 The Sampling Process 64
2.6 Correlation of Signals 66
2.7 Random Signals 72
2.8 Summary 73
2.9 Problems 73
2.10 MATLAB Exercises 79
3 Discrete-Time Signals in the Frequency Domain 81
3.1 The Continuous-Time Fourier Transform 81
3.2 The Discrete-Time Fourier Transform 86
3.3 Discrete-Time Fourier Transform Theorems 97
3.4 Energy Density Spectrum of a Discrete-Time Sequence 103
3.5 Band-Limited Discrete-Time Signals 104
3.6 DTFT Computation Using MATLAB 105
3.7 The Unwrapped Phase Function 105
3.8 Digital Processing of Continuous-Time Signals 107
3.9 Sampling of Bandpass Signals 121
3.10 Effect of Sample-and-Hold Operation 123
3.11 Summary 124
3.12 Problems 125
3.13 MATLAB Exercises 134
4 Discrete-Time Systems 135
4.1 Discrete-Time System Examples 135
4.2 Classification of Discrete-Time Systems 141
4.3 Impulse and Step Responses 145
4.4 Time-Domain Characterization of LTI Discrete-Time Systems 146
4.5 Simple Interconnection Schemes 153
4.6 Finite-Dimensional LTI Discrete-Time Systems 156
4.7 Classification of LTI Discrete-Time Systems 164
4.8 Frequency-Domain Representations of LTI Discrete-Time Systems 167
4.9 Phase and Group Delays 174
4.10 Summary 178
4.11 Problems 179
4.12 MATLAB Exercises 187
5 Finite-Length Discrete Transforms 188
5.1 Orthogonal Transforms 188
5.2 The Discrete Fourier Transform 190
5.3 Relation Between the DTFT and the DFT and Their Inverses 194
5.4 Circular Convolution 200
5.5 Classifications of Finite-Length Sequences 205
5.6 DFT Symmetry Relations 210
5.7 Discrete Fourier Transform Theorems 213
5.8 Fourier-Domain Filtering 219
5.9 Computation of the DFT of Real Sequences 221
5.10 Linear Convolution Using the DFT 223
5.11 Summary 234
5.12 Problems 234
5.13 MATLAB Exercises 247
6 z-Transform 249
6.1 Definition 249
6.2 Rational z-Transforms 253
6.3 Region of Convergence of a Rational z-Transform 255
6.4 The Inverse z-Transform 261
6.5 z-Transform Theorems 269
6.6 Computation of the Convolution Sum of Finite-Length Sequences 277
6.7 The Transfer Function 280
6.8 Summary 292
6.9 Problems 292
6.10 MATLAB Exercises 304
7 LTI Discrete-Time Systems in the Transform Domain 305
7.1 Transfer Function Classification Based on Magnitude Characteristics 305
7.2 Transfer Function Classification Based on Phase Characteristics 314
7.3 Types of Linear-Phase FIR Transfer Functions 321
7.4 Simple Digital Filters 332
7.5 Inverse Systems 349
7.6 Summary 353
7.7 Problems 354
7.8 MATLAB Exercises 368
8 Digital Filter Structures 370
8.1 Block Diagram Representation 371
8.2 Equivalent Structures 374
8.3 Basic FIR Digital Filter Structures 375
8.4 Basic IIR Digital Filter Structures 380
8.5 Realization of Basic Structures Using MATLAB 386
8.6 Allpass Filters 389
8.7 IIR Tapped Cascaded Lattice Structures 398
8.8 FIR Cascaded Lattice Structures 403
8.9 Summary 408
8.10 Problems 409
8.11 MATLAB Exercises 422
9 IIR Digital Filter Design 424
9.1 Preliminary Considerations 424
9.2 Bilinear Transformation Method of IIR Filter Design 429
9.3 Design of Lowpass IIR Digital Filters 434
9.4 Design of Highpass,Bandpass,and Bandstop IIR Digital Filters 436
9.5 Spectral Transformations of IIR Filters 440
9.6 IIR Digital Filter Design Using MATLAB 447
9.7 Summary 450
9.8 Problems 450
9.9 MATLAB Exercises 456
10 FIR Digital Filter Design 458
10.1 Preliminary Considerations 458
10.2 FIR Filter Design Based on Windowed Fourier Series 462
10.3 Computer-Aided Design of Equiripple Linear-Phase FIR Filters 477
10.4 Design of Minimum-Phase FIR Filters 486
10.5 FIR Digital Filter Design Using MATLAB 487
10.6 Summary 503
10.7 Problems 504
10.8 MATLAB Exercises 511
11 DSP Algorithm Implementation 515
11.1 Basic lssues 515
11.2 Structure Simulation and Verification Using MATLAB 526
11.3 Computation of the Discrete Fourier Transform 533
11.4 Fast DFT Algorithms Based on Index Mapping 548
11.5 DFT and IDFT Computation Using MATLAB 556
11.6 Sliding Discrete Fourier Transform 558
11.7 DFT Computation over a Narrow Frequency Band 558
11.8 Summary 563
11.9 Problems 563
11.10 MATLAB Exercises 571
A Analog Lowpass Filter Design 574
A.1 Analog Filter Specifications 574
A.2 Butterworth Approximation 576
A.3 Chebyshev Approximation 578
A.4 Elliptic Approximation 581
A.5 Linear-Phase Approximation 582
A.6 Analog Filter Design Using MATLAB 583
A.7 Analog Lowpass Filter Design Examples 586
A.8 A Comparison of the Filter Types 588
A.9 Anti-Aliasing Filter Design 591
A.10 Reconstruction Filter Design 593
B Design of Analog Highpass,Bandpass,and Bandstop Filters 598
B.1 Analog Highpass Filter Design 598
B.2 Analog Bandpass Filter Design 600
B.3 Analog Bandstop Filter Design 603
Bibliography 604