|
|
  |
отличие CIC от FIR, просветите плиз |
|
|
|
Jun 18 2015, 11:40
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(serjj @ Jun 18 2015, 14:36)  Зачем используют CIC фильтр? Чтобы обеспечить фильтрацию до очень узкой полосы в сравнении с частотой сэмплирования АЦП. Потом делают децимацию и уже на значительно пониженной частоте ставят FIR, который в т.ч. делает коррекцию АЧХ. При децимации важно, чтобы шум и помехи за полосой CIC фильтра был подавлен как можно лучше. Если вы поставите фильтр малого порядка, а потом сделаете децимацию, то шум/помехи свернутся в вашу полосу, интерферируя с вашим сигналом. И уже никакой FIR в этой ситуации не поможет, т.к. всё это добро уже попало в вашу полосу. Спасибо! Все понятно. А как рассчитать тогда этот порядок?
|
|
|
|
|
Jun 18 2015, 11:50
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(serjj @ Jun 18 2015, 14:46)  Рекомендую прочитать, там всё очень хорошо объясняется. Читал. В этой статье какое-то несоответствие в плане задержки фильтра. Во всей англоязычной литературе задержка берется равной 1 или 2. В этой статье задержка равна 2R. Если у меня R = 320, значит задержка 640? это же бред какой-то
|
|
|
|
|
Jun 18 2015, 11:53
|
Профессионал
    
Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082

|
Цитата(Artunique @ Jun 18 2015, 14:50)  Читал. В этой статье какое-то несоответствие в плане задержки фильтра. Во всей англоязычной литературе задержка берется равной 1 или 2. В этой статье задержка равна 2R. Если у меня R = 320, значит задержка 640? это же бред какой-то Это задержка, выраженная в частоте дискретизации, до понижения частоты, поэтому и порядок такой. И реально R нужен гораздо меньше, в зависимости от требуемого подавления, там в статье даже написано - Цитата Например пусть требуется произвести децимацию сигнала с коэффициентом при подавлении алиасинга на 40 дБ . Вы представляете, какое подавление будет при 320? Вообще, если есть возможность, то очень наглядно можно посмотреть характеристику в матлабе fdatool.
|
|
|
|
|
Jun 18 2015, 12:04
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(bogaev_roman @ Jun 18 2015, 14:53)  Это задержка, выраженная в частоте дискретизации, до понижения частоты, поэтому и порядок такой. И реально R нужен гораздо меньше, в зависимости от требуемого подавления, там в статье даже написано - . Вы представляете, какое подавление будет при 320? Вообще, если есть возможность, то очень наглядно можно посмотреть характеристику в матлабе fdatool. Значит при R=320 получается огромное усиление? Как тогда быть? нужно децимировать в 320 раз
|
|
|
|
|
Jun 18 2015, 12:12
|
Знающий
   
Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866

|
Цитата Вы представляете, какое подавление будет при 320? Задержки определяют положение полюсов на АЧХ. Их комбинация иными словами даёт требуемую ширину полосы пропускания а не подавление. Подавление зависит от порядка. В статье есть формула, из которой следует, что подавление за полосой примерно (11...13)N (дБ), где N - порядок. В случае если в каждом звене задержки разные, то полюса будут приходиться на разные частоты и играя этими задержками можно получить подавление еще на 10-15 дБ лучше, т.к. большие лепестки будут разбиваться полюсами других каскадов. CIC фильтр можно охарактеризовать вектором его задержек, размером N. Первая задержка определяет ширину полосы. Остальные задержки должны быть небольше. В матлабе всё это прекрасно смотрится. В свое время я подбирал эти коэффициенты и для 5го порядка получал около 75-80 дБ, если не изменяет память. Цитата Во всей англоязычной литературе задержка берется равной 1 или 2. В этой статье задержка равна 2R Есть два подхода к реализации фильтра. В первом случае сначала делаются интеграторы, потом децимация, а потом гребенчатые фильтры. Тогда экономится память, т.к. на пониженной частоте задержи уменьшаются во столько же раз, во сколько понизилась частота. Но фильтр становится менее гибким, т.к. задержки должны быть кратны децимации. И на интеграторах растёт разрядность, которую нельзя снижать до децимации или выхода фильтра (не помню). В другом подходе фильтр делается из каскадов, каждый каскад это интегратор + гребенчатый. Каскады ставятся друг за другом. И только после делается децимация. Тогда задержки получаются большими. В ПЛИС их лучше делать на памяти. Но уходит намного меньше логики и задержки можно выбрать любыми. UPD. Цитата Значит при R=320 получается огромное усиление? Как тогда быть? нужно децимировать в 320 раз Делал децимацию с 100 МГц до 128 кГц, а это 750 раз. Там в два этапа CIC ставил, но это было давно и неправда, в 1 думаю тоже можно. Каких то проблем с переусилением не было.
Сообщение отредактировал serjj - Jun 18 2015, 12:27
|
|
|
|
|
Jun 18 2015, 12:29
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(serjj @ Jun 18 2015, 15:12)  Делал децимацию с 100 МГц до 128 кГц, а это 750 раз. Там в два этапа CIC ставил, но это было давно и неправда, в 1 думаю тоже можно. Каких то проблем с переусилением не было. Если в 2 этапа делать, то корректор нужно после каждого CIC ставить или в конце?
|
|
|
|
|
Jun 18 2015, 12:39
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(serjj @ Jun 18 2015, 15:35)  В конце, корректировать нужно только второй фильтр. Между CIC делается промежуточная децимация. Попробуйте сначала в 1 этап. Может не нужно будет этот изврат городить) Я просто пользуюсь коркой Quartus для CIC и FIR. И с избирательностью никак в ТЗ не попадаю. Грешил на переполнения, но их нет. Коэффициенты для FIR считал матлабом. И с разрядностью как только не экспериментировал. В fdatool вбиваю параметры CIC, у него усиление на графике АЧХ 280 получается. У FIR корректора 120. Это влияет на что-то? или эти значения нормируются как-то в плисине и можно не париться?
|
|
|
|
|
Jun 18 2015, 12:56
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(serjj @ Jun 18 2015, 15:51)  У вас разрядность на выходе CIC W_adc + 9, FIR - W_adc + 10. Этого достаточно. Ничего экспериментировать не нужно. Я не знаю как устроена корка CIC фильтра от Альтеры и как её настраивать, нужно курить доки. И в матлабе премудростями всякими для расчёта фильтров не пользовался. Своя модель для CIC была, по ней всё работало и с железкой билось. Могу только вам свою корку CIC предложить. Я хотя бы знаю как её настраивать. У меня с adc и nco по 14 бит идут на смеситель. оттуда я забираю 15-16 бит, которые уже идут в cic и далее в fir. на выходе fir должно быть строго 24 бита
Сообщение отредактировал Artunique - Jun 18 2015, 12:56
|
|
|
|
|
Jun 18 2015, 13:34
|
Участник

Группа: Участник
Сообщений: 56
Регистрация: 25-11-14
Из: Санкт-Петербург
Пользователь №: 83 820

|
Цитата(serjj @ Jun 18 2015, 16:01)  В общем если надо, то вот cic. Если решите попробовать его поставить, велкам могу сказать что там менять (хотя там все оч просто). Ну или добивайте альтеровскую корку ) Спасибо, посмотрю. И еще такой вопрос: усиление CIC реальное чему равно? я имею в виду после применения округления по статье Хогенауэра. оно же явно меньше?
|
|
|
|
|
Jun 18 2015, 13:46
|
Знающий
   
Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866

|
Цитата усиление CIC реальное чему равно? да что ж вы так прицепились к этому несчастному усилению? Для вас критерием должны являться относительные величины а не абсолютные. А это например подавление фильтра за полосой. В матлабе я всегда АЧХ нормирую, у меня даже мысли не возникало смотреть какое у него там усиление, я же не усилитель делаю. В железе и в CIC и в FIR промежуточное усиление есть, усиление по выходу, т.е. усечение разрядности, вы там реального усиления тоже не увидите. Другое дело, что усечение нужно делать очень аккуратно, потому что если сделать неправильно оно повлияет на собственно соотношение полоса пропускания/полоса подавление, как следствие - потеря чутья. А усиление - вещь которая в цифре зависит от разрядности, выбранного масштаба коэффициентов и т.д., совершенно непоказательная характеристика.
Сообщение отредактировал serjj - Jun 18 2015, 13:47
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|