MATLAB: Do I receive different results from FDATOOL and the Digital Filter Design block in the DSP Blockset 5.0 (R13)

blockblocksetdspfdafdatoolfilterordersecondsectionssignalsostool

I have implemented the following filter in both FDATOOL and in the Digital Filter Design block:
Bandpass
IIR Elliptic
Fs = 8888.89 Hz
Fstop1 = 5 Hz
Fpass1 = 9.8 Hz
Fpass2 = 10.2 Hz
Fstop2 = 15 Hz
Astop1 = 80 dB
Apass = 1 dB
Astop2 = 80 dB
I receive different outputs from each tool.
MATLAB FDATool Result:
Stable
6th order
Direct Form II, Second Order Sections
4 sections
Simulink FDATool Result:
Unstable
6th order
Direct Form II Transposed
1 section

Best Answer

This is a limitation of the DSP Blockset 5.0 (R13) in that the Filter Design Block does not support second order sections (SOS). Our development staff is investigating this issue.
This problem can arise when you are designing a filter with tight specifications, where there are poles or zeros close to the unit circle. The filter will be converted to a type other than SOS, resulting in roundoff errors that are due to the limitations of double precision arithmetic.
You can try the following to work around this issue:
1. Update the DSP Blockset to the latest release. You can download the latest version of the DSP Blockset from the following URL:
2. Open FDATOOL from the MATLAB Command Prompt
3. Create your filter using FDATOOL, and click on the button "Design Filter" at the bottom of the GUI
4. Change the view to "Realize Model" by clicking on the "Realize Model" button on the bottom-left of the FDATOOL GUI.
5. Select new or current model, and select any desired options. Then click the button "Realize Model" at the bottom of the FDATOOL GUI.