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

Исследование реализации цифровых фильтров

с симметричными амплитудными функциями

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

Дмитрий КАПЛУН Татьяна МЕРКУЧЕВА

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

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

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

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

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

В современной цифровой обработке сигналов наиболее употребимы три варианта реализации цифровой фильтрации: с помощью ПЛИС, с помощью цифровых процессоров обработки сигналов (ЦПОС, Digital Signal Processor, DSP) и с помощью сис-

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

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

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

• высокая тактовая частота;

• большее число аппаратных интерфейсов по сравнению с ЦПОС;

• гибкость при разводке платы, позволяющая подавать данные произвольной разрядности.

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

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

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

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

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

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

• применением модифицированной гарвардской архитектуры;

• широким использованием конвейерного режима работы;

• наличием специализированного устройства умножения;

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

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

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

Для ЦПОС характерным является наличие аппаратного умножителя, позволяюще-

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

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

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

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

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

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

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

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

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

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

д>1.

\д = |JР(?01:

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

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

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

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

Обозначим:

р

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

Ека Л Г £*/2 1 у1

=! ^0{—х)с1х \ .

-ЕьП \ [-Я4/2 ]

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

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

Ек/2

J р(х)^(х)—Р(х, А)^dx

= ] / р

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

р(х) |&(х)-Р(х, А) |?_=

= р(-х)| ^(-х)-Р(-х, А)\д =

= р

Таким образом, аппроксимация функции ^(х) полиномом Р(х, А) такая же, как и полиномом Р(-х, А), а значит, и полиномом:

Рчт1 =

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

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

• требования к фильтру должны быть симметричны или антисимметричны на симметричном множестве;

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

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

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

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

Введем обозначения: ю , юс — левая и правая граничные частоты полосы пропускания (ПП); со-к, % — левая и правая граничные частоты полосы задерживания (ПЗ); й1, ^ — неравномерности в полосах пропускания и задерживания (рис. 1).

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

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

• фильтры нижних и фильтры верхних частот: (11 = и = П-Ю к;

• полосозадерживающие и полосопропускающие фильтры: одинаковые неравномерности в ПП (для ПЗФ) и в ПЗ (для ППФ), Юс = П-сЪ_х и юк = п-ю-к.

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

• ППФ или ПЗФ должны быть симметричны;

• ю-к = п/2-ю -с;

• неравномерности во всех полосах должны быть одинаковыми [3, 5].

1 Для случая чебышевского приближения лемма была доказана С. Н. Бернштейном [4].

АФ

1+d,

1

1-d,

d2

н

_____:___________,////,

о

п/2 &к//// К &

АФ симм.

//// -

//// \ Q

-тс/2 0 ////' * п/2

////

АФ

1+dr

1

1-d,

d2-

АФ

1+d,

1

1-d,

d2

АФ

1+d,

1

1-d,

d2

------1------1-

//// “k л/2

//// |~б~| АФ симм. ////

/ / / / —п/2 '//// г //// 0 п/2

//// И

1 1

1 1

// \////\ 1 1 1 1 1 1 //

i i г— i i i ^ —к/2

77-k &-%n' йк77я & yy-

И

АФ симм. / / //

/ \

/ // zz/ Z: \ \ZZ Q ^ г->-

zz_________________________

fz] у7''

__J_______////__________i

о

АФ симм. , ZZ

\ // // / П

-n/2

тс/2

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

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

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

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

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

Для КИХ-фильтров третьего типа функция Q(ejш) имеет вид Q(e,a) = 8т(^+ге/2) = сов^ и является четной.

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

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

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

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

представление

аппроксимирующего полинома в виде суммы

четных и нечетных функций

Рассмотрим класс фильтров с конечной импульсной характеристикой (КИХ-фильтры) и линейной фазочастотной характеристикой (ФЧХ). Существует 4 типа таких фильт-

Таблица 1. ^в^) для КИХ-фильтров с линейной ФЧХ

Тип фильтра Q

1 тип 1 .Y-l 2 £a(n)cos(co/j) я=0

2 тип cos(q/2) Af_i ^6(n)cos(con) B“1

3 тип sin

4 тип sin(o>/2) If j 2 _ (i(n)cos(mn) я=1

ров, их ПФ могут быть представлены в виде H(eJШ) = Q(e1)xR(ej) (табл. 1) [3].

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

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

R

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

ю = О+л/2.

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

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

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

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

Для оценки эффективности реализации цифровых фильтров с симметричными АФ использовалась ПЛИС семейства 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) сдвинуть в область полосы расфильтровки так, что она станет равной

R(ejn) = ^т(п) cos

г л Л Lin-]—п 2

ч /

Y т(п) < cos(£2n) cos

rn 4

— It

л ,

\ У

-sin(Qn) sin

'я л —n

Ч2,

л

—n v2/

= m(n)cos(fin)cos —n - m(n) sin(Q«)sin

'я 4 —n

v2/

0,2, то, при условии выполнения первоначальных требований, полученный фильтр будет обладать свойством двойной симметрии АФ (рис. 2).

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

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

Коэффициент Значение Коэффициент Значение

Ь0 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 представлен график импульсной характеристики (ИХ) фильтра с двойной симметрией АФ.

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

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

Параметр Общее число элементов Исходный ППФ ППФ с двойн. симм. АЧХ

Логические элементы 18 752 1029

Регистры - 773 232

Память 239 616 270

Умножители 9x9 52 30

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

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

При реализации цифровых фильтров с симметричными АФ на ЦПОС за основу прини-

мается показатель эффективности реализации, выраженный в количестве процессорных циклов на один отсчет входного сигнала

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

к=0

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

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

ИХ

h

ИХ

h

И

1 2

R/2-2 R/2 R/2+2 R-2 R-1 R

R/2-1 R/2+1 п

0

R/2-2 R/2 R/2+2

R/2-1 R/2+1

R—2 R—1 R

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

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

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

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

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

При реализации фильтра из предыдущего примера с симметричными АФ на процессоре

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

Заключение

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

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

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

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

Литература

1. www.multicore.ru

2. Солонина А. И., Улахович Д. А., Яковлев Л. А. Алгоритмы и процессоры ЦОС. СПб.: БХВ Петербург. 2001.

3. Ланнэ А. А. Синтез нерекурсивных цифровых фильтров с симметричными характеристиками // Радиоэлектроника. 1995. Т. 38. № 3-4.

4. Бернштейн С. Н. Экстремальные свойства полиномов. ОНТИ НКПГ, 1937.

5. Каплун Д. И., Ланнэ А. А., Меркучева Т. В. Новый метод синтеза линейных цифровых нерекурсивных цепей и алгоритмов с линейными фазочастотными характеристиками // 10-я Международная конференция «Цифровая обработка сигналов и ее применение». 2009.