Digital signal processing is an essential element of key communications technologies such as mobile phones and the Internet. This text covers all the major topics in digital signal processing (DSP) design and analysis, supported by MatLab examples and other modelling techniques. The authors explain clearly and concisely why and how to use digital signal processing systems; how to approximate a desired transfer function characteristic using polynomials and ratio of polynomials; why an appropriate mapping of a transfer function onto a suitable structure is important for practical applications; and how to analyze, represent, and explore the tradeoff between time and frequency representation of signals.
Author(s): Paulo S. R. Diniz, Eduardo A. B. da Silva, Sergio L. Netto
Edition: 1
Publisher: Cambridge University Press
Year: 2002
Language: English
Pages: 634
Cover......Page 1
Half-title......Page 3
Title......Page 5
Copyright......Page 6
Dedication......Page 7
Contents......Page 9
Preface......Page 17
Introduction......Page 23
1.1 Introduction......Page 27
1.2 Discrete-time signals......Page 28
1.3.1 Linearity......Page 31
1.3.3 Causality......Page 32
1.3.4 Impulse response and convolution sums......Page 34
1.3.5 Stability......Page 36
1.4 Difference equations and time-domain response......Page 37
1.5 Sampling of continuous-time signals......Page 41
1.5.2 Sampling theorem......Page 42
1.6 Discrete-time signals and systems with MATLAB......Page 51
1.8 Exercises......Page 52
2.1 Introduction......Page 58
2.2 Definition of the z transform......Page 59
2.3 Inverse z transform......Page 65
2.3.1 Computation based on residue theorem......Page 67
2.3.2 Computation based on partial-fraction expansions......Page 71
2.3.3 Computation based on polynomial division......Page 73
2.3.4 Computation based on series expansion......Page 74
2.4.1 Linearity......Page 75
2.4.3 Time-shift theorem......Page 76
2.4.5 Complex differentiation......Page 77
2.4.7 Real and imaginary sequences......Page 78
2.4.9 Convolution theorem......Page 79
2.4.10 Product of two sequences......Page 80
2.4.11 Parseval’s theorem......Page 81
2.5 Transfer functions......Page 82
2.6 Stability in the z domain......Page 85
2.7 Frequency response......Page 88
2.8 Fourier transform......Page 94
2.9.2 Time-reversal......Page 97
2.9.7 Real and imaginary sequences......Page 98
2.9.8 Symmetric and antisymmetric sequences......Page 99
2.9.11 Parseval’s theorem......Page 100
2.10 Transfer functions with MATLAB......Page 101
2.12 Exercises......Page 103
3.1 Introduction......Page 107
3.2 Discrete Fourier transform......Page 108
3.3 Properties of the DFT......Page 114
3.3.3 Time-shift theorem......Page 115
3.3.4 Circular frequency-shift theorem (modulation theorem)......Page 116
3.3.5 Circular convolution in time......Page 117
3.3.6 Correlation......Page 118
3.3.8 Symmetric and antisymmetric sequences......Page 119
3.3.10 Relationship between the DFT and the z transform......Page 121
3.4.1 Linear and circular convolutions......Page 122
3.4.2 Overlap-and-add method......Page 127
3.4.3 Overlap-and-save method......Page 130
3.5 Fast Fourier transform......Page 131
3.5.1 Radix-2 algorithm with decimation in time......Page 134
3.5.2 Decimation in frequency......Page 143
3.5.3 Radix-4 algorithm......Page 144
3.5.4 Algorithms for arbitrary values of N......Page 150
3.5.5 Alternative techniques for determining the DFT......Page 151
3.6.1 Discrete cosine transform......Page 152
3.6.2 A family of sine and cosine transforms......Page 156
3.6.3 Discrete Hartley transform......Page 157
3.6.4 Hadamard transform......Page 159
3.7 Signal representations......Page 160
3.8 Discrete transforms with MATLAB......Page 163
3.9 Summary......Page 165
3.10 Exercises......Page 166
4.2 Basic structures of nonrecursive digital filters......Page 170
4.2.1 Direct form......Page 171
4.2.3 Linear-phase forms......Page 173
4.3.1 Direct forms......Page 181
4.3.2 Cascade form......Page 184
4.3.3 Parallel form......Page 185
4.4 Digital network analysis......Page 187
4.5 State-space description......Page 192
4.6 Basic properties of digital networks......Page 193
4.6.1 Tellegen’s theorem......Page 194
4.6.2 Reciprocity......Page 195
4.6.3 Interreciprocity......Page 196
4.6.5 Sensitivity......Page 197
4.7 Digital filter forms with MATLAB......Page 202
4.9 Exercises......Page 206
5.1 Introduction......Page 210
5.2.1 Lowpass, highpass, bandpass, and bandstop filters......Page 211
5.2.2 Differentiators......Page 212
5.2.3 Hilbert transformers......Page 214
5.3 FIR filter approximation by frequency sampling......Page 216
5.4 FIR filter approximation with window functions......Page 224
5.4.2 Triangular windows......Page 227
5.4.3 Hamming and Hanning windows......Page 228
5.4.4 Blackman window......Page 229
5.4.5 Kaiser window......Page 231
5.4.6 Dolph–Chebyshev window......Page 238
5.5 Maximally flat FIR filter approximation......Page 241
5.6 FIR filter approximation by optimization......Page 244
5.6.1 Weighted-least-squares method......Page 250
5.6.2 Chebyshev method......Page 251
5.6.3 WLS–Chebyshev method......Page 257
5.7 FIR filter approximation with MATLAB......Page 262
MATLAB commands related to the window method......Page 263
MATLAB commands related to the weighted-least-squares method......Page 266
MATLAB commands related to the Chebyshev optimal method......Page 267
5.8 Summary......Page 268
5.9 Exercises......Page 270
6.1 Introduction......Page 276
6.2.1 Analog filter specification......Page 277
6.2.2 Butterworth approximation......Page 278
6.2.3 Chebyshev approximation......Page 280
6.2.4 Elliptic approximation......Page 283
6.2.5 Frequency transformations......Page 286
6.3.1 Impulse-invariance method......Page 296
6.3.2 Bilinear transformation method......Page 300
6.4.1 Lowpass to lowpass transformation......Page 307
6.4.3 Lowpass to bandpass transformation......Page 308
6.4.4 Lowpass to bandstop transformation......Page 309
6.5 Magnitude and phase approximation......Page 310
6.5.1 Basic principles......Page 311
6.5.2 Multi-variable function minimization method......Page 315
6.5.3 Alternative methods......Page 318
6.6 Time-domain approximation......Page 320
6.7 IIR filter approximation with MATLAB......Page 323
6.9 Exercises......Page 329
7.2.1 Fixed-point representations......Page 332
Two’s-complement representation......Page 333
7.2.2 Floating-point representation......Page 334
7.3 Product quantization......Page 335
7.4 Signal scaling......Page 341
7.5.1 Deterministic sensitivity criterion......Page 348
7.5.2 Statistical forecast of the wordlength......Page 352
7.6 Limit cycles......Page 355
7.6.1 Granular limit cycles......Page 356
7.6.2 Overflow limit cycles......Page 357
7.6.3 Elimination of zero-input limit cycles......Page 359
7.6.4 Elimination of constant-input limit cycles......Page 367
7.6.5 Forced-response stability of digital filters with nonlinearities due to overflow......Page 369
7.8 Exercises......Page 373
8.2 Basic principles......Page 376
8.3 Decimation......Page 377
8.4 Interpolation......Page 382
8.5 Rational sampling-rate changes......Page 386
8.7 Decimation and interpolation for efficient filter implementation......Page 387
8.7.1 Narrowband FIR filters......Page 388
8.7.2 Wideband FIR filters with narrow transition bands......Page 390
8.8 Multirate systems with MATLAB......Page 393
8.9 Summary......Page 395
8.10 Exercises......Page 396
9.2 Filter banks......Page 397
9.2.1 Decimation of a bandpass signal......Page 398
9.2.2 Inverse decimation of a bandpass signal......Page 399
9.2.3 Critically decimated M-band filter banks......Page 400
9.3.1 Noble identities......Page 402
9.3.2 Polyphase decompositions......Page 403
9.3.3 Commutator models......Page 404
9.3.4 M-band filter banks in terms of polyphase components......Page 405
9.3.5 Perfect reconstruction M-band filter banks......Page 407
9.3.6 Transmultiplexers......Page 411
9.4 General 2-band perfect reconstruction filter banks......Page 412
9.5 QMF filter banks......Page 416
9.6 CQF filter banks......Page 419
9.7 Block transforms......Page 421
9.8 Cosine-modulated filter banks......Page 423
9.9 Lapped transforms......Page 432
9.9.1 Fast algorithms and biorthogonal LOT......Page 442
9.9.2 Generalized LOT......Page 444
9.10 Wavelet transforms......Page 449
9.10.1 Hierarchical filter banks......Page 450
9.10.2 Wavelets......Page 451
9.10.4 Relation between x(t) and x(n)......Page 459
9.10.5 Relation between the wavelets and the filter coefficients......Page 460
9.10.6 Regularity......Page 461
9.10.7 Examples......Page 463
9.11 Filter banks and wavelets with MATLAB......Page 464
9.12 Summary......Page 471
9.13 Exercises......Page 472
10.2 Lattice form......Page 475
10.2.1 Filter banks using the lattice form......Page 477
10.3 Polyphase form......Page 479
10.5 Recursive running sum form......Page 481
10.6.1 Prefilter approach......Page 482
10.6.2 Interpolation approach......Page 486
10.6.3 Frequency response masking approach......Page 489
10.6.4 Quadrature approach......Page 501
10.7 Efficient FIR structures with MATLAB......Page 507
10.8 Summary......Page 509
10.9 Exercises......Page 510
11.2 IIR parallel and cascade filters......Page 513
11.2.1 Parallel form......Page 514
11.2.2 Cascade form......Page 516
11.2.3 Error spectrum shaping......Page 520
11.2.4 Closed-form scaling......Page 523
11.3 State-space sections......Page 524
11.3.1 Optimal state-space sections......Page 525
11.3.2 State-space sections without limit cycles......Page 530
11.4 Lattice filters......Page 539
11.5 Wave filters......Page 546
11.5.1 Motivation......Page 548
11.5.2 Wave elements......Page 550
One-port elements......Page 552
Voltage generalized immittance converter......Page 553
Transformer......Page 555
Gyrator......Page 556
Two-port adaptors......Page 557
n-port parallel adaptor......Page 559
11.5.3 Lattice wave digital filters......Page 566
11.7 Summary......Page 575
11.8 Exercises......Page 576
12.1 Introduction......Page 581
12.2.1 Properties of the two’s-complement representation......Page 582
12.2.2 Serial adder......Page 583
12.2.3 Serial multiplier......Page 585
12.2.4 Parallel adder......Page 593
12.3 Distributed arithmetic implementation......Page 594
12.4 Programmable logic devices......Page 602
12.5 ASIC implementation......Page 603
12.6 Digital signal processors......Page 608
12.6.2 Motorola DSPs......Page 610
12.6.3 Texas Instruments DSPs......Page 611
12.7 Summary......Page 613
12.8 Exercises......Page 614
References......Page 616
Index......Page 626