<< Chapter < Page Chapter >> Page >

The non-zero support of the convolution of infinite-length signals

The convolution of two infinite-length signals yields another infinite length signal. However, just because a signal is infinite in length does not mean it has an infinite number of nonzero values. The delta function $\delta[n]$ is nonzero only at $n=0$, even though it is infinite in length (i.e., it is defined for all integers $n$).

For reasons that will be apparent shortly, it is worth considering the duration interval of infinite length signals and their convolutions. Suppose an infinite-length signal is nonzero at all points less than $n=0$ and greater than $n=5$. Its duration interval goes from $n=0$ to $n=5$, and we say that the length of this duration is 6. It turns out that if signal $a[n]$ has a duration length of $D_a$, and signal $b[n]$ has a duration length of $D_b$, than the duration length of the convolution $a[n]\ast b[n]$ is $D_a+D_b-1$.

Image
A signal $x[n]$ with duration length of $4$.
Image
When $x[n]$ is convolved with itself, the duration length of the result is $4+4-1=7$.
CAPTION.

"equivalence" of linear and circular convolution

The reason why we would like to consider the duration length of two infinite-length signals' (linear) convolution is that there are reasons we would like to produce the same result through circular convolution, i.e., the convolution of finite-length signals. Of course, the outputs of a linear convolution and circular convolution are not equivalent, strictly speaking; they produce two distinct categories of signals: the first one infinite-length, the second one finite-length. It is possible, however, to take the duration sections of infinite-length signals and modify them as finite-length signals so that their (circular) convolution is the same as the duration section of the infinite (linear) convolution of the infinite-length signals.

Zero-padding and resulting circular convolutions

This is all perhaps best explained with illustrations. Consider the following infinite-length signal $x[n]$ (obviously only a portion of it is shown):
Image
This convolution of this signal with itself produces another infinite-length signal (again, only a portion of it is shown):
Image
We will attempt to produce finite-length signal that is equal to the duration section of that convolution above. To do this, we will first try to circularly convolve two finite-length signals that are simply the duration section of $x[n]$. We will call this signal $\tilde{x}[n]$:
Image
The finite-length signal $\tilde{x}[n]$ here is simply the duration section of the infinite-length signal $x[n]$ from above.
Image
The circular convolution in this case is clearly not the same as the duration section of the convolution of $x[n]$ with itself.
CAPTION.
It is apparent that simply circularly convolving the duration sections of $x[n]$ will not do. We consider that would happen if we add a 0 to the end of $\tilde{x}[n]$ and try again.
Image
...
Image
The circular convolution in this case is clearly not the same as the nonzero support of the convolution of $x[n]$ with itself.
CAPTION.
Well, this does seem to be a step in the right direction of having $\tilde{x}[n]\circledast\tilde{x}[n]$ equal the duration section of $x[n]\ast x[n]$. Let's add another $0$ to $\tilde{x}[n]$:
Image
...
Image
...
CAPTION.
We are getting close now, and perhaps you have already figured out how many zeros we need to ultimately add to achieve the desired circular convolution. Let's add another:
Image
..
Image
...
CAPTION.
So it seems that three zeros added to make $\tilde{x}[n]$ did the trick, for the circular convolution $\tilde{x}[n]\cilrcledast\tilde{x}[n]$ is indeed equal to the duration of $x[n]\ast x[n]$. Let's see, though, what happens if we add yet another zero:
Image
The finite-length signal $\tilde{x}[n]$ here is simply the nonzero support section of the infinite-length signal $x[n]$ from above.
Image
...
CAPTION.
At this point, it seems that adding extra zeroes to $\tilde{x}[n]$ will also add zeroes to the circular convolution; there's no harm with that, but it isn't necessary for our goal of the circular convolution equaling the duration section of the linear convolution.

Requirements of circular/linear convolution equivalence

As we saw above, when we have two signals that produce some result via linear convolution, if we would like to achieve that result (or at least, the duration section of that result), we will need to cut out the relevant sections of the two signals and then zero-pad them before circularly convolving them.

Let's define the amount of zero-padding with a bit more rigor. Consider infinite-length discrete-time signals $a[n]$ and $b[n]$. Let $a_{nz}[n]$ and $b_{nz}[n]$ be finite-length signals which are the duration sections of $a[n]$ and $b[n]$, respectively; that is, they are the smallest contiguous sections of $a[n]$ and $b[n]$ outside of which ALL values in time BEFORE and AFTER those sections are zero (it is, of course, allowable that some values WITHIN the contiguous sections may be zero). Call the duration length of these duration sections $D_a$ and $D_b$, respectively. Now zero-pad the signals $a_{nz}[n]$ and $b_{nz}[n]$ (i.e., appended zeroes to the end of the signals) to bring the new length of these signals to be $D_a+D_b-1$, and call the new zero-padded signals $\tilde{a}_n$ and $\tilde{b}_n$. Then we have that $\tilde{a}_n\circledast\tilde{b}_n$ is equivalent to the duration section of $a[n]\ast b[n]$.

Put more simply, suppose that the duration length of $a[n]\ast b[n]$ is $D$ (which we have seen equals $D_a+D_b-1$). We must zero-pad the duration sections of $a[b]$ and $b[n]$ to each be a length of $D$ to have their circular convolution be equivalent to the duration section of the linear convolution.

Why this all matters

There is a very good reason to go into this somewhat tedious task dealing with duration sections and their lengths and the relationships of linear and circular convolution. The reason has two parts. First: real-world input/output LTI systems implement LINEAR convolution. Second: there are tremendous computation complexity advantages to performing CIRCULAR convolution (which we will see later). So, if we can express the output of linear convolution through circular convolution, it means we can perform real-world system computations quickly.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Discrete-time signals and systems. OpenStax CNX. Oct 07, 2015 Download for free at https://legacy.cnx.org/content/col11868/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Discrete-time signals and systems' conversation and receive update notifications?

Ask