Polyphase IIR halfband decimator using biquad stages

1 次查看(过去 30 天)
Using DSP/Signal Toolbox.
I am trying to use matlab to generate coefficients for polyphase IIR halfband decimator. Which can be achieved using :
%%Halfband filter (-3dB at 0.5), Transition band 0.1 wide and 80dB stopband attenuation
f = fdesign.decimator(2, 'halfband','TW,Ast' ,0.1,80);
h1 = design(f,'ellip');
h1.realizemdl
This generates:
However refactoring phase 1 to see the structure it looks like a cascade of first order df1 stages. Phase 2 is just a 0.5 gain.
The filter structure I am targeting is implemented as cascaded biquads. Phase 1 of a higher order than Phase 2.
*How do I get matlab to generate polyphase IIR filters using biquad stages?* where Phase 2 is more than a gain step. Ideally using the ellip method.
I have tried a few things like:
He3 = design(f,'ellip','FilterStructure','cascadewdfallpass');
He3.realizemdl
Which creates a Phase 2 with a real filter but not using biquad stages.
I am not aware of how to find which 'FilterStructures' are valid but found a reference to 'df2sos', which does not seem compatible with the ellip moethods.
He3 = design(f,'ellip','FilterStructure','df2sos');
Error using fdesign.decimator/ellip (line 19)
'df2sos' is an invalid structure for this design.
I have been using Digital Filters with MATLAB by Ricardo A. Losada as my reference for this.

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Multirate and Multistage Filters 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by