This module describes the circular convolution algorithm and an alternative algorithm
Introduction
This module relates circular convolution of periodic signals in one domain to multiplication in the other domain.
You should be familiar with
Discrete-Time Convolution , which tells us
that given two discrete-time signals
, the system's input, and
, the system's response, we define the output of the
system as
When we are given two DFTs (finite-length sequences usually oflength
), we cannot just
multiply them together as we do in the above convolutionformula, often referred to as
linear convolution .
Because the DFTs are periodic, they have nonzero values for
and thus the multiplication of these two DFTs will
be nonzero for
. We need to define a new type of convolution
operation that will result in our convolved signal being zerooutside of the range
. This idea led to the development of
circular
convolution , also called cyclic or periodic convolution.
Signal circular convolution
Given a signal
with Fourier coefficients
and a signal
with Fourier coefficients
,
we can define a new signal,
,
where
We find that the
Fourier
Series representation of
,
,
is such that
.
is the
circular convolution of two periodic signals and is equivalent to the convolution
over one interval,
i.e.
.
Circular convolution in the time domain is equivalent to
multiplication of the Fourier coefficients.
This is proved as follows
Circular convolution formula
What happens when we multiply two DFT's together, where
is the DFT of
?
when
Using the DFT synthesis formula for
And then applying the analysis formula
where we can reduce the second summation found in the above
equation into
which equals circular convolution! When we have
in the above, then we get:
The notation
represents cyclic convolution "mod N".
Alternative convolution formula
Alternative circular convolution algorithm
Step 1: Calculate the DFT of
which yields
and calculate the DFT of
which yields
.
Step 2: Pointwise multiply
Step 3: Inverse DFT
which yields
Seems like a roundabout way of doing things,
but it turns out that there are
extremely fast ways to calculate the
DFT of a sequence.
To circularily convolve
-point sequences:
For each
:
multiples,
additions
We can picture
periodic sequences as having discrete
points on a circle as the domain
Shifting by
,
, corresponds to rotating the cylinder
notches ACW (counter
clockwise). For
, we get a shift equal to that in the following
illustration:
To cyclic shift we follow these steps:
1) Write
on a cylinder, ACW
2) To cyclic shift by
, spin
cylinder m spots ACW
Notes on circular shifting
Spinning
spots is the same
as spinning all the way around, or not spinning at all.
Shifting ACW
is equivalent to
shifting CW
The above expression, simply writes the values of
clockwise.