Introduction
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.
Convolution is a very powerful tool in determining a
system's output from knowledge of an arbitrary input and the
system's impulse response.
Derivation of the convolution sum
We know that any discrete-time signal can be represented by a
summation of scaled and shifted discrete-time impulses, see
(Reference). 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 discrete time LTI
system, we start with the folowing equation and work our way
down the the convoluation 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
(1)
Let us take a quick look at the steps taken in the above
derivation. After our initial equation we 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 pull the 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!
Above the summation is taken over all integers. Howerer, in many practical
cases either
xn
x
n
or
hn
h
n
or both
are finite, for which case the summations will be limited.
The convolution equations are simple tools which, in principle, can be used
for all input signals. Following is an example to demonstrate convolution;
how it is calculated and how it is interpreted.
Graphical illustration of convolution properties
A quick graphical example may help in demonstrating why
convolution works.
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
(2)
As with continuous-time, convolution is represented by the
symbol *, and can be written as
yn=xn*hn
y
n
x
n
h
n
(3)
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:
yn=xn*hn=hn*xn
y
n
x
n
h
n
h
n
x
n
(4)
From
equation 4 we get a convolution sum that is equivivalent to the
sum in
equation 2:
yn=∑k=-∞∞hkxn-k
y
n
k
h
k
x
n
k
(5)
For more information on the characteristics of convolution,
read about the
Properties
of Convolution.
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-m signal and
h
h
to be a causal, length-k, LTI system. This gives us the finite
summation,
yn=∑l=0m-1xlhn-l
y
n
l
0
m1
x
l
h
n
l
(6)
Notice that for any given
n
n
we have a sum of the
mm products of
xl
x
l
and a time-delayed
hn-l
h
n
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.