IIR filter
   HOME

TheInfoList



OR:

Infinite impulse response (IIR) is a property applying to many linear time-invariant systems that are distinguished by having an impulse response h(t) which does not become exactly zero past a certain point, but continues indefinitely. This is in contrast to a
finite impulse response In signal processing, a finite impulse response (FIR) filter is a filter whose impulse response (or response to any finite length input) is of ''finite'' duration, because it settles to zero in finite time. This is in contrast to infinite impulse ...
(FIR) system in which the impulse response ''does'' become exactly zero at times t>T for some finite T, thus being of finite duration. Common examples of linear time-invariant systems are most
electronic Electronic may refer to: *Electronics, the science of how to control electric energy in semiconductor * ''Electronics'' (magazine), a defunct American trade journal *Electronic storage, the storage of data using an electronic device *Electronic co ...
and
digital filter In signal processing, a digital filter is a system that performs mathematical operations on a sampled, discrete-time signal to reduce or enhance certain aspects of that signal. This is in contrast to the other major type of electronic filter, t ...
s. Systems with this property are known as ''IIR systems'' or ''IIR filters''. In practice, the impulse response, even of IIR systems, usually approaches zero and can be neglected past a certain point. However the physical systems which give rise to IIR or FIR responses are dissimilar, and therein lies the importance of the distinction. For instance, analog electronic filters composed of resistors, capacitors, and/or inductors (and perhaps linear amplifiers) are generally IIR filters. On the other hand, discrete-time filters (usually digital filters) based on a tapped delay line ''employing no feedback'' are necessarily FIR filters. The capacitors (or inductors) in the analog filter have a "memory" and their internal state never completely relaxes following an impulse (assuming the classical model of capacitors and inductors where quantum effects are ignored). But in the latter case, after an impulse has reached the end of the tapped delay line, the system has no further memory of that impulse and has returned to its initial state; its impulse response beyond that point is exactly zero.


Implementation and design

Although almost all
analog Analog or analogue may refer to: Computing and electronics * Analog signal, in which information is encoded in a continuous variable ** Analog device, an apparatus that operates on analog signals *** Analog electronics, circuits which use analog ...
electronic filters are IIR, digital filters may be either IIR or FIR. The presence of feedback in the topology of a discrete-time filter (such as the block diagram shown below) generally creates an IIR response. The z domain
transfer function In engineering, a transfer function (also known as system function or network function) of a system, sub-system, or component is a mathematical function that theoretically models the system's output for each possible input. They are widely used ...
of an IIR filter contains a non-trivial denominator, describing those feedback terms. The transfer function of an FIR filter, on the other hand, has only a numerator as expressed in the general form derived below. All of the a_i coefficients with i > 0 (feedback terms) are zero and the filter has no finite
poles Poles,, ; singular masculine: ''Polak'', singular feminine: ''Polka'' or Polish people, are a West Slavic nation and ethnic group, who share a common history, culture, the Polish language and are identified with the country of Poland in C ...
. The transfer functions pertaining to IIR analog electronic filters have been extensively studied and optimized for their amplitude and phase characteristics. These continuous-time filter functions are described in the
Laplace domain In mathematics, the Laplace transform, named after its discoverer Pierre-Simon Laplace (), is an integral transform that converts a function of a real variable (usually t, in the ''time domain'') to a function of a complex variable s (in the ...
. Desired solutions can be transferred to the case of discrete-time filters whose transfer functions are expressed in the z domain, through the use of certain mathematical techniques such as the bilinear transform,
impulse invariance Impulse invariance is a technique for designing discrete-time infinite-impulse-response (IIR) filters from continuous-time filters in which the impulse response of the continuous-time system is sampled to produce the impulse response of the discre ...
, or
pole–zero matching method The matched Z-transform method, also called the pole–zero mapping or pole–zero matching method, and abbreviated MPZ or MZT, is a technique for converting a continuous-time filter design to a discrete-time filter (digital filter) design. The ...
. Thus digital IIR filters can be based on well-known solutions for analog filters such as the
Chebyshev filter Chebyshev filters are analog or digital filters that have a steeper roll-off than Butterworth filters, and have either passband ripple (type I) or stopband ripple (type II). Chebyshev filters have the property that they minimize the error betwee ...
, Butterworth filter, and
elliptic filter An elliptic filter (also known as a Cauer filter, named after Wilhelm Cauer, or as a Zolotarev filter, after Yegor Zolotarev) is a signal processing filter with equalized ripple (equiripple) behavior in both the passband and the stopband. The ...
, inheriting the characteristics of those solutions.


Transfer function derivation

Digital filters are often described and implemented in terms of the difference equation that defines how the output signal is related to the input signal: : \begin y = & \frac(b_0 x + b_1 x -1+ \cdots + b_P x -P\\ & - a_1 y -1- a_2 y -2- \cdots - a_Q y -Q \end where: *\ P is the feedforward filter order *\ b_i are the feedforward filter coefficients *\ Q is the feedback filter order *\ a_i are the feedback filter coefficients *\ x /math> is the input signal *\ y /math> is the output signal. A more condensed form of the difference equation is: :\ y = \frac \left(\sum_^P b_x -i- \sum_^Q a_j y -jright) which, when rearranged, becomes: :\ \sum_^Q a_j y -j= \sum_^P b_i x -i/math> To find the
transfer function In engineering, a transfer function (also known as system function or network function) of a system, sub-system, or component is a mathematical function that theoretically models the system's output for each possible input. They are widely used ...
of the filter, we first take the
Z-transform In mathematics and signal processing, the Z-transform converts a discrete-time signal, which is a sequence of real or complex numbers, into a complex frequency-domain (z-domain or z-plane) representation. It can be considered as a discrete-tim ...
of each side of the above equation, where we use the time-shift property to obtain: :\ \sum_^Q a_j z^ Y(z) = \sum_^P b_i z^ X(z) We define the transfer function to be: : \begin H(z) & = \frac \\ & = \frac \end Considering that in most IIR filter designs coefficient\ a_0 is 1, the IIR filter transfer function takes the more traditional form: : H(z) = \frac


Stability

The transfer function allows one to judge whether or not a system is bounded-input, bounded-output (BIBO) stable. To be specific, the BIBO stability criterion requires that the ROC of the system includes the unit circle. For example, for a causal system, all
poles Poles,, ; singular masculine: ''Polak'', singular feminine: ''Polka'' or Polish people, are a West Slavic nation and ethnic group, who share a common history, culture, the Polish language and are identified with the country of Poland in C ...
of the transfer function have to have an absolute value smaller than one. In other words, all poles must be located within a unit circle in the z-plane. The poles are defined as the values of z which make the denominator of H(z) equal to 0: :\ 0 = \sum_^Q a_ z^ Clearly, if a_\ne 0 then the poles are not located at the origin of the z-plane. This is in contrast to the FIR filter where all poles are located at the origin, and is therefore always stable. IIR filters are sometimes preferred over FIR filters because an IIR filter can achieve a much sharper transition region
roll-off Roll-off is the steepness of a transfer function with frequency, particularly in electrical network analysis, and most especially in connection with filter circuits in the transition between a passband and a stopband. It is most typically app ...
than an FIR filter of the same order.


Example

Let the transfer function H(z) of a discrete-time filter be given by: :H(z) = \frac = \frac governed by the parameter a, a real number with 0 < , a, < 1. H(z) is stable and causal with a pole at a. The time-domain impulse response can be shown to be given by: :h(n) = a^ u(n) where u(n) is the
unit step function The Heaviside step function, or the unit step function, usually denoted by or (but sometimes , or ), is a step function, named after Oliver Heaviside (1850–1925), the value of which is zero for negative arguments and one for positive argume ...
. It can be seen that h(n) is non-zero for all n \ge 0, thus an impulse response which continues infinitely.


Advantages and disadvantages

The main advantage digital IIR filters have over FIR filters is their efficiency in implementation, in order to meet a specification in terms of passband, stopband, ripple, and/or roll-off. Such a set of specifications can be accomplished with a lower order (''Q'' in the above formulae) IIR filter than would be required for an FIR filter meeting the same requirements. If implemented in a signal processor, this implies a correspondingly fewer number of calculations per time step; the computational savings is often of a rather large factor. On the other hand, FIR filters can be easier to design, for instance, to match a particular frequency response requirement. This is particularly true when the requirement is not one of the usual cases (high-pass, low-pass, notch, etc.) which have been studied and optimized for analog filters. Also FIR filters can be easily made to be
linear phase In signal processing, linear phase is a property of a filter where the phase response of the filter is a linear function of frequency. The result is that all frequency components of the input signal are shifted in time (usually delayed) by the sa ...
(constant group delay vs frequency)—a property that is not easily met using IIR filters and then only as an approximation (for instance with the Bessel filter). Another issue regarding digital IIR filters is the potential for
limit cycle In mathematics, in the study of dynamical systems with two-dimensional phase space, a limit cycle is a closed trajectory in phase space having the property that at least one other trajectory spirals into it either as time approaches infinity o ...
behavior when idle, due to the feedback system in conjunction with quantization.


Design Methods


Impulse Invariance

Impulse invariance is a technique for designing discrete-time infinite-impulse-response (IIR) filters from continuous-time filters in which the impulse response of the continuous-time system is sampled to produce the impulse response of the discrete-time system. Impulse invariance is one of the commonly used methods to meet the two basic requirements of the mapping from the s-plane to the z-plane. This is obtained by solving the T(z) that has the same output value at the same sampling time as the analog filter, and it is only applicable when the inputs are in a pulse.
Note that all inputs of the digital filter generated by this method are approximate values, except for pulse inputs that are very accurate. This is the simplest IIR filter design method. It is the most accurate at low frequencies, so it is usually used in low-pass filters.
For Laplace transform or z-transform, the output after the transformation is just the input multiplied by the corresponding transformation function, T(s) or T(z). Y(s) and Y(z) are the converted output of input X(s) and input X(z), respectively.
:Y(s)=T(s)X(s)
:Y(z)=T(z)X(z)
When applying the Laplace transform or z-transform on the unit impulse, the result is 1. Hence, the output results after the conversion are
:Y(s)=T(s)
:Y(z)=T(z)
Now the output of the analog filter is just the inverse Laplace transform in the time domain.
:y(t)=L^ (s)L^ (s)/math>
If we use nT instead of t, we can get the output y(nT) derived from the pulse at the sampling time. It can also be expressed as y(n)
:y(n)=y(nT)=y(t), _
This discrete time signal can be applied z-transform to get T(z)
:T(z)=Y(z)=Z (n)/math>
:T(z)=Z (n)Z (nT)/math>
:T(z)=Z\left\
The last equation mathematically describes that a digital IIR filter is to perform z-transform on the analog signal that has been sampled and converted to T(s) by Laplace, which is usually simplified to
:T(z)=Z (s)T
Pay attention to the fact that there is a multiplier T appearing in the formula. This is because even if the Laplace transform and z-transform for the unit pulse are 1, the pulse itself is not necessarily the same. For analog signals, the pulse has an infinite value but the area is 1 at t=0, but it is 1 at the discrete-time pulse t=0, so the existence of a multiplier T is required.


Step Invariance

Step invariance is a better design method than impulse invariant. The digital filter has several segments of input with different constants when sampling, which is composed of discrete steps. The step invariant IIR filter is less accurate than the same input step signal to the ADC. However, it is a better approximation for any input than the impulse invariant.
Step invariant solves the problem of the same sample values when T(z) and T(s) are both step inputs. The input to the digital filter is u(n), and the input to the analog filter is u(t). Apply z-transform and Laplace transform on these two inputs to obtain the converted output signal.
Perform z-transform on step input Z (n)\dfrac
Converted output after z-transform Y(z)=T(z)U(z)=T(z)\dfrac
Perform Laplace transform on step input L (t)\dfrac
Converted output after Laplace transform Y(s)=T(s)U(s)=\dfrac
The output of the analog filter is y(t), which is the inverse Laplace transform of Y(s). If sampled every T seconds, it is y(n), which is the inverse conversion of Y(z).These signals are used to solve for the digital filter and the analog filter and have the same output at the sampling time.
The following equation points out the solution of T(z), which is the approximate formula for the analog filter.
:T(z)=\dfracY(z)
:T(z)=\dfracZ (n)/math>
:T(z)=\dfracZ (s)/math>
:T(z)=\dfracZ dfrac/math>


Bilinear Transform

The bilinear transform is a special case of a conformal mapping, often used to convert a transfer function H_a(s) of a linear, time-invariant (LTI) filter in the continuous-time domain (often called an analog filter) to a transfer function H_d(z) of a linear, shift-invariant filter in the discrete-time domain. The bilinear transform is a first-order approximation of the natural logarithm function that is an exact mapping of the ''z''-plane to the ''s''-plane. When the Laplace transform is performed on a discrete-time signal (with each element of the discrete-time sequence attached to a correspondingly delayed unit impulse), the result is precisely the Z transform of the discrete-time sequence with the substitution of : \begin z &= e^ \\ &= \frac \\ &\approx \frac \end where T is the numerical integration step size of the trapezoidal rule used in the bilinear transform derivation; or, in other words, the sampling period. The above bilinear approximation can be solved for s or a similar approximation for s = (1/T) \ln(z) can be performed. The inverse of this mapping (and its first-order bilinear approximation) is : \begin s &= \frac \ln(z) \\ &= \frac \left frac + \frac \left( \frac \right)^3 + \frac \left( \frac \right)^5 + \frac \left( \frac \right)^7 + \cdots \right\\ &\approx \frac \frac \\ &= \frac \frac \end This relationship is used in the Laplace transfer function of any analog filter or the digital infinite impulse response (IIR) filter T(z) of the analog filter.
The bilinear transform essentially uses this first order approximation and substitutes into the continuous-time transfer function, H_a(s) :s \leftarrow \frac \frac. That is :H_d(z) = H_a(s) \bigg, _= H_a \left( \frac \frac \right). \ which is used to calculate the IIR digital filter, starting from the Laplace transfer function of the analog filter.


See also

*
Autoregressive model In statistics, econometrics and signal processing, an autoregressive (AR) model is a representation of a type of random process; as such, it is used to describe certain time-varying processes in nature, economics, etc. The autoregressive model spe ...
* Electronic filter *
Finite impulse response In signal processing, a finite impulse response (FIR) filter is a filter whose impulse response (or response to any finite length input) is of ''finite'' duration, because it settles to zero in finite time. This is in contrast to infinite impulse ...
*
Recurrence relation In mathematics, a recurrence relation is an equation according to which the nth term of a sequence of numbers is equal to some combination of the previous terms. Often, only k previous terms of the sequence appear in the equation, for a parameter ...
, mathematical formalization * System analysis


External links

* * {{webarchive , url=https://web.archive.org/web/20100213083910/http://www.dsptutor.freeuk.com/IIRFilterDesign/IIRFilterDesign.html , date=February 13, 2010 , title=IIR Digital Filter Design Applet
IIR Digital Filter design tool
- produces coefficients, graphs, poles, zeros, and C code

- does not require Java Digital signal processing Filter theory