Дмитрий КАПЛУН Иван КАНАТОВ Андрей БУДИЛОВ Леонид АЗАРЕНКОВ
Частотно-временной анализ
банком цифровых фильтров
Цифровая фильтрация применяется практически во всех областях техники, связанных с обработкой сигналов. Чтобы иметь представление о процессах, происходящих в широком диапазоне частот, применяется многоканальная фильтрация. Частотно-временной анализ используется в таких областях, как диагностика состояния машин и механизмов, радиолокация, акустика, навигация и т. д.
Цель статьи — проиллюстрировать преимущества активно развивающихся в последние годы методов частотно-временного анализа с помощью банков цифровых фильтров (конвейерного частотного преобразования, поли-фазного преобразования или ДПФ с расширенным весовым окном и др.) по отношению к классическим методам с использованием ДПФ, дать практические рекомендации по выбору параметров банков фильтров.
Банк цифровых фильтров
Цифровой нерекурсивный фильтр нижних частот (ФНЧ) обычно представляется в форме [1]:
I-1
У(п) = ^Ь1х(п-1), (1)
■=_^
' 2
где Ь, — коэффициенты фильтра или отсчеты его импульсной характеристики.
Из всего частотного диапазона такой фильтр выделит узкую полосу, причем для вещественного сигнала нижней границей такого фильтра будет нулевая частота, а для комплексного сигнала нулевая частота будет соответствовать центру полосы пропускания (рис. 1). На этом рисунке приведены исполь-
зованные далее обозначения характерных точек АЧХ. Рассмотрим комплексный сигнал, обозначив его частотный диапазон ±юа/2.
Чтобы выделить другую часть частотного диапазона тем же ФНЧ, нужно гетеродини-рованием свести к нулю центральную частоту ак этого поддиапазона. Тогда (1) будет иметь вид [1]:
1 2
у к м=77 X ьі {х(п ~ о ехр[м («- 0]}.
' 2 (2) Таким способом можно перекрыть весь исследуемый частотный диапазон фильтрами, характеристики которых могут быть близки к идеальным: иметь минимальное наложение соседних каналов, равномерную частотную характеристику в полосе пропускания и желаемый коэффициент подавления. Пример реальной частотной характеристики двух соседних каналов представлен на рис. 2. На рис. 3 приведены выходные сигналы трех соседних фильтров при входном ЛЧМ-сиг-нале. А на рис. 4 показан сигнал на выходе банка фильтров при входном сигнале, состоящем из четырех частот (три частоты в пятом канале и одна — в двадцатом).
Сравним (2) с классической формулой взвешенного ДПФ [1]:
1 2
Х* = 77 X аЖп ~ ^ ехР[_-/юіг’ ], (3)
м Гм
,=” 2
где Хк(п) — к-ая гармоника ДПФ в момент времени п; — коэффициент весового окна.
Полное сходство этих формул демонстрирует дуальность ДПФ, которое можно рассматривать и как спектральное преобразова-
, / А(ю) К , ..
1 —(0<5 / 2 —С 1 ^ СО рам СО зіор С06/2
Рис. 1. АЧХ цифрового фильтра нижних частот
Рис. 3. Выходные сигналы трех соседних фильтров при ЛЧМ-сигнале
ние, и как совокупность цифровых фильтров. Различие этих формул состоит только в длине интервала суммирования, индексе времени при экспоненте и в выборе весовых коэффициентов и Ъ{.
Для ДПФ величина М — это одновременно и количество временных отсчетов, и количество получаемых после преобразования спектральных составляющих. Это условие приводит к трем известным дефектам ДПФ: это наложение соседних каналов, неравномерность частотной характеристики и большой уровень боковых лепестков. Попытки устранить все три дефекта весовыми окнами Ханнинга, Ханна, Кайзера и т. п., сохраняющими интервал осреднения, равный количеству спектральных составляющих, дали возможность подавить боковые лепестки, но лишь за счет усиления двух других дефектов. Это и послужило главной причиной появления методов синтеза банков цифровых фильтров. Отличие этих методов состоит в подходе к упрощению аппаратной реализации банков фильтров.
ДПФ с расширенным весовым окном
При первом из этих методов — ДПФ с расширенным весовым окном [2] — БПФ используется как совокупность операций ге-теродинирования и суммирования. В этом методе весовые коэффициенты Ъ{ и их количество выбираются исключительно из соображения получения желаемой частотной характеристики канала. Чтобы упростить преобразование, авторы метода ввели всего одно дополнительное условие:
N = КМ, К =2, 3... (4)
Поскольку интервалу М кратны все частоты базиса Фурье, можно переставить порядок выполнения операций суммирования и гетеродинирования, сначала взвесить все отсчеты х(п) коэффициентами выбранного фильтра Ъ,, потом разбить взвешенный вектор на К отрезков длины М, поэлементно сложить эти отрезки и только после этого произвести операцию БПФ:
^ М-1 К-1
= 77 X е^Шк^Цх{п-рМ-г).
м Ы) р=о (5)
Если число каналов М банка фильтров задано, открытым остается только вопрос выбора коэффициента удлинения К интервала взвешивания. Решить этот вопрос помогают следующие два свойства НЧ-фильтров:
1) При увеличении ширины полосы пропускания фильтра в т раз количество коэффициентов фильтра уменьшается во столько же раз. Аналогичное соотношение верно и для случая уменьшения ширины полосы пропускания. Если взять импульсную характеристику фильтра и «выколоть»
каждый второй отсчет (децимация в 2 раза), получится фильтр с тем же коэффициентом прямоугольности, но с Ю*(0р = 2ю5йр. Это свойство можно использовать, например, при синтезе перестраиваемого фильтра с заданной прямоугольностью частотной характеристики. Для решаемой задачи это означает, что число М никак не влияет на выбор К, поскольку при любом М ширина полосы пропускания фильтра должна быть ±юа/2М.
2) Увеличение крутизны наклона частотной характеристики НЧ-фильтра (уменьшение ю5йр- Юрая) возможно только за счет пропорционального увеличения числа его коэффициентов, то есть величины К в (4). При стандартных требованиях к коэффициенту прямоугольности КПР = 1,1—1,3 целесообразно задать параметр К в пределах 13—17. Естественно, на выбор К влияют и коэффициент пульсации в полосе пропускания, и величина подавления на частотах выше ю5йр. При этом, чем больше К, тем проще обеспечить равномерность характеристики и большой коэффициент подавления.
Рассмотрим теперь вопрос выбора временного интервала вычисления текущих отсче-
тов гк (п). Частотная характеристика каждого канала определяется коэффициентами Ъ выбранного фильтра, а ширина полосы пропускания составляет 1/М исходного частотного диапазона. Такое сужение полосы каждого канала в М раз позволяет увеличить интервал между выборками также в М раз, что не противоречит теореме Котельникова-Найквиста. При этом спектральные составляющие, получаемые в моменты времени п = 1М, I = 0, 1, 2..., можно рассматривать как результат обработки сигнала набором фильтров (2) при децимации в М раз.
На практике обычно имеет место некоторое перекрытие частотных характеристик каналов (как на рис. 2), поэтому децимация в М раз недопустима. Чтобы уменьшить фактор децимации до М/2, необходимо проводить преобразование (5) в два раза чаще, то есть в моменты времени п = 1М, I = 0,5, 1, 1,5, 2. Когда I = (2Х+1)/2, X =1, 2, 3., экспоненты из (2) будут находиться в середине своего периода, а экспоненты из (5) будут в нулевой фазе. Чтобы восстановить равенство (5) и (2), надо устранять фазовый сдвиг, равный п радиан для всех нечетных тк. Это достигается умножением (5) на ехр(2п]кп/М).
На рис. 5 представлена фильтрация гармонического сигнала с линейно нарастающей частотой в трех соседних каналах. Результат получен на банке фильтров, реализованном в ПЛИС ХШпх ХС4УЬХ25, со следующими параметрами: число каналов 1024, максимальная частота дискретизации входного комплексного сигнала 100 МГц, длина фильтра 13 302.
Конвейерное частотное преобразование
Альтернативным методом построения банка цифровых фильтров является конвейерное частотное преобразование (КЧП) [3]. Качественное отличие этого метода состоит в разбиении всей процедуры обработки на ряд последовательно выполняющихся однотипных этапов, что, во-первых, повышает гибкость метода и позволяет строить системы фильтров, настраиваемые по ряду параметров, а, во-вторых, сокращает аппаратные затраты при реализации, что дает возможность исследовать более широкие частотные диапазоны.
Используя данный метод, можно разделить спектр исходного сигнала на нужное число каналов, при этом число каналов N = 2", где п — число стадий (ступеней конвейера или уровней дерева преобразования).
На всех ступенях КЧП многократно повторяются следующие три последовательные операции:
• гетеродинирование;
• НЧ-фильтрация КИХ-фильтром;
• децимация.
Идея метода состоит в том, что используется один и тот же фильтр, один и тот же гетеродин, а децимация всегда производится два раза.
При прохождении сигнала с частотным диапазоном ±юа/2 через каждую ячейку КЧП сигнал подвергается гетеродинированию на юа/4, НЧ-фильтрации с частотой среза юд/4 и децимации вдвое. Двукратное применение
подобного преобразования позволяет разбить исходный частотный диапазон на два поддиапазона (рис. 6).
Децимация обеспечивает «растягивание» каждого частотного поддиапазона на весь исходный диапазон, что дает возможность применять те же фильтры и гетеродины на последующих ступенях, а также вдвое снижает количество вычислений для всех последующих операций. Каждый канал снова проходит через две ячейки: получим сначала 4, а потом 8 каналов.
На каждом этапе происходит удвоение количества каналов с сужением их полос про-
пускания вдвое: после №го этапа получаем 2N каналов с шириной полосы пропускания и частотой дискретизации в 2N раз меньше исходных. Поэтому от этапа к этапу суммарный объем вычислений остается неизменным. Однако многократное повторение однотипных операций приводит к специфическим проблемам при некорректном выборе ЧХ-фильтра.
Первая важная особенность заключается в том, что все границы частотных полос подвергаются повторной обработке переходной областью фильтра на каждом последующем этапе, в результате чего крутизна фронтов частотных полос и подавление вне полосы прозрачности увеличивается от ступени к ступени. Увеличение крутизны фронтов позволяет существенно сократить количество отсчетов в ФНЧ за счет применения фильтров с более пологими АЧХ. (Как правило, используемый ФНЧ имеет не более 20—25 отсчетов.) Однако неприемлемо использование фильтров с недостаточным подавлением на частотах свыше четверти частоты дискретизации, поскольку на каждом этапе ровно половина всех границ каналов формируется заново, и при недостаточном подавлении возможно искажение сигнала после децимации. Многократная обработка ФНЧ приводит к появлению таких кумулятивных эффектов, как неравномерность АЧХ канала; асимметрия частотных полос; провалы в районе половины частотного диапазона, его четверти и т. д.
Периодические провалы ЧХ возникают в том случае, когда пологая часть ЧХ фильт-
Рис. 8. Разбиение на каналы при неравномерности в полосе прозрачности ФНЧ 0,04 дБ
ра выбирается меньше юа/4. При выборе плоской части ЧХ, равной юа /4, наблюдается значительное перекрытие соседних каналов (рис. 7а). Желание уменьшить это перекрытие сокращением плоской части приведет к провалам ЧХ (рис. 7б).
Подобная ситуация обычно возникает при использовании точно такой схемы метода, что описана выше (с гетеродинами на ±юа/4 и без запаса по частоте). При разделении на большое число каналов необходимо брать исходную частоту дискретизации с запасом. Например, при запасе вдвое указанные частоты гетеродина и среза ФНЧ нужно уменьшить вдвое. При этом так же вдвое увеличивается количество вычислений, но возможно использование фильтров с очень пологими спадами. Тогда для обеспечения заданного уровня перекрытия каналов удобно использовать «формирующие» ФНЧ на последнем этапе. На практике целесообразно использовать частоту дискретизации в 1,2—1,3 раза больше верхней частоты сигнала (при соответствующем масштабировании частоты гетеродина и среза ФНЧ).
Подобное же влияние оказывает неравномерность в полосе прозрачности фильтра. На рис. 8 показано корректное разбиение, когда неравномерность каждого ФНЧ составляет 0,04 дБ в полосе прозрачности, в то время как при разбиении на 128 каналов результирующая неравномерность достигает 0,3 дБ. На рис. 9 показан результат такого же разбиения при неравномерности каждого ФНЧ 0,3 дБ в полосе прозрачности.
Требования к фильтрам могут быть значительно смягчены, если на последнем этапе применять специальные «формирующие» фильтры. Эти фильтры могут обладать большей неравномерностью по сравнению с остальными и задавать резкие границы каналов без вреда для симметрии АЧХ. Кроме того, при наличии достаточного запаса по частоте и при достаточно широких фильтрах на предыдущих этапах, можно использовать набор «формирующих» фильтров для регулирования перекрытия (при двойном запасе частоты возможно перекрытие наполовину).
Рис. 9. Разбиение на каналы при неравномерности в полосе прозрачности ФНЧ 0,3 дБ
Взвешенное перекрывающееся сложение
Как и при КЧП, реализация банка цифровых фильтров в данном случае основывается на трех операциях:
• сдвиг в частотной области (модуляция комплексной экспонентой ё'’ь);
• фильтрация ФНЧ к(п);
• децимация.
Схема работы банка цифровых фильтров приведена на рис. 10. Здесь и>к — центральная частота фильтра к (п).
Выходные отсчеты после фильтрации определяются уравнением:
хк(т)=X'н»^-«)хФ)^"ь (6)
Реализация фильтра согласно формуле (6) очень неэффективна. Для критически деци-мированного банка фильтров полифазная декомпозиция более предпочтительна. Полифазная реализация описывается следующим уравнением:
М-1
**и=Х^Ри%и]^-*р=
= /Лр{Рр(т)%(т)}, (7)
где * обозначает свертку, Рр(т) = к(пМ—р), хр(т) = х(тМ+р).
Полифазная структура (рис. 11) предполагает, что выходные отсчеты критически деци-мированы, то есть частота дискретизации в каждом канале в К раз меньше, чем частота дискретизации входного сигнала, где К — число каналов. Увеличение выходной частоты в целое число раз возможно добавлением нулей на входе каждого полифазного фильтра.
Метод взвешенного перекрывающегося сложения (ВПС) реализует полифазный банк фильтров в терминах поблочного анализа [3]. Как и в предыдущем случае, выходные отсчеты опи-
Рис. 11. Полифазная структура банка цифровых фильтров
Выход L-каналов
Рис. 12. Алгоритм взвешенного перекрывающегося сложения
сываются уравнением (6). Это уравнение может быть переписано следующим образом:
ym(n) = h (mM-n)xx (n); (8a)
(8b)
n=0
Используя такую форму, фильтр h (*) можно представить в виде скользящего анализирующего окна, которое выделяет короткую последовательность ym (n) и затем производит короткое преобразование Фурье. При такой интерпретации индекс децимированного времени m — это номер блока, и xk (m) может быть интерпретирован как кратковременный спектр сигнала в момент времени n = mM. При подстановке r = n-mM кратковременное преобразование может быть представлено в виде:
Хк(т) = '^h(-r)Xx(r+mM)xW^>cr- (9)
Чтобы привести (9) к форме, удобной для применения БПФ, используется наложение во времени, так как для БПФ число выходных отсчетов равно числу входных. Последовательность ym (n) делится на сегменты длиной K, где K — длина БПФ или количество каналов; затем производится наложение сегментов и преобразование Фурье от получившейся суммы длиной K.
Алгоритм может быть сведен к следующим шагам:
1) Взвешивание сигнала анализирующим окном и получение ym(r) = h(-r)xx(r+mM).
2) Сегментирование последовательности ym (r) на блоки длиной K и наложение их друг на
друга: „
1=-оо
3) БПФ получившейся последовательности для получения выходных отсчетов: xk (m) = FFT {xm (r)}.
4) Для следующего блока (m+1) данные сдвигаются на M, и новый блок длиной M загружается в регистр.
Для критической децимации (M = K) взвешенное перекрывающееся сложение анало-
гично полифазному банку фильтров. Различие лишь в том, что ВПС ориентировано на поблочный анализ. На рис. 12 представлен алгоритм ВПС. В качестве анализирующего окна h(г) берется ФНЧ с полосой пропускания, соответствующей одному каналу. Длина этого фильтра должна быть кратной K
Выводы
Принципиальная разница между традиционным БПФ-анализом и ДПФ с расширенным весовым окном состоит в том, что при обычном вычислении спектра временной интервал между выборками может выбираться произвольно и зависит только от скорости изменения спектра. Для банка цифровых фильтров базисные функции Фурье — это опорные частоты гетеродинов, транспониру-
ющих спектр. Поэтому сдвиг во времени в исходном сигнале должен сопровождаться точно таким же сдвигом всех функций базиса. Этот сдвиг легко реализуется только для частных случаев, когда сдвиг равен К/2 или К/4.
КЧП позволяет получать отсчеты с промежуточных стадий, а ВПС — нет.
В КЧП возможно использовать различные фильтры на разных стадиях.
КЧП имеет более простую реализацию, так как нет необходимости реализовывать алгоритм БПФ. Однако при наличии готовой реализации БПФ метод ВПС оказывается значительно проще и, возможно, быстрее.
В КЧП затруднено получение узкополосных каналов; в ВПС, напротив, возникают проблемы при получении перекрывающихся каналов.
АЧХ при использовании ВПС значительно превосходят по качеству АЧХ, полученные при использовании КЧП. ■
Работа выполнена на средства гранта правительства г. Санкт-Петербурга в2008 году.
Литература
1. Солонина А. И., Улахович Д. А., Арбузов С. М., Соловьева Е. Б., Гук И. И. Основы цифровой обработки сигналов: курс лекций. СПб.: БХВ-Петербург, 2003.
2. Азаренков Л. Г., Канатов И. И., Каплун Д. И. Банк цифровых фильтров // Компоненты и технологии. 2007. № 10.
3. Lillington J. CTO, RF Engines Limited. www.rfel.com, 2002.