Electronics Guide

IIR Filter Structures

Infinite impulse response (IIR) filters achieve their frequency-selective properties through feedback, where output samples depend not only on current and past inputs but also on previous output values. This recursive nature enables IIR filters to achieve sharp frequency transitions and efficient implementations with far fewer coefficients than equivalent FIR designs. However, the feedback mechanism introduces fundamental challenges in stability, coefficient sensitivity, and finite-precision effects that make the choice of implementation structure critically important.

The mathematical description of an IIR filter as a ratio of polynomials in z admits numerous equivalent realizations, each with distinct properties regarding computational efficiency, memory requirements, numerical behavior, and sensitivity to coefficient quantization. While all structures implementing the same transfer function produce identical outputs when computed with infinite precision, their behavior diverges significantly when implemented with the finite-precision arithmetic of real digital systems.

Understanding the various IIR filter structures enables engineers to select implementations that minimize coefficient sensitivity, maintain stability margins, optimize computational resources, and achieve robust performance across the range of conditions encountered in practical applications. From the straightforward direct forms to sophisticated lattice and wave digital structures, each approach offers specific advantages suited to different implementation contexts.

Fundamentals of IIR Filter Implementation

An IIR filter is characterized by its transfer function H(z), expressed as the ratio of two polynomials in the complex variable z. The numerator polynomial determines the zeros of the transfer function, while the denominator polynomial determines the poles. The presence of poles away from the origin, corresponding to the feedback paths in the filter implementation, distinguishes IIR filters from their non-recursive FIR counterparts and is responsible for both their efficiency and their stability concerns.

The transfer function is the ratio H(z) = B(z)/A(z) of a feedforward polynomial B(z), with coefficients b0 through bM, to a feedback polynomial A(z), with coefficients a0 through aN. By convention a0 is normalized to unity, which gives

H(z) = (b0 + b1z−1 + … + bMz−M) / (1 + a1z−1 + … + aNz−N)

Because z−1 represents a delay of one sample, the transfer function corresponds directly to the difference equation

y[n] = ∑k=0M bkx[n − k] − ∑k=1N aky[n − k]

which computes each output sample from the current input, the M previous inputs, and the N previous outputs. The minus sign on the feedback terms follows from writing the denominator with plus signs. Some texts write it as 1 − ∑ akz−k instead, so a set of feedback coefficients must always be read with the sign convention of the tool that produced it.

Stability of a causal IIR filter requires that all poles of the transfer function lie strictly inside the unit circle in the z-plane. A pole outside the circle makes the impulse response grow without bound, and a simple pole on the circle leaves it undamped, so that a bounded input at that pole's frequency drives the output without limit. In a practical implementation an unbounded output ends in overflow. While a properly designed filter satisfies this stability criterion, coefficient quantization during implementation can shift pole positions, potentially moving them outside the stable region. Different filter structures exhibit varying sensitivity to this quantization-induced pole movement.

The order of an IIR filter, typically defined as the larger of M and N, determines the complexity of the frequency response that can be achieved and directly impacts the number of multiplications, additions, and delay elements required for implementation. Higher-order filters enable sharper transitions and greater stopband attenuation but demand more computational resources and exhibit greater sensitivity to finite-precision effects.

Direct Form I

Direct Form I represents the most straightforward translation of the difference equation into a filter structure. This form implements the numerator and denominator polynomials as separate sections, first computing the output of the feedforward (FIR) section and then passing this intermediate result through the feedback (recursive) section. The structure requires separate delay lines for input and output samples, resulting in a total of M + N delay elements for a numerator of order M and a denominator of order N.

The feedforward section uses M + 1 multipliers and M delay elements, and the feedback section adds N multipliers and N delays, so the structure performs M + N + 1 multiplications per output sample. The clear separation between feedforward and feedback sections makes this structure conceptually straightforward, and its coefficients appear exactly as they do in the difference equation.

Direct Form I has a significant advantage in fixed-point implementations. Its delay lines hold only input and output samples, which stay within the range of the number format whenever the output itself does, so no internal state can overflow. Every product meets at a single summing node, so a processor can accumulate all M + N + 1 products in one double-length accumulator and round only once, when the result is stored. With two's complement arithmetic an intermediate sum in that accumulator may even overflow and wrap harmlessly, provided the final sum lies within range. Arm's CMSIS-DSP library, for example, implements its Q15 and Q31 fixed-point biquad cascades in Direct Form I, and the standard versions of both accumulate in a 64-bit register.

However, Direct Form I uses M + N delay elements where only max(M, N) are required. Direct Form II removes this redundancy by sharing a single delay line. For high-order filters the comparison matters little, because no direct form suits them well, as the section on cascade form explains. Direct Form I is widely used instead as the structure inside each second-order section of a fixed-point cascade, where its two extra delay elements per section cost little.

Direct Form II

Direct Form II achieves a more efficient realization by recognizing that the delay elements in the feedforward and feedback sections of Direct Form I process the same effective signal and can therefore be shared. By reversing the order of the numerator and denominator sections and combining their delay lines, Direct Form II implements the same transfer function using only max(M, N) delay elements, the minimum possible for a filter of that order.

In Direct Form II, the input first passes through the feedback section, which produces an internal signal w[n] that feeds the shared delay line. The feedforward section then forms the output from the same stored values:

w[n] = x[n] − ∑k=1N akw[n − k]

y[n] = ∑k=0M bkw[n − k]

Each stored value w[n − k] therefore contributes both to the feedback combination and to the output.

The memory saving comes at a significant cost in fixed-point implementations. The internal signal w[n] is the input filtered by the poles alone, 1/A(z), before the zeros have had any chance to attenuate it. In a narrowband design, or one whose cutoff is a small fraction of the sample rate, the poles by themselves can have a gain of tens of decibels or more, so w[n] may overflow even when both the input and the output remain well within range. Scaling the input down far enough to prevent this sacrifices signal-to-noise ratio. This overflow sensitivity makes unmodified Direct Form II a poor choice for most fixed-point applications.

The designation canonical form, sometimes applied to Direct Form II, reflects its use of the minimum number of delay elements. Floating-point systems, whose wide dynamic range removes the overflow concern, can use Direct Form II, although the large internal signal still costs precision when the feedforward sum cancels it back down to a small output. For that reason floating-point implementations more often use the transposed form described next.

Transposed Direct Forms

Transposed structures arise from applying the transposition theorem to direct form implementations. This theorem states that reversing the direction of every branch, interchanging branch points and summing nodes, and exchanging the input and output produces a structure with identical input-output behavior. The resulting transposed forms offer different computational and numerical properties that prove advantageous in certain applications.

Transposing Direct Form II gives Transposed Direct Form II. The input fans out to all the feedforward multipliers and the output to all the feedback multipliers at once, and the products are injected into a chain of adders interleaved with the delay registers, each of which holds a partial sum that will be completed at a later sample. For a second-order filter the computation is

y[n] = b0x[n] + s1[n − 1]

s1[n] = b1x[n] − a1y[n] + s2[n − 1]

s2[n] = b2x[n] − a2y[n]

where s1 and s2 are the two state registers. Only the product b0x[n] reaches the current output directly; every other product enters a register and contributes to later outputs. Like its parent, the structure uses max(M, N) delay elements. Transposing Direct Form I in the same way gives Transposed Direct Form I, which places the feedback section first and keeps M + N registers.

Transposed Direct Form II is widely favored for floating-point implementation. In effect its zeros act before its poles, so its states hold combinations of input and output samples rather than the high-gain output of the poles alone. In a sharp filter, whose poles and zeros nearly cancel close to the unit circle, this avoids the precision that Direct Form II loses when a large internal signal is cancelled back down to a small output. SciPy's lfilter function, for example, is implemented as a transposed Direct Form II structure. The partial sums in the registers can still span a wide range of values, however, and Arm's CMSIS-DSP library offers its transposed Direct Form II biquad cascade only in floating point for that reason.

In hardware, transposition shortens the critical path of the feedforward computation, as it does for an FIR filter: because a register separates each adder from the next, no long chain of adders must settle within one sample period. The feedback loop sets a limit that no rearrangement removes, however. Each output must be multiplied by the feedback coefficients and added back before the next output can be computed, so the delay of the multiplications and additions around the loop bounds the sample rate, and pipeline registers cannot simply be inserted into the loop without changing the transfer function. Designs that need higher rates use look-ahead transformations, which rewrite the recursion so that each output depends only on outputs several samples old, freeing room for pipeline stages at the cost of extra poles cancelled by matching zeros.

Cascade Form

Cascade form, also known as series form, implements a high-order IIR filter as a sequence of lower-order sections connected in series. By factoring the transfer function into first-order and second-order components, the cascade structure achieves dramatically improved numerical properties compared to direct form implementations of equivalent high-order filters. This approach has become the dominant implementation strategy for IIR filters beyond the lowest orders.

The factorization process groups the poles and zeros of the transfer function into conjugate pairs, which combine to form real-coefficient second-order sections called biquads. First-order sections handle any remaining real poles or zeros. Each second-order section, with its own set of coefficients, implements a transfer function of the form

Hi(z) = (b0 + b1z−1 + b2z−2) / (1 + a1z−1 + a2z−2)

requiring only five coefficients per section, and a cascade of K sections realizes the product H(z) = H1(z)H2(z) … HK(z).

The coefficient sensitivity of cascade form proves far superior to direct forms for high-order filters. In a direct form implementation, small perturbations in any single coefficient can shift all poles and zeros of the transfer function, potentially causing large changes in the frequency response or even instability. In cascade form, each coefficient only affects the poles or zeros of its own second-order section, localizing the impact of quantization errors.

Each section's coefficients also make its stability easy to check. A pair of complex-conjugate poles at radius r and angle θ gives the denominator coefficients a1 = −2r cos θ and a2 = r2, so the pole radius is simply √a2. More generally, a second-order section is stable exactly when |a2| < 1 and |a1| < 1 + a2, a triangle in the plane of the two coefficients, and a designer can confirm after quantization that every section still lies inside it.

Pole-zero pairing and section ordering affect signal scaling and dynamic range. The usual pairing rule matches the poles closest to the unit circle with the zeros closest to them, then works outward, so that each section's zeros partly offset the resonant peak of its own poles and its peak gain stays low. Ordering then determines how signal level and roundoff noise build up along the chain, a trade-off described under the implementation guidelines below.

The independence of sections in cascade form also facilitates design modifications and debugging. Individual sections can be adjusted, replaced, or bypassed without affecting others. This modularity proves valuable during development and in adaptive systems where filter characteristics must change during operation.

Parallel Form

Parallel form decomposes the transfer function using partial fraction expansion, implementing the filter as a sum of lower-order sections operating in parallel. Each section processes the input independently, and their outputs sum to produce the final result. This structure offers advantages for certain applications, particularly when the individual resonances of a filter must be adjusted or observed separately.

The partial fraction expansion expresses the transfer function as a sum of terms, each associated with a real pole or a complex-conjugate pole pair of the original transfer function. First-order sections handle real poles, while second-order sections handle complex-conjugate pole pairs. When M ≥ N, polynomial division first removes a direct term: a constant when M = N, or an FIR polynomial of order M − N when M > N.

Each second-order section in a parallel realization has a first-order numerator over a second-order denominator, (c0 + c1z−1)/(1 + a1z−1 + a2z−2). It therefore places one zero freely, with its other zero fixed at the origin, where a cascade biquad places two. Each section needs four multiplications instead of five, although summing the section outputs adds work that the simple chaining of a cascade avoids. Which form is cheaper overall depends on the filter order and the implementation platform.

Because each term of the expansion belongs to one resonance, the parallel form suits applications that adjust or monitor resonances individually. Parallel banks of second-order resonators are used in modal synthesis of musical instruments and rooms, and parallel second-order sections have been used in audio equalizers, each section shaping the response around one pole frequency. The sections are not separate bandpass filters, however: their responses overlap, and the overall response, including its zeros, emerges only from their sum.

The numerical behavior of the parallel form differs from that of the cascade in two ways. Its poles are as robust as a cascade's, since each section's denominator coefficients set only that section's poles, and its roundoff noise is easy to predict, because the noise each section generates reaches the output through that section alone rather than through every section downstream. Its zeros are another matter. No single section realizes them; they emerge from the sum of all the section outputs, so they depend on every numerator coefficient at once and are more sensitive to quantization than the zeros of a cascade. Filters whose stopband attenuation depends on precisely placed zeros, such as elliptic designs, therefore generally hold their deep stopband nulls more reliably in cascade form.

Lattice Structures

Lattice structures represent an alternative approach to IIR filter implementation based on reflection coefficients rather than direct polynomial coefficients. Closely tied to linear prediction and to the acoustic-tube model of the vocal tract, lattice filters offer robust numerical properties that make them particularly valuable for adaptive filtering and for applications where coefficient stability is paramount.

The fundamental building block of a lattice structure is the two-multiplier lattice section, characterized by a single reflection coefficient k. Within each section, the forward and backward signal paths are cross-coupled through a pair of multiplications by k, with a unit delay inserted in the backward path. Cascading these simple sections generates increasingly complex transfer functions as the order increases, and the reflection coefficients relate to the direct-form denominator coefficients through the step-up and step-down recursions that form the polynomial core of the Levinson-Durbin algorithm.

A remarkable property of lattice structures is the direct relationship between reflection coefficients and filter stability. An all-pole lattice, which realizes 1/A(z), is stable if and only if every reflection coefficient satisfies |ki| < 1, and the same holds for the lattice-ladder structure described below, whose ladder coefficients shape only the zeros. The condition can be checked by inspection, whereas a direct-form denominator must be factored or put through a stability test such as the Schur-Cohn test, whose step-down recursion computes those same reflection coefficients. For adaptive filters whose coefficients change during operation, this stability guarantee proves invaluable.

Lattice structures are noted for low coefficient sensitivity: small changes in the reflection coefficients produce only small changes in the frequency response, and a quantized coefficient that remains within the range −1 < ki < 1 cannot make the filter unstable. A normalized form of the lattice, which spends four multiplications per stage, also keeps its internal signal levels balanced without separate scaling. The price of these properties is arithmetic. A two-multiplier lattice-ladder filter of order N needs 3N + 1 multiplications per output sample, 2N in the lattice and N + 1 in the ladder, against 5N/2 for a cascade of N/2 biquads: 25 against 20 for an eighth-order filter. Lattice filters are therefore chosen where coefficient adaptation or very short coefficient wordlengths make their robustness worth the extra computation.

Lattice structures for general IIR filters, called lattice-ladder structures, incorporate ladder coefficients in addition to reflection coefficients to implement arbitrary transfer function zeros. The ladder section taps off weighted versions of the lattice's backward signals and sums them to form the filter output. The combined lattice-ladder structure maintains the desirable stability properties of the pure lattice while enabling realization of general IIR transfer functions.

Wave Digital Filters

Wave digital filters (WDFs) apply principles from classical network theory and transmission line analysis to digital filter design. By modeling filter structures on wave variables rather than on voltage and current, WDFs inherit the robustness of passive analog networks: stability that survives coefficient quantization, and low sensitivity to coefficient variations. The approach, developed by Alfred Fettweis beginning in the early 1970s, bridges analog filter heritage with the advantages of digital implementation.

The fundamental concept underlying wave digital filters is the representation of signals as incident and reflected wave components, analogous to waves propagating on transmission lines. Adaptors, the building blocks of WDFs, model the junctions where transmission lines connect, implementing the scattering relationships that govern wave reflection and transmission at impedance discontinuities.

Wave digital filters are constructed by translating classical analog filter topologies, such as doubly terminated ladder networks, into their wave-variable equivalents. Each analog element and interconnection corresponds to a digital component or adaptor: through the bilinear transform a capacitor becomes a unit delay, an inductor a unit delay with a sign inversion, and a matched resistor an absorbing termination. The digital structure thus inherits the thoroughly understood properties of its analog prototype.

The low sensitivity follows from a property of doubly terminated lossless ladders identified by H. J. Orchard: at each passband frequency where the network transfers maximum power from source to load, the attenuation has zero first-order sensitivity to every element value. A wave digital filter that simulates such a ladder inherits this property for its own coefficients, so a coarsely quantized WDF can hold a tight passband specification.

The passivity of the reference network carries over to the digital structure. As long as each quantized adaptor coefficient stays within its valid range, the structure remains passive and therefore stable, and with suitable quantization of the products, such as magnitude truncation, together with saturation on overflow, a wave digital filter can be made free of both zero-input limit cycles and overflow oscillations. This robustness exceeds what standard direct form or even cascade implementations can guarantee.

Wave digital filters also suit applications that model physical systems, where the wave variables correspond to physical quantities. Virtual-analog modeling of audio circuits such as guitar amplifiers and effects pedals, and physical modeling of musical instruments, use the WDF framework for its physical meaningfulness and numerical robustness.

State-Space Realizations

State-space representations provide a general framework for implementing IIR filters using matrix operations on a state vector. Rather than expressing the filter as a ratio of polynomials, state-space form describes the filter through matrices relating inputs, outputs, and internal states. This formulation offers flexibility in structural optimization and connects digital filter implementation to the rich theory of linear systems.

A state-space realization consists of four matrices: A (state transition), B (input), C (output), and D (feedthrough). With s[n] denoting the state vector, the realization computes

s[n + 1] = A s[n] + B x[n]

y[n] = C s[n] + D x[n]

The state update equation computes the next state vector as a linear combination of the current state and input, while the output equation combines the current state with the input to produce the filter output. For a single-input, single-output filter of order N, A is an N × N matrix, B a column of N entries, C a row of N entries, and D a scalar, so a fully populated realization needs (N + 1)2 multiplications per output sample, against at most 2N + 1 for a direct form.

Multiple state-space realizations can implement the same transfer function, since any invertible change of state coordinates leaves the transfer function unchanged. Minimal realizations achieve the lowest possible state dimension, equal to the filter order. Balanced realizations choose coordinates in which the controllability and observability Gramians are equal and diagonal, so that each state is as strongly excited by the input as it is visible at the output. Minimum-roundoff-noise realizations choose the coordinates that minimize output noise under energy scaling, at the cost of a fully populated matrix; applying the same optimization to each second-order section of a cascade retains much of the benefit at nine multiplications per section.

Normal-form realizations deserve particular attention. A state matrix is normal when it commutes with its transpose, and a normal matrix whose eigenvalues all lie inside the unit circle is a strict contraction: with zero input, the length of the state vector shrinks at every step. If the products are quantized by magnitude truncation, which never increases a magnitude, the state cannot sustain a zero-input limit cycle, and with saturation arithmetic the structure is also free of overflow oscillations. For a pole pair at radius r and angle θ, the second-order normal form, also called the coupled form, uses the real and imaginary parts of the pole, r cos θ and r sin θ, as its coefficients. Quantizing them places the realizable poles on a uniform rectangular grid, avoiding the sparse grid a direct-form section has near z = 1 and z = −1, at the cost of four multiplications in the feedback loop instead of two.

State-space methods prove particularly valuable for multi-input, multi-output (MIMO) systems where matrix formulations naturally accommodate multiple signal paths. The theoretical tools developed for state-space systems, including controllability, observability, and stability analysis, provide insights applicable to filter implementation that may not be apparent from transfer function analysis alone.

Stability Considerations

Stability represents the paramount concern in IIR filter implementation, as the recursive nature of these filters means that instability leads to unbounded output growth and system failure. While filter design ensures that the ideal filter is stable, implementation introduces perturbations that can push the realized filter into instability. Understanding and mitigating these stability risks is essential for successful IIR filter deployment.

The fundamental stability criterion for an IIR filter requires all poles of the transfer function to lie strictly inside the unit circle in the z-plane. A simple pole exactly on the unit circle gives an impulse response that neither grows nor decays, a sustained oscillation or a constant, and the filter is only marginally stable, since a bounded input at that pole's frequency produces an unbounded output. Poles outside the unit circle cause exponentially growing outputs. The distance from the poles to the unit circle determines the stability margin and the system's tolerance for parameter variations.

Coefficient quantization, the inevitable result of representing ideal filter coefficients with finite-precision numbers, perturbs pole positions from their designed locations. High-order direct form implementations suffer most severely, as quantization of each coefficient affects all poles simultaneously. The sensitivity of each pole to a denominator coefficient is inversely proportional to the product of its distances from all the other poles, so the tightly clustered poles of a sharp, high-order filter are exactly the ones most easily displaced. The pole positions of a quantized high-order direct form filter may bear little resemblance to the original design, with stability potentially compromised.

Cascade and parallel forms limit the impact of coefficient quantization by confining each coefficient's influence to a single second-order section. Even if quantization shifts poles within a section, the effect on the overall filter remains localized. However, sections with poles near the unit circle still require careful attention, as small coefficient changes in these critical sections can still induce instability.

Limit cycles are a further stability concern peculiar to recursive filters implemented with finite precision. These sustained oscillations arise when the nonlinearity of quantization interacts with the filter's feedback to produce a pattern that neither grows nor decays. Granular, or zero-input, limit cycles keep a filter from settling to zero after its input stops, and similar oscillations can occur with a constant input. They are usually small, but their amplitude grows as the poles approach the unit circle: in a first-order section computing y[n] = Q[a y[n − 1]], where Q rounds to the nearest multiple of a step q, any value up to q/(2(1 − |a|)) can persist indefinitely, which is 50 quantization steps when a = 0.99. Overflow oscillations are far more severe. When a two's complement sum inside the loop wraps from a large positive value to a large negative one, the filter can lock into an oscillation that swings across the full range of the number format.

The standard remedies attack the two kinds separately. Saturation arithmetic removes the wraparound that drives overflow oscillations. Magnitude truncation or other controlled rounding, applied in structures such as the normal form and wave digital filters that can be shown to be free of zero-input limit cycles, eliminates granular limit cycles, and suitably chosen error feedback or dither can suppress them in other structures. A longer state wordlength shrinks any remaining granular limit cycle relative to the signal.

Finite-Precision Effects

The implementation of IIR filters with finite-precision arithmetic introduces multiple error sources that degrade filter performance relative to the ideal infinite-precision design. These effects, encompassing coefficient quantization, signal quantization, and computational roundoff, accumulate through the filter's recursive structure, making their management essential for achieving acceptable performance.

Coefficient quantization error arises when ideal filter coefficients are represented with limited precision. The impact depends on both the filter structure and the proximity of poles to the unit circle. Poles close to the unit circle, common in narrowband filters and in filters whose cutoff is a small fraction of the sample rate, require high coefficient precision to maintain their intended positions. A direct-form section makes matters worse at low frequencies. Because a2 = r2 and a1 = −2r cos θ, evenly spaced values of the two coefficients place the realizable poles on a grid that is dense near θ = 90 degrees and sparse near z = 1 and z = −1, and the region near z = 1 is exactly where the poles of a filter with a very low cutoff sit, such as an audio highpass filter set to a few tens of hertz. The coupled form's uniform grid, or a few extra coefficient bits, restores the lost resolution.

Signal quantization occurs at the filter input, at scaling points within the structure, and at the output. In fixed-point implementations, signals must be scaled to prevent overflow while maintaining adequate precision. The scaling strategy interacts with the filter structure to determine the signal-to-quantization-noise ratio throughout the filter. State-space analysis provides tools for optimizing this trade-off through structure selection and scaling factor determination.

Roundoff noise accumulation distinguishes IIR filters from their FIR counterparts. In an FIR filter, the quantization error from each multiplication reaches the output directly. In an IIR filter, errors injected inside the loop are filtered by the poles, so noise near each pole frequency is amplified, by an amount that grows as the pole approaches the unit circle. For a first-order section y[n] = a y[n − 1] + x[n] whose product is rounded to a step q, the error injected at each step has variance q2/12 and reaches the output with its power multiplied by ∑n=0∞ a2n = 1/(1 − a2), a factor of about 50, or 17 dB, when a = 0.99. The output noise floor therefore depends on the filter structure, the quantization strategy, and the pole positions.

Overflow behavior presents another consideration, particularly for fixed-point implementations. Saturation arithmetic, where overflowed values clip to the maximum representable magnitude, prevents overflow oscillations but introduces nonlinear distortion whenever it engages. Two's complement overflow, where extreme positive values wrap to negative and vice versa, can start a large-amplitude oscillation if a stored value in a feedback path wraps, although an intermediate sum inside a wide accumulator may wrap harmlessly if the final result is in range. Understanding the overflow characteristics of the target arithmetic informs both structure selection and scaling decisions.

Practical Implementation Guidelines

Successful implementation of IIR filters requires attention to multiple interacting factors, from initial structure selection through detailed arithmetic decisions. While no single approach suits all applications, established guidelines help navigate the trade-offs to achieve robust, efficient implementations.

For most applications, cascade form using second-order sections provides the best combination of numerical properties and implementation simplicity. The modularity of biquad sections facilitates design, testing, and debugging, and standard biquad implementations with well-understood behavior can be reused across projects. Use a direct form on its own only for first- and second-order filters, where it is the section itself. Within a cascade, Direct Form I is the usual choice for fixed-point sections and Transposed Direct Form II for floating-point ones.

Section ordering in cascade implementations trades overflow risk against roundoff noise, and the best order depends on which effect dominates. Placing the most resonant sections, those with poles nearest the unit circle, last in the chain generally minimizes the probability of overflow, particularly with infinity-norm (peak-gain) scaling, because a large resonant peak is not forced through the sections that follow; this ordering is the common default. Placing those sections first instead, with 2-norm (energy) scaling, tends to minimize the peak output roundoff noise, because the noise injected by the other sections then reaches the output without passing through a sharp resonance. MATLAB's zp2sos function documents exactly this pair of choices. Pairing each pole pair with its nearest zeros, starting from the poles closest to the unit circle, keeps the peak gain of individual sections low regardless of the ordering. Accumulate each section's products in a double-length accumulator even when the states are stored at single length, adding precision where the cost is lowest.

Consider lattice structures when coefficient sensitivity is paramount, particularly for adaptive filters or implementations with very limited coefficient precision. The guaranteed stability for valid reflection coefficients eliminates a major concern in coefficient-adaptive applications. The additional arithmetic of lattice implementations is offset by their robust numerical behavior in demanding applications.

Wave digital filters merit consideration when modeling physical systems or when the strong stability guarantees of passive structures are valuable. The connection to analog filter theory provides intuition and established design methodologies. Implementation complexity exceeds standard cascade forms but may be justified for specialized applications.

State-space realizations offer maximum flexibility for optimization but require sophisticated analysis to realize their potential benefits. Reserve fully populated realizations for applications where standard structures prove inadequate and where the engineering resources for detailed optimization are available; the coupled form and section-optimal state-space biquads bring much of the benefit into an ordinary cascade.

Summary

IIR filter structures span a range of approaches from straightforward direct forms to sophisticated wave digital and state-space realizations. Each structure offers distinct trade-offs among computational efficiency, memory requirements, coefficient sensitivity, and numerical robustness. Direct forms provide conceptual simplicity but suffer from poor scaling and stability properties at high orders, and serve best as the second-order sections of a cascade. Cascade and parallel forms decompose high-order filters into manageable sections with superior numerical behavior. Lattice structures offer a simple stability condition and low sensitivity at the cost of additional arithmetic. Wave digital filters bring the robustness of passive networks to digital implementation. State-space realizations provide maximum optimization flexibility within a unified theoretical framework.

The choice of IIR filter structure profoundly affects implementation success. While all structures realizing the same transfer function produce identical outputs with infinite precision arithmetic, their behavior diverges dramatically under the finite-precision constraints of practical implementation. Understanding the characteristics of each structure enables engineers to select approaches matched to their specific requirements, achieving efficient, stable, and accurate digital filter implementations.

Related Topics