4: Linear Time Invariant Systems

advertisement
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
4: Linear Time Invariant Systems
LTI Systems: 4 – 1 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Linear Time-invariant (LTI) systems have two properties:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
The behaviour of an LTI system is completely defined by its impulse
response: h[n] = H (δ[n])
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
The behaviour of an LTI system is completely defined by its impulse
response: h[n] = H (δ[n])
Proof:
P∞
We can always write x[n] =
r=−∞ x[r]δ[n − r]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
The behaviour of an LTI system is completely defined by its impulse
response: h[n] = H (δ[n])
Proof:
P∞
We can always write x[n] =
r=−∞ x[r]δ[n − r]
Hence
DSP and Digital Filters (2015-6724)
H (x[n]) = H
P∞
r=−∞ x[r]δ[n
− r]
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
The behaviour of an LTI system is completely defined by its impulse
response: h[n] = H (δ[n])
Proof:
P∞
We can always write x[n] =
r=−∞ x[r]δ[n − r]
Hence
DSP and Digital Filters (2015-6724)
P∞
H (x[n]) = H
r=−∞ x[r]δ[n − r]
P
= ∞
r=−∞ x[r]H (δ[n − r])
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
The behaviour of an LTI system is completely defined by its impulse
response: h[n] = H (δ[n])
Proof:
P∞
We can always write x[n] =
r=−∞ x[r]δ[n − r]
Hence
DSP and Digital Filters (2015-6724)
P∞
H (x[n]) = H
r=−∞ x[r]δ[n − r]
P
= ∞
r=−∞ x[r]H (δ[n − r])
P
= ∞
r=−∞ x[r]h[n − r]
LTI Systems: 4 – 2 / 14
LTI Systems
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Linear Time-invariant (LTI) systems have two properties:
Linear: H (αu[n] + βv[n]) = αH (u[n]) + βH (v[n])
Time Invariant: y[n] = H (x[n]) ⇒ y[n − r] = H (x[n − r]) ∀r
The behaviour of an LTI system is completely defined by its impulse
response: h[n] = H (δ[n])
Proof:
P∞
We can always write x[n] =
r=−∞ x[r]δ[n − r]
Hence
P∞
H (x[n]) = H
r=−∞ x[r]δ[n − r]
P
= ∞
r=−∞ x[r]H (δ[n − r])
P
= ∞
r=−∞ x[r]h[n − r]
= x[n] ∗ h[n]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 2 / 14
Convolution Properties
4: Linear Time Invariant
Systems
Convolution: x[n] ∗ v[n] =
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
P∞
r=−∞ x[r]v[n
− r]
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
P∞
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
P∞
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
P∞
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
⇒ x[n] ∗ v[n] ∗ w[n] is unambiguous
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
⇒ x[n] ∗ v[n] ∗ w[n] is unambiguous
Proof:
DSP and Digital Filters (2015-6724)
P
r,s
(i)
P
x[n − r]v[r − s]w[s] = p,q x[p]v[q − p]w[n − q]
(i) substitute p = n − r , q = n − s
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
⇒ x[n] ∗ v[n] ∗ w[n] is unambiguous
Proof:
P
r,s
(i)
P
x[n − r]v[r − s]w[s] = p,q x[p]v[q − p]w[n − q]
(i) substitute p = n − r , q = n − s
Distributive over +:
x[n] ∗ (αv[n] + βw[n]) = (x[n] ∗ αv[n]) + (x[n] ∗ βw[n])
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
⇒ x[n] ∗ v[n] ∗ w[n] is unambiguous
Proof:
P
r,s
(i)
P
x[n − r]v[r − s]w[s] = p,q x[p]v[q − p]w[n − q]
(i) substitute p = n − r , q = n − s
Distributive over +:
x[n] ∗ (αv[n]
P + βw[n]) = (x[n] ∗ αv[n]) + (x[n] ∗ βw[n])
Proof:
r x[n − r] (αv[r]
P + βw[r]) =
P
α r x[n − r]v[r] + β r x[n − r]w[r]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
⇒ x[n] ∗ v[n] ∗ w[n] is unambiguous
Proof:
P
r,s
(i)
P
x[n − r]v[r − s]w[s] = p,q x[p]v[q − p]w[n − q]
(i) substitute p = n − r , q = n − s
Distributive over +:
x[n] ∗ (αv[n]
P + βw[n]) = (x[n] ∗ αv[n]) + (x[n] ∗ βw[n])
Proof:
r x[n − r] (αv[r]
P + βw[r]) =
P
α r x[n − r]v[r] + β r x[n − r]w[r]
Identity: x[n] ∗ δ[n] = x[n]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 3 / 14
Convolution Properties
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Convolution: x[n] ∗ v[n] =
r=−∞ x[r]v[n
− r]
Convolution obeys normal arithmetic rules for multiplication:
Commutative: x[n] ∗ v[n] = v[n] ∗ x[n]
Proof:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
P∞
P
r
(i)
P
x[r]v[n − r] = p x[n − p]v[p]
(i) substitute p = n − r
Associative: x[n] ∗ (v[n] ∗ w[n]) = (x[n] ∗ v[n]) ∗ w[n]
⇒ x[n] ∗ v[n] ∗ w[n] is unambiguous
Proof:
P
r,s
(i)
P
x[n − r]v[r − s]w[s] = p,q x[p]v[q − p]w[n − q]
(i) substitute p = n − r , q = n − s
Distributive over +:
x[n] ∗ (αv[n]
P + βw[n]) = (x[n] ∗ αv[n]) + (x[n] ∗ βw[n])
Proof:
r x[n − r] (αv[r]
P + βw[r]) =
P
α r x[n − r]v[r] + β r x[n − r]w[r]
Identity: x[n] ∗ δ[n] = x[n]
Proof:
DSP and Digital Filters (2015-6724)
P
(i)
r δ[r]x[n − r] = x[n]
(i) all terms zero except r = 0.
LTI Systems: 4 – 3 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
The following are equivalent:
(1) An LTI system is BIBO stable
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Proof (1) ⇒ (2):(
Define x[n] =
DSP and Digital Filters (2015-6724)
1
h[−n] ≥ 0
−1 h[−n] < 0
P
P
then y[0] =
x[0 − n]h[n] = |h[n]|.
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Proof (1) ⇒ (2):(
1
h[−n] ≥ 0
−1 h[−n] < 0
P
P
then y[0] =
Px[0 − n]h[n] = |h[n]|.
But |x[n]| ≤ 1∀n so BIBO ⇒ y[0] =
|h[n]| < ∞.
Define x[n] =
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Proof (1) ⇒ (2):(
1
h[−n] ≥ 0
−1 h[−n] < 0
P
P
then y[0] =
Px[0 − n]h[n] = |h[n]|.
But |x[n]| ≤ 1∀n so BIBO ⇒ y[0] =
|h[n]| < ∞.
Define x[n] =
Proof (2) ⇒ (1):
P
Suppose
|h[n]| = S < ∞ and |x[n]| ≤ B is bounded.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Proof (1) ⇒ (2):(
1
h[−n] ≥ 0
−1 h[−n] < 0
P
P
then y[0] =
Px[0 − n]h[n] = |h[n]|.
But |x[n]| ≤ 1∀n so BIBO ⇒ y[0] =
|h[n]| < ∞.
Define x[n] =
Proof (2) ⇒ (1):
P
Suppose
|h[n]| = S < ∞ and |x[n]| ≤ B is bounded.
P∞
Then |y[n]| = r=−∞
DSP and Digital Filters (2015-6724)
x[n − r]h[r]
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Proof (1) ⇒ (2):(
1
h[−n] ≥ 0
−1 h[−n] < 0
P
P
then y[0] =
Px[0 − n]h[n] = |h[n]|.
But |x[n]| ≤ 1∀n so BIBO ⇒ y[0] =
|h[n]| < ∞.
Define x[n] =
Proof (2) ⇒ (1):
P
Suppose
|h[n]| = S < ∞ and |x[n]| ≤ B is bounded.
P∞
Then |y[n]| =
r=−∞ x[n − r]h[r]
P∞
≤ r=−∞ |x[n − r]| |h[r]|
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
BIBO Stability
4: Linear Time Invariant
Systems
BIBO Stability: Bounded Input, x[n] ⇒ Bounded Output, y[n]
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
The following are equivalent:
(1) An LTI system is BIBO stable
P∞
(2) h[n] is absolutely summable, i.e.
n=−∞ |h[n]| < ∞
(3) H(z) region of absolute convergence includes |z| = 1.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Proof (1) ⇒ (2):(
1
h[−n] ≥ 0
−1 h[−n] < 0
P
P
then y[0] =
Px[0 − n]h[n] = |h[n]|.
But |x[n]| ≤ 1∀n so BIBO ⇒ y[0] =
|h[n]| < ∞.
Define x[n] =
Proof (2) ⇒ (1):
P
Suppose
|h[n]| = S < ∞ and |x[n]| ≤ B is bounded.
P∞
Then |y[n]| =
r=−∞ x[n − r]h[r]
P∞
≤ r=−∞ |x[n − r]| |h[r]|
P∞
≤ B r=−∞ |h[r]|≤ BS < ∞
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 4 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
0
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
0
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
0
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
DSP and Digital Filters (2015-6724)
0
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
DSP and Digital Filters (2015-6724)
0
3
2
1
0
0
1
ω
2
3
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
0
3
2
1
0
0
1
ω
2
3
2
3
10
5
0
-5
-10
0
DSP and Digital Filters (2015-6724)
1
ω
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
cos ω)
∠H(ejω ) = −ω + π 1−sgn(1+2
2
0
3
2
1
0
0
1
ω
2
3
2
3
10
5
0
-5
-10
0
DSP and Digital Filters (2015-6724)
1
ω
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
cos ω)
∠H(ejω ) = −ω + π 1−sgn(1+2
2
0
3
2
1
0
0
1
ω
2
3
2
3
2
3
10
5
0
-5
-10
0
1
ω
1
∠
0
-1
-2
0
DSP and Digital Filters (2015-6724)
1
ω
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
cos ω)
∠H(ejω ) = −ω + π 1−sgn(1+2
2
Sign change in (1 + 2 cos ω) at ω = 2.1 gives
(a) gradient discontinuity in |H(ejω )|
(b) an abrupt phase change of ±π .
0
3
2
1
0
0
1
ω
2
3
2
3
2
3
10
5
0
-5
-10
0
1
ω
1
∠
0
-1
-2
0
DSP and Digital Filters (2015-6724)
1
ω
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
cos ω)
∠H(ejω ) = −ω + π 1−sgn(1+2
2
Sign change in (1 + 2 cos ω) at ω = 2.1 gives
(a) gradient discontinuity in |H(ejω )|
(b) an abrupt phase change of ±π .
0
3
2
1
0
0
1
ω
2
3
2
3
2
3
10
5
0
-5
-10
0
d
∠H(ejω )
− dω
: gives delay of the
Group delay is
modulation envelope at each ω .
1
ω
1
∠
0
-1
-2
0
DSP and Digital Filters (2015-6724)
1
ω
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
cos ω)
∠H(ejω ) = −ω + π 1−sgn(1+2
2
Sign change in (1 + 2 cos ω) at ω = 2.1 gives
(a) gradient discontinuity in |H(ejω )|
(b) an abrupt phase change of ±π .
0
3
2
1
0
ω
2
3
2
3
2
3
5
0
-5
-10
0
1
ω
1
∠
0
-1
-2
0
DSP and Digital Filters (2015-6724)
1
10
d
∠H(ejω )
− dω
: gives delay of the
Group delay is
modulation envelope at each ω .
Normally varies with ω but for a symmetric filter it is
constant: in this case +1 samples.
0
1
ω
LTI Systems: 4 – 5 / 14
Frequency Response
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
For a BIBO stable system Y (ejω ) = X(ejω )H(ejω )
where H(ejω )is the DTFT of h[n] i.e. H(z) evaluated at z = ejω .
Example: h[n] =
1 1 1
H(ejω ) = 1 + e−jω + e−j2ω
= e−jω (1 + 2 cos ω)
H(ejω ) = |1 + 2 cos ω|
cos ω)
∠H(ejω ) = −ω + π 1−sgn(1+2
2
Sign change in (1 + 2 cos ω) at ω = 2.1 gives
(a) gradient discontinuity in |H(ejω )|
(b) an abrupt phase change of ±π .
0
3
2
1
0
DSP and Digital Filters (2015-6724)
1
ω
2
3
2
3
2
3
10
5
0
-5
-10
0
d
∠H(ejω )
− dω
1
ω
1
0
∠
: gives delay of the
Group delay is
modulation envelope at each ω .
Normally varies with ω but for a symmetric filter it is
constant: in this case +1 samples.
Discontinuities of ±kπ do not affect group delay.
0
-1
-2
0
1
ω
LTI Systems: 4 – 5 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
Formal definition:
If v[n] = x[n] for n ≤ n0 then H (v[n]) = H (x[n]) for n ≤ n0 .
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
Formal definition:
If v[n] = x[n] for n ≤ n0 then H (v[n]) = H (x[n]) for n ≤ n0 .
The following are equivalent:
(1) An LTI system is causal
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
Formal definition:
If v[n] = x[n] for n ≤ n0 then H (v[n]) = H (x[n]) for n ≤ n0 .
The following are equivalent:
(1) An LTI system is causal
(2) h[n] is causal ⇔ h[n] = 0 for n < 0
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
Formal definition:
If v[n] = x[n] for n ≤ n0 then H (v[n]) = H (x[n]) for n ≤ n0 .
The following are equivalent:
(1) An LTI system is causal
(2) h[n] is causal ⇔ h[n] = 0 for n < 0
(3) H(z) converges for z = ∞
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
Formal definition:
If v[n] = x[n] for n ≤ n0 then H (v[n]) = H (x[n]) for n ≤ n0 .
The following are equivalent:
(1) An LTI system is causal
(2) h[n] is causal ⇔ h[n] = 0 for n < 0
(3) H(z) converges for z = ∞
Any right-sided sequence can be made causal by adding a delay.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Causality
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Causal System: cannot see into the future
i.e. output at time n depends only on inputs up to time n.
Formal definition:
If v[n] = x[n] for n ≤ n0 then H (v[n]) = H (x[n]) for n ≤ n0 .
The following are equivalent:
(1) An LTI system is causal
(2) h[n] is causal ⇔ h[n] = 0 for n < 0
(3) H(z) converges for z = ∞
Any right-sided sequence can be made causal by adding a delay.
All the systems we will deal with are causal.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 6 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
A passive system can never gain energy:
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
Somewhat analogous to a circuit consisting of R, L and C only.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
Somewhat analogous to a circuit consisting of R, L and C only.
A lossless system always preserves energy exactly:
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
Somewhat analogous to a circuit consisting of R, L and C only.
A lossless system always preserves energy exactly:
P
P∞
∞
2
2
|y[n]|
=
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
Somewhat analogous to a circuit consisting of R, L and C only.
A lossless system always preserves energy exactly:
P
P∞
∞
2
2
|y[n]|
=
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A lossless LTI system must have H(e ) = 1∀ω
called an allpass system.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
Somewhat analogous to a circuit consisting of R, L and C only.
A lossless system always preserves energy exactly:
P
P∞
∞
2
2
|y[n]|
=
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A lossless LTI system must have H(e ) = 1∀ω
called an allpass system.
Somewhat analogous to a circuit consisting of L and C only.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Passive and Lossless
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
A passive system can never gain energy:
P
P∞
∞
2
2
|y[n]|
≤
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A passive LTI system must have H(e ) ≤ 1∀ω
Somewhat analogous to a circuit consisting of R, L and C only.
A lossless system always preserves energy exactly:
P
P∞
∞
2
2
|y[n]|
=
|x[n]|
for any finite energy input x[n].
n=−∞
n=−∞
jω A lossless LTI system must have H(e ) = 1∀ω
called an allpass system.
Somewhat analogous to a circuit consisting of L and C only.
Passive and lossless building blocks can be used to design systems which
are insensitive to coefficient changes
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 7 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
Convolution sum:
y[n] =
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
PM −1
r=0
h[r]x[n − r]
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
PM −1
r=0
h[r]x[n − r]
N = 8, M = 3
M + N − 1 = 10
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
PM −1
r=0
h[r]x[n − r]
y[n] is only non-zero in the range
0≤n≤M +N −2
N = 8, M = 3
M + N − 1 = 10
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
PM −1
r=0
h[r]x[n − r]
y[n] is only non-zero in the range
0≤n≤M +N −2
Thus y[n] has only
M + N − 1 non-zero values
N = 8, M = 3
M + N − 1 = 10
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
PM −1
r=0
h[r]x[n − r]
y[n] is only non-zero in the range
0≤n≤M +N −2
Thus y[n] has only
M + N − 1 non-zero values
Algebraically:
N = 8, M = 3
M + N − 1 = 10
x[n − r] 6= 0 ⇒ 0 ≤ n − r ≤ N − 1
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
PM −1
r=0
h[r]x[n − r]
y[n] is only non-zero in the range
0≤n≤M +N −2
Thus y[n] has only
M + N − 1 non-zero values
Algebraically:
N = 8, M = 3
M + N − 1 = 10
x[n − r] 6= 0 ⇒ 0 ≤ n − r ≤ N − 1
⇒n+1−N ≤r ≤n
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
PM −1
r=0
h[r]x[n − r]
y[n] is only non-zero in the range
0≤n≤M +N −2
Thus y[n] has only
M + N − 1 non-zero values
Algebraically:
N = 8, M = 3
M + N − 1 = 10
x[n − r] 6= 0 ⇒ 0 ≤ n − r ≤ N − 1
⇒n+1−N ≤r ≤n
Pmin(M −1,n))
Hence: y[n] =
r=max(0,n+1−N ) h[r]x[n − r]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Convolution Complexity
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y[n] = x[n] ∗ h[n]: convolve x[0 : N − 1] with h[0 : M − 1]
x
∗
→
y[0]
y[9]
Convolution sum:
y[n] =
PM −1
r=0
h[r]x[n − r]
y[n] is only non-zero in the range
0≤n≤M +N −2
Thus y[n] has only
M + N − 1 non-zero values
Algebraically:
N = 8, M = 3
M + N − 1 = 10
x[n − r] 6= 0 ⇒ 0 ≤ n − r ≤ N − 1
⇒n+1−N ≤r ≤n
Pmin(M −1,n))
Hence: y[n] =
r=max(0,n+1−N ) h[r]x[n − r]
We must multiply each h[n] by each x[n] and add them to a total
⇒ total arithmetic complexity (× or + operations) ≈ 2M N
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 8 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
Convolution sum:
y⊛N [n] =
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
PM −1
r=0
h[r]x[(n − r)mod N ]
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
PM −1
r=0
h[r]x[(n − r)mod N ]
N = 8, M = 3
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
PM −1
r=0
h[r]x[(n − r)mod N ]
y⊛N [n] has period N
N = 8, M = 3
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
PM −1
r=0
h[r]x[(n − r)mod N ]
y⊛N [n] has period N
⇒ y⊛N [n] has N distinct values
N = 8, M = 3
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
PM −1
r=0
h[r]x[(n − r)mod N ]
y⊛N [n] has period N
⇒ y⊛N [n] has N distinct values
N = 8, M = 3
• Only the first M − 1 values are affected by the circular repetition:
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
PM −1
r=0
h[r]x[(n − r)mod N ]
y⊛N [n] has period N
⇒ y⊛N [n] has N distinct values
N = 8, M = 3
• Only the first M − 1 values are affected by the circular repetition:
y⊛N [n] = y[n] for M − 1 ≤ n ≤ N − 1
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
PM −1
r=0
h[r]x[(n − r)mod N ]
y⊛N [n] has period N
⇒ y⊛N [n] has N distinct values
N = 8, M = 3
• Only the first M − 1 values are affected by the circular repetition:
y⊛N [n] = y[n] for M − 1 ≤ n ≤ N − 1
• If we append M − 1 zeros (or more) onto x[n], then the circular
repetition has no effect at all and:
y⊛N +M −1 [n] = y[n] for 0 ≤ n ≤ N + M − 2
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Circular Convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
y⊛ [n] = x[n] ⊛N h[n]: circ convolve x[0 : N − 1] with h[0 : M − 1]
x
⊛N
→
y[0]
y[7]
Convolution sum:
y⊛N [n] =
PM −1
r=0
h[r]x[(n − r)mod N ]
y⊛N [n] has period N
⇒ y⊛N [n] has N distinct values
N = 8, M = 3
• Only the first M − 1 values are affected by the circular repetition:
y⊛N [n] = y[n] for M − 1 ≤ n ≤ N − 1
• If we append M − 1 zeros (or more) onto x[n], then the circular
repetition has no effect at all and:
y⊛N +M −1 [n] = y[n] for 0 ≤ n ≤ N + M − 2
Circular convolution is a necessary evil in exchange for using the DFT
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 9 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
Idea: Use DFT to perform circular convolution - less computation
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
Total operations: ≈ 12L log2 L ≈ 12 (M + N ) log2 (M + N )
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
Total operations: ≈ 12L log2 L ≈ 12 (M + N ) log2 (M + N )
Beneficial if both M and N are >∼ 100 .
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
Total operations: ≈ 12L log2 L ≈ 12 (M + N ) log2 (M + N )
Beneficial if both M and N are >∼ 100 .
Example: M = 103 , N = 104 :
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
Total operations: ≈ 12L log2 L ≈ 12 (M + N ) log2 (M + N )
Beneficial if both M and N are >∼ 100 .
Example: M = 103 , N = 104 :
Direct: 2M N = 2 × 107
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
Total operations: ≈ 12L log2 L ≈ 12 (M + N ) log2 (M + N )
Beneficial if both M and N are >∼ 100 .
Example: M = 103 , N = 104 :
Direct: 2M N = 2 × 107
with DFT: 12 (M + N ) log2 (M + N ) = 1.8 × 106 ,
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Frequency-domain convolution
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Idea: Use DFT to perform circular convolution - less computation
(1) Choose L ≥ M + N − 1 (normally round up to a power of 2)
(2) Zero pad x[n] and h[n] to give sequences of length L: x̃[n] and h̃[n]
(3) Use DFT: ỹ[n] = F −1 (X̃[k]H̃[k]) = x̃[n] ⊛L h̃[n]
(4) y[n] = ỹ[n] for 0 ≤ n ≤ M + N − 2.
Arithmetic Complexity:
DFT or IDFT take 4L log2 L operations if L is a power of 2
(or 16L log2 L if not).
Total operations: ≈ 12L log2 L ≈ 12 (M + N ) log2 (M + N )
Beneficial if both M and N are >∼ 100 .
Example: M = 103 , N = 104 :
Direct: 2M N = 2 × 107
with DFT: 12 (M + N ) log2 (M + N ) = 1.8 × 106 ,
But: (a) DFT may be very long if N is large
(b) No output samples until all x[n] has been input.
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 10 / 14
Overlap Add
4: Linear Time Invariant
Systems
If N is very large:
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
If N is very large:
N
(1) chop x[n] into K
chunks of length K
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
Each output chunk is of length K + M − 1 and overlaps the next chunk
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
Example: M = 500, K = 104 , N = 107
Direct: 2M N = 1010
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
Example: M = 500, K = 104 , N = 107
Direct: 2M N = 1010
single DFT: 12 (M + N ) log2 (M + N ) = 2.8 × 109
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
Example: M = 500, K = 104 , N = 107
Direct: 2M N = 1010
single DFT: 12 (M + N ) log2 (M + N ) = 2.8 × 109
N
× 8 (M + K) log2 (M + K) = 1.1 × 109 ,
overlap-add: K
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
Example: M = 500, K = 104 , N = 107
Direct: 2M N = 1010
single DFT: 12 (M + N ) log2 (M + N ) = 2.8 × 109
N
× 8 (M + K) log2 (M + K) = 1.1 × 109 ,
overlap-add: K
Other advantages:
(a) Shorter DFT
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
Example: M = 500, K = 104 , N = 107
Direct: 2M N = 1010
single DFT: 12 (M + N ) log2 (M + N ) = 2.8 × 109
N
× 8 (M + K) log2 (M + K) = 1.1 × 109 ,
overlap-add: K
Other advantages:
(a) Shorter DFT
(b) Can cope with N = ∞
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Add
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
If N is very large:
N
(1) chop x[n] into K
chunks of length K
(2) convolve each chunk with h[n]
(3) add up the results
Each output chunk is of length K + M − 1 and overlaps the next chunk
N
Operations: ≈ K
× 8 (M + K) log2 (M + K)
Computational saving if ≈ 100 < M ≪ K ≪ N
Example: M = 500, K = 104 , N = 107
Direct: 2M N = 1010
single DFT: 12 (M + N ) log2 (M + N ) = 2.8 × 109
N
× 8 (M + K) log2 (M + K) = 1.1 × 109 ,
overlap-add: K
Other advantages:
(a) Shorter DFT
(b) Can cope with N = ∞
(c) Can calculate y[0] as soon as x[K − 1] has been read:
algorithmic delay = K − 1 samples
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 11 / 14
Overlap Save
4: Linear Time Invariant
Systems
Alternative method:
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
(2) ⊛K+M −1 each chunk with h[n]
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
(2) ⊛K+M −1 each chunk with h[n]
The first M − 1 points of each output chunk are invalid
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
(2) ⊛K+M −1 each chunk with h[n]
(3) discard first M − 1 from each chunk
The first M − 1 points of each output chunk are invalid
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
(2) ⊛K+M −1 each chunk with h[n]
(3) discard first M − 1 from each chunk
(4) concatenate to make y[n]
The first M − 1 points of each output chunk are invalid
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
(2) ⊛K+M −1 each chunk with h[n]
(3) discard first M − 1 from each chunk
(4) concatenate to make y[n]
The first M − 1 points of each output chunk are invalid
Operations: slightly less than overlap-add because no addition needed to
create y[n]
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Overlap Save
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
Alternative method:
N
overlapping
(1) chop x[n] into K
chunks of length K + M − 1
(2) ⊛K+M −1 each chunk with h[n]
(3) discard first M − 1 from each chunk
(4) concatenate to make y[n]
The first M − 1 points of each output chunk are invalid
Operations: slightly less than overlap-add because no addition needed to
create y[n]
Advantages: same as overlap add
Strangely, rather less popular than overlap-add
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 12 / 14
Summary
4: Linear Time Invariant
Systems
• LTI systems: impulse response, frequency response, group delay
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 13 / 14
Summary
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
• LTI systems: impulse response, frequency response, group delay
• BIBO stable, Causal, Passive, Lossless systems
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 13 / 14
Summary
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
• LTI systems: impulse response, frequency response, group delay
• BIBO stable, Causal, Passive, Lossless systems
• Convolution and circular convolution properties
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 13 / 14
Summary
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
• LTI systems: impulse response, frequency response, group delay
• BIBO stable, Causal, Passive, Lossless systems
• Convolution and circular convolution properties
• Efficient methods for convolution
◦ single DFT
◦ overlap-add and overlap-save
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 13 / 14
Summary
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
• LTI systems: impulse response, frequency response, group delay
• BIBO stable, Causal, Passive, Lossless systems
• Convolution and circular convolution properties
• Efficient methods for convolution
◦ single DFT
◦ overlap-add and overlap-save
DSP and Digital Filters (2015-6724)
For further details see Mitra: 4 & 5.
LTI Systems: 4 – 13 / 14
MATLAB routines
4: Linear Time Invariant
Systems
• LTI Systems
• Convolution Properties
• BIBO Stability
• Frequency Response
• Causality
• Passive and Lossless
• Convolution Complexity
• Circular Convolution
• Frequency-domain
fftfilt
x[n]⊛y[n]
Convolution using overlap add
real(ifft(fft(x).*fft(y)))
convolution
• Overlap Add
• Overlap Save
• Summary
• MATLAB routines
DSP and Digital Filters (2015-6724)
LTI Systems: 4 – 14 / 14
Download