From: Darol Klawetter on
On Feb 21, 11:11 am, Fred Marshall <fmarshallx(a)remove_the_xacm.org>
wrote:
> Fred Marshall wrote:
> > Here is my dumb and, as yet, unpublished method for quantized
> > symmetrical FIR filters:
>
> Hey!  I thought of a method that may work that would use something
> closer to the standard P-M program.  It goes like this:
>
> Instead of writing a special program that allows the pruning of basis
> functions, just use the standard program and do this:
>
> Just leave the original basis functions and number of variables in the
> problem to be the same from beginning to end.
>
> At each step in the manual iteration process, modify the Desired
> function (what we normally call here the filter specification) according
> to the coefficients / basis functions already determined.
>
> Now the computations at the next step should figure out that a best fit
> will be by setting the coefficient to be the same as the one you chose -
> in order to minimize the new error.
>
> For a moment I thought that maybe a side benefit of this might be that
> all coefficients are under consideration every time.  So, the concern
> that maybe the search isn't global might be averted?  But I've decided
> "probably not" because of the modification of the Desired function.  Ah
> well.
>
> I don't know if this might cause numerical problems but I doubt it.
>
> Oh, I lied above, the "standard" P-M can't quite do this job because it
> uses fixed band specs.  This approach requires that the spec be
> continuous / i.e. a "function" of frequency.  That's a small change and
> I can mention this:
>
> Instead of piecewise constant specs with "don't care" zones as in P-M,
> the Remez algorithm works fine with an end-to-end continuous spec.  The
> beauty of P-M (and something I didn't realize for a long time) is that
> it guarantees no error peaks in the transition bands (the "don't care
> zones").  In general, it creates peaks at the band edges going into the
> transition bands.  That means you really, really "don't care" because
> the results will always be good.  Alternately, you can approximate
> end-to-end and put very low weights on the transition bands.  The
> problem with doing that is maybe a peak will occur in the transition
> band - so you might have to be careful how you specify things and weight
> them.  But, actually, I digress.
>
> All that's needed and what would be best is to be able to specify the
> in-band desired values sample-by-sample in the normal P-M program.
> Thats a pretty simple change - a piecewise set of a function of frequency..
>
> Fred

Thanks again, everyone, for the suggestions. I'll post back when I've
reached a solution. Right now I have to complete some less interesting
tasks.

A thought just occurred to me: maybe Grant Griffin can add a function
to ScopeFIR to compute the closest power-of-2 coefficient
approximation for a given filter spec. I suspect that could motivate
some logic designers to buy a copy of it.

Darol Klawetter