Nine digital filters for decimation and interpolation

Filtering is necessary in decimation (decreasing the sampling rate of) or interpolation (increasing the sampling rate of a digital signal. If the rate change is substantial, the process is more efficient when the decimation or interpolation occurs in stages rather than in one step. Half-band filters are particularly efficient for effecting octave changes in sampling rate and nine digital filters are presented, eight of them half-band filters, to be used as components of multistage interpolators and decimators. Also presented is a procedure for combining the filters to produce multistage designs that meet a very wide range of accuracy requirements (stopband attenuation to 77 dB, passband ripple as low as 0.00014). The nine filters admit changes between sampling rates above 4W, where W is the nominal bandwidth of the signal. Established design techniques may be used to obtain efficient filters for conversion between 4W Hz sampling and 2W Hz, the "baseband sampling rate." With these multistage filters, the possible interpolation and decimation ratios are all integer multiples of powers of two. To overcome this restriction we present a simple resampling technique that extends the range of designs to conversions between any two rates. The interpolation or decimation ratio need not be an integer or even rational. In fact, it can vary slightly as in a practical situation where the input signal and output signal are under the control of autonomous clocks. We demonstrate the approach by means of several design examples and compare its results with those obtained from the optimization scheme of Crochiere and Rabiner.