Other meanings of Infinite impulse response
Digital signal processing
Infinite impulse response denotes a digital filter whose impulse response theoretically continues indefinitely because its output depends on earlier outputs as well as present and past inputs.1 Feedback gives these filters compact implementations and sharp frequency selectivity, but also introduces stability, quantization, and phase considerations.
An infinite impulse response filter is a recursive digital filter whose impulse response theoretically continues indefinitely. For a causal linear time-invariant filter, a common representation is y[n] = −Σaky[n−k] + Σbkx[n−k]: delayed input samples are combined with delayed output samples, and the feedback terms can keep contributing after the input impulse has ended.1
Its transfer function is expressed in the z-transform domain as a ratio of polynomials in z−1. The denominator introduces poles, while the numerator introduces zeros. A causal filter is stable when its poles lie strictly inside the unit circle; poles close to that circle produce long decay and narrow transitions, whereas poles outside it produce growing output. A finite impulse response filter, by contrast, has no recursive feedback and reaches zero after a finite number of samples.
IIR filters are commonly designed by transforming established analog prototypes or by placing digital poles and zeros to meet a frequency specification. The bilinear transform maps an analog transfer function into the digital domain while preserving stability, though it warps the frequency axis and therefore normally requires prewarping.2
Standard families include Butterworth filters, which have a maximally flat passband; Chebyshev type I and II filters, which trade passband or stopband ripple for steeper transitions; and elliptic filters, which permit ripple in both bands for still sharper selectivity.3 Bessel designs are chosen when time-domain waveform shape and group-delay behavior matter more than transition sharpness. The design order, cutoff frequencies, ripple limits, and sampling frequency determine the resulting poles, zeros, and coefficients.
Implementation quality depends as much on numerical structure as on the mathematical design. High-order IIR filters are usually decomposed into cascaded first- and second-order sections, often called biquads, because direct high-order polynomial forms can magnify coefficient-rounding and finite-precision errors.4
Direct-form II transposed sections use relatively little state memory, but the state variables can still overflow or lose accuracy. Designers therefore choose section orderings and scaling carefully, especially in fixed-point hardware. Quantized coefficients move pole locations; a theoretically stable design can become poorly damped or unstable after quantization. Limit cycles are another edge case: rounding can sustain a small oscillation even when the external input is zero. Floating-point implementations reduce, but do not eliminate, these effects. Embedded libraries provide optimized biquad forms for real-time processors.5
IIR filtering has several less visible trade-offs beyond its small coefficient count. A causal IIR filter generally has nonlinear phase, so different frequency components can experience different delays; forward-backward offline filtering can cancel phase distortion, but it is noncausal and cannot operate in ordinary real time.6
The word “infinite” describes the ideal mathematical response, not necessarily an observable endless signal: a stable response decays toward zero and is eventually hidden by numerical precision or noise. An unstable or marginally stable pole can instead prevent decay. Filters may also be implemented in lattice, coupled-form, or state-space structures rather than familiar direct forms. Historically, analog prototype methods made IIR design practical, while modern software commonly converts specifications directly into second-order sections. These filters remain useful where low computational cost and steep magnitude transitions outweigh phase-linear behavior.
IIR denotes the ideal discrete-time system response; finite word length, startup conditions, and implementation architecture determine what is observed in practice.
Help improve the encyclopedia. Reports go straight to the site manager.