Signals and Systems - Electrical Engineering

(avery) #1
11.5 FIR Filter Design 681

The remainingM−1 poles of this filter are at the origin of thez-plane, making the filter stable. The
zeros ofH(z)are complex numbers that make the numerator zero (i.e.,zM− 1 =0, orzk=ej^2 π/M,
fork=0,...,M−1). Whenk=0 the zero is 1, which cancels the pole at 1, so that

H(z)=

(z− 1 )

∏M− 1

k= 1 (z−e
j 2 π/M)
MzM−^1 (z− 1 )

=

∏M− 1

k= 1 (z−e
j 2 π/M)
MzM−^1
To convince yourself of the pole–zero cancellation letM=3, for which

H(z)=

1

3

z^3 − 1
z^2 (z− 1 )

=

1

3

(z^2 +z+ 1 )(z− 1 )
z^2 (z− 1 )

=

z^2 +z+ 1
3 z^2
showing the pole–zero cancellation.

Since the zeros of the filter are on the unit circle, the phase of this filter is not linear. Although the
filter is considered a low-pass filter, it is of very poor quality in terms of its magnitude response.
n

11.5.1 Window Design Method


The usual filter specifications of magnitude and linear phase can be translated into a time-domain
specification (i.e., a desired impulse response) by means of the discrete-time Fourier transform. In
this section, we will show how to design FIR filters using this specification with thewindow method.
You will see that this is a trial-and-error method, as there is no measure of how close the designed
filter is to the desired response, and that using different windows we obtain different results.

LetHd(ejω)be the desired frequency response of an ideal discrete low-pass filter. Assume that the
phase ofHd(ejω)is zero. The desired impulse response is given by the inverse discrete-time Fourier
transform

hd[n]=

1

2 π

∫π

−π

Hd(ejω)ejωndω (11.50)

which is noncausal and of infinite length. The filter

Hd(z)=

∑∞

n=−∞

hd[n]z−n (11.51)

is thus not an FIR filter. To obtain an FIR filter that approximatesHd(ejω)we need to window the
impulse responsehd[n] to get a finite length, and then delay the resulting windowed impulse response
to achieve causality.

For an odd integerN, define

hw[n]=hd[n]w[n]=

{

hd[n] −(N− 1 )/ 2 ≤n≤(N− 1 )/ 2
0 elsewhere
where w[n] is arectangular window,

w[n]=

{

1 −(N− 1 )/ 2 ≤n≤(N− 1 )/ 2
0 otherwise

(11.52)
Free download pdf