Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters •...

34
Pipelining and Parallel Processing in IIR Digital Filters Juo Yu Lee Department of Electrical Engineering, Stanford University

Transcript of Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters •...

Page 1: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Pipelining and Parallel Processing in

IIR Digital Filters•

Juo Yu Lee

Department of Electrical Engineering, Stanford University

Page 2: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Outline

• Introduction• Pipelining in 1st-Order IIR Digital Filters• Pipelining in Higher-Order IIR Digital Filters• Parallel Processing for IIR Filters• Combined Pipelining and Parallel

Processing for IIR Filters

Page 3: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Introductionconsider a 1st-order LTI IIR Filter

)()()1( nunayny +=+

iteration period: Tm + Ta

Tm: multiplication time

Ta: addition time

Page 4: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Interleaved Time Series• a naïve try:

inefficient interleaving and slow sample rate

Time(n)

0 1 2 3 4 5 6 7 8 9 10

Statex(n)

y(1)(0) y(2)(0) y(3)(0) y(4)(0) y(5)(0) y(1)(1) y(2)(1) y(3)(1) y(4)(1) y(5)(1) y(1)(2)

Page 5: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Look-Ahead Computation

• more iterated recursion

iteration bound: 2 (Tm + Ta)/2

the same as the previous version

Page 6: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Look-Ahead Computation

• another equivalent recursion

iteration bound: (Tm + Ta)/2

Page 7: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Look-Ahead Computation

• general case: applying M-1 steps of look-ahead

iteration bound: (Tm + Ta)/Mlinear increase in complexity

Page 8: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Interleaved Time Series• pipelined interleaving M = 5

Time(n) 0 1 2 3 4 5 6 7 8 9

Statex(n) y(-4) y(-3) y(-2) y(-1) y(0) y(1) y(2) y(3) y(4) y(5)

Page 9: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Pipelining in 1st-Order IIR Digital Filters

• revisit the 1st-order IIR filter

)()()1( nunayny +=+

• Example: 3-stage pipelining

adding poles and zeros at

Page 10: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Look-Ahead Pipelining with Power-of-2 Decomposition

consider a 1st-order LTI IIR Filter

applying the decomposition technique

sets of transformation

logarithmic increase in hardware complexity

Page 11: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

pipelinedIIR

( M = 8 )

originalIIR

pipelinedIIR

withDecomposition

( M = 8 )

Page 12: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Finite Precision Problems• pole position sensitivity to filter coefficients

more sensitive for small value of a

• inexact pole/zero cancellation

Page 13: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Look-Ahead Pipelining with General Decomposition

• the 1st-order IIR filter again

• 12-stage pipelined: 2x3x2 decomposition

Page 14: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

pipelinedIIR

( M = 12 )

pipelinedIIR

withDecomposition

( M = 12 )

Page 15: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Look-Ahead Pipelining with General Decomposition

• 2x2x3 decomposition

• 3x2x2 decomposition

Page 16: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Pipelining in Higher-order IIR Digital Filters

• Clustered Look-Ahead Pipeliningconsider a 2nd-order IIR filter:

with poles at1/2 and 3/4

using 2-stage pipelining

Page 17: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Pipelining in Higher-order IIR Digital Filters

• Clustered Look-Ahead Pipelining

if using higher value of M (ex. M = 3): multiplying

linear increase hardware complexity

Page 18: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Instability Problems

pipelinedIIR

( M = 3 )

pipelinedIIR

( M = 2 )original

IIR

numerical method to find M for stability

Page 19: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Pipelining in Higher-order IIR Digital Filters

• Scattered Look-Ahead Pipeliningrevisit the 2nd-order IIR filter:

guaranteed stability if the original filter is stable

using decomposition to obtain area efficiency

Page 20: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Parallel Processing in IIR Filters

• consider a 1st – order IIR filter

1

1

1 −

−=

azzH(z) )()()1( nunayny +=+

)34()24()14()4()4()44( 234

+++++++=+

kukaukuakuakyaky

L = 4

Page 21: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

A Straightforward Structure

L = 4

Hardware complexity : Multiply-add operation2L

Page 22: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Incremental Block Processing

L = 4

Hardware complexity : 12 −L multiply-add operation

Page 23: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Round-off Noise Robustness• pole movement

4az=az = V.S.

211a−

∝Round-off noise

for one pole IIR filter

Page 24: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Parallel Processing in IIR Filters

• consider a 2nd – order IIR filter

( )21

21

83

451

1−−

+−

+=

zz

zH(z)

)2()1(2)()(

)()2(83)1(

45)(

−+−+=

+−−−=

nunununf

nfnynyny

Page 25: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability
Page 26: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability
Page 27: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Round-off Noise Robustness• pole movement

33

43,

21

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛=z

43,

21

=z V.S.

Page 28: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Combined Pipelining and ParallelProcessing For IIR Filters

• revisit the 1st – order IIR filterwith L = 4 and M = 3

)()()1( nunayny +=+

)3()123( 12 kyaky =+

)123()93()63()3()123()113()103()93()83()73()63()53()43()33()23()13(

113

2612

2

345

678

91011

++++++=

++++++

++++++

++++++

++++++

kfkfakfakyakukaukuakuakuakuakuakuakuakuakuakua

Page 29: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability
Page 30: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

⇒== 1&4 NMQ

4 poles : 3333 ,,, jajaaa −−

⇒= 3LQ

pole distance :3a

The multiplication complexity :

Page 31: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Combined Pipelining and ParallelProcessing For IIR Filters

( )21

21

83

451

1−−

+−

+=

zz

zH(z)• revisit the 2nd – order IIR filter

loop update L = 3 and M = 2

Page 32: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

( ) ( )( ) FkYAFkYAAFkYAkY +=+••=++•=+ )3()3()33()63( 212

( )TkykykY )13()3()3( +=where

66

43,

21

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛:2AThe eigenvalues of

3333

43,

43,

21,

21

⎟⎠⎞

⎜⎝⎛−⎟

⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛−⎟

⎠⎞

⎜⎝⎛⇒ Take the square root :

Page 33: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Case Analysis• Example: 4-th order Chebyshev low-pass filter

with M =4

)1)(1()1()( 2121

41

−−−−

+++++

=EzDzCzBz

zAzH

simple model:

fVCtotalPVthVk

eCchVT

••=

−••

=

2

2)(arg

result (if using V=5 and Vth=1): V’ = 2.38power ratio = 58.91%

Page 34: Pipelining and Parallel Processing in IIR Digital Filtersmbolic/elg6163/lee.pdfDigital Filters • Scattered Look-Ahead Pipelining revisit the 2nd-order IIR filter: guaranteed stability

Case Analysis• Example: 2nd order IIR filter with L =3

( )21

21

83

451

1−−

+−

+=

zz

zH(z)

result (if using V=5 and Vth=1): V’ = 2.3365power ratio = 29.116%