Перейти к содержанию
    

параметры почти такие же, как и у автора топика

т.е. нарезка АЦП на 80МГц, интерполяция в 40 раз. Если я правильно понял вашу фразу

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Примерно так, только не интерполяция, а децимация. Фильтр работает не так. Предположим в фильтре 36 коэффициентов и он симметричный, то есть порядок 72. Считаем свёртку на 36 коэффициентов с суммами двух отсчётов, согласно принципу работы симметричного фильтра (см. userguide на dsp48 virtex-4). Затем переставляем указатель на M входных отсчётов и считаем следующую свертку. В обычном fir считаются все отсчёты (указатель переставляется на 1), а затем M-1 выкидываются (то есть работаем зря, о чём и пишет автор Вашей статьи о полифазных фильтрах в первых строках статьи). Полифазный хорош был бы, если частота входных отсчётов очень большая, а коэффциент прореживания маленький, тогда пришлось бы использовать много умножителей и использовать особую структуру фильтра. Здесь же достаточно одного умножителя и обычного MACC фильтра (на каскад, один каскаж в данном случае хоть и обеспечит 70 дБ, но даст очень большую неравномерность в полосе пропуская, порядка 1 дБ).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...