[an error occurred while processing this directive]
|
Что-то я сегодня торможу сильно. Достаточно просто нулями перемежить.
по идее имеем после первого фильтра сигнал x(1), x(2) ... x(N). Децимация в два раза означает, что берем каждую вторую выборку. То есть остается x(1), x(3), ... x(2k+1). После второго фильтра имеем a(1)*x(1), a(2)*(x(3)), ... a(k+1)*x(2k+1)
Значит, что-бы получить тот-же результат на выходе второго фильтра, но непосредственно на частоте работы первого, надо его добить через выборку нулями. То есть станет b(1)=a(1), b(2)=0, b(3)=а(2) и т.д. Теперь переходя к исходному сигналу - получаем фильтрованный x(1)*b(1)+x(2)*b(2)+...+ x(N)*b(N) учитывая, что четные b равны нулю, и на выходе нужна только каждая нечетная выборка, получаем равенство этих двух фильтров. Так что интерполировать все-же не нужно.
Третий фильтр - рассмотреть аналогично.
E-mail: info@telesys.ru