We have developed an algorithm based on synthetic division for deriving the transfer function that cancels the tail of a given arbitrary rational (IIR) transfer function after a desired number of time steps. Our method applies to transfer functions with repeated poles, whereas previous methods of tail-subtraction cannot. We use a parallel state-variable technique with periodic refreshing to induce finite memory in order to prevent accumulation of quantization error in cases where the given transfer function has unstable modes. We present two methods for designing linear-phase truncated IIR (TIIR) filters based on antiphase filters. We explore finite-register effects for unstable modes and provide bounds on the maximum TIIR filter length. In particular, we show that for unstable systems, the available dynamic range of the registers must be three times that of the data. Considerable computational savings over conventional FIR filters are attainable for a given specification of linear-phase filter. We provide examples of filter design. We show how to generate finite-length polynomial impulse responses using TIIR filters. We list some applications of TIIR filters, including uses in digital audio and an algorithm for efficiently implementing Kay's optimal high-resolution frequency estimator.
展开▼