Sign in

username:

password:



Not a member?

Search Online Books



Search tips

Free Online Books



Chapters

See Also

Embedded SystemsFPGAElectronics
Chapter Contents:

Search Introduction to Digital Filters

  

Book Index | Global Index


Would you like to be notified by email when Julius Orion Smith III publishes a new entry into his blog?

  

Examples of Digital Filters

While any mapping from signals to real numbers can be called a filter, we normally work with filters which have more structure than that. Some of the main structural features are illustrated in the following examples.

The filter analyzed in Chapter 1 was specified by

$\displaystyle y(n)=x(n) + x(n-1).
$

Such a specification is known as a difference equation. This simple filter is a special case of an important class of filters called linear time-invariant (LTI) filters. LTI filters are important in audio engineering because they are the only filters that preserve signal frequencies.

The above example remains a real LTI filter if we scale the input samples by any real coefficients:

$\displaystyle y(n)=2\, x(n) - 3.1\, x(n-1)
$

If we use complex coefficients, the filter remains LTI, but it becomes a complex filter:

$\displaystyle y(n)=(2+j)\,x(n) + 5 j \,x(n-1)$

The filter also remains LTI if we use more input samples in a shift-invariant way:

$\displaystyle y(n)=x(n) + x(n-1) + x(n+1) + \cdots$

The use of ``future'' samples, such as $ x(n+1)$ in this difference equation, makes this a non-causal filter example. Causal filters may compute $ y(n)$ using only present and/or past input samples $ x(n)$, $ x(n-1)$, $ x(n-2)$, and so on.

Another class of causal LTI filters involves using past output samples in addition to present and/or past input samples. The past-output terms are called feedback, and digital filters employing feedback are called recursive digital filters:

$\displaystyle y(n)=x(n) - x(n-1) + 0.1 \, y(n-1) + \cdots$

An example multi-input, multi-output (MIMO) digital filter is

$\displaystyle \left[\begin{array}{c} y_1(n) \\ [2pt] y_2(n) \end{array}\right] ...
...y}\right]\left[\begin{array}{c} x_1(n-1) \\ [2pt] x_2(n-1) \end{array}\right],
$

where we have introduced vectors and matrices inside square brackets. This is the 2D generalization of the SISO filter $ y(n) = a \, x(n) + b\,
x(n-1)$.

The simplest nonlinear digital filter is

$\displaystyle y(n)=x^2(n),$

i.e., it squares each sample of the input signal to produce the output signal. This example is also a memoryless nonlinearity because the output at time $ n$ is not dependent on past inputs or outputs. The nonlinear filter

$\displaystyle y(n)=x(n)-y^2(n-1)$

is not memoryless.

Another nonlinear filter example is the median smoother of order $ N$ which assigns the middle value of $ N$ input samples centered about time $ n$ to the output at time $ n$. It is useful for ``outlier'' elimination. For example, it will reject isolated noise spikes, and preserve steps.

An example of a linear time-varying filter is

$\displaystyle y(n)=x(n) + \cos(2\pi n /10)\, x(n-1).$

It is time-varying because the coefficient of $ x(n-1)$ changes over time. It is linear because no coefficients depend on $ x$ or $ y$.

These examples provide a kind of ``bottom up'' look at some of the major types of digital filters. We will now take a ``top down'' approach and characterize all linear, time-invariant filters mathematically. This characterization will enable us to specify frequency-domain analysis tools that work for any LTI digital filter.


Previous: Definition of a Filter
Next: Linear Filters

Order a Hardcopy of Introduction to Digital Filters


About the Author: Julius Orion Smith III
Julius Smith's background is in electrical engineering (BS Rice 1975, PhD Stanford 1983). He is presently Professor of Music and Associate Professor (by courtesy) of Electrical Engineering at Stanford's Center for Computer Research in Music and Acoustics (CCRMA), teaching courses and pursuing research related to signal processing applied to music and audio systems. See http://ccrma.stanford.edu/~jos/ for details.


Comments


 

ujwalapatil wrote:

9/26/2009
 
Wonderful job!
let me know why cicular convolution can not be used for the design of linear filter.

Add a Comment
You need to login before you can post a comment (best way to prevent spam). ( Not a member? )