Page 230 - Anatomy of a Robot
P. 230
08_200256_CH08/Bergren 4/10/03 4:39 PM Page 215
DIGITAL SIGNAL PROCESSING (DSP) 215
math behind the Blackman window is shown at http://mathworld.wolfram.com/
BlackmanFunction.html. More windows are shown at these sites:
http://astronomy.swin.edu.au/ pbourke/analysis/windows/
http://mathworld.wolfram.com/ApodizationFunction.html
www.filter-solutions.com/FIR.html#asinxx
Among the web sites dedicated to filtering, the FIR Filter Design by Windowing site
has a nice user interface where you can see the results of an FIR filter design
(http://web.mit.edu/6.555/www/fir.html). It was used to make this chapter’s figures. To
use the tool, change the parameters, reselect the window type on the top pulldown list
to recompute the coefficients, and redisplay the results.
In playing with this utility, I suggest altering just one parameter at a time. Try run-
ning a few other experiments as well. Notice how increasing the number of taps makes
the filter rolloff sharper. Also notice that the ripple in the filter is largely unaffected by
having more taps.
Physical Implementation of DSP Filters
As we mentioned before, all the DSP techniques we’ve mentioned so far are mathe-
matical in nature.
FIR FILTERS
The physical implementation of antialiasing and dithering circuits notwithstanding, the
structure of a FIR filter is theoretical: a series of registers, coefficients, and adders that
form an arithmetic output. The DSP calculations can be performed in hardware or soft-
ware. In most cases, the calculations could be done either way.
Software
Those of us who build hardware for a living can relate to feelings of frustration when
it comes to DSP software. Somehow DSP programmers feel the DSP answers just float
out of the air, computations unsullied by the presence of hardware or electrons. The
truth is, DSP computers are very much hardcore hardware, specially designed for DSP
calculations. We’ve discussed DSP computers previously in the book, so I won’t go into
the structure. The DSP chips are specially designed to be efficient at handling the types
of calculations that are required for FIR filters. Specific logical structures within the