Генерируемый в Q10.1 символ FIR CompilerII какой то страшный, лучше переделать описанным выше способом.
При примерении FIR Compilers вылезает не очень прозрачный вопрос о формате выходных данных.
В юзер гайдах написано мало. Вроде бы понятно, что при полной разрядности выхода фильтра,
равной сумме разрядов входа и к-тов импульсной х-ки плюс логарифм порядка фильтра, переполнеия не будет. Кроме того, поскольку не все к-ты равны 1, часть старших разрядов выхода можно отбросить. Я именно так понял опции 'Bit Width Only' и 'Actual Coefficients' при установке Output Specification в FIR Compiler.
B FIR CompilerII выкинули 'Actual Coefficients', и количество лишних MSB можно определить, например, подавая в симуляторе дельта-импульс или перепад на вход фильтра, либо с помощью старого FIR Compiler и 'Actual Coefficients'. Но это какое-то шаманство.
Другой момент - усечение\округление LSB. Как оценить потери точности ,например, для цепочки дециматоров с разрядностью входов =16 и 'Actual Coefficients' = 48?
Наверняка есть букварь, где про это написано, но я не нашел. Подскажите, кто знает.