Chapter 10 FIR Digital Filter Design. §10.2.1 Least Integral-Squared Error Design of FIR Filters ...

Post on 30-Dec-2015

230 views 5 download

Transcript of Chapter 10 FIR Digital Filter Design. §10.2.1 Least Integral-Squared Error Design of FIR Filters ...

Chapter 10

FIR Digital Filter DesignFIR Digital Filter Design

§10.2.1 Least Integral-Squared Error Design of FIR Filters

Let Hd(e jω) denote the desired frequency response

Since Hd(e jω) is a periodic function of ω with a period 2π,it can be expressed as a Fourier series

n

njd

jd enheH ][)(

ndeeHnh njjdd ,)(

2

1][

where

§10.2.1 Least Integral-Squared Error Design of FIR Filters

In general Hd(e jω) is piecewise constant with sharp transitions between bands

In which case {hd[n]} is of infinite length and noncausal

Objective – Find a finite-duration {ht[n]} of length 2M+1 whose DTFT Ht(e jω) approximates the desired DTFT Hd(e jω) in some sence

§10.2.1 Least Integral-Squared Error Design of FIR Filters

Commonly used approximation criterion – Minimize the integral-squared error

deHeH jd

jt

2

)()(2

1

njM

Mnt

jt enheH

][)(

where

§10.2.1 Least Integral-Squared Error Design of FIR Filters

Using Parseval’s relation we can write

M

Mn

M

n Mndddt

dt

nhnhnhnh

nhnh

1

1

222

2

][][][][

][][

It follows from the above that Φis minimum when ht[n]= hd[n] for -M≤n≤M

Best finite-length approximation to ideal infinite-length impulse response in the mean-square sense is obtained by truncation

§10.2.1 Least Integral-Squared Error Design of FIR Filters

A causal FIR filter with an impulse response h[n] can be derived from ht[n] by delaying:

h[n]=ht[n-M] The causal FIR filter h[n] has the same mag

nitude response as ht[n] and its phase response has a linear phase shift of ωM radians with respect to that of ht[n]

§10.2.2 Impulse Responses of Ideal Filters

Ideal lowpass filter –

nn

nnh c

LP ,sin

][

0,sin

0,1][

nn

n

nnh

c

c

LP

Ideal highpass filter –

§10.2.2 Impulse Responses of Ideal Filters

Ideal bandpass filter –

0,

0,)sin()sin(

][12

12

n

nn

nn

n

nhcc

cc

BP

§10.2.2 Impulse Responses of Ideal Filters

Ideal bandstop filter –

0,

0,)sin()sin(

1][

21

12

n

n

nn

nn

nhcc

cc

BS

§10.2.2 Impulse Responses of Ideal Filters

Ideal multiband filter –

Lk

AeH

kk

kj

ML

,...,2,1,

,)(

1

nAAnH Ln

L

ML )sin(

)(][1

1

§10.2.2 Impulse Responses of Ideal Filters

Ideal discrete-time Hilbert transformer –

oddnfor,/2evennfor,0

][

0,0,

)(

nnh

jj

eH

HT

jHT

§10.2.2 Impulse Responses of Ideal Filters

Ideal discrete-time differentiator –

0n,cos

0n,0][

0,)(

nnnh

jeH

DIF

jDIF

§10.2.3 Gibbs Phenomenon Gibbs phenomenon - Oscillatory behavior in

the magnitude responses of causal FIR filters obtained by truncating the impulse response coefficients of ideal filters

§10.2.3 Gibbs Phenomenon As can be seen, as the length of the lowpas

s filter is increased, the number of ripples in both passband and stopband increases, with a corresponding decrease in the ripple widths

Height of the largest ripples remain the same independent of length

Similar oscillatory behavior observed in the magnitude responses of the truncated versions of other types of ideal filters

§10.2.3 Gibbs Phenomenon Gibbs phenomenon can be explained by tre

ating the truncation operation as an windowing operation:

deeHeH jjd

jt )()(

21)( )(

][][][ nwnhnh dt

where Ht(ejω) and Ψ(ejω) are the DTFTs of ht[n] and w[n] , respectively

In the frequency domain

§10.2.3 Gibbs Phenomenon Thus Ht(ejω) is obtained by a periodic continuo

us convolution of Hd(ejω) with Ψ(ejω)

§10.2.3 Gibbs Phenomenon

If Ψ(ejω) is a very narrow pulse centered at ω=0 (ideally a delta function) compared to variations in Hd(ejω) , then Ht(ejω) will approximate Hd(ejω) very closely

Length 2M+1 of w[n] should be very large On the other hand, length 2M+1 of ht[n] shou

ld be as small as possible to reduce computational complexity

§10.2.3 Gibbs Phenomenon

A rectangular window is used to achieve simple truncation:

Presence of oscillatory behavior in Ht(ejω) is basically due to:

– 1) hd[n] nitely long and not absolutely summable, and hence filter is unstable – 2) Rectangular window has an abrupt transition to zero

§10.2.3 Gibbs Phenomenon Oscillatory behavior can be explained by ex

amining the DTFT ΨR(ejω) of hwR[n]:

R(ejω) has a main lobe centered at ω=0

Other ripples are called sidelobes

§10.2.3 Gibbs Phenomenon Main lobe of ΨR(ejω) characterized by its width

4π/(2M+1) defined by first zero crossings on both sides of ω=0

As M increases, width of main lobe decreases as desired

Area under each lobe remains constant while width of each lobe decreases with an increase in M

Ripples in Ht(ejω) around the point of discontinuity occur more closely but with no decrease in amplitude as M increases

§10.2.3 Gibbs Phenomenon

Rectangular window has an abrupt transition to zero outside the range -M≤n≤M, which results in Gibbs phenomenon in Ht(ejω)

Gibbs phenomenon can be reduced either:(1) Using a window that tapers smoothly to

zero at each end, or(2) Providing a smooth transition from passband to stopband in the magnitude specifications

§10.2.4 Fixed Window Functions Using a tapered window causes the height o

f the sidelobes to diminish, with a corresponding increase in the main lobe width resulting in a wider transition at the discontinuity

MnMM

nnw ,)

122

cos(5.05.0][ Hann:

MnMM

nnw ,)

122

cos(46.054.0][ Hamming:

)12

4cos(08.0)

122

cos(5.042.0][ M

nM

nnw

Blackman:

§10.2.4 Fixed Window Functions

Plots of magnitudes of the DTFTs of these windows for M=25 are shown below:

0 0.2 0.4 0.6 0.8 1-100

-80

-60

-40

-20

0

/

Gai

n, d

B

Rectangular window

0 0.2 0.4 0.6 0.8 1-100

-80

-60

-40

-20

0

/

Gai

n, d

B

Hanning window

0 0.2 0.4 0.6 0.8 1-100

-80

-60

-40

-20

0

/

Gai

n, d

B

Hamming window

0 0.2 0.4 0.6 0.8 1-100

-80

-60

-40

-20

0

/

Gai

n, d

BBlackman window

§10.2.4 Fixed Window Functions Magnitude spectrum of each window charac

terized by a main lobe centered at ω= 0 followed by a series of sidelobes with decreasing amplitudes

Parameters predicting the performance of a window in filter design are:

Main lobe width Relative sidelobe level

§10.2.4 Fixed Window Functions

Main lobe width ML - given by the distance between zero crossings on both sides of main lobe

Relative sidelobe level Asl - given by the difference in dB between amplitudes of largest sidelobe and main lobe

§10.2.4 Fixed Window Functions

Observe Thus, Passband and stopband ripples are the same

1)()( )()( cc jt

jt eHeH

5.0)( cjt eH

§10.2.4 Fixed Window Functions

Distance between the locations of the maximum passband deviation and minimum stopband value ML

Width of transition band

= s - p < ML

§10.2.4 Fixed Window Functions

To ensure a fast transition from passband to stopband, window should have a very small main lobe width

To reduce the passband and stopband ripple δ, the area under the sidelobes should be very small

Unfortunately, these two requirements are contradictory

§10.2.4 Fixed Window Functions

In the case of rectangular, Hann, Hamming, and Blackman windows, the value of ripple does not depend on filter length or cutoff frequency c , and is essentially constant

In addition,

c / M

where c is a constant for most practical purposes

§10.2.4 Fixed Window Functions Rectangular window - ML=4/(2M+1)

Asl=13.3 dB, s=20.9 dB, =0.92/M

Hann window - ML=8/(2M+1)

Asl=31.5 dB, s=43.9 dB, =3.11/M

Hamming window - ML=8/(2M+1)

Asl=42.7 dB, s=54.5 dB, =3.32/M,

Blackman window - ML=12/(2M+1)

Asl=58.1 dB, s=75.3 dB, =5.56/M

§10.2.4 Fixed Window Functions

Filter Design Steps -

(1) Set

c =(p + s )/2

(2) Choose window based on specified s

(3) Estimate M using

c / M

§10.2.4 Fixed Window FunctionsFIR Filter Design Example

Lowpass filter of length 51 and c=/2

0 0.2 0.4 0.6 0.8 1

-100

-50

0

/

Gai

n, d

B

Lowpass Filter Designed Using Hann window

0 0.2 0.4 0.6 0.8 1

-100

-50

0

/

Gai

n, d

B

Lowpass Filter Designed Using Hamming window

0 0.2 0.4 0.6 0.8 1

-100

-50

0

/

Gai

n, d

B

Lowpass Filter Designed Using Blackman window

§10.2.4 Fixed Window Functions

FIR Filter Design Example An increase in the main lobe width is associ

ated with an increase in the width of the transition band

A decrease in the sidelobe amplitude results in an increase in the stopband attenuation

§10.2.5 Adjustable Window Functions

Dolph-Chebyshev Window –

MnMMnk

MkT

Mnw

M

kk

,]12

2cos)12

cos(21[12

1][1

)1cosh21cosh(

amplitudelobemainsidelobeofamplitude

1

M

where

1,)coshcosh(1,)coscos(

)( 1

1

xxxx

xT

and

§10.2.5 Adjustable Window Functions

Dolph-Chebyshev window can be designed with any specified relative sidelobe level while the main lobe width adjusted by choosing length appropriately

Filter order is estimated using

)(85.24.16056.2

sN

where is the normalized transition bandwidth, e.g, for a lowpss filter

= s - p

§10.2.5 Adjustable Window Functions

Gain response of a Dolph-Chebyshev window of length 51 and relative sidelobe level of 50 dB is shown below

§10.2.5 Adjustable Window Functions

Properties of Dolph-Chebyshev window: All sidelobes are of equal height Stopband approximation error of filters desig

ned have essentially equiripple behavior For a given window length, it has the smalle

st main lobe width compared to other windows resulting in filters with the smallest transition band

§10.2.5 Adjustable Window Functions

where βis an adjustable parameter and I0(u) is the modified zeroth-order Bessel function of the first kind:

MnMI

MnInw

,

)(})/(1{

][0

20

1

20 ]

!)2/(

[1)(r

r

ru

uI

Kaiser Window –

20

1

20 ]

!)2/(

[1)(r

r

ru

uIIn practice

Note I0(u)>0 for u>0

§10.2.5 Adjustable Window Functions

βcontrols the minimum stopband attenuation of the windowed filter response

βis estimated using

21for,05021for,)21(07886.0)21(5842.0

50for,)7.8(1102.04.0

s

sss

ss

)(285.28

sN

where is the normalized transition bandwidth

Filter order is estimated using

§10.2.5 Adjustable Window Functions

FIR Filter Design Example Specifications: p= , s= , c=40 dB Thus

4.02/)( spc

01.010 20/ ss

3953.31907886.0)19(5842.0 4.0

2886.22)2.0(285.2

32

N

Choose N=24 implying M=1

§10.2.5 Adjustable Window Functions

FIR Filter Design Example Hence ht[n]=sin(0.4n)/ n, -12n12

where w[n] is the n-th coefficient of a length-25 Kaiser window with =3.3953

0 0.2 0.4 0.6 0.8 1-80

-60

-40

-20

0

/

Gai

n, d

B

Kaiser Window

0 0.2 0.4 0.6 0.8 1-80

-60

-40

-20

0

/

Gai

n, d

B

Lowpass filter designed with Kaiser window

§10.2.6 Impulse Responses of FIR Filters with a Smooth Transition

First-order spline passband-to-stopband transition

ps

spc

2/)(

0,)sin()2/sin(2

0,/][

nn

nnn

nnh c

c

LP

§10.2.6 Impulse Responses of FIR Filters with a Smooth Transition

Pth-order spline passband-to-stopband transition

0,)sin(

2/)2/sin(2

0,/][

nn

nPn

Pnn

nh c

c

LP

§10.2.6 Impulse Responses of FIR Filters with a Smooth Transition

Lowpass FIR Filter Design Example

§10.3 Computer-Aided Design of Equiripple Linear-Phase FIR Filters

The FIR filter design techniques discussed so far can be easily implemented on a computer

In addition, there are a number of FIR filter design algorithms that rely on some type of optimization techniques that are used to minimize the error between the desired frequency response and that of the computer-generated filter

§10.3 Computer-Aided Design of Equiripple Linear-Phase FIR Filters

Basic idea behind the computer-based iterative technique

Let H(ejω) denote the frequency response of the digital filter H(z) to be designed approximating the desired frequency response D(ejω), given as a piecewise linear function of ω, in some sense

§10.3 Computer-Aided Design of Equiripple Linear-Phase FIR Filters

Objective - Determine iteratively the coefficients of H(z) so that the difference between H(ejω) and D(ejω) over closed subintervals of 0≤ω≤π is minimized

This difference usually specified as a weighted error function

ε(ω)=W(ejω)[H(ejω)-D(ejω)]where W(ejω) is some user-specified weighting function

§10.3 Computer-Aided Design of Equiripple Linear-Phase FIR Filters

Chebyshev or minimax criterion - Minimizes the peak absolute value of the weighted error:

)(max R

where R is the set of disjoint frequency bands in the range 0≤ω≤π, on which D(ejω) is defined

§10.3 Computer-Aided Design of Equiripple Linear-Phase FIR Filters

The linear-phase FIR filter obtained by minimizing the peak absolute value of

)(max R

is usually called the equiripple FIR filter After ε is minimized, the weighted error funct

ion ε(ω) exhibits an equiripple behavior in the ferquency range R

§10.3.1 the Parks-McClellan Algorithm

The general form of frequency response of a causal linear-phase FIR filter of length 2M+1:

)()( HeeH jMj

where the amplitude response is a real function of ω

)(H

where D(ω) is the desired amplitude response and W(ω) is a positive weighting function

)]()()[()( DHW

Weighted error function is given by

§10.3.1 the Parks-McClellan Algorithm

The Parks-McClellan Algorithm is based on iteratively adjusting the coefficients of until the peak absolute value of ε(ω) is minimized

)(H

baWDH

,

)()()( 0

If peak absolute value of ε(ω) in a band ωa≤ω≤ωb is ε0, then the absolute error satisfies

§10.3.1 the Parks-McClellan Algorithm

For filter design,

is required to satisfy the above desired response with a ripple of ±δp in the passband and a ripple of δs in the stopband

)(H

stopbandthein,0passbandthein,1

)(D

§10.3.1 the Parks-McClellan Algorithm

Thus, weighting function can be chosen either as

stopbandthein,/

passbandthein,1)(

spW

stopbandthein,1passbandthein,/

)( psW

or

§10.3.1 the Parks-McClellan Algorithm

M

k

kkaH0

)cos(][)(

2/)12(

1

)21(cos][)(

M

k

kkbH

MkkMhkaMha 1,][2][,][]0[

2121,]

212[2][ MkkMhkb

where

Type 2 FIR Filter –

where

Type 1 FIR Filter –

§10.3.1 the Parks-McClellan Algorithm

M

k

kkcH1

)sin(][)(

MkkMhkc 1,][2][

2/)12(

1

)21(sin][)(

M

k

kkdH

2121,]

212[2][ MkkMhkd

where

Type 4 FIR Filter –

where

Type 3 FIR Filter –

§10.3.1 the Parks-McClellan Algorithm

Amplitude response for all 4 types of linear- phase FIR filters can be expressed as

)()()( AQH

4Typefor,)2/sin(3Typefor,)sin(2Typefor,)2/cos(1Typefor,1

)(

Q

where

§10.3.1 the Parks-McClellan Algorithm

)cos(][~)(0

kkaAL

k

4Typefor,][~

3Typefor,][~2Typefor,][

~1Typefor,][

][~

kdkckbka

ka

where

and

§10.3.1 the Parks-McClellan Algorithm

4Typefor,2

123Typefor,1

2Typefor,2

121Typefor,

MM

MM

L

are elated to b[k], c[k], and d[k], respectively

,][~

and][~,][~

kdkckb

with

§10.3.1 the Parks-McClellan Algorithm

Modified form of weighted error function

)(/)()(~

)()()(~

QDDQWW

Modified form of weighted error function

)](~

)()[(~

])(

)()()[()(

)]()()()[()(

DAWQ

DAQW

DAQWE

§10.3.1 the Parks-McClellan Algorithm

L

k

DkkaW0

)](~

)cos(][~)[(~

)(

Optimization Problem – Determine which minimize the peak absolute value εof

][~ ka

After has been determined, corresponding coefficients of the original A(ω) are computed from which h[n] are determined

][~ kaover the specified frequency bands ω∈R

§10.3.2 Alternation Theorem The aplitude function A(ω) is the best unique

approximation of obtained by minimizing peak absolute value ω of

)(~ D

)]()()()[()( DAQW

if and only if there exist at least L+2 extremal frequencies, {ωi}, 0≤i≤L+1 in a closed subset R of the frequency range 0≤ω≤π such that ω0<ω1<···ωL

<ωL+1 and ε(ωi)=-ε(ωi+1), |ε(ωi)|=ε for all i

§10.3.1 Design of EquirippleLinear-Phase FIR Filters

Consider a Type 1 FIR filter with an amplitude response A(ω) whose approximation error ε(ω) satisfies the Alternation Theorem

Peaks of E(ω) are at ω=ωi, 0≤i≤L+1 where d E(ω)/dω=0

iddA

ddE

at0

)()(

Since in the passband and stopband, and are piecewise constant,

)(~ D

)(~ W

§10.3.1 Design of EquirippleLinear-Phase FIR Filters

Using cos(ωk)=Tk(cosω), where Tk(x) is the k-th order Chebyshev polynomial

)coscos()( 1 xkxTk

kL

kkA

0

)](cos[)( which is an Lth-order polynomial in cosω

Hence, A(ω) can have at most L-1 local minima and maxima inside specified passband and stopband

A(ω) can be expressed as

§10.3.1 Design of EquirippleLinear-Phase FIR Filters

At bandedges, ω=ωp, and ω=ωs , |ε(ω)| is a maximum, and hence A(ω) has extrem at these points

A(ω) can have extrema at ω=0, and ω=π

Therefore, there are at most L+3 extremal frequencies of ε(ω)

For linear-phase FIR filters with K specified bandedges, there can be at most L+K+1 extremal frequencies

§10.3.1 Design of EquirippleLinear-Phase FIR Filters

The set of equations

10,)1()](~

)()[(~ LiDAW i

ii

)(~

)(~

)(~

)(~

][~

]1[~]0[~

)(~

/)1()cos()cos(1)(

~/)1()cos()cos(1

)(~

/1)cos()cos(1)(

~/1)cos()cos(1

1

1

0

111

1

111

000

L

L

LL

LL

LL

LL

DD

DD

La

aa

WLWL

WLWL

is written in a matrix form

§10.3.1 Design of EquirippleLinear-Phase FIR Filters

The matrix equation can be solved for the unknowns andεif the locations of the L+2 extremal frequencies are known a priori

][~ ka

The Remez exchange algorithm is used to determine the locations of the extremal frequencies

§10.3.2 Remez Exchange Algorithm Step 1: A set of initial values of extremal fre

quencies are either chosen or are available from completion of previous stage

Step 2: Value ofεis computed using

1

0)cos()cos(

1L

nii in

nc

)(~

)1()(

~)(

~

)(~

)(~

)(~

1

11

1

1

0

0

111100

L

LL

LL

Wc

Wc

Wc

DcDcDc

where

§10.3.2 Remez Exchange Algorithm Step 3: Values of A(ω) at ω=ωi are then com

puted using

11,)(~

)(~

)1()( LiD

WA i

i

i

i

Step 4: The polynomial A(ω) is determined by interpolating the above values at the L+2 extremal frequencies using the Lagrange interpolation formula

§10.3.2 Remez Exchange Algorithm

Step 4: The new error function)](

~)()[(

~)( DAWE

is computed at a dense set S(S≥L) of frequencies. In practice S=16L is adequate. Determine the L+2 new extremal frequencies from the values of ε(ω) evaluated at the dense set of frequencies.

Step 5: If the peak values εof ε(ω) are equal in magnitude, algorithm has converged. Otherwise, go back to Step 2.

§10.3.2 Remez Exchange Algorithm

Illustration of algorithm Iteration process is stopped if the difference between the values of the peak absolute errors between two consecutive stages is less than a preset value, e.g., 10-6

§10.3.2 Remez Exchange Algorithm

Example – Approximate the desired y a linear function D(x)=1.1x2-0.1 defined for the range 0≤x≤2 by a linear function a1x+a0 by minimizing the peak value of the absolute error

xaaxx

102

]2.0[1.01.1max

5.1,5.0,0 321 xxx

Stage 1:Choose arbitrarily the initial extremal points

§10.3.2 Remez Exchange Algorithm Solve the three linear equations

3,2,1,)()1(10

xDxaa

3.40.11.0

121111

101

1

0

aa

275.0,65.1,375.0 10 aafor the given extremal points yielding

i.e.,

§10.3.2 Remez Exchange Algorithm Plot of ε1(x)=1.1x2-1.65x+0.275 along with valu

es of error at chosen extremal points shown below

Note: Errors are equal in magnitude and alternate in sign

§10.3.2 Remez Exchange Algorithm Stage 2: Choose extremal points where ε1(x) assumes

its maximum absolute values These are x1=0, x2=0.75, x3=2 New values of unknowns are obtained by sol

ving

3.45188.0

1.0

121175.01

101

1

0

aa

yielding a0=-0.6156, a1=2.2, ε=0.5156

§10.3.2 Remez Exchange Algorithm

Plot of ε2(x)=1.1x2-2.2x+0.5156 along with values of error at chosen extremal points shown below

§10.3.2 Remez Exchange Algorithm Stage 3: Choose extremal points where ε2(x) assumes

its maximum absolute values These are x1=0, x2=1, x3=2 New values of unknowns are obtained by sol

ving

3.40.11.0

121111

101

1

0

aa

yielding a0=-0.65, a1=2.2, ε=0.55

§10.3.2 Remez Exchange Algorithm Plot of ε3(x)=1.1x2-2.2x+0.55 along with value

s of error at chosen extremal points shown below

Algorithm has converged as εis also the maximum value of the absolute error

§10.4 Design of Minimum-PhaseFIR Filters

Linear-phase FIR filters with narrow transition bands are of very high order, and as a result have a very long group delay that is about half the filter order

By relaxing the linear-phase requirement, it is possible to design an FIR filter of lower order thus reducing the overall group delay and the computational cost

§10.4 Design of Minimum-PhaseFIR Filters

A very simple method of minimum-phase FIR filter is described next

Consider an arbitrary FIR transfer function of degree N:

N

n

N

kk

n zhznhzH0 1

1)1(]0[][)(

§10.4 Design of Minimum-PhaseFIR Filters

The mirror-image polynomial to H(z) is given by

The zeros of are thus at z=1/ξk, i.e., are reciprocal to the zeros of H(z) at z=ξk

)(ˆ zH

N

n

N

kk

n

N

zNhznN

zHzzH

0 1

1

1

)/1(][][

)()(ˆ

§10.4 Design of Minimum-PhaseFIR Filters

has zeros exhibiting mirror-image symmetry in the z-plane and is thus a Type 1 linear- phase transfer function of order 2N

)()()(ˆ)()( 1 zHzHzzHzHzG N

Moreover, if H(z) has a zero on the unit circle, will also have a zero on the unit circle at the conjugate reciprocal position

)(ˆ zH

As a result

§10.4 Design of Minimum-PhaseFIR Filters

Thus, unit circle zeros of G(z) occur in pairs On the unit circle we have

Moreover, the amplitude response has double zeros in the frequency range [0,π]

)(G

0)(

)()(2

G

GeH j

§10.4 Design of Minimum-PhaseFIR Filters

Design Procedure – Step 1: Design a Type 1 linear-phase transf

er function F(z) of degree 2N satisfying the specifications:

],[for)(

],0[for1)(1)()(

)()(

sF

pF

s

pF

pF

p

F

F

Note that F(z) has single unit circle zeros

§10.4 Design of Minimum-PhaseFIR Filters

Step 2: Determine the linear-phase transfer function

],[for2)(0

],0[for1)(1)(

)()()()(

sF

s

pF

pF

sF

pF

s

G

G

)()( )( zFzzG NFs

Its amplitude response satisfies

§10.4 Design of Minimum-PhaseFIR Filters

Note that G(z) has double zeros on the unit circle and all other zeros are situated with a mirror-image symmetry

Hence, it can be expressed in the form

G(z)=z-n Hm(z)Hm(z-1)

where Hm(z) is a minimum-phase transfer function containing all zeros of G(z) that are inside the unit circle and one each of the unit circle double zeros

§10.4 Design of Minimum-PhaseFIR Filters

Step 3: Determine Hm(z) from G(z) by applying a spectral factorization

The passband ripple and the stopband ripple of F(z) must be chosen to ensure that the specified passband ripple δp and the stopband rippleδp of Hm(z) are satisfied

)(Fs

)(Fp

§10.4 Design of Minimum-PhaseFIR Filters

It can be shown

s

sFs

s

pFp

12

,11

1 )()(

An estimate of the order N of Hm(z) can be found by first estimating the order of F(z) and then dividing it by 2

If the estimated order of F(z) is an odd integer, it should be increased by 1

§10.5 FIR Digital Filter Design Using MATLAB

Order Estimation – Kaiser’s Formula:

2/)(6.14

)(log20 10

ps

spN

Note: Filter order N is inversely proportional to transition band width (ωp-ωs ) and does not depend on actual location of transition band

§10.5 FIR Digital Filter Design Using MATLAB

Hermann-Rabiner-Chan’s Formula:

2/)(]2/))[(,(),( 2

ps

psspsp FDN

]log[log),(])(log)(log[

log])(log)(log[),(

101021

61052

104

1031022

101

spsp

pp

sppsp

bbFaaa

aaaD

51244.0,01217.11,4278.0,5941.0,00266.0

,4761.0,07114.0,005309.0

21

654

321

bbaaa

aaa

where

with

§10.5 FIR Digital Filter Design Using MATLAB

Formula valid for δp≥δs

For δp<δs , Formula to be used is obtained by interchanging δp and δs

Both formulas provide only an estimate of the required filter order N

Frequency response of FIR filter designed using this estimated order may or may not meet the given specifications

If specifications are not met, increase filter order until they are met

§10.5 FIR Digital Filter Design Using MATLAB

MATLAB code fragments for estimating filter order using Kaiser’s formula

num = - 20*log10(sqrt(dp*ds))-13;

den = 14.6*(Fs - Fp)/FT

N = ceil(num/den); M-file remezord implements Hermann-Rabin

er-Chan’s order estimation formula

§10.5 FIR Digital Filter Design Using MATLAB

For FIR filter design using the Kaiser window, window order is estimated using the M-file kaiserord

The M-file kaiserord can in some cases generate a value of N which is either greater or smaller than the required minimum order

If filter designed using the estimated order N does not meet the specifications, N should either be gradually increased or decreased until the specifications are met

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

The M-file remez can be used to design an equiripple FIR filter using the Parks- McClellan algorithm

Example – Design an equiripple FIR filter with the specifications: Fp=0.8kHz, Fs=1kHz, FT=4kHz, αp=0.5dB, αs=40dB

Here δp=0.0559 and δs=0.01

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

MATLAB code fragments used are

[N, fpts, mag, wt]=

remezord(fedge, mval, dev, FT);

b = remez(N, fpts, mag, wt);

where fedge = [800 1000],

mval = [1 0], dev = [0.0559 0.01],and FT=400

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

The computed gain response with the filter order obtained (N=28) does not the specifications (αp=0.6dB, αs=38.7dB)

Specifications are met with N=30

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Example – Design a linear-phase FIR bandpass filter of order 26 with a passband from 0.3 to 0.5, and stopbands from 0 to 0.25 and from 0.55 to 1

The pertinent input data here areN = 26fpts = [0 0.25 0.3 0.5 0.55 1]mag = [0 0 1 1 0 0]wt = [1 1 1]

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Computed gain response shown below where αp=1dB, αs=18.7dB

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

We redesign the filter with order increased to 110

Computed gain response shown below where αp=0.024dB, αs=51.2dB

Note: Increase in order improves gain response at the expense of increased computational complexity

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

αs can be increased at the expenses of a larger αp by decreasing the relative weight ratio W(ω)=αp/αs Gain response of bandpass filter of order 110 obtained with a weight vector[1 0.1 1]

Now αp=0.076dB, αs=60.86dB

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

As L=13, and thereare 4 band edges, there can be at most L-1+6=18 extrema

Error plot exhibits 17 extrema

Absolute error has same peak value all bands

Plots of absolute error for 1st design

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Absolute error has same peak value in all bands for the 2nd design

Absolute error in passband of 3rd design is 10 times the error in the stopbands

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Example – Design a linear-phase FIR bandpass filter of order 60 with a passband from 0.3 to 0.5, and stopbands from 0 to 0.25 and from 0.6 to 1 with unequal weights

The pertinent input data here areN = 60fpts = [0 0.25 0.3 0.5 0.6 1]mag = [0 0 1 1 0 0]wt = [1 1 0.3]

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Plots of gain response and absolute error shown below

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Response in the second transition band shows a peak with a value higher than that in passband

Result does not contradict alternation theorem

As N = 60, M = 30, and hence, there must be at least M + 2 = 32 extremal frequencies

Plot of absolute error shows the presence of 32 extremal frequencies

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

If gain response of filter designed exhibits a nonmonotonic behavior, it is recommended that either the filter order or the bandedges or the weighting function be adjusted until a satisfactory gain response has been obtained

Gain plot obtained by moving the second stopband edge to 0.55

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

FIR Differentiator Design Examples A lowpass differentiator has a bandlimited frequenc

y response

s

pjDIF

jeH

,00,

)(

where 0≤|ω|≤ωp represents the passband and ωs≤|ω|≤π represents the stopband

For the design phase we choose

W(ω)=1/ω, D(ω)=1, 0≤|ω|≤ωp

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

The M-file remezord cannot be used to estimate the order of an FIR differentiator

Example - Design a full-band (ωp=π) differentiator of order 11

Code fragment to useb = remez(N, fpts, mag, ‘differentiator’);

where N = 11

fpts = [0 1]

mag = [0 pi]

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Plots of magnitude response and absolute error

Absolute error increases with ω as the algorithm result in an equiripple error of the function [A(ω)/ ω-1]

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Example – Design a lowpass differentiator of order 50 with ωp=0.4π, and ωs=0.45π

Code fragment to use

b = remez(N, fpts, mag, ‘differentiator’);

where

N = 50

fpts = [0 0.4 0.45 1]

mag = [0 0.4*pi 0 0]

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Plot of the magnitude response of the lowpass differentiator

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

FIR Hilbert Transformer Design Examples Desired amplitude response of a bandpass Hil

bert transformer is

D(ω)=1, ωL≤|ω|≤ωH

with weighting function

W(ω)=1, ωL≤|ω|≤ωH Impulse response of an ideal Hilbert transform

er satisfies the condition

hHT[n]=0, for n evenwhich can be met by a Type 3 FIR filter

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Example - Design a linear-phase bandpass FIR Hilbert transformer of order 20 with ωL=0.

1π, ωH =0.9π Code fragment to use

b = remez(N, fpts, mag, ‘Hilbert’);where

N = 20fpts = [0.1 0.9]

§10.5.2 Equiripple FIR Digital FilterDesign Using MATLAB

Plots of magnitude response and absolute error

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

The minimum-phase FIR filter design method outlined earlier involves the spectral factorization of a Type 1 linear-phase FIR transfer function G(z) with a non-negative amplitude response in the form

G(z)=z-NHm(z)Hm(z-1)

where Hm(z) contains all zeros of G(z) that are inside the unit circle and one each of the unit circle double zeros

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

Spectral Factorization We next outline the basic idea behind a sim

ple spectral factorization method Without any loss of generality we consider t

he spectral factorization of a 6-th order linear-linear phase FIR transfer function G(z) with a non-negative amplitude response:

G(z)=g3+g2z-1+g1z-2+g0z-3+g1z-4+g2z-5+g3z-6

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

Our objective is to express the above G(z) in the form

G(z)=z-3Hm(z)Hm(z-1)

where

Hm(z)=a0+a1z-1+a2z-2+a3z-3

is the minimum-phase factor of G(z)

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

Expressing G(z) in terms of the coefficients of Hm(z) we get

G(z)=(a0+a1z-1+a2z-2+a3z-3) ×

(a3+a2z-1+a1z-2+a0z-3) Forming the product of the two polynomials

given above and comparing the coefficients of like powers of z-1 the product with that of G(z) given on the previous slide we arrive at 4 equations given in the next slide

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

The above set of equations is then solved iteratively using the Newton-Raphson method

303

31202

3221101

23

22

21

200

aagaaaag

aaaaaagaaaag

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

First, the initial values of ai are chosen to ensure that Hm(z) has all zeros strictly inside the unit circle

Then, the coefficients ai are changed by adding the corrections ei so that the modified values ai +ei satisfy better the set of 4 equalities given in the previous slide

The process is repeated until the iteration converges

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

Substituting ai +ei in the 4 equations given earlier and expanding the products, a set of linear equations are obtained by eliminating all quadratic terms in ei from the expansion

In matrix form, these equations can be written as Ae=b where

03

1032

213201

3210

00

2222

aaaaaaaaaaaaaaaa

A

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

302

31202

3221101

23

22

21

200

3

2

1

0

,

aagaaaag

aaaaaagaaaag

b

eeee

e

0

10

210

3210

3

32

321

3210

00000

0

000000

aaaaaaaaaa

aaa

aaaaaaa

A

and

The matrix A can be expressed

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

The iteration convergence is checked at each step by evaluating the error term

3

0

2

i ie

The error term first decreases monotonically and the iteration is stopped when the error starts increasing

The M-file minphase.m implements the above spectral factorization method

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

Example – Design a minimum-phase lowpass FIR filter with the following specifications: ωp=0.45π, ωs=0.6π,

Rp=2 dB and Rs=26 dB Using Program 10_3.m we arrive at the desi

red filter Plots of zeros of G(z), zeros of Hm(z), and the

gain response of Hm(z) are shown in the next slide

§10.5.3 Minimum-Phase FIR FilterDesign Using MATLAB

§10.5.3 Maximum-Phase FIR FilterDesign Using MATLAB

A maximum-phase spectral factor of a linear-phase FIR filter with an impulse response b of even order with a non- negative zero-phase frequency response can be designed by first computing its minimum-phase spectral factor h and the using the statement

G = fliplr(h)

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Window Generation – Code fragments to usew = blackman(L); w = hamming(L); w = hanning(L);w = chebwin(L, Rs);w = kaiser(L, beta);where window length L is odd

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Example – Kaiser window design for use in a lowpass FIR filter design

Specifications of lowpass filter: ωp=0.4π, ωs=0.45π, αs=50 dB, → δs=0.003162

Code fragments to use[N, Wn, beta, ftype] = kaiserord(fpts, mag,dev);w = kaiser(N+1, beta); where

fpts = [0.3 0.4] mag = [1 0]dev = [0.003162 0.003162]

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Plot of the gain response of the Kaiser window

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

M-files available are fir1 and fir2 fir1 is used to design conventional lowpass,

highpass, bandpass, bandstop and multiband FIR filters

fir2 is used to design FIR filters with arbitrarily shaped magnitude response

In fir1, Hamming window is used as a default if no window is specified

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Example – Design using a Kaiser window a lowpass FIR filter with the specifications: ωp=0.3π, ωs=0.4π, δs=0.003162

Code fragments to use[N, Wn, beta, ftype] = kaiserord(fpts, mag, dev);b = fir1(N, Wn, kaiser(N+1, beta));where

fpts = [0.3 0.4]mag = [1 0]dev = [0.003162 0.003162]

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Plot of gain response

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Example – Design using a Kaiser window a highpass FIR filter with the specifications: ωp=0.55π, ωs=0.4π, δs=0.02

Code fragments to use[N, Wn, beta, ftype] = kaiserord(fpts, mag, dev); b = fir1(N, Wn, ‘ftype’, kaiser(N+1, beta));where

fpts = [0.4 0.55]mag = [0 1]dev = [0.02 0.02]

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Plot of gain response

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Example – Design using a Hamming window an FIR filter of order 100 with three different constant magnitude levels:

0.3 in the frequency range [0, 0.28], 1.0 in the frequency range [0.3, 0.5], and 0.7 in the frequency range [0.52, 1.0]

§10.5.4 Window-Based FIR FilterDesign Using MATLAB

Code fragment to useb = fir2(100, fpts, mval);where fpts = [0 0.28 0.3 0.5 0.52 1];

mval = [0.3 0.3 1.0 1.0 0.7 0.7];

§10.6 Design of ComputationallyEfficient FIR Digital Filters

As indicated earlier, the order N of a linear- phase FIR filter is inversely proportional to the width ∆ω of the transition band

Hence, in the case of an FIR filter with a very sharp transition, the order of the filter is very high

This is particularly critical in designing very narrow-band or very wide-band FIR filters

§10.6 Design of ComputationallyEfficient FIR Digital Filters

The computational complexity of a digital filter is basically determined by the total number of multipliers and adders needed to implement the filter

The direct form implementation of a linear- phase FIR filter of order N requires, in general, multipliers and N two-input adders

21N

§10.6 Design of ComputationallyEfficient FIR Digital Filters

We now outline two methods of realizing computationally efficient linear-phase FIR filters

The basic building block in both methods is an FIR subfilter structure with a periodic impulse response

§10.6.1 The Periodic Filter Section

Consider a Type 1 linear-phase FIR filter F(z) of even degree N:

N

n

nznfzF0

][)(

N

Nnn

nN

N

n

nNN

znfzNf

znfzzFzzE

2/0

2/

0

2/2/

][])2/[1(

][)()(

Its delay-complementary filter E(z) is given by

§10.6.1 The Periodic Filter Section

The transfer function H(z) obtained by replacing z-1 in F(z) with z-L, with L being a positive integer, is given by

N

n

nLL znfzFzH0

][)()(

The order of H(z) is thus NL A direct realization of H(z) is obtained by sim

ply replacing each unit delay in the realization of F(z) with L unit delays

§10.6.1 The Periodic Filter Section

Note: The number of multiplers and delays in the realization of H(z) is the same as those in the realization of F(z)

The transfer function H(z) has a sparse impulse response of length NL+1, with L-1 zero-valued samples inserted between every consecutive pair of impulse response samples of F(z)

§10.6.1 The Periodic Filter Section

The parameter L is called the sparsity factor The relation between the amplitude respons

es of these two filters is given by)()( LFH

It follows from the above that the amplitude response is a period function of ω with a period 2π/L

)(H

§10.6.1 The Periodic Filter Section

One period of is obtained by compressing the amplitude response in the interval [0, 2π] to the interval [0, 2π/L]

)(H

)(F

A transfer function H(z) with a frequency response that is a periodic function of ω with a period 2π/L is called a periodic filter

§10.6.1 The Periodic Filter Section

If F(z) is a lowpass filter with a single pasband and a single stopband, H(z) will be a multiband filter with pasbands and stopbands as shown in the next slide for L=4

12/ L

2/L

§10.6.1 The Periodic Filter Section

§10.6.1 The Periodic Filter Section

Then, the passband and stopband edges of the first band of H(z) are at and respectively

LFp /)( LF

p /)(

The passband and stopband edges of the second band of H(z) are at

and , respectively, and so on as shown on the previous slide

LFp /)2( )(

LFp /)2( )(

Let F(z) be a lowpass filter with passband edge at and stopband edge at ,where

)(Fs

)(Fs

)(Fp

§10.6.1 The Periodic Filter Section

Likewise, the transfer function G(z) by replacing z-1 in E(z) with z-L, is given by

The width of the transition bands of H(z) are , which is 1/L-th of that of F(z)LF

pF

s /)( )()(

N

n

nLNL

LNLL

znfz

zFzzEzG

0

2/

2/

][

)()()(

)()(1)( LFHzG

The amplitude response of G(z) is given by

§10.6.2 Interpolated FIR Filter The overall filter HIFIR(z) is designed as a cas

cade of a linear-phase FIR filter F(zL) and another filter I(z) that suppreses the undesired passbands of the periodic filter section as shown below

The widths of the transition band and the passband of the cascade are 1/L-th of those of F(z)

F(zL) I(z)

periodic filter interpolator

§10.6.2 Interpolated FIR Filter

The cascaded structure is called the interpolated finite impulse response (IFIR) filter, as the missing impulse response samples of the periodic filter section are being interpolated by the filter section I(z), called the interpolator

As the filter F(z) determines approximately the shape of the amplitude response of the IFIR filter, it is called a shaping filter

§10.6.2 Interpolated FIR Filter Design Steps – IFIR specifications: passband edge ωp, stopb

and edge ωs, passband rippleδp, stopband ripple δs

Shaping filter specifications:

passband edge

stopband edge

passband ripple

stopband ripple

pF

p L )(

sF

s L )(

2/)(p

Fp

sF

s )(

§10.6.2 Interpolated FIR Filter The interpolator I(z) has to be designed to pr

eserve the passband of F(zL) in the frequency range [0, ωp] and mask the amplitude response of F(zL) in the frequency range [ωs ,π] , where the periodic subfilter has unwanted passbands and transition bands

This latter region is defined by

2/

1

),2

min(,2L

kss L

kL

kR

§10.6.2 Interpolated FIR Filter

The transition band of the interpolator is the frequency range [ωp , 2π/L-ωs]

Figure below shows the responses of HIFIR(z) and I(z)

§10.6.2 Interpolated FIR Filter Summarinzing, the design specifications for

F(z) and I(z) are as follows:

RI

ILF

LF

Is

Is

pI

pI

p

sF

sF

s

pF

pF

p

for)(

],0[for1)(1],[for)(

],0[for1)(1

)()(

)()(

)()(

)()(

The two linear-phase FIR filters F(z) and I(z) can be designed using the Parks- McClellan method

§10.6.2 Interpolated FIR Filter Example – Filter specifications are as follow

s: ωp=0.15π, ωs=0.2π, δp=0.002, δs=0.001 It follows from the figure in Slide 101 that to

ensure no overlaps between adjacent passbands of F(zL), we should choose L to satisfy the condition

LL

Fs

Fs

)()( 2

§10.6.2 Interpolated FIR Filter

For our example, this reduces to

0.2π< 2π/L- 0.2π Hence, the largest value of L that can be us

ed is L=4, yielding an IFIR structure requiring the least number of multipliers

As a result, the specifications for F(z) and I(z) are as given in the next slide

§10.6.2 Interpolated FIR Filter

The filter orders of F(z) and I(z) obtained using remezord are: Order of F(z)=32 Order of I(z)=43

001.0,001.0

8.0,6.0)()(

)()(

Fs

Fp

Fs

Fp

F(z):

001.0,001.0

3.0,15.0)()(

)()(

Is

Ip

Is

Ip

I(z):

§10.6.2 Interpolated FIR Filter

It can be shown that the filters F(z) and I(z) designed using remez with the above orders do not lead to an IFIR design meeting the minimum stopband attenuation of 60 dB

To meet the stopband specifications, the orders of F(z) and I(z) need to be increased to 33 and 46, respectively

§10.6.2 Interpolated FIR Filter The pertinent gain responses of the redesign

ed IFIR filter are shown below:

172/)133( FR

The number of multipliers needed to implement F(z) and hence, F(z4) is

§10.6.2 Interpolated FIR Filter The number of multipliers needed to implem

ent I(z) is:

242/)146( IR

412417 IFIRR

622/)1122(

The number of multipliers needed to implement the direct single-stage implementation of the FIR filter is

As a result, the total number of multipliers needed to implement HIFIR(z) is

§10.6.3 Frequency-Response Masking Approach

This approach makes use of the relation between a periodic filter H(z)=F(zL) generated from a Type 1 linear-phase FIR filter of even degree N and its delay- complementary filter G(z) given by

)()()( 2/2/ LNN zFzzHzzG

The amplitude responses of F(z), its delay- complentary filter E(z), the periodic filter H(z) and its delay-complentary filter G(z) are shown in the next slide

§10.6.3 Frequency-Response Masking Approach

§10.6.3 Frequency-Response Masking Approach

By selectively masking out the unwanted pasbands of both H(z) and G(z) by cascading each with appropriate masking filters I1(z) and I2(z), respectively, and connecting the resulting cascades in prallel, we can design a large class of FIR filters with sharper transition bands

The overall structure is then realized as indicated in the next slide

§10.6.3 Frequency-Response Masking Approach

Note: The delay block z-NL/2 can be realized by tapping the FIR structure implementing F(zL)

Also, I1(z) and I2(z) can share the same delay-chain if they are realized using the transposed direct form structure

F(zL) I1(z)

z-LN/2 I2 (z)

§10.6.3 Frequency-Response Masking Approach

The transfer function of the overall structure is given by

)()]([)()()()()()()(

22/

1

21

zIzFzzIzFzIzGzIzHzH

LNLLFM

)()](1[)()()( 21 ILFILFHFM

The corresponding amplitude response is

§10.6.3 Frequency-Response Masking Approach

The overall computational complexity is given by the complexities of F(z), I1(z) and I2(z)

All these three filters have wide transition bands and, in general, require considerably fewer multipliers and adders than that required in a direct design of the

§10.6.3 Frequency-Response Masking Approach

Design Objective – Given the specifications of HFM(z) , determine the specifications of F(z), I1(z) and I2(z) design these 3 filters

Design method – Illustrated for lowpass filter design

Two different situations may arise depending on how the transition band of HFM(z) is created

§10.6.3 Frequency-Response Masking Approach

Case A – Transition band of HFM(z) is from one of the transition bands of H(z)

§10.6.3 Frequency-Response Masking Approach

Bandedges of HFM(z) are related to the bandedges of F(z) as follows:

10,2

,2

)()(

LLL

Fp

s

Fs

p

§10.6.3 Frequency-Response Masking Approach

Case B – Transition band of HFM(z) is from one of the transition bands of G(z)

§10.6.3 Frequency-Response Masking Approach

Bandedges of HFM(z) are related to the bandedges of F(z) as follows:

LL

Fp

s

Fp

p

)()( 2,

2

Example – Specifications for a lowpass filter:ωp=0.4π, ωs=0.402π, δp=0.01 and δs=0.0001

§10.6.3 Frequency-Response Masking Approach

For designing HFM(z) the optimum value of L is in the range

By calculating the total number of multipliers needed to realize F(z), I1(z) and I2(z) for all possible values of L, we arrive at the realization requiring the least number of multipliers obtained for L =16 is 229 which is about 15% of that required in a direct single-stage realization

§10.6.3 Frequency-Response Masking Approach

The gain response of the designed filter is shown below: