Необходимо мне реализовать данный фильтр на blackfin'e. Воспользовался реализацией фильтра из VisualDSP++ 4.5 - iir_fr16. Коэффициенты фильтра расчитывал в МатЛабе.
Фильтр следующий:
Filter type - bandpass
Design Method - irr (elliptic)
Filter Order - 4
Frequensy Specification:
Units - Hz
Fs - 8000
Fpass1 - 2500
Fpass2 - 2700
Magnitude Specification:
Astop - 25 db
Apass - 1 db
Если коэффициенты преобразовать в *.h. То получаю следующее:
#define MWSPT_NSEC 3
const int NL[MWSPT_NSEC] = { 1,3,3 };
const real64_T NUM[MWSPT_NSEC][3] = {
{
0.05727782902634, 0, 0
},
{
1, 0.249050440621, 1
},
{
1, 1.390239957431, 1
}
};
const int DL[MWSPT_NSEC] = { 1,3,3 };
const real64_T DEN[MWSPT_NSEC][3] = {
{
1, 0, 0
},
{
1, 0.7447726319793, 0.9174151632155
},
{
1, 0.9953488429796, 0.9230893201422
}
};
Суть вопроса: как полученные значения коэффициетов правильно передать в функцию? В какой последовательности записывать значения?