Overview
Convolution is a concept that extends to all systems that are
both
linear and
time-invariant (
LTI). The idea of
discrete-time convolution is exactly the same as
that of
continuous-time
convolution. For this reason, it may be useful to look
at both versions to help your understanding of this extremely
important concept. Recall that convolution is a very powerful
tool in determining a system's output from knowledge of an
arbitrary input and the system's impulse response. It will
also be helpful to see convolution graphically with your own
eyes and to play around with it some, so experiment with the
applets
available on the internet. These resources will offer
different approaches to this crucial concept.
Convolution Sum
As mentioned above, the convolution sum provides a concise,
mathematical way to express the output of an LTI system based
on an arbitrary discrete-time input signal and the system's
response. The
convolution sum is expressed
as
yn=∑k=-∞∞xkhn-k
y
n
k
x
k
h
n
k
(1)
As with continuous-time, convolution is represented by the
symbol *, and can be written as
yn=xn*hn
y
n
x
n
h
n
(2)
By making a simple change of variables into the convolution
sum,
k=n-k
k
n
k
,
we can easily show that convolution is
commutative:
xn*hn=hn*xn
x
n
h
n
h
n
x
n
(3)
For more information on the characteristics of convolution,
read about the
Properties
of Convolution.
Derivation
We know that any discrete-time signal can be represented by a
summation of scaled and shifted discrete-time impulses. Since
we are assuming the system to be linear and time-invariant, it
would seem to reason that an input signal comprised of the sum
of scaled and shifted impulses would give rise to an output
comprised of a sum of scaled and shifted impulse responses.
This is exactly what occurs in convolution.
Below we present a more rigorous and mathematical look at the
derivation:
Letting
ℋℋ be a DT LTI
system, we start with the following equation and work our way
down the convolution sum!
yn=ℋxn=ℋ∑k=-∞∞xkδn-k=∑k=-∞∞ℋxkδn-k=∑k=-∞∞xkℋδn-k=∑k=-∞∞xkhn-k
y
n
ℋ
x
n
ℋ
k
x
k
δ
n
k
k
ℋ
x
k
δ
n
k
k
x
k
ℋ
δ
n
k
k
x
k
h
n
k
(4)
Let us take a quick look at the steps taken in the above
derivation. After our initial equation, we using the DT
sifting property to rewrite the function,
xn
x
n
, as a sum of the function times the unit impulse.
Next, we can move around the
ℋℋ
operator and the summation because
ℋ˙
ℋ
˙
is a linear, DT system. Because of this linearity
and the fact that
xk
x
k
is a constant, we can pull the previous mentioned
constant out and simply multiply it by
ℋ˙
ℋ
˙
. Finally, we use the fact that
ℋ˙
ℋ
˙
is time invariant in order to reach our final state
- the convolution sum!
A quick graphical example may help in demonstrating why
convolution works.
Convolution Through Time (A Graphical Approach)
In this section we will develop a second graphical
interpretation of discrete-time convolution. We will begin
this by writing the convolution sum allowing
x
x
to be a causal, length-
mm signal and
h
h
to be a causal, length-
kk, LTI
system. This gives us the finite summation,
yn=∑l=0m-1xlhn-l
y
n
l
0
m
1
x
l
h
n
l
(5)
Notice that for any given
n
n
we have a sum of the products of
x
l
x
l
and a time-delayed
h
−
l
h
−
l
. This is to say that we multiply the terms of
x
x
by the terms of a time-reversed
h
h
and add them up.
Going back to the previous example:
What we are doing in the above demonstration is reversing the
impulse response in time and "walking it across" the input
signal. Clearly, this yields the same result as scaling,
shifting and summing impulse responses.
This approach of time-reversing, and sliding across is a
common approach to presenting convolution, since it
demonstrates how convolution builds up an output through time.
"My introduction to signal processing course at Rice University."