|
Расчет inv sinc фильтра |
|
|
|
Jul 10 2009, 14:59
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(Jools @ Jul 10 2009, 16:24)  Привет всем!
Подскажите, пожалуйста алгоритм расчета фильтра с характеристикой inverse sinc. Будет использоваться как компенсирующий для CIC. Интересует именно алгоритм. Можно ли для этих целей приспособить Ремеза?
Заранее спасибо. Обычно делаю так: 1. Отсчеты импульсной характеристики FIRа, стоящего после CIC секции (а он, как правило, есть) пропускаю через ДПФ на число ненулевых точек в ИХ, 2. Отсчеты ДПФ (комплексные) в полосе пропускания и в переходной полосе тупо умножаю на обратный sinc, 3. Делаю обратное ДПФ. Работает очень даже неплохо - неравномерность в полосе пропускания всего тракта (если АЧХ тракта в полосе пропускания плоская) порядка тысячных долей дБ (на грани точности измерительного ПО).
Сообщение отредактировал 729 - Jul 10 2009, 15:00
|
|
|
|
|
Jul 11 2009, 18:44
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(des00 @ Jul 11 2009, 11:36)  ИХ CIC фильтра известна. дальше дело техники IFFT((1/FFT(cic))*RRC). На выходе отсчеты ИХ RRC фильтра с коррекцией для CIC. экономим ресурс фпга %) Попробуйте применить Ваш алгоритм на практике для случая, когда после CIC стоит FIR с коэффициентом децимации 2 и более - сильно "поплывёт" (очень за пределы АЧХ RRC) АЧХ в полосе задержания. Для каждого FIR (одной длины ИХ, но разных симметрий) мне приходилось вручную искать интервал отсчетов FFT(RRC), на котором нужно делать IFFT((1/FFT(cic))*RRC), а за пределами которого нужно делать только IFFT(RRC), чтобы в полосе задержания оставалось тоже подавление, что и у RRC. Почему так, разбираться не стал. Но почему именно так, а не во всей 0-Fs, интересно.
|
|
|
|
|
Jul 12 2009, 02:34
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(729 @ Jul 11 2009, 12:44)  Попробуйте применить Ваш алгоритм на практике для случая, когда после CIC стоит FIR с коэффициентом децимации 2 и более - сильно "поплывёт" (очень за пределы АЧХ RRC) АЧХ в полосе задержания. не совсем понял, зачем после CIC стоит FIR с децимацией Данный алгоритм я использую для расчета передающего RRC^-1 + CIC интерполятора и приемного RRC^-1 + CIC дециматора. Сильного плавания не видел, погрешность где то 0.1дБ, даже делал переменный коэфф. интерполяции/децимации когда коррекция считается на средний коэффициент, плавает тоже не сильно. Цитата Для каждого FIR (одной длины ИХ, но разных симметрий) мне приходилось вручную искать интервал отсчетов FFT(RRC), на котором нужно делать IFFT((1/FFT(cic))*RRC), а за пределами которого нужно делать только IFFT(RRC), чтобы в полосе задержания оставалось тоже подавление, что и у RRC. Почему так, разбираться не стал. Но почему именно так, а не во всей 0-Fs, интересно. объясните для начала зачем после CIC стоит FIR
--------------------
|
|
|
|
|
Jul 13 2009, 04:29
|

Патриот
  
Группа: Свой
Сообщений: 384
Регистрация: 26-12-04
Пользователь №: 1 682

|
Цитата(729 @ Jul 10 2009, 18:59)  Обычно делаю так: Спасибо! Я тоже думал в этом направлении, но хотелось услышать практических подтверждений.
|
|
|
|
|
Jul 13 2009, 12:52
|
Местный
  
Группа: Участник
Сообщений: 312
Регистрация: 21-10-05
Пользователь №: 9 952

|
Цитата(des00 @ Jul 12 2009, 06:34)  ... объясните для начала зачем после CIC стоит FIR  В Вашем случае, возможно, удалось обойтись и без децимипующего FIR. Но в аппаратном DDC (типа GC5016), во многих случаях (в моей практике практически всегда) подавления CIC секции при больших коэффициентах децимации просто не хватало из-за ограниченного порядка CICов. Поэтому и приходилось "додавливать" децимирующим FIRом. Для GC5016, если необходимо, могу привести конкретный пример.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|