Sign in

Not a member? | Forgot your Password?

Search compdsp

Search tips

Find us on Facebook!





Free PDF Downloads

A Quadrature Signals Tutorial: Complex, But Not Complicated

Understanding the 'Phasing Method' of Single Sideband Demodulation

Complex Digital Signal Processing in Telecommunications

Introduction to Sound Processing

C++ Tutorial

Introduction of C Programming for DSP Applications

Fixed-Point Arithmetic: An Introduction

Cascaded Integrator-Comb (CIC) Filter Introduction

Discussion Groups

FIR Filter Design Software

Free Online Books

See Also

Embedded SystemsFPGA

Discussion Groups | Comp.DSP | IIR filter structures and coefficient quantization sensitivity


There are 3 messages in this thread.

You are currently looking at messages 1 to .


Is this discussion worth a thumbs up?

0

IIR filter structures and coefficient quantization sensitivity - luminous - 2011-05-17 16:27:00

Hi,

I'm trying to implement a high order IIR filter on a fixed point ARM
processor using a parallell second order section filter structure.

I'm using 16 bit coefficients and 32 bit filter states. I think I'm on the
safe side when it comes to quantization noise, but so far I have been using
a Direct Form 1 implementation of the 2nd order sections and the frequency
response after coefficient quantization is not good enough.

Many of the filter poles are very close to DC so I think I need to consider
using an alternative to Direct Form 1 that has a more dense quantized pole
density close to DC.

I have investigated some alternatives:

Kingsbury - I found this in Udo Zölzers book "Digital Audio Signal
Processing". With this structure the pole density is much improved near DC,
but this structure has another problem in that the filter coefficients can
get very large so it's not feasible to implement in fixed point...

Modified Chamberlin - I found this here:
http://www.dafx.ca/proceedings/papers/p_053.pdf and it's also discussed
here: http://www.dsprelated.com/showmessage/110814/1.php
The Modified Chamberlin structure neatly solves the unbounded coefficients
problem, and also has a nice pole distribution.

So, the Modified Chamberlin structure seems like a good alternative, but
there seems to be a problem with both the above mentioned structures - the
references I mention above discusses their ability to give good pole
positions but they don't mention that you also get zeros or at least a
scaling in the numerator that you have no control over if you set the
filter coeffs to give you the poles you want.

So my question is, how should I do to get both the pole and zero positions
that I need in my 2nd order sections, can I use the filter structures I
mention, perhaps I have missed something?

Any advice here is much appreciated!

Best Regards, Viktor


Re: IIR filter structures and coefficient quantization sensitivity - Vladimir Vassilevsky - 2011-05-17 17:24:00

luminous wrote:

> Hi,
> 
> I'm trying to implement a high order IIR filter on a fixed point ARM
> processor using a parallell second order section filter structure.
> 
> I'm using 16 bit coefficients and 32 bit filter states. I think I'm on the
> safe side when it comes to quantization noise,

The 32 bit data path is not much. Did you make an actual estimate of the 
noise ?

> but so far I have been using
> a Direct Form 1 implementation of the 2nd order sections and the frequency
> response after coefficient quantization is not good enough.
> Many of the filter poles are very close to DC so I think I need to consider
> using an alternative to Direct Form 1 that has a more dense quantized pole
> density close to DC.

> Modified Chamberlin - I found this here:
> http://www.dafx.ca/proceedings/papers/p_053.pdf and it's also discussed
> here: http://www.dsprelated.com/showmessage/110814/1.php
> The Modified Chamberlin structure neatly solves the unbounded coefficients
> problem, and also has a nice pole distribution.

A classic second order section:

         a0 + a1z1 + a2z2
H(z) = -----------------
         1 - b1z1 - b2z2


If there are low frequency high Q poles, then b1 ~ +2, b2 ~ -1.

Then: b1 = (2 - fu);  b2 = -1 + bar;
Where: fu, bar = small positive numbers;

Now scale and quantize fu, bar to 16 bits, modify the filter and scale 
the intermediate results accordingly. This considerably improves the 
precision of the quantized coefficients.

> Any advice here is much appreciated!

How much is "much appreciation" ?


Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com


Re: IIR filter structures and coefficient quantization sensitivity - rbb - 2011-05-17 17:59:00

>Hi,
>
>I'm trying to implement a high order IIR filter on a fixed point ARM
>processor using a parallell second order section filter structure.
>
>I'm using 16 bit coefficients and 32 bit filter states. I think I'm on
the
>safe side when it comes to quantization noise, but so far I have been
using
>a Direct Form 1 implementation of the 2nd order sections and the
frequency
>response after coefficient quantization is not good enough.
>
>Many of the filter poles are very close to DC so I think I need to
consider
>using an alternative to Direct Form 1 that has a more dense quantized
pole
>density close to DC.
>
>I have investigated some alternatives:
>
>Kingsbury - I found this in Udo Zölzers book "Digital Audio Signal
>Processing". With this structure the pole density is much improved near
DC,
>but this structure has another problem in that the filter coefficients
can
>get very large so it's not feasible to implement in fixed point...
>
>Modified Chamberlin - I found this here:
>http://www.dafx.ca/proceedings/papers/p_053.pdf and it's also discussed
>here: http://www.dsprelated.com/showmessage/110814/1.php
>The Modified Chamberlin structure neatly solves the unbounded
coefficients
>problem, and also has a nice pole distribution.
>
>So, the Modified Chamberlin structure seems like a good alternative, but
>there seems to be a problem with both the above mentioned structures -
the
>references I mention above discusses their ability to give good pole
>positions but they don't mention that you also get zeros or at least a
>scaling in the numerator that you have no control over if you set the
>filter coeffs to give you the poles you want.
>
>So my question is, how should I do to get both the pole and zero
positions
>that I need in my 2nd order sections, can I use the filter structures I
>mention, perhaps I have missed something?
>
>Any advice here is much appreciated!
>
>Best Regards, Viktor
>

Have you tried a cascade structure instead of parallel?  I've typically had
better luck with cascades over parallel