In this two week laboratory exercise, you will implement a
filter to meet a given set of specifications. Unlike previous
labs, you will be graded on the basis of the efficiency of the
system that you implement on the DSP. There are two broad
ways in which you are to optimize your low-pass filter system:
- We have left the way in which you implement the
low-pass filter system completely open and you are free to
choose the method you think will be the most efficient. In
filtering techniques, we
describe three possibilities:
- use of an IIR filter
- overlap-and-add or overlap-and-save using the FFT to
perform fast convolution
- use of multi-rate and multiple filter stages to
lower the overall order of the filters required to meet
the specifications.
- Once you have decided on the overall system for your
filter implementation and have verified that it will meet
the given set of filter specifications through simulation,
there are many opportunities for optimization in the actual
code that you write for the DSP. You may want to use C in
your implementation, but consider the efficiency penalty
incurred from that choice. Use of the various parallel
instructions available on the DSP, e.g.
ld||mac and st||ld, may yield
greater efficiency. Of course, classical optimizations such
as loop-unrolling or the precomputation of data may improve
efficiency.
In this lab, you are required to do the following:
- Choose two techniques described in filtering techniques and answer the
prelab questions for those two techniques.
- Write a complete MATLAB simulation for one filtering
technique. You must demonstrate that your simulation meets
the filter specifications given in the filter specification.
- Implement the technique that you simulated on the DSP
and optimize the system to make it as efficient as possible.
You will be graded on the efficiency of your
implementation.
A detailed break-down of how you will be graded and the
various due-dates can be found in grading.