From: Darol Klawetter on
On Feb 22, 10:22 am, Darol Klawetter <darol.klawet...(a)l-3com.com>
wrote:
> 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.
>
> DarolKlawetter

I know that this thread is old and forgotten, but I wrote that I would
post back when I reached a solution. I was able to meet my filter spec
within the constraints of the FPGA's resources by using the sum of two
power-of-2 values as an approximation of the non power-of-2
coefficients. Very simple, but adequate.

Darol Klawetter