Reply by dsp_bhupi September 30, 20052005-09-30
hi this is bhupi

i think your problem can be solved, if you try to normalise the filter
coeff.

suppose a,b,c,d are iir filter coeff. then new filter coeff will be

a/mod,b/mod,c/mod,d/mod  where mod=sqrt(a^2+b^2+c^2+d^2)

check this before, whether it works or not?



		
This message was sent using the Comp.DSP web interface on
www.DSPRelated.com
Reply by DX September 29, 20052005-09-29
Thank you Roman.

I've obtained the coeffs for a IIR elliptic filter using Matlab (the
command is ellip(x,x,x,x)) end it givesme coeffs, and they are out of
range. I'm going to try to use the fdatool. Thank you

Excuse my english...

Reply by Roman Rumian September 28, 20052005-09-28
Hi Diego,

DX napisa�(a):
> Hi > > > Thanks for your answers. > > This is the problem... > > I'm building a IIR filter using fixed point, (well the limits are -1 to > 1), I've calculated the coeffs for the filter but there are values that > are out of range of -1 to 1, for instance 4.5, or 2.8 etc... and other > values that are in range for the same filter, for example 0.5, 0.126, > etc .... > > Well I can't represent this 2 kind of numbers in the same filter > because the range is -1.0 to 1.0... > > What I can do to solve this...? Other suggestions... > > Thank you again > Diego
the simple solution is to rescale coefficients by power of 2 before and after calculations. In your example you divide (shift right 3 bits) all coeff. by 8 and then multiply the result by 8 (shift left 3 bits). Better solution is to use filter design tool, like fdatool in Matlab, which gives structure and numbers normalised to -1.0 ... 1.0 range. Regards Roman Rumian
Reply by DX September 28, 20052005-09-28
Hi


Thanks for your answers.

This is the problem...

I'm building a IIR filter using fixed point, (well the limits are -1 to
1), I've calculated the coeffs for the filter but there are values that
are out of range of -1 to 1, for instance 4.5, or 2.8 etc... and other
values that are in range  for the same filter, for example 0.5, 0.126,
etc ....

Well I can't represent this 2 kind of numbers in the same filter
because the range is -1.0 to 1.0...

What I can do to solve this...? Other suggestions...

Thank you again
Diego