We're learning about convolution in my signals and systems class right now. I have been able to do all of the problems by simply working out the respective sum/integral, but I'm still having trouble gaining the intuition behind it.

Consider the following example. Let $x[n]$ be a discrete-time signal and input it into some LTI system with impulse response $h[n]$. Then,

$$ y[n] = \sum_{k=-\infty}^{\infty} x[k] h[n-k]. $$

Let's plug in some values to make this more concrete. Suppose that we want to compute $y[6]$. Well,

$$ y[6] = \sum_{k=-\infty}^{\infty} x[k] h[6-k] = \cdots + x[4]h[2] + x[5]h[1] + x[6]h[0] + x[7]h[-1] + \cdots. $$

I understand the shifting, but I feel as if the multiplications should be in a different order. Namely, why are we multiplying $x[7]$ by $h[-1]$. I feel as if we should be multiplying it by $h[1]$, since we've essentially shifted everything to the right by $6$ units, to $6$ is the new $0$, which would mean that $7$ is the new $1$ (under the shifting). I have it backwards, and understand why when I work out the math, but why?

More concretely, my question is the following:

With respect to the above example, what exactly is the meaning of $h[2]$? $h[-1]$? $h[k]$ in general?


2 Answers 2


The coefficient $h[n]$ is the value of the system's response at time $n$ when the input signal was an impulse at $n=0$. Obviously, that's why we call $h[n]$ the impulse response. From this you can see that for a system to be causal, $h[n]$ must be zero for $n<0$, otherwise the system would "know" in advance that an impulse will come at $n=0$.

Note that any discrete-time signal $x[n]$ can be written as a sum of unit impulses:


Since the response to a shifted impulse $\delta[n-k]$ is $h[n-k]$, and since the system is linear and time-invariant, from $(1)$ the output signal must be given by


which is of course the discrete-time convolution. Consequently, positive indices of $h[n]$ correspond to the memory of the system, that's why $h[1]$ is multiplied with the past input sample $x[n-1]$, etc.

  • $\begingroup$ Nice (+1), but it begs the question: why does $(1)$, which is just like a convolution, hold? $\endgroup$ Feb 9, 2016 at 20:40
  • $\begingroup$ @DilipSarwate: You don't need to see it as a convolution, but just as a decomposition of the signal into shifted and weighted impulses (which is of course essentially the same, but conceptually it's different). Eq. (1) can be understood, even if one doesn't know what convolution is. That was at least the idea here. $\endgroup$
    – Matt L.
    Feb 9, 2016 at 20:46

Consider if you had a polynomial with coefficients $x[n]$, i.e. $\sum_n x[n]z^n$, and a polynomial with coefficients $h[n]$ and you multiplied them together... what would the coefficients of the result be?

  • $\begingroup$ The coefficients would be the discrete convolution of $x[n]$ and $h[n]$ (we did this as an exercise in class). I don't quite see what you're getting at though. $\endgroup$
    – Ryan
    Feb 9, 2016 at 8:25
  • $\begingroup$ Another way to write the convolution of $x$ and $h$ is: $\sum_{i+j=n} x[i]h[j]$ $\endgroup$ Feb 9, 2016 at 8:58
  • $\begingroup$ If instead of $z$ we used $D$ in the polynomials above, where $(Dx)[n] = x[n-1]$ then the polynomial would be a weighted sum of these delays. Multiplying the polynomials would, as you say, convolve the coefficients. The convolution formula says the weight at some point in time is the product of the weights of the delays that, combined, would shift us to this point in time. $\endgroup$ Feb 9, 2016 at 9:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.