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

да что ж вы так прицепились к этому несчастному усилению? Для вас критерием должны являться относительные величины а не абсолютные. А это например подавление фильтра за полосой. В матлабе я всегда АЧХ нормирую, у меня даже мысли не возникало смотреть какое у него там усиление, я же не усилитель делаю. В железе и в CIC и в FIR промежуточное усиление есть, усиление по выходу, т.е. усечение разрядности, вы там реального усиления тоже не увидите. Другое дело, что усечение нужно делать очень аккуратно, потому что если сделать неправильно оно повлияет на собственно соотношение полоса пропускания/полоса подавление, как следствие - потеря чутья. А усиление - вещь которая в цифре зависит от разрядности, выбранного масштаба коэффициентов и т.д., совершенно непоказательная характеристика.

 

смотрите. у меня есть cic фильтр с какой-то разрядностью на входе. при моем коэфф-те децимации (320) разрядность на выходе разрастается до невероятных цифр, типа 52 бита. далее встает вопрос: все эти биты гнать в fir и там урезать на выходе или резать в cic? и в каких пределах резать тоже непонятно. мне известно только то, что на выходе fir мне надо 24 бита железно

Изменено пользователем Artunique

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


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

Из этих 52 вам нужно только 23 (14+9). Остальные нужно выкинуть. От конкретной реализации будет зависеть, где и как их можно выкидывать. Я описал вам 2 реализации, в 1й - вы их сможете откинуть только в конце (точно не помню, но вроде так), во 2й - после каждого каскада можете откидывать все лишние биты, используя коэффициенты масштабирования и оставляя только 23. И на выходе получете 23.

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


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

используя коэффициенты масштабирования

 

можно подробнее?

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


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

В моём коде это параметры cPOINT0...4. Изменяя их вы получаете разный уровень сигнала на выходе фильтра. Они отвечают за промежуточное усиление фактически, т.е. между звеньями. Проверятся например в modelsim'e подачей на вход фильтра ступеньки с уровнем 0.8913 от полной шкалы (-1 дБ, типа максимальный сигнал с АЦП) и наблюдением за выходом с различными наборами этих коэффициентов. Вам нужно найти такой оптимум, что выход будет максимальным, но не переполнится.

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


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

Одно из полезных свойств CIC-фильтра (или его прототипа: каскада MA-фильтров с длиной ЛЗ, равной коэффициенту децимации + дециматора) это то, что на входных частотах, кратных выходной частоте отсчетов, АЧХ будет равна 0. И АЧХ будет убывать к 0 в окрестностях этих частот.

 

Эти окрестности при децимации перейдут в окрестности нулевой частоты, т.е. в вашу рабочую полосу.

 

Выбирая порядок CIC фильтра, вы обмениваете уровень шума в рабочей полосе (просачивание в рабочую полосу aliasing составляющих, получившихся за счет децимации) на неравномерность (завал) ачх в рабочей полосе, а также на вычислительную/реализационную сложность, особенно если речь идет о фильтре, расположенном ближе к входу (большая частота отсчетов).

 

для больших коэффициентов децимации весь каскад преобразования строится так:

{CICx(Dcm=n1) - FIR - HBF(Dcm=2)} - {CICy(Dcm=n2) - FIR - HBF(Dcm=2)} - {} - ... - {} - FIR-корректор ачх - дециматор

 

обычно 2х звеньев {} с CIC3 и CIC5 достаточно, чтобы покрыть все разумные нужды в радиосвязной области.

 

CIC в первом звене можно сделать полифазным чтобы получить для него набор рациональных коэффициентов децимации. В этом случае область применения (доступный набор коэффициентов децимации) еще больше расширяется, правда в обмен на ресурсы (площадь и потребление).

 

Для FIR и HBF коэффициенты рассчитываются под multiplier-free реализацию. Количество операций для формирования одного отсчета больше в звеньях, включенных ближе к выходу, но частота их выполнения меньше, т.к. ниже частота отсчетов.

 

Для "FIR-корректор ачх" в конфигурируемом каскаде понижения частоты обычно предусматривают возможность записи любых коэффициентов, т.е. этот фильтр требует полноценного умножителя или умножителей, но он работает на "низкой" выходной частоте, поэтому для него возможны компактные multicycle реализации.

 

Прототип CIC (каскад MA + DCM) удобно использовать для floating point моделирования, когда уже понятно, что в это определенное место нужно включить CIC, но еще не понятно, как для него квантовать отсчеты.

 

"Что знал, то сказал"

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


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

А кто-нибудь в курсе как должен выглядеть спектр на выходе CIC? Я в симулинке моделирую, там спектр после CIC больше шум напоминает

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


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

А кто-нибудь в курсе как должен выглядеть спектр на выходе CIC? Я в симулинке моделирую, там спектр после CIC больше шум напоминает

Снова повторяю, если не владеете матлабом, возьмите любой другой математический софт и постройте АЧХ любого CIC фильтра. Работы на 15 минут. В приложении банальнейший маткад

post-3453-1434788172_thumb.png

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


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

Думаю, будет полезно/любопытно:

"IMPLEMENTATION AND COMPARISON OF DIFFERENT CIC FILTER STRUCTURE FOR DECIMATION".

IJCTV4I2Paper_1_709to716.pdf

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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