Цифровые фильтры
без умножений
Дмитрий КАПЛУН
Рост интенсивности радиообмена в последние годы делает необходимым жесткий контроль радиообстановки, который проводится в реальном масштабе времени в очень широком частотном диапазоне. Радиосигналы могут присутствовать в эфире непрерывно или появляться на очень короткое время. Для того чтобы свести к минимуму возможные потери информации и повысить качество ее обработки, системы обработки сигналов должны обеспечивать возможность быстрой работы с большими блоками данных. Это, в свою очередь, требует уменьшения времени вычислений, обеспечивающих, в том числе, и выполнение операций цифровой обработки сигналов. Таким образом, скорость обработки должна быть предельно высокой.
Рис. 1. Структурная схема элементарного звена:
K — количество задержек; W — весовой коэффициент (количество сумматоров)
Введение
В операциях цифровой обработки сигналов особое внимание уделяется цифровой фильтрации, которая по объему вычислений в среднем занимает от 20 до 60%. В узком смысле цифровой фильтр — это частотно-избирательная цепь, обеспечивающая селекцию цифровых сигналов по частоте [2]. После выполнения цифровой фильтрации мы, как правило, получаем интересующий нас сигнал, то есть сигнал, несущий нужную нам информацию в виде, удобном для последующей обработки. Соответственно, к параметрам цифровых фильтров в современных системах цифровой обработки сигналов начинают предъявляться повышенные требования. Порядки фильтров нередко достигают тысячи и более. Это ведет к увеличению объема вычислений, а значит, и к резкому росту аппаратных затрат. При синтезе цифровых фильтров наибольшие затраты времени и оборудования приходятся на операции умножения [2]. Таким образом, задача минимизации времени вычислений и уменьшения аппаратных затрат сводится к минимизации количества умножений, требуемых для вычисления очередного отфильтрованного отсчета.
Структура фильтра
Как известно, классический цифровой фильтр описывается выражением [3]:
у{п) = - г) -X а1У(” - 0, (1)
1=0 1=1
где у(п) — сигнал на входе фильтра; х(п) — сигнал на выходе фильтра; , Ъ{ — коэффициенты фильтра.
Все цифровые фильтры делятся на два обширных класса: нерекурсивные — фильтры с конечной импульсной характеристи-
кой (КИХ) и рекурсивные — фильтры с бесконечной импульсной характеристикой (БИХ) [3]. Мы будем рассматривать только КИХ-фильтры, фазовая характеристика которых, в отличие от БИХ-фильтров, линейна. Для КИХ-фильтров выражение (1) принимает следующий вид [3]:
N
У(п)=^,^х(п-1). (2)
1=0
Таким образом, задача синтеза КИХ-филь-тра сводится к вычислению коэффициентов Ьі такого фильтра.
Проблема минимизации количества операций умножения может быть решена различными путями. Одним из них является использование неклассических структур цифровых фильтров, которые бы описывались выражениями, отличными от (2), ив которых операция умножения исключена вообще. Такие структуры позволяют для некоторых классов цифровых фильтров обеспечить улучшенные характеристики при их реализации. Рассмотрим одну из упомянутых структур. В ее основе— субструктура, изображенная на рис. 1 [1].
Каскадным соединением субструктур, представленных на рис. 1, можно синтезировать фильтры, обладающие различными амплитудно-частотными характеристиками,
которые бы удовлетворяли заданным требованиям по таким критериям, как ширина полосы пропускания фильтра, подавление боковых лепестков, прямоугольность и т. д.
Структуры и использование фильтров без умножений
Фильтры, синтезированные на основе структур, похожих на описанную выше, широко используются в микросхемах digital down converter (DDC) различных фирм. Например, таких как Analog Devices и Texas Instruments. В микросхеме AD6620 фирмы Analog Devices фильтры типа Cascaded Integrator Comb (CIC) CIC2 и CIC5 являются фильтрами без умножителей. CIC2 и CIC5 — фильтры второго и пятого порядков, состоящие, соответственно, из двух и пяти каскадов. Эти фильтры используются для программируемого понижения частоты входных отсчетов.
Специализированные структуры также используются для синтеза цифровых полуполос-ных КИХ-фильтров без умножителей. Полу-полосные цифровые фильтры широко используются при интерполяции и прореживании во многих системах с цифровой обработкой сигналов. В частности, на их основе строятся узкополосные фильтры, подполосные кодеки,
Время (с)
Рис. 3. Импульсная характеристика при добавлении элементарного звена с вычитанием
трансмультиплексоры и другие устройства. В таких фильтрах половина коэффициентов равна нулю, а каждый коэффициент, не равный нулю, представлен в виде некоторой комбинации чисел, равных степени два. В этом случае умножение на единственный коэффициент в звене заменяется операциями сдвига и суммирования (вычитания).
Коэффициенты фильтра
Попробуем получить аналитическое выражение для коэффициентов фильтра. Рассмотрим каскадное соединение описанных выше звеньев. Возьмем три звена, у каждого из которых Щ =1, К =1 и суммирование. Тогда на выходе первого звена получим:
у:(п) = х(п)+х(п-1). (3)
На выходе второго звена получим:
у2(п) = у1(п)+у1(п)х(п-1) =
= х(п)+2х(п-1)+х(п-2). (4)
На выходе третьего звена получим:
у3(п) = у2(п)+у2(п)х(п-1) =
= х(п)+3х(п-1)+3х(п-2)+х(п-3). (5)
Значит, исходя из (3), (4), (5), сигнал на выходе очередного каскада определяется по формуле:
у> (п) = у-х(п)+у;ч(п)х(п-к), (6)
или, если произвести 2-преобразование и перейти в 2-область[2]:
Н(2) = Н-!(2)+Я(ч(2)2-к, (7)
где к — число задержек последнего звена; Н\-1(2) — 2-преобразование предыдущего передаточного звена.
Для коэффициентов же данного фильтра будет справедливо выражение:
Ьг ,п = Ьг-1,п± Ьг-1п-к, (8)
где I — порядковый номер каскада; к — число задержек в г-звене.
Как известно, Ь{ представляют собой коэффициенты импульсной характеристики фильтра [2]. График импульсной характеристики для каскадного соединения четырех звеньев с К =1 приведен на рис. 2. Очевидно, что при добавлении звеньев количество «ступенек» импульсной характеристики, соответствующих коэффициентам передаточной функции фильтра, будет расти.
Покажем, что при добавлении элементарного звена с вычитанием появляются отрицательные коэффициенты. На рис. 3 приведен график импульсной характеристики каскадного соединения четырех звеньев с К = 1 и одного звена с вычитанием, у которого К =1.
Влияние структуры на параметры фильтра
Обратимся к амлитудно-частотным характеристикам (АЧХ) элементарных звеньев.
В логарифмическом масштабе при каскадном соединении звеньев их АЧХ будут складываться. Значит, задача получения нужной АЧХ будет сводиться к сложению АЧХ типовых структур с различными параметрами.
Покажем, как при изменении каждого из трех параметров элементарного звена изменяется его АЧХ. На рис. 4 представлен график АЧХ элементарного звена, для которого К =1, Щ =1. При увеличении количества задержек происходит увеличение экстремумов АЧХ — пропорционально числу задержек. При этом частотный диапазон делится на равные части в соответствии с количеством задержек. Максимумы и минимумы АЧХ в данном случае чередуются через одинаковые частотные промежутки. На рис. 5 и 6 приведены примеры элементарных звеньев с К =2, К = 4.
Графики, представленные на рис. 4-6, позволяют определить структуру фильтра нижних частот (ФНЧ). Сначала синтезируется звено с самым большим количеством задержек. Тогда задача синтеза ФНЧ сводится к уничтожению всех частот, лежащих правее полученной.
Изменение знака сумматора с плюса на минус приводит к появлению экстремума
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Рис. 5. АЧХ элементарного звена с К = 2
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Рис. 6. АЧХ элементарного звена с К = 4
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Рис. 7. АЧХ элементарного звена с вычитанием иК = 1
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Рис. 8. АЧХ каскадного соединения элементарного звена с вычитанием, у которого К = 1, и звеньев сК = 1, К = 2, К = 4
в области нулевой частоты итак называемому дифференцированию АЧХ. После точки перегиба АЧХ становится монотонно возрастающей. Это свойство позволяет синтезировать полосовые фильтры. На рис. 7 и 8 приведены примеры элементарного звена с вычитанием, у которого К =1, а также каскадного соединения элементарных звеньев с К = 1, К = 2, К = 4 и вычитанием, у которого К =1.
Увеличение числа сумматоров, по сути дела, добавляет дополнительные элементарные звенья к заданному звену. Единственное отличие таких звеньев будет в том, что у них К =0, то есть это звенья без задержек. АЧХ при увеличении числа сумматоров становится менее крутой, но форма АЧХ существен-
но не изменяется. На рис. 9 приведен пример элементарного звена с Щ = 2 и К =4.
Соответственно, требуемый фильтр получается при соединении элементарных звеньев с разными параметрами, подобранными так, чтобы обеспечить наилучшие заданные характеристики фильтра.
Синтез фильтров с оптимальными параметрами
Из рассмотренного выше видно, что для получения эффективного для определенного рода задач фильтра необходимо знать параметры элементарных звеньев, составляющих фильтр, а также количество этих звеньев. Эту задачу можно решать двумя путями.
Один из путей — это перебор возможных комбинаций элементарных звеньев для получения фильтра с требуемыми параметрами. В этом случае задаются наиболее приоритетные параметры фильтра — один или несколько, значения которых и будут являться критериями для перебора. Такой перебор ограничивается максимальным числом элементарных звеньев или задержек.
Другой путь — это изначальное задание точек АЧХ фильтра и получение по заданным точкам АЧХ фильтра его структуры, то есть комбинации элементарных звеньев с известными АЧХ. Естественно, что это не всегда возможно сделать точно, и структура фильтра может быть получена с некоторыми допущениями и приближениями. Кроме
того, это применимо не для всех классов фильтров, в силу рассмотренных нами особенностей элементарных звеньев.
Рассмотрим фильтр, полученный каскадным соединением элементарных звеньев, подобранных так, чтобы получить максимальное подавление его боковых лепестков. График АЧХ этого фильтра представлен на рис. 10.
Как видно, мы получили фильтр нижних частот (ФНЧ) с конечной импульсной характеристикой (КИХ). У этого фильтра количество элементарных звеньев равно 44. Ширина полосы пропускания по критерию 3 дБ равна 0,062 ю. Подавление боковых лепестков — 109 дБ.
Синтезируем фильтр с вышеперечисленными параметрами с помощью утилиты Filter Design среды Matlab.
Получился фильтр нижних частот (ФНЧ) с конечной импульсной характеристикой (КИХ), порядок фильтра равен 74. Его параметры и АЧХ представлены на рис. 11.
Сравнивая полученные результаты, можно сделать несколько выводов о достоинствах нового класса фильтров и их применимости.
Во-первых, фильтры этого класса имеют строго определенные частоты подавления, равные 1/2 ю, 1/3 ю, 1/4 ю, 1/6 ю ит. д.
Во-вторых, увеличение числа звеньев приводит к практически неограниченному росту подавления в вышеописанных точках. Таким образом, теоретически становится возмож-
ным получение любого заданного значения подавления в этих точках.
В-третьих, изменение знака сумматора с плюса на минус может быть использовано для расширения полосы пропускания фильтра. Кроме того, использование каскадного соединения элементарных звеньев с вычитанием дает возможность получения эффективных полосовых фильтров, для которых справедливы два вышеизложенных пункта.
На всех графиках (рис. 12-15) приведена нормированная частота ю/юд. ■
Литература
1. Еремеев В. П., Матвеев А. Г., Ануфриева А. В. Новый класс нерекурсивных цифровых фильтров без умножений. 3-я международная конференция Б8РЛ-2000.
2. Солонина А. И., Улахович Д. А., Арбузов С. М., Соловьева Е. Б., Гук И. И.. Основы цифровой обработки сигналов: Курс лекций. СПб.: БХВ-Петербург. 2003.
3. Рабинер Л., Гоулд Б.. Теория и применение цифровой обработки сигналов. М.: Мир. 1978.
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Рис. 12. АЧХ звена с двумя задержками
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Рис. 13. АЧХ звена с тремя задержками
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50
Р4
с
< '
-100,00
Нормированная частота
Рис. 14. АЧХ каскадного соединения двух звеньев с двумя задержками
0,00 0,05 0,10 0,15 0,20 0,25 0,30 0,35 0,40 0,45 0,50