lattice ladder structure for iir filter

12
ELEG–305: Digital Signal Processing Lecture 20: Lattice Filters & Implementation Structures for IIR Filters Kenneth E. Barner Department of Electrical and Computer Engineering University of Delaware Fall 2008 K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 1 / 24 Outline 1 Review of Previous Lecture 2 Lecture Objectives 3 Implementation of Discrete-Time Systems Direct–Form to Lattice Translation Structures for IIR Filters – Direct–Form Structures Structures for IIR Filters – Transpose Structures Structures for IIR Filters – Cascade–Form Structures Structures for IIR Filters – Parallel–Form Structures Structures for IIR Filters – Lattice & Lattice–Ladder Structures K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 2 / 24

Upload: jaishpanjwani

Post on 18-Apr-2015

793 views

Category:

Documents


12 download

TRANSCRIPT

Page 1: lattice ladder structure for IIR filter

ELEG–305: Digital Signal ProcessingLecture 20: Lattice Filters & Implementation Structures for IIR Filters

Kenneth E. Barner

Department of Electrical and Computer EngineeringUniversity of Delaware

Fall 2008

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 1 / 24

Outline

1 Review of Previous Lecture

2 Lecture Objectives

3 Implementation of Discrete-Time SystemsDirect–Form to Lattice TranslationStructures for IIR Filters – Direct–Form StructuresStructures for IIR Filters – Transpose StructuresStructures for IIR Filters – Cascade–Form StructuresStructures for IIR Filters – Parallel–Form StructuresStructures for IIR Filters – Lattice & Lattice–Ladder Structures

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 2 / 24

Page 2: lattice ladder structure for IIR filter

Review of Previous Lecture

Review of Previous Lecture

Lattice Filters – general recursion

f0(n) = g0(n) = x(n)

fm(n) = fm−1(n) + Kmgm−1(n − 1)

gm(n) = Kmfm−1(n) + gm−1(n − 1),

Lattice to Direct–Form Translation – utilize recursion on

A0(z) = B0(z) = 1

Am(z) = Am−1(z) + Kmz−1Bm−1(z), m = 1,2, . . . ,M − 1

Bm(z) = z−mAm(z−1), m = 1,2, . . . ,M − 1

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 3 / 24

Lecture Objectives

Lecture Objectives

Objective Develop a method for converting direct–form (FIR)coefficients to lattice filter coefficients; Deriveimplementation structures for IIR filters

Reading Chapters 9 (9.2–9.3); Next lecture, filter design (Chapter10.1–10.3)

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 4 / 24

Page 3: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

Lattice Filter Representation Summary

Case 1: FIR filter representations (time domain)

fm(n) =m∑

k=0

αm(k)x(n − k) and gm(n) =m∑

k=0

βm(k)x(n − k)

Case 2: FIR filter representations (z–domain)

Fm(z) = Am(z)X (z) or Am(z) =Fm(z)

X (z)

Gm(z) = Bm(z)X (z) or Bm(z) =Gm(z)

X (z)

Also, Bm(z) = z−mAm(z−1), m = 1,2, . . . ,M − 1K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 5 / 24

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

Case 3: Lattice representations (time domain)

f0(n) = g0(n) = x(n)

fm(n) = fm−1(n) + Kmgm−1(n − 1), m = 1,2, . . . ,M − 1gm(n) = Kmfm−1(n) + gm−1(n − 1), m = 1,2, . . . ,M − 1

Case 4: Lattice representations (z–domain)

A0(z) = B0(z) = 1

Am(z) = Am−1(z) + Kmz−1Bm−1(z), m = 1,2, . . . ,M − 1

Bm(z) = KmAm−1(z) + z−1Bm−1(z), m = 1,2, . . . ,M − 1

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 6 / 24

Page 4: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

Design Questions:How do we convert lattice coefficients (K terms) to direct-formfilter coefficients (α terms)? Solved last lecture.How do we convert direct–form coefficients to lattice coefficients,i.e., Given αm(1), αm(2), . . . , αm(m), how do we determineK1,K2, . . . ,Km?

Case 2: Direct–Form to Lattice Translation

Approach: Utilize relations

Am(z) = Am−1(z) + Kmz−1Bm−1(z), m = 1,2, . . . ,M − 1

Bm(z) = KmAm−1(z) + z−1Bm−1(z), m = 1,2, . . . ,M − 1

Note that Km = αm(m) [why? z−1Bm−1(z) has z−m term]To get Km−1, we need αm−1(m − 1) or entire Am−1(z) polynomialRecursively generate Am(z) for m = M − 1,M − 2, . . . ,1

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 7 / 24

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

Rearrange the Am(z) and Bm(z) recursions

Bm(z) = KmAm−1(z) + z−1Bm−1(z)

⇒ z−1Bm−1 = Bm(z)− KmAm−1(z)

Substituting this into the Am(z) recursion

Am(z) = Am−1(z) + Kmz−1Bm−1(z)

= Am−1(z) + Km[Bm(z)− KmAm−1(z)]

Finally, solving for Am−1(z) gives

Am−1(z) =Am(z)− KmBm(z)

1− K 2m

, m = M − 1,M − 2, . . . ,1 (∗)

Note: The RHS contains higher order (known) terms

Result: Solve (∗) recursively, setting Km−1 = αm−1(m − 1)

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 8 / 24

Page 5: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

ExampleDetermine the lattice representation for:

H(z) = A3(z) = 1 +78

z−1 +1116

z−2 +14

z−3

First step, set m = 3. Then directly from A3(z)

K3 = α3(3) =14

Also, B3(z) is the reverse polynomial of A3(z)

⇒ B3(z) =14

+1116

z−1 +78

z−2 + z−3

Next, evaluate Am−1(z) = Am(z)−KmBm(z)

1−K 2m

A2(z) =A3(z)− K3B3(z)

1− K 23

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 9 / 24

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

A2(z) =A3(z)− K3B3(z)

1− K 23

=1 + 7

8z−1 + 1116z−2 + 1

4z−3 − 14

[14 + 11

16z−1 + 78z−2 + z−3]

1− (14)2

= 1 +34

z−1 +12

z−2

Thus for m = 2K2 = α2(2) =

12

and reversing A2(z) gives

B2(z) =12

+34

z−1 + z−2

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 10 / 24

Page 6: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

For m = 1,

A1(z) =A2(z)− K2B2(z)

1− K 22

=1 + 3

4z−1 + 12z−1 − 1

2

[12 + 3

4z−1 + z2]1− (1

2)2

= 1 +12

z−1

Thus K1 = α1(1) = 12

Final Result:

K1 =12, K2 =

12, K3 =

14

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 11 / 24

Implementation of Discrete-Time Systems Direct–Form to Lattice Translation

Summary: Direct–Form to Lattice Translation

The translation recursion can be rearranged to yield the following steps

1 Set m = M − 12 Set Km = αm(m) and αm−1(0) = 13 If m = 1 stop; otherwise continue4 Evaluate

αm−1(k) =αm(k)− Kmβm(k)

1− K 2m

=αm(k)− αm(m)αm(m − k)

1− α2m(m)

, 1 ≤ k ≤ m − 1

5 Decrement m and go to 2Note: Procedure fails if some |Km| = 1⇒ Am−1(z) has a root on theunit circle; Solution – factor this root out

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 12 / 24

Page 7: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Structures for IIR Filters – Direct–Form Structures

Structures for IIR Filters – Direct-form Structures

Consider the IIR system H(z) = H1(z)H2(z), where

H1(z) =M∑

k=0

bkz−k [All–zero]; H2(z) =1

1 +∑M

k=1 akz−k[All–pole]

Direct Form I Realization Direct Form II Realization (N = M)K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 13 / 24

Implementation of Discrete-Time Systems Structures for IIR Filters – Transpose Structures

Transpose Structures

Objective: Represent a filter as a flow graphDirected branches connect nodesGains and delays are listed along branchesNodes sum (are adders) or are branching (splitting) pointsInputs are source nodes, outputs are sink nodes

Theorem (Flow–Graph Reversal)Given a flow graph, if we perform the following:

Reverse flow on all branchesInterchange inputs/outputs

then the resulting system, known as the transposed structure, isfunctionally equivalent to the original system, i.e., they produce thesame input/output function.

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 14 / 24

Page 8: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Structures for IIR Filters – Transpose Structures

Example: Generate the transposed form of

Direct Form II Realization Transposed Direct Form II Realization

Signal Flow Graph Transposed Signal Flow Graph

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 15 / 24

Implementation of Discrete-Time Systems Structures for IIR Filters – Transpose Structures

Note: The flow–graph reversal operations can be applied directly to adirect form realization, i.e., (1) reverse flow on all branches and(2) interchange inputs/outputs

Direct Form II Realization Transposed Direct Form II Realization

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 16 / 24

Page 9: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Structures for IIR Filters – Transpose Structures

The transposed direct form II realization can be redrawn (flipped) toyield a more conventional left–to–right signal flow

Transposed Direct Form II

Transposed Direct Form II Realization Realization (L–R signal flow)

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 17 / 24

Implementation of Discrete-Time Systems Structures for IIR Filters – Cascade–Form Structures

Cascade Form Structures

Objective: Represent a filter as a cascade of subsystems

Approach: Factor H(z) into a product of Second-order subsystems

H(z) =K∏

k=1

Hk (z)

where Hk (z) =bk0 + bk1z−1 + bk2z−2

1 + ak1z−1 + ak2z−2

Each Hk (z) can, for instance, be realizedin direct form II (Right)

Note: Pair complex–conjugate poles toensure real–valued coefficients

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 18 / 24

Page 10: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Structures for IIR Filters – Parallel–Form Structures

Parallel–Form StructuresObjective: Represent a filter as asum of subsystems

Approach: Expand H(z) throughpartial-fractions

H(z) = C +N∑

k=1

Ak

1− pkz−1

Combine (complex–conjugate)poles to form real–valued two–polesubsystems

Hk (z) =bk0 + bk1z−1

1 + ak1z−1 + ak2z−2

IIR System Parallel Realization

Second order Hk (z) of Parallel RealizationK. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 19 / 24

Implementation of Discrete-Time Systems Structures for IIR Filters – Parallel–Form Structures

ExampleDetermine cascade and parallel realizations of

H(z) =10(1− 1

2z−1)(1− 23z−1)(1 + 2z−1)

(1− 34z−1)(1− 1

8z−1)[1− (12 + j 1

2)z−1][1− (12 − j 1

2)z−1]

For the cascade case, grouppoles (complex–conjugates),e.g.,

H(z) = 10H1(z)H2(z)

where

H1(z) =1− 2

3z−1

1− 78z−1 + 3

32z−2

H2(z) =1 + 3

2z−1 − z−2

1− z−1 + 12z−2

(a)

10

y(n)

x(n) y(n)

Cascade Realization of H(z)

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 20 / 24

Page 11: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Structures for IIR Filters – Parallel–Form Structures

For the parallel realization, use partial fractions to obtain

H(z) =2.93

1− 34z−1

+−17.68

1− 18z−1

+12.25− j14.571− (1

2 + j 12)z−1

+12.25 + j14.571− (1

2 − j 12)z−1

Then combine pairs of poles(complex–conjugates, whenpossible)

H(z) =−14.75− 12.90z−1

1− 78z−1 + 3

32z−2

+24.50 + 26.82z−1

1− z−1 + 12z−2

(a)

10

y(n)

x(n) y(n)

Parallel Realization of H(z)

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 21 / 24

Implementation of Discrete-Time Systems Structures for IIR Filters – Lattice & Lattice–Ladder Structures

Lattice & Lattice–Ladder Form Structures

Objective: Represent an IIR filter as a lattice

Approach: Introduce feedback to the previously developed structure

Case 1: All–pole systems

The resulting filter structure in this case is

Lattice structure for an all–pole IIR systemNote:

All–pole lattice structures are used to model physical systems,e.g., the human vocal tract, layers in the stratified earth, etc.The Ki values correspond to physical reflection phenomena andcan often be physically measured, e.g., seismically

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 22 / 24

Page 12: lattice ladder structure for IIR filter

Implementation of Discrete-Time Systems Structures for IIR Filters – Lattice & Lattice–Ladder Structures

Also of note:The system is BIBO stable iff |Ki | < 1 for i = 1,2, . . . ,NA set of recursive governing equations can be derived similarly tothe FIR caseThe system has feed forward (fi(·)) and feedback (gi(·) paths

Case 2: Pole–zero systems

Including zero–terms results in a lattice–ladder structure:

foCn)

... ~8f-------""'''--' +

Lattice–ladder structure for a pole–zero IIR systemK. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 23 / 24

Lecture Summary

Lecture Summary

Direct–Form to Lattice Translation – Initialize m = M − 11 Set Km = αm(m) and αm−1(0) = 1; If m = 1 stop; otherwise cont.2 Evaluate

αm−1(k) =αm(k)− αm(m)αm(m − k)

1− α2m(m)

, 1 ≤ k ≤ m − 1

3 Decrement m and go to 1Implementation Structures for IIR filters –

Direct–Form Structures – Direct–Form I and IITranspose Structures – Reversing the flow on all branches andinterchange inputs/outputs leaves function unchangedCascade–Form Structures – Use factored form H(z) =

∏Kk=1 Hk (z)

Parallel–Form Structures – Use PF form H(z) = C +∑N

k=1Ak

1−pk z−1

Lattice & Lattice–Ladder Structures – model physical phenomenawith reflection coefficients (|Ki | < 1 for i = 1,2, . . . ,N)

Next lecture – Filter design (Chapter 10.1–10.3)

K. E. Barner (Univ. of Delaware) ELEG–305: Digital Signal Processing Fall 2008 24 / 24