### lecture_14

```ECE
8443
– PatternContinuous
Recognition
EE
3512
– Signals:
and Discrete
LECTURE 14: CONVOLUTION OF
DISCRETE-TIME SIGNALS
• Objectives:
Representation of DT Signals
Response of DT LTI Systems
Convolution
Examples
Properties
• Resources:
MIT 6.003: Lecture 3
Wiki: Convolution
CNX: Discrete-Time Convolution
JHU: Convolution
ISIP: Convolution Java Applet
URL:
Exploiting Superposition and Time-Invariance
x[n]   ak xk [n]
k
DT LTI
System
y[n]   bk y k [n]
k
• Are there sets of “basic” signals, xk[n], such that:
 We can represent any signal as a linear combination (e.g, weighted sum) of
these building blocks? (Hint: Recall Fourier Series.)
 The response of an LTI system to these basic signals is easy to compute
and provides significant insight.
• For LTI Systems (CT or DT) there are two natural choices for these building
blocks:
 DT Systems:  n  n0 
(unit pulse)
 CT Systems:  t  t 0 
(impulse)
 Later we will learn that there are many families of such functions: sinusoids,
exponentials, and even data-dependent functions. The latter are extremely
useful in compression and pattern recognition applications.
EE 3512: Lecture 14, Slide 1
Representation of DT Signals Using Unit Pulses
EE 3512: Lecture 14, Slide 2
Response of a DT LTI Systems – Convolution
x[n]   ak xk [n]
DT LTI
hn
k
y[n]   bk y k [n]
k
• Define the unit pulse response, h[n], as the response of a DT LTI system to a
unit pulse function, [n].
• Using the principle of time-invariance:
 [n]  h[n]   [n  k ]  h[n  k ]
convolution operator
• Using the principle of linearity:
x[n] 

 x[k ]  [n  k ]
k  
• Comments:
 y[n] 

 x[k ] h[n  k ]  x[n]  h[n]
k  
convolution sum
 Recall that linearity implies the weighted sum of input signals will produce a
similar weighted sum of output signals.
 Each unit pulse function, [n-k], produces a corresponding time-delayed
version of the system impulse response function (h[n-k]).
 The summation is referred to as the convolution sum.
 The symbol “*” is used to denote the convolution operation.
EE 3512: Lecture 14, Slide 3
LTI Systems and Impulse Response
• The output of any DT LTI is a convolution of the input signal with the unit
pulse response:
x[n]

x[n] 
DT LTI
hn
 x[k ]  [n  k ]
k  
 y[n] 
y[n]  x[n] * h[n]

 x[k ] h[n  k ]  x[n]  h[n]
k  
• Any DT LTI system is completely characterized by its unit pulse response.
• Convolution has a simple graphical interpretation:
EE 3512: Lecture 14, Slide 4
Visualizing Convolution
• There are four basic steps to the
calculation:
• The operation has a simple graphical
interpretation:
EE 3512: Lecture 14, Slide 5
Calculating Successive Values
• We can calculate each output point by
shifting the unit pulse response one
sample at a time:
y[n] 

 x[k ] h[n  k ]
k  
• y[n] = 0 for n < ???
y[-1] =
y[0] =
y[1] =
…
y[n] = 0 for n > ???
• Can we generalize this result?
EE 3512: Lecture 14, Slide 6
Graphical Convolution
2
h(k )
1
-1
x(k )
-1
1
-1
h(3  k )
h(2  k )
h(1  k )
h(0  k )
k = -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9
EE 3512: Lecture 14, Slide 7
y (3) 

 x(k )h(3  k )  0
k  
y(2) 

 x(k )h(2  k )  0
k  
y(1)  (1)(1)  1
y(0)  (1)(0)  (2)(1)  2
Graphical Convolution (Cont.)
2
h(k )
1
-1
x(k )
-1
1
-1
h(1  k )
y(1)  (1)(1)  (2)(0)  (1)(1)  2
h( 2  k )
y(2)  (1)(0)  (2)(1)
 (1)(0)  (1)(1)  2
h(3  k )
y (3)  (1)(0)  (2)(0)
 (1)(1)  (1)(0)  1
h( 4  k )
y(4)  (1)(1)  1
k = -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9
EE 3512: Lecture 14, Slide 8
Graphical Convolution (Cont.)
• Observations:
 y[n] = 0 for n > 4
 If we define the duration of h[n] as the difference in time from the first
nonzero sample to the last nonzero sample, the duration of h[n], Lh, is
4 samples.
 Similarly, Lx = 3.
 The duration of y[n] is: Ly = Lx + Lh – 1. This is a good sanity check.
• The fact that the output has a duration longer than the input indicates that
convolution often acts like a low pass filter and smoothes the signal.
EE 3512: Lecture 14, Slide 9
Examples of DT Convolution
• Example: delayed unit-pulse
• Example: unit-pulse
h[n]   [n  n0 ]
h[n]   [n]
y[n] 


 x[k ] h[n  k ]
y[n] 
k  


 x[k ]  [n  k ]  x[n]
• Example: unit step

 k ]  x[n  n0 ]
h[n]  a n u[n] a  1
 x[k ] h[n  k ]
k  
n
 x[k ] u[n  k ]   x[k ]
k  
k  
0
x[n]  u[n]


 x[k ]  [n  n
• Example: integration
h[n]  u[n]

 x[k ] h[n  k ]
k  
k  
y[n] 

k  
y[n] 

 x[k ] h[n  k ]
k  


 u[n]a u[n]
n
k  
 (1) [n]  (1  a) [n  1]  ...
 1
 1  a n 1
 1  a
EE 3512: Lecture 14, Slide 10
n0
n0
Properties of Convolution
• Commutative:
x[n] * h[n]  h[n] * x[n]
• Distributive:
x[n] * (h1[n]  h2 [n]) 
( x[n] * h1[n])  ( x[n] * h2 [n])
• Associative:
x[n] * h1[n] * h2 [n] 
( x[n] * h1[n]) * h2 [n] 
( x[n] * h2 [n]) * h1[n]
EE 3512: Lecture 14, Slide 11
• Implications
Useful Properties of (DT) LTI Systems
• Causality: h[n]  0
• Stability:
n0

 h[k ]  
k  
Bounded Input ↔ Bounded Output
Sufficient Condition:
for x[n]  x max  
y[n] 

 x[k ]h[n  k ]  x
k  

max
 h[n  k ]  
k  
Necessary Condition:

if
 h[n  k ]  
k  
Let x[n]  h * [n] / h[n] , then x[n]  1 (bounded)
But y[0]



 x[k ]h[0  k ]   h [k ]h[k ] / h[k ]   h[k ]  
*
k  
EE 3512: Lecture 14, Slide 12
k  
k  
Summary
• We introduced a method for computing the output of a discrete-time (DT)
linear time-invariant (LTI) system known as convolution.
• We demonstrated how this operation can be performed analytically and
graphically.
• We discussed three important properties: commutative, associative and
distributive.
• Question: can we determine key properties of a system, such as causality
and stability, by examining the system impulse response?
• There are several interactive tools available that demonstrate graphical
convolution: ISIP: Convolution Java Applet.
EE 3512: Lecture 14, Slide 13
```