Исследование реализации цифровых фильтров с симметричными амплитудными функциями

№ 10’2009
PDF версия
Классическая теория синтеза электрических цифровых фильтров развивалась вначале как теория проектирования фильтров на базе элементов L и C. В рамках этой теории разработчики стремились уменьшить число элементов и, как следствие, получить передаточную функцию (ПФ) минимального порядка, соответствующую заданным требованиям.

Краткий обзор развития техники фильтрации сигналов

Появление активных RC-цепей (ARC) повлекло за собой изменение условий физической реализуемости, но не повлияло на цель проекта: минимальный порядок ПФ, который эквивалентен минимальному числу элементов емкостей.

Минимальный порядок всегда был определяющим при синтезе фильтров. Однако такие новые аппаратные средства, как сигнальные процессоры, программируемые логические интегральные схемы (ПЛИС) и системы на кристалле, могут по-другому реализовывать алгоритмы, а значит, при разработке цифровых устройств необходимо учитывать особенности той элементной базы, на которой будет происходить имплементация.

В качестве возможного и целесообразного параметра предлагается рассматривать число операций W на один выходной отсчет в установившемся режиме (а не в первые и последние моменты времени реакции цифровой цепи). В этом случае уменьшение числа ненулевых коэффициентов в ПФ фильтра при выполнении требований к амплитудной функции (АФ) является, безусловно, полезным результатом, упрощающим схему и уменьшающим W. Это эквивалентно увеличению частотного диапазона или увеличению, например, числа фильтров на одном кристалле.

Реализация цифровых фильтров

В современной цифровой обработке сигналов наиболее употребимы три варианта реализации цифровой фильтрации: с помощью ПЛИС, с помощью цифровых процессоров обработки сигналов (ЦПОС, Digital Signal Processor, DSP) и с помощью систем на кристалле (System on Chip, SoC [1]). Рассмотрим наиболее часто употребляемые в настоящее время реализации с помощью ПЛИС и ЦПОС.

Программируемые логические интегральные схемы делятся на два основных класса: ПЛИС на основе программируемой матричной логики (ПМЛ) и программируемых вентильных матриц (ПВМ), используемых в цифровой обработке сигналов (ЦОС).

В настоящее время наблюдается переход к использованию именно ПЛИС, что обусловлено следующими их преимуществами:

  • высокая тактовая частота;
  • большее число аппаратных интерфейсов по сравнению с ЦПОС;
  • гибкость при разводке платы, позволяющая подавать данные произвольной разрядности.

Кроме того, стоимость ПЛИС ниже, чем стоимость сигнальных процессоров, а условия их эксплуатации одинаковы, поэтому производители аппаратуры ЦОС стараются использовать именно ПЛИС.

Функциональность ПЛИС зависит от количества размещенных на ней устройств обработки. Каждое устройство, размещаемое на ПЛИС, использует определенное количество ее ресурсов. Одними из наиболее критичных элементов в ПЛИС являются умножители. В состав каждой ПЛИС входит фиксированное количество умножителей, которые могут быть использованы для построения определенного числа систем либо одной сложной схемы.

Поэтому для оптимального использования ресурсов ПЛИС предлагается минимизировать не порядок фильтра, а число его ненулевых коэффициентов, что позволит уменьшить количество используемых умножителей, а значит — освободить место для других устройств.

Однако существуют сложные алгоритмы, выполнение которых с помощью ПЛИС невыгодно или невозможно. В таких случаях применяются сигнальные процессоры ЦОС. Например, те, которые требуют высокой точности вычислений и, соответственно, представления данных в формате с плавающей точкой.

Отличительной чертой задач ЦОС является поточный характер обработки больших объемов данных в реальном масштабе времени, требующий от технических средств высокой производительности и возможности интенсивного обмена с внешними устройствами. В настоящее время это достигается благодаря специфической архитектуре, называемой базовой архитектурой ЦПОС.

Базовая архитектура обусловлена:

  • применением модифицированной гарвардской архитектуры;
  • широким использованием конвейерного режима работы;
  • наличием специализированного устройства умножения;
  • наличием специальных команд для цифровой обработки сигналов;
  • реализацией короткого командного цикла. Гарвардская архитектура в классическом варианте подразумевает размещение программы и данных в раздельных запоминающих устройствах (ЗУ) и их передачу по раздельным шинам. Это позволяет полностью совмещать во времени выборку и исполнение команд.

Конвейер также применяется в целях повышения производительности ЦПОС. Так, в четырехкаскадном конвейере (например, в ЦПОС TMS320C2xx) сигнальный процессор может обрабатывать одновременно четыре команды, причем все команды находятся на разных стадиях выполнения.

Для ЦПОС характерным является наличие аппаратного умножителя, позволяющего выполнять умножение двух чисел за один командный такт. В универсальных же процессорах умножение обычно реализуется за несколько тактов, как последовательность операций сдвига и сложения.

Другой особенностью ЦПОС является включение в систему специальных команд, например: умножение с накоплением (multiplication accumulation, MAC), позволяющее производить суммирование результатов умножения в формате с двойной точностью; инверсия битов адреса; разнообразные битовые операции.

В ЦПОС широко используются методы сокращения длительности командного цикла, характерные, в том числе, для универсальных RISC-процессоров (reduced instruction set computer, RISC).

Основным преимуществом ЦПОС по сравнению с ПЛИС является обработка данных в формате с плавающей точкой.

Использование данных в формате с плавающей точкой обусловлено несколькими причинами. Для многих задач, связанных с выполнением интегральных и дифференциальных преобразований, особую значимость имеет точность вычислений, обеспечить которую позволяет экспоненциальный формат представления данных. Алгоритмы компрессии, декомпрессии, адаптивной фильтрации в ЦОС связаны с определением логарифмических зависимостей и весьма чувствительны к точности представления данных в широком динамическом диапазоне.

Работа с данными в формате с плавающей точкой существенно упрощает и ускоряет обработку, повышает надежность программы, поскольку не требует выполнения операций округления и нормализации данных, отслеживания ситуаций потери значимости и переполнения.

Платой за дополнительные «комфорт и скорость» являются: высокая сложность функциональных устройств, выполняющих обработку данных в формате с плавающей точкой; необходимость использования более сложных технологий производства микросхем; больший процент отбраковки изделий и, как следствие, более высокая стоимость ЦПОС [2].

Итак, при современной аппаратной реализации целесообразно уменьшить количество умножителей, необходимых для построения системы. Сократить число умножителей предлагается за счет обнуления части коэффициентов ПФ. Обнулить часть коэффициентов ПФ, при определенных условиях, позволяет использование обобщенной леммы Бернштейна.

Обобщенная лемма Бернштейна

Рассмотрим задачу аппроксимации функции ξ(χ) на множестве Ek, где аппроксимирующей функцией является полином P(x, A), а в качестве критерия используем норму [3, 4]1:

В частных случаях формулу (1) удобно использовать для среднеквадратического приближения (при q = 2) и наилучшего равномерного приближения (по теории Чебышева, при q = ∞).

Тогда, если множество Ek симметрично относительно начала координат, и полином P(x, A) может быть представлен в виде суммы четных и нечетных функций, то наилучшее приближение в используемой метрике при помощи полинома общего вида то же, что при помощи полинома, содержащего только четные функции, когда ξ(χ) — четная функция, и такое же, что и при помощи полинома, содержащего только нечетные функции, когда ξ(χ) — функция нечетная.

Примечание. Весовая функция в выражении (1) четная, то есть p(x) = p(-x), xeEk, что определяется четностью или нечетностью функции ξ (x).

Приведем доказательство для четной функции ξ(χ). В случае нечетной функции ξ(χ) доказательство проводится аналогично.

Обозначим:

Тогда, учитывая симметричность множества Ek, которое можно представить как Ek = [(-Ek/2)U(Ek/2)], выражение (1) можно записать в виде:

Действительно, определенный интеграл представляет собой площадь фигуры под графиком функции, смена знака аргумента функции приводит к отражению графика функции относительно оси ординат, симметричные пределы интегрирования определяют равенство двух площадей.

Теперь можно переписать равенство (3), произведя замену, обратную (2):

Так как весовая функция p(x) является четной, аппроксимируемая функция ξ(χ) также является четной, то:

Таким образом, аппроксимация функции ξ(χ) полиномом P(x, A) такая же, как и полиномом P(-x, A), а значит, и полиномом:

Если P(x, A) состоит из четных и нечетных функций, то все нечетные функции сокращаются, и полусумма представляет собой четную функцию, что и требовалось доказать [3].

Применение обобщенной леммы Бернштейна для синтеза фильтров заставляет учитывать два ограничения:

  • требования к фильтру должны быть симметричны или антисимметричны на симметричном множестве;
  • аппроксимирующий полином должен представлять собой сумму четных и нечетных функций.

Рассмотрим данные ограничения более подробно.

Симметричные или антисимметричные требования к фильтрам

Рассмотрим требования, которым должна удовлетворять амплитудная функция фильтра, чтобы ее можно было назвать симметричной или антисимметричной.

Введем обозначения: χ , χ´χ — левая и правая граничные частоты полосы пропускания (ПП); cok, C0k — левая и правая граничные частоты полосы задерживания (ПЗ); d1, d^ — неравномерности в полосах пропускания и задерживания (рис. 1).

Рис. 1. Типы фильтров и их характеристики: а) ФНЧ; б) ФВЧ; в) ППФ; г) ПЗФ

Симметрирование множества, на котором происходит аппроксимация, возможно за счет сдвига требований по оси частот на π/2 влево, то есть при помощи замены переменной χ´ = χ+π/2. При такой замене требования к полосопропускающим (ППФ) и полосоза-держивающим (ПЗФ) фильтрам уже являются симметричными (рис. 1). Для того чтобы требования к фильтрам нижних (ФНЧ) и верхних (ФВЧ) частот были антисимметричными, необходимо сдвинуть график требований на 0,5 вниз по оси ординат (рис. 1).

Условия симметричных требований к АФ для различных типов избирательности таковы:

  • фильтры нижних и фильтры верхних частот: d1 = d2 и χ´χ = π-χ´k;
  • полосозадерживающие и полосопропуска-ющие фильтры: одинаковые неравномерности в ПП (для ПЗФ) и в ПЗ (для ППФ), χ´χ = π-χ´ и χ´ k = π-χ´-k.

Частным случаем симметрии АФ является двойная симметрия. Свойством двойной симметрии могут обладать амплитудные функции ППФ и ПЗФ. Фильтры с двойной симметрией АФ должны удовлетворять следующим условиям:

  • ППФ или ПЗФ должны быть симметричны;
  • χ´-k = π/2-χ´ ;
  • неравномерности во всех полосах должны быть одинаковыми [3, 5].

В [5] показано, что передаточные (ПФ) функции фильтров, АФ которых обладает свойством симметрии, имеют почти половину нулевых коэффициентов, тогда как при условии двойной симметрии АФ ПФ могут содержать до трех четвертей нулевых коэффициентов.

Представление аппроксимирующего полинома в виде суммы четных и нечетных функций

Рассмотрим класс фильтров с конечной импульсной характеристикой (КИХ-фильтры) и линейной фазочастотной характеристикой (ФЧХ). Существует 4 типа таких фильтров, их ПФ могут быть представлены в виде H(ejχ´) = Q(ejχ´)*R(ejχ´) (табл. 1) [3].

Для того чтобы можно было использовать обобщенную лемму Бернштейна, необходимо, чтобы для каждого n при коэффициентах ã(n), b(n), ĉ(n) или đ(n) стояли либо четные, либо нечетные функции.

Функция Q(ej<0) различается для всех типов фильтров, в то время как функция R(eja‘) для всех типов фильтров может быть представлена в обобщенном виде:

Для перехода в симметричную область произведем замену переменной:

Тогда выражение (7) можно переписать в виде (9).

Из выражения (9) видно, что при четном индексе n остаются только четные функции

косинуса, а при нечетном индексе n — только нечетные функции синуса. Таким образом, функция R(ejχ´) может быть представлена в виде суммы четных и нечетных функций.

Теперь рассмотрим функцию Q(ejχ´) для каждого типа фильтров при замене переменной (8).

Для первого типа КИХ-фильтров функция Q(ejχ´) равняется единице и остается неизменной при замене переменной. Отметим, что она является четной.

Для второго типа КИХ-фильтров при замене переменной функция Q(ejχ´) представлена в виде Q(e) = cos(χ/2+π/4) и является функцией общего вида.

Для КИХ-фильтров третьего типа функция Qj имеет вид Q(ejχ´) = sin(χ+π/2) = cosχ и является четной.

Для КИХ-фильтров четвертого типа функция Q(ejχ´) имеет вид Q(ejχ´) = sin(χ/2+π/4) и является функцией общего вида.

Таким образом, функции Q (ejχ´) на симметричном множестве являются четными для КИХ-фильтров первого и третьего типов и функциями общего вида для КИХ-фильтров второго и четвертого типов.

Учитывая, что при перемножении четных функций результирующая функция является четной, при перемножении четной и нечетной функций результирующая функция является нечетной, а функция общего вида, умноженная на четную функцию, есть функция общего вида, можно сделать вывод, что для применения леммы Бернштейна можно использовать КИХ-фильтры первого и третьего типов.

Пример расчета фильтра с двойной симметрией АФ

В качестве иллюстрации выигрыша от уменьшения числа умножителей можно привести пример расчета фильтра.

Для оценки эффективности реализации цифровых фильтров с симметричными АФ использовалась ПЛИС семейства Cyclone II EP2C20 фирмы Altera и процессор ЦОС ADSP TS201S фирмы Analog Devices.

Пусть заданы следующие требования к ППФ: полоса пропускания 0,35-0,7; полосы задерживания 0-0,15 и 0,8-1 (в нормированной шкале частот); неравномерность АФ во всех полосах равняется 0,025.

Амплитудная функция такого фильтра не обладает свойством симметрии. Однако, если левую граничную частоту полосы пропускания (0,35) сдвинуть в область полосы расфильтровки так, что она станет равной 0,3, а левую граничную частоту полосы задерживания (0,15) сдвинуть в область полосы расфильтровки так, что она станет равной 0,2, то, при условии выполнения первоначальных требований, полученный фильтр будет обладать свойством двойной симметрии АФ (рис. 2).

Рис. 2. Задание требований к фильтру

Фильтр, рассчитанный по исходным требованиям, имеет длину 29, для реализации такого фильтра требуется 15 умножителей (табл. 2).

Таблица 2. Коэффициенты ПФ фильтра, рассчитанного по исходным требованиям

Коэффициент Значение Коэффициент Значение
b0 0,025663 b15 0,010764
b1 -0,0034537 b16 -0,31712
b2 -0,0072595 b17 -0,014951
b3 -0,009248 b18 -0,016568
b4 -0,050372 b19 -0,0078069
b5 0,0015468 b20 0,09781
b6 0,0095199 b21 0,011422
b7 0,011422 b22 0,0095199
b8 0,09781 b23 0,0015468
b9 -0,0078069 b24 -0,050372
b10 -0,016568 b25 -0,009248
b11 -0,014951 b26 -0,0072595
b12 -0,31712 b27 -0,0034537
b13 0,010764 b28 0,025663
b14 0,51689    

Фильтр, рассчитанный по симметричным требованиям, имеет длину 31, для реализации такого фильтра требуется 5 умножений (табл. 3).

Таблица 3. Коэффициенты ПФ фильтра, рассчитанного по требованиям к АЧХ, удовлетворяющим условию двойной симметрии

Коэффициент Значение Коэффициент Значение
b0 0 b16 0
b1 0,026477 b17 -0,31394
b2 0 b18 0
b3 0 b19 0
b4 0 b20 0
b5 -0,044116 b21 0,093436
b6 0 b22 0
b7 0 b23 0
b8 0 b24 0
b9 0,093436 b25 -0,044116
b10 0 b26 0
b11 0 b27 0
b12 0 b28 0
b13 -0,31394 b29 0,026477
b14 0 b30 0
b15 0,5    

На рис. 3 представлен график импульсной характеристики (ИХ) фильтра с двойной симметрией АФ.

Рис. 3. ИХ фильтра, синтезированного по требованиям двойной симметрии

При реализации двух данных фильтров на ПЛИС семейства Cyclone II EP2C20F256 фирмы Altera были получены результаты, представленные в таблице 4.

Таблица 4. Результаты реализации фильтров

Параметр Общее число элементов Исходный ППФ ППФ с двойн. симм. АЧХ
Логические элементы 18 752 1029 (5,4%) 330 (1,8%)
Регистры 773 232
Память 239 616 270 (<1%) 90 (<1 %)
Умножители 9×9 52 30 (57,7%) 10 (19,2%)

Из таблицы 4 видно, что число умножителей существенно ниже, чем число других элементов.

На ПЛИС данного типа может быть реализован один фильтр, синтезированный по исходным требованиям, и до четырех фильтров, подобных ППФ, требования к АФ которых удовлетворяют свойству двойной симметрии.

При реализации цифровых фильтров с симметричными АФ на ЦПОС за основу принимается показатель эффективности реализации, выраженный в количестве процессорных циклов на один отсчет входного сигнала W.

Для того чтобы получить выигрыш в количестве циклов на один отсчет входного сигнала, необходимо представить ПФ симметричного фильтра в виде суммы двух полиномов, где один полином содержит четные степени ПФ, другой — нечетные (R — порядок ПФ):

Формула приведена для фильтров, имеющих ИХ первого типа; фильтры первого типа позволяют реализовывать требования для любой частотной избирательности.

Если при симметрировании АФ импульсная характеристика фильтра имеет вид, когда все

четные (или нечетные) коэффициенты равны нулю, то все коэффициенты одного из полиномов в формуле (1) равны нулю (рис. 4а).

Рис. 4. Типы ИХ фильтров с симметричными АФ

Если ИХ имеет вид, когда все четные (или нечетные) коэффициенты равны нулю, за исключением центрального коэффициента (рис. 4б), то это значит, что один из полиномов в формуле (10) имеет ненулевые коэффициенты, а другой имеет один ненулевой коэффициент, соответствующий центральному отсчету с индексом R/2. Сумма двух полиномов может быть представлена в виде параллельного соединения двух фильтров (рис. 5).

Рис. 5. Параллельное соединение двух фильтров

При таком преобразовании структуры фильтра мы можем получить уменьшение количества циклов на отсчет почти в два раза для симметричного фильтра и почти в четыре раза для фильтра с двойной симметрией. Следовательно, фильтры с симметричными АФ, реализованные на ЦПОС, могут обрабатывать входной сигнал более высокой тактовой частоты, чем обычные нерекурсивные фильтры.

При реализации фильтра из предыдущего примера с симметричными АФ на процессоре ЦОС ADSP TS201S количество циклов на отсчет W составило: для стандартного нерекурсивного фильтра — 39; для фильтра с двойной симметрией — 12.

Заключение

Развитие инфокоммуникационных технологий во многом базируется на достижениях цифровой обработки сигналов, призванной решать задачи приема, формирования, обработки и передачи информации в реальном масштабе времени. Реализация сложных алгоритмов ЦОС требует, соответственно, применения эффективных базовых алгоритмов и, в первую очередь, цифровой фильтрации, позволяющих экономично использовать соответствующие технические ресурсы. Соответственно, к параметрам цифровых фильтров в современных системах цифровой обработки сигналов начинают предъявляться повышенные требования. Порядки фильтров нередко достигают тысячи и более. Это ведет к увеличению объема вычислений, а значит, и к резкому росту аппаратных затрат. При синтезе цифровых фильтров наибольшие затраты времени и оборудования приходятся на операции умножения. Следовательно, задача минимизации времени вычислений и уменьшения аппаратных затрат сводится к минимизации количества умножений, требуемых для вычисления очередного отфильтрованного отсчета. Как было показано выше, одним из возможных вариантов преодоления аппаратно-программных ограничений при проектировании устройств цифровой фильтрации может быть использование метода симметрирования амплитудной функции.

Решение симметричной задачи позволяет при различных технологиях проектирования фильтров увеличить быстродействие и уменьшить количество задействованных элементов устройства или увеличить число фильтров на кристалле. Уменьшая число умножителей, входящих в состав фильтра, можно добиться более рационального использования ресурсов микросхемы и увеличения скорости обработки сигнала.

Таким образом, наряду с фильтром, синтезированным по первоначальным требованиям, целесообразно построить фильтр по симметрированным требованиям к АФ, что может привести к оптимизации итоговой схемы.

Литература

  1. www.multicore.ru
  2. Солонина А. И., Улахович Д. А., Яковлев Л. А. Алгоритмы и процессоры ЦОС. СПб.: БХВ Петербург. 2001.
  3. Ланнэ А. А. Синтез нерекурсивных цифровых фильтров с симметричными характеристиками // Радиоэлектроника. 1995. Т. 38. № 3-4.
  4. Бернштейн С. Н. Экстремальные свойства полиномов. ОНТИ НКПГ, 1937.
  5. Каплун Д. И., Ланнэ А. А., Меркучева Т. В. Новый метод синтеза линейных цифровых нерекурсивных цепей и алгоритмов с линейными фазочастотными характеристиками // 10-я Международная конференция «Цифровая обработка сигналов и ее применение». 2009.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *