yn=xn*hn=∑k=-∞∞xkhn−k
y
n
x
n
h
n
k
x
k
h
n
k
(1)
Yω=XωHω
Y
ω
X
ω
H
ω
(2)
Assume that
Hω
H
ω
is specified.
How can we implement
XωHω
X
ω
H
ω
in a computer?
Discretize (sample)
Xω
X
ω
and
Hω
H
ω
. In order to do this, we should take the DFTs
of
xn
x
n
and
hn
h
n
to get
Xk
X
k
and
Xk
X
k
. Then we will compute
y
~
n=IDFTXkHk
y
~
n
IDFT
X
k
H
k
Does
y
~
n=yn
y
~
n
y
n
?
Recall that the DFT treats
NN-point sequences as if they are
periodically extended (Figure 2):
y
~
n=1N∑k=0N−1Ykⅇⅈ2πkNn=1N∑k=0N−1XkHkⅇⅈ2πkNn=1N∑k=0N−1∑m=0N−1xmⅇ-ⅈ2πkNmHkⅇⅈ2πkNn=∑m=0N−1xm1N∑k=0N−1Hkⅇⅈ2πkNn−m=∑m=0N−1xmh
((
n
−
m
))
N
y
~
n
1
N
k
N
1
0
Y
k
2
k
N
n
1
N
k
N
1
0
X
k
H
k
2
k
N
n
1
N
k
N
1
0
m
N
1
0
x
m
2
k
N
m
H
k
2
k
N
n
m
N
1
0
x
m
1
N
k
N
1
0
H
k
2
k
N
n
m
m
N
1
0
x
m
h
((
n
−
m
))
N
(3)
And the IDFT periodically extends
hn
h
n
:
h
~
n−m=h
((
n
−
m
))
N
h
~
n
m
h
((
n
−
m
))
N
This computes as shown in
Figure 3:
y
~
n=∑m=0N−1xmh
((
n
−
m
))
N
y
~
n
m
N
1
0
x
m
h
((
n
−
m
))
N
(4)
is called
circular convolution and is denoted by
Figure 4.
To begin with, we are given the following two length-3
signals:
xn=123
x
n
1
2
3
hn=102
h
n
1
0
2
We can zero-pad these signals so that we have the following
discrete sequences:
xn=…01230…
x
n
…
0
1
2
3
0
…
hn=…01020…
h
n
…
0
1
0
2
0
…
where
x0=1
x
0
1
and
h0=1
h
0
1
.
Figure 9 illustrates the
relationship between circular convolution and regular
convolution using the previous two figures:
-
"Zero-pad"
xn
x
n
and
hn
h
n
to avoid the overlap (wrap-around) effect. We
will zero-pad the two signals to a length-5 signal (5
being the duration of the regular convolution result):
xn=12300
x
n
1
2
3
0
0
hn=10200
h
n
1
0
2
0
0
-
Now take the DFTs of the zero-padded signals:
y
~
n=1N∑k=04XkHkⅇⅈ2πk5n=∑m=04xmh
((
n
−
m
))
5
y
~
n
1
N
k
4
0
X
k
H
k
2
k
5
n
m
4
0
x
m
h
((
n
−
m
))
5
(18)
Now we can plot this result (
Figure 10):
We can compute the regular convolution result of a
convolution of an
MM-point
signal
xn
x
n
with an
NN-point
signal
hn
h
n
by padding each signal with zeros to obtain two
M+N−1
M
N
1
length sequences and computing the circular
convolution (or equivalently computing the IDFT of
HkXk
H
k
X
k
, the product of the DFTs of the zero-padded
signals) (
Figure 11).
-
Sample finite duration continuous-time input
xt
x
t
to get
xn
x
n
where
n=0…M−1
n
0
…
M
1
.
-
Zero-pad
xn
x
n
and
hn
h
n
to length
M+N−1
M
N
1
.
-
Compute DFTs
Xk
X
k
and
Hk
H
k
-
Compute IDFTs of
XkHk
X
k
H
k
yn=
y
~
n
y
n
y
~
n
where
n=0…M+N−1
n
0
…
M
N
1
.
-
Reconstruct
yt
y
t