0
$\begingroup$

I'm trying to design a digital low pass filter with a narrow transition band. My sampling rate is 25 kHz, the cut off frequency is 60 Hz & the transition band width is 4 Hz. I'm looking for about 40 dB attenuation in the stop band & 0.1 dB in the pass band.

I looked at the traditional FIR methodology using the Windowed Sinc filter but the number of taps required to get such a transition band is too high. Going by the reference here, we get a value of 25000 which is 1 second in terms of time.

As an alternative, I looked into IFIR filters. While the model filter results in a decrease in the filter length by a value that's equal to the interpolation factor, the interpolated filter formed by inserting zeros into the model filter's kernel increases the length to almost the same as what you'd get with a conventional FIR filter.

So, my question is, does the IFIR methodology make the filter more efficient from a group delay point of view? Is the only benefit here the fact that more zeros implies fewer multiplications & additions? I'm trying to achieve around 1 to 2 cycles of delay (in terms of time for a 50 Hz signal). Considering that the sampling rate is so high, shouldn't it be easier to achieve this? If not, what other methods could be used to obtain such a filter?

$\endgroup$
1
$\begingroup$

The goal of an interpolated FIR is not to reduce the group delay for a given cut-off frequency. Instead, the advantage of an IFIR is to reduce the computational load compared to a regular FIR filter. As you mentionned the zeros in the coefficients reduce the number of multiplications needed compared to a regular FIR.

So basically, if you want a narrow transition band with an FIR, if you will have to accept a (relatively) high group delay.

Care to tell us more what you want to do? If you work with powerline signals, you probably don't need a 4-Hz transition band. Have you considered cosine filters?

$\endgroup$
  • $\begingroup$ This isn't for power line signals but for a research application involving isolation of 2 signals, one within 60 Hz & another beyond 65 Hz. I need fairly high attenuation for everything beyond 60 Hz along with a low group delay. In the worst case, I could live with a transition band width of 10 Hz. I did look at raised cosine filters but the same problem popped up there as well, i.e. high number of taps. Are you suggesting any specific variant of the raised cosine filter that's meant for this scenario? $\endgroup$ – Sunny Yates May 18 '18 at 19:27
  • $\begingroup$ 1 - use a sharp filter, maybe an IIR filter 2 - Try curve fitting $\endgroup$ – Ben May 18 '18 at 21:27
  • $\begingroup$ Does your higher-frequency signal have bandwidth out to 10+ kHz so that you need to sample at 25 kHz, or could you decimate to something closer to 3-4x 60 Hz? If you don't need linear phase, check elliptical IIR for both decimation and signal separation. $\endgroup$ – user35336 May 19 '18 at 5:11
  • $\begingroup$ @Ben I'm looking at IIR filters now but the non-linear phase response is a concern. If I can get linear phase response until just 65 Hz, it'd be good enough. I'm not that familiar with curve fitting though. Could you point me to some resources? $\endgroup$ – Sunny Yates May 19 '18 at 9:19
  • $\begingroup$ @msm No, not at all. I don't really care about the content beyond 65 Hz. It's just that the same samples gets used in another application where the higher frequency content is necessary & that's why the sampling rate is high. Doesn't matter for this application. However, I do need linear phase at least until the 65 Hz mark. Any suggestions? $\endgroup$ – Sunny Yates May 19 '18 at 9:23

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.