Download presentation
Published byRodney Casey Modified over 9 years ago
1
Digital Signal Processing II Chapter 3: FIR & IIR Filter Design
Marc Moonen Dept. E.E./ESAT, K.U.Leuven
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-length issues, … question: implemented filter = designed filter ? Chapter-3 Chapter-4 Chapter-5 Version Chapter-3: FIR/IIR Filter Design
3
Chapter-3 : 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 IIR design in practice Analog IIR design : Butterworth/Chebyshev/elliptic Analog->digital : impulse invariant, bilinear transform,… Software (Matlab) Version Chapter-3: FIR/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 Chapter-3: FIR/IIR Filter Design
5
Linear Phase FIR Filters
Non-causal zero-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 k L Version Chapter-3: FIR/IIR Filter Design
6
Linear Phase FIR Filters
Causal linear-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 N Version Chapter-3: FIR/IIR Filter Design
7
Linear Phase FIR Filters
Type Type Type Type-4 N=2L=even N=2L+1=odd N=2L=even N=2L+1=odd symmetric symmetric anti-symmetric anti-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 Chapter-3: FIR/IIR Filter Design
8
Filter Specification Ex: Low-pass
Version Chapter-3: FIR/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 Chapter-3: FIR/IIR Filter Design
10
FIR Filter Design by Optimization
…this is equivalent to = `Quadratic Optimization’ problem Version Chapter-3: FIR/IIR Filter Design
11
FIR Filter Design by Optimization
Example: Low-pass design optimization function is i.e. Version Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/IIR Filter Design
15
FIR Filter Design by Optimization
Skip 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 Chapter-3: FIR/IIR Filter Design
16
Filter Design by Optimization
Skip 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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-5) Version Chapter-3: FIR/IIR Filter Design
25
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 DC (z=1) Nyquist freq (z=-1) pole Re Im pole near unit-circle introduces `peak’ in frequency response hence pass-band can be set by pole placement Version Chapter-3: FIR/IIR Filter Design
26
hence stop-band can be emphasized by zero placement
IIR filters Frequency response versus pole-zero location : Example-2 : Low-pass filter poles at zeros at DC Nyquist freq zero pole zero near (or on) unit-circle introduces `dip’ (or transmision zero) in freq. response hence stop-band can be emphasized by zero placement Version Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/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 non-linear (non-quadratic) optimization A possible procedure (`Steiglitz-McBride’) consists in iteratively (k=1,2,…) minimizing …which leads to iterative Quadratic Programming, etc.. (similar for minimax) Skip this part Version Chapter-3: FIR/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 Chapter-3: FIR/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 Chapter-3: FIR/IIR Filter Design
32
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 poles of H(s) N=4 poles of H(-s) N Version Chapter-3: FIR/IIR Filter Design
33
Analog IIR Filter Design
Skip this slide 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 Chapter-3: FIR/IIR Filter Design
34
Analog IIR Filter Design
Skip this slide 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 Chapter-3: FIR/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 Chapter-3: FIR/IIR Filter Design
36
Analog -> Digital Principle : Conversion methods:
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 Chapter-3: FIR/IIR Filter Design
37
Skip this slide Analog -> Digital 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) jw s-plane z-plane j 1 Version Chapter-3: FIR/IIR Filter Design
38
Skip this slide Analog -> Digital 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 s-plane jw z-plane j 1 Version Chapter-3: FIR/IIR Filter Design
39
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’) s-plane jw z-plane j 1 Version Chapter-3: FIR/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 Chapter-3: FIR/IIR Filter Design
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.