1 Chapter 7 FIR Filter Design Techniques. 2 Design of FIR Filters by Windowing (1)  We have discussed techniques for the design of discrete-time IIR.

Slides:



Advertisements
Similar presentations
Chapter 8. FIR Filter Design
Advertisements

Digital Filter Banks The digital filter bank is set of bandpass filters with either a common input or a summed output An M-band analysis filter bank is.
CSE 330: Numerical Methods
Hossein Sameti Department of Computer Engineering Sharif University of Technology.
Nonrecursive Digital Filters
EE513 Audio Signals and Systems Digital Signal Processing (Synthesis) Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
Husheng Li, UTK-EECS, Fall The specification of filter is usually given by the tolerance scheme.
Hossein Sameti Department of Computer Engineering Sharif University of Technology.
Filtering Filtering is one of the most widely used complex signal processing operations The system implementing this operation is called a filter A filter.
Ideal Filters One of the reasons why we design a filter is to remove disturbances Filter SIGNAL NOISE We discriminate between signal and noise in terms.
LINEAR-PHASE FIR FILTERS DESIGN
Chapter 8 FIR Filter Design
Parks-McClellan FIR Filter Design
EECS 20 Chapter 9 Part 21 Convolution, Impulse Response, Filters Last time we Revisited the impulse function and impulse response Defined the impulse (Dirac.
AGC DSP AGC DSP Professor A G Constantinides 1 Digital Filter Specifications Only the magnitude approximation problem Four basic types of ideal filters.
EEE422 Signals and Systems Laboratory Filters (FIR) Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
ELEN 5346/4304 DSP and Filter Design Fall Lecture 11: LTI FIR filter design Instructor: Dr. Gleb V. Tcheslavski Contact:
Relationship between Magnitude and Phase (cf. Oppenheim, 1999)
Unit III FIR Filter Design
1 Lecture 2: February 27, 2007 Topics: 2. Linear Phase FIR Digital Filter. Introduction 3. Linear-Phase FIR Digital Filter Design: Window (Windowing)
Practical Signal Processing Concepts and Algorithms using MATLAB
1 Chapter 8 The Discrete Fourier Transform 2 Introduction  In Chapters 2 and 3 we discussed the representation of sequences and LTI systems in terms.
Ch 8.1 Numerical Methods: The Euler or Tangent Line Method
1 Diagramas de bloco e grafos de fluxo de sinal Estruturas de filtros IIR Projeto de filtro FIR Filtros Digitais.
1 Lecture 5: March 20, 2007 Topics: 1. Design of Equiripple Linear-Phase FIR Digital Filters (cont.) 2. Comparison of Design Methods for Linear- Phase.
Chapter 7 IIR Filter Design
Filter Design Techniques
Zhongguo Liu_Biomedical Engineering_Shandong Univ. Biomedical Signal processing Chapter 7 Filter Design Techniques Zhongguo Liu Biomedical.
EE Audio Signals and Systems Digital Signal Processing (Synthesis) Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
IIR Filter design (cf. Shenoi, 2006) The transfer function of the IIR filter is given by Its frequency responses are (where w is the normalized frequency.
1 BIEN425 – Lecture 11 By the end of the lecture, you should be able to: –Design and implement FIR filters using frequency-sampling method –Compare the.
Digital Signal Processing FIR Filter Design
Copyright ©2010, ©1999, ©1989 by Pearson Education, Inc. All rights reserved. Discrete-Time Signal Processing, Third Edition Alan V. Oppenheim Ronald W.
1 Chapter 7 Filter Design Techniques (cont.). 2 Optimum Approximation Criterion (1)  We have discussed design of FIR filters by windowing, which is straightforward.
Dan Ellis 1 ELEN E4810: Digital Signal Processing Topic 9: Filter Design: FIR 1.Windowed Impulse Response 2.Window Shapes 3.Design by Iterative.
1 Lecture 3: March 6, 2007 Topic: 1. Frequency-Sampling Methods (Part I)
Chapter 7 Finite Impulse Response(FIR) Filter Design
1 Introduction to Digital Filters Filter: A filter is essentially a system or network that selectively changes the wave shape, amplitude/frequency and/or.
Chapter 9-10 Digital Filter Design. Objective - Determination of a realizable transfer function G(z) approximating a given frequency response specification.
1 Conditions for Distortionless Transmission Transmission is said to be distortion less if the input and output have identical wave shapes within a multiplicative.
Lecture#10 Spectrum Estimation
Chapter 7. Filter Design Techniques
1 Digital Signal Processing Digital Signal Processing  IIR digital filter structures  Filter design.
Design of FIR Filters. 3.1 Design with Least Squared Error Error Criterion.
Summary of Widowed Fourier Series Method for Calculating FIR Filter Coefficients Step 1: Specify ‘ideal’ or desired frequency response of filter Step 2:
The IIR FILTERs These are highly sensitive to coefficients,
Optimum Approximation of FIR Filters Quote of the Day There are three kinds of lies: lies, damned lies, and statistics. Benjamin Disraeli Content and Figures.
What is filter ? A filter is a circuit that passes certain frequencies and rejects all others. The passband is the range of frequencies allowed through.
Generalized Linear Phase Quote of the Day The mathematical sciences particularly exhibit order, symmetry, and limitation; and these are the greatest forms.
Chapter 6. Digital Filter Structures and Designs Section
Finite Impulse Response Filtering EMU-E&E Engineering Erhan A. Ince Dec 2015.
Lecture 13 Outline: FIR Filter Design: Freq. Response Matching, Causal Design, Windowing Announcements: Reading: “4: FIR Discrete-Time Filters” pp
Chapter 5. Transform Analysis of LTI Systems Section
EEE4176 Application of Digital Signal Processing
DSP-CIS Part-II / Chapter-4 : Filter Design Marc Moonen Dept. E.E./ESAT-STADIUS, KU Leuven
Professor A G Constantinides 1 Digital Filter Specifications We discuss in this course only the magnitude approximation problem There are four basic types.
IIR Filter design (cf. Shenoi, 2006)
IIR Filters FIR vs. IIR IIR filter design procedure
J McClellan School of Electrical and Computer Engineering
Fourier Series FIR About Digital Filter Design
LINEAR-PHASE FIR FILTERS DESIGN
Filter Design by Windowing
لجنة الهندسة الكهربائية
Ideal Filters One of the reasons why we design a filter is to remove disturbances Filter SIGNAL NOISE We discriminate between signal and noise in terms.
Chapter 7 FIR Digital Filter Design
Chapter 7 Finite Impulse Response(FIR) Filter Design
Tania Stathaki 811b LTI Discrete-Time Systems in Transform Domain Simple Filters Comb Filters (Optional reading) Allpass Transfer.
ELEN E4810: Digital Signal Processing Topic 9: Filter Design: FIR
Tania Stathaki 811b LTI Discrete-Time Systems in Transform Domain Ideal Filters Zero Phase Transfer Functions Linear Phase Transfer.
Chapter 7 Finite Impulse Response(FIR) Filter Design
Presentation transcript:

1 Chapter 7 FIR Filter Design Techniques

2 Design of FIR Filters by Windowing (1)  We have discussed techniques for the design of discrete-time IIR filters based on the transformations of continuous-time IIR systems.  In contrast, FIR design filters are almost entirely restricted to discrete-time implementations. The design techniques for filters are based on directly approximating the desired frequency response of the discrete-time system.  Most techniques for approximating the magnitude response of an FIR system assume a linear phase constraint, thereby avoiding the problem of spectrum factorization that complicates the direct design of IIR filters.  The simplest method for FIR design is called the Window method.

3 Design of FIR Filters by Windowing (2)  We consider an ideal desired frequency response that can be represented as In turn, the impulse response sequence can be expressed as  Many idealized systems are defined by piecewise-constant or piecewise-functional frequency responses with discontinuities at the boundaries between bands. As a result, these systems have impulse responses that are noncausal and infinitely long.  The most straightforward approach to obtaining a causal FIR approximation to such systems is to truncate the ideal response.

4 Design of FIR Filters by Windowing (3)  The simplest way to obtain a causal FIR filter from h d [n] is to define a new system with impulse response h[n] given by  As can be seen in the LPF example (we discussed it in Ch. 2), there is the Gibbs phenomenon.  More generally, we can represent h[n] as the product of the desired impulse response and a finite-duration “window” w[n], where the window for the above example is

5 Design of FIR Filters by Windowing (4)

6 Design of FIR Filters by Windowing (5)  From the modulation theorem (or windowing theorem) That is, H(e j  ) is the periodic convolution of H d (e j  ) and W(e j  ). Thus, H(e j  ) will be a smeared version of H d (e j  ).

7 Design of FIR Filters by Windowing (6)  If W(e j  ) is concentrated in a narrowband of frequencies around  =0, then H(e j  ) will look like H d (e j  ), except where H d (e j  ) changes very abruptly.  The choice of the window is to have w[n] as short as possible in duration, so as to minimize computation in the implementation of the filter, while having W(e j  ) approximate an impulse. Clearly, there are conflicting requirements.  For the rectangular window, the side lobes are large, and as M increases, the peak amplitudes of the main lobe and the side lobes grow in a manner such that the area under lobe is a constant while the width of each lobe decreases with M.

8 Design of FIR Filters by Windowing (7)  Frequency response of rectangular window  Next, we will see that, by tapering the window smoothly to zero at each end, the height of the side lobes can be reduced at the expense of a wider main lobes.

9 Properties of Commonly Used Windows (1)  Commonly used windows Rectangular Bartlett (triangular) Hanning Hamming Blackman

10 Properties of Commonly Used Windows (2)  Commonly used windows (Note that the windows are plotted as functions of a continuous variable. The actual window sequence is defined only at integer value of n.)

11 Properties of Commonly Used Windows (3)  Commonly used windows – magnitude response M=50 Rectangular Peak sidelobe level: –13 dB Approx. width of main lobe: 4  /(M+1) Bartlett Peak sidelobe level: –25 dB Approx. width of main lobe: 8  /M

12 Properties of Commonly Used Windows (4) Hanning Peak sidelobe level: –31 dB Approx. width of main lobe: 8  /M Hamming Peak sidelobe level: –41 dB Approx. width of main lobe: 8  /M Blackman Peak sidelobe level: –57 dB Approx. width of main lobe: 12  /M

13 Incorporation of Generalized Linear Phase  All the windows have the property that i.e., they are symmetric about M/2.  If the desired impulse response is also symmetric about M/2, i.e., if h d [n]= h d [M – n], then the windowed impulse response will also have that symmetry, and the resulting frequency response will have a generalized linear phase; that is where A e (e j  ) is real and is an even function of . Properties of Commonly Used Windows (5)

14 Incorporation of Generalized Linear Phase (cont.)  If the desired impulse response is anti-symmetric about M/2, i.e., if h d [n]= –h d [M – n], then the windowed impulse response will also be anti-symmetry about M/2, and the resulting frequency response will have a generalized linear phase; that is where A o (e j  ) is real and is an odd function of . Properties of Commonly Used Windows (6)

15  The trade-off between the main lobe width and side-lobe area can be quantified by seeking the window function that is maximally concentrated around  =0 in the frequency domain. This was considered and the solution shows that the filter design involves prolate spheroidal wave functions and thus is difficult.  However, Kaiser found that a near-optimal window could be formed using the zeroth-order modified Bessel function of the first kind [I 0 (·)], a function that is much easier to compute.  The Kaiser window is defined as where  =M/2. The Kaiser Window Filter Design Method (1)

16  The Kaiser window has two parameters: the window length (M+1) and a shape parameter . By adjusting (M+1) and , the side-lobe amplitude and main-lobe width can be properly designed.   =0 becomes the rectangular window. Increasing  will reduce the side-lobe level, but the main-lobe becomes wider.  Increasing M while holding  constant causes the main lobe to reduce in width, but does not affect the amplitude of the side lobes.  Through extensive numerical experiments, Kaiser obtained a pair of formulas to predict the values of  and  needed to meet a given filter specification. The Kaiser Window Filter Design Method (2)

17 The Kaiser Window Filter Design Method (3)

18 Relationship of the Kaiser Window to Other Windows

19 Window Related Matlab Functions (Signal Processing Toolbox) WINDOW - Window function gateway returns an N-point window of type specified by the function in a column can be any valid window function name, for - Bartlett - Blackman - Hamming - Hann - Kaiser - Rectangular - Triangular window.

20 W = BARTLETT(N) returns the N-point Bartlett window. W=BLACKMAN(N) returns the N-point symmetric Blackman window in a column vector. W=HAMMING(N) returns the N-point symmetric Hamming window in a column vector. W=HANN(N) returns the N-point symmetric Hann window in a column vector. W = RECTWIN(N) returns the N-point rectangular window. W = TRIANG(N) returns the N-point triangular window. W = KAISER(N,beta) returns the BETA-valued N-point Kaiser window. Window Related Matlab Functions (Signal Processing Toolbox)

21 fir1 - Window based FIR filter design - low, high, band, stop, multi. kaiserord - Kaiser window design based filter order estimation. Also, the following two functions are available at the standard “Specialized math functions”. BESSELI Modified Bessel function of the first kind. I = BESSELI(NU,Z) is the modified Bessel function of the first kind, I_nu(Z). For more functions related to window and filter design, use “help signal”. For detailed information for each function, use “help func_name”. FIR Design Related Matlab Functions (Signal Processing Toolbox)

22 The Kaiser Window Filter Design Method (4) Note that, in the Kaiser window design, the passband and the stopband have the same error bound .

23  Defining A = – 20log 10  Kaiser determined empirically that the value of  is given by  When the transition bandwidth is  =  s –  p, M must satisfy This equation predicts M to within  2 over a wide range of values of  and  The Kaiser Window Filter Design Method (5)

24 LPF Design Example [  1 =0.01,  2 =0.001,  p  s   ]  Step 1: because the Kaiser window assume the same error bound for the passband and stopband, we let  = min[  1  2 ]=  Step 2: The cutoff frequency of the underlying ideal LPF is  c  = (  p   s   Step 3: Determine A and . A = – 20log 10  dB,  =  p  –  p  Then we can obtain  = 5.653, M =37.  Step 4: The impulse response of the filter is obtained as (  =M/2) The Kaiser Window Filter Design Method (6) Ideal LPF window

25 LPF Design Example [  1 =0.01,  2 =0.001,  p  s   ] (cont.)  Since M is an odd integer, the resulting linear-phase system would be of type II ( H(e j  ) is zero at  ).  The approximation error function is defined as (note that the error is not defined in the transition region)  In this design example, the peak approximation error is slightly greater than  = Increasing M to 38 results in a type I filter for which  =  It is not necessary to plot the phase and group delay, because the phase is precisely linear and the delay is M/2 samples. The Kaiser Window Filter Design Method (7)

26 LPF Design Example [  1 =0.01,  2 =0.001,  p  s   ] (cont.) The Kaiser Window Filter Design Method (8)

27 HPF Design Example [  1 =  2 =0.021,  s  p   ]  The frequency response of an ideal HPF is and the corresponding impulse response is  The HPF impulse response after applying the Kaiser window is The Kaiser Window Filter Design Method (9)

28 HPF Design Example [  1 =  2 =0.021,  s  p   ]  Using the Kaiser’s formula, we obtain that  =2.6, M=24. The cutoff frequency of the ideal HPF is  c  = (  p   p   The actual approximation error of this type I filter is  =  If we increase M to 25 and keep  unchanged (as we did in the LPF design), the frequency response becomes highly unsatisfactory because the type II filter has a zero at . Type II FIR linear-phase systems are generally not appropriate approximation for the either highpass or bandstop filters.  Increasing M to 26 will result in type I filter with narrower transition region, and will satisfy the design requirement. The Kaiser Window Filter Design Method (10)

29 HPF Design Example [  1 =  2 =0.021,  s  p   ] (cont.) M=24 The Kaiser Window Filter Design Method (11)

30 HPF Design Example [  1 =  2 =0.021,  s  p   ] (cont.) M=25 The Kaiser Window Filter Design Method (12)

31 The Kaiser Window Filter Design Method (13) Multiband filter (cont.)  If such a magnitude function is multiplied by a linear phase factor e –j  M/2, the corresponding ideal impulse response is where N mb is the number of bands and.  If h mb [n] is multiplied by a Kaiser window, the type of approximations we have observed at the single discontinuity of the lowpass and highpass systems will occur at each of the discontinuities. The approximation error will be scaled by the size of the jump.

32 Discrete-Time Differentiators  As we discussed before, the discrete-time differentiator system has a frequency response ( j  /T ) for – .  For an ideal discrete-time differentiator with a linear phase, the appropriate frequency response is (the factor of 1/T is omitted)  The corresponding ideal impulse response is  If h diff [n] is multiplied by a symmetric window of length (M+1), then it is easy to show that h[n]= –h[M–n]. The resulting system is either type III or type IV general linear-phase system. The Kaiser Window Filter Design Method (14)

33 Discrete-Time Differentiators – Design Example using type III  Suppose M=10,  =2.4. Type III does not provide good magnitude linearity because of the zero at . The Kaiser Window Filter Design Method (15)

34 The Kaiser Window Filter Design Method (16) Discrete-Time Differentiators – Design Example using type IV  Suppose M=5,  =2.4. Type IV achieves much better approximations to the amplitude function.  This type of system generates a non-integer time delay.

35 Optimum Approximation Criterion (1)  We have discussed design of FIR filters by windowing, which is straightforward and is quite general.  However, we often wish to design a filter that is the BEST that can be achieved for a given value of M.  What is the criterion? It is meaningless to discuss the best solution without an approximation criterion.  For example, if the criterion is to minimize the mean square error then, the following rectangular window is the best approximation.

36 Optimum Approximation Criterion (2)  However, the window methods generally have two problems:  Adverse behavior at discontinuities of H(e j  ); the error usually becomes smaller for frequencies away from the discontinuity (over-specified at those frequencies).  It does not permit individual control over approximation error in different bands (over-specified over some bands).  For many applications, better filters result from a minimax strategy (minimization of the maximum errors) or a frequency-weighted criterion.  Approximation error is spread out uniformly in frequency  Individual control of approximation error over different bands Such criterion avoids the abovementioned over-specifications.

37 Optimum Approximation Criterion (3)  We consider a particularly effective and widely used algorithmic procedure for the design of FIR filters with a generalized linear phase.  We consider only type I filters in detail, and examples for type II filters are also shown. We can understand how the method can be extended to other types of filters.  We first consider a zero-phase filter (this filter can be made causal by inserting a proper delay), h e [n]= h e [–n] and the corresponding frequency response is ( L = M/2 is an integer)

38 Optimum Approximation Criterion (4)  The frequency response can be rewritten as Therefore, it is a real, even, and periodic function of .  A causal system can be obtained from h e [n] by delaying it by L = M/2 samples; i.e, h[n]= h e [n – M/2] = h[M–n] and the corresponding frequency response is

39 Optimum Approximation Criterion (5)  A tolerance scheme for an approximation to a LPF with a real function A e (e j  ).  Some of the parameters L,  1,  2,  p, and  s are fixed and an iterative procedure is used to obtain optimum adjustment of the remaining parameters.

40 Optimum Approximation Criterion (6)  There are several methods for FIR filter design. The Parks- McClellan algorithm (Remez algorithm) has become the dominant method for optimum design of FIR filters. This is because it is the most flexible and the most computationally efficient. We will discuss only that algorithm.  The Parks-McClellan algorithm is based on reformulating the filter design problem as a problem in polynomial approximation.  We note that the term cos(  n) in A e (e j  ) can be expressed as a sum of powers of  in the form cos(  n) =T n (cos  ) where T n (x) = cos(ncos -1 x) is the nth-order Chebyshev polynomial.

41 Chebyshev Polynomial  Chebyshev polynomial V n (x) is an nth polynomial of x.

42 Optimum Approximation Criterion (7)  Therefore, A e (e j  ) can be expressed as an Lth-order polynomial in cos  namely where

43 Optimum Approximation Criterion (8)  Define an approximation error function W(  ) : weighting function H d (e j  ) : desired frequency response A e (e j  ) : approximation function These functions are defined only over closed subintervals (e.g., passband and stopband) of 0 ≤  ≤ .  For example, the weighting function and desired frequency response of an LPF are (K=  1 /  2 )

44 Optimum Approximation Criterion (9)  Note that, with weighting, the maximum weighted absolute approximation error is  =  2 in both bands. Typical frequency response. Weighted error.

45 Optimum Approximation Criterion (10) The Minimax Criterion  The particular criterion used in this design procedure is the so- called minimax or Chebyshev criterion, where, with the frequency intervals of interest (the passband and stopband for an LPF), we seek a frequency response A e (e j  ) that minimizes the maximum weighted approximation error; i.e., where F is the closed subset of 0 ≤  ≤  e.g., passband and stopband for an LPF).

46 Optimum Approximation Criterion (11) Alternation Theorem  Let F P denote the closed subset consisting of the disjoint union of closed subset of the real axis x. Then is an rth-order polynomial. Also, D P (x) denotes a given desired function of x that is continuous on F P. W P (x) is a positive function, continuous on F P, and E P (x) = W P (x)[D P (x) – P(x) ] is the weighted error. The maximum error is defined as A necessary and sufficient condition that P(x) be the unique rth- order polynomial that minimizes ||E|| is that E P (x) exhibit at least (r+2) alternations.

47 Optimum Approximation Criterion (11)  (r +2) alternations means… there must exist at least (r + 2) values x i in F P such that x 1 < x 2 < …< x r+2 and such that E P (x i )= – E P (x i+1 )=  ||E|| for i=1, 2,…, r +1.  Example … which one satisfies the alternation theorem (r =5)?

48 Optimal Type I Lowpass Filters (1)  For type I filters, the polynomial P(x) is the cosine polynomial A e (e j  ) with the transformation of variable x=cos  and r = L: D P (x) and W P (x) become and respectively, and the weighted approximation error is

49 Optimal Type I Lowpass Filters (2)  Equivalent polynomial approximation function as a function of x=cos .

50 Optimal Type I Lowpass Filters (3) Properties  The maximum possible number of alternations of the error is L+3. An Lth-degree polynomial can have at most (L–1) points with zero slope in an open interval, the maximum possible number of locations for alternations are those plus 4 band edges. Even P(x) may not have zero-slope at x = 1 and x = –1, P(cos  ) always have zero slope at  =0 and .  Alternations will always occur at  p and  s.  All points with zero slope inside the passband and all points with zero slope inside the stopband will correspond to alternations. That is, the filter will be equiripple, except possibly at  =0 and .

51 Optimal Type I Lowpass Filters (4)  Possible optimum LPF approximations for L=7. L+3 alternations (extraripple case) L+2 alternations (extrenum at  ) L+2 alternations (extrenum at  =0) L+2 alternations (extrenum at  =0 and  )

52 Optimal Type I Lowpass Filters (5)  Illustrations supporting the second and third properties

53 Optimal Type II Lowpass Filters (1)  For type II filters, the filter length (M+1) is even, with the symmetric property h[n]= h[M – n] Therefore, the frequency response H(e j  ) can be expressed in the form  Let b[n]=2h[(M+1)/2 –n], n=1, 2, …, (M+1)/2, then

54 Optimal Type II Lowpass Filters (2)  Derivation memo (see Problem 7.52) Using the trigonometric identity cos  cos  = ½ cos(  +  ) + ½ cos(  –  ) we get

55 Optimal Type II Lowpass Filters (3)  Derivation memo (cont.) This will be equal if we let

56 Optimal Type II Lowpass Filters (4) Therefore, Consequently, type II filter design is a different polynomial approximation problem than type I filter design. Type III and type IV filters can be considered similarly.

57 The Parks-McClellan Algorithm (1)  The alternation theorem gives necessary and sufficient conditions on the error for optimality in the Chebyshev or minimax sense. Although the theorem does not state explicitly how to find the optimum filter, the conditions that are presented serve as the basis for an efficient algorithm for finding it. We consider type I LPF design herein.  From the alternation theorem, the optimum filter A e (e j  ) will satisfy the set of equations We can write these equations as

58 The Parks-McClellan Algorithm (2)  In matrix form, it becomes (x i =cos  i )  This set of equations serves as the basis for an iterative algorithm for finding the optimum A e (e j  ). The procedure begins by guessing a set of alternation frequencies  i, i=1, 2, …, (L+2).  Note that  p and  s are fixed and are necessary members of the set of alternation frequencies. Specifically, if  l =  p, then  l+1 =  s.

59 The Parks-McClellan Algorithm (3)  The above set of equations could be solved for the set of coefficients a k and .  A more efficient alternative is to use polynomial interpolation. In particular, Parks and McClellan found that, for the given set of the extremal frequencies (x i =cos  i ), That is, A e (e j  ) has values 1  K  if 0 ≤  i ≤  p and  if  s ≤  ≤ .

60 The Parks-McClellan Algorithm (4)  Now, since A e (e j  ) is known to be an Lth-order trigonometric polynomial, we can interpolate a trigonometric polynomial through (L+1) of the (L+2) known values E(  i ) [or, equivalently, A e (e j  )].

61 The Parks-McClellan Algorithm (5)  Parks and McClellan used the Lagrange interpolation formula to obtain (x=cos , x i =cos  i ), with  If |E(  )| ≤  for all  in the passband and stopband, then the optimum approximation has been found. Otherwise we must find a new set of extremal frequencies.

62 The Parks-McClellan Algorithm (6)  For the LPF shown at the previous figure,  was too small. The extremal frequencies are exchanged for a completely new set defined by the (L+2) largest peaks of the error curve (marked with x in the figure).  As before,  p and  s must be selected as extremal frequencies. Also recall that there are at most (L – 1) local minima and maxima in the open interval 0 <  <  p and  s <  < . The remaining extrema can be either  =0 and . If there is a maximum of the error function at both 0 and , then the frequency at which the greatest error occurs is taken as the new estimate of the frequency of the remaining extremum.  The circle – computing the value of , fitting a polynomial to the assumed error peaks, and then locating the actual error peaks – is repeating until  does not change from its previous value by more than a prescribed small amount.

63 The Parks-McClellan Algorithm (7)

64 Characteristics of Optimum FIR filters (1)  For different types of filters (e.g., M=9 and M=10), it is possible that a shorter filter is better. For the same type of filters (e.g., M=8 and M=10), a longer filter always provides better or identical performance (in this case, the two filters are identical).  Illustration of the dependence of passband and stopband error on cutoff frequency for optimal approximation of a LPF (K=1,  s –  p =0.2  ).

65 Characteristics of Optimum FIR filters (2)  The estimate of M for equiripple lowpass approximation is where  =  s –  p. Compared with the design formula for the Kaiser window method for the comparable case (  1 =  2 =  ), the optimal approximations provide about 5 dB better approximation error for a given value of M. Another important advantage of equiripple filters is that  1 and  2 need not be equal, as must be the case for the window method.

66 kaiser Kaiser window kaiserord FIR order estimator of Kaiser window method remez Parks-McClellan optimal equiripple FIR filter design remezord FIR order estimator of Parks-McClellan optimal approximation method MatLab Functions

67 Design Examples - LPF (1) LPF Design Example [  1 =0.01,  2 =0.001, (K=10),  p  s   ] estimate of M=25.34  M=26, result: maximum error in the stopband = : unsatisfied.

68 Design Examples - LPF (2) LPF Design Example (cont.) [  1 =0.01,  2 =0.001, (K=10),  p  s   ] increase M to M=27 [compare: M=38 required at Kaiser window] result: maximum error in the stopband = : satisfactory.

69 Design Examples - BPF (1)  For an LPF filter, there are only two approximation bands. However, bandpass and bandstop filters require three approximation bands.  The alternation theorem does not assume any limit on the number of disjoint approximation intervals. Therefore, the minimum number of alternations is still (L+2). However, multiband filters can have more than (L+3) alternations, because there are more band edges.  Some of the statements so far are not true in the multiband case. For example, it is not necessary for all the local minima or maxima of A e (e j  ) to lie inside the approximation intervals. Local extrema can occur in the transition regions, and the approximation need not be equiripple in the approximation regions.

70 Design Examples - BPF (2) BPF Design Example M = 74 L = M/2 = 37 The alternation theorem requires at least L+2 = 39 alternations.

71 Design Examples - BPF (3)

72 Design Examples - BPF (4)  The approximations we obtained are optimal in the sense of the alternation theorem, but they would probably be unacceptable in a filtering application. In general, there is no guarantee that the transition region of a multiband filter will be monotonic, because the Parks-McClellan algorithm leaves these regions completely unconstrained.  When this kind of response results for a particularly choice of the filter parameters, acceptable transition regions can usually be obtained by systematically changing one or more of the band edge frequencies, the impulse-response length, or the error- weighting function and redesigning the filter.

73 Comments on IIR and FIR Filters  We have discussed design methods for linear time-invariant discrete-time systems.  What type of system is the best, IIR or FIR?  Why give so many different design methods?  Which method yields the best results? It is generally not possible to give a precise answer.  IIR: + closed-form design formulas - noniterative IIR filter design. + efficient – usually less order is required. – only the magnitude response can be specified.  FIR: + precise generalized linear phase. – no closed-form design formula - some iterations may be necessary to meet a given specification.

74 Homework (a)