The SSFS_Ctrl Acl version have been upgraded to Acl v0r33p1 to use a new facility for the filter definition(last parameter of the ACL_FILTER_SET keyword).
Today the 3rd boost filter use only real low second order poles and zeros at low frequency :
- ACL_FILTER_SET "SSFS_B4_flt_boost" 2 -7.8 2000 20
- ACL_FILTER_POLES SSFS_B4_flt_boost 50.0 0 # (first order)
- ACL_FILTER_POLES SSFS_B4_flt_boost 50.0 0.5 # (second order)
- ACL_FILTER_ZEROS SSFS_B4_flt_boost 500 0 #
- ACL_FILTER_ZEROS SSFS_B4_flt_boost 750 0.5 #
Usually Acl translate 2 first order poles or zeros into 1 second order filter, setting the ACL_FILTER_SET last parameter to 1 allows to disable it.
In this case the real poles and zeros can be easaly translated to first order as
- ACL_FILTER_SET "SSFS_B4_flt_boost_opt" 2 -7.8 2000 20 1
- ACL_FILTER_POLES SSFS_B4_flt_boost_opt 50.0 0
- ACL_FILTER_POLES SSFS_B4_flt_boost_opt 50.0 0. 50.0 0
- ACL_FILTER_ZEROS SSFS_B4_flt_boost_opt 500 0
-
ACL_FILTER_ZEROS SSFS_B4_flt_boost_opt 750 0 750 0
The plots show the output signal and the digital noise level for a computation running at DSP:
- for the first one using the second order filter without the numerical noise substraction
- for the second one using the first order filter for the low frequency poles and zeros and without the numerical noise substraction
- for the last one unsig the first order filter with the numerical noise substraction enable
We modify the SSFS_Ctrl configuration file in order to have the SSFS_B4_Err_Q_unnorm_10kHz channel equal to SPRB_B4_56MHz_Q one.