-
Home
- Ece 320 - spring 2003
- Required labs
- Lab 5
- Lab 5: prelab
Many extremely efficient structures for IIR filter
implementations exist. Two of special note are thefollowing:
- All-pass filter implementations with
multiplies for an order
filter (instead of
multiplies for a cascade
realization). These are structurally all-pass, meaningthat they remain all-pass even when their coefficients are
quantized. (S. Mitra, Digital Signal Processing,a Computer Based Approach, 2nd Ed., pp. 378-382).
- Parallel all-pass Realization of IIR transfer functions
with
multiplies for an
'th order
filter. (S. Mitra, Digital Signal Processing, a ComputerBased Approach, 2nd Ed., pp. 401-405, and Sec. 9.9,
pp. 629-633).
Questions
- Generate an elliptic LPF using the command:
[b,a]=ellip(4,.5,10,.1);
Using MATLAB commands, generate a cascaded second-order
system implementation and a lattice implementation (don'tworry about normalization if you don't want) of this
system and compare their advantages and disadvantages -especially as they relate to implementation on the C5400.
- How close to the unit circle are the poles of the system
from question 1? Does this concern you? Explore how muchthe poles moved in the 2 implementations of part 1.
- Use the
grpdelay
command to view the
group delay for the filter in the passband. Is itapproximately linear?
- Why does minimizing the $L$-norm equate to minimizing the
-norm
maximum error over a given frequency range?
Simulation
Simulate the IIR system in MATLAB. Compute the response of
the system with appropriate test inputs. Make sure toinclude side-effects due to finite precision in your
simulation.
Multi-rate/multi-stage
Reading exercise
Read through the following resources:
- "Optimum FIR Digital Filter Implementations for
Decimation, Interpolation, and Narrow-Band Filtering," byCrochiere and Rabiner. This is colloquial paper on the
topic of multi-stage filter implementation. The paper isavailable
here .
- Course notes on multi-stage filter implementation by
Prof. Mark
Fowler from Binghamton University. The notes are
available
here .
Design exercises
Given the filter specification given in the
filter specification ,
answer the following questions:
- What is the maximum decimation factor that can be used?
- What is the average number of MACs per input sample
that are required for a single stageimplementation?
- What are the appropriate decimation and
interpolation factors for a a two stageimplementation?
- What are the appropriate pass-band and stop-band
frequencies and maximum ripple for the overall filter ateach stage? Your answer will demonstrate that the use of
multiple filter stages along with multi-rate signalprocessing can achieve a overall filter of lower order
than just a single stage filter.
- Estimate the filter order for each stage. We
recommend using the MATLAB command
remezord
. This algorithm frequently
underestimates the filter order needed, but gives you agood starting point. Verify that the filter
specifications are met, i.e. pass-band and stop-bandripple and pass-band and stop-band band edge locations.
Do this by passing the arguments returned by
remezord
to the MATLAB command
remez
. Observe the frequency
response of the system described by the filtercoefficients returned by \texttt{remez} using the MATLAB
command
freqz
. If the specifications
are not met, increase the order of the filter until thespecifications are met.
- Determine the average number of MACs per sample for
the two-stage implementation. Which is more efficient,the single stage approach or the multistage
approach?
Source:
OpenStax, Ece 320 - spring 2003. OpenStax CNX. Jan 22, 2004 Download for free at http://cnx.org/content/col10096/1.2
Google Play and the Google Play logo are trademarks of Google Inc.