HOME

TheInfoList



OR:

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 Electronic filters are a type of signal processing filter in the form of electrical circuits. This article covers those filters consisting of lumped electronic components, as opposed to distributed-element filters. That is, using components ...
, the analog filter, which is typically an
electronic circuit An electronic circuit is composed of individual electronic components, such as resistors, transistors, capacitors, inductors and diodes, connected by conductive wires or traces through which electric current can flow. It is a type of electrical ...
operating on
continuous-time In mathematical dynamics, discrete time and continuous time are two alternative frameworks within which variables that evolve over time are modeled. Discrete time Discrete time views values of variables as occurring at distinct, separate "po ...
analog signal An analog signal or analogue signal (see spelling differences) is any continuous signal representing some other quantity, i.e., ''analogous'' to another quantity. For example, in an analog audio signal, the instantaneous signal voltage varies c ...
s. A digital filter system usually consists of an analog-to-digital converter (ADC) to sample the input signal, followed by a microprocessor and some peripheral components such as memory to store data and filter coefficients etc. Program Instructions (software) running on the microprocessor implement the digital filter by performing the necessary mathematical operations on the numbers received from the ADC. In some high performance applications, an
FPGA A field-programmable gate array (FPGA) is an integrated circuit designed to be configured by a customer or a designer after manufacturinghence the term '' field-programmable''. The FPGA configuration is generally specified using a hardware de ...
or
ASIC An application-specific integrated circuit (ASIC ) is an integrated circuit (IC) chip customized for a particular use, rather than intended for general-purpose use, such as a chip designed to run in a digital voice recorder or a high-efficien ...
is used instead of a general purpose microprocessor, or a specialized
digital signal processor A digital signal processor (DSP) is a specialized microprocessor chip, with its architecture optimized for the operational needs of digital signal processing. DSPs are fabricated on MOS integrated circuit chips. They are widely used in audio si ...
(DSP) with specific paralleled architecture for expediting operations such as filtering. Digital filters may be more expensive than an equivalent analog filter due to their increased complexity, but they make practical many designs that are impractical or impossible as analog filters. Digital filters can often be made very high order, and are often finite impulse response filters, which allows for linear phase response. When used in the context of real-time analog systems, digital filters sometimes have problematic latency (the difference in time between the input and the response) due to the associated analog-to-digital and digital-to-analog conversions and anti-aliasing filters, or due to other delays in their implementation. Digital filters are commonplace and an essential element of everyday electronics such as radios, cellphones, and
AV receivers An audio/video receiver (AVR) is a consumer electronics component used in a home theater. Its purpose is to receive audio and video signals from a number of sources, and to process them and provide power amplifiers to drive loudspeakers and rou ...
.


Characterization

A digital filter is characterized by its transfer function, or equivalently, its
difference equation 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 analysis of the transfer function can describe how it will respond to any input. As such, designing a filter consists of developing specifications appropriate to the problem (for example, a second-order low pass filter with a specific cut-off frequency), and then producing a transfer function which meets the specifications. The transfer function for a linear, time-invariant, digital filter can be expressed as a transfer function in the ''Z''-domain; if it is causal, then it has the form: :H(z) = \frac = \frac where the order of the filter is the greater of ''N'' or ''M''. See ''Z''-transform's LCCD equation for further discussion of this transfer function. This is the form for a recursive filter, which typically leads to an infinite impulse response (IIR) behaviour, but if the denominator is made equal to unity, i.e. no feedback, then this becomes a finite impulse response (FIR) filter.


Analysis techniques

A variety of mathematical techniques may be employed to analyze the behavior of a given digital filter. Many of these analysis techniques may also be employed in designs, and often form the basis of a filter specification. Typically, one characterizes filters by calculating how they will respond to a simple input such as an impulse. One can then extend this information to compute the filter's response to more complex signals.


Impulse response

The
impulse response In signal processing and control theory, the impulse response, or impulse response function (IRF), of a dynamic system is its output when presented with a brief input signal, called an Dirac delta function, impulse (). More generally, an impulse ...
, often denoted h /math> or h_k, is a measurement of how a filter will respond to the Kronecker delta function. For example, given a difference equation, one would set x_0 = 1 and x_k = 0 for k \ne 0 and evaluate. The impulse response is a characterization of the filter's behaviour. Digital filters are typically considered in two categories: infinite impulse response (IIR) and finite impulse response (FIR). In the case of linear time-invariant FIR filters, the impulse response is exactly equal to the sequence of filter coefficients, and thus: :\ y_n= \sum_^ b_ x_ =\sum_^ h_ x_ IIR filters on the other hand are recursive, with the output depending on both current and previous inputs as well as previous outputs. The general form of an IIR filter is thus: :\ \sum_^ a_y_ = \sum_^ b_ x_ Plotting the impulse response reveals how a filter responds to a sudden, momentary disturbance. An IIR filter is always recursive. While it is possible for a recursive filter to have a finite impulse response, a non-recursive filter always has a finite impulse response. An example is the moving average (MA) filter, which can be implemented both recursively and non recursively.


Difference equation

In discrete-time systems, the digital filter is often implemented by converting the transfer function to a linear constant-coefficient difference equation (LCCD) via the Z-transform. The discrete frequency-domain transfer function is written as the ratio of two polynomials. For example: :H(z) = \frac This is expanded: :H(z) = \frac and to make the corresponding filter causal, the numerator and denominator are divided by the highest order of z: : H(z) = \frac = \frac The coefficients of the denominator, a_, are the 'feed-backward' coefficients and the coefficients of the numerator are the 'feed-forward' coefficients, b_. The resultant linear difference equation is: : y = -\sum_^ a_ y -k+ \sum_^ b_ x -k or, for the example above: : \frac = \frac rearranging terms: : \Rightarrow (1 +\frac z^ - \frac z^) Y(z) = (1 + 2z^ +z^) X(z) then by taking the inverse ''z''-transform: : \Rightarrow y + \frac y -1- \frac y -2= x + 2x -1+ x -2 and finally, by solving for y /math>: : y = - \frac y -1+ \frac y -2+ x + 2x -1+ x -2 This equation shows how to compute the next output sample, y /math>, in terms of the past outputs, y -p/math>, the present input, x /math>, and the past inputs, x -p/math>. Applying the filter to an input in this form is equivalent to a Direct Form I or II (see below) realization, depending on the exact order of evaluation. In plain terms, for example, as used by a computer programmer implementing the above equation in code, it can be described as follows: y = the output, or filtered value
x = the input, or incoming raw value
n = the sample number, iteration number, or time period number and therefore: y /math> = the current filtered (output) value
y -1/math> = the last filtered (output) value
y -2/math> = the 2nd-to-last filtered (output) value
x /math> = the current raw input value
x -1/math> = the last raw input value
x -2/math> = the 2nd-to-last raw input value


Filter design

Although filters are easily understood and calculated, the practical challenges of their design and implementation are significant and are the subject of much advanced research. There are two categories of digital filter: the recursive filter and the
nonrecursive filter In mathematics, a nonrecursive filter only uses input values like x − 1 unlike recursive filter where it uses previous output values like y − 1 In signal processing, non-recursive digital filter In signal processing, a digital filter is ...
. These are often referred to as infinite impulse response (IIR) filters and finite impulse response (FIR) filters, respectively.


Filter realization

After a filter is designed, it must be ''realized'' by developing a signal flow diagram that describes the filter in terms of operations on sample sequences. A given transfer function may be realized in many ways. Consider how a simple expression such as ax + bx + c could be evaluated – one could also compute the equivalent x(a + b) + c. In the same way, all realizations may be seen as "factorizations" of the same transfer function, but different realizations will have different numerical properties. Specifically, some realizations are more efficient in terms of the number of operations or storage elements required for their implementation, and others provide advantages such as improved numerical stability and reduced round-off error. Some structures are better for
fixed-point arithmetic In computing, fixed-point is a method of representing fractional (non-integer) numbers by storing a fixed number of digits of their fractional part. Dollar amounts, for example, are often stored with exactly two fractional digits, representi ...
and others may be better for
floating-point arithmetic In computing, floating-point arithmetic (FP) is arithmetic that represents real numbers approximately, using an integer with a fixed precision, called the significand, scaled by an integer exponent of a fixed base. For example, 12.345 can be ...
.


Direct form I

A straightforward approach for IIR filter realization is direct form I, where the difference equation is evaluated directly. This form is practical for small filters, but may be inefficient and impractical (numerically unstable) for complex designs. In general, this form requires 2N delay elements (for both input and output signals) for a filter of order N.


Direct form II

The alternate direct form II only needs ''N'' delay units, where ''N'' is the order of the filter – potentially half as much as direct form I. This structure is obtained by reversing the order of the numerator and denominator sections of Direct Form I, since they are in fact two linear systems, and the commutativity property applies. Then, one will notice that there are two columns of delays (z^) that tap off the center net, and these can be combined since they are redundant, yielding the implementation as shown below. The disadvantage is that direct form II increases the possibility of arithmetic overflow for filters of high ''Q'' or resonance. It has been shown that as ''Q'' increases, the round-off noise of both direct form topologies increases without bounds. This is because, conceptually, the signal is first passed through an all-pole filter (which normally boosts gain at the resonant frequencies) before the result of that is saturated, then passed through an all-zero filter (which often attenuates much of what the all-pole half amplifies).


Cascaded second-order sections

A common strategy is to realize a higher-order (greater than 2) digital filter as a cascaded series of second-order "biquadratric" (or "biquad") sectionsJ. O. Smith III
Series Second Order Sections
/ref> (see
digital 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 i ...
). The advantage of this strategy is that the coefficient range is limited. Cascading direct form II sections results in ''N'' delay elements for filters of order ''N''. Cascading direct form I sections results in ''N'' + 2 delay elements, since the delay elements of the input of any section (except the first section) are redundant with the delay elements of the output of the preceding section.


Other forms

Other forms include: * Direct form I and II transpose * Series/cascade lower (typical second) order subsections * Parallel lower (typical second) order subsections ** Continued fraction expansion * Lattice and ladder ** One, two and three-multiply lattice forms ** Three and four-multiply normalized ladder forms ** ARMA structures * State-space structures: ** optimal (in the minimum noise sense): (N+1)^2 parameters ** block-optimal and section-optimal: 4N-1 parameters ** input balanced with Givens rotation: 4N-1 parameters * Coupled forms: Gold Rader (normal), State Variable (Chamberlin), Kingsbury, Modified State Variable, Zölzer, Modified Zölzer * Wave Digital Filters (WDF) * Agarwal–Burrus (1AB and 2AB) * Harris–Brooking * ND-TDL * Multifeedback * Analog-inspired forms such as Sallen-key and state variable filters * Systolic arrays


Comparison of analog and digital filters

Digital filters are not subject to the component non-linearities that greatly complicate the design of analog filters. Analog filters consist of imperfect electronic components, whose values are specified to a limit tolerance (e.g. resistor values often have a tolerance of ±5%) and which may also change with temperature and drift with time. As the order of an analog filter increases, and thus its component count, the effect of variable component errors is greatly magnified. In digital filters, the coefficient values are stored in computer memory, making them far more stable and predictable. Because the coefficients of digital filters are definite, they can be used to achieve much more complex and selective designs – specifically with digital filters, one can achieve a lower passband ripple, faster transition, and higher stopband attenuation than is practical with analog filters. Even if the design could be achieved using analog filters, the engineering cost of designing an equivalent digital filter would likely be much lower. Furthermore, one can readily modify the coefficients of a digital filter to make an adaptive filter or a user-controllable parametric filter. While these techniques are possible in an analog filter, they are again considerably more difficult. Digital filters can be used in the design of finite impulse response filters. Equivalent analog filters are often more complicated, as these require delay elements. Digital filters rely less on analog circuitry, potentially allowing for a better
signal-to-noise ratio Signal-to-noise ratio (SNR or S/N) is a measure used in science and engineering that compares the level of a desired signal to the level of background noise. SNR is defined as the ratio of signal power to the noise power, often expressed in deci ...
. A digital filter will introduce noise to a signal during analog low pass filtering, analog to digital conversion, digital to analog conversion and may introduce digital noise due to quantization. With analog filters, every component is a source of thermal noise (such as
Johnson noise Johnson is a surname of Anglo-Norman origin meaning "Son of John". It is the second most common in the United States and 154th most common in the world. As a common family name in Scotland, Johnson is occasionally a variation of ''Johnston'', a ...
), so as the filter complexity grows, so does the noise. However, digital filters do introduce a higher fundamental latency to the system. In an analog filter, latency is often negligible; strictly speaking it is the time for an electrical signal to propagate through the filter circuit. In digital systems, latency is introduced by delay elements in the digital signal path, and by analog-to-digital and digital-to-analog converters that enable the system to process analog signals. In very simple cases, it is more cost effective to use an analog filter. Introducing a digital filter requires considerable overhead circuitry, as previously discussed, including two low pass analog filters. Another argument for analog filters is low power consumption. Analog filters require substantially less power and are therefore the only solution when power requirements are tight. When making an electrical circuit on a
PCB PCB may refer to: Science and technology * Polychlorinated biphenyl, an organic chlorine compound, now recognized as an environmental toxin and classified as a persistent organic pollutant * Printed circuit board, a board used in electronics * ...
it is generally easier to use a digital solution, because the processing units are highly optimized over the years. Making the same circuit with analog components would take up a lot more space when using discrete components. Two alternatives are FPAAs and ASICs, but they are expensive for low quantities.


Types of digital filters

There are various ways to characterize filters; for example: * A ''linear'' filter is a linear transformation of input samples; other filters are '' nonlinear''. Linear filters satisfy the
superposition principle The superposition principle, also known as superposition property, states that, for all linear systems, the net response caused by two or more stimuli is the sum of the responses that would have been caused by each stimulus individually. So tha ...
, i.e. if an input is a weighted linear combination of different signals, the output is a similarly weighted linear combination of the corresponding output signals. * A ''causal'' filter uses only previous samples of the input or output signals; while a ''non-causal'' filter uses future input samples. A non-causal filter can usually be changed into a causal filter by adding a delay to it. * A ''time-invariant'' filter has constant properties over time; other filters such as adaptive filters change in time. * A ''stable'' filter produces an output that converges to a constant value with time, or remains bounded within a finite interval. An ''unstable'' filter can produce an output that grows without bounds, with bounded or even zero input. * A finite impulse response (FIR) filter uses only the input signals, while an infinite impulse response (IIR) filter uses both the input signal and previous samples of the output signal. FIR filters are always stable, while IIR filters may be unstable. A filter can be represented by a block diagram, which can then be used to derive a sample processing algorithm to implement the filter with hardware instructions. A filter may also be described as a
difference equation 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 ...
, a collection of zeros and poles or an
impulse response In signal processing and control theory, the impulse response, or impulse response function (IRF), of a dynamic system is its output when presented with a brief input signal, called an Dirac delta function, impulse (). More generally, an impulse ...
or step response. Some digital filters are based on the
fast Fourier transform A fast Fourier transform (FFT) is an algorithm that computes the discrete Fourier transform (DFT) of a sequence, or its inverse (IDFT). Fourier analysis converts a signal from its original domain (often time or space) to a representation in th ...
, a mathematical algorithm that quickly extracts the frequency spectrum of a signal, allowing the spectrum to be manipulated (such as to create very high order band-pass filters) before converting the modified spectrum back into a time-series signal with an inverse FFT operation. These filters give O(n log n) computational costs whereas conventional digital filters tend to be O(n2). Another form of a digital filter is that of a state-space model. A well used state-space filter is the Kalman filter published by Rudolf Kálmán in 1960. Traditional linear filters are usually based on attenuation. Alternatively nonlinear filters can be designed, including energy transfer filters,Billings S.A. "Nonlinear System Identification: NARMAX Methods in the Time, Frequency, and Spatio-Temporal Domains". Wiley, 2013 which allow the user to move energy in a designed way so that unwanted noise or effects can be moved to new frequency bands either lower or higher in frequency, spread over a range of frequencies, split, or focused. Energy transfer filters complement traditional filter designs and introduce many more degrees of freedom in filter design. Digital energy transfer filters are relatively easy to design and to implement and exploit nonlinear dynamics.


See also

* Bessel filter * Bilinear transform *
Butterworth filter The Butterworth filter is a type of signal processing filter designed to have a frequency response that is as flat as possible in the passband. It is also referred to as a maximally flat magnitude filter. It was first described in 1930 by the Br ...
* Chebyshev filter *
Electronic filter Electronic filters are a type of signal processing filter in the form of electrical circuits. This article covers those filters consisting of lumped electronic components, as opposed to distributed-element filters. That is, using components ...
* Elliptical filter (Cauer filter) * Filter design * High-pass filter, Low-pass filter * Infinite impulse response, Finite impulse response * Linkwitz–Riley filter *
Matched filter In signal processing, a matched filter is obtained by correlating a known delayed signal, or ''template'', with an unknown signal to detect the presence of the template in the unknown signal. This is equivalent to convolving the unknown signal wi ...
* Sample (signal) * Savitzky–Golay filter *
Two-dimensional filter Two dimensional filters have seen substantial development effort due to their importance and high applicability across several domains. In the 2-D case the situation is quite different from the 1-D case, because the multi-dimensional polynomials c ...


References


Further reading

*J. O. Smith III
Introduction to Digital Filters with Audio Applications
Center for Computer Research in Music and Acoustics (CCRMA), Stanford University, September 2007 Edition. * * * * * * * {{DEFAULTSORT:Digital Filter Digital signal processing Synthesiser modules *