Целочисленные цифровые фильтры — эффективное решение для 8‑битовых цифровых платформ

PDF версия
В статье рассматриваются вопросы целочисленного моделирования и синтеза как рекурсивных (IIR), так и нерекурсивных (FIR) цифровых фильтров с учетом возможностей их аппаратной реализации на малоразрядных цифровых платформах с целочисленной арифметикой вычислений. Приводится постановка и решение задачи многофункционального синтеза цифровых фильтров методами целочисленного нелинейного математического программирования. Рассмотрен пример решения задачи многофункционального синтеза рекурсивного целочисленного 8-битового фильтра для коррекции амплитудных искажений аналогового тракта гидроакустической приемной станции. Анализируются его характеристики.

Введение

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

В общем виде комплексный частотный коэффициент передачи цифрового фильтра стандартно можно записать как:

H(ejω) = |H(ejω)|ejj(ω).

Таким образом, основными характеристиками фильтра в частотной области являются:

  • Амплитудно-частотная характеристика как модуль коэффициента передачи |H(ejω)|.
  • Фазо-частотная характеристика как аргумент коэффициента передачи j(ω).
  • Время групповой задержки: τgr = –∂j/∂ω.

Фазовая задержка как прямая задержка фильтром гармонического сигнала:
τз = –j(ω)/ω.

Условия функционирования цифровых фильтров в различных устройствах цифровой обработки сигналов (ЦОС) определяют необходимость обеспечения всей совокупности функциональных требований в частотной области [1]. Поэтому актуальна задача разработки методов синтеза цифровых фильтров с учетом совокупности требуемых характеристик. Такой синтез принято называть многофункциональным в отличие от многокритериального синтеза и синтеза только по одной частотной характеристике.

Многофункциональный синтез цифровых фильтров с учетом требований их практической реализуемости на современных цифровых платформах можно провести в настоящее время только методами нелинейного математического программирования [2–4]. Математическое программирование (МП) — это инвариантная и эффективная методология решения формализованных задач, в частности задач проектирования. Общая идея МП состоит в привязке решения любой задачи к четкому инвариантному математическому признаку — экстремуму функции качества (цели) F(X), где Х — вектор искомых параметров устройства. Для любой проектной задачи такую функцию в общем виде всегда можно сформировать исходя из заданных требований. (В компьютерных пакетах это обычно делает функциональный редактор [5].) При наличии такой функции решение задачи сводится к процедуре минимизации F(X), то есть отысканию координат глобального экстремума (оптимальных параметров устройства X0), что обычно делается поисковыми методами [4–6].

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

Целевая функция F(IX) в задачах ЦНП записана относительно вектора искомых целочисленных параметров фильтра IX и наиболее часто формируется в виде аддитивной свертки (1) частных целевых функций fi(IX), которые определяют выполнение функциональных требований по той или иной частотной характеристике фильтра [6]:

Коэффициент bi задает значимость (вес) характеристики (i‑го частотного окна). Сами частные целевые функции fi(IX) формирует функциональный редактор пакета синтеза по критерию минимума среднеквадратичного отклонения (ненормированная (2) или нормированная (3) форма) либо в форме минимаксного критерия (4):

где Yn(IX) — текущее значение характеристики фильтра на n‑й дискретной частоте диапазона определения; YnT — требуемое значение частотной характеристики.

Таким образом, цифровой ЦНП-фильтр обеспечивает максимальное качество цифровой фильтрации (с учетом всей совокупности требуемых характеристик) при гарантированном целочисленном решении IX0, то есть при использовании только целочисленной арифметики для вычисления отклика фильтра на входное воздействие. Это обстоятельство определяет минимизацию времени расчета отклика фильтра, так как базовая арифметика любого цифрового вычислителя — целочисленная, позволяющая осуществлять вычисления за минимальное время при минимальных ресурсах оперативной памяти. И только отсутствие целочисленных алгоритмов ЦОС вынуждает переходить к вещественной или комплексной арифметике цифровых вычислений, требующих значительных ресурсов как по памяти, так и по тактовой частоте вычислителя с существенным усложнением его структуры (за счет введения FPU — арифметических сопроцессоров и т. п.) и значительным увеличением энергопотребления [7].

В современных цифровых платформах для представления целых чисел наибольшее распространение получил дополнительный код. При этом важным фактором, определяющим быстродействие, является разрядность данных, с которыми оперирует целочисленный цифровой фильтр. Как справедливо показано в [8, 9], снижение разрядности данных даже на 1 бит может сэкономить до 50% оперативной памяти при существенном уменьшении времени расчета отклика фильтра, поэтому для высокоскоростных специализированных систем ЦОС разрядность данных является определяющим фактором. Так, в настоящее время в общей номенклатуре коммерческих цифровых платформ существенную долю занимают 8‑разрядные цифровые платформы с целочисленной арифметикой вычислений.

Идеология ЦНП-синтеза позволяет эффективно проектировать цифровые фильтры с установленной разрядностью представления данных (целочисленных коэффициентов) при максимальном выполнении требований к частотным характеристикам фильтра. Такое целочисленное проектное решение дает принципиальную возможность реализации ЦНП-фильтров не только на специализированных сигнальных процессорах (DSP), но и на простых и дешевых микропроцессорных контроллерах (МК), в которых нет возможности вычислений в формате с плавающей точкой. Целочисленное проектное решение является, безусловно, предпочтительным при аппаратной реализации ЦНП-фильтра на ПЛИС, а также на заказных или полузаказных СБИС. Вопросам моделирования и многофункционального синтеза целочисленных цифровых фильтров и посвящена эта статья.

 

Рекурсивные целочисленные фильтры

Рекурсивный фильтр является дискретной линейной системой, для которой соотношение между входной xn и выходной yn последовательностями определяется уравнением в конечных разностях:

а передаточная функция — его z‑преобра-зованием. Принципиальной особенностью ЦНП-фильтров, как уже было отмечено выше, является принадлежность его коэффициентов bk и ak знакопеременному ряду целых чисел, который может быть как натуральным, так и биномиальным (для нормирующего коэффициента a0). Интервал суммирования по k получил название «окно фильтра». Входное окно фильтра составляет N+1 отсчетов, выходное — N отсчетов, при этом значение N определяет порядок рекурсивного фильтра.

Наличие обратной связи (рекурсии) в (5) определяет бесконечный характер импульсной характеристики фильтра, причем его частотный коэффициент передачи:

полностью описывается распределением полюсов и нулей в z‑плоскости. Если система устойчива, то все полюсы pi должны лежать внутри единичного круга, и область сходимости будет содержать единичную окружность [6, 10]. Таким образом, условие устойчивости рекурсивного ЦНП-фильтра может быть записано как система неравенств (функциональных ограничений) по всем полюсам pi коэффициента передачи фильтра в z‑плоскости:

|Zpi| < 1.                             (6)

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

Каскадная (последовательная) форма построения фильтра

Рис. 1. Каскадная (последовательная) форма построения фильтра

Передаточная функция для рекурсивного ЦНП-фильтра, состоящего из каскадного соединения m‑звеньев второго порядка (m = N/2), имеет следующий вид [6, 11]:

где комплексная переменная z = ejω, а ω = 2πf/FД — цифровая частота.

Форма (7) операторного коэффициента передачи позволяет легко нормировать требуемую совокупность частотных характеристик фильтра (так как нормирующий коэффициент a0i есть уже в каждом i‑м звене) и даже позволяет производить их фрагментацию. Из соотношения (7) легко получается разностное уравнение для одного звена рекурсивного ЦНП-фильтра:

Судя по (8), при вычислении отклика фильтра должна выполняться операция деления на целочисленный коэффициент a0, которая может быть реализована операцией сдвига при условии принадлежности каждого i‑го коэффициента биномиальному целочисленному ряду:

где Wk — длина битового слова целочисленных коэффициентов фильтра.

На рис. 2 приведена типичная структура звеньев рекурсивного ЦНП-фильтра, соответствующая уравнению (8). Как видно, при его аппаратной реализации для вычисления отклика фильтра yn кроме традиционных операций сложения, умножения и задержки на такт присутствует операция сдвига на B = log2a0 бит, с помощью которой, как уже сказано, реализуется целочисленное деление на биномиальный коэффициент a0.

Структура звена рекурсивного ЦНП‐фильтра

Рис. 2. Структура звена рекурсивного ЦНП‐фильтра

В общем виде задачу целочисленного нелинейного программирования при машинном синтезе рекурсивного фильтра можно записать так:

F0(IX0) = minF(IX), при IX  I6m,    (10)

где m — число звеньев второго порядка; d — индекс коэффициента передаточной функции звена (10); Kimin, Kimax — допустимые границы изменения коэффициента усиления i‑го звена.

Экстремальная задача синтеза (10) записана относительно целочисленного пространства I6m параметров (коэффициентов фильтра), размерностью 6m. Ограничения (11) задают границы изменения этих целочисленных коэффициентов, а соотношение (12) определяет принадлежность коэффициентов a0iбиномиальному ряду (9). Функциональные ограничения (10) контролируют в процессе синтеза условие устойчивости рекурсивного фильтра по всем полюсам коэффициента передачи, а ограничения (14) масштабируют коэффициенты передачи звеньев в заданный интервал.

Многофункциональное задание целевой функции определяется соотношением (1), хотя здесь можно применить и другие известные способы скаляризации векторных задач [2, 4]. Поисковое итеративное решение экстремальной задачи ЦНП (5) в заданном пространстве параметров осуществляет программный алгоритмический комплекс [4, 5], обращаясь к модельному блоку программы для расчета текущих функциональных характеристик фильтра. Вектор IX0, минимизирующий скалярную целевую функцию F(IX) на множестве допустимых целочисленных решений (11) и (12), является эффективным решением задачи параметрического синтеза рекурсивного ЦНП-фильтра.

 

Нерекурсивные целочисленные фильтры

В нерекурсивных ЦНП-фильтрах в вычислении текущих значений выходной последовательности yn участвуют только значения входной последовательности xn, то есть в их уравнении (15) отсутствует обратная связь (уравнение прямой линейной свертки). Поэтому нерекурсивные фильтры всегда устойчивы и имеют конечную импульсную характеристику (КИХ-фильтры). Коэффициенты bk и a0 также принадлежат ряду целых чисел, интервал изменения которых определяется разрядностью микропроцессора:

Передаточную функцию каскадного соединения m‑звеньев второго порядка нерекурсивного ЦНП-фильтра можно записать так:

Соотношение (16) также легко позволяет нормировать требуемую совокупность частотных характеристик фильтра и дискретизировать значения коэффициентов целочисленно. Уравнение для одного звена нерекурсивного ЦНП-фильтра имеет вид:

 

где коэффициент a0 во всех m‑звеньях также принадлежит биномиальному целочисленному ряду (9).

На рис. 3 приведена типичная структура звеньев нерекурсивного ЦНП-фильтра.

Структура звена нерекурсивного ЦНП‐фильтра

Рис. 3. Структура звена нерекурсивного ЦНП‐фильтра

Постановка задачи целочисленного нелинейного программирования для машинного синтеза нерекурсивного фильтра выглядит следующим образом [6]:

F0(IX0) = minF(IX), при IX  I4m,    (18)

 

где m — число КИХ-звеньев второго порядка; d — индекс коэффициента передаточной функции звена (16).

Экстремальная задача синтеза (18) записана относительно целочисленного пространства коэффициентов фильтра I4m, размерностью 4m. Ограничения (19) задают границы изменения этих целочисленных коэффициентов, а соотношение (20) определяет принадлежность коэффициентов a0i биномиальному ряду. Функциональные ограничения (21) определяют требования масштабирования усиления в каскадном КИХ-фильтре. Многофункциональное задание целевой функции здесь также определяется соотношением (1). Вектор IX0, минимизирующий целевую функцию F(IX) на множестве допустимых решений (19) и (20), является эффективным решением задачи параметрического синтеза нерекурсивного ЦНП-фильтра.

Таким образом, синтез как рекурсивного, так и нерекурсивного целочисленного фильтра осуществляется согласно одной и той же методологии. При этом для расчета отклика фильтра используется минимальное количество базовых операций, и все эти операции целочисленные. Расчет отклика фильтра на реальном сигнале идет очень быстро, прямо по определению (модели) фильтра (8) и (17), на основе вычисленных заранее целочисленных коэффициентов. Более подробно вопросы быстродействия целочисленных цифровых фильтров будут рассмотрены в отдельной публикации.

Другим важным достоинством целочисленных фильтров является отсутствие процедуры квантования данных (как коэффициентов фильтра, так и результатов промежуточных вычислений) в ходе расчета отклика фильтра в реальном времени, а следовательно, и отсутствие всех негативных последствий квантования данных, свойственных цифровым фильтрам с вещественной арифметикой вычислений в формате с фиксированной точкой [8, 10, 12], полученных, например, билинейным преобразованием аналогового прототипа или методом частотной выборки. Такими последствиями квантования являются, прежде всего, шумы квантования, вызывающие искажение частотных характеристик фильтра [13], необходимость масштабирования коэффициентов фильтра, а также возможность появления малых предельных циклов при квантовании результатов внутренних вычислений.

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

Что же касается результатов промежуточных вычислений, то в ЦНП-фильтре все они также являются целочисленными, и при заданной разрядности квантования входного сигнала (в аналого-цифровом преобразователе, например) легко выделить внутренний аккумуляторный регистр с необходимой разрядностью Wаk для хранения результата целочисленного умножения с накоплением, осуществляемого по алгоритму (8) или (17), и избежать колебаний переполнения, то есть возникновения больших предельных циклов, вызванных переполнением разрядной сетки регистра-аккумулятора.

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

Что касается необходимого масштабирования сигнала в каскадных цифровых фильтрах, то в фильтрах с вещественной арифметикой вычислений это обычно делается по методике Джексона путем введения в структуру звена специального масштабирующего умножителя с коэффициентом умножения l, равного степени числа два, при котором не возникает эффекта переполнения. То есть здесь операции масштабирующего умножения в звеньях сводятся к простым сдвигам [8, 10, 14]. Но точно такая же процедура регистрового сдвига является последней в расчете отклика целочисленного звена, то есть вполне может быть использована и для масштабирования его усиления.

Однако расчет такого масштабирования целочисленного звена гораздо легче осуществлять не применением, например, Lp‑нормы или изменением коэффициентов числителя передаточной функции звена [8, 14], а прямым введением требования обеспечения малого разброса коэффициентов передачи отдельных звеньев (в пределе — равенства коэффициентов передачи) непосредственно в ходе ЦНП-синтеза каскадного цифрового фильтра. Формально требование масштабирования усиления записывается в виде двусторонних функциональных ограничений (11) и (21) экстремальных задач ЦНП-синтеза.

 

Синтез 8‑битового корректирующего ЦНП-фильтра тракта гидроакустических измерений

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

Структура приемного гидроакустического тракта

Рис. 4. Структура приемного гидроакустического тракта

Кроме хороших избирательных свойств в частотной области, такой цифровой фильтр должен иметь линейную фазо-частотную характеристику (ФЧХ) для минимизации искажений при приеме шумоподобных сигналов, а также осуществлять коррекцию нелинейности амплитудно-частотной характеристики (АЧХ) предшествующего аналогового тракта (гидроакустической антенны и согласующего устройства — рис. 5).

Внешний вид гидроакустической антенны

Рис. 5. Внешний вид гидроакустической антенны

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

АЧХ аналогового гидроакустического тракта

Рис. 6. АЧХ аналогового гидроакустического тракта

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

Рассмотрим пример решения этой задачи целочисленного синтеза рекурсивного корректирующего ФНЧ, осуществляющего фильтрацию (селекцию) гидроакустического сигнала в полосе пропускания 0–43 кГц и устраняющего амплитудные искажения аналогового тракта (график на рис. 6) в этой полосе так, чтобы общий коэффициент передачи скорректированного тракта КTZ в полосе пропускания 0–43 кГц имел усиление 2 с неравномерностью не более 5%, а в полосе заграждения (50–60 кГц) обеспечивал подавление сигнала на уровне не хуже 0,1. (График требуемой АЧХ скорректированного тракта приведен на рис. 7.)

Требуемая АЧХ скорректированного гидроакустического тракта

Рис. 7. Требуемая АЧХ скорректированного гидроакустического тракта

Так как коэффициенты передачи аналогового тракта Кат корректирующего цифрового фильтра Ккцф связаны с требуемым коэффициентом передачи скорректированного гидроакустического тракта КTZ соотношением КатхКкцф = КTZ, то частотный коэффициент передачи корректирующего цифрового фильтра может быть получен делением графиков частотных зависимостей КTZ (рис. 7) на Кат (рис. 6), что в итоге приводит к весьма сложной форме АЧХ корректирующего цифрового фильтра (рис. 8).

Требуемая АЧХ и ГВЗ корректирующего фильтра

Рис. 8. Требуемая АЧХ и ГВЗ корректирующего фильтра

На этом же рисунке приведены требования и к неравномерности группового времени запаздывания (ГВЗ) корректирующего фильтра на уровне не более 5% от среднего его значения в полосе пропускания фильтра, что обеспечивает высокую линейность ФЧХ корректирующего фильтра в полосе пропускания. Эти требуемые частотные характеристики фильтра графически вводят в соответствующее окно функционального редактора пакета синтеза, где они оцифровываются с необходимой точностью.

Таким образом, исходные данные к синтезу корректирующего фильтра выглядят так:

  • Полоса пропускания: 0–43 кГц.
  • Переходная полоса: 43–50 кГц.
  • Полоса подавления: 50–60 кГц.
  • Требуемая АЧХ приведена на рис. 8.
  • Неравномерность ГВЗ в полосе: не более 5%.
  • Разрядность (длина слова коэффициентов): 8 бит.
  • Масштабирование коэффициентов передачи звеньев в интервал {1–2}.
  • Частота дискретизации: 120 кГц.

Задача целочисленного программирования для многофункционального синтеза рекурсивного 8‑битового корректирующего фильтра в форме каскадного соединения восьми звеньев второго порядка была записана так:

Таким образом, минимизация целевого функционала осуществлялась на 40‑мерном целочисленном пространстве 8‑битовых параметров в допустимой области (23) и (24) при выполнении функциональных ограничений устойчивости фильтра (25) и масштабировании (26) коэффициентов усиления звеньев в заданный интервал.

При поисковом синтезе корректирующего фильтра с линейной фазой [11, 15] или, что то же самое, с постоянным временем группового запаздывания (ГВЗ) в полосе пропускания фильтра целевая функция формировалась в виде аддитивной свертки двух частных целевых функций fАЧХ(IX) и fГВЗ(IX), обеспечивающих, соответственно, выполнение требований как к амплитудной селекции фильтра (рис. 8), так и к постоянству его ГВЗ:

F(IX) = b1fАЧХ(IX) + b2fГВЗ(IX),     (27)

где частная целевая функция fГВЗ(IX) определяется максимальным отклонением ГВЗ фильтра от требуемого значения tТ в полосе пропускания фильтра:

fГВЗ(IX) = Δτmax = max|τ(IX)–τT|,

а целевая функция fАЧХ(IX) задавалась среднеквадратичной ошибкой выполнения требований к АЧХ корректирующего фильтра:

Значимость требований к АЧХ фильтра и его ГВЗ была задана одинаковой (b1 = b2 = 1).

Время решения этой задачи на ЭВМ не превышало 30 мин., причем значение целевого функционала (27) в начальной точке составляло 3930, а значение в точке оптимума было равно 0,0367 при полном выполнении условий устойчивости корректирующего фильтра.

В таблице приведены оптимальные значения целочисленных 8‑битовых коэффициентов передаточной функции фильтра, а также достигнутые значения коэффициентов усиления его звеньев. (Нормирующие коэффициенты всех звеньев были одинаковы: a0i = 64.)

Требуемая и синтезированная АЧХ корректирующего фильтра

Рис. 9. Требуемая и синтезированная АЧХ корректирующего фильтра

На рис. 9–14 представлены графики функциональных характеристик корректирующего фильтра в точке оптимума для частоты дискретизации 120 кГц.

 

Таблица. Оптимальные значения целочисленных 8‑битовых коэффициентов передаточной функции фильтра

Звено фильтра

Коэффициенты
передаточной функции фильтра

Усиление звена Kmax

a1

a2

b0

b1

b2

1

74

46

31

63

38

1,37

2

–78

35

–20

35

–45

1,54

3

–8

32

38

18

80

1,81

4

21

19

4

11

–71

1,83

5

–44

21

26

–60

6

1,27

6

–23

–20

8

4

–51

1,83

7

17

13

–6

–20

–100

1,85

8

1

0

24

–34

–85

1,81

Как видно, АЧХ синтезированного фильтра с высокой точностью соответствует требуемой для его коррекции.

Полная АЧХ скорректированного гидроакустического тракта

Рис. 10. Полная АЧХ скорректированного гидроакустического тракта

На рис. 10 приведена полная АЧХ скорректированного тракта Ктр в сравнении с исходным нескорректированным, а на рис. 11 представлена ошибка коррекции DК = КтрКТZ. 

Ошибка коррекции АЧХ в полосе

Рис. 11. Ошибка коррекции АЧХ в полосе

Как видно, в полосе пропускания тракта 0–43 кГц ошибка коррекции АЧХ не превышает 0,08, то есть находится в поле 5%-ного допуска.

ФЧХ в полосе пропускания

Рис. 12. ФЧХ в полосе пропускания

Неравномерность ГВЗ (рис. 13, 14) в полосе составляет 0,0058 мс при среднем ее значении tср = 0,12 мс, то есть также находится в пределах установленного допуска.

ГВЗ фильтра в полосе

Рис. 13. ГВЗ фильтра в полосе

Неравномерность ГВЗ в полосе

Рис. 14. Неравномерность ГВЗ в полосе

Достигнутая равномерность ГВЗ определяет высокую линейность ФЧХ (рис. 12). Фазовые искажения Dj(w) в полосе пропускания корректирующего фильтра не превышают 1,5°.

Высокий уровень достигнутого в ходе синтеза масштабирования усиления подтверждают приведенные в таблице максимальные значения коэффициентов усиления каскадов (звеньев) синтезированного корректирующего фильтра. Все коэффициенты усиления находятся в поле заданного интервала {1–2}.

Таким образом, все требования по функциональным показателям и характеристикам 8‑битового корректирующего фильтра гидроакустического тракта в процессе его ЦНП-синтеза были выполнены с высокой точностью. Практическая реализация подтвердила синтезированные характеристики корректирующего фильтра.

 

Заключение

Методы целочисленного нелинейного программирования в приложении к задачам проектирования цифровых фильтров являются современной и весьма перспективной альтернативой традиционным классическим методам проектирования цифровых фильтров [8–10, 12, 14]. Принципиальное отличие ЦНП-синтеза заключается в том, что в данном случае для удовлетворения требуемого функционирования фильтра на стадии его проектирования не используются никакие искусственные приемы и подходы классических методов (аналоговые прототипы, методы аппроксимации, вариации параметров, взвешивание окном, частотные выборки и др.), приводящие к существенным ограничениям в выполнении функциональных требований и систематическим ошибкам, а осуществляется прямой поиск необходимых целочисленных коэффициентов фильтра прямо по его математическому определению (модели). Критерием поиска является соответствие совокупного текущего функционирования ЦНП-фильтра его требуемому функционированию.

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

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

  1. Осуществлять синтез как рекурсивных (IIR), так и нерекурсивных (FIR) фильтров одной и той же идеологией нелинейного целочисленного программирования с использованием одной и той же программы компьютерного синтеза.
  2. Осуществлять синтез фильтра по совокупности требуемых его характеристик, причем можно легко управлять приоритетом функциональных характеристик в процессе синтеза фильтра.
  3. Форма характеристик может быть произвольная, частотная шкала — требуемая (линейная, логарифмическая и др.).
  4. Возможна широкая фрагментация характеристик фильтра, когда важные участки выделяются в отдельное функциональное окно для обеспечения их детальной проработки в ходе синтеза.
  5. Устойчивость решения для рекурсивных целочисленных фильтров может быть гарантирована приоритетным выполнением функциональных условий устойчивости в процессе синтеза фильтра.
  6. Целочисленная дискретизация пространства параметров (коэффициентов) фильтра позволяет получать проектные решения в целых числах, что снимает все ограничения по арифметике вычислений при реализации ЦНП-фильтров на любых цифровых платформах (сигнальных процессорах, контроллерах, ПЛИС) с установленной разрядностью представления данных, а также на кристаллах заказных или полузаказных СБИС.
Литература
  1. Шкелев  Е. И., Бугров  В. Н., Ивлев  Д. Н. Цифровая обработка сигналов с применением цифровых сигнальных процессоров. Электронное учебно-методическое пособие. Регист. номер 452 12 04. Н. Новгород: Нижегородский ГУ, 2012.
  2. Мину  М. Математическое программирование. Теория и алгоритмы. М.: Наука, 1990.
  3. Корбут  А. А., Финкельштейн  Ю. Ю. Дискретное программирование. М.: Наука, 1959.
  4. Воинов  Б. С., Бугров  В. Н., Воинов  Б. Б. Информационные технологии и системы: поиск оптимальных, оригинальных и рациональных решений. М.: Наука, 2007.
  5. Бугров  В. Н., Лупов  С. Ю., Земнюков  Н. Е., Корокозов  М. Н. Дискретный синтез цифровых рекурсивных фильтров // Вестник ННГУ. 2009. № 2.
  6. Бугров  В. Н. Проектирование цифровых фильтров методами целочисленного нелинейного программирования // Вестник ННГУ. 2009. № 6.
  7. Шкелев  Е. И. Электронные цифровые системы и микропроцессоры. Уч. пособие. Н. Новгород: Изд-во ННГУ, 2004.
  8. Мингазин  А. Т. Синтез передаточных функций цифровых фильтров в области дискретных значений коэффициентов (обзор) // Электронная техника. Сер. 10. 1993. № 1–2.
  9. Dehner  G. On the design Cauer filters with coeffi-cients of limited wordlength. 1975. V. 26. No 4.
  10. Рабинер  Л., Гоулд  Б. Теория и применение цифровой обработки сигналов. М.: Мир, 1978.
  11. Артемьев  В. В., Бугров  В. Н. Синтез цифровых рекурсивных фильтров с линейной фазой // Компоненты и технологии. 2013. № 7.
  12. Мингазин  А. Т. Программа DIFID: эффективный синтез каскадных цифровых БИХ-фильтров. М.: DSPA, 2002. T. 1.
  13. Мингазин  А. Т. Анализ влияния квантования коэффициентов на характеристики цифровых фильтров // Радиотехника. 1987. № 6.
  14. Антонью  А. Цифровые фильтры: анализ и проектирование. М.: Радио и связь, 1983.
  15. Артемьев  В. В., Кованова  Е. В. Метод дискретного синтеза рекурсивных цифровых фильтров с линейной фазой. Тезисы доклада на международной научной конференции «ИСТ‑2013». Н. Новгород, НГТУ, 2013.

 

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

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