1 / 40

Digital Signal Processing II Lecture 2: FIR & IIR Filter Design

Digital Signal Processing II Lecture 2: FIR & IIR Filter Design. Marc Moonen Dept. E.E./ESAT, K.U.Leuven marc.moonen@esat.kuleuven.be homes.esat.kuleuven.be/~moonen/. PART-I : Filter Design/Realization. Ste p -1 : define filter specs (pass-band, stop-band, optimization criterion,…)

Download Presentation

Digital Signal Processing II Lecture 2: FIR & IIR Filter Design

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Digital Signal Processing IILecture 2: FIR & IIR Filter Design Marc Moonen Dept. E.E./ESAT, K.U.Leuven marc.moonen@esat.kuleuven.be homes.esat.kuleuven.be/~moonen/

  2. PART-I : Filter Design/Realization • Step-1 : define filter specs (pass-band, stop-band, optimization criterion,…) • Step-2 : derive optimal transfer function FIR or IIR design • Step-3 : filter realization (block scheme/flow graph) direct form realizations, lattice realizations,… • Step-4 : filter implementation (software/hardware) finite word-lengthissues, … question: implemented filter = designed filter ? Lecture-2 Lecture-3 Lecture-4 Version 2007-2008Lecture-2FIR/IIR Filter Design

  3. Lecture-2 : FIR & IIR Filter Design • FIR filters • Linear-phase FIR filters • FIR design by optimization Weighted least-squares design, Minimax design • FIR design in practice `Windows’, Equiripple design, Software (Matlab,…) • IIR filters • Poles and Zeros • IIR design by optimization Weighted least-squares design, Minimax design • IIR design in practice Analog IIR design : Butterworth/Chebyshev/elliptic Analog->digital : impulse invariant, bilinear transform,… Software (Matlab) Version 2007-2008Lecture-2FIR/IIR Filter Design

  4. FIR Filters FIR filter = finite impulse response filter • Also known as `moving average filters’ (MA) • N poles at the origin z=0 (hence guaranteed stability) • N zeros (zeros of B(z)), `all zero’ filters • corresponds to difference equation • impulse response Version 2007-2008Lecture-2FIR/IIR Filter Design

  5. k L Linear Phase FIR Filters • Non-causalzero-phase filters : example: symmetric impulse response h[-L],….h[-1],h[0],h[1],...,h[L] h[k]=h[-k], k=1..L frequency response is i.e. real-valued (=zero-phase) transfer function Version 2007-2008Lecture-2FIR/IIR Filter Design

  6. Linear Phase FIR Filters • Causallinear-phase filters = non-causal zero-phase + delay example: symmetric impulse response & N even h[0],h[1],….,h[N] N=2L (even) h[k]=h[N-k], k=0..L frequency response is = i.e. causal implementation of zero-phase filter, by introducing (group) delay k 0 N Version 2007-2008Lecture-2FIR/IIR Filter Design

  7. Linear Phase FIR Filters Type-1 Type-2 Type-3 Type-4 N=2L=even N=2L+1=odd N=2L=even N=2L+1=odd symmetric symmetricanti-symmetricanti-symmetric h[k]=h[N-k] h[k]=h[N-k] h[k]=-h[N-k] h[k]=-h[N-k] zero at zero at zero at LP/HP/BP LP/BP BP HP PS: `modulating’ Type-2 with 1,-1,1,-1,.. gives Type-4 (LP->HP) PS: `modulating’ Type-4 with 1,-1,1,-1,.. gives Type-2 (HP->LP) PS: `modulating’ Type-1 with 1,-1,1,-1,.. gives Type-1 (LP<->HP) PS: `modulating’ Type-3 with 1,-1,1,-1,.. gives Type-3(BP<->BP) PS: IIR filters can NEVER have linear-phase property ! (proof see literature) Version 2007-2008Lecture-2FIR/IIR Filter Design

  8. Filter Specification Ex: Low-pass Version 2007-2008Lecture-2FIR/IIR Filter Design

  9. FIR Filter Design by Optimization (I) Weighted Least Squares Design : • select one of the basic forms that yield linear phase e.g. Type-1 • specify desired frequency response (LP,HP,BP,…) • optimization criterion is where is a weighting function Version 2007-2008Lecture-2FIR/IIR Filter Design

  10. FIR Filter Design by Optimization • …this is equivalent to = `Quadratic Optimization’ problem Version 2007-2008Lecture-2FIR/IIR Filter Design

  11. FIR Filter Design by Optimization • Example: Low-pass design optimization function is i.e. Version 2007-2008Lecture-2FIR/IIR Filter Design

  12. FIR Filter Design by Optimization • a simpler problem is obtained by replacing the F(..) by… where the wi’s are a set of (n) selected sample frequencies This leads to an equivalent (`discretized’) quadratic optimization function: +++ : simple - - - : unpredictable behavior in between sample freqs. Compare to p.10 Version 2007-2008Lecture-2FIR/IIR Filter Design

  13. FIR Filter Design by Optimization • This is often supplemented with additional constraints, e.g. for pass- band and stop-band ripple control : • The resulting optimization problem is : minimize : (=quadratic function) subject to (=pass-band constraints) (=stop-band constraints) = `Quadratic Programming’ problem Version 2007-2008Lecture-2FIR/IIR Filter Design

  14. FIR Filter Design by Optimization (II) `Minimax’ Design : • select one of the basic forms that yield linear phase e.g. Type-1 • specify desired frequency response (LP,HP,BP,…) • optimization criterion is where is a weighting function Version 2007-2008Lecture-2FIR/IIR Filter Design

  15. FIR Filter Design by Optimization Ignore this slide • this is equivalent to • the constraint is equivalent to a so-called `semi-definiteness’ constraint where D>=0 denotes that the matrix is positive semi-definite Version 2007-2008Lecture-2FIR/IIR Filter Design

  16. Filter Design by Optimization Ignore this slide • a realistic way to implement these constraints, is to impose the constraints (only) on a set of sample frequencies : i.e. a `Semi-Definite Programming’ (SDP) problem, for which efficient interior-point algorithms and software are available. Version 2007-2008Lecture-2FIR/IIR Filter Design

  17. FIR Filter Design by Optimization • Conclusion: (I) weighted least squares design (II) minimax design provide general `framework’, procedures to translate filter design problems into standard optimization problems • In practice (and in textbooks): emphasis on specific (ad-hoc) procedures : - filter design based on `windows’ - equiripple design Version 2007-2008Lecture-2FIR/IIR Filter Design

  18. FIR Filter Design using `Windows’ Example : Low-pass filter design • ideal low-pass filter is • hence ideal time-domain impulse response is • truncate hd[k] to N+1 samples : • add (group) delay to turn into causal filter Version 2007-2008Lecture-2FIR/IIR Filter Design

  19. FIR Filter Design using `Windows’ Example : Low-pass filter design (continued) • PS : it can be shown that the filter obtained by such time-domain truncation is also obtained by using a weighted least-squares design procedure with the given Hd, and weighting function • truncation corresponds to applying a `rectangular window’ : • +++: simple procedure (also for HP,BP,…) • - - - : truncation in time-domain results in `Gibbs effect’ in frequency domain, i.e. large ripple in pass-band and stop-band (at band edge discontinuity), which cannot be reduced by increasing the filter order N. Version 2007-2008Lecture-2FIR/IIR Filter Design

  20. FIR Filter Design using `Windows’ Remedy : apply windows other than rectangular window: • time-domain multiplication with a window function w[k] corresponds to frequency domain convolution with W(z) : • candidate windows : Han, Hamming, Blackman, Kaiser,…. (see textbooks, see DSP-I) • window choice/design = trade-off between side-lobe levels (define peak pass-/stop-band ripple) and width main-lobe (defines transition bandwidth) Version 2007-2008Lecture-2FIR/IIR Filter Design

  21. FIR Equiripple Design • Starting point is minimax criterion, e.g. • Based on theory of Chebyshev approximation and the `alternation theorem’, which (roughly) states that the optimal d’s are such that the `max’ (maximum weighted approximation error) is obtained at L+2 extremal frequencies… …that hence will exhibit the same maximum ripple (`equiripple’) • Iterative procedure for computing extremal frequencies, etc. (Remez exchange algorithm, Parks-McClellan algorithm) • Very flexible, etc., available in many software packages • Details omitted here (see textbooks) Version 2007-2008Lecture-2FIR/IIR Filter Design

  22. FIR Filter Design Software • FIR Filter design abundantly available in commercial software • Matlab: b=fir1(n,Wn,type,window), windowed linear-phase FIR design, n is filter order, Wn defines band-edges, type is `high’,`stop’,… b=fir2(n,f,m,window), windowed FIR design based on inverse Fourier transform with frequency points f and corresponding magnitude response m b=remez(n,f,m), equiripple linear-phase FIR design with Parks-McClellan (Remez exchange) algorithm See exercise sessions Version 2007-2008Lecture-2FIR/IIR Filter Design

  23. IIR filters Rational transfer function : N poles (zeros of A(z)) , N zeros (zeros of B(z)) • infinitely long impulse response • stable iff poles lie inside the unit circle • corresponds to difference equation = also known as `ARMA’ (autoregressive-moving average) Version 2007-2008Lecture-2FIR/IIR Filter Design

  24. IIR Filter Design +++ • low-order filters can produce sharp frequency response • low computational cost - - - • design more difficult • stability should be checked/guaranteed • phase response not easily controlled (e.g. no linear-phase IIR filters) • coefficient sensitivity, quantization noise, etc. can be a problem (see Lecture-4) Version 2007-2008Lecture-2FIR/IIR Filter Design

  25. pole pole Nyquist freq (z=-1) Re Im DC (z=1) IIR filters Frequency response versus pole-zero location : (cfr. frequency response is z-transform evaluated on the unit circle) Example-1 : Low-pass filter poles at pole near unit-circle introduces `peak’ in frequency response hence pass-band can be set by pole placement Version 2007-2008Lecture-2FIR/IIR Filter Design

  26. pole pole Nyquist freq DC zero IIR filters Frequency response versus pole-zero location : Example-2 : Low-pass filter poles at zeros at zero near (or on) unit-circle introduces `dip’ (or transmision zero) in freq. response hence stop-band can be emphasized by zero placement Version 2007-2008Lecture-2FIR/IIR Filter Design

  27. IIR Filter Design by Optimization (I) Weighted Least Squares Design : • IIR filter transfer function is • specify desired frequency response (LP,HP,BP,…) • optimization criterion is where is a weighting function • stability constraint : Version 2007-2008Lecture-2FIR/IIR Filter Design

  28. IIR Filter Design by Optimization (II) `Minimax’ Design : • IIR filter transfer function is • specify desired frequency response (LP,HP,BP,…) • optimization criterion is where is a weighting function • stability constraint : Version 2007-2008Lecture-2FIR/IIR Filter Design

  29. IIR Filter Design by Optimization These optimization problems are significantly more complex than those for the FIR design case… : • Problem-1:presence of denominator polynomial leads to highly non-linear optimization (instead of quadratic optimization in FIR case) • A possible procedure (`Steiglitz-McBride’) consists in iteratively (k=1,2,…) minimizing …which leads to iterative Quadratic Programming, etc.. (similar for minimax) Version 2007-2008Lecture-2FIR/IIR Filter Design

  30. IIR Filter Design by Optimization These optimization problems are significantly more complex than those for the FIR design case… : • Problem-2: stability constraint (zeros of a high-order polynomial are related to the polynomial’s coefficients in a highly non-linear manner) • Solutions based on alternative stability constraints, that e.g. are affine functions of the filter coefficients, etc… • Topic of ongoing research, details omitted here Version 2007-2008Lecture-2FIR/IIR Filter Design

  31. IIR Filter Design by Optimization • Conclusion: (I) weighted least squares design (II) minimax design provide general `framework’, procedures to translate filter design problems into ``standard’’ optimization problems • In practice (and in textbooks): emphasis on specific (ad-hoc) procedures : - IIR filter design based analog filter design (s-domain design) and analog->digital conversion - IIR filter design by modeling = direct z-domain design (Pade approximation, Prony, etc., not addressed here) Version 2007-2008Lecture-2FIR/IIR Filter Design

  32. N N=4 poles of H(s) poles of H(-s) Analog IIR Filter Design Commonly used analog filters : • Lowpass Butterworth filters - all-pole filters (H) characterized by a specific magnitude response (G): (N=filter order) - poles of G(s)=H(s)H(-s) are equally spaced on circle of radius - Then H(jw) is found to be monotonic in pass-band & stop-band, with `maximum flat response’, i.e. (2N-1) derivatives are zero at Version 2007-2008Lecture-2FIR/IIR Filter Design

  33. Analog IIR Filter Design Commonly used analog filters : • Lowpass Chebyshev filters (type-I) all-pole filters characterized by magnitude response (N=filter order) is related to passband ripple are Chebyshev polynomials: Version 2007-2008Lecture-2FIR/IIR Filter Design

  34. Analog IIR Filter Design Commonly used analog filters : • Lowpass Chebyshev filters (type-I) All-pole filters, poles of H(s)H(-s) are on ellipse in s-plane Equiripple in the pass-band Monotone in the stop-band • Lowpass Chebyshev filters (type-II) Pole-zero filters based on Chebyshev polynomials Monotone in the pass-band Equiripple in the stop-band • Lowpass Elliptic (Cauer) filters Pole-zero filters based on Jacobian elliptic functions Equiripple in the pass-band and stop-band (hence) yield smallest-order for given set of specs Version 2007-2008Lecture-2FIR/IIR Filter Design

  35. Analog IIR Filter Design Frequency Transformations : • Principle :prototype low-pass filter (e.g. cut-off frequency = 1 rad/sec) is transformed to properly scaled low-pass, high-pass, band-pass, band-stop,… filter • example:replacing s by moves cut-off frequency to • example:replacing s by turns LP into HP, with cut-off frequency • example:replacing s by turns LP into BP • etc... Version 2007-2008Lecture-2FIR/IIR Filter Design

  36. Analog -> Digital • Principle : design analog filter (LP/HP/BP/…), and then convert it to a digital filter. • Conversion methods: - convert differential equation into difference equation - convert continuous-time impulse response into discrete-time impulse response - convert transfer function H(s) into transfer function H(z) • Requirement: the left-half plane of the s-plane should map into the inside of the unit circle in the z-plane, so that a stable analog filter is converted into a stable digital filter. Version 2007-2008Lecture-2FIR/IIR Filter Design

  37. j jw z-plane s-plane 1 Analog -> Digital Ignore this slide • Conversion methods: (I) convert differential equation into difference equation : -in a difference equation, a derivative dy/dt is replaced by a `backward difference’ (y(kT)-y(kT-T))/T=(y[k]-y[k-1])/T, where T=sampling interval. -similarly, a second derivative, etc… -eventually (details omitted), this corresponds to replacing s by (1-1/z)/T in Ha(s) (=analog transfer function) : -stable analog filters are mapped into stable digital filters, but pole location for digital filter confined to only a small region (o.k. only for LP or BP) Version 2007-2008Lecture-2FIR/IIR Filter Design

  38. j jw z-plane 1 s-plane Analog -> Digital Ignore this slide • Conversion methods: (II) convert continuous-time impulse response into discrete-time impulse response : -given continuous-time impulse response ha(t), discrete-time impulse response is where T=sampling interval. -eventually (details omitted) this corresponds to a (many-to-one) mapping -aliasing (!) if continuous-time response has significant frequency content above the Nyquist frequency Version 2007-2008Lecture-2FIR/IIR Filter Design

  39. j jw z-plane s-plane 1 Analog -> Digital • Conversion methods: (III) convert continuous-time system transfer function into discrete-time system transfer function :Bilinear Transform -mapping that transforms (whole!) jw-axis of the s-plane into unit circle in the z-plane only once, i.e. that avoids aliasing of the frequency components. -for low-frequencies, this is an approximation of -for high frequencies : significant frequency compression (`warping’) (sometimes pre-compensated by `pre-warping’) Version 2007-2008Lecture-2FIR/IIR Filter Design

  40. IIR Filter Design Software • IIR filter design considerably more complicated than FIR design (stability, phase response, etc..) • (Fortunately) IIR Filter design abundantly available in commercial software • Matlab: [b,a]=butter/cheby1/cheby2/ellip(n,…,Wn), IIR LP/HP/BP/BS design based on analog prototypes, pre-warping, bilinear transform, … immediately gives H(z) (oef!) analog prototypes, transforms, … can also be called individually filter order estimation tool etc... See exercise sessions Version 2007-2008Lecture-2FIR/IIR Filter Design

More Related