<< Chapter < Page Chapter >> Page >
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 x n , the system's input, and h n , the system's response, we define the output of the system as

y n x n h n k x k h n k
When we are given two DFTs (finite-length sequences usually oflength N ), 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 n N and thus the multiplication of these two DFTs will be nonzero for n N . We need to define a new type of convolution operation that will result in our convolved signal being zerooutside of the range n 0 1 N 1 . This idea led to the development of circular convolution , also called cyclic or periodic convolution.

Signal circular convolution

Given a signal f n with Fourier coefficients c k and a signal g n with Fourier coefficients d k , we can define a new signal, v n , where v n f n g n We find that the Fourier Series representation of v n , a k , is such that a k c k d k . f n g n is the circular convolution of two periodic signals and is equivalent to the convolution over one interval, i.e. f n g n n 0 N η 0 N f η g n η .

Circular convolution in the time domain is equivalent to multiplication of the Fourier coefficients.
This is proved as follows
a k 1 N n 0 N v n j ω 0 k n 1 N 2 n 0 N η 0 N f η g n η ω j 0 k n 1 N η 0 N f η 1 N n 0 N g n η j ω 0 k n ν ν n η 1 N η 0 N f η 1 N ν η N η g ν j ω 0 ν η 1 N η 0 N f η 1 N ν η N η g ν j ω 0 k ν j ω 0 k η 1 N η 0 N f η d k j ω 0 k η d k 1 N η 0 N f η j ω 0 k η c k d k

Circular convolution formula

What happens when we multiply two DFT's together, where Y k is the DFT of y n ?

Y k F k H k
when 0 k N 1

Using the DFT synthesis formula for y n

y n 1 N k 0 N 1 F k H k j 2 N k n

And then applying the analysis formula F k m 0 N 1 f m j 2 N k n

y n 1 N k 0 N 1 m 0 N 1 f m j 2 N k n H k j 2 N k n m 0 N 1 f m 1 N k 0 N 1 H k j 2 N k n m
where we can reduce the second summation found in the above equation into h ( ( n m ) ) N 1 N k 0 N 1 H k j 2 N k n m y n m 0 N 1 f m h ( ( n m ) ) N which equals circular convolution! When we have 0 n N 1 in the above, then we get:
y n f n h n
The notation represents cyclic convolution "mod N".

Alternative convolution formula

    Alternative circular convolution algorithm

  • Step 1: Calculate the DFT of f n which yields F k and calculate the DFT of h n which yields H k .
  • Step 2: Pointwise multiply Y k F k H k
  • Step 3: Inverse DFT Y k which yields y n

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 2 N -point sequences: y n m 0 N 1 f m h ( ( n m ) ) N For each n : N multiples, N 1 additions

N points implies N 2 multiplications, N N 1 additions implies O N 2 complexity.

Steps for circular convolution

We can picture periodic sequences as having discrete points on a circle as the domain

Shifting by m , f n m , corresponds to rotating the cylinder m notches ACW (counter clockwise). For m -2 , we get a shift equal to that in the following illustration:

for m -2

To cyclic shift we follow these steps:

1) Write f n on a cylinder, ACW

N 8

2) To cyclic shift by m , spin cylinder m spots ACW f n f (( n + m )) N

m -3

Notes on circular shifting

f (( n + N )) N f n Spinning N spots is the same as spinning all the way around, or not spinning at all.

f (( n + N )) N f (( n - ( N - m ) )) N Shifting ACW m is equivalent to shifting CW N m

f (( - n )) N The above expression, simply writes the values of f n clockwise.

f n
f (( - n )) N

Convolve (n = 4)

Two discrete-time signals to be convolved.

  • h ( ( m ) ) N

Multiply f m and sum to yield: y 0 3

  • h ( ( 1 m ) ) N

Multiply f m and sum to yield: y 1 5

  • h ( ( 2 m ) ) N

Multiply f m and sum to yield: y 2 3

  • h ( ( 3 m ) ) N

Multiply f m and sum to yield: y 3 1

Got questions? Get instant answers now!

Exercise

Take a look at a square pulse with a period of T.

For this signal c k 1 N k 0 1 2 2 k 2 k

Take a look at a triangle pulse train with a period of T.

This signal is created by circularly convolving the square pulse with itself. The Fourier coefficients for this signal are a k c k 2 1 4 2 k 2 2 k 2

Find the Fourier coefficients of the signal that is created when the square pulse and the triangle pulse are convolved.

a k = undefined k = 0 1 8 s i n 3 [ π 2 k ] [ π 2 k ] 3 otherwise

Got questions? Get instant answers now!

Circular shifts and the dft

Circular shifts and dft

If f n DFT F k then f (( n - m )) N DFT 2 N k m F k ( i.e. circular shift in time domain = phase shift in DFT)

f n 1 N k 0 N 1 F k 2 N k n
so phase shifting the DFT
f n 1 N k 0 N 1 F k 2 N k n 2 N k n 1 N k 0 N 1 F k 2 N k n m f (( n - m )) N

Circular convolution demonstration

circularshiftsDemo
Interact (when online) with a Mathematica CDF demonstrating Circular Shifts.

Conclusion

Circular convolution in the time domain is equivalent to multiplication of the Fourier coefficients in the frequency domain.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Signals and systems. OpenStax CNX. Aug 14, 2014 Download for free at http://legacy.cnx.org/content/col10064/1.15
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Signals and systems' conversation and receive update notifications?

Ask