If you have a problem or need to report a bug please email : support@dsprobotics.com
There are 3 sections to this support area:
DOWNLOADS: access to product manuals, support files and drivers
HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects
USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here
NEW REGISTRATIONS - please contact us if you wish to register on the forum
Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright
EQ Biquads limitation, direct Forms and representation
4 posts
• Page 1 of 1
EQ Biquads limitation, direct Forms and representation
Hi,
Many EQ's and filters use 2p2z (two pole two zero) IIR filters, just like in Flowstone's stock modules.
With the FS implementation I do not see any limitation on the maximum/minimum values of the coefficients.
However, I know that some DSP manufacturers limit their coefficients to (example) +/- 2.0 . So a value of (-2.00001) is not possible. Claim is stability of the filter.
I wonder why is this limitation required in the DSP but not in FS. I tend to think that this limitation is required for "fixed point" presentation (say 20 or 24 bit) and not required for "very wide dynamic range" like in "32 bit floating point".
Also I know that "fixed point" representation uses "direct form 1" while "floating point" uses "direct form 2", as explained here https://www.earlevel.com/main/2003/02/28/biquads/.
But how is that related to coefficients limitation ?
Many EQ's and filters use 2p2z (two pole two zero) IIR filters, just like in Flowstone's stock modules.
With the FS implementation I do not see any limitation on the maximum/minimum values of the coefficients.
However, I know that some DSP manufacturers limit their coefficients to (example) +/- 2.0 . So a value of (-2.00001) is not possible. Claim is stability of the filter.
I wonder why is this limitation required in the DSP but not in FS. I tend to think that this limitation is required for "fixed point" presentation (say 20 or 24 bit) and not required for "very wide dynamic range" like in "32 bit floating point".
Also I know that "fixed point" representation uses "direct form 1" while "floating point" uses "direct form 2", as explained here https://www.earlevel.com/main/2003/02/28/biquads/.
But how is that related to coefficients limitation ?
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: EQ Biquads limitation, direct Forms and representation
It may depend on the underlying hardware model. The only time I ever had to implement 2p2z in fixed-point, the most efficient way was direct form 2: the processor pipeline had two 16x16-bit multipliers feeding a three-input 32-point adder. (It was optimized for FFT butterflies.) And yes, it was twitchy if you wanted to minimize quantization noise, but at least there were also shifters at the adder inputs and output to help keep everything within limits.Rocko wrote:Also I know that "fixed point" representation uses "direct form 1" while "floating point" uses "direct form 2", as explained here https://www.earlevel.com/main/2003/02/28/biquads/.
But how is that related to coefficients limitation ?
Thankfully, I was not the poor bastard who had to determine the scaling values. I mentioned to the analyst doing that job that everything would be a lot easier in FP. His response was, "Using floating-point is like shoveling sand: every time you move it, you get a little less sand and a little more dirt." (Note that this was in the late 1970's.)
I keep a pair of oven mitts next to my computer so I don't get a concussion from slapping my forehead while I'm reading the responses to my questions.
- deraudrl
- Posts: 239
- Joined: Thu Nov 28, 2019 9:12 pm
- Location: SoCal
Re: EQ Biquads limitation, direct Forms and representation
Appreciated.
Can someone explain why in 'fixed point' one needs to limit the coefficients of the denominator?
While (I believe) that in floating point this is not needed?
Can someone explain why in 'fixed point' one needs to limit the coefficients of the denominator?
While (I believe) that in floating point this is not needed?
- Rocko
- Posts: 186
- Joined: Tue May 15, 2012 12:42 pm
Re: EQ Biquads limitation, direct Forms and representation
Rocko wrote:Can someone explain why in 'fixed point' one needs to limit the coefficients of the denominator?
While (I believe) that in floating point this is not needed?
These may help:
https://dspguru.com/dsp/howtos/implement-iir-filters/
http://www.eas.uccs.edu/~mwickert/ece56 ... fp_IIR.pdf
(Or not. )
I keep a pair of oven mitts next to my computer so I don't get a concussion from slapping my forehead while I'm reading the responses to my questions.
- deraudrl
- Posts: 239
- Joined: Thu Nov 28, 2019 9:12 pm
- Location: SoCal
4 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 25 guests