Top Banner
1 Finite Impulse Response (FIR) Digital Filters (III) Impulse Response Coefficients calculation with the Window method Yogananda Isukapalli
27

Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

Mar 12, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

1

Finite Impulse Response (FIR)

Digital Filters (III)

Impulse Response Coefficients calculation with the Window method

Yogananda Isukapalli

Page 2: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

2

• Ideal filter design equations:

å¥

-¥=

-=n

jnwDD enhH ][)(w

ò-

=p

p

wp

dweHnh jnwDD )(

21][

• Exact approximation of the desired requires aninfinite number of coefficients for , which are alsoknown as the Fourier coefficients.

Ideal Impulse Response Design

where and are the ideal frequency response and the ideal impulse response respectively.

)(wDH )(nhD

)(wDH)(nhD

Page 3: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

3

• Ideal Low Pass impulse response design

We have, ò-

=p

p

wp

dweHnh jnwDD )(

21][ (1)

For the ideal low pass frequency response in Fig 1(a), the ideal impulse response shown in Fig 1b, is obtained as follows:

rule) sHopital'L' (using 0 ,2

,0 , )sin(2

211

21)(

==

¥££¥-¹=

=´= òò--

nf

nnnnf

dedenh

c

c

cc

njnjD

c

c

ww

wp

wp

w

w

wp

p

w

(2)

Page 4: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

4

Fig 11. (a) Ideal frequency response of a low pass filter (b) Impulse response of the

ideal low pass filter

• The impulse responses of the ideal high pass, band pass and band stop filters are obtained from the low pass case of eqn (2) and are summarized in Table 1.

Page 5: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

5

Table 11. Summary of ideal impulse responses for standard frequency selective filters

Page 6: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

6

• FIR filter design requires the truncation of {h[n]} for some n = ±M

Fig 2. Low pass filter frequency response for 101 and 151 coefficient designs

• The direct truncation method exhibits Gibb’s phenomenon implying there exists an overshoot of 8.95% at the point of discontinuity for a large M.

Overshootof 0.09 forboth cases

Page 7: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

7

Windowing concept:

Given the infinite sequence from the design equation

ò-

=p

p

wp

dweHnh jnwDD )(

21][

)...}25(),24()...,1(),0(),1()...24(),25({... hhhhhhh ---

Window functions

• A window function is used to obtain a finite impulse response from an ideal infinite impulse response.

• If is the impulse response for an ideal filter and w[n] issome window function which is zero outside the range

then a finite impulse response filter is obtained as

)(nhD

10 -££ Nn

]}[]}{[{][ nwnhnh D=where is the finite impulse response. ][nh

Page 8: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

8

Multiply by w[n]

...}0,0,0,1,1,1...1,1,1,0,0,0{...][ =nw

n=-20 n=20

Define the “windowed” filter coefficients:

Infinite sequence Finite length window

21

where ,][)( -=

-

-=å= N

Mjnw

M

Mn

enhH w

jnwM

Mnenwnh -

-=å= ][][

Truncation is equivalent to a rectangular window: otherwiseMnnw £= ||

,0,1][

]}[]}{[{][ nwnhnh D=

Page 9: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

9

Fig 31. An illustration of how the filter coefficients, h(n), are determined by the window method

Page 10: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

10

Consider rectangular window design:

][][][ nwMnhnh D -=

îíì ££-

=otherwise

MnMnhD0

20][

jwMjDD eeHMnh -«- )(][ w

)(][ jweWnw «

)2

sin(

)2

)12(sin(]}[{)( w

Mw

nwDFTeW jw

+

==

)( )()( jwjwMjwD

jw eWeeHeH *= -

Windowing: Convolution interpretation

Page 11: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

11

Desirable window properties

2. Side lobes of the frequency response should decrease in energy as . This will lead to a filter with higher stop band attenuation.

1. Small width of main lobe of the frequency response of the window which results in a filter with a lower transition width.

p®w

• Various window functions have been proposed:-

• Rectangular window• Hanning window• Hamming window• Blackmann window• Kaiser window

Page 12: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

12

Table 21. Summary of important features of common window functions

Page 13: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

13

• We observe that the window functions other than the Kaiser window, have fixed characteristics, such as transition width and stop band attenuation.

Fig 41. Comparison of the time and frequency domain characteristics of common window functions(a) rectangular; (b) Hamming; (c) Blackman

Page 14: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

14

Example:

Solution:

Page 15: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

15

Page 16: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

16

• We note that the indices of the filter coefficients run from -26 to 26. We make the filter causal by adding 26 to each index so that the indices start at zero.

• The filter coefficients, with indices adjusted, are listed in Table 3.

Table 31

Page 17: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

17

Kaiser Window – Adjustable Window Function

The most widely used adjustable window function is theKaiser window function. Kaiser found that a near-optimal window function could be formed by using the zeroth-order modified Bessel function of the first kind.The Kaiser window is given by:

ïî

ïíì

=--

)(})1/2(1{

00

20

][ bb

INnI

nw2/)1(2/)1( -££-- NnN

otherwise

where I0(.) represents the zeroth-order modified Bessel function of the first kind given by:

2

1 !)2/(1)( å

=úû

ùêë

é+=

L

k

k

o kx

xI where typically, L< 25.

Page 18: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

18

Design Using Kaiser Window Functioncontd....

• The Kaiser window has two parameters:1) Length (N = 2M+1) 2) Shape Parameter b

• By varying these two parameters the window length and shape can be adjusted to trade sidelobe amplitude for mainlobe width.

• The parameter b controls the minimum attenuation as i.e., ripple ds in the stop band of the windowed filter response.

Page 19: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

19

Design Using Kaiser Window Functioncontd....

Estimation of b and the filter length N=2M+1 for a givenas and transition bandwidth Df is determined empirically.

0.1102(as -8.7), for as > 50b = 0.5842(as -21)0.4+0.07886(as -21) for 21 £ as £ 50

0 for as < 21for as > 21

N = for as £ 21

136.1495.7

+D

-f

sa

19222.0+

Df

Note: The kaiser window does not provide independent control over the passband ripple dp. However in practice, dp is equal to ds.

Page 20: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

20

Design Using Kaiser Window Function contd...

<-- Samples -->0 5 10 15 20 25 300

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

<--A

mpl

itude

-->

b=0b=3b=6, M=29

By varying the two parameters M and b , the window shape could be adjusted to trade sidelobe amplitude for the mainlobe width. The figure below shows continuous envelopes of kaiser window of length M=29 and b=0, 3, 6Notice the shape as b varies from 0 to higher values.

Page 21: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

21

Design Using Kaiser Window Function contd...

Taking the fourier transform of the obtained windows we see from the figures below we notice the tradeoff between the width of the mainlobe and the amplitude of the sidelobes. If the window is tapered more, the sidelobes of the fourier transform become smaller, but the main lobe becomes wider.

b = 0

0 0.2 0.4 0.6 0.8 1-400

-300

-200

-100

0

100

Normalized frequency (Nyquist == 1)

Phas

e (d

egre

es)

0 0.2 0.4 0.6 0.8 1-100

-50

0

50

Normalized frequency (Nyquist == 1)

Mag

nitu

de R

espo

nse

(dB)

0 0.2 0.4 0.6 0.8 1-300

-200

-100

0

100

Normalized frequency (Nyquist == 1)

Phas

e (d

egre

es)

0 0.2 0.4 0.6 0.8 1-60

-40

-20

0

20

40

Normalized frequency (Nyquist == 1)

Mag

nitu

de R

espo

nse

(dB)

0 0.2 0.4 0.6 0.8 1-200

-100

0

100

Normalized frequency (Nyquist == 1)

Phas

e (d

egre

es)

0 0.2 0.4 0.6 0.8 1-60

-40

-20

0

20

40

Normalized frequency (Nyquist == 1)

Mag

nitu

de R

espo

nse

(dB) b = 3 b = 6

Page 22: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

22

Design Using KaiserWindow Function Example

• Specification of a Lowpass Filter:wp= 0.3p, passband edge frequencyws=0.4 p, stopband edge frequencyas =50dB attenuation

• We have wc = (wp + ws)/2 = 0.35p• We know as = -20log10(ds )dB. Thus ds=0.00316• We know how to calculate b for a given as.Thus b = 4.5335. • The transition bandwidth Df is given by Df = (ws - wp)/2p =0.05 • Next we determine N using the empirical formula given in the earlier slide. We get N = 59.565 we choose the next higher odd value i.e., 61. Thus M = 30.

Soln)

Page 23: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

23

Design Using Kaiser Window Function Example

For the calculated window parameters the kaiser window is :

Its Fourier transform is given by:0 10 20 30 40 50 60 70

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0 0.2 0.4 0.6 0.8 1-400

-300

-200

-100

0

100

Normalized frequency (Nyquist == 1)

Phas

e (d

egre

es)

0 0.2 0.4 0.6 0.8 1-100

-50

0

50

Normalized frequency (Nyquist == 1)

Mag

nitu

de R

espo

nse

(dB)

Page 24: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

24

Design Using KaiserWindow Function Example

We obtain the impulse-response coefficients of the required FIR filter by windowing the ideal filter function.

c

c

cc

f

nwn

nwfnh

2

][.sin2][

=

=w

MnMn ££-¹ ,0

For M=30 and wc=0.35p we get the coefficients to be :

0 10 20 30 40 50 60 70-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0=n

Page 25: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

25

Design Using KaiserWindow Function Example

The Magnitude Response of the obtained Filter is :

0 0.2 0.4 0.6 0.8 1-120

-100

-80

-60

-40

-20

0

20

<-- Normalized Frequency -->

<-- G

ain

-->

Page 26: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

26

Advantages and disadvantages of the window method

• The window method is simple to apply and simple to understand.

• The major disadvantage is lack of flexibility, for example equal peak pass band and stop band ripples, which is generally undesirable.

• Because of the effect of convolution of the spectrum of the window function and the desired response, the pass band and stop band edge frequencies cannot be precisely specified.

Page 27: Finite Impulse Response (FIR) Digital Filters (III)yoga/courses/DSP/P12_FIR_Windowing.pdf · •FIR filter design requires the truncation of {h[n]} for some n = ±M Fig 2. Low pass

27

References

1. “Digital Signal Processing – A Practical Approach” -Emmanuel C. Ifeachor and Barrie W. Jervis Second Edition