[an error occurred while processing this directive]
|
вопрос по синтезу ПФ БИХ в fdatool
задача - сделать узкополосный БИХ фильтр
Fs=48000 Гц
центральная частота 2000 Гц, полоса 2 Гц
реализация - процессор 5502 - все коэффициенты 16 разрядов, каскадно соединенные SOS (second order sections) каждая со своим scale factor-ом, учитывающим усиление рекурсивной части
проблема в том, что если синтезировать фильтр 2 порядка (одно SOS звено) - то у него у рекурсивной части дикое усиление - под 60-80 дБ и кроме этого scale factor порядка 0.0001
в результате даже в 40-разрядном АЛУ процессора не хватает динамики
пытаюсь разбить фильтр на несколько секций (Order and Scale SOS) , а fdatool не хочет делать секции каждая со своим scale factor, а делает один scale factor перед первой секцией, либо делает их так, что scale factor становится совсем дурным - под 10e-9
сама реализация фильтра в железе нормальная, не шибко узкополосные фильтры работают на ура
как быть ?
в плавучке все работает, но жрет одно это БИХ-звено порядка 1000 тактов - около трети всего процессорного времени
E-mail: info@telesys.ru