Digital biquad filter

From Wikipedia, the free encyclopedia

For the analog implementation of a biquad filter, check biquad filter.

In signal processing, a digital biquad filter is a second-order recursive linear filter, containing two poles and two zeros. "Biquad" is an abbreviation of "biquadratic", which refers to the fact that in the Z domain, its transfer function is the ratio of two quadratic functions:

\ H(z)=\frac{b_0+b_1z^{-1}+b_2z^{-2}} {1+a_1z^{-1}+a_2z^{-2} }

High-order recursive filters can be highly sensitive to quantization of their coefficients, and can easily become unstable. This is much less of a problem with first and second-order filters; therefore, higher-order filters are typically implemented as serially-cascaded biquad sections (and a first-order filter if necessary).

Contents

[edit] Implementation

[edit] Direct Form 1

The most straightforward implementation is the Direct Form 1, which has the following difference equation:

\ y(n) = b_0x(n) + b_1x(n-1) + b_2x(n-2) - a_1y(n-1) - a_2y(n-2)

Here the b0, b1 and b2 coefficients determine zeros, and a1, a2 determine the position of the poles.

Flow graph of biquad filter in Direct Form 1:

[edit] Direct Form 2

The Direct Form 1 implementation requires four delay registers. An equivalent circuit is the Direct Form 2 implementation, which requires only two delay registers:

The Direct Form 2 implementation is called the canonical form, because it uses the minimal amount of delays, adders and multipliers, yielding in the same transfer function as the Direct Form 1 implementation. The difference equations for DF2 are:

\ y(n)=b_0 w(n)+b_1 w(n-1)+b_2 w(n-2),

where

\ w(n)=x(n)-a_1 w(n-1)-a_2 w(n-2).

[edit] References

[edit] See also