Chapter 2

Discrete-time signals and systems
Contents
Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2
Discrete-time signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2
Some elementary discrete-time signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2
Signal notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2
Classification of discrete-time signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4
Symmetry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4
Simple manipulations of discrete-time signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4
Correlation of discrete-time signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5
Cross-correlation sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5
Properties of cross correlation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5
Discrete-time systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7
Input-output description of systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7
Block diagram representation of discrete-time systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7
Classification of discrete-time systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8
Time properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8
“Amplitude” properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9
Interconnection of discrete-time systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.10
Analysis of discrete-time linear time-invariant systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11
Techniques for the analysis of linear systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11
Response of LTI systems to arbitrary inputs: the convolution sum . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11
Properties of convolution and the interconnection of LTI systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.13
Properties of LTI systems in terms of the impulse response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.15
Stability of LTI systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.16
Discrete-time systems described by difference equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.17
Recursive and nonrecursive discrete-time systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.18
LTI systems via constant-coefficient difference equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.18
Solution of linear constant-coefficient difference equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.18
Impulse response of a LTI recursive system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.18
Summary of difference equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.18
Implementation of discrete-time systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.19
Structures for realization of LTI systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.19
Recursive and nonrecursive realization of FIR systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.19
Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.21
2.1
2.2 c J. Fessler, May 27, 2004, 13:10 (student version)
Overview
• terminology, classes of signals and systems, linearity, time-invariance. impulse response, convolution, difference equations,
correlation, analysis ...
Much of this chapter parallels 306 for CT signals.
Goal: eventually DSP system design; must first learn to analyze!
2.1
Discrete-time signals
Our focus: single-channel, continuous-valued signals, namely 1D discrete-time signals x[n].
In mathematical notation we write x : Z →R or x : Z →C
• x[n] can be represented graphically by “stem” plot.
• x[n] is not defined for noninteger n. (It is not “zero” despite appearance of stem plot.)
• We call x[n] the nth sample of the signal.
We will also consider 2D discrete-space images x[n, m].
2.1.1
Some elementary discrete-time signals (important examples)
• unit sample sequence or unit impulse or Kronecker delta function (much simpler than the Dirac impulse)
Centered: δ[n] =
_
1, n = 0
0, n = 0
Shifted: δ[n −k] =
_
1, n = k
0, n = k
Picture
• unit step signal
u[n] =
_
1, n ≥ 0
0, n < 0
= {. . . , 0, 0, 1, 1, . . .}
Useful relationship: δ[n] = u[n] −u[n −1]. This is the discrete-time analog of the continuous-time property of Dirac impulses:
δ(t) =
d
dt
u(t).
• exponential signal or geometric progression (discrete-time analog of continuous-time e
at
)
x[n] = a
n
plot for 0 < a < 1 real. See text for other cases.
The 2D Kronecker impulse:
δ
2D
[n, m] = δ[n] δ[m] =
_
1, n = 0, m = 0
0, otherwise.
Signal notation
There are several ways to represent discrete-time signals. One way is graphically. Here are five (!) others.
x[n] = {. . . , 0, 0, 2, 1, 1, . . .} = u[n] +δ[n] = 2 δ[n] +δ[n −1] +δ[n −2] +· · · = 2 δ[n] +

k=1
δ[n −k] =
_
_
_
2, n = 0,
1, n ≥ 1,
0, n < 0.
For a 4-periodic signal we may write {1, 0, 7, 5}
4
to denote the signal {. . . , 1, 0, 7, 5, 1, 0, 7, 5, 1, 0, . . .}.
Skill: Convert between different discrete-time signal representations.
Skill: Choose representation most appropriate for a given problem. (There are perhaps more viable options than for CT signals.)
Example:
x[n] = {1, 0, 0, 1/2, 0, 0, 1/4, 0, . . .} = δ[n −0] +
1
2
δ[n −3] +
1
4
δ[n −6] +· · · =

k=0
_
1
2
_
k
δ[n −3k] .
In MATLAB you have two basic choices.
• Enumeration: xn = [0 0 1 0 3]; which typically means x[n] = δ[n −2] +3 δ[n −5]
c J. Fessler, May 27, 2004, 13:10 (student version) 2.3
• Signal synthesis: n = [-5:4]; x = cos(n); which means x[n] = cos(n) for −5 ≤ n ≤ 4 (and x[n] is unspecified
outside that range).
The inline function is also useful, e.g., the unit impulse is: imp = inline(’n == 0’, ’n’);
Skill: Efficiently synthesize simple signals in MATLAB.
Signal support characteristics
These are signal characteristics related to the time axis.
Support Interval
Roughly speaking the support interval of a signal is the set of times such that the signal is not zero. We often abbreviate and say
simply support or interval instead of support interval.
• More precisely the support interval of a continuous-time signal x
a
(t) is the smallest time interval
1
[t
1
, t
2
] such that the signal is
zero outside this interval.
• For a discrete-time signal x[n], the support interval is a set of consecutive integers: {n
1
, n
1
+ 1, n
1
+ 2, . . . , n
2
}. Specifically,
n
1
is the largest integer such that x[n] = 0 for all n < n
1
, and n
2
is the smallest integer such that x[n] = 0 for all n > n
2
.
Duration
The duration or length of a signal is the length of its support interval.
• For continuous-time signals, duration = t
2
−t
1
.
• What is the duration of a discrete-time signal? duration = n
2
−n
1
+ 1.
Some signals have finite duration and others have infinite duration.
Example. The signal x[n] = u[n −3] −u[n −7] +δ[n −5] +δ[n −9] has support {3, 4, . . . , 9} and duration 7.
1
Intervals can be open as in (a, b), closed as in [a, b], or half-open, half-closed as in (a, b] and [a, b). For continuous-time signals, in almost all cases of practical
interest, it is not necessary to distinguish the support interval as being of one type or the other.
2.4 c J. Fessler, May 27, 2004, 13:10 (student version)
2.1.2
Classification of discrete-time signals
The energy of a discrete-time signal is defined as
E
x

=

n=−∞
|x[n]|
2
.
The average power of a signal is defined as
P
x

= lim
N→∞
1
2N + 1
N

n=−N
|x[n]|
2
.
• If E is finite (E < ∞) then x[n] is called an energy signal and P = 0.
• If E is infinite, then P can be either finite or infinite. If P is finite and nonzero, then x[n] is called a power signal.
Example. Consider x[n] = 5 (a constant signal). Then
P = lim
N→∞
1
2N + 1
N

n=−N
5
2
= lim
N→∞
5
2
= 25.
So x[n] is a power signal.
What is E and is x[n] an energy signal? Since P is nonzero, E is infinite.
More classifications
• x[n] is periodic with period N ∈ N iff x[n +N] = x[n] ∀n
• Otherwise x[n] is aperiodic
Fact: N-periodic signals are power signals with P =
1
N

N−1
n=0
|x[n]|
2
.
Symmetry
• x[n] is symmetric or even iff x[−n] = x[n]
• x[n] is antisymmetric or odd iff x[−n] = −x[n]
We can decompose any signal into even and odd components:
x[n] = x
e
[n] +x
o
[n]
x
e
[n]

=
1
2
(x[n] +x[−n]) Verify that this is even!
x
o
[n]

=
1
2
(x[n] −x[−n]) Verify that this is odd!
Example. 2 u[n] =
1
2
(2 u[n] +2 u[−n]) +
1
2
(2 u[n] −2 u[−n]) = (1 +δ[n]) + (u[n −1] −u[1 −n])
{. . . , 0, 0, 2, 2, 2, . . .} = {. . . , 1, 1, 2, 1, 1, . . .} +{. . . , −1, −1, 0, 1, 1, . . .} .Picture
2.1.3
Simple manipulations of discrete-time signals
• Amplitude modifications
• amplitude scaling y[n] = a x[n], amplitude shift y[n] = x[n] +b
• sum of two signals y[n] = x
1
[n] +x
2
[n]
• product of two signals y[n] = x
1
[n] x
2
[n]
• Time modifications
• Time shifting y[n] = x[n −k]. k can be positive (delayed signal) or negative (advanced signal) if signal stored in a computer
• Folding or reflection or time-reversal y[n] = x[−n]
• Time-scaling or down-sampling y[n] = x[2n]. (discard every other sample) (cf. continuous f(t) = g(2t))
Why? e.g., to reduce CPU time in a preliminary data analysis, or to reduce memory.
c J. Fessler, May 27, 2004, 13:10 (student version) 2.5
2.6
Correlation of discrete-time signals
2.6.1
Cross-correlation sequences
The cross correlation of signals x[n] and y[n] is
r
xy
[l]

=

n=−∞
x[n] y

[n −l] =

n=−∞
x[n +l] y

[n], l = 0, ±1, ±2, . . . ,
where l is called the lag. Recipe is almost the same as for convolution: shift, multiply, sum. No folding!
Example applications: time-delay estimation, frequency estimation.
(A 1999 Mercedes Benz has cruise-control that tracks car in front.) pictures
2.6.2
Properties of cross correlation
• r
xy
[l] = r

yx
[−l] (called conjugate symmetry or Hermitian symmetry)
• r
xy
[l] = x[l] ∗ y

[−l]
• |r
xy
[l]| ≤
_
E
x
E
y
where E
x
=


n=−∞
|x[n]|
2
is the signal energy. This is called the Cauchy-Schwarz inequality.
• If w[n] = αx[n] then r
wy
[l] = αr
xy
[l]
skip Proof for real signals:
0 ≤

n=−∞
¸
¸
¸
¸
¸
x[n]

E
x
±
y[n −l]
_
E
y
¸
¸
¸
¸
¸
2
=
1
E
x

n=−∞
|x[n]|
2
+
1
E
y

n=−∞
|y[n −l]|
2
±
2
_
E
x
E
y
_

n=−∞
x[n] y[n −l]
_
= 2 ±2
r
xy
[l]
_
E
x
E
y
.
Thus −
_
E
x
E
y
≤ r
xy
[l] ≤
_
E
x
E
y
.
Autocorrelation
The autocorrelation of a signal is the cross correlation of the signal with itself:
r
xx
[l]

=

n=−∞
x[n] x

[n −l] =

n=−∞
x[n +l] x

[n], l = 0, ±1, ±2, . . . .
It inherits the properties of cross correlation. In addition:
• |r
xx
[l]| ≤ r
xx
[0]
• r
xx
[0] = E
x
One application: determining period of sinusoidal signal.
2.6.3
2.6.4
2.6.5
2.6 c J. Fessler, May 27, 2004, 13:10 (student version)
0 20 40 60 80
−1.5
−1
−0.5
0
0.5
1
1.5
n
x
(
n
)
Noiseless Periodic Signal x(n)
−100 −50 0 50 100
−100
−50
0
50
100
l
r
x
x
(
l
)
Autocorrelation r
xx
(l) of a Noiseless Periodic Signal
0 20 40 60 80
−4
−2
0
2
4
n
y
(
n
)
Noisy Periodic Signal y(n)
−100 −50 0 50 100
−150
−100
−50
0
50
100
150
200
l
r
y
y
(
l
)
Autocorrelation r
yy
(l) of a Noisy Signal
Figure 2.1: Example of autocorrelation of a periodic signal with a noisy signal having the same dominant frequency component.
c J. Fessler, May 27, 2004, 13:10 (student version) 2.7
2.2
Discrete-time systems
A discrete-time system is a device or algorithm that, according to some well-defined rule, operates on a discrete-time signal called
the input signal or excitation to produce another discrete-time signal called the output signal or response.
Mathematically speaking, a system is also a function. The input signal x[n] is transformed by the system into a signal y[n], which
we express mathematically as
y[·] = T {x[·]} or y[n] = T {x[·]}[n] or x[·]
T
→ y[·] .
The notation y[n] = T {x[n]} is mathematically vague. The reader must understand that in general y[n] is a function of the entire
sequence {x[n]}, not just the single time point x[n].
Input Signal
x[n]
→ Discrete-time system →
Output Signal
y[n]
2.2.1
Input-output description of systems
A discrete-time system can be described in many ways. One way is by its input-output relationship, which is a formula expressing
the output signal in terms of the input signal.
Example. The accumulator system.
y[n] =

n
k=−∞
x[k] = x[n] +x[n −1] +x[n −2] +· · ·
x[n] = u[n] −u[n −3] = {. . . , 0, 0, 1, 1, 1, 0, 0, . . .}
y[n] = {. . . , 0, 0, 1, 2, 3, 3, . . .} . Example 2.2.1(f) on p.58 has error.
Alternative expression: y[n] =

n
k=−∞
x[k] =

n−1
k=−∞
x[k] +x[n] = y[n −1] +x[n]
Example. Interest-bearing checking account with monthly fee: y[n] = 1.01 y[n −1] +x[n] −2 u[n] . Why the u[n]?
Notice the relevant “physical” quantities (interest rate, fee, balance) are captured in this mathematical expression.
The field of “Systems” deals with mathematical modeling of (more or less) “physical” things.
read about initial condition and initially relaxed
2.2.2
Block diagram representation of discrete-time systems
Example.
z
−1
0.5
x(n)
z
−1
y(n) = y(n−1) x(n−1) + 0.5 x(n)
y(n−1) x(n−1)
y(n)
• adder
• constant multiplier
• signal multiplier
• unit delay element (why z
−1
clear later)
In real-time hardware, each delay element requires 1 signal sample worth of memory (to store each sample until the next arrives).
How are delays implemented? With buffers / latches / flip-flops.
Other representations to be discussed later (mostly for LTI systems).
• Difference equation
• Impulse response
• System function
• pole-zero plot
• Frequency response
2.8 c J. Fessler, May 27, 2004, 13:10 (student version)
2.2.3
Classification of discrete-time systems
Skill: Determining classifications of a given DT system
Two general aspects to categorize: time properties and amplitude properties.
Time properties (causality, memory, time invariance)
Causality
For a causal system, the output y[n] at any time n depends only on the “present” and “past” inputs i.e.,
y[n] = F{x[n], x[n −1], x[n −2], . . .}
where F{·} is any function.
Causality is necessary for real-time implementation, but many DSP problems involved stored data, e.g., image processing (OCR)
or restoration of analog audio recordings.
Otherwise noncausal system.
Memory
• For a static system or memoryless system, the output y[n] depends only on the current input x[n], not on previous or future
inputs. Example: y[n] = e
x[n]
/

n −2.
• Otherwise it is a dynamic system and must have memory.
Dynamic systems are the interesting ones and will be our focus. (This time we take the more complicated choice!)
Is a memoryless system necessarily causal? Yes. But dynamic systems can be causal or noncausal.
Time invariance
Systems whose input-output behavior does not change with time are called time-invariant and will be our focus
Why? “Easier” to analyze. Time-invariance is a desired property of many systems.
A relaxed system T is called time invariant or shift invariant iff
x[n]
T
→ y[n] implies that x[n −k]
T
→ y[n −k]
for every input signal x[n] and integer time shift k.
Otherwise the system is called time variant or shift variant.
Graphically:
x[n] → delay z
−k
→ system T → y[n]
x[n] → system T → delay z
−k
→ y[n]
Recipe for showing time-invariance. (This method avoids potentially confusing y(n, k) notation.)
• Determine output y
1
[n] due to a generic input x
1
[n].
• Determine output y
2
[n] due to input x
2
[n] = x
1
[n −k].
• If y
2
[n] = y
1
[n −k], then system is time-invariant.
Example: 3-point moving average y[n] =
1
3
(x[n −1] +x[n] +x[n + 1]) . Time invariant? yes.
• Output due to x
1
[n] is y
1
[n] =
1
3
(x
1
[n −1] +x
1
[n] +x
1
[n + 1]) .
• Output due to shifted input x
2
[n] = x
1
[n −k] is
y
2
[n] =
1
3
(x
2
[n −1] +x
2
[n] +x
2
[n + 1]) =
1
3
(x
1
[n −k −1] +x
1
[n −k] +x
1
[n −k + 1])
• Since y
1
[n −k] =
1
3
(x
1
[n −k −1] +x
1
[n −k] +x
1
[n −k + 1]) = y
2
[n], the system is time-invariant.
Example: down-sampler y[n] = x[2n]. Time invariant? no. How do we show lack of a property? Find counter-example. If
x[n] = δ[n] then y[n] = δ[n]. If x[n] = δ[n −1] then y[n] = 0 = δ[n −1]. Simple counterexample all that is needed.
We will focus on time-invariant systems.
c J. Fessler, May 27, 2004, 13:10 (student version) 2.9
skip Here is another mathematical way of expressing time invariance. If
y[n] = F{n, x[m
1
(n)], x[m
2
(n)], . . .}
for some functions m
j
: Z →Z, then the system is time-invariant iff for any signal x[n]:
F{n −k, x[m
1
(n −k)], x[m
2
(n −k)], . . .} = F{n, x[m
1
(n) −k], x[m
2
(n) −k], . . .} ∀n, k ∈ Z.
The left side is “shifting the output” whereas the right side is “shifting the input.”
“Amplitude” properties (stability, invertibility, linearity)
Invertibility
A systemT is invertible if every output signal corresponds to a unique input signal. If so, then there exists an inverse systemT
−1
that can recover the input signal:
x[n] → T → y[n] → T
−1
→ x[n] .
We will derive tests for invertibility later.
Stability
A system is bounded-input bounded-output (BIBO) stable iff every bounded input produces a bounded output.
If ∃M
x
s.t. |x[n]| ≤ M
x
< ∞∀n, then there must exist an M
y
s.t. |y[n]| ≤ M
y
< ∞∀n.
Usually M
y
will depend on M
x
.
Example: accumulator y[n] = y[n −1] +x[n]. Consider input signal x[n] = u[n], which is bounded by M
x
= 1. But y[n] =
n + 1 +y[−1] blows up, so the accumulator is an unstable system.
We will derive a simple test for BIBO stability shortly.
Linearity
We will also focus on linear systems.
Why linearity?
• The class of linear systems is easier to analyze.
• Often linearity is desirable - avoids distortions.
• Many nonlinear systems are approximately linear, so first-order analysis is linear case.
A system T is linear iff
T {a
1
x
1
[n] +a
2
x
2
[n]} = a
1
T {x
1
[n]} +a
2
T {x
2
[n]}, i.e., a
1
x
1
[n] +a
2
x
2
[n]
T
→ a
1
y
1
[n] +a
2
y
2
[n],
for any signals x
1
[n], x
2
[n], and constants a
1
and a
2
.
Otherwise the system is called nonlinear.
2.10 c J. Fessler, May 27, 2004, 13:10 (student version)
Block diagram illustration of linearity test.
PSfrag replacements a
1
a
1
a
2
a
2
x
1
[n]
x
1
[n]
x
2
[n]
x
2
[n]
y[n]
y[n]
T
T
T
Two important special cases of linearity property.
• scaling property: T {a x[n]} = aT[x[n]]
Note that from a = 0 we see that zero input signal implies zero output signal for a linear system.
• additivity property: T {x
1
[n] +x
2
[n]} = T {x
1
[n]} +T {x
2
[n]}
Using proof-by-induction, one can easily extend this property to the general superposition property:
T
_
K

k=1
x
k
[n]
_
=
K

k=1
T {x
k
[n]} .
In words: the response of a linear system to the sum of several signals is the sum of the response to each of the signals.
In general superposition need not hold for infinite sums; additional continuity assumptions are required.
We assume the superposition summation holds even for infinite sums without further comment in this course.
Example: Proof that the accumulator is a linear system, where y[n] =

n
k=−∞
x[k].
Method:
• Find output signal y
1
[n] for a general input signal x
1
[n].
• “Repeat” for input x
2
[n] and y
2
[n].
• Find output signal y[n] when input signal is x[n] = a
1
x
1
[n] +a
2
x
2
[n] .
• If y[n] = a
1
y
1
[n] +a
2
y
2
[n], ∀n, then the system is linear.
For the accumulator, y
1
[n] =

n
k=−∞
x
1
[n] and y
2
[n] =

n
k=−∞
x
2
[n]. If the input is x[n] = a
1
x
1
[n] +a
2
x
2
[n], then the
output is
y[n] =
n

k=−∞
x[n] =
n

k=−∞
(a
1
x
1
[n] +a
2
x
2
[n]) = a
1
n

k=−∞
x
1
[n] +a
2
n

k=−∞
x
2
[n] = a
1
y
1
[n] +a
2
y
2
[n] .
Since this holds for all n, for all input signals x
1
[n] and x
2
[n], and for any constants a
1
and a
2
, the accumulator is linear.
Example: To show that y[n] =
_
x[n] is nonlinear, all that is needed is a counter-example to the above properties. The scaling
property will usually suffice. Let x
1
[n] = 2, a constant signal. Then y
1
[n] =

2. Now suppose the input is x[n] = 3 x
1
[n] = 6,
then the output is y[n] =

6 = 3 y
1
[n], so the system is nonlinear.
2.2.4
Interconnection of discrete-time systems
skip essentially repeated in 2.3.4
c J. Fessler, May 27, 2004, 13:10 (student version) 2.11
2.3
Analysis of discrete-time linear time-invariant systems (Our focus is LTI hereafter)
Why analysis? So far we only have input-output relationships. For a given system can compute y[n] for selected x[n]’s, but very
difficult to design filters etc. by such trial-and-error.
Overview: x[n] → LTI h[n] → y[n] = x[n] ∗ h[n].
Linearity leads to the above superposition property, which simplifies the analysis. Time-invariance then further simplifies.
2.3.1
Techniques for the analysis of linear systems
General strategy:
• Decompose input signal x[n] into a weighted sum of elementary functions x
k
[n], i.e., x[n] =

k
c
k
x
k
[n]
• Determine response of system to each elementary function (this should be easy from input-output relationship):
x
k
[n]
T
→ y
k
[n]
• Apply superposition property:
x[n] =

k
c
k
x
k
[n]
T
→ y[n] =

k
c
k
y
k
[n] .
Two particularly good choices for the elementary functions x
k
[n]:
• impulse functions δ[n −k]
• complex exponentials e
ω
k
n
(later).
2.3.2 Resolution of discrete-time signal into impulses
It follows directly from the definition of δ[n] that
x[n] =

k=−∞
x[k] δ[n −k] .
This is the sifting property of the unit impulse function.
Example. x[n] =
_
8, π, 0,

7
_
=⇒ x[n] = 8 δ[n −0] +π δ[n −1] +

7 δ[n −3] .
2.3.3
Response of LTI systems to arbitrary inputs: the convolution sum
Define the special symbol h
k
[n] to denote the system output when the input is δ[n −k], i.e.,
δ[n −k]
T
→ h
k
[n] .
In words: h
k
[n] is the response to an impulse at the kth sample.
Now use superposition to determine the response to a general input signal x[n]:
x[n] =

k
x[k] δ[n −k]
T
→ y[n] =

k
x[k] h
k
[n] .
Thus we have proven the superposition summation for any linear system T :
x[n]
T

.¸¸.
Linear
y[n] =

k=−∞
x[k] h
k
[n] .
In words: overall output is weighted sum of response due to kth sample.
Every input sample that comes into the system causes the system to respond. For a linear system, the overall response is the sum
of the contributions due to each input sample.
2.12 c J. Fessler, May 27, 2004, 13:10 (student version)
We have not yet used time-invariance. If the system is time-invariant, then the response to a delayed impulse δ[n −k] is just a
delayed version of the response to an impulse at time 0: δ[n]. Thus, for a LTI system: h
k
[n] = h
0
[n −k]
Thus for time-invariant linear systems, the superposition summation becomes
y[n] =

k=−∞
x[k] h
0
[n −k] .
The “0” subscript is redundant, so we drop it and just write h[n −k] instead. We call h[n] the impulse response of the system.
In summary, for an LTI system with impulse response h[n], the response to an arbitrary input is given by the convolution sum:
x[n]
T

.¸¸.
LTI
y[n] =

k=−∞
x[k] h[n −k] =

k=−∞
x[n −k] h[k]

= x[n] ∗ h[n] = (x ∗ h)[n].
The second equality, which implies that convolution is commutative, it obtained from the first by letting m = n − k so that we
have y[n] =

m
x[n −m] h[m] . Now just replace m with k since it is just a dummy summation argument and any letter (other
than n...) will do.
The convolution sum shows that with the impulse response h[n], you can compute the output y[n] for any input signal x[n]. Thus
A LTI system is characterized completely by its impulse response h[n].
Example. If y[n] = a y[n −1] +x[n], then (later we show that) h[n] = a
n
u[n].
For the input x[n] = u[n], find the output y[n], which is called the unit-step response of the system. Assume a = 1.
First a useful fact.
n

k=0
a
k
=
_
_
_
1 −a
n+1
1 −a
, a = 1
n + 1, a = 1.
Now using the second convolution formula above:
y[n] =

k=−∞
x[n −k] h[k] =

k=−∞
u[n −k] a
k
u[k] =
_
n
k=0
a
k
, n ≥ 0
0, otherwise
=
1 −a
n+1
1 −a
u[n] .
Picture . Inner terms nonzero only where k ≤ n and k ≥ 0, i.e., 0 ≤ k ≤ n. Thus nonzero only if n ≥ 0.
Sometimes the summation limits are less obvious, and one can use the following recipe for convolution. Skill: convolving
• Fold: fold h[k] about k = 0 to get h[−k]
• Shift: shift h[−k] by n to get h[n −k]
• Multiply: x[k] by h[n −k] for every k
• Sum: y[n] =


k=−∞
x[k] h[n −k]
Repeat for all possible n; generally breaks in to a few intervals.
skip Graphically for above example
Fold: h[−k] = a
−k
u[−k]
Shift: h[n −k] = a
n−k
u[n −k]
Multiply: x[k] h[n −k] = u[k] a
n−k
u[n −k], nonzero only for 0 ≤ k ≤ n and hence n ≥ 0.
Sum: (using m = n −k)
n

k=0
a
n−k
=
n

m=0
a
m
=
_
_
_
1 −a
n+1
1 −a
, a = 1
n + 1, a = 1.
u[n]
as before.
Example: h[n] = δ[n −n
0
], showing that y[n] = x[n −n
0
].
What is the system with this impulse response called? A delay or shifter. Picture
c J. Fessler, May 27, 2004, 13:10 (student version) 2.13
2.3.4
Properties of convolution and the interconnection of LTI systems
Skill: Use properties to simplify LTI systems.
Awareness of these properties is necessary for efficient designs.
Support
If x[n] has support n = N
1
, . . . , N
1
+L
1
−1 (length L
1
)
and h[n] has support n = N
2
, . . . , N
2
+L
2
−1 (length L
2
)
then y[n] = x[n] ∗ h[n] has support n = N
1
+N
2
, . . . , N
1
+L
1
−1 +N
2
+L
2
−1 (length L
2
)
What is the duration of y[n]? L = L
1
+L
2
−1
Time-shift
x[n] ∗ h[n] = y[n] =⇒
x[n −n
0
] ∗ h[n] = y[n −n
0
]
x[n −n
1
] ∗ h[n −n
2
] = y[n −n
1
−n
2
]
Commutative law
x[n] ∗ h[n] = h[n] ∗ x[n]
Proof:
x[n] ∗ h[n] =

k=−∞
x[k] h[n −k] =

k

=−∞
x[n −k

] h[k

] = h[n] ∗ x[n],
where k

= n −k.
Associative law
(x[n] ∗ h
1
[n]) ∗ h
2
[n] = x[n] ∗ (h
1
[n] ∗ h
2
[n])
Proof: let y
1
[n] = (x[n] ∗ h
1
[n]) ∗ h
2
[n] and y
2
[n] = x[n] ∗ (h
1
[n] ∗ h
2
[n]).
We must show y
1
[n] = y
2
[n].
y
1
[n] =

k=−∞
(x ∗ h
1
)[n −k] h
2
[k] =

k
_

l
x[l] h
1
[n −k −l]
_
h
2
[k] =

l
x[l]
_

k
h
1
[n −l −k] h
2
[k]
_
=

l
x[l](h
1
∗ h
2
)[n −l] = (x ∗ [h
1
∗ h
2
])[n] = y
2
[n] .
The above laws hold in general for any number of systems connected in series. So the following notation is acceptable:
h[n] = h
1
[n] ∗ h
2
[n] ∗ · · · ∗ h
k
[n] .
In particular:
(x ∗ h
1
) ∗ h
2
= x ∗ (h
1
∗ h
2
)
= x ∗ (h
2
∗ h
1
)
= (x ∗ h
2
) ∗ h
1
,
so the order of serial connection of LTI systems with impulse response h
1
and h
2
does not affect output signal. See picture.
Distributive law
x[n] ∗ (h
1
[n] +h
2
[n]) = (x[n] ∗ h
1
[n]) + (x[n] ∗ h
2
[n])
Proof:
x[n] ∗ (h
1
[n] +h
2
[n]) =

k=−∞
x[n −k] (h
1
[k] +h
2
[k])
=

k=−∞
x[n −k] h
1
[k] +

k=−∞
x[n −k] h
2
[k]
= x[n] ∗ h
1
[n] +x[n] ∗ h
2
[n] .
All of the above follow from simple properties of addition and multiplication due to LTI assumption.
2.14 c J. Fessler, May 27, 2004, 13:10 (student version)
Here are the above properties illustrated with block diagrams.
x[n] → h[n] → y[n]
Commutative
h[n] → x[n] → y[n]
yields same output!
The order of interconnection of systems in series or cascade does not affect the output
2
.
x[n] → h
1
[n] → h
2
[n] → y[n]
Associative
x[n] → h
1
[n] ∗ h
2
[n] → y[n]
Commutative
x[n] → h
2
[n] ∗ h
1
[n] → y[n]
Associative
x[n] → h
2
[n] → h
1
[n] → y[n]
Parallel connection:
x[n]
-
-
h
1
[n]
h
2
[n]
?
6
-
+
y[n]
Distributive: x[n] → h[n] = h
1
[n] +h
2
[n] → y[n]
Example.
x[n] → h
1
[n] = δ[n] −δ[n −1] → h
2
[n] = u[n] → y[n]
Overall impulse response:
h[n] = h
1
[n] ∗ h
2
[n] = (δ[n] −δ[n −1]) ∗ u[n] = u[n] −u[n −1] = δ[n] .
Convolution with impulses
Time shift / delay:
x[n] ∗ δ[n −n
0
] = x[n −n
0
]
Identity:
x[n] ∗ δ[n] = x[n]
Cascade of time shifts:
δ[n −n
1
] ∗ δ[n −n
2
] = δ[n −n
1
−n
2
]
2
This claim only holds for ideal LTI systems based on real numbers. In digital systems where the signal values and filter coefficients are quantized, the order of
interconnection can matter in some cases.
c J. Fessler, May 27, 2004, 13:10 (student version) 2.15
Properties of LTI systems in terms of the impulse response
Since an LTI systemis characterized completely by its impulse response, we should be able to express all of the other four properties
(causality, invertibility, memory, stability) in terms of h[n].
2.3.5 Causal LTI systems
Recall system is causal iff output y[n] depends only on present and past values of input.
For an LTI system with impulse response h[n]:
y[n] =

k=−∞
h[k] x[n −k] =

k=0
h[k] x[n −k] +
−1

k=−∞
h[k] x[n −k] .
The first sum depends on present and past input samples x[n], x[n −1], . . ., whereas the second sum depends on future input
samples x[n + 1], x[n + 1], . . ..
Thus the system is causal iff the impulse response terms corresponding to the second sum is zero.
These terms are h[−1], h[−2], . . ..
An LTI system is causal iff its impulse response h[n] = 0 for all n < 0.
In the causal case the convolution summation simplifies slightly since we can drop the right sum above:
y[n] =

k=0
h[k] x[n −k] =
n

k=−∞
x[k] h[n −k] .
Example. Is the LTI system with h[n] = u[n −n
0
−5] causal? Only if n
0
+ 5 ≥ 0.
A causal sequence is a sequence x[n] which is zero for all n < 0.
If the input to a causal LTI system is a causal sequence, then the output is simply
y[n] =
_
0, n < 0

n
k=0
h[k] x[n −k] =

n
k=0
x[k] h[n −k], n ≥ 0.
The above sum is precisely what is computed by MATLAB’s conv function, for finite-length x[n] and h[n].
Invertibility of LTI systems
Fact: if an LTI system T is invertible, then its corresponding inverse system is also LTI.
(Proof left as an exercise.)
Thus the inverse system has an impulse response, say, h
inv
[n] such that
x[n] → h[n] → h
inv
[n] → x[n] .
In other words: h[n] ∗ h
inv
[n] = δ[n] .
2.16 c J. Fessler, May 27, 2004, 13:10 (student version)
2.3.6
Stability of LTI systems
Recall y[n] =


k=−∞
h[k] x[n −k] so by the triangle inequality
3
|y[n]| =
¸
¸
¸
¸
¸

k=−∞
h[k] x[n −k]
¸
¸
¸
¸
¸

k=−∞
|h[k] x[n −k]| =

k=−∞
|h[k]| |x[n −k]| ≤ M
x

k=−∞
|h[k]|
if |x[n]| ≤ M
x
∀n.
Thus, for an LTI system to be BIBO stable, it is sufficient that its impulse response be absolutely summable, i.e.,

n=−∞
|h[n]| < ∞,
since in that case, if x[n] is bounded, so will be y[n].
It is also necessary for the above summation to be finite! To prove necessity, we construct a counter-example. We show that if
h[n] is not absolutely summable, then we can construct some bounded input signal for which the output is unbounded. A suitable
choice is
x[n] =
_
h

[−n] / |h[−n]| , h[−n] = 0
0, h[−n] = 0,
which is bounded by M
x
= 1. But
y[0] =

k=−∞
h[k] x[−k] =

k=−∞
|h[k]| = ∞
if the impulse response is not absolutely summable, so the output would not be bounded for the specified bounded input signal.
Thus we have shown the following important property.
A LTI system is BIBO stable iff its impulse response is absolutely summable, i.e.,


n=−∞
|h[n]| < ∞.
Example. Accumulator: y[n] = y[n −1] +x[n].
What is impulse response? Let x[n] = δ[n], then y[n] = u[n]. So h[n] = u[n].
Stable? No:


n=−∞
|h[n]| = ∞, so unstable.
One can also show the following for a BIBO stable system (see text).
• The impulse response h[n] goes to zero as n → ∞.
• If the input x[n] has finite duration, then the output y[n] will decay to zero as n → ∞.
2.3.7 Duration of impulse response (the last classification for now)
Two classes of LTI systems.
• finite impulse response or FIR: only a finite number of h[n] are nonzero.
• infinite impulse response or IIR: an infinite number of h[n] are nonzero.
A LTI system is memoryless or static iff its impulse response has the form h[n] = c δ[n] .
3
|a + b| ≤ |a| + |b| or more generally

k
a
k



k
|a
k
| .
c J. Fessler, May 27, 2004, 13:10 (student version) 2.17
2.4
Discrete-time systems described by difference equations
The convolution summation y[n] =


k=−∞
h[k] x[n −k] looks fine on paper, but if the impulse response is IIR, it cannot be
implemented directly with that formula since there would be an infinite number of adds and multiplies!
(And there are many cases where IIR is desirable, e.g., telephone echo cancellation.)
For an arbitrary impulse response h[n], there may not exist an implementation with a finite number of flops. Fortunately however,
there is a broad class of interesting and useful IIR systems that one can implement using difference equations.
Example: Consider LTI system with impulse response h[n] = a
n
u[n]. FIR or IIR? IIR.
Naive approach to implementation would just truncate the infinite sum to m terms (may need large m):
y[n] =

k=−∞
h[k] x[n −k] =

k=0
a
k
x[n −k] ≈ x[n] +a x[n −1] +a
2
x[n −2] +· · · +a
m
x[n −m] .
Efficient approach uses mathematical properties:
y[n] =

k=0
a
k
x[n −k] = x[n] +

k=1
a
k
x[n −k] = x[n] +

l=0
a
l+1
x[n −(l + 1)] = x[n] +a

l=0
a
l
x[(n −1) −l]
= x[n] +a y[n −1],
where l = k − 1. This simple manipulation led to a recursive expression for y[n], and one that is easily implemented using just
one delay, one multiply, and one add. And, it is exact, unlike truncation! block diagram
Difference Equation
Block Diagram System Function
Pole-Zero Plot
Impulse Response
inverse Z, PFE
Z
DTFT
Filter Design
Geometry
Frequency Response
H
(
z
)
=
B
(
z
)
/
A
(
z
)
A
(
z
)
Y
(
z
)
=
B
(
z
)
X
(
z
)
H(z)=Y(z)/X(z)
D
i
r
e
c
t

F
o
r
m

I
,
I
I
I
n
s
p
e
c
t
i
o
n
?
z
,
p
=
r
o
o
t
s
{
b
,
a
}
H
(
z
)
=
(
z
-
z
k
)
/
(
p
-
p
k
)
.
.
.
PSfrag replacements
z = e
ω
x
[
n
]
=
δ
[
n
]
=

y
[
n
]
=
h
[
n
]
b
k
=
h
[
k
]
i
f
F
I
R
Skill: Understand role of each representation in describing system characteristics.
Skill: Convert between various representations of LTI systems described by difference equations
2.18 c J. Fessler, May 27, 2004, 13:10 (student version)
2.4.1
Recursive and nonrecursive discrete-time systems
2.4.2
LTI systems via constant-coefficient difference equations
A realizable system must only require a finite number of operations. A very general form is those systems that can be described by
linear constant-coefficient difference equations:
y[n] = −
N

k=1
a
k
y[n −k] +
M

k=0
b
k
x[n −k] .
Such systems are the discrete-time analog of linear constant-coefficient differential equations for continuous-time systems.
Such systems are linear and time-invariant and causal.
See MATLAB’s y = filter(b,a,x) command.
Example. The accumulator system y[n] = y[n −1] +x[n], where N = 1, a
1
= −1, M = 0, b
0
= 1.
Categories:
If N ≥ 1:
• the current output y[n] depends on past outputs y[n −1], . . . , y[n −N],
• the system is called recursive
• the impulse response is IIR. (Usually we use z-transform to find h[n].)
If N = 0
• the output y[n] depends only on the current input sample and on M past input samples
• the system is called nonrecursive
• the impulse response is FIR and is given by
h[n] =
_
b
0
, b
1
, . . . , b
M
_
=
M

k=0
b
k
δ[n −k] .
2.4.3
Solution of linear constant-coefficient difference equations
The homogeneous solution or zero-input solution is of the form of linear combinations of
_
λ
n
, nλ
n
, . . . n
N
λ
n
_
, analogous to
_
e
λt
, t e
λt
, . . . t
N
e
λt
_
for differential equations, where the λ’s are roots of the characteristic polynomial

N
k=0
a
k
λ
n−k
.
2.4.4
Impulse response of a LTI recursive system
Brute force: let x[n] = δ[n] and execute recursion to find y[n] = h[n]. Easier to study using z-transform. Later...
Summary of difference equations
Main point is recursive implementation with a moderate number of adds and multiplies can yield a broad class of IIR impulse
responses, but not all possible IIR cases.
Filter design is partly about how to make efficient approximations to a desired impulse response! (N and M limited by DSP
processing rate / sampling rate).
flops required: M +N + 1 multiplies, M +N adds, or about 2(M +N) flops
40kHz sampling, 1Mflop DSP, can give 1000/40 = 25 flops per sample, so M +N ≈ 12 is the realizable system order for that chip
TMS 320C67 is 1 Gflop (!)
c J. Fessler, May 27, 2004, 13:10 (student version) 2.19
2.5
Implementation of discrete-time systems
2.5.1
Structures for realization of LTI systems
Example.
y[n] = −a
1
y[n −1] +b
0
x[n] +b
1
x[n −1]
Approach 1:
y[n] = −a
1
y[n −1] +v[n]
v[n] = b
0
x[n] +b
1
x[n −1]
Approach 2:
w[n] = −a
1
w[n −1] +x[n]
y[n] = b
0
w[n] +b
1
w[n −1]
See Fig. 2.2.
Generalizes to higher order systems described by difference equations.
y[n] = −
N

k=1
a
k
y[n −k] +
M

k=0
b
k
x[n −k]
Approach 1:
v[n] =
M

k=0
b
k
x[n −k]
y[n] = −
N

k=1
a
k
y[n −k] +v[n]
The first system v[n] = . . . is nonrecursive, where as the second system is recursive.
See Fig. 2.3.
Approach 2:
w[n] = −
N

k=1
a
k
w[n −k] +x[n]
y[n] =
M

k=0
b
k
w[n −k]
See Fig. 2.4.
2.5.2
Recursive and nonrecursive realization of FIR systems
Any FIR system can be implemented nonrecursively (this is obvious using Direct Form I). However, any FIR system can be also
be implemented recursively, which can sometimes save flops. Book gives example for a moving average system. We will discuss
more later, perhaps.
2.20 c J. Fessler, May 27, 2004, 13:10 (student version)
z
-1
z
-1
z
-1
z
-1
z
-1
Direct Form I
Direct Form II
PSfrag replacements
a
0
b
0
b
0
b
0
b
1
b
1
b
1
b
2
b
M−1
b
M
−a
1
−a
1
−a
1
−a
2
−a
N
−a
N−1
x[n]
x[n]
x[n]
y[n]
y[n]
y[n]
w[n]
w[n]
v[n]
Figure 2.2: Conversion from Form I to Form II.
z
-1
z
-1
z
-1
z
-1
z
-1
Direct Form I
PSfrag replacements
a
0
b
0
b
1
b
2
b
M−1
b
M
−a
1
−a
2
−a
N
−a
N−1
x[n] y[n]
w[n]
v[n]
Figure 2.3: General Direct Form I.
z
-1
z
-1
z
-1
Direct Form II
Example: M=N+1
PSfrag replacements
a
0
b
0
b
1
b
2
b
M−1
b
M
−a
1
−a
2
−a
N −a
N−1
x[n] y[n]
w[n]
v[n]
Figure 2.4: General Direct Form II.
c J. Fessler, May 27, 2004, 13:10 (student version) 2.21
2.7
Summary
Classified signals and systems.
Focus on LTI systems, characterized in terms of impulse response.
Output of a LTI system is convolution of input signal with impulse response function.

2.2

c J. Fessler, May 27, 2004, 13:10 (student version)

Overview • terminology, classes of signals and systems, linearity, time-invariance. impulse response, convolution, difference equations, correlation, analysis ... Much of this chapter parallels 306 for CT signals. Goal: eventually DSP system design; must first learn to analyze! 2.1 Discrete-time signals Our focus: single-channel, continuous-valued signals, namely 1D discrete-time signals x[n]. In mathematical notation we write x : Z → R or x : Z → C • x[n] can be represented graphically by “stem” plot. • x[n] is not defined for noninteger n. (It is not “zero” despite appearance of stem plot.) • We call x[n] the nth sample of the signal. We will also consider 2D discrete-space images x[n, m]. 2.1.1 Some elementary discrete-time signals (important examples) • unit sample sequence or unit impulse or Kronecker delta function (much simpler than the Dirac impulse) Centered: δ[n] = • unit step signal u[n] = 1, 0, n=0 n=0 1, 0, Shifted: δ[n − k] = 1, 0, n=k Picture n=k

n≥0 = {. . . , 0, 0, 1, 1, . . .} n<0

Useful relationship: δ[n] = u[n] − u[n − 1]. This is the discrete-time analog of the continuous-time property of Dirac impulses: d δ(t) = dt u(t). • exponential signal or geometric progression (discrete-time analog of continuous-time e at ) x[n] = an plot for 0 < a < 1 real. See text for other cases. The 2D Kronecker impulse: δ2D [n, m] = δ[n] δ[m] = Signal notation There are several ways to represent discrete-time signals. One way is graphically. Here are five (!) others.   2, 1, δ[n − k] = x[n] = {. . . , 0, 0, 2, 1, 1, . . .} = u[n] + δ[n] = 2 δ[n] + δ[n − 1] + δ[n − 2] + · · · = 2 δ[n] +  0, k=1

1, 0,

n = 0, m = 0 otherwise.

n = 0, n ≥ 1, n < 0.

For a 4-periodic signal we may write {1, 0, 7, 5}4 to denote the signal {. . . , 1, 0, 7, 5, 1, 0, 7, 5, 1, 0, . . .}.

Skill: Convert between different discrete-time signal representations. Skill: Choose representation most appropriate for a given problem. (There are perhaps more viable options than for CT signals.) Example: 1 1 x[n] = {1, 0, 0, 1/2, 0, 0, 1/4, 0, . . .} = δ[n − 0] + δ[n − 3] + δ[n − 6] + · · · = 2 4

k=0

1 2

k

δ[n − 3k] .

In M ATLAB you have two basic choices. • Enumeration: xn = [0 0 1 0 3]; which typically means x[n] = δ[n − 2] +3 δ[n − 5]

Duration The duration or length of a signal is the length of its support interval. We often abbreviate and say simply support or interval instead of support interval. The inline function is also useful. • More precisely the support interval of a continuous-time signal xa (t) is the smallest time interval1 [t1 .c J. b]. b).3 • Signal synthesis: n = [-5:4]. e. Specifically. May 27. closed as in [a. 1 Intervals can be open as in (a. ’n’). and n2 is the smallest integer such that x[n] = 0 for all n > n2 . . n1 + 1. • What is the duration of a discrete-time signal? duration = n2 − n1 + 1. . Some signals have finite duration and others have infinite duration. x = cos(n). which means x[n] = cos(n) for −5 ≤ n ≤ 4 (and x[n] is unspecified outside that range). . or half-open. 2004. Fessler. n2 }.. duration = t2 − t1 . 9} and duration 7. in almost all cases of practical interest. Skill: Efficiently synthesize simple signals in M ATLAB. . half-closed as in (a. The signal x[n] = u[n − 3] − u[n − 7] + δ[n − 5] + δ[n − 9] has support {3.g. t2 ] such that the signal is zero outside this interval. • For continuous-time signals. the support interval is a set of consecutive integers: {n 1 . . . • For a discrete-time signal x[n]. . 13:10 (student version) 2. Support Interval Roughly speaking the support interval of a signal is the set of times such that the signal is not zero. . Signal support characteristics These are signal characteristics related to the time axis. b] and [a. the unit impulse is: imp = inline(’n == 0’. For continuous-time signals. . 4. it is not necessary to distinguish the support interval as being of one type or the other. Example. n1 + 2. b). n1 is the largest integer such that x[n] = 0 for all n < n1 .

2 Example.2.4 c J.Picture 2. . continuous f (t) = g(2t)) Why? e. 0. . 1. (discard every other sample) (cf. 1. If P is finite and nonzero. 1. . . 0. 2.1. . What is E and is x[n] an energy signal? Since P is nonzero. . May 27. . . or to reduce memory. More classifications • x[n] is periodic with period N ∈ N iff x[n + N ] = x[n] ∀n • Otherwise x[n] is aperiodic Fact: N -periodic signals are power signals with P = Symmetry • x[n] is symmetric or even iff x[−n] = x[n] • x[n] is antisymmetric or odd iff x[−n] = − x[n] x[n] xe [n] xo [n] Example. 2. −1. . Fessler. .g.3 Simple manipulations of discrete-time signals • Amplitude modifications • amplitude scaling y[n] = a x[n]. . . 13:10 (student version) 2. 1. 2 We can decompose any signal into even and odd components: = xe [n] + xo [n] 1 = (x[n] + x[−n]) Verify that this is even! 2 1 (x[n] − x[−n]) Verify that this is odd! = 2 (2 u[n] +2 u[−n]) + 1 2 (2 u[n] −2 u[−n]) = (1 + δ[n]) + (u[n − 1] − u[1 − n]) {. . . N 1 N →∞ 2N + 1 52 = lim 52 = 25. 2.} = {. 1. . E is infinite. . The average power of a signal is defined as Px = lim 1 N →∞ 2N + 1 N n=−N |x[n]| . 0.} + {.} . Consider x[n] = 5 (a constant signal). amplitude shift y[n] = x[n] +b • sum of two signals y[n] = x1 [n] + x2 [n] • product of two signals y[n] = x1 [n] x2 [n] • Time modifications • Time shifting y[n] = x[n − k].1. then x[n] is called a power signal. 2. 2004. . Then P = lim • If E is finite (E < ∞) then x[n] is called an energy signal and P = 0. . 1. then P can be either finite or infinite. to reduce CPU time in a preliminary data analysis.. −1. n=−N N →∞ So x[n] is a power signal. • If E is infinite. 2 u[n] = 1 2 1 N N −1 n=0 |x[n]| .2 Classification of discrete-time signals The energy of a discrete-time signal is defined as Ex = n=−∞ ∞ 2 |x[n]| . k can be positive (delayed signal) or negative (advanced signal) if signal stored in a computer • Folding or reflection or time-reversal y[n] = x[−n] • Time-scaling or down-sampling y[n] = x[2n]. .

3 2.6. In addition: • |rxx [l]| ≤ rxx [0] • rxx [0] = Ex 2.5 2. 2004. . No folding! Example applications: time-delay estimation. E x Ey Thus − Autocorrelation Ex Ey ≤ rxy [l] ≤ E x Ey . (A 1999 Mercedes Benz has cruise-control that tracks car in front. ±2. ±1. This is called the Cauchy-Schwarz inequality.6. . • If w[n] = α x[n] then rwy [l] = α rxy [l] skip Proof for real signals: ∞ 0 ≤ = = n=−∞ y[n − l] x[n] √ ± Ex Ey |x[n]| + 2 2 1 Ex ∞ n=−∞ 1 Ey ∞ n=−∞ |y[n − l]| ± 2 2 E x Ey ∞ n=−∞ x[n] y[n − l] 2±2 rxy [l] .) pictures 2. . . . n=−∞ l = 0.c J. . frequency estimation. 13:10 (student version) 2.5 One application: determining period of sinusoidal signal. .6. where l is called the lag. sum. . l = 0.6. ±2. Fessler. multiply. May 27. ±1. .6 Correlation of discrete-time signals 2. The autocorrelation of a signal is the cross correlation of the signal with itself: ∞ ∞ rxx [l] = n=−∞ x[n] x∗ [n − l] = n=−∞ x[n + l] x∗ [n].6. It inherits the properties of cross correlation.1 Cross-correlation sequences The cross correlation of signals x[n] and y[n] is ∞ ∞ rxy [l] = n=−∞ x[n] y ∗ [n − l] = x[n + l] y ∗ [n]. Recipe is almost the same as for convolution: shift.4 2.2 Properties of cross correlation ∗ • rxy [l] = ryx [−l] (called conjugate symmetry or Hermitian symmetry) • rxy [l] = x[l] ∗ y ∗ [−l] ∞ 2 • |rxy [l]| ≤ Ex Ey where Ex = n=−∞ |x[n]| is the signal energy.

May 27. 13:10 (student version) 1. Fessler.5 1 0.5 −1 −1.2.5 Noiseless Periodic Signal x(n) 100 Autocorrelation rxx(l) of a Noiseless Periodic Signal 50 r (l) 0 20 40 n 60 80 0 −50 −100 −100 x(n) −0. . 2004.5 xx 0 −50 0 l yy 50 100 4 2 0 −2 −4 Noisy Periodic Signal y(n) Autocorrelation r (l) of a Noisy Signal 200 150 100 r (l) 50 0 −50 −100 yy y(n) 0 20 40 n 60 80 −150 −100 −50 0 l 50 100 Figure 2.6 c J.1: Example of autocorrelation of a periodic signal with a noisy signal having the same dominant frequency component.

1. 0. The reader must understand that in general y[n] is a function of the entire sequence {x[n]}. 0. fee. .1(f) on p. The notation y[n] = T {x[n]} is mathematically vague. 1. 2. Input Signal Output Signal → Discrete-time system → x[n] y[n] 2.2.58 has error. 0.c J.2. n n−1 Alternative expression: y[n] = k=−∞ x[k] = k=−∞ x[k] + x[n] = y[n − 1] + x[n] Example. Interest-bearing checking account with monthly fee: y[n] = 1. One way is by its input-output relationship.} . . . Example. n y[n] = k=−∞ x[k] = x[n] + x[n − 1] + x[n − 2] + · · · x[n] = u[n] − u[n − 3] = {. • Difference equation • Impulse response • System function • pole-zero plot • Frequency response . x(n) 0. 0. . How are delays implemented? With buffers / latches / flip-flops. The input signal x[n] is transformed by the system into a signal y[n]. a system is also a function. The field of “Systems” deals with mathematical modeling of (more or less) “physical” things. each delay element requires 1 signal sample worth of memory (to store each sample until the next arrives).} y[n] = {. . . Other representations to be discussed later (mostly for LTI systems). not just the single time point x[n].01 y[n − 1] + x[n] −2 u[n] . .7 2. .1 Input-output description of systems A discrete-time system can be described in many ways. 0. operates on a discrete-time signal called the input signal or excitation to produce another discrete-time signal called the output signal or response. Fessler. 3. . The accumulator system. 1. Why the u[n]? Notice the relevant “physical” quantities (interest rate. 1. May 27. Mathematically speaking.5 x(n) adder constant multiplier signal multiplier unit delay element (why z −1 clear later) In real-time hardware. 3.5 y(n) z −1 y(n−1) x(n−1) z −1 • • • • y(n) = y(n−1) x(n−1) + 0. Example 2. . which we express mathematically as T y[·] = T {x[·]} or y[n] = T {x[·]}[n] or x[·] → y[·] . according to some well-defined rule. .2 Block diagram representation of discrete-time systems Example. 13:10 (student version) 2. which is a formula expressing the output signal in terms of the input signal. . 0. 2004. balance) are captured in this mathematical expression.2.2 Discrete-time systems A discrete-time system is a device or algorithm that. read about initial condition and initially relaxed 2.

} where F {·} is any function. Example: y[n] = ex[n] / n − 2. • If y2 [n] = y1 [n − k]. Time invariance Systems whose input-output behavior does not change with time are called time-invariant and will be our focus Why? “Easier” to analyze. Simple counterexample all that is needed. A relaxed system T is called time invariant or shift invariant iff x[n] → y[n] implies that x[n − k] → y[n − k] for every input signal x[n] and integer time shift k. Time invariant? no.) • Determine output y1 [n] due to a generic input x1 [n]. x[n − 2]. . 3 . the output y[n] at any time n depends only on the “present” and “past” inputs i. But dynamic systems can be causal or noncausal. (This time we take the more complicated choice!) Is a memoryless system necessarily causal? Yes. If x[n] = δ[n − 1] then y[n] = 0 = δ[n − 1]. 1 • Output due to x1 [n] is y1 [n] = 3 (x1 [n − 1] + x1 [n] + x1 [n + 1]) . Dynamic systems are the interesting ones and will be our focus. Time-invariance is a desired property of many systems. Fessler. 13:10 (student version) 2. How do we show lack of a property? Find counter-example. x[n − 1]. We will focus on time-invariant systems. • Determine output y2 [n] due to input x2 [n] = x1 [n − k].g. the system is time-invariant. . • Output due to shifted input x2 [n] = x1 [n − k] is 1 y2 [n] = 3 (x2 [n − 1] + x2 [n] + x2 [n + 1]) = 1 (x1 [n − k − 1] + x1 [n − k] + x1 [n − k + 1]) 3 • Since y1 [n − k] = 1 (x1 [n − k − 1] + x1 [n − k] + x1 [n − k + 1]) = y2 [n]. Graphically: x[n] x[n] → → delay z −k → system T → y[n] system T → delay z −k → y[n] T T Recipe for showing time-invariance. 1 Example: 3-point moving average y[n] = 3 (x[n − 1] + x[n] + x[n + 1]) . k) notation. Time properties (causality. time invariance) Causality For a causal system. memory. image processing (OCR) or restoration of analog audio recordings. but many DSP problems involved stored data. Causality is necessary for real-time implementation. If x[n] = δ[n] then y[n] = δ[n]. (This method avoids potentially confusing y(n.3 Classification of discrete-time systems Skill: Determining classifications of a given DT system Two general aspects to categorize: time properties and amplitude properties. Time invariant? yes.2. Memory • For a static system or memoryless system. not on previous or future √ inputs. Otherwise the system is called time variant or shift variant. e. 2004. the output y[n] depends only on the current input x[n]. . May 27. • Otherwise it is a dynamic system and must have memory. Otherwise noncausal system. then system is time-invariant. Example: down-sampler y[n] = x[2n].8 c J.2... y[n] = F {x[n].e.

linearity) Invertibility A system T is invertible if every output signal corresponds to a unique input signal.t. Why linearity? • The class of linear systems is easier to analyze. and constants a1 and a2 . x[m1 (n)].} ∀n. Example: accumulator y[n] = y[n − 1] + x[n]. x[m1 (n) − k]. x2 [n]. −1 Linearity We will also focus on linear systems.e. |x[n]| ≤ Mx < ∞ ∀n. x[m1 (n − k)]. 13:10 (student version) 2. A system T is linear iff T {a1 x1 [n] +a2 x2 [n]} = a1 T {x1 [n]} +a2 T {x2 [n]}. Fessler. invertibility. .avoids distortions. then the system is time-invariant iff for any signal x[n]: F {n − k. The left side is “shifting the output” whereas the right side is “shifting the input. which is bounded by M x = 1. .t. 2004. Stability A system is bounded-input bounded-output (BIBO) stable iff every bounded input produces a bounded output. . Otherwise the system is called nonlinear. • Many nonlinear systems are approximately linear.c J. May 27. But y[n] = n + 1 + y[−1] blows up. then there exists an inverse system T that can recover the input signal: x[n] → T → y[n] → T −1 → x[n] . x[m2 (n) − k].” “Amplitude” properties (stability. We will derive tests for invertibility later. T . so the accumulator is an unstable system..9 skip Here is another mathematical way of expressing time invariance. |y[n]| ≤ My < ∞ ∀n. . . a1 x1 [n] +a2 x2 [n] → a1 y1 [n] +a2 y2 [n]. Consider input signal x[n] = u[n]. If so. x[m2 (n − k)]. Usually My will depend on Mx . i. k ∈ Z.} = F {n. for any signals x1 [n]. . . . x[m2 (n)]. If y[n] = F {n. so first-order analysis is linear case. If ∃Mx s.} for some functions mj : Z → Z. • Often linearity is desirable . . We will derive a simple test for BIBO stability shortly. then there must exist an My s.

• “Repeat” for input x2 [n] and y2 [n]. where y[n] = k=−∞ x[k]. 2. ∀n. Then y1 [n] = 2. and for any constants a1 and a2 . Fessler. • scaling property: T {a x[n]} = aT [x[n]] Note that from a = 0 we see that zero input signal implies zero output signal for a linear system. all that is needed is a counter-example to the above properties. Method: • Find output signal y1 [n] for a general input signal x1 [n]. We assume the superposition summation holds even for infinite sums without further comment in this course. for all input signals x1 [n] and x2 [n].2. Since this holds for all n. Let x1 [n] = 2.3. The scaling √ property will usually suffice. Example: To show that y[n] = x[n] is nonlinear. • If y[n] = a1 y1 [n] +a2 y2 [n]. In words: the response of a linear system to the sum of several signals is the sum of the response to each of the signals.4 . one can easily extend this property to the general superposition property: K K T xk [n] = k=1 k=1 T {xk [n]} . then the n n n y[n] = k=−∞ x[n] = k=−∞ (a1 x1 [n] +a2 x2 [n]) = a1 k=−∞ x1 [n] +a2 k=−∞ x2 [n] = a1 y1 [n] +a2 y2 [n] . so the system is nonlinear.4 Interconnection of discrete-time systems skip essentially repeated in 2. the accumulator is linear. • additivity property: T {x1 [n] + x2 [n]} = T {x1 [n]} + T {x2 [n]} Using proof-by-induction. Now suppose the input is x[n] = 3 x1 [n] = 6. y1 [n] = output is n x1 [n] and y2 [n] = n k=−∞ x2 [n]. additional continuity assumptions are required. If the input is x[n] = a1 x1 [n] +a2 x2 [n].10 c J.2. Example: Proof that the accumulator is a linear system. a constant signal. 2004. √ then the output is y[n] = 6 = 3 y1 [n]. then the system is linear. 13:10 (student version) Block diagram illustration of linearity test. • Find output signal y[n] when input signal is x[n] = a1 x1 [n] +a2 x2 [n] . n k=−∞ n For the accumulator. x1 [n] a1 T x2 [n] PSfrag replacements x1 [n] a2 a1 y[n] T y[n] x2 [n] T a2 Two important special cases of linearity property. May 27. In general superposition need not hold for infinite sums.

the overall response is the sum of the contributions due to each input sample. 0. 7 =⇒ x[n] = 8 δ[n − 0] +π δ[n − 1] + 7 δ[n − 3] . k Thus we have proven the superposition summation for any linear system T : ∞ x[n] → y[n] = Linear T x[k] hk [n] .3. x[n] = k ck xk [n] • Determine response of system to each elementary function (this should be easy from input-output relationship): xk [n] → yk [n] • Apply superposition property: x[n] = k T ck xk [n] → y[n] = T ck yk [n] .3 Response of LTI systems to arbitrary inputs: the convolution sum Define the special symbol hk [n] to denote the system output when the input is δ[n − k]. For a given system can compute y[n] for selected x[n]’s. Time-invariance then further simplifies. For a linear system. i. Now use superposition to determine the response to a general input signal x[n]: x[n] = k T x[k] δ[n − k] → y[n] = T x[k] hk [n] . δ[n − k] → hk [n] . 13:10 (student version) 2.c J. 2. x[n] = 8. May 27.. Every input sample that comes into the system causes the system to respond.1 Techniques for the analysis of linear systems General strategy: • Decompose input signal x[n] into a weighted sum of elementary functions x k [n]. Linearity leads to the above superposition property. k Two particularly good choices for the elementary functions xk [n]: • impulse functions δ[n − k] • complex exponentials eωk n (later).3. In words: hk [n] is the response to an impulse at the kth sample. √ √ Example.3.. π. . 2. k=−∞ In words: overall output is weighted sum of response due to kth sample.e.e. Fessler. 2004. This is the sifting property of the unit impulse function. 2. which simplifies the analysis.3 Analysis of discrete-time linear time-invariant systems (Our focus is LTI hereafter) Why analysis? So far we only have input-output relationships. Overview: x[n] → LTI h[n] → y[n] = x[n] ∗ h[n]. but very difficult to design filters etc. i.11 2.2 Resolution of discrete-time signal into impulses It follows directly from the definition of δ[n] that ∞ x[n] = k=−∞ x[k] δ[n − k] . by such trial-and-error.

m=0 k=0 as before. We call h[n] the impulse response of the system. a = 1  n +− a 1. which is called the unit-step response of the system. If y[n] = a y[n − 1] + x[n]. so we drop it and just write h[n − k] instead. Sum: (using m = n − k)  n n  1 − an+1 . 2004. Sometimes the summation limits are less obvious. you can compute the output y[n] for any input signal x[n].e. Example. Thus A LTI system is characterized completely by its impulse response h[n]. i. then (later we show that) h[n] = an u[n]. which implies that convolution is commutative. 0 ≤ k ≤ n. Example: h[n] = δ[n − n0 ]. Fessler. If the system is time-invariant. a = 1. Repeat for all possible n... The “0” subscript is redundant. The second equality. the response to an arbitrary input is given by the convolution sum: ∞ ∞ x[n] → y[n] = LTI T k=−∞ x[k] h[n − k] = k=−∞ x[n − k] h[k] = x[n] ∗ h[n] = (x ∗ h)[n]. nonzero only for 0 ≤ k ≤ n and hence n ≥ 0. 0. Assume a = 1.2. generally breaks in to a few intervals. Now just replace m with k since it is just a dummy summation argument and any letter (other than n. Skill: convolving • Fold: fold h[k] about k = 0 to get h[−k] • Shift: shift h[−k] by n to get h[n − k] • Multiply: x[k] by h[n − k] for every k ∞ • Sum: y[n] = k=−∞ x[k] h[n − k] skip Graphically for above example Fold: h[−k] = a−k u[−k] Shift: h[n − k] = an−k u[n − k] Multiply: x[k] h[n − k] = u[k] an−k u[n − k]. a = 1 Now using the second convolution formula above: k First a useful fact. Thus nonzero only if n ≥ 0. a = 1 u[n] m n−k a = a = 1  n +− a 1. Thus. Inner terms nonzero only where k ≤ n and k ≥ 0. May 27. In summary. Picture . and one can use the following recipe for convolution. it obtained from the first by letting m = n − k so that we have y[n] = m x[n − m] h[m] . for a LTI system: h k [n] = h0 [n − k] Thus for time-invariant linear systems. then the response to a delayed impulse δ[n − k] is just a delayed version of the response to an impulse at time 0: δ[n]. k=0 ∞ ∞ y[n] = k=−∞ x[n − k] h[k] = k=−∞ u[n − k] ak u[k] = n k=0 ak . The convolution sum shows that with the impulse response h[n].) will do. the superposition summation becomes ∞ y[n] = k=−∞ x[k] h0 [n − k] . a = 1. 1 − an+1 n≥0 = u[n] . 13:10 (student version) We have not yet used time-invariance. For the input x[n] = u[n]. showing that y[n] = x[n − n0 ]. otherwise 1−a Picture . find the output y[n].  n  1 − an+1 . What is the system with this impulse response called? A delay or shifter.12 c J.. for an LTI system with impulse response h[n].

N1 + L1 − 1 (length L1 ) and h[n] has support n = N2 . . . . ∞ y1 [n] = k=−∞ (x ∗ h1 )[n − k] h2 [k] = k l x[l] h1 [n − k − l] h2 [k] = x[l] l k h1 [n − l − k] h2 [k] = l x[l](h1 ∗ h2 )[n − l] = (x ∗ [h1 ∗ h2 ])[n] = y2 [n] . 13:10 (student version) 2. . Support If x[n] has support n = N1 .4 Properties of convolution and the interconnection of LTI systems Skill: Use properties to simplify LTI systems. May 27. . N1 + L1 − 1 + N2 + L2 − 1 (length L2 ) What is the duration of y[n]? L = L1 + L2 − 1 Time-shift x[n] ∗ h[n] = y[n] Commutative law Proof: x[n] ∗ h[n] = where k = n − k. .13 2. So the following notation is acceptable: h[n] = h1 [n] ∗ h2 [n] ∗ · · · ∗ hk [n] . We must show y1 [n] = y2 [n]. All of the above follow from simple properties of addition and multiplication due to LTI assumption. Associative law (x[n] ∗ h1 [n]) ∗ h2 [n] = x[n] ∗ (h1 [n] ∗ h2 [n]) x[n] ∗ h[n] = h[n] ∗ x[n] ∞ ∞ =⇒ x[n − n0 ] ∗ h[n] = y[n − n0 ] x[n − n1 ] ∗ h[n − n2 ] = y[n − n1 − n2 ] k=−∞ x[k] h[n − k] = k =−∞ x[n − k ] h[k ] = h[n] ∗ x[n]. . 2004.c J. See picture. . N2 + L2 − 1 (length L2 ) then y[n] = x[n] ∗ h[n] has support n = N1 + N2 . In particular: (x ∗ h1 ) ∗ h2 = = = x ∗ (h1 ∗ h2 ) x ∗ (h2 ∗ h1 ) (x ∗ h2 ) ∗ h1 .3. . . . so the order of serial connection of LTI systems with impulse response h1 and h2 does not affect output signal. Distributive law Proof: x[n] ∗ (h1 [n] + h2 [n]) = (x[n] ∗ h1 [n]) + (x[n] ∗ h2 [n]) ∞ x[n] ∗ (h1 [n] + h2 [n]) = k=−∞ ∞ x[n − k] (h1 [k] + h2 [k]) ∞ = k=−∞ x[n − k] h1 [k] + k=−∞ x[n − k] h2 [k] = x[n] ∗ h1 [n] + x[n] ∗ h2 [n] . The above laws hold in general for any number of systems connected in series. . Proof: let y1 [n] = (x[n] ∗ h1 [n]) ∗ h2 [n] and y2 [n] = x[n] ∗ (h1 [n] ∗ h2 [n]). Awareness of these properties is necessary for efficient designs. . Fessler.

Associative Commutative Associative x[n] → h1 [n] → h2 [n] → y[n] x[n] → h1 [n] ∗ h2 [n] → y[n] x[n] → h2 [n] ∗ h1 [n] → y[n] x[n] → h2 [n] → h1 [n] → y[n] Parallel connection: x[n] h2 [n] h1 [n] ? + 6 . the order of interconnection can matter in some cases. Convolution with impulses Time shift / delay: x[n] ∗ δ[n − n0 ] = x[n − n0 ] Identity: x[n] ∗ δ[n] = x[n] Cascade of time shifts: δ[n − n1 ] ∗ δ[n − n2 ] = δ[n − n1 − n2 ] 2 This claim only holds for ideal LTI systems based on real numbers. . Commutative x[n] → h[n] → y[n] h[n] → x[n] → y[n] yields same output! The order of interconnection of systems in series or cascade does not affect the output 2 . Fessler.2. In digital systems where the signal values and filter coefficients are quantized.y[n] Distributive: x[n] → h[n] = h1 [n] + h2 [n] → y[n] Example. 2004.14 c J. 13:10 (student version) Here are the above properties illustrated with block diagrams. x[n] → h1 [n] = δ[n] − δ[n − 1] → h2 [n] = u[n] → y[n] Overall impulse response: h[n] = h1 [n] ∗ h2 [n] = (δ[n] − δ[n − 1]) ∗ u[n] = u[n] − u[n − 1] = δ[n] . May 27.

2004. For an LTI system with impulse response h[n]: ∞ ∞ −1 y[n] = k=−∞ h[k] x[n − k] = k=0 h[k] x[n − k] + k=−∞ h[k] x[n − k] . In other words: h[n] ∗ hinv [n] = δ[n] . Example. stability) in terms of h[n].c J. . x[n − 1]. If the input to a causal LTI system is a causal sequence.. Fessler. invertibility. .. .3. n<0 n ≥ 0.15 Properties of LTI systems in terms of the impulse response Since an LTI system is characterized completely by its impulse response. The first sum depends on present and past input samples x[n]. . . hinv [n] such that x[n] → h[n] → hinv [n] → x[n] . A causal sequence is a sequence x[n] which is zero for all n < 0. say. The above sum is precisely what is computed by M ATLAB’s conv function.5 Causal LTI systems Recall system is causal iff output y[n] depends only on present and past values of input. . . May 27. we should be able to express all of the other four properties (causality. Invertibility of LTI systems Fact: if an LTI system T is invertible. then the output is simply y[n] = 0. 13:10 (student version) 2.. 2. These terms are h[−1]. then its corresponding inverse system is also LTI. In the causal case the convolution summation simplifies slightly since we can drop the right sum above: ∞ n y[n] = k=0 h[k] x[n − k] = k=−∞ x[k] h[n − k] . h[−2]. . (Proof left as an exercise. . n k=0 h[k] x[n − k] = n k=0 x[k] h[n − k]. Thus the system is causal iff the impulse response terms corresponding to the second sum is zero. for finite-length x[n] and h[n].) Thus the inverse system has an impulse response. x[n + 1]. whereas the second sum depends on future input samples x[n + 1]. . Is the LTI system with h[n] = u[n − n0 − 5] causal? Only if n0 + 5 ≥ 0. An LTI system is causal iff its impulse response h[n] = 0 for all n < 0. memory.

+ b| ≤ |a| + |b| or more generally k ak ≤ k |ak | . 2004. ∞ n=−∞ |h[n]| < ∞. So h[n] = u[n]. so unstable.. since in that case. h[−n] = 0 x[n] = 0. if x[n] is bounded.3.2. then y[n] = u[n]. • If the input x[n] has finite duration. Fessler. .6 Stability of LTI systems Recall y[n] = ∞ k=−∞ h[k] x[n − k] so by the triangle inequality3 ∞ ∞ ∞ ∞ |y[n]| = if |x[n]| ≤ Mx ∀n. h[−n] = 0.e.3. What is impulse response? Let x[n] = δ[n]. A LTI system is BIBO stable iff its impulse response is absolutely summable. Thus we have shown the following important property. then the output y[n] will decay to zero as n → ∞. 3 |a (the last classification for now) A LTI system is memoryless or static iff its impulse response has the form h[n] = c δ[n] . 13:10 (student version) 2. May 27. which is bounded by Mx = 1. It is also necessary for the above summation to be finite! To prove necessity.. for an LTI system to be BIBO stable. • The impulse response h[n] goes to zero as n → ∞. Accumulator: y[n] = y[n − 1] + x[n]. so the output would not be bounded for the specified bounded input signal. • infinite impulse response or IIR: an infinite number of h[n] are nonzero. ∞ Stable? No: n=−∞ |h[n]| = ∞.16 c J. i. We show that if h[n] is not absolutely summable. One can also show the following for a BIBO stable system (see text). But y[0] = k=−∞ ∞ ∞ h[k] x[−k] = k=−∞ |h[k]| = ∞ if the impulse response is not absolutely summable. then we can construct some bounded input signal for which the output is unbounded.7 Duration of impulse response Two classes of LTI systems. Example. • finite impulse response or FIR: only a finite number of h[n] are nonzero. A suitable choice is h∗ [−n] / |h[−n]| . we construct a counter-example. ∞ n=−∞ |h[n]| < ∞. k=−∞ h[k] x[n − k] ≤ k=−∞ |h[k] x[n − k]| = k=−∞ |h[k]| |x[n − k]| ≤ Mx k=−∞ |h[k]| Thus. 2.e. i. it is sufficient that its impulse response be absolutely summable. so will be y[n].

And. Fortunately however.. where l = k − 1. but if the impulse response is IIR. Skill: Convert between various representations of LTI systems described by difference equations . there may not exist an implementation with a finite number of flops. one multiply. there is a broad class of interesting and useful IIR systems that one can implement using difference equations. and one that is easily implemented using just one delay.c J. May 27. Efficient approach uses mathematical properties: ∞ ∞ ∞ ∞ y[n] = k=0 ak x[n − k] = x[n] + k=1 ak x[n − k] = x[n] + l=0 al+1 x[n − (l + 1)] = x[n] +a l=0 al x[(n − 1) − l] = x[n] +a y[n − 1]. it is exact. and one add. 13:10 (student version) 2.I I H(z)=B(z)/A(z) Di δ [n ]= ⇒ bk Fo = ct k h[ n? y[ n] = re ]i fF IR ec h[ n] tio Block Diagram H(z)=Y(z)/X(z) In inverse Z.4 Discrete-time systems described by difference equations The convolution summation y[n] = k=−∞ h[k] x[n − k] looks fine on paper.) For an arbitrary impulse response h[n]. Fessler. Naive approach to implementation would just truncate the infinite sum to m terms (may need large m): ∞ ∞ ∞ y[n] = k=−∞ h[k] x[n − k] = k=0 ak x[n − k] ≈ x[n] +a x[n − 1] +a2 x[n − 2] + · · · + am x[n − m] . telephone echo cancellation. PFE sp System Function Z Impulse Response H(z)=(z-zk)/(p-pk). This simple manipulation led to a recursive expression for y[n]..g.p=roots{b.17 2. 2004. z.. Example: Consider LTI system with impulse response h[n] = an u[n].a} z = eω DTFT PSfrag replacements Geometry Pole-Zero Plot Frequency Response Filter Design Skill: Understand role of each representation in describing system characteristics. it cannot be implemented directly with that formula since there would be an infinite number of adds and multiplies! (And there are many cases where IIR is desirable. FIR or IIR? IIR. e. unlike truncation! block diagram Difference Equation rm x[ n] = A(z)Y(z)=B(z)X(z) I.

a1 = −1. . bM = k=0 bk δ[n − k] . . .3 Solution of linear constant-coefficient difference equations The homogeneous solution or zero-input solution is of the form of linear combinations of λn . t eλt . where the λ’s are roots of the characteristic polynomial k=0 ak λn−k . Such systems are the discrete-time analog of linear constant-coefficient differential equations for continuous-time systems.4. .18 c J. • the system is called recursive • the impulse response is IIR. 1Mflop DSP. Example. nN λn . .) If N = 0 • the output y[n] depends only on the current input sample and on M past input samples • the system is called nonrecursive • the impulse response is FIR and is given by M h[n] = b0 . can give 1000/40 = 25 flops per sample. Categories: If N ≥ 1: • the current output y[n] depends on past outputs y[n − 1].2. . Summary of difference equations Main point is recursive implementation with a moderate number of adds and multiplies can yield a broad class of IIR impulse responses. . A very general form is those systems that can be described by linear constant-coefficient difference equations: N M y[n] = − k=1 ak y[n − k] + k=0 bk x[n − k] . b0 = 1.4.x) command. Fessler. Filter design is partly about how to make efficient approximations to a desired impulse response! (N and M limited by DSP processing rate / sampling rate). May 27. .a. . where N = 1.4. flops required: M + N + 1 multiplies. (Usually we use z-transform to find h[n]. 13:10 (student version) 2.1 Recursive and nonrecursive discrete-time systems 2. . See M ATLAB’s y = filter(b. . Easier to study using z-transform. or about 2(M + N ) flops 40kHz sampling. so M + N ≈ 12 is the realizable system order for that chip TMS 320C67 is 1 Gflop (!) . . Later.2 LTI systems via constant-coefficient difference equations A realizable system must only require a finite number of operations. M + N adds. 2. nλn . y[n − N ]. The accumulator system y[n] = y[n − 1] + x[n].4. M = 0. b1 .4 Impulse response of a LTI recursive system Brute force: let x[n] = δ[n] and execute recursion to find y[n] = h[n]. 2004. Such systems are linear and time-invariant and causal. tN eλt for differential equations. 2. analogous to N eλt .. but not all possible IIR cases.. . .

c J. is nonrecursive. any FIR system can be also be implemented recursively.2 Recursive and nonrecursive realization of FIR systems Any FIR system can be implemented nonrecursively (this is obvious using Direct Form I). However.5. . See Fig. .4. where as the second system is recursive. Approach 2: N w[n] = − k=1 ak w[n − k] + x[n] M y[n] See Fig. Book gives example for a moving average system. Generalizes to higher order systems described by difference equations.2.19 2. perhaps. 2. We will discuss more later. 2.5 Implementation of discrete-time systems 2.3. . Approach 1: y[n] = −a1 y[n − 1] +b0 x[n] +b1 x[n − 1] y[n] v[n] Approach 2: w[n] y[n] See Fig. = k=0 bk w[n − k] 2. May 27. Fessler. 2004. 2. which can sometimes save flops.5. 13:10 (student version) 2. N M = = −a1 y[n − 1] + v[n] b0 x[n] +b1 x[n − 1] = = b0 w[n] +b1 w[n − 1] −a1 w[n − 1] + x[n] y[n] = − Approach 1: k=1 ak y[n − k] + k=0 bk x[n − k] M v[n] = k=0 bk x[n − k] ak y[n − k] + v[n] N y[n] = − k=1 The first system v[n] = .1 Structures for realization of LTI systems Example.

4: General Direct Form II.2: Conversion from Form I to Form II. 2004. Fessler.2. .3: General Direct Form I.20 c J. 13:10 (student version) Direct Form I x[n] z -1 v[n] b0 z -1 y[n] Direct Form I x[n] z -1 v[n] b0 z -1 y[n] rag replacements a0 b1 x[n] z -1 −a1 w[n] b0 z -1 PSfrag replacements y[n] a0 z -1 b1 −a1 b2 bM −1 bM −a2 −aN −aN −1 x[n] −a1 w[n] b0 z -1 b1 y[n] −a2 b2 −aN −1 z -1 bM −1 b1 z -1 −aN Direct Form II −a1 w[n] bM Figure 2. May 27. Figure 2. x[n] z w[n] b0 -1 y[n] PSfrag replacements a0 −a1 z -1 b1 −a2 b2 −aN −1 Direct Form II −aN z -1 bM −1 v[n] Example: M=N+1 bM Figure 2.

7 Summary Classified signals and systems.c J. 13:10 (student version) 2. . characterized in terms of impulse response. May 27. 2004. Output of a LTI system is convolution of input signal with impulse response function. Fessler. Focus on LTI systems.21 2.

Sign up to vote on this title
UsefulNot useful