Синтез КИХ-фильтров с произвольной АЧХ при ограниченной длине слова коэффициентов
Введение
Для синтеза цифровых фильтров с ограниченной длиной слова коэффициентов применяются различные алгоритмы, основанные на вариации коэффициентов или исходных параметров либо их сочетании. Хорошие потенциальные возможности метода вариации исходных параметров (ВИП) продемонстрированы на примерах синтеза КИХ-фильтров с линейными ФЧХ (ЛФЧХ) и стандартными требованиями к АЧХ [1, 2]. В работе [1] рассмотрен метод ВИП применительно к аппроксимации АЧХ фильтров на основе окна, а в [2] — к взвешенной чебышевской аппроксимации.
В этой статье предлагается использовать ВИП в сочетании с классическим адаптивным методом синтеза КИХ-фильтров с ЛФЧХ и произвольными требованиями к АЧХ. Адаптивный метод детально изложен в [3].
Синтез КИХ-фильтров на основе алгоритмов адаптации и ВИП
Объединение алгоритмов адаптации и ВИП можно выполнить по-разному. Ограничимся наиболее простым двухэтапным подходом. На первом этапе с помощью адаптивной процедуры определим непрерывные коэффициенты КИХ-фильтра с ЛФЧХ. На втором этапе используем однопараметрический алгоритм ВИП. В качестве варьируемого параметра в нем будет служить масштабный множитель, введенный в коэффициенты, найденные на первом этапе. Изменение множителя влияет на усиление фильтра. На этом этапе выполним квантование текущих масштабированных коэффициентов с заданным шагом, контроль АЧХ фильтра и выбор наиболее подходящего решения из конечного числа возможных.
Пример синтеза
В [4] рассмотрена задача коррекции АЧХ гидроакустического тракта в полосе пропускания с помощью цифрового фильтра, который также должен обеспечивать заданное ослабление в полосе задерживания и обладать хорошей линейностью ФЧХ. При этом длина слова коэффициентов фильтра должна быть ограниченной. Для решения этой задачи авторы [4] использовали метод целочисленного нелинейного программирования (ЦНП) применительно к каскадным БИХ-фильтрам на звеньях второго порядка прямой формы. Далее приведены результаты альтернативного решения этой задачи с применением предложенного выше алгоритма, которые сравниваются с полученными в [4].
На рис. 1 показаны АЧХ искаженного, идеального и скорректированного с помощью КИХ-фильтра гидроакустического тракта. Там же представлена АЧХ самого фильтра.
В таблице 1 приведены параметры тракта, скорректированного КИХ- и БИХ-фильтром. Как видим, цифры для этих вариантов коррекции близки и согласно [4] приемлемы.
Параметры АЧХ скорректированного тракта |
КИХ-фильтр |
БИХ-фильтр |
Отклонение усиления в полосе 2–43 кГц |
≤0,1 |
≤0,08 |
Усиление в полосе 50–60 кГц |
≤0,136 |
≤0,153 |
В таблице 2 представлены параметры корректирующих КИХ- и БИХ-фильтров. Значения параметров АЧХ (табл. 1), ФЧХ и ХГВЗ (табл. 2) для БИХ-фильтра уточнены по коэффициентам из [4].
Параметры |
КИХ-фильтр |
БИХ-фильтр |
Порядок |
22 |
16 |
Количество умножителей |
9 |
39 |
Количество сумматоров |
16 |
31 |
Шаг квантования коэффициентов |
2–5 |
2–6 |
Нелинейность ФЧХ |
0° |
±5,9° |
Неравномерность ХГВЗ, % |
0 |
±8 |
Среднее значение ГВЗ, мс |
0,092 |
0,125 |
Примечания. Параметры ХГВЗ и ФЧХ для БИХ-фильтра оценены в полосе 0–43 кГц. АЧХ фильтров обеспечивают параметры тракта, приведенные в таблице 1. Частота дискретизации равна 120 кГц.
Из таблицы 2 следует, что синтезированный КИХ-фильтр 22‑го порядка с ЛФЧХ имеет неоспоримое преимущество в сравнении с БИХ-фильтром 16‑го порядка, как по параметрам характеристик, так и по его простоте. Действительно, КИХ-фильтр имеет нулевую нелинейность ФЧХ (неравномерность ХГВЗ), требует в четыре раза меньше умножителей и почти в два раза меньше сумматоров, а также соответствует большему шагу квантования (меньшей длине слова).
Найденные коэффициенты hi, i = 0, 1, …, 11 КИХ-фильтра представлены в таблице 3. Три из них равны нулю, что учтено в таблице 2 при подсчете количества умножителей и сумматоров. Импульсная характеристика фильтра симметрична относительно h11. Время синтеза КИХ-фильтра на компьютере (с процессором 3 ГГц) пренебрежимо мало.
i |
hi |
hi/2–5 |
0 |
0,03125 |
1 |
1 |
0 |
0 |
2 |
0,0625 |
2 |
3 |
0,0625 |
2 |
4 |
–0,0625 |
–2 |
5 |
0 |
0 |
6 |
–0,03125 |
–1 |
7 |
0 |
0 |
8 |
0,09375 |
3 |
9 |
–0,25 |
–8 |
10 |
0,46875 |
15 |
11 |
1,4375 |
46 |
На рис. 2а показана прямая структура КИХ-фильтра с ЛФЧХ, а на рис. 2б приведен ее векторный умножитель, реализованный на сумматорах и элементах сдвига согласно коэффициентам из таблицы 3. На рис. 2б узлы сверху соответствуют входам умножителей, причем номер узла совпадает с индексом коэффициента, а отрезок жирной линии и указанное рядом число, равное степени два, означают, что здесь необходим сдвиг данных в соответствии с этим числом и инверсия знака, если оно отрицательное. Как видим, векторный умножитель на коэффициенты h10 и h11 реализован на трех сумматорах, умножитель на h8 — на одном сумматоре, а умножители на остальные коэффициенты вообще не требуют сумматоров.
Структура фильтра на рис. 2 экономична при параллельном ее исполнении на ПЛИС, заказных или полузаказных СБИС. В этом случае сдвиг не требует временных и аппаратных затрат. Для реализации фильтра необходимо 19 сумматоров. Его быстродействие определяется временем пяти суммирований, а при введении в структуру максимального числа буферных задержек — лишь временем одного суммирования.
Замену умножителей на сумматоры и элементы сдвига можно выполнить и для обращенной прямой структуры синтезированного КИХ-фильтра, которая содержит блок умножителей с общим входом. В этом случае для реализации фильтра также необходимо 19 сумматоров. Выбор прямой или обращенной структуры определяется требованиями к сложности реализации фильтра, его быстродействию и отношению сигнал/шум округления на выходе. Однако обсуждение этого вопроса выходит за рамки данной статьи.
Представляется, что существует более простой БИХ-фильтр, чем найденный в [4]. Возможно, он будет проще полученного КИХ-фильтра с ЛФЧХ. Но для БИХ-фильтров, оперирующих в реальном масштабе времени, нулевая нелинейность ФЧХ недостижима, хотя в полосе пропускания ее можно сделать сколь угодно малой, увеличивая порядок фильтра и длину слова коэффициентов.
Заключение
Итак, синтез цифрового КИХ-фильтра с ЛФЧХ и произвольной АЧХ при ограниченной длине слова коэффициентов может быть успешно выполнен на основе простейшего сочетания классического адаптивного метода и техники ВИП. Так, синтезированный в качестве примера КИХ-фильтр оказался много проще БИХ-фильтра, найденного ранее методом ЦНП.
Предложенный подход и его возможный уточненный вариант не гарантируют нахождения глобального оптимума. Поэтому полученные решения можно использовать в качестве начальных приближений в алгоритмах вариации коэффициентов, ожидая дополнительного их улучшения.
Автор статьи благодарит В. Н. Бугрова за предоставленную копию публикации [4], а также данные по гидроакустическому тракту и надеется, что изложенный материал окажется полезным для конкретного приложения и послужит хорошей подсказкой разработчикам при проектировании цифровых корректоров АЧХ.
- Мингазин А. Т. Вариация исходных параметров в задачах синтеза цифровых КИХ-фильтров с конечной длиной слова коэффициентов. 3‑я Международная конференция и выставка «Цифровая обработка сигналов и ее применение» (DSPA). 2000. Т. 1.
- Мингазин А. Т. Вариация исходных параметров взвешенной чебышевской аппроксимации в задаче синтеза КИХ-фильтров без умножителей. 7‑я Международная конференция и выставка «Цифровая обработка сигналов и ее применение» (DSPA). 2005. Т. 1.
- Уидроу Б., Стирнз С. Адаптивная обработка сигналов. М.: Радио и связь, 1989.
- Шкелев Е., Бугров В., Пройдаков В., Артемьев В. Целочисленные цифровые фильтры — эффективное решение для 8‑битовых цифровых платформ // Компоненты и технологии. 2013. № 10.