_sda 0 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Коллеги,есть несколько вопросов по фильтрам описанным в книге Лайонса в главе 13.24.1 Нерекурсивные АГФ. Там предлагается строить фильтр по следующей структуре(см.рисунок) Но если построить АЧХ фильтра первого каскада для М = 5 то получим следующую картинку. Имхо,фильтр с такой АЧХ вообще нельзя использовать в качестве децимирующего Подскажите кто в курсе в чём здесь секрет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Так у всех ИГФ такая АЧХ. Там же Лайонс предлагает дополнять корректирующим фильтром, в конце раздела. Я в Матлабе тоже потыкался, ничего хорошего не получил. Если вы децимируете, значит, вам нужна ограниченная полоса. Там, где спад еще небольшой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Так у всех ИГФ такая АЧХ. Там же Лайонс предлагает дополнять корректирующим фильтром, в конце раздела. Я в Матлабе тоже потыкался, ничего хорошего не получил. Если вы децимируете, значит, вам нужна ограниченная полоса. Там, где спад еще небольшой. Хорошо,давайте посмотрим что получается. На рисунке по оси частот число 0,5 это есть частота Найквиста после децимации. Т.е. если на входе фильтра будет присутствовать сигнал на частоте 0,6 то на выходе фильтра получим образ на частоте 0,4 (или 0,8 Найквиста после децимации) причём с подавлением всего -20дБ! Это очень плохо. А при рекурсивной реализации ведь никто не заставляет использовать первый порядок,а например 5-й, тогда образ будет задавлен на 60дБ,но коэффициент усиления будет офигенный. А у нерекурсивного на мой взгляд можно нормировать сигнал между каскадами,тогда не будет большого коэффициента усиления. Вот я и ищу разумный компромисс, пока не очень получается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Матлаб показывает диапазон только до половины частоты дискретизации. Я не вижу разницы между рекурсивным и нерекурсивным фильтром. Я и не помню нерекурсивного в книге. "Цифровая обработка сигналов"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Матлаб показывает диапазон только до половины частоты дискретизации. Значит Вы ничего не поняли про -20дБ. Я не вижу разницы между рекурсивным и нерекурсивным фильтром. Я и не помню нерекурсивного в книге. "Цифровая обработка сигналов"? Ясно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба По-моему, мы уже говорили. Сначала задавите полосу, потом децимируйте. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба По-моему, мы уже говорили. Сначала задавите полосу, потом децимируйте. Наш разговор немного напоминает разговор слепого с глухим. Если не можете ответить на поставленный вопрос то я немного озвучу задачу. Мне нужно продецимировать сигнал полосой 50МГц в 16 раз из 1200 MSPS в 75 MSPS. АЧХ CIC фильтра пятого порядка на картинке. Видно офигенное подавление боковых лепестков что хорошо, но так же видно и коэффициент передачи 150дБ! Неслабенький такой. Второй минус - неравномерность АЧХ в полосе около 50дБ. Только не говорите мне что эту неравномерность можно легко скомпенсировать дополнительным фильтром. Думаю сначала децимировать на 8 (тогда неравномерность будет всего 10 дБ,решаемо), а потом поставить ещё один дециматор на 2 на half-band фильтре. Но и в этом случае коэффициент усиления остаётся очень большим. Вот и ищу компромиссы... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bogaev_roman 0 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Видно офигенное подавление боковых лепестков, но так же видно и коэффициент передачи 150дБ! Я много моделировал CIC в симулинке, правда децимация степень двойки, так же как и другие параметры и это усиление компенсируется банальным отбрасыванием младших разрядов. Главная проблема действительно в создании компенсирующего фильтра с обратной sinc характеристикой, поэтому на практике (в литературе встречал много раз) этим фильтром децимируют до новой частоты дискретизации большей не менее 8 раз полосы сигнала. Остальное режут обычным ФНЧ. Задача CIC не полностью отфильтровать сигнал, а свернуть исходную полосу таким образом, чтобы полоса сигнала попала в нули функции, не исказив исходный сигнал. Ну а вообще этот процесс лучше всего описан не у Лайонса, а на dsplib. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Мне нужно продецимировать сигнал полосой 50МГц в 16 раз из 1200 MSPS в 75 MSPS. 1200 это 4 фазы по 300МГц? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Я много моделировал CIC в симулинке, правда децимация степень двойки, так же как и другие параметры и это усиление компенсируется банальным отбрасыванием младших разрядов. Главная проблема действительно в создании компенсирующего фильтра с обратной sinc характеристикой, поэтому на практике (в литературе встречал много раз) этим фильтром децимируют до новой частоты дискретизации большей не менее 8 раз полосы сигнала. Остальное режут обычным ФНЧ. Задача CIC не полностью отфильтровать сигнал, а свернуть исходную полосу таким образом, чтобы полоса сигнала попала в нули функции, не исказив исходный сигнал. Ну а вообще этот процесс лучше всего описан не у Лайонса, а на dsplib. Всё правильно, но вот насчёт компенсируется банальным отбрасыванием младших разрядов не уверен. Если звено состоит из интегратор-ГФ-дециматор то на выходе отбросить разряды не проблема. А если интегратор-дециматор-ГФ то не уверен. Помнится,где-то читал что так делать нельзя. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
thermit 1 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба Наш разговор немного напоминает разговор слепого с глухим. Если не можете ответить на поставленный вопрос то я немного озвучу задачу. Мне нужно продецимировать сигнал полосой 50МГц в 16 раз из 1200 MSPS в 75 MSPS. АЧХ CIC фильтра пятого порядка на картинке. Видно офигенное подавление боковых лепестков что хорошо, но так же видно и коэффициент передачи 150дБ! Неслабенький такой. Второй минус - неравномерность АЧХ в полосе около 50дБ. Только не говорите мне что эту неравномерность можно легко скомпенсировать дополнительным фильтром. Думаю сначала децимировать на 8 (тогда неравномерность будет всего 10 дБ,решаемо), а потом поставить ещё один дециматор на 2 на half-band фильтре. Но и в этом случае коэффициент усиления остаётся очень большим. Вот и ищу компромиссы... 1. Преобразование частоты дискретизации при помощи cic должно содержать минимум 2 стадии. стадия один - сам cic. После него децимация не до целевой, а до минимум - удвоенной. стадия два - корректирующий ких фнч с прореживанием до целевой. 2. В вашем случае нужен cic с прореживанием на 8 и ких с прореживанием на 2. 3. Картинки ваши - лажа. Ибо соответствуют фильтру аж 32-го (???) порядка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 18 июля, 2016 Опубликовано 18 июля, 2016 · Жалоба 3. Картинки ваши - лажа. Ибо соответствуют фильтру аж 32-го (???) порядка. +1. Где то ошибка в порядке. Если у вас 4 фазы по 300МГц, то : 1. Делаете фильтр скользящего среднего '{1,1,1,1} - простые сумматоры. 2. Ставите 6 звеньев подряд. В итоге имеете полосу по -3дб ~57.587МГц, затухание на границе полосы задерживания зеркала ~-101 дб. 3. Децимируете на 4. Переходите на 300МГц. 4. Фильтруете обычным FIR/bireciprocal IIR/half-band FIR 5. Децимируете на 4. Если берете FIR, то операцию 4, можно делать с учетом операции 5. Будет небольшая экономия. ЗЫ. Количество звеньев можно уменьшить UPD. Ошибся чуток -101 будет для децимации на 2. Если считать на полосу 50МГц и децимацию на 4, то будет так : Затухание на полосе 50МГц = -2.287дб, наименьшее затухание в полосе задерживания - 67.83дб. Но это лечится либо добиванием еще одного звена, либо заменой одного звена(пары звеньев) на фильтр {1,1,1} (тогда результат будет -2.1дб и -73.2дб соответственно) ЗЗЫ. Мне нужно продецимировать сигнал полосой 50МГц в 16 раз из 1200 MSPS в 75 MSPS полоса 50МГц на 75MSPS? Она комплексная? Тогда верхняя частота в каждом канале будет 25, а не 50. Еще меньше влияние фильтра. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 19 июля, 2016 Опубликовано 19 июля, 2016 · Жалоба Наконец сеть появилась. Денис, спасибо! Это решение лучшее из всех рассмотренных мной. А как посмотреть АЧХ 6 звеньев подряд? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 19 июля, 2016 Опубликовано 19 июля, 2016 · Жалоба Денис, спасибо! Это решение лучшее из всех рассмотренных мной. А как посмотреть АЧХ 6 звеньев подряд? я делаю так (это маткад, он нагляднее). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 19 июля, 2016 Опубликовано 19 июля, 2016 · Жалоба 3. Картинки ваши - лажа. Ибо соответствуют фильтру аж 32-го (???) порядка. Спорить не буду ибо считаю Вас одним из самых компетентных посетителей конференции.На картинке изображено три секции CIC - значит фильтр третьего порядка. Я в своём фильтре задаю 5 секций, поэтому и думал что работаю с фильтром пятого порядка. Как из параметров R,M,N получить номер порядка? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться