Skip to main content

What is convolution (full convolution)?

 

Suppose, you have two arrays A = [1,2,3,4], and B = [10,11,12]. Then the convolution result, C will be [10,31,64,97,80,80]. The length of C is length of A + length of B -1. Convolution is a very useful concept in signal processing. We've often taken consideration that transmitted signal is convolved with channel impulse response (CIR) in the time domain. And in the frequency domain they are in multiplication form.

Lets discuss how mathematically find the convolution of two arrays or signals. For the above example, the formula for convolution is: \[ C[n] = (A * B)[n] = \sum_{m= 0}^{m} A[m] B[n - m] \] 

Where, m is the length of A

     and, n varies from 0 to m + p -1 

 where, p is the length of B

 

Convolution Formula

The convolution of two continuous-time signals \( x(t) \) and \( h(t) \) is given by: \[ y(t) = (x * h)(t) = \int_{-\infty}^{\infty} x(\tau) h(t - \tau) \, d\tau \]
For discrete-time signals \( x[n] \) and \( h[n] \), the convolution is: \[ y[n] = (x * h)[n] = \sum_{m=-\infty}^{\infty} x[m] h[n - m] \] 
 
Where, x is the transmitted signal 
             h is the channel impulse response (CIR)
             m is the length of transmitted signal
             n varies from m + p -1
where, p is the length of h
 

Convolution vs Autocorrelation  

  1.  Convolution shifts and flips the second signal.
  2. Autocorrelation shifts but does not flip the second signal.

1. Autocorrelation Equation

For a discrete signal x[n]:

Rx[k] = ∑n=-∞ x[n] ⋅ x[n + k]

No flipping — just a shift by k.

2. Convolution Equation

For two signals x[n] and h[n]:

y[n] = (x ∗ h)[n] = ∑k=-∞ x[k] ⋅ h[n − k]

Includes flipping — h[n − k] is the flipped version of h[k] before shifting.

 

Further Reading 

Contact Us

Name

Email *

Message *