Top Banner
June 28, 2022 Martijn v/d Horst, [email protected] TU/e Computer Science, System Architecture and Networking 1 Martijn v/d Horst [email protected] Block Implementations of Recursive Filters
21

Martijn v/d Horst [email protected]

Feb 24, 2016

Download

Documents

Jamil

Block Implementations of Recursive Filters. Martijn v/d Horst [email protected]. Outline. Implementation Methods Look Ahead Block-State Incremental Output Computation Comparison All-pass Filters Conclusion. Describing Filters. Transfer Function:. Difference Equation:. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

1

Martijn v/d [email protected]

Block Implementations ofRecursive Filters

Page 2: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

2

Outline• Implementation Methods

– Look Ahead– Block-State– Incremental Output Computation

• Comparison• All-pass Filters• Conclusion

Page 3: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

3

Describing Filters

• Transfer Function:

22

11

22

110

1)(

zbzbzazaazH

• Difference Equation:)2()1()2()1()()( 21210 nybnybnuanuanuany

)()()(

)()()1(

ndunxcny

nbunAxnxT

0202101

21

01

01adbaabaac

bbb

A

T

• State space form:

Page 4: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

4

ImplementationWe want:• Sample rates exceeding processing rates• This means parallel inputs and outputs, also

called block implementations• Implementations which scale well

Page 5: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

5

Clustered Look Ahead

• Increase the size of the recursive loop• The order of the filter increases• Might become unstable

nn-2 n-1 nn-P-1 n-P

P

Page 6: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

6

Scattered Look Ahead

• Increase the size of the recursive loop• The order of the filter increases• Remains stable• Can be implemented with P parallel filters• Non-recursive part can be decomposed

nn-2 n-1 nn-2P n-P

PP

Page 7: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

7

Block-State

The state space form can be rewritten into a state space form using input and output vectors:

)()()(

)()()1(

ndunxcny

nbunAxnxT

)()()(

)()())1((

nPuDnPxCnPy

nPuBnPxAPnx

PPPP

PPP

jibAcjidji

D

Ac

Acc

C

bbAbAB

jiTijP

PT

T

T

P

PPP

11

21

0

...

...

Page 8: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

8

Block-State Architecture

PA PC

PD

PB

Input

OutputState

P

P

P

P

N N

Page 9: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

9

State update

Page 10: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

10

Block-State

PA PC

PD

PB

P

P

P

P

N N

Page 11: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

11

I

Incremental Block-State

PA IC

ID

PB

I

P

N N

I

IA

IB

I

IC

ID

I

I

IA

IB

I

IC

ID

I

I

IA

IB

JI

JIC

JID

JI

I

I

I

JI

N NN

Page 12: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

12

ComparisonEfficiency: The number of multipliers used by

an implementation compared to the theoretical optimum number.

A single input, single output implementation of an IIR filter of order N requires 2 N + 1 multipliers.

Therefore the theoretical optimum for an implementation handling P simultaneous inputs and outputs is P (2 N + 1) multipliers.

Page 13: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

13

EfficienciesCLAIncr

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

BlockState

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

IncrementalBlockState

50

100K

50

100

N

00.250.5

0.75

1

50

100K

ScatteredLook aheadwith Incremental Output Computation

Block-stateIncrementalBlock-state

Clustered Look ahead with Incremental Output Computation

SLAIncr

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

Page 14: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

14

Efficiencies

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 8

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 16

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 32

ScatteredLook aheadwithIncremental Output Computation

Block-state

IncrementalBlock-state

N=8 N=16

N=32

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 64N=64

ClusteredLook aheadwithIncremental Output Computation

Page 15: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

15

All-pass Filters

22

11

21*1

*2

1)(

zczczzcczH

• Also called phase shifters

• Theoretical optimum is P N

Page 16: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

16

Efficiencies w.r.t. IIRCLAIncr

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

BlockState

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

IncrementalBlockState

50

100K

50

100

N

00.250.5

0.75

1

50

100K

ScatteredLook aheadwith Incremental Output Computation

Block-stateIncrementalBlock-state

Clustered Look ahead with Incremental Output Computation

SLAIncr

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

Page 17: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

17

Efficiencies w.r.t. All-passSLAIncr

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

CLAIncr

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

BlockState

50

100K

50

100

N

00.250.5

0.75

1

50

100K

ScatteredLook aheadwith Incremental Output Computation

Block-stateIncrementalBlock-state

Clustered Look ahead with Incremental Output Computation

IncrementalBlockState

50

100K

50

100

N

00.250.5

0.75

1

50

100K

Page 18: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

18

Efficiencies adapted

Block-statefor All-pass

IncrementalBlock-statefor All-pass

Clustered Look ahead for All-pass

CLAAllpass

50

100K

50

100

N0

0.250.5

0.75

1

50

100K

BlockStateAllpass

50

100K

50

100

N

00.250.5

0.75

1

50

100K

IncrementalBlockStateAllpass

50

100K

50

100

N

00.250.5

0.75

1

50

100K

Page 19: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

19

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 8

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 16

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 32

20 40 60 80 100 120K

0.2

0.4

0.6

0.8

1

EfficiencyEfficiency for N 64

Efficiencies ClusteredLook aheadwithIncremental Output Computation

IncrementalBlock-state

IncrementalBlock-statefor All-pass

N=8 N=16

N=32 N=64

ClusteredLook aheadforAll-pass

Page 20: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

20

Conclusion• Efficient block implementations for IIR filters

exist• These implementations can be used for all-

pass filters• Theoretically there is room for improvement

in implementing all-pass filters• We can adapt some of the implementations

for All-pass filters

Page 21: Martijn v/d Horst M.G.v.d.Horst@tue.nl

April 22, 2023 Martijn v/d Horst, [email protected]/e Computer Science, System Architecture and Networking

21

Questions?