реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Multirate decimation filter, Как правильно сделать?
des00
сообщение Dec 11 2009, 08:10
Сообщение #31


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(dmitry-tomsk @ Dec 11 2009, 02:07) *
параметры почти такие же, как и у автора топика

т.е. нарезка АЦП на 80МГц, интерполяция в 40 раз. Если я правильно понял вашу фразу
Цитата
Неужели нельзя подкопить данные в буфере и переставлять указатель в буфере не на 1, а на M (где M коэффициент прореживания).
вы непрерывно пишете в фильтр на 80МГц, потом берете каждый M ый записанный отсчет и считаете выход фильтра так ? На выходе фильтра у вас уже тактовая 1МГц.


--------------------
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 11 2009, 08:24
Сообщение #32


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(des00 @ Dec 11 2009, 11:10) *
т.е. нарезка АЦП на 80МГц, интерполяция в 40 раз. Если я правильно понял вашу фразу вы непрерывно пишете в фильтр на 80МГц, потом берете каждый M ый записанный отсчет и считаете выход фильтра так ? На выходе фильтра у вас уже тактовая 1МГц.

Примерно так, только не интерполяция, а децимация. Фильтр работает не так. Предположим в фильтре 36 коэффициентов и он симметричный, то есть порядок 72. Считаем свёртку на 36 коэффициентов с суммами двух отсчётов, согласно принципу работы симметричного фильтра (см. userguide на dsp48 virtex-4). Затем переставляем указатель на M входных отсчётов и считаем следующую свертку. В обычном fir считаются все отсчёты (указатель переставляется на 1), а затем M-1 выкидываются (то есть работаем зря, о чём и пишет автор Вашей статьи о полифазных фильтрах в первых строках статьи). Полифазный хорош был бы, если частота входных отсчётов очень большая, а коэффциент прореживания маленький, тогда пришлось бы использовать много умножителей и использовать особую структуру фильтра. Здесь же достаточно одного умножителя и обычного MACC фильтра (на каскад, один каскаж в данном случае хоть и обеспечит 70 дБ, но даст очень большую неравномерность в полосе пропуская, порядка 1 дБ).
Go to the top of the page
 
+Quote Post
des00
сообщение Dec 11 2009, 08:38
Сообщение #33


Вечный ламер
******

Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453



Цитата(dmitry-tomsk @ Dec 11 2009, 02:24) *
Примерно так, только не интерполяция, а децимация. Фильтр работает не так. Предположим в фильтре 36 коэффициентов и он симметричный, то есть порядок 72. Считаем свёртку на 36 коэффициентов с суммами двух отсчётов, согласно принципу работы симметричного фильтра (см. userguide на dsp48 virtex-4). Затем переставляем указатель на M входных отсчётов и считаем следующую свертку.


понятно, спасибо.

PS. а как вы его перестраиваете по полосе ? ну коэффициенты пересчитать это понятно, но ведь при сужении полосы должна изменятся длинна импульсной характеристики. Или фильтр считается на самую узкую полосу, а ИХ на более широких полосах добивается нулями?


--------------------
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 16th June 2025 - 19:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01363 секунд с 7
ELECTRONIX ©2004-2016