ESE 531: Digital Signal Processing Linear Filter Design What Is A
Total Page:16
File Type:pdf, Size:1020Kb
Linear Filter Design ESE 531: Digital Signal Processing ! Used to be an art " Now, lots of tools to design optimal filters ! For DSP there are two common classes Lec 15: March 15, 2018 " Infinite impulse response IIR Design of IIR Filters " Finite impulse response FIR ! Both classes use finite order of parameters for design Penn ESE 531 Spring 2018 – Khanna Penn ESE 531 Spring 2018 – Khanna Adapted from M. Lustig, EECS Berkeley 2 What is a Linear Filter? Filter Specifications ! Attenuates certain frequencies ! Passes certain frequencies ! Affects both phase and magnitude ! What does it mean to design a filter? " Determine the parameters of a transfer function or difference equation that approximates a desired impulse response (h[n]) or frequency response (H(ejω)). Penn ESE 531 Spring 2018 – Khanna Adapted from M. Lustig, EECS Berkeley 3 Penn ESE 531 Spring 2018 - Khanna 4 What is a Linear Filter? Today ! Attenuates certain frequencies ! IIR Filter Design ! Passes certain frequencies " Impulse Invariance " Bilinear Transformation ! Affects both phase and magnitude ! Transformation of DT Filters ! FIR Filters ! IIR " Mostly non-linear phase response " Could be linear over a range of frequencies ! FIR " Much easier to control the phase " Both non-linear and linear phase Penn ESE 531 Spring 2018 – Khanna Adapted from M. Lustig, EECS Berkeley 5 Penn ESE 531 Spring 2018 - Khanna 6 1 IIR Filter Design Impulse Invariance ! Transform continuous-time filter into a discrete- ! Want to implement continuous-time system in time filter meeting specs discrete-time " Pick suitable transformation from s (Laplace variable) to z (or t to n) " Pick suitable analog Hc(s) allowing specs to be met, transform to H(z) ! We’ve seen this before… impulse invariance Penn ESE 531 Spring 2018 - Khanna 7 Penn ESE 531 Spring 2018 - Khanna 8 Impulse Invariance Impulse Invariance ! With Hc(jΩ) bandlimited, choose ! With Hc(jΩ) bandlimited, choose j ω j ω H(e ω ) = H ( j ), ω < π H(e ω ) = H ( j ), ω < π c T c T ! With the further requirement that T be chosen such ! With the further requirement that T be chosen such that that Hc ( jΩ) = 0, Ω ≥ π / T Hc ( jΩ) = 0, Ω ≥ π / T h[n] = Thc (nT ) Penn ESE 531 Spring 2018 - Khanna 9 Penn ESE 531 Spring 2018 - Khanna 10 IIR by Impulse Invariance Example ! If Hc(jΩ)≈0 for |Ωd| > π/Td, there is no aliasing jω and H(e ) = H(jω/Td), |ω|<π jω ! To get a particular H(e ), find corresponding Hc and Td for which above is true (within specs) ! Note: Td is not for aliasing control, used for frequency scaling. Penn ESE 531 Spring 2018 - Khanna 11 Penn ESE 531 Spring 2018 - Khanna 12 2 Example Example 1 eat ←⎯L→ s − a Penn ESE 531 Spring 2018 - Khanna 13 Penn ESE 531 Spring 2018 - Khanna 14 Example Example jΩ Penn ESE 531 Spring 2018 - Khanna 15 Penn ESE 531 Spring 2018 - Khanna 16 Impulse Invariance Mapping Impulse Invariance ! Let, Hc ( jΩ) = 0, Ω ≥ π / T h[n] = Thc (nT ) ! If sampling at Nyquist Rate then ∞ j ⎡ ⎛ω 2πk ⎞⎤ H(e ω ) H j = ∑ c ⎢ ⎜ − ⎟⎥ k=−∞ ⎣ ⎝T T ⎠⎦ jω ⎛ ω ⎞ H(e ) = Hc ⎜ j ⎟, |ω|<π ⎝ T ⎠ Penn ESE 531 Spring 2018 - Khanna 17 Penn ESE 531 Spring 2018 - Khanna 18 3 Impulse Invariance Impulse Invariance ! Sampling the impulse response is equivalent to mapping the ! Sampling the impulse response is equivalent to mapping the s-plane to the z-plane using: s-plane to the z-plane using: st0 jω st0 jω " z = e = r e " z = e = r e ! The entire Ω axis of the s-plane wraps around the unit circle ! The entire Ω axis of the s-plane wraps around the unit circle of the z-plane an infinite number of times of the z-plane an infinite number of times ! The left half s-plane maps to the interior of the unit circle and the right half plane to the exterior Penn ESE 531 Spring 2018 - Khanna 19 Penn ESE 531 Spring 2018 - Khanna 20 Review: S-plane and stability Impulse Invariance Mapping jΩ σ Penn ESE 531 Spring 2018 - Khanna 21 Penn ESE 531 Spring 2018 - Khanna 22 Impulse Invariance Impulse Invariance Mapping ! Sampling the impulse response is equivalent to mapping the s-plane to the z-plane using: st0 jω " z = e = r e ! The entire Ω axis of the s-plane wraps around the unit circle of the z-plane an infinite number of times ! The left half s-plane maps to the interior of the unit circle and the right half plane to the exterior ! This means stable analog filters (poles in LHP) will transform to stable digital filters (poles inside unit circle) ! This is a many-to-one mapping of strips of the s-plane to regions of the z-plane " Not a conformal mapping st0 " The poles map according to z = e , but the zeros do not always Penn ESE 531 Spring 2018 - Khanna 23 Penn ESE 531 Spring 2018 - Khanna 24 4 Impulse Invariance Mapping Impulse Invariance ! Limitation of Impulse Invariance: overlap of images of the frequency response. This prevents it from being used for high-pass filter design Penn ESE 531 Spring 2018 - Khanna 25 Penn ESE 531 Spring 2018 - Khanna 26 Bilinear Transformation Bilinear Transformation ! The technique uses an algebraic transformation between the variables s and z that maps the entire jΩ-axis in the s-plane to one revolution of the unit circle in the z-plane. ω ! Substituting s = σ+ j Ω and z = ej Penn ESE 531 Spring 2018 - Khanna 27 Penn ESE 531 Spring 2018 - Khanna 28 Bilinear Transformation Bilinear Transformation ω ! Substituting s = σ+ j Ω and z = ej Penn ESE 531 Spring 2018 - Khanna 29 Penn ESE 531 Spring 2018 - Khanna 30 5 Bilinear Transformation Example: Notch Filter ! The continuous time filter with: s2 +Ω2 H (s) 0 a = 2 2 s + Bs +Ω0 Penn ESE 531 Spring 2018 - Khanna 31 Penn ESE 531 Spring 2018 - Khanna 32 Simple Band-Stop (Notch) Filter Transformation of DT Filters Z −1 = G(z−1) Hlp(Z) ! Z – complex variable for the LP filter ! z – complex variable for the transformed filter ! Map Z-plane#z-plane with transformation G Penn ESE 531 Spring 2018 – Khanna Adapted from M. Lustig, EECS Berkeley 33 Penn ESE 531 Spring 2018 - Khanna 34 Transformation of DT Filters Example 1: ! Lowpass#highpass " Shift frequency by π −1 −1 Z = G(z ) Z −1 z−1 Hlp(Z) = − ! Map Z-plane#z-plane with transformation G Penn ESE 531 Spring 2018 - Khanna 35 Penn ESE 531 Spring 2018 - Khanna 36 6 Example 1: Example 2: ! Lowpass#highpass ! Lowpass#bandpass " Shift frequency by π Z −1 = −z−2 1 1 H (z) = ⎯⎯→ H (z) = lp −1 bp −2 Z −1 = −z−1 1− az 1+ az Pole at z=a Pole at z=±j√a Penn ESE 531 Spring 2018 - Khanna 37 Penn ESE 531 Spring 2018 - Khanna 38 Example 2: Transformation Constraints on G(z-1) ! Lowpass#bandpass ! If Hlp(Z) is the rational system function of a causal −1 −2 and stable system, we naturally require that the Z = −z transformed system function H(z) be a rational 1 1 H (z) H (z) function and that the system also be causal and lp = 1 ⎯⎯→ bp = 2 1− az− 1+ az− stable. -l -1 Pole at z=a Pole at z=±j√a " G(Z ) must be a rational function of z " The inside of the unit circle of the Z-plane must map to ! Lowpass#bandstop the inside of the unit circle of the z-plane " The unit circle of the Z-plane must map onto the unit −1 −2 Z = z circle of the z-plane. 1 1 Hlp (z) = ⎯⎯→ Hbs (z) = 1− az−1 1− az−2 Penn ESE 531 Spring 2018 - Khanna Pole at z=±√a 39 Penn ESE 531 Spring 2018 - Khanna 40 Transformation Constraints on G(z-1) Transformation Constraints on G(z-1) ! Respective unit circles in both planes ! Respective unit circles in both planes Z −1 = G(z−1) e− jθ = G(e− jω ) − jω e− jθ = G(e− jω ) e j∠G(e ) Penn ESE 531 Spring 2018 - Khanna 41 Penn ESE 531 Spring 2018 - Khanna 42 7 Transformation Constraints on G(z-1) Transformation Constraints on G(z-1) ! Respective unit circles in both planes ! General form that meets all constraints: " ak real and |ak|<1 Z −1 = G(z−1) e− jθ = G(e− jω ) − jω e− jθ = G(e− jω ) e j∠G(e ) j 1= G(e− ω ) −θ = ∠G(e− jω ) Penn ESE 531 Spring 2018 - Khanna 43 Penn ESE 531 Spring 2018 - Khanna 44 General Transformation General Transformation ! Lowpass#lowpass ! Lowpass#lowpass ! Changes passband/stopband edge frequencies ! Changes passband/stopband edge frequencies Penn ESE 531 Spring 2018 - Khanna 45 Penn ESE 531 Spring 2018 - Khanna 46 General Transformation General Transformations ! Lowpass#lowpass ! Changes passband/stopband edge frequencies Penn ESE 531 Spring 2018 - Khanna 47 Penn ESE 531 Spring 2018 - Khanna 48 8 Reminder: Simple Low Pass Filter What is a Linear Filter? ! Attenuates certain frequencies ! Passes certain frequencies ! Affects both phase and magnitude H(e jω ) ! IIR 1 " Mostly non-linear phase response 1 2 " Could be linear over a range of frequencies ω ω ! c π FIR " Much easier to control the phase " Both non-linear and linear phase Penn ESE 531 Spring 2018 – Khanna Penn ESE 531 Spring 2018 – Khanna Adapted from M. Lustig, EECS Berkeley 49 Adapted from M. Lustig, EECS Berkeley 50 FIR GLP: Type I and II FIR GLP: Type III and IV Penn ESE 531 Spring 2018 – Khanna Penn ESE 531 Spring 2018 – Khanna Adapted from M.