Chapter 8 IIR Filter Design

Slides:



Advertisements
Similar presentations
Chapter 8. FIR Filter Design
Advertisements

CHAPTER 7 filter design techniques
Digital Signal Processing IIR Filter IIR Filter Design by Approximation of Derivatives Analogue filters having rational transfer function H(s) can be.
Nonrecursive Digital Filters
ECE 8443 – Pattern Recognition EE 3512 – Signals: Continuous and Discrete Objectives: Filters and Difference Equations Signal Flow Graphs FIR and IIR Filters.
EE513 Audio Signals and Systems Digital Signal Processing (Synthesis) Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
Signal and System IIR Filter Filbert H. Juwono
Chapter 6 Infinite Impulse Response Filter Design.
CHAPTER 7 Digital Filter Design Wang Weilian School of Information Science and Technology Yunnan University.
Filtering Filtering is one of the most widely used complex signal processing operations The system implementing this operation is called a filter A filter.
Infinite Impulse Response (IIR) Filters
1 BIEN425 – Lecture 13 By the end of the lecture, you should be able to: –Outline the general framework of designing an IIR filter using frequency transform.
ECE651 Digital Signal Processing I Digital IIR Filter Design.
So far We have introduced the Z transform
Hossein Sameti Department of Computer Engineering Sharif University of Technology.
Digital Signal Processing – Chapter 11 Introduction to the Design of Discrete Filters Prof. Yasser Mostafa Kadah
Unit 9 IIR Filter Design 1. Introduction The ideal filter Constant gain of at least unity in the pass band Constant gain of zero in the stop band The.
Analog Filters: Network Functions
LINEAR-PHASE FIR FILTERS DESIGN
Chapter 8 FIR Filter Design
IIR Filter Design: Basic Approaches Most common approach to IIR filter design: (1)Convert specifications for the digital filter into equivalent specifications.
Discrete-Time IIR Filter Design from Continuous-Time Filters Quote of the Day Experience is the name everyone gives to their mistakes. Oscar Wilde Content.
AGC DSP AGC DSP Professor A G Constantinides 1 Digital Filter Specifications Only the magnitude approximation problem Four basic types of ideal filters.
Relationship between Magnitude and Phase (cf. Oppenheim, 1999)
EE513 Audio Signals and Systems Digital Signal Processing (Systems) Kevin D. Donohue Electrical and Computer Engineering University of Kentucky.
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
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.
Contents- 9 장 추가  Introduction  Preliminaries  Analog-to-Digital Filter Transformations  LowPass Filter Design Using Matlab  Frequency-Band Transformations.
Copyright ©2010, ©1999, ©1989 by Pearson Education, Inc. All rights reserved. Discrete-Time Signal Processing, Third Edition Alan V. Oppenheim Ronald W.
Lecture 10: IIR Filter Designs XILIANG LUO 2014/11 1.
Analog Filters: Network Functions Franco Maloberti.
1 Lecture 1: February 20, 2007 Topic: 1. Discrete-Time Signals and Systems.
Dan Ellis 1 ELEN E4810: Digital Signal Processing Topic 8: Filter Design: IIR 1.Filter Design Specifications 2.Analog Filter Design 3.Digital.
Chapter 7 Finite Impulse Response(FIR) Filter Design
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.
IIR Digital Filter Design
Copyright © 2003 Texas Instruments. All rights reserved. DSP C5000 Chapter 15 Infinite Impulse Response (IIR) Filter Implementation.
Chapter 7. Filter Design Techniques
1 Digital Signal Processing Digital Signal Processing  IIR digital filter structures  Filter design.
First-Order System Revisited
Signals and Systems Filter Design. Part III Design.
Nov '03csDSP61 CS3291: Section 6 IIR discrete time filter design Introduction: Many design techniques for IIR discrete time filters have adopted ideas.
1 Teaching Innovation - Entrepreneurial - Global The Centre for Technology enabled Teaching & Learning, MGI,India DTEL DTEL (Department for Technology.
DISP 2003 Lecture 5 – Part 1 Digital Filters 1 Frequency Response Difference Equations FIR versus IIR FIR Filters Properties and Design Philippe Baudrenghien,
Digital Signal Processing Lecture 6 Frequency Selective Filters
Finite Impulse Response Filtering EMU-E&E Engineering Erhan A. Ince Dec 2015.
Chapter 5. Transform Analysis of LTI Systems Section
 What is Filter ? A Filter is an electrical network that can transmit signal within a specified frequency range. This Frequency range is called PASS BAND.
Professor A G Constantinides 1 Digital Filter Specifications We discuss in this course only the magnitude approximation problem There are four basic types.
Digital Signal Processing
IIR Filter design (cf. Shenoi, 2006)
UNIT - 5 IIR FILTER DESIGN.
Lecture: IIR Filter Design
IIR Filters FIR vs. IIR IIR filter design procedure
Infinite Impulse Response (IIR) Filters
Chapter 6 IIR Digital Filter Design
Filter Design Techniques
Chapter 8 Design of Infinite Impulse Response (IIR) Digital Filter
ME2300 DIGITAL SIGNAL PROCESSING [Slide 6] IIR Filter Design BY DREAMCATCHER
LINEAR-PHASE FIR FILTERS DESIGN
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.
Usıng the impulse sampling method Prepared by: Dr. Erhan A. INCE
Quadrature-Mirror Filter Bank
Chapter 7 Finite Impulse Response(FIR) Filter Design
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
IIR Digital Filter Design
Presentation transcript:

Chapter 8 IIR Filter Design Gao Xinbo School of E.E., Xidian Univ. Xbgao@ieee.org http://see.xidian.edu.cn/teach/matlabdsp/

Introduction IIR filter have infinite-duration impulse responses, hence they can be matched to analog filters, all of which generally have infinitely long impulse responses. The basic technique of IIR filter design transforms well-known analog filters into digital filters using complex-valued mappings. The advantage of this technique lies in the fact that both analog filter design (AFD) tables and the mappings are available extensively in the literature.

Introduction The basic technique is called the A/D filter transformation. However, the AFD tables are available only for lowpass filters. We also want design other frequency-selective filters (highpass, bandpass, bandstop, etc.) To do this, we need to apply frequency-band transformations to lowpass filters. These transformations are also complex-valued mappings, and they are also available in the literature.

Two approaches Approach 1, used in Matlab Approach 2, study

IIR Filter Design Steps Design analog lowpass filter Study and apply filter transformations to obtain digital lowpass filter Study and apply frequency-band transformations to obtain other digital filters from digital lowpass filter

The main problem We have no control over the phase characteristics of the IIR filter. Hence IIR filter designs will be treated as magnitude-only designs.

Main Content of This Chapter Analog filter specifications and the properties of the magnitude-squared response used in specifying analog filters. Characteristics of three widely used analog filters Butterworth, Chebyshev, and Elliptic filter Transformation to convert these prototype analog filters into different frequency-selective digital filter

Some Preliminaries Relative linear scale The lowpass filter specifications on the magnitude-squared response are given by Where epsilon is a passband ripple parameter, Omega_p is the passband cutoff frequency in rad/sec, A is a stopband attenuation parameter, and Omega_s is the stopband cutoff in rad/sec.

The relations among epsilon, A, Rp, As, delta1 and delta2

Properties of |Ha(jOmega)|2 Analog filter specifications, which are given in terms of the magnitude-squared response, contain no phase information. Now to evaluate the s-domain system function Ha(s), consider Therefore the poles and zeros of the magnitude-squared function are distributed in a mirror-image symmetry with respect to the jOmega axis. Also for real filters, poles and zeros occur in complex conjugate pairs (or mirror-image symmetry with respect to the real axis). From this pattern we can construct Ha(s), which is the system function of our analog filter.

Properties of |Ha(jOmega)|2 We want Ha(s) to represents a causal and stable filter. Then all poles of Ha(s) must lie within the left half-plane. Thus we assign all left-half poles of Ha(s)Ha(-s) to Ha(s). We will choose the zeros of Ha(s)Ha(-s) lying inside or on the jOmega axis as the zeros of Ha(s). The resulting filter is then called a minimum-phase filter.

Characteristics of Prototype Analog Filters IIR filter design techniques rely on existing analog filter filters to obtain digital filters. We designate these analog filters as prototype filters. Three prototypes are widely used in practice Butterworth lowpass Chebyshev lowpass (Type I and II) Elliptic lowpass

Butterworth Lowpass Filter This filter is characterized by the property that its magnitude response is flat in both passband and stopband. The magnitude-squared response of an N-order lowpass filter Omega_c is the cutoff frequency in rad/sec. Plot of the magnitude-squared response is shown in P.305

Properties of Butterworth Filter Magnitude Response |Ha(0)|2 =1, |Ha(jΩc) |2 =0.5, for all N (3dB attenuation at Ωc) |Ha(jΩ)|2 monotonically decrease for Ω Approaches to ideal filter when N→∞ To determine the system function Ha(s)

Poles of |Ha(jΩ)|2 Ω=s/j =Ha(s) Ha(-s) Equally distributed on a circle of radius Ωc with angular spacing of pi/N radians For N odd, pk= Ωcej2pik/N For N even, pk= Ωcej(pi/2N+kpi/N) Symmetry respect to the imaginary axis A pole never falls on the imaginary axis, and falls on the real axis only if N is odd A stable and causal filter Ha(s) can now be specified by selecting poles in the left half-plane Example 8.1

Matlab Implementation Function [z,p,k] = buttap(N) To design a normalized (Ωc=1) Butterworth analog prototype filter of order N Z: zeros; p: poles; k: gain value Function [b,a] = u_buttap(N,Omegac) Provide a direct form (or numerator-denominator) structure. Function [C,B,A] = sdir2cas(b,a) Convert the direct form into the cascade form Example 8.2

Design Equations The analog lowpass filter is specified by the parameters, Omega_p. R_p,Omega_s, and A_s. Therefore the essence of the design in the case of Butterworth filter is to obtain the order N and the cutoff frequency Omega_c.

Matlab Implementation Function [b,a] = afd_butt(Wp,Ws,Rp,As) To design an analog Butterworth lowpass filter, given its specifications. Function [db,mag,pha,w] = freqs_m(b,a,wmax) Magnitude response in absolute as well as in relative dB scale and the phase response. Example 8.3

Chebyshev Lowpass Filter Chebyshev-I filters Have equiripple response in the passband Chebyshev-II filters Have equiripple response in stopband Butterworth filters Have monotonic response in both bands We note that by choosing a filter that has an equripple rather than a monotonic behavior, we can obtain a low-order filter. Therefore Chebyshev filters provide lower order than Buttworth filters for the same specifications.

The magnitude-squared response of Chebyshev-I filter N is the order of the filter, Epsilon is the passband ripple factor Nth-order Chebyshev polynomial For 0<x<1, TN(x) oscillates between –1 and 1, and For 1<x<infinity, TN(x) increases monotonically to infinity Figure on P.314 (two possible shapes) Observations: P.315

Observations At x=0 (or Ω=0); |Ha(j0)|2 = 1; for N odd; = 1/(1+epson^2); for N even At x=1 (or Ω= Ωc); |Ha(j1)|2= 1/(1+epson^2) for all N. For 0<=x<=1 (or 0<= Ω<= Ωc) |Ha(jx)|2 oscillates between 1 and 1/(1+epson^2) For x>1 (or Ω > Ωc), |Ha(jx)|2 decreases monotonically to 0 . At x= Ωr, |Ha(jx)|2 = 1/(A^2).

Causal and stable Ha(s) To determine a causal and stable Ha(s), we must find the poles of Ha(s)Ha(-s) and select the left half-plane poles for Ha(s). The poles of Ha(s)Ha(-s) are obtained by finding the roots of It can be shown that if are the (left half-plane) roots of the above polynomial, then

The poles of Ha(s)Ha(-s) The poles fall on an ellipse with major axis b Ωc and minor axis a Ωc . Now the system function is Left half-plane K is a normalizing factor

Matlab Implementation Function [z,p,k] = cheb1ap(N,Rp) To design a normalized Chebyshev-I analog prototype filter of order N and passband ripple Rp. Z array: zeros; poles in p array, gain value k Function [b,a] = u_chblap(N,Rp,Omegac) Return Ha(s) in the direct form

Design Equations Given Ωp, Ωs, Rp and As, three parameters are required to determine a Chebyshev-I filter Function [b,a]=afd_chb1(Wp,Ws,Rp,As) Example 8.6

Chebyshev-II filter Related to the Chebyshev-I filter through a simple transformation. It has a monotone passband and an equiripple stopband, which implies that this filter has both poles and zeros in the s-plane. Therefore the group delay characteristics are better (and the phase response more linear) in the passband than the Chebyshev-I prototype.

Matlab implementation Function [z,p,k] = cheb2ap(N,As); normalized Chebyshev-II Function [b,a] = u_chb2ap(N,As,Omegac) Unnormalized Chebyshev-II Function [b,a] = afd_chb2(Wp,Ws,Rp,As) Example 8.7

Elliptic Lowpass Filters These filters exhibit equiripple behavior in the passband as well as the stopband. They are similar in magnitude response characteristics to the FIR equiripple filters. Therefore elliptic filters are optimum filters in that they achieve the minimum order N for the given specifications These filters, for obvious reasons, are very difficult to analyze and therefore, to design. It is not possible to design them using simple tools, and often programs or tables are needed to design them.

The magnitude-squared response N: the order; epsilon: passbang ripple; UN() is the Nth order Jacobian elliptic function Typical responses for odd and even N are shown on P.323 Computation of filter order N:

Matlab Implementation [z,p,k]=ellipap(N,Rp,As); normalized elliptic analog prototype [b,a] = u_ellipap(N,Rp,As,Omegac) Unnormalized elliptic analog prototype [b,a] = afd_elip(Wp,Ws,Rp,As) Analog Lowpass Filter Design: Elliptic Example 8.8

Phase Responses of Prototype Filters Elliptic filter provide optimal performance in the magnitude-squared response but have highly nonlinear phase response in the passband (which is undesirable in many applications). Even though we decided not to worry about phase response in our design, phase is still an important issue in the overall system. At other end of the performance scale are the Buttworth filters, which have maximally flat magnitude response and require a higher-order N (more poles) to achieve the same stopband specification. However, they exhibit a fairly linear phase response in their passband.

Phase Responses of Prototype Filters The Chebyshev filters have phase characteristics that lie somewhere in between. Therefore in practical applications we do consider Butterworth as well as Chebyshev filters, in addition to elliptic filters. The choice depends on both the filter order (which influences processing speed and implementation complexity) and the phase characteristics (which control the distortion).

Analog-to-digital Filter Transformations After discussing different approaches to the design of analog filters, we are now ready to transform them into digital filters. These transformations are derived by preserving different aspects of analog and digital filters. Impulse invariance transformation Preserve the shape of the impulse response from A to D filter Finite difference approximation technique Convert a differential eq. representation into a corresponding difference eq. Step invariance Preserve the shape of the step response Bilinear transformation Preserve the system function representation from A to D domain

Impulse Invariance Transformation The digital filter impulse response to look similar to that of a frequency-selective analog filter. Sample ha(t) at some sampling interval T to obtain h(n): h(n)=ha(nT) Since z=ejw on the unit circle and s=j Ω on the imaginary axis, we have the following transformation from the s-plane to the z-plane: z=esT Frequency-domain aliasing formula

Complex-plane mapping in impulse invariance transformation

Properties: Sigma = Re(s): Sigma < 0, maps into |z|<1 (inside of the UC) Sigma = 0, maps into |z|=1 (on the UC) Sigma >0, maps into |Z|>1 (outside of the UC) Many s to one z mapping: many-to-one mapping Every semi-infinite left strip (so the whole left plane) maps to inside of unit circle Causality and Stability are the same without changing; Aliasing occur if filter not exactly band-limited

Given the digital lowpass filter specifications wp,ws,Rp and As, we want to determine H(z) by first designing an equivalent analog filter and then mapping it into the desired digital filter. Design Procedure: 1. Choose T and determine the analog frequencies: Ωp=wp/T, Ωs=ws/T 2. Design an analog filter Ha(s) using the specifications with one of the three prototypes of the previous section. 3. Using partial fraction expansion, expand Ha(s) into 4. Now transform analog poles {pk} into digital poles {epkT} to obtain the digital filter Ex 8.9

Matlab Implementation Function [b,a] = imp_invr(c,d,T) b = 数字滤波器的z^(-1)分子多项式 a = 数字滤波器的z^(-1)分母多项式 c = 模拟滤波器的s的分子多项式 d = 模拟滤波器的s的分母多项式 T = 采样(变换)参数 Examples 8.10-8.14

Advantages of Impulse Invariance Mapping It is a stable design and the frequencies Ω and w are linearly related. Disadvantage We should expect some aliasing of the analog frequency response, and in some cases this aliasing is intolerable. Consequently, this design method is useful only when the analog filter is essentially band-limited to a lowpass or bandpass filter in which there are no oscillations in the stopband.

Bilinear Transformation This mapping is the best transformation method. Linear fractional transformation The complex plane mapping is shown in Figure 8.15

Complex-plane mapping in bilinear transformation

Observations Sigma < 0 |z| < 1, Sigma = 0 |z| = 1, Sigma > 0 |z| > 1 The entire left half-plane maps into the inside of the UC. This is a stable transformation. The imaginary axis maps onto the UC in a one-to-one fashion. Hence there is no aliasing in the frequency domain. Relation of ω to Ω is nonlinear ω= 2tan-1(ΩT/2)↔ Ω=2tan(ω/2)/T; Function [b,a] = bilinear(c,d,Fs)

Given the digital filter specifications wp,ws,Rp and As, we want to determine H(z). The design steps in this procedure are the following: Choose a value for T. this is arbitrary, and we may set T = 1. Prewarp the cutoff freq.s wp and ws; that is calculate Ωp and Ωs using (8.28) : Ωp=2/T*tan(wp/2), Ωs=2/T*tan(ws/2) 3. Design an analog filter Ha(s) to meet the specifications. 4. Finally set And simplify to obtain H(z) as a rational function in z-1 Ex 8.17

Advantage of the bilinear Transformation It is a stable design There is no aliasing There is no restriction on the type of filter that can be transformed.

Lowpass Design Using Matlab Matlab Function: [b, a] = butter(N, wn) [b, a] = cheby1(N, Rp, wn) [b, a] = cheby2(N, As, wn) [b, a] = ellip(N, Rp, As, wn) Buttord, cheb1ord, cheb2ord, ellipord can provide filter order N and filter cutoff frequency wn, given the specification.

Lowpass filter design Digital filter specification Analog prototype specifications Analog prototype order calculation,Omega_c,wn Digital Filter design (four types) dir2cas

Digital filter design examples For the same specifications, do the following: Ex8.21: Butterworth LP filter design; Ex8.22: Chebyshev-I LP filter design; Ex8.23: Chebyshev-II LP filter design; Ex8.24: Elliptic LP filter design; Prototype Order N Stopband Att. Butterworth 6 15 Chebyshev-I 4 25 Elliptic 3 27

Frequency-band Transformation Design other kinds of filters: High-pass filters Band-pass filters Band-stop filters Using the results of Low-pass filter and Frequency Band Transformation

Frequency-band Transformation Let HLP(Z) be the given prototype lowpass digital filter, and let H(z) be the desired frequency-selective digital filter. Define a mapping of the form Given that HLP(Z) is a stable and causal filter, we also want H(z) to be stable and causal. This imposes the following requirements: 1. G( ) must be a rational function in 1/z so that H(z) is implementable. 2. The unit circle of the Z-plane must map onto the unit circle of the z-plane. 3. For stable filters, the inside of the unit circle of the Z-plane must also map onto the inside of the unit circle of the z-plane.

Frequency Transformation for Digital Filters The general form of the function G() that satisfies the above requirements is a rational function of the all-pass type given by Now by choosing an appropriate order n and the coefficients {alpah_k}, we can obtain a variety of mappings. The most widely used transformations are given in Table 8.2 (P352). Ex8.25-8.26

Use zmapping function to perform the LP-to-HP transformation Digital lowpass filter specifications Analog prototype specification Analogy Chebyshev prototype filter calculation Bilinear transformation Digital highpass filter cutoff frequency Lp-to-HP frequency-band transformation dir2cas

Design Procedure In practice we have to first design a prototype lowpass digital filter whose specification should be obtained from specifications of other frequency-selective filters are given in Fig.8.20

Matlab Implementation Function [b, a] = BUTTER(N, wn,’high’) Designs an Nth-order highpass filter with digital 3dB cutoff frequency wn in unit of pi Function [b,a] = BUTTER(N,wn,’pass’) Designs an order 2N bandpass filter if wn is a two-element vectro wn=[w1,w2], with 3dB bandpass w1<w<w2 in unit of pi. Function [b,a] = BUTTER(N,wn,’stop’) Designs an order 2N bandstop filter if wn=[w1,w2] with 3dB stopband w1<w<w2 in unit of pi. Function [N,wn] = Buttord(wp, ws, Rp, As) Similar discussions apply for cheby1, cheby2, and ellip functions with appropriate modifications.

Comparison of FIR vs. IIR Filters In the case of FIR filters these optimal filters are the equiripple filters designed via the parks-McClellan algorithm, while in the case of IIR filters these are the elliptic filters. For FIR filter the standard realization is the linear-phase direct form, while for elliptic filters cascade forms are widely used. Comparisons: Multiplications per output sample For most applications IIR elliptic filter are desirable from the computational point of view. If we take into account the phase equalizers, then FIR filter designs look good because of their exact linear-phase characteristics.

Readings and exercises Text book: pp301~362 Chinese text book: pp.151~178 Exercises : 1. p8.1 3. p8.4 1. P8.7,8.11 2. P8.15,p8.21;选p8.23

That’s all! The End

Thanks for your attention! Thanks for your cooperation!