DSPRelated.com
Forums

About FIR filters

Started by I. R. Khan October 4, 2005
Hi,

I cannot recall but I think I saw somewhere some specific term for the ratio
(or difference) of the magnitudes of largest and smallest coefficients of an
FIR filter. Could some one please help me?

Is the smaller value of this ratio (or difference) a desirable feature for a
filter? Why?

Thank you.

Ishtiaq.

I. R. Khan wrote:
> Hi, > > I cannot recall but I think I saw somewhere some specific term for the ratio > (or difference) of the magnitudes of largest and smallest coefficients of an > FIR filter. Could some one please help me? > > Is the smaller value of this ratio (or difference) a desirable feature for a > filter? Why?
I can't see why this parameters should be relevant. It is perfectly conceivable to get a filter where some coefficient equals 0, in which case the parameter you mention makes no sense. Could it be that you remember the ratio between passband and stopband gain? Rune
I. R. Khan wrote:
> Hi, > > I cannot recall but I think I saw somewhere some specific term for the ratio > (or difference) of the magnitudes of largest and smallest coefficients of an > FIR filter. Could some one please help me? > > Is the smaller value of this ratio (or difference) a desirable feature for a > filter? Why? > > Thank you. > > Ishtiaq.
If the filter is being implemented using fixed-point arithmetic, it matters very much. See my paper on the subject: http://www.digitalsignallabs.com/fir.pdf --Randy
Thanks Randy. I am sorry that I sent this message to your private address by
mistake, by clicking on a wrong button.

I am going through your paper. In fact I have just to write one or two
sentences about it in a report and I will be thankful if you could help me.

Let's call the range (or ratio??) between smallest and largest number as R.
Is there some technical term to refer to it?

From first few paragraphs of your paper I got an idea that hardware
implementations of FIR filters use fixed point arithmetics, and therefore
filters will smaller R can be implemented more accurately. Is this correct?

Is there any other non-fixed point hardware implementation? What is it
called in technical literature? If it exists, then my understanding is that
it would be with higher computational and memory requirements. Is this true?

Are there some comparitive studies about implementations with different
word-lengths? For example how does computational cost increase increase if
we increase the word length from 8 to 16.


Thank You,
Ishtiaq.

"Randy Yates" <yates@ieee.org> wrote in message
news:1128447993.116955.79580@z14g2000cwz.googlegroups.com...
> > I. R. Khan wrote: > > Hi, > > > > I cannot recall but I think I saw somewhere some specific term for the
ratio
> > (or difference) of the magnitudes of largest and smallest coefficients
of an
> > FIR filter. Could some one please help me? > > > > Is the smaller value of this ratio (or difference) a desirable feature
for a
> > filter? Why? > > > > Thank you. > > > > Ishtiaq. > > If the filter is being implemented using fixed-point arithmetic, > it matters very much. See my paper on the subject: > > http://www.digitalsignallabs.com/fir.pdf > > --Randy >
Ishtiaq wrote:

> Thanks Randy. I am sorry that I sent this message to your private address by > mistake, by clicking on a wrong button.
No problem.
> I am going through your paper. In fact I have just to write one or two > sentences about it in a report and I will be thankful if you could help me. > > Let's call the range (or ratio??) between smallest and largest number as R. > Is there some technical term to refer to it?
Dynamic range (of the coefficients)? Other than that, I'm not familiar with a term for this. Note that it is implied in this context that the zero coefficients (if any) are excluded.
> From first few paragraphs of your paper I got an idea that hardware > implementations of FIR filters use fixed point arithmetics, and therefore > filters will smaller R can be implemented more accurately. Is this correct?
Yes.
> Is there any other non-fixed point hardware implementation? What is it > called in technical literature?
Floating-point. There is a standard floating point format from the IEEE known as IEEE 754.
> If it exists, then my understanding is that > it would be with higher computational and memory requirements. Is this true?
At least higher computational requirements, yes.
> Are there some comparitive studies about implementations with different > word-lengths? For example how does computational cost increase increase if > we increase the word length from 8 to 16.
Can't help you there - not a big hardware guy. Although I could see that in a bit-serial implementation (I think Ray Andraka has some material on his web sight about that, http://www.andraka.com) the hardware complexity would remain relatively constant but speed of execution would slow for a longer wordlength. --Randy
Hello Randy,

I just downloaded your fine paper on FIR filters and integer
coefficients. I noted a blank chapter about noise shaping and wondered
whether you are familier with a paper I wrote many years ago about
this topic. You can see it here:

http://home.get2net.dk/jjn/quantfir.htm

Best regards,
Jens

Remove x's from my e-mail adress.




On 5 Oct 2005 0
6:40:26 -0700, "Randy Yates" <yates@ieee.org> wrote:

>Ishtiaq wrote: > >> Thanks Randy. I am sorry that I sent this message to your private address by >> mistake, by clicking on a wrong button. > >No problem. > >> I am going through your paper. In fact I have just to write one or two >> sentences about it in a report and I will be thankful if you could help me. >> >> Let's call the range (or ratio??) between smallest and largest number as R. >> Is there some technical term to refer to it? > >Dynamic range (of the coefficients)? Other than that, I'm not familiar >with a term for this. Note that it is implied in this context that >the zero coefficients (if any) are excluded. > >> From first few paragraphs of your paper I got an idea that hardware >> implementations of FIR filters use fixed point arithmetics, and therefore >> filters will smaller R can be implemented more accurately. Is this correct? > >Yes. > >> Is there any other non-fixed point hardware implementation? What is it >> called in technical literature? > >Floating-point. There is a standard floating point format from the IEEE >known >as IEEE 754. > >> If it exists, then my understanding is that >> it would be with higher computational and memory requirements. Is this true? > >At least higher computational requirements, yes. > >> Are there some comparitive studies about implementations with different >> word-lengths? For example how does computational cost increase increase if >> we increase the word length from 8 to 16. > >Can't help you there - not a big hardware guy. Although I could see >that in a bit-serial implementation (I think Ray Andraka has some >material on his web sight about that, http://www.andraka.com) the >hardware complexity would remain relatively constant but speed of >execution would slow for a longer wordlength. > >--Randy
"I. R. Khan" <ir_khan@hotmail.com> wrote in message 
news:3qef2pFej9nsU1@individual.net...
> Hi, > > I cannot recall but I think I saw somewhere some specific term for the > ratio > (or difference) of the magnitudes of largest and smallest coefficients of > an > FIR filter. Could some one please help me? > > Is the smaller value of this ratio (or difference) a desirable feature for > a > filter? Why? > > Thank you. > > Ishtiaq.
I wonder if you might not be referring to relatively weighting the errors between bands? For example, in the Parks-McClellan program (and many others I'm sure) you can weight the error in each band. So, the passband might be weighted 1.0 and the stopband might be weighted 10.0. This means that the absolute error (not dB) in the stopband will be weighted 10X relative to other weighted errors. Since the passband is weighted with 1.0, this means the resulting stopband will have absolute error peaks that are 1/10th the absolute peaks in the passband. More: the Remez algorithm equalizes the peaks of the error (the ripple peaks). So, if the error in one band is multiplied by 10 then the peak errors in that band have to be 1/10th the error in a band weighted by 1.0 in order for the peaks in both bands to be "equal". Since the weights are relative, you only really care about their ratio. Maybe that's what you're referring to. Fred
Thank you Randy.
What would be suitable reference to your article? Did you publish it
somewhere or I should just refer to the website of your lab?

Ishtiaq.

"Randy Yates" <yates@ieee.org> wrote in message
news:1128519626.056782.320930@f14g2000cwb.googlegroups.com...
> Ishtiaq wrote: > > > Thanks Randy. I am sorry that I sent this message to your private
address by
> > mistake, by clicking on a wrong button. > > No problem. > > > I am going through your paper. In fact I have just to write one or two > > sentences about it in a report and I will be thankful if you could help
me.
> > > > Let's call the range (or ratio??) between smallest and largest number as
R.
> > Is there some technical term to refer to it? > > Dynamic range (of the coefficients)? Other than that, I'm not familiar > with a term for this. Note that it is implied in this context that > the zero coefficients (if any) are excluded. > > > From first few paragraphs of your paper I got an idea that hardware > > implementations of FIR filters use fixed point arithmetics, and
therefore
> > filters will smaller R can be implemented more accurately. Is this
correct?
> > Yes. > > > Is there any other non-fixed point hardware implementation? What is it > > called in technical literature? > > Floating-point. There is a standard floating point format from the IEEE > known > as IEEE 754. > > > If it exists, then my understanding is that > > it would be with higher computational and memory requirements. Is this
true?
> > At least higher computational requirements, yes. > > > Are there some comparitive studies about implementations with different > > word-lengths? For example how does computational cost increase increase
if
> > we increase the word length from 8 to 16. > > Can't help you there - not a big hardware guy. Although I could see > that in a bit-serial implementation (I think Ray Andraka has some > material on his web sight about that, http://www.andraka.com) the > hardware complexity would remain relatively constant but speed of > execution would slow for a longer wordlength. > > --Randy >
Fred,

I was looking for what Randy said in his reply.

In fact I was comparing two halfband lowpass FIR designs, one with maximal
flatness at zero frequency (w=0)  and other at middle of the passband
(w=pi/4).

w=pi/4 design has narrower transition band and range of its coefficients
(difference between largest and smallest coefficients) is also smaller.
However its accuracy is slighly poor at lower end of the frequency band.

Here are coefficients of the two for same N = 5, where length = 4N-1 = 19.

h1 = {0.000267029, 0, -0.0030899, 0, 0.0173035, 0, -0.0672913, 0, 0.302811,
0.5, 0.302811, 0, -0.0672913, 0, 0.0173035, 0, -0.0030899, 0, 0.000267029};
h2 = {0.00334916, 0, -0.0104615, 0, 0.0327316, 0, -0.0832781, 0, 0.310119,
0.5, 0.310119, 0, -0.0832781, 0, 0.0327316, 0, -0.0104615, 0, 0.00334916};

Any comments on performance of w=pi/4 design would be very much appreciated.

Ishtiaq.

You're welcome, Ishtiaq. It hasn't been published. The web address and
my name would be fine.  

Good luck to you, Ishtiaq.

--Randy