Forum: GNU Radio Basic IIR Filtering

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Robert Roberts (Guest)
on 2006-06-13 17:06
(Received via mailing list)
Hello all,




I've been doing some experimentation with some very basic IIR filtering.


I am creating sinusoidal float sources with a sampling rate of 32Khz,
connecting them through the gr.iif_filter_ffd() block, and then output
the result to an audio sink and a spectrum scope.   For my taps, I am
designing them in MATLAB, negating them appropriately, and entering them
into the GNURadio script.

I am finding that if I use a tap vector length of greater than 4 the
code stops working. Instead of a tone I get no noise.

Has anyone experimented with IIR filters of a longer length?  The only
other IIR code I have seen is in the emph/demph filters, but that is a
low order filter.


Thanks,
~Chris Roberts~
MS Student, Case Western Reserve University
Matt Ettus (Guest)
on 2006-06-13 19:30
(Received via mailing list)
>I am finding that if I use a tap vector length of greater than 4 the
>code stops working. Instead of a tone I get no noise.
>
>
You may be getting instabilities, which is common with high order IIR
filters.  However, Just to make sure the problem isn't the code, try
making a 2 tap filter and instantiate it as a 4 tap, setting the other
taps to 0 or 1 as appropriate.

If you find that instability is the problem, you are better off breaking
your filter into cascaded biquad sections.  Matlab should be able to do
that for you.

Matt
This topic is locked and can not be replied to.