2
$\begingroup$

I noticed a lot of hardware IC use special FIR filters with half zero of coefficients to minimize multiplication operations, especially in decimators/interpolators. E.g.

[ 6 0 -19 0 47 0 -100 0 192 0 -342 0 572 0 -914 0 1409 0 -2119 0 3152 0 -4729 0 7420 0 -13334 0 41527 65536 41527 0 -13334 0 7420 0 -4729 0 3152 0 -2119 0 1409 0 -914 0 572 0 -342 0 192 0 -100 0 47 0 -19 0 6]

or

[-12 0 84 0 -336 0 1006 0 -2691 0 10141 16384 10141 0 -2691 0 1006 0 -336 0 84 0 -12]

I took these coefficients from IC datasheet. I see the center coefficient is 0.5 and other odd coefficients are zero. It effectively halves the mul operations.

But I can't find what the type of the FIR filter is. Is there any good paper? How to create a filter with desired number of taps with this feature?

$\endgroup$
1
  • 1
    $\begingroup$ It's often a truncated sinc half band filter $\endgroup$ – Hilmar Feb 17 at 22:47
2
$\begingroup$

Oh, these are "Nyquist (M) filters", in your case M=2. You'll very often find them in mutlirate systems, especially as L-th-band-filters (i.e. filters that only let through 1/L of the Nyquist bandwidth) in decimators.

This is very fundamental for multirate systems, not really "research paper stuff", so your best bet is hence a good book on Multirate Systems. Fliege has written a classic "Multirate Digital Signal Processing", harris did, too, with "Multirate Signal Processing For Communication Systems" and Vaidyanathan seems to have written a popular book called "Multirate Systems and Filter Banks", but I haven't ever read that.

$\endgroup$
2
  • 1
    $\begingroup$ Marcus, Thank you very much for the books reference. I was able to get Fliege's and found it very good not just for my case but in general multirate system understanding! $\endgroup$ – sergfc Mar 1 at 16:49
  • $\begingroup$ @sergfc glad to hear that! $\endgroup$ – Marcus Müller Mar 1 at 17:01

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.