В
предыдущей статье мы рассмотрели структуру и характеристики
каскадных интегрально-гребенчатых фильтров Хогенауэра ( cascaded
integral-comb filters). Были получены выражения для частотных
характеристик CIC фильтров
и показано, что CIC фильтры
представляют собой фильтры нижних частот, причем первый нуль
частотной характеристики зависит от задержки гребенчатого фильтра, а
подавление в полосе заграждения зависит от порядка фильтра (т.е.
количества каскадно включенных интеграторов и гребенчатых фильтров).
В данной статье мы рассмотрим применение CIC
фильтров для цифровой децимации и
интерполяции сигналов.
Для начала вспомним, что
частотная характеристика
CIC фильтра порядка
имеет следующий вид:
(1)
где
— задержка гребенчатого фильтра, определяет первый нуль
передаточной функции фильтра. Амплитудно-частотная характеристика CIC
фильтра представлена на рисунке 1.
Рисунок 1: АЧХ CIC фильтра
На
рисунке 1 обозначены:
—коэффициент
усиления фильтра зависит от порядка фильтра и задержки гребенчатого
фильтра
(2)
—
максимальный уровень боковых лепестков CIC
фильтра, зависящий от порядка фильтра
.
(3)
При
правильном выборе порядка фильтра
и задержки гребенчатого фильтра
CIC фильтр будет
представлять собой ФНЧ, подавляющий частоты выше
(4)
Использование CIC-фильтра при децимации сигналов
Рассмотрим применение CIC
фильтра в задаче децимации сигналов. Пусть из исходного
сигнала
необходимо получить сигнал
где
— коэффициент децимации, т.е.
содержит только каждый
-ый
отсчет исходного сигнала. Другими словами частота дискретизации
сигнала понижается в
раз. Мы знаем, что при прямом прореживании может проявится алиасинг
(aliasing), или как его еще называют эффект
наложения, при этом в децимированном сигнале могут появится мнимые
гармоники. Для устранения алиасинга необходимо поставить ФНЧ с
частотой среза
рад/с, как это показано на рисунке 2.
Рисунок 2: Алиасинг и его устранение при помощи ФНЧ
На рисунке 2а показан
процесс децимации в 2 раза без использования ФНЧ, в результате
высокочастотные гармоники проявляются в децимированном сигнале в
результате алиасинга. Использование ФНЧ 2б позволяет устранить
гармоники до децимации и они не проявятся. Очевидно, что чем выше
коэффициент подавления ФНЧ в полосе заграждения, тем меньше будет
алиасинг.
После того как мы
обосновали необходимость ФНЧ в дециматоре сигналов, рассмотрим теперь
использование в качестве антиалиасингового ФНЧ CIC
фильтра. Поскольку требуемая полоса среза антиалиасингового
ФНЧ равна
(смотри рисунок 2б), а первый нуль АЧХ CIC фильтра
имеет на частоте
, то для устранения алиасигна требуется CIC фильтр
с задержкой гребенчатого фильтра
.
При этом выбором порядка
фильтра можно обеспечить требумое
подавление в полосе заграждения для устранения алиасинга при
децимации. Например пусть требуется произвести децимацию сигнала с
коэффициентом
при подавлении алиасинга на 40 дБ. Поскольку
,
то задержка
.
Увеличение порядка CIC фильтра на единицу
увеличивает коэффициент подавления в полосе заграждения на 11..13 дБ,
поэтому для обеспечения заданного подавления алиасинга требуется
фильтр 4 -го порядка ().
Согласно (2) коэффициент усиления CIC фильтра
равен
(5)
Максимальный уровень
боковых лепестков равен:
(6)
Таким образом CIC
фильтр рассчитан, его структурная схема представлена на
рисунке 3.
Рисунок 3: CIC фильтр дециматор при
и
Рассмотрим
модификацию CIC фильтра
дециматора. Для этого проанализируем каскадное соединение
гребенчатого фильтра и дециматора, как это показано на рисунке 4
Рисунок 4: Каскадное соединение гребенчатого фильтра и дециматора
Разностное уравнение схемы
представленной на рисунке 4 можно представить следующим образом:
(7)
Из выражения (7) можно
заметить, что при расчете децимированного сигнала используются
только
-ые
отсчеты исходного сдвинутые на
друг относительно друга. Таким образом, можно записать:
(8)
где
— децимированный исходный сигнал. Если учесть, что
,
то окончательно можно получить
(9)
Таким образом
эквивалентная схема каскада представленного на рисунке 4 предсталена
на рисунке 5.
Рисунок 5: Эквивалентный каскад гребенчатого фильтра и дециматора
Эквивалентный каскад
удобнее тем, что задержка не зависит от коэффициента децимации
,
это позволяет реализовать перестраиваемый фильтр дециматор меняя
только коэффициент
.
Рисунок 6: Эквивалентный CIC фильтр дециматор при
и
Рисунок 7: АЧХ и ФЧХ СIC фильтра при и
Использование CIC-фильтра при интерполяции сигналов
Рассмотрим теперь
использование CIC фильтров в задаче
интерполяции сигналов. Фильтр интерполятор обеспечивает увеличение
частоты дискретизации сигнала в
раз, где
— коэффициент интерполяции. Схема фильтра интерполятора и
пояснение принципа его работы представлена на рисунке 8.
Рисунок 8: Фильтр интерполятор и принцип его работы
Исходный
сигнал
(на графиках рисунка 8
показанный черным) поступает на интерполятор, который увеличивает
частоту дискретизации в
раз, путем вставки
нулей между отсчетами исходного сигнала (на верхнем рисунка 8
графике показаны красными точками). В результате получается сигнал
дополненный нулями, который
поступает на ФНЧ и который «поднимает нули». В частотной
области данный процесс можно представить, как показано на рисунке 9.
Рисунок 9: Процесс интерполяции в частотной области
Исходный сигнал
имеет периодический спектр
,
с периодом равным частоте дискретизации
.
Один период спектра
представлен на верхнем графике рисунка 9. После добавления нулей
между отсчетами сигнала получаем увеличение частоты дискретизации в
раз, в результате получаем спектр
сигнала
,
который представляет собой
раз повторенный спектр
на интервале
,
что наглядно показано на среднем графике рисунка 9. Синим
показана АЧХ ФНЧ с частотой среза
, который
устраняет периодичность спектра интерполированного сигнала, тем самым
получаем интерполированный сигнал, показанный на нижнем графике
рисунка 9. Требуемая нормированная частота среза ФНЧ равна
.
А поскольку первый нуль передаточной характеристики CIC
фильтра равен
,
то при
получим требуемый CIC фильтр. Порядок CIC
фильтра выбирается исходя из требуемого подавления периодических
составляющих спектра интерполированного сигнала. Допустим нам
требуется реализовать фильтр интерполятор, увеличивающий частоту
дискретизации в 4 раза ()
с подавлением периодических составляющих на 40 дБ. CIC
фильтр с заданными характеристиками мы уже рассчитывали когда
рассматривали дециматор и получили
,
а
.
Нам осталось только привести структуру данного фильтра
интерполятора (рисунок 10).
Рисунок 10: Фильтр интерполятор при
Теперь рассмотрим
модификацию фильтра интерполятора представленную на рисунке 11.
Рисунок 11: Модификация фильтра интерполятора
На верхней схеме рисунка 11
показана исходная структура фильтра интерполятора с CIC
фильтром в качестве ФНЧ. При этом задержка гребенчатого
фильтра зависит от коэффициента интерполяции. Поменяем местами
каскады интеграторов и гребенчатых фильтров и получим среднюю схему
рисунка 11. Поскольку и фильтр интегратор и гребенчатый фильтр —
линейные, то поменяв их местами мы не изменяем характеристики
фильтра. Теперь рассмотрим более подробно каскадное соединение
интерполятора и гребенчатого фильтра (обозначены серым на рисунке 11).
Интерполятор вставляет нули между отсчетами исходного сигнала
(смотри рисунок 8),
таким образом
(10)
Тогда в соответствии с
разностным уравнением гребенчатого фильтра:
(11)
Из выражения (10) можно
сделать вывод:
(12)
Тогда (11)
с учетом того что
можно записать:
(13)
или проведя
переиндексацию:
(14)
Давайте разберемся:
ничто иное как интерполированный
,
он же - сигнал на выходе гребенчатого фильтра с
задержкой 2 при входном сигнале
.
Таким образом мы получили, что можем поменять местами интерполятор и
гребенчатый фильтр (что показано на нижней схеме рисунка 11). В
результате схема модифицированного интерполятора имеет вид
представленный на рисунке 12.
Пример децимации и интерполяции сигналов с использованием CIC-фильтров
Теперь рассмотрим пример
применения CIC фильтров в задачах
децимирования и интерполирования сигналов. Для этого сформируем
сигнал из нескольких гармоник. Пусть частота дискретизации равна
.
Спектр такого сигнала показан на рисунке 13. Осуществим децимацию
данного сигнала в 4 раза при помощи схемы представленной на рисунке
3. Получим продецимированный сигнал, чей спектр показан на рисунке 14.
Рисунок 13: Спектр исходного сигнала
Рисунок 14: Децимация при помощи CIC фильтра
Из рисунка 4 следует, что
частота дискретизации продецимированного сигнала уменьшилась в 4 раза
и стала равна 100 Гц. Кроме того ввиду сильной неравномерности АЧХ
CIC фильтра (смотри рисунок 7) амплитуды
гармоник сигнала довольно сильно искажаются. Для предотвращения
искажения амплитуд гармоник прибегают к схеме дециматора с фильтром
корректором (ФК) показанной на рисунке 15. Рассмотрим это подробнее.
Если коэффициент децимации
четный и больше двух (4, 8, 16 …), то можно осуществить
децимацию в 2 этапа: сначала CIC дециматором
с коэффициентом
,
а затем еще продецимировать в 2 раза, предварительно поставив фильтр
корректор. На графиках рисунка 15 приведены пояснения. АЧХ CIC
дециматора не равномерна (зеленый график), поэтому
рассчитывается фильтр корректор с АЧХ
,
его назначение — выравнять АЧХ CIC
дециматора, устранить алиасинг при децимации в 2 раза. АЧХ
фильтра корректора показана красным на рисунке 15. Результирующий
фильтр имеет равномерную АЧХ в полосе пропускания и высокое
подавление в полосе заграждения (синий график рисунка 15). Таким
образом мы можем скомпенсировать неравномерность АЧХ CIC фильтра. Необходимо заметить, поскольку сначала стоит очень
эффективный CIC фильтр, то фильтр
компенсатор работает на частотах в
раз ниже, что практически снимает ограничения на его порядок, так как
обработка ведется при тактовых частотах ниже чем частота
дискретизации исходного сигнала. На рисунке 16 представлен спектр
сигнала на выходе CIC дециматора при
(красный график), а также АЧХ фильтра корректора (желтый график). На
рисунке 17показан спектр сигнала на выходе фильтра корректора, а на
рисунке 18 — он же, продецимированный в 2 раза, т.е.
результирующий сигнал. Видно что использование фильтра корректора
существенно улучшает качество децимации (нет таких завалов, как на
рисунке 14).
Рисунок 15: CIC дециматор с фильтром компенсатором
Рисунок 16: Спектр на выходе СIC дециматора с коэффициентом
и АЧХ фильтра корректора
Рисунок 17: Спектр сигнала на выходе фильтра корректора
Рисунок 18: Результат децимации с применением фильтра корректора
Теперь рассмотрим
использование CIC фильтров для интерполяции
сигналов. Пусть исходный сигнал состоит из нескольких гармоник.
Спектр исходного сигнала представлен на рисунке 19. Спектр
интерполированного сигнала при использовании CIC
фильтра 8-го порядка показан на рисунке 20.
Рисунок 19: Спектр исходного сигнала для интерполяции
Рисунок 20: Интерполяция при помощи CIC фильтра
Из рисунка 20 следует, что
неравномерность АЧХ CIC фильтра при
интерполяции как и в случае с децимацией приводит к искажениям
амплитуд гармоник. В случае с CIC дециматором
мы боролись с искажениями при помощи фильтра корректора (ФК).
Аналогично можно поступить и при интерполяции. На рисунке 21 показано
использование фильтра корректора при интерполяции сигнала. Показана
схема использования фильтра корректора и 5 поясняющих графиков.
Рисунок 21: Использование фильтра корректора при интерполяции сигналов
Давайте разбираться.
Исходный сигнал имеет спектр
показанный на первом графике.
— частота дискретизации исходного сигнала. При интерполяции c
коэффициентом
частота дискретизации интерполированного сигнала будет равна
.
Если
четно и больше 2, то можно осуществить сначала интерполяцию в 2 раза
при помощи корректирующего фильтра. Спектр
на выходе интерполятора в 2 раза, вставляющего по одному нулю между
отсчетами сигнала показан на 2-ом графике. На нем же красным показана
АЧХ фильтра корректора
.
Фильтр корректор подавляет периодические составляющие
,
и вносит предыскажения в сигнал, такие чтобы скомпенсировать «завалы»
после CIC фильтра. Спектр
сигнала на выходе фильтра корректора представлен на третьем графике.
На четвертом графике показан спектр
сигнала на выходе интерполятора с коэффициентом
(в данном примере
),
а также АЧХ CIC фильтра
.
И наконец на последнем графике показан спектр
проинтерполированного сигнала
.
Таким образом фильтр корректор внося предыскажения компенсирует
искажения вносимые CIC фильтром. Необходимо
отметить, что фильтр корректор ставится на удвоенной тактовой
частоте, что не требует высокой производительности вычислителя, а CIC
фильтр работает уже на частоте в
раз выше, но он не требует умножений и может быть реализован
аппаратно.
На рисунке 22 показан
пример спектра сигнала на выходе фильтра корректора, а на рисунке 23
- результат интерполяции с применением фильтра корректора. При этом
видно, что использование фильтра корректора позволяет скомпенсировать
завалы, вносимые CIC фильтром (рисунок 20).
Рисунок 22: Спектр сигнала на выходе фильтра корректора
Рисунок 23: Результат интерполяции с использованием фильтра корректора
Расчет КИХ-фильтра корректора
В данной статье нам
осталось рассмотреть лишь один вопрос, а именно расчет фильтра
корректора. Характеристики фильтра корректора зависят от порядка CIC фильтра и коэффициента децимации и интерполяции. Если мы для
CIC фильтра заданного порядка и заданного
коэффициента децимации рассчитали фильтр корректор, то мы можем его
использовать и при интерполяции сигналов с тем же коэффициентом и
порядком CIC фильтра. Расчет фильтра
корректора можно производить согласно схеме представленной на рисунке
24.
Рисунок 24: Схема расчета фильтра корректора
Зададим CIC
фильтр и коэффициент децимации (интерполяции)
.
Сформируем CIC дециматор как это выделено
на рисунке 24 жетлым цветом. На вход дециматора подадим одиночный
импульс для расчета его отклика и возьмем дискретное преобразование Фурье
отклика фильтра дециматора, получим частотную характеристику CIC
фильтра
,
представленную на рисунке 25.
Рисунок 25: Расчет частотной характеристики фильтра корректора
Также на рисунке 25
показана характеристика идеального ФНЧ
.
Теперь если мы поделим
на АЧХ
,
то получим идеальную частотную характеристику фильтра корректора
,
показанную на рисунке 26.
Идеальную характеристику
фильтра корректора можно трактовать как аппроксимацию амплитудно-частотной
характеристики фильтра,
тогда можно взять обратное преобразование Фурье (обратное
быстрое преобразование Фурье ifft), и
получим отсчеты импульсной характеристики фильтра корректора
.
Порядок фильтра корректора равен размеру выботки fft
и ifft. При этом импульсная
характеристика будет переставлена как это показано на рисунке 27.
Блок перестановки отсчетов
меняет местами
половины отсчетов импульсной характеристики
как это показано на рисунке 27, тем самым получается переставленная
характеристика
.
После этого импульсная характеристика
умножается на весовое окно
для улучшения подавления фильтра в полосе заграждения.
На этом расчет фильтра корректора можно считать законченным.
При расчете можно порекомендовать окно Блэкмана, как наиболее
подходящее.
Выводы
Мы рассмотрели использование CIC
фильтров в задачах децимации и интерполяции
сигналов. Привели структурные схемы CIC
дециматоров и интерполяторов, а также их
модификации. Показали что для четных коэффициентов децимации и
интерполяции целесообразно использовать фильтры коррекции для
выравнивания АЧХ фильтра дециматора и интерполятора. В конце была
приведена схема расчета коэффициентов корректирующего фильтра.
Любые вопросы и пожелания вы можете оставить в
гостевой книге, на форуме,
или прислать по электронной почте admin@dsplib.ru