702 C H A P T E R 11: Introduction to the Design of Discrete Filters
11.3. FIR and IIR filters: symmetry of impulse response and linear phase—MATLAB
Consider two FIR filters with transfer functions
H 1 (z)=0.5+0.5z−^1 +2.2z−^2 +0.5z−^3 +0.5z−^4
H 2 (z)=−0.5−0.5z−^1 +0.5z−^3 +0.5z−^4
(a) Find the impulse responsesh 1 [n]andh 2 [n]corresponding toH 1 (z)andH 2 (z). Plot them carefully
and determine the sample value for which these impulse responses are even or odd.
(b) Show thatG(z)=z^2 H 1 (z)is zero phase, and from it determine the phase of the filterH 1 (z). Use
MATLAB to find the unwrapped phase ofH 1 (z)and confirm your analytic results.
(c) Find the phase ofH 2 (z)by finding the phase ofF(z)=z^2 H 2 (z). Use MATLAB to find the unwrapped
phase ofH 2 (z). Is it linear?
(d) IfH(z)is an IIR filter, according to the above arguments could it be possible for it to have linear phase?
Explain.
11.4. Effect of phase on filtering—MATLAB
Consider two filters with transfer functions
H 1 (z)=z−^100
H 2 (z)=
(
0.5
1 − 2 z−^1
1 −0.5z−^1
) 10
(a) Verify that the magnitude of these two filters is unity, but that they have different phases. Find
analytically the phase ofH 1 (z)and use MATLAB to find the unwrapped phase ofH 2 (z)and to plot it.
(b) Consider the MATLAB signal “handel.mat” (a short piece of the “Messiah” by composer George
Handel). Use the MATLAB functionfilterto filter it with the two given filters. Listen to the output and
plot them and compare them. What is the difference (look at first 200 samples of the outputs from the
two filters)?
(c) Can you recover the original signal by advancing either of the outputs? Explain.
11.5. Butterworth versus Chebyshev specifications
A Butterworth low-pass discrete filter of orderNhas been designed to satisfy the following specifications:
Sampling periodTs= 100 μsec
αmax=0.7dB for 0 ≤f≤fp= 1000 Hz
αmin= 10 dB forfst= 1200 ≤f≤fs/ 2 Hz
What should be the new value of the stopband frequencyfstso that anNth-order Chebyshev low-pass
filter satisfies the design specifications forTs,αmax,αmin, andfp.
11.6. Bilinear transformation and pole location—MATLAB
Find the poles of the discrete filter obtained by applying the bilinear transformation withK= 1 to an
analog second-order Butterworth low-pass filter. Determine the half-power frequencyωhpof the resulting
discrete filter. Use the MATLAB functionbilinearto verify your results.
11.7. Warping effect of the bilinear transformation—MATLAB
The nonlinear relation between the discrete frequencyω(rad) and the continuous frequency(rad/sec)
in the bilinear transformation causes warping in the high frequencies. To see this consider the following:
(a) Use MATLAB to design a Butterworth analog band-pass filter of orderN= 12 and with half-
power frequencies 1 = 10 and 2 = 20 (rad/sec). Use the MATLAB functionbilinearwithK= 1
to transform the resulting filter into a discrete filter. Plot the magnitude and the phase of the discrete
filter.