# Welcome back

## Find a book, put up your feet, stay awhile

Sign in with Facebook

Sorry, we are unable to log you in via Facebook at this time. Please try again later.

or

Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more

Download

Standard view

Full view

of .

Look up keyword

Like this

Share on social networks

27Activity

×

0 of .

Results for: No results containing your search query

P. 1

IIR Discrete Time Filter DesignRatings:

5.0

(1)|Views: 3,525|Likes: 33Published by api-26943302

See more

See less

https://www.scribd.com/doc/7232122/IIR-Discrete-Time-Filter-Design

03/18/2014

text

original

The University of Manchester

EE4192 (Jan-Jun \u201903): Analogue & Digital Filters

Section D3: IIR discrete time filter design by bilinear transformation

Introduction:Many design techniques for IIR discrete time filters have adopted ideas and

terminology developed for analogue filters, and are implemented by transforming the transfer function

of an analogue \u2018prototype\u2019 filter into the system function of a discrete time filter with similar

characteristics. We therefore begin this section with a reminder about analogue filters.

Analogue filters: Classical theory for analogue filters operating below about 100 MHz is generally

based on \u201clumped parameter\u201d resistors, capacitors, inductors and operational amplifiers (with

feedback) which obey LTI equations and differential equations: (i(t)=Cdv(t)/dt, v(t)=Ldi(t)/dt,

v(t)=i(t)R, v0 (t) = A v i (t). Analysis of such LTI circuits gives a relationship between input x(t) and

output y(t) in the form of a differential equation:

b yt

bdy t

dt

bd yt

dt

a xt

adx t

dt

ad xt

dt

0

1

2

2

2

0

1

2

2

2

( )

( )

( )

( )

( )

( )

+

+

+

=

+

+

+

L

L

whose transfer function is of the form:

a0 + a1s + a2s2+ ... + aNsN

Ha (s) =

\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001

b0 + b1s + b2s2 + ,,, + bMsM

This is a rational function of s of order MAX(N,M). Replacing s by j\u03c9 gives the frequency response

Ha (j\u03c9), where\u03c9 denotes frequency in radians/second. For values of s with non-negative real parts,

Ha (s ) is the Laplace Transform of the analogue filter\u2019s impulse response ha (t). H(s) may be

expressed in terms of its poles and zeros as:

(s - z1 ) ( s - z2 ) ... ( s - zN)

Ha (s) =

K

\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001

(s - p1 ) ( s - p2 ) ... ( s - pM)

There is a wide variety of techniques for deriving Ha (s) to have a frequency response which

approximates a specified function. For example, we have previously derived a general expression for

the system function of an nth order analogue Butterworth low-pass filter. Such analogue filters have

an important property in common with IIR type discrete time filters: their impulse responses are also

infinite.

Example:Consider the first order analogue low-pass filter below with input and output voltages x(t)

and y(t) respectively:-

R

C

x(t)

y(t)

The differential equation for this circuit is: y(t) + RC dy(t)/dt = x(t)

The system function is:

1

Ha (s) =\ue001\ue001\ue001\ue001\ue001\ue001

1 + RC s

The gain response is

1

1

Ga (\u03c9) = Ha (j\u03c9) =\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001 =\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001

\ue000 1 + RC j \u03c9\ue000

\u221a(1 + (\u03c9/\u03c9c)2 )

EE4192

D3.2

3/31/03 BMGC

where\u03c9c = 1 / (RC) . This is the gain response of a first order Butterworth low-pass filter with cut-

off frequency\u03c9c . It is shown graphically below when\u03c9 c = 1:

G ain response of RC filter

-14

-12

-10

-8

-6

-4

-20

0

0.5

1

1.5

2

2.5

3

3.5

4

Radians/ second

Gain(dB)

The impulse response of this analogue circuit may be calculated , for example, by looking up the

inverse Laplace transform of Ha (s). It is as follows:-

\ue005

0

: t <0

ha (t) =

\ue006\ue007 (1/[RC]) e - t / (R C) : t \u22650

The question now arises, how can we transform this analogue filter into an equivalent discrete time

filter? There are many answers to this question.

Firstly, we dispose quickly of one method that will not work. That is simply replacing s by z ( or

perhaps z- 1 ) in the expression for Ha (s) to obtain H(z). In the simple example above with RC = 1, the resulting function of z would have a pole at z = -1 which is on the unit circle. Even if we moved the pole slightly inside the unit circle, the gain response would be high-pass rather than low-pass. Let\u2019s forget this one.

\u201cDerivative approximation\u201d technique:This is a more sensible approach. Referring back to the

circuit diagram of the RC filter, assume that x(t) and y(t) are sampled at intervals of T seconds to

obtain sequences {x[n]} and {y[n]} respectively. Remembering that:

dy(t)

y(t) - y(t -\u2206t )

\ue001\ue001

=

lim

\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001

dt

\u2206t \u21920

\u2206t

and assuming T is \u201csmall\u201d, we can approximate dy(t)/dt by:

dy(t)

y(t) - y(t - T)

\ue001\ue001

\u2248

\ue001\ue001\ue001\ue001\ue001\ue001\ue001\ue001

dt

T

Therefore at time t = nT, x(t) = x[n], y(t) = y[n] and dy(t)/dt\u2248 (y[n] - y[n-1]) / T.

The differential equation given above describes the relationship between x(t) and y(t) for any value of

t. Therefore substituting for x(t), y(t), and dy(t)/dt , at t = nT we obtain:

y[n] = x[n] - (RC/T)(y[n] - y[n-1])

EE4192

D3.3

3/31/03 BMGC

i.e.

(1 + RC/T) y[n] = x[n] + (RC/T)y[n-1]

i.e.

y[n] = a0 x[n] - b1 y[n-1]

where a0 = 1/(1 + RC/T) and b1 = - RC/(T + RC)

This is the difference equation of the recursive discrete time filter illustrated below:

x[n]

y[n]

a0

-b1

The 3 dB cut-off frequency of the original analogue filter is at\u03c9c = 1/(RC) radians/second. Instead

of making this equal to one as before, let\u2019s make it 500 Hz.

Then 1/(RC) = 2\u03c0 x 500 = 3141. We could make R = 1 kOhm and C = 1/(2\u03c0)\u00b5F.

Also let T = 0.0001 seconds, corresponding to a sampling rate of 10 kHz.

Then the parameters for the recursive discrete time filter are a0 = 0.24 and b1 = -0.76.

The resulting difference equation for a recursive discrete time filter whose 3 dB cut-off point is at 500

Hz when the sampling rate is 10 kHz is:

y[n] = 0.24 x[n] + 0.76 y[n-1]

The system function for this discrete time filter is H(z) = 0.24 / (1 - 0.76 z-1 ).

As an exercise, compare its gain response\ue000H(ej\u2126 )\ue000 with that of the original analogue filter.

You should find that the shapes are similar, but not exactly the same.

The derivative approximation technique may be applied directly to Ha (s) by simply replacing s by

(1 - z- 1 )/T to obtain the required function H(z). It is not commonly used.

\u201cImpulse response invariant\u201d technique:

The philosophy of this technique is to transform an analogue prototype filter into an IIR discrete time filter whose impulse response {h[n]} is a sampled version of the analogue filter\u2019s impulse response, multiplied by T. The impulse response invariant technique will be covered later.

Bilinear transformation technique:

This is the most common method for transforming the system function Ha (s) of an analogue filter to

the system function H(z) of an IIR discrete time filter. It is not the only possible transformation, but a

very useful and reliable one.

It may be seen as an enhancement to the derivative approximation technique.

Denoting the value of dy(t) /dt at t=nT as D[n], this is approximated by by ( y[n] - y[n-1]) / T.

Similarly, dx(t) /dt at t=nT is approximated by by ( x[n] - x[n-1]) / T.

There is a not insignificant delay in these approximations due to the value of T which is not close to

zero. This delay becomes greater for corresponding approximations to d2y(t)/dt2, d2x(t)/dt2, d3y(t)/dt3

and so on at t=T since these are always approximated by samples that come after t=T and more and

more of these are needed as the order of the derivative increases.

An alternative to this "backward difference" derivative approximation technique is to use "forward

differences" approximating D[n] by [ y[n+1] - y[n]] / T, and so on. But this does not make matters

any better. So the bilinear approximation approximates

0.5( D[n] - D[n-1]) by [y[n] - y[n-1]]/T and similarly for dx(t)/dt at t=nT.

We are approximating the average of D[n] and D[n-1] by the finite difference: (y[n] - y[n-1]) / T.

You've already reviewed this. Edit your review.

1 hundred reads

1 thousand reads

mariyambutt liked this

Huan Fai Chan liked this

Baishakhi Bose liked this

Arif Pasha liked this

Er Ram Kumar liked this

jacqui6 liked this

Tung Bui liked this

kis111 liked this

- Read and print without ads
- Download to keep your version
- Edit, email or read offline

© Copyright 2015 Scribd Inc.

Language

Choose the language in which you want to experience Scribd:

Sign in with Facebook

Sorry, we are unable to log you in via Facebook at this time. Please try again later.

or

Password Reset Email Sent

Join with Facebook

Sorry, we are unable to log you in via Facebook at this time. Please try again later.

or

By joining, you agree to our

read free for one week

Personalized recommendationsbased on books you love

Syncing across all your devices

Join with Facebook

or Join with EmailSorry, we are unable to log you in via Facebook at this time. Please try again later.

Already a member? Sign in.

By joining, you agree to our

to download

Personalized recommendationsbased on books you love

Syncing across all your devices

Continue with Facebook

Sign inJoin with emailSorry, we are unable to log you in via Facebook at this time. Please try again later.

By joining, you agree to our

Are you sure?

This action might not be possible to undo. Are you sure you want to continue?

CANCEL

OK

You've been reading!

NO, THANKS

OK

scribd