НАУЧНО-ТЕХНИЧЕСКИИ ВЕСТНИК ИНФОРМАЦИОННЫХ ТЕХНОЛОГИИ, МЕХАНИКИ И ОПТИКИ май-июнь 2018 Том 18 № 3 ISSN 2226-1494 http://ntv.ifmo.ru/
SCIENTIFIC AND TECHNICAL JOURNAL OF INFORMATION TECHNOLOGIES, MECHANICS AND OPTICS
May-June 2018
Vol. 18 No 3 ISSN 2226-1494
http://ntv.ifmo.ru/en
УДК 519.684.6
АЛГОРИТМ СИНТЕЗА КОМПАКТНЫХ ЦИФРОВЫХ РЕГУЛЯТОРОВ В АРИФМЕ ТИКЕ С ФИК СИРОВАНН ОЙ ЗАПЯТОЙ Т.И. Каримов", Р.И. Сольницев", Д.Н. Бутусов", В.Ю. Островский"
a Санкт-Петербургский государственный электротехнический университет «ЛЭТИ», Санкт-Петербург, 197376,
Российская Федерация
Адрес для переписки: [email protected]
Информация о статье
Поступила в редакцию 03.03.18, принята к печати 10.04.18 doi: 10.17586/2226-1494-2018-18-3-493-504 Язык статьи - русский
Ссылка для цитирования: Каримов Т.И., Сольницев Р.И., Бутусов Д.Н., Островский В.Ю. Алгоритм синтеза компактных цифровых регуляторов в арифметике с фиксированной запятой // Научно-технический вестник информационных технологий, механики и оптики. 2018. Т. 18. № 3. С. 493-504. doi: 10.17586/2226-1494-2018-18-3-493-504
Аннотация
Предложен и исследован алгоритм реализации цифровых регуляторов систем управления в арифметике с фиксированной запятой на основе адаптивного выбора дискретной подстановки для перехода из s- в z-область и дискретного оператора (z- или S-оператора). Приведены результаты экспериментальной проверки предлагаемых критериев выбора дискретных подстановки и оператора, тестирования алгоритма. Предлагаемый подход позволил сократить число используемых логических элементов в реализации регуляторов на программируемых логических интегральных схемах или заказных микросхемах в 2-3 раза и более при обеспечении заданного уровня точности по сравнению с традиционной методикой на основе применения подстановки Тастина и z-оператора, а также уменьшить трудоемкость разработки. Полученные результаты имеют прикладное значение при проектировании электронных блоков автономных встраиваемых систем, космических аппаратов и других объектов, для которых характерны ограничения по массе, габаритам и энергопотреблению, позволяя преодолеть указанные ограничения. Ключевые слова
встраиваемые системы, дельта-оператор, ПЛИС, цифровые системы управления, автоматизированное проектирование
AN ALGORITHM FOR COMPACT FIXED-POINT IMPLEMENTATION OF
DIGITAL CONTROLLERS T.I. Karimov", R.I. Solnitsev", D.N. Butusov", V.Yu. Ostrovskiy"
"Saint Petersburg State Electrotechnical University "LETI", Saint Petersburg, 197376, Russian Federation Corresponding author: [email protected] Article info
Received 03.03.18, accepted 10.04.18 doi: 10.17586/2226-1494-2018-18-3-493-504 Article in Russian
For cation: Karimov T.I., Solnitsev R.I., Butusov D.N., Ostrovskiy V.Yu. An algorithm for compact fixed-point implementation of digital controllers. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2018, vol. 18, no. 3, pp. 493-504 (in Russian). doi: 10.17586/2226-1494-2018-18-3-493-504
Abstract
We propose and study the algorithm of digital controllers implementation in fixed-point arithmetic based on the adaptive selection of a discrete transform and a discrete operator (z- or S-operator). An experimental verification of the proposed criteria for the transform and operator selection is performed, also results of the proposed algorithm testing are given. Suggested approach made it possible to reduce the number of utilized logic elements in the FPGA or ASIC implementation of controllers up to 2-3 times and more in comparison with the traditional technique based on the application of the Tustin transform and z-operator, and also reduce the development complexity. The obtained results are of practical importance in the electronic units design for autonomous embedded systems, space vehicles and other objects with restricted mass, dimensions and power consumption, giving the possibility to overcome these restrictions. Keywords
embedded systems, delta-operator, FPGA, digital control, computer-aided design
Введение
При проектировании цифровых систем управления, как правило, решаются две противоположные задачи: достижение заданного уровня точности реализации алгоритма управления и минимизация аппаратных затрат. Назовем реализацию цифрового регулятора, удовлетворяющую этим двум требованиям в рамках конкретного технического задания, оптимальной или компактной.
Тенденция к компактизации встраиваемых систем наблюдается во многих областях техники. Одной из основных причин этого является развитие технологий производства микросхем и увеличение плотности компоновки элементов. Однако, даже с учетом возможностей современных технологий, перед разработчиками постоянно возникают задачи, требующие создания прецизионных систем управления и обработки сигналов с минимально возможными размерами и энергопотреблением. Особую актуальность подобные задачи получили в аэрокосмической отрасли, например, при проектировании микро- и нано-спутников, которым свойственны жесткие массогабаритные ограничения, высокие требования по надежности, решаемые неоднократным дублированием бортовых систем, а также относительно слабая энерговооруженность. Аналогичные проблемы возникают при создании портативных устройств медицинского назначения, миниатюрных автономных роботов, RFID-систем и многих других.
Одним из эффективных способов уменьшения габаритов и энергопотребления цифровой электроники является сокращение разрядности используемого вычислителя. Известно, что площадь вычислительного устройства и потребляемая им мощность линейно пропорциональны длине машинного слова
[1]. Еще одним фактором, влияющим на массогабаритные и мощностные характеристики цифровой системы, является способ представления чисел. Для компактной реализации алгоритмов в аппаратуре предпочтительно использование арифметики с фиксированной запятой (в данной работе равноправно употребляется также термин «целочисленная арифметика» как более компактный). Так, в работе Govindu и др.
[2] показано, что использование целочисленной арифметики позволяет сократить потребление энергии устройства в 7-15 раз и уменьшить требуемую площадь кристалла в 5-10 раз по сравнению с реализацией в арифметике с плавающей запятой. Ewe и др. [3] указывают, что имплементация фильтров с бесконечной импульсной характеристикой (БИХ-фильтров) в 32-разрядной целочисленной арифметике оказывается в 5,7 раз более выгодной с точки зрения экономии площади кристалла и в 5,2 раза снижает время отклика фильтра по сравнению с реализацией с типом данных IEEE 754 (single)1. За последнее десятилетие эффективность аппаратных решений для работы с числами с плавающей запятой была повышена, но и в недавних публикациях [4, 5] отмечается многократное превосходство целочисленной арифметики при решении задач проектирования встраиваемых систем.
Для повышения компактности аппаратного решения также можно воспользоваться рядом математических приемов: дискретными подстановками высоких порядков [6], оптимальными формами реализации [7], альтернативными дискретными операторами [8-10] и др. Еще один эффективный прием компак-тизации - применение методов оптимизации для настройки коэффициентов алгоритма, разрядности переменных состояния и промежуточных шин [1].
Как правило, указанные подходы изучались различными группами исследователей и применялись разрозненно. В данной работе предлагается алгоритм синтеза аппаратных структур цифровых регуляторов на основе комбинации альтернативных и стандартных подходов проектирования в целях обеспечения максимально компактной целочисленной реализации.
Дискретные подстановки высоких порядков
Известен ряд способов перехода от непрерывных моделей динамических систем к их дискретному представлению. Простейший из них - точное отображение нулей и полюсов c s-плоскости на z-плоскость. При этом характеристики дискретной системы часто оказываются неудовлетворительными. Другой тип методов дискретизации основан на воспроизведении импульсной или переходной характеристики системы в моменты выборки. Однако эквивалентность полученной этим способом переходной характеристики дискретной и непрерывной моделей не гарантирует, что дискретная модель будет иметь отклик на произвольный сигнал, аналогичный отклику непрерывного прототипа. Один из наиболее точных способов перехода от непрерывной модели к дискретной - использование дискретных аппроксимаций непрерывных интегрирующих звеньев, в частности, применение метода численного интегрирования (МЧИ) по правилу трапеций. Такой способ известен как билинейное преобразование или подстановка Тастина.
Метод трапеций, имеющий 2-й порядок алгебраической точности, в общем виде может быть описан следующей формулой:
T
y[n +1] = y[n] + — (u[n +1] + u[ n]). (1)
1 IEEE Standard for Binary Floating-Point Arithmetic. Copyright 1985 by The Institute of Electrical and Electronics Engineers, Inc 345 East 47th Street, New York, NY 10017, USA.
Здесь и\/ ] - значения входного сигнала в точках / е N ; у\/] - значения выходного сигнала. Подстановка переменной сдвига 2 в выражение (1) дает формулу замены операторной переменной £ :
у(2 -1) « Ти(2 +1) ^ £ = -
2 у
2 г -1
Т 2 +1
Основными преимуществами подстановки Тастина являются:
1. дискретная модель имеет тот же порядок, что и непрерывная;
2. в основе подстановки Тастина лежит ^-устойчивый численный метод, что позволяет сохранить устойчивость непрерывной модели при дискретизации с теоретически любым значением периода квантования Т .
Недостаток подстановки Тастина состоит в том, что лежащий в ее основе МЧИ имеет второй порядок алгебраической точности, а следовательно, характеристики модели воспроизводятся неточно. Данное обстоятельство становится особенно критичным при X >> 0, где X - нормализованная частота звена, на которой проявляются его характерные свойства (например, частота среза).
Известны подстановки на основе методов более высоких порядков, таких, как метод Адамса-Мултона, имеющий 3-й порядок точности [6]:
о. Т Г 5 о 2 1
Ук о 2 = Уко1 + Т I 12 ик о 2 + 3 ико1 - 12 ик
Соответствующее дискретное преобразование имеет вид
^ = П у -*) . (2)
Т 522 + 82 -1
Преобразование (2) называется подстановкой Шнайдера. Недостаток данной подстановки заключается в увеличении порядка дискретной модели относительно прототипа в два раза, что означает, что для ее аппаратной реализации потребуется вдвое большее число логических элементов. Стоит отметить, что при этом повышается точность модели и отпадает необходимость частотной коррекции.
Поскольку регуляторы, как и фильтры, относятся к одному классу линейных динамических систем (ЛДС), сравним описанные выше способы подстановки на примере реализации БИХ-фильтров. На рис. 1 приведен график, иллюстрирующий отношение среднеквадратичных отклонений (СКО) откликов режек-торных фильтров с параметрами Q = 1, ю0 = 2п • 440 Гц, полученных путем дискретизации непрерывной передаточной функции
Н ( £) = ■
2, (3)
£~ + Ю0 £ / 7 + Ю0
на частотно-модулированный гармонический сигнал (ЧМГС) при различных значениях X . На представленном графике также видно, что частотная коррекция подстановки Тастина, позволяя увеличить точность отклика ЛДС на одной частоте, ухудшает точность моделирования в более широком диапазоне частот.
\\щ\т\
102
I \
\ I
У
X, □ '
100
10-
Подстановка с коррекцией
■а /
^ й о
0Ж о О
О □
х. Х-?
Тастина частоты
10 3 10 4 10 10
° .1=ис111/2:.1С111х2]
/=\/ш/10; /с„х10] // /2; /и х2]
10-1 X
Рис. 1. Зависимость среднеквадратичной погрешности дискретной модели, полученной с помощью подстановки Шнайдера, к погрешности модели, полученной с помощью подстановки Тастина,
от нормализованной частоты среза
Заметим, что повышение точности дискретной модели при использовании подстановок высокого порядка целесообразно лишь тогда, когда входной сигнал системы также представлен с достаточной точностью. В цифровых системах точность задания входного сигнала ограничена разрядностью аналогово-цифрового преобразователя (АЦП). На рис. 2 представлено сравнение абсолютной точности представле-
ния ЛДС с помощью обеих исследуемых подстановок при реализации описанного выше режекторного фильтра. Граница рационального применения подстановки Шнайдера определяется инструментальной погрешностью, при которой ее точность сравнивается с точностью подстановки Тастина. Исходя из проведенного исследования, можно сформулировать следующие условия, при которых подстановки высоких порядков целесообразны:
1. большие значения периода квантования сигнала;
2. высокая точность аналогово-цифрового преобразования.
Выразим критерий, по которому можно сопоставить длину машинного слова и величину X и определить целесообразность применения преобразования Шнайдера, в виде формулы:
к = -
Ж
АЦП
> 5
где Ж
АЦП
1°§10 Х
- разрядность АЦП. Рис. 2 графически иллюстрирует смысл предлагаемого критерия.
^ 100 н с
(4)
10-
о
и 10-
АЦП 10 бит
АЦП 16 бит АЦП 24 бит X
X
10-
10-
10-
10-1 я
Правило Тастина Правило Шнайдера
Рис. 2. Среднеквадратичные погрешности моделей, преобразованных подстановкой Тастина (сплошная линия) и подстановкой Шнайдера (точечная линия), сопоставленные со среднеквадратичными отклонениями входных сигналов аналогово-цифровых преобразователей
0,4 0,6 0,8 1 Время, с Подстановка Тастина, 24 бит -Подстановка Шнайдера, 12 бит
Рис. 3. Пример графиков погрешностей моделей, полученных подстановками Тастина и Шнайдера
В качестве примера рассмотрим реализацию режекторного фильтра с X = 0,05 , Q = 1 и ЖАЦП = 8 .
Расчет по формуле (4) дает значение к « 6,1, что означает возможность эффективного применения
подстановки 3-го порядка точности. Графики погрешности отклика на ЧМГС с / = [/2; х 2]
показаны на рис. 3. В данном примере методическая погрешность подстановки Тастина превосходит цифровой шум заданного типа данных даже при избыточной разрядности.
Принимая во внимание вопросы численной устойчивости конечно-разностной схемы, возможность применения подстановки Шнайдера при создании реальных устройств обработки сигналов целесообразно проверять также с помощью имитационного моделирования. В ряде случаев подстановка Шнайдера позволяет улучшить точность представления дискретной системы по критерию СКО от точного решения в 5 раз (рис. 3) и выше. При особых требованиях к точности устройства может быть целесообразно применять подстановки еще более высокого порядка.
Альтернативные дискретные операторы
Одним из приемов теории альтернативных дискретных операторов является замена дискретного 2-оператора на так называемый 5-оператор [8]:
5" Т1' (5)
где Т - период дискретизации. При уменьшении периода дискретизации корни и полюса дискретного 5-фильтра стремятся к нулям и полюсам непрерывного фильтра. Выраженный формулой (5), 5-оператор не имеет параметров. В дальнейшем был предложен так называемый параметрический 5-оператор [9]:
5(6)
А
где А является свободно определяемым параметром. Для снижения шума квантования, а также упрощения аппаратной реализации оператора 5-1 параметр А предлагается выбирать как отрицательную степень числа 2. В этом случае в структуру звена 2-го порядка 5-модели по сравнению со структурой 2-модели добавляется всего две дополнительные операции сложения. Это становится возможным благодаря реализации умножения в виде простой коммутации двоичной шины с отбрасыванием младших битов.
во во = Ь 0) 0) =1
в 2Ьо + Ь1 в1 = А а1 2 + а а1 =-L 1А
в 2 в Ь0 + Ь1 + Ь2 в 2 = А2 а 2 1 + а + а, а = 12 °2 А2
Таблица. Формулы пересчета коэффициентов дискретной модели
Для реализации дискретной модели с помощью 5-оператора необходимо конвертировать коэффициенты модели 2-оператора с использованием формул, приведенных в таблице. Эти выражения могут быть легко получены путем подстановки формулы (6) в уравнение дискретного звена 2-го порядка:
н (* ) = .
у 7 1 + а12 1 + а22 2
Подстановка дает звено второго порядка на основе 5-оператора:
н (5 )=в о+Р15;+в 25.2.
4 ' 1 + а15 1 + а 2 5 2
Здесь Ь , а1 - коэффициенты числителя и знаменателя 2-модели, р., а. - новые коэффициенты 5 -модели. Прямая форма реализации БИХ-фильтров не подходит для 5-моделей [9] из-за наличия неустойчивого полюса 2 1 = 1 в структуре оператора 5 1 (рис. 4):
5-1 =
А2-' 1 - 2-1
О
А
4к+1
*о
Рис. 4. Аппаратная реализация оператора 5 1
Рис. 5 Представление б-модели в виде графа канонической формы
2
1
На практике 5-системы реализуют в канонической форме (direct form II, DFII) или ее транспонированном варианте (direct form IIt, DFIIt). На рис. 5 представлена каноническая форма реализации звена 2-го порядка в виде графа. Узлы di на рис. 4 и 5 обозначают переменные состояния соответствующего индекса.
Помимо собственно 5-оператора (5), известны его модификации [11], применение которых целесообразно в некоторых случаях.
Применение альтернативных дискретных операторов позволяет решить две основные проблемы, связанные с ограниченной точностью представления чисел в целочисленной арифметике:
1. «слипание» нулей и полюсов фильтра в z-области с единицей. Коэффициенты фильтра, реализованные с применением 5-оператора, сохраняют больше информации о свойствах непрерывного прототипа;
2. неравномерность амплитуд переменных состояния фильтра. По этой причине выбор А = Ts в большинстве случаев не является оптимальным. Как правило, наилучшие результаты дает А» Ts.
40
50 0
cd
^ -50
IS
PQ
П
-100 -150 -200
•
У\
А=Ts
20
ш
Ч 0
%-20
I-40 « -60 -80
gf
>' / \ \
А=2-4>>
10-3 10 10-Нормализованная частота, 1/с
-----^8,2
а
103 102 10-Нормализованная частота, 1/с
-----F5,2
б
Рис. 6. Передаточные функции переменных состояния режекторного фильтра (3) при выборе различных
значений А : А=Т8 (а), А» Т$ (б)
На рис. 6 показан пример поведения переменных состояния 5-реализаций режекторного фильтра вида (3) при частоте дискретизации 44,1 кГц. Рис. 6, а, б, отображают передаточные функции переменных состояния режекторного фильтра (3) при выборе различных значений А. Видно, что при значениях А»Т точность представления модели оказывается выше. Разброс Д^-норм переменных состояния
фильтра gf оказывается минимальным.
Под выравниванием амплитуд переменных состояния обычно понимают выравнивание их Д»-норм. При реализации фильтра в прямой форме II (ББП) выражение для выбора квазиоптимального значения А для звена 2-го порядка имеет следующий вид [9]:
>"1 д(г )|.
А* = max
А 2 F5
где F5i (z) - передаточные функции от входа до переменных состояния:
' F„( z) = (1-z"1)2 F,,(z) = F5,2( z ) =
(7)
1 + a} -1 -2 {z + a 2 z
А z" ■'(1- z->)
1 + a1 z 1 + a 2 z 2
А2 z -2
1 + a1 z 1 + a 2 z 2
Выражения для ББШ аналогичны и на практике дают сходные значения. Имея А * , необходимо выбрать
А = 2"п « А*, п е N.
В практике реального проектирования полный отказ от 2-оператора нецелесообразен, поскольку 5-оператор усложняет структуру фильтра, а при малых частотах дискретизации в 5-модели возможно
появление различных негативных эффектов, таких как предельные циклы. Кроме того, на малых частотах 7-модель не всегда уступает 5-модели в точности.
Для автоматизации решения задачи выбора дискретного оператора был сформулирован критерий применимости [12]: реализация звена 2-го порядка с комплексно-сопряженными полюсами г12 = о + /ю будет предпочтительной при применении 5-оператора, если
(от )2 +(ют )2 < 1. (8)
В иных случаях звено следует реализовать на основе 7-оператора.
Если заранее известны частота среза и тип моделируемой ЛДС, можно применить более простой критерий:
X < о,1. (9)
где X = /среза // . Критерий (8) применим для фильтров нижних частот, режекторных фильтров и других
случаев, когда он достаточно точно согласуется с критерием (7).
При использовании подстановки Шнайдера становится очевидным, что к единице по модулю стремится только половина корней:
„т н (2)=ЬЪ£!1£±1).
т^о 4 22(2 - 1)2
Исходя из этого, после декомпозиции системы на последовательные звенья те из них, корни которых стремятся к нулю, могут быть реализованы с помощью обычного 7-преобразования. Звенья, требующие применения 5-оператора для достижения наилучшей точности в арифметике с фиксированной запятой, можно реализовывать как 5-модели, образуя тем самым гибридную структуру дискретной системы.
Автоматизированное проектирование регулятора в арифметике с фиксированной запятой
Особенность проектирования целочисленных алгоритмов, предназначенных для реализации на программируемых логических интегральных схемах (ПЛИС), заключается в возможности гибкого выбора длины машинного слова. Поэтому задача синтеза цифровых моделей регуляторов здесь предполагает выбор минимальных значений разрядностей, при которых обеспечивается заданный уровень точности.
Сформулируем методику аппаратной реализации цифрового регулятора. Математическое описание регулятора в арифметике с плавающей запятой разбивается на звенья 1-го и 2-го порядка. Каждое звено анализируется согласно критериям выбора дискретного оператора (8) или (9). Затем звенья дискретизи-руются с заданным периодом Т с помощью подстановок Тастина или Шнайдера в зависимости от соответствия критерию (3). После применяется итерационный алгоритм конвертирования коэффициентов регулятора в целочисленную арифметику.
Ниже приведен вариант этого алгоритма для реализации дискретной модели ЛДС с помощью 5-оператора. В случае 7-оператора из алгоритма исключаются некоторые специфичные для 5-оператора шаги.
1. Подставляя А = 1 в (7), в арифметике с плавающей запятой вычислим А * , а затем
Жа=[1о& А* ], п е N.
Также найдем gf = max (z)| j, i = 0..2 (см. рис. 6), и Nf =[log2 gf ], n e N.
2. Зададим начальную длину машинного слова для представления переменных состояния
WL = K + Nf +1,
где K - разрядность входного сигнала (АЦП или шины с предыдущего звена/части системы), а 1 -бит, предохраняющий от переполнения.
Далее конвертируем регулятор в арифметику с фиксированной запятой, причем коэффициенты числителя и знаменателя масштабируются индивидуально. Начальное приближение длины дробной
части в обоих случаях - W^2 .
3. Зададим тестовый ЧМГС, охватывающий как пропускаемые, так и подавляемые фильтром частоты. Удобство такого сигнала состоит в предсказуемости его спектральных характеристик, а также возможности по огибающей отклика целочисленного фильтра построить амплитудно-частотную характеристику (АЧХ) быстрее и точнее, чем традиционным способом с использованием преобразования Фурье. Вычислим эталонный отклик фильтра с вещественными коэффициентами Uref .
4. Произведем моделирование целочисленного фильтра с учетом округления коэффициентов и эффектов, связанных с целочисленной арифметикой: сдвиг на дробную часть коэффициентов фильтра после умножения, переполнения типа «wrap around» и др.
Если переполнений не обнаружено и разность между выходным сигналом фильтра и эталонным сигналом, вычисленным с типом данных double, не превышает заданный уровень, т.е.
Vi: max|uOu -Uf <е,
то искомая реализация найдена.
<АЦП Левый Бит.
сдвиг сдвиг
Усиление 3 Коррекция
Звено усиления
Рис. 7. Масштабирование входного сигнала звена для увеличения точности внутреннего представления данных
Используя метод Монте-Карло, на каждом шаге алгоритма случайным образом варьируем следующие параметры:
п = #А±1, где А = 2- п ;
длину дробных частей числителя и знаменателя.
Для повышения точности представления входного сигнала и заполнения всей доступной ширины значений переменных состояния осуществляется случайный левый битовый сдвиг сигнала АЦП (рис. 7) в диапазоне
М е о..Ж - К - -1.
При каждой смене параметров вычисляется отклик целочисленного фильтра. Если за МШг итераций комбинация параметров, обеспечивающая нужный уровень точности, не обнаружена, производим инкремент длины машинного слова.
5. Найденный целочисленный регулятор тестируется на наборе тестовых сигналов - белом шуме с раз-
личной амплитудой, широкополосных хаотических сигналах и т.д. При этом определяются разрядности внутренних шин между переменными состояния, сумматорами и умножителями путем вычислений амплитуд сигналов.
Если обнаружено переполнение значений переменных состояния, происходит возвращение на этап 4.
6. Численные параметры регулятора подставляем в шаблон кода модуля регулятора и разработанного тес-
тового окружения (тестбенча) на Verilog. Генерируем набор файлов входных тестовых сигналов. За счет автоматической генерации кода синтезированный модуль регулятора можно включать в дизайн целевого устройства без повторной верификации.
Приведенный выше алгоритм был реализован в виртуальном приборе (VI) среды LabVIEW. Разработанный VI позволяет конвертировать регуляторы в арифметику с фиксированной запятой автоматически, что сокращает трудозатраты, снижает роль человеческого фактора и, соответственно, вероятность ошибок, а также повышает качество проектного решения по сравнению с ручным перебором параметров, предлагаемым стандартным, реализованным в системах LabVIEW и МАТЪАБ походом.
Экспериментальное сравнение фильтров в целочисленной арифметике
Для проверки изложенных выше теоретических положений и методики проектирования цифровых регуляторов было проведено две серии численных экспериментов. Цель первой из них заключалась в количественной оценке затрат аппаратных ресурсов ПЛИС на реализацию дискретных моделей ЛДС с помощью 7- и 5-операторов. Одним из ожидаемых результатов было практическое подтверждение корректности критериев (8) и (9).
Вторая серия экспериментов была направлена на исследование следующих практических аспектов предложенного алгоритма синтеза: выбор оптимальной формы представления фильтра и оценка необходимого количества итераций метода Монте-Карло N иег.
А. Сравнение дискретных операторов
Линейная динамическая система (3) была исследована при различных операторных реализациях и частотах дискретизации. При реализации 9-битной ЛДС предполагалось, что разрядность АЦП составляет 8 бит, 12-битной - 1о бит, 16-битной - 12 бит. Подобная разрядность характерна для современных промышленных АЦП и встречается во многих практических приложениях. Результаты сравнения показаны на рис. 8, а, где представлены погрешности реализации дискретных систем в зависимости от типа оператора и нормализованной граничной частоты X . На графике приведены данные для самой точной из операторных реализаций, которую удалось получить с помощью предложенного алгоритма.
В соответствии с высказанными ранее теоретическими предположениями (9) погрешности реализаций с помощью 2- и 8-операторов практически сравниваются в точке X = 0,1. Заметим, что при уменьшении X и неизменной длине машинного слова погрешность любой дискретной реализации возрастает.
На рис. 8, б, представлены графики, обобщающие результаты описанного выше эксперимента. Рисунок наглядно демонстрирует преимущества 8-оператора при X ^ 0 .
10
101
100
10
10
ю К
4
CD
П О
5
Й о о X
п те л
35 30 25 20 15 10 5
10-
10-
10-1 к
10 10 10 Максимальная погрешность, %
а б
Рис. 8. Погрешности реализации дискретных фильтров в зависимости типа оператора и нормализованной частоты среза (а) и требуемая разрядность модели при заданной погрешности в зависимости
от типа дискретного оператора (б)
700
и Ш ° J
CD
600 500 400 300
200
101
10° 10-Погрешность модели, %
Рис. 9. Затраты логических элементов при реализации режекторного фильтра с помощью различных
дискретных операторов
Структуры DFII были реализованы на Verilog HDL и синтезированы в среде Quartus для ПЛИС Altera Cyclone IV без использования встроенных умножителей. Количественные оценки затрат логических элементов показаны на рис. 9. Так, для обеспечения максимальной погрешности не выше 8 = 0,1% при использовании z-оператора потребуется почти в 2 раза больше логических элементов. При уменьшении граничной частоты X или погрешности 8 выигрыш при использовании 8-оператора оказывается еще существеннее. Также было экспериментально показано, что зависимость числа используемых логических элементов от разрядности является практически линейной.
B. Исследование алгоритма синтеза
Для сравнения двух форм представления 8-систем - DFII и DFIIt - было реализовано несколько ЛДС различных типов с разными свойствами и параметрами (рис. 10). В качестве метрики исследовалось СКО сигнала целочисленного реализации от эталонного, полученного на типе данных с плавающей запятой. Поскольку поиск производился по уровню максимальной погрешности 8, для обеих реализаций результат в среднем оказался одинаковым. Однако практически во всех случаях реализации форма DFII оказалась более выигрышной по уровню СКО. Это не согласуется с результатами цитируемой работы [9], где предпочтение было отдано форме DFIIt.
Пример анализа количества итераций Монте-Карло приведен на рис. 11, где показано среднее время в секундах и найденная разрядность реализаций при различных значениях граничных частот и разном числе итераций Монте-Карло. Увеличение числа итераций алгоритма с 2-5 до 10-20 позволяет улучшить результат синтеза в среднем на 1 бит, однако время работы алгоритма возрастает на порядок. Длитель-
ность поиска обусловлена необходимостью моделировать сигналы с низкими нормализованными частотами при X ^ о .
ФВЧ, А=0,1 ФВЧ, А.=0,01
н 4
ю
§ 2
и
о
£4
ю
§2
и
о
1о 12 14
Разрядность, бит
16
о
о
о о
£ 4
б
$2
и
о
ит4 б
§2
и
1о 12 14 Разрядность, бит
ФВЧ, Х=0,01
16
о
й
о
(
9
о
8 1о 12 14 16 Разрядность, бит
Режект., Х=0,1
8 1о 12 14 16 Разрядность, бит
Режект., Х=0,01
ит4 б
§ 2
и
о
ит4 б
§ 2
и
ит4 б
§ 2
и
о
о
1о 12 14 16 Разрядность, бит
8 1о 12 14 16 Разрядность, бит
8 1о 12 14 16 8 1о 12 14 16 Разрядность, бит Разрядность, бит
Прямая форма II • Прямая форма Ш а б
Рис. 10. Сравнение среднеквадратичных отклонений погрешностей б-реализаций различных фильтров
в канонической форме и ее транспонированном варианте: фильтров нижних частот (ФНЧ) и верхних частот (ФВЧ) (а), режекторного фильтра, полосового фильтра и ФНЧ с резонансом 20 дБ (б)
1оо
о к
<и а и
к а
и
1о
1
^е=2о к \
^ег=Ю \
^еГ=2о =5 \
№цег= Ш N Не г 2
^Иег =5 \
N Пег 2 \
11 12 13 14 15 16 17 18
Средняя разрядность модели, бит —©— Х=0,005 Х=о,ооо5
Рис. 11. Среднее время синтеза и найденная разрядность реализаций при различных параметрах дискретной модели и числе итераций Монте-Карло
8
8
8
График на рис. 11 построен на персональном компьютере с процессором Intel Core i5-5200 2,2 ГГц. При использовании компьютеров другой производительности время решения может отличаться, но общая тенденция - увеличение времени моделирования на порядок для сокращения разрядности целочисленного регулятора на 1 бит - сохраняется.
Заключение
Предложен и исследован алгоритм реализации дискретных моделей линейных динамических систем с фиксированной запятой на основе адаптивного выбора дискретной подстановки, дискретного оператора и настройки численных параметров дискретной модели по методу Монте-Карло. Ожидаемый эффект от применения дискретной подстановки или оператора может быть предсказан с использованием нескольких формализованных критериев. Предложенный алгоритм позволяет значительно сократить количество необходимых логических элементов при реализации регуляторов на программируемых логических интегральных схемах или заказных микросхемах - до 2-3 раз и более, в зависимости от задачи, по сравнению с традиционным подходом, основанным на использовании только оператора z и не предполагающего детального исследования пространства параметров целочисленной реализации.
Дальнейшая работа будет направлена на оценку эффективности альтернативных способов представления чисел, в том числе стохастической арифметики, при реализации оптимальных структур регуляторов и фильтров в условиях требований по минимизации аппаратных ресурсов. Также будет проведено исследование применимости и эффективности использования 8-оператора при проектировании КИХ-фильтров и других классов устройств.
Литература
1. Ahmadi A., Zwolinski M. Word-length oriented multiobjective optimization of area and power consumption in DSP algorithm implementation // Proc. 25th Int. Conf. on Microelectronics. Belgrade, Serbia, 2006. P. 614-617. doi: 10.1109/ICMEL.2006.1651042
2. Govindu G., Zhuo L., Choi S., Gundala P., Prassanna V. Area, and power performance analysis of a floating-point based application on FPGAs. Los Angeles, University of Southern California, 2003.
3. Te Ewe C., Cheung P.Y.K., Constantinides G.A. Dual fixed-point: an efficient alternative to floating-point computation // Lecture Notes in Computer Science. 2004. V. 3203. P. 200-208.
4. Aruna K., Bhaskararao J. Design and implementation of fixed point and floating point PID controllers in VIVADO HLS using FPGA // International Journal of VLSI System Design and Communication Systems. 2016. V. 4. N 9. P. 799-804.
5. Finnerty A., Ratigner H. Reduce Power and Cost by Converting from Floating Point to Fixed Point. XILINX White Paper 491, 2017. 14 p.
6. Schneider A.M., Kaneshige J.T., Groutage F.D. Higher order s-to-z mapping functions and their application in digitizing continuous-time filters // Proceedings of the IEEE. 1991. V. 79. N 11. P. 1661-1674. doi: 10.1109/5.118990
7. Jackson L., Lindgren A., Kim Y. Optimal synthesis of second-order state-space structures for digital filters // IEEE Transactions on Circuits and Systems. 1979. V. 26. N 3. P. 149153. doi: 10.1109/TCS. 1979.1084623
8. Middleton R., Goodwin G.C. Improved finite word length characteristics in digital control using delta operators // IEEE Transactions on Automatic Control. 1986. V. 31. N 11. P. 1015-1021. doi: 10.1109/TAC.1986.1104162
9. Kauraniemi J., Laakso T.I., Hartimo I., Ovaska S.J. Delta operator realizations of direct-form IIR filters // IEEE Transactions on Circuits and Systems II: Analog and Digital Signal Processing. 1998. V. 45. N 1. P. 41-52. doi: 10.1109/82.659455
10. Butusov D.N., Karimov T.I., Kaplun D.I., Karimov A.I. Delta operator filter design for hydroacoustic tasks // Proc. 6th Mediterranean Conference on Embedded Computing. Bar, Montenegro, 2017. Art. 7977213. doi: 10.1109/MEC0.2017.7977213
11. Бутусов Д.Н., Каримов Т.И., Каримов А.И. Применение модифицированного дельта-преобразования при проектировании специализированных вычислителей // Современные проблемы науки и образования. 2014. № 3. С. 76.
12. Butusov D.N., Karimov T.I., Kaplun D.I., Karimov A.I., Huang
References
1. Ahmadi A., Zwolinski M. Word-length oriented multiobjective optimization of area and power consumption in DSP algorithm implementation. Proc. 25th Int. Conf. on Microelectronics. Belgrade, Serbia, 2006, pp. 614-617. doi: 10.1109/ICMEL.2006.1651042
2. Govindu G.,Zhuo L., Choi S., Gundala P., Prassanna V. Area, and power performance analysis of a floating-point based application on FPGAs. Los Angeles, University of Southern California, 2003.
3. Te Ewe C., Cheung P.Y.K., Constantinides G.A. Dual fixed-point: an efficient alternative to floating-point computation.
Lecture Notes in Computer Science, 2004, vol. 3203, pp. 200-208.
4. Aruna K., Bhaskararao J. Design and implementation of fixed point and floating point PID controllers in VIVADO HLS using FPGA. International Journal of VLSI System Design and Communication Systems, 2016, vol. 4, no. 9, pp. 799-804.
5. Finnerty A., Ratigner H. Reduce Power and Cost by Converting from Floating Point to Fixed Point. XILINX White Paper 491, 2017, 14 p.
6. Schneider A.M., Kaneshige J.T., Groutage F.D. Higher order s-to-z mapping functions and their application in digitizing continuous-time filters. Proceedings of the IEEE, 1991, vol. 79, no. 11, pp. 1661-1674. doi: 10.1109/5.118990
7. Jackson L., Lindgren A., Kim Y. Optimal synthesis of second-order state-space structures for digital filters. IEEE Transactions on Circuits and Systems, 1979, vol. 26, no. 3, pp. 149-153. doi: 10.1109/TCS.1979.1084623
8. Middleton R., Goodwin G.C. Improved finite word length characteristics in digital control using delta operators. IEEE Transactions on Automatic Control, 1986, vol. 31, no. 11, pp. 1015-1021. doi: 10.1109/TAC.1986.1104162
9. Kauraniemi J., Laakso T.I., Hartimo I., Ovaska S.J. Delta operator realizations of direct-form IIR filters. IEEE Transactions on Circuits and Systems II: Analog and Digital Signal Processing, 1998, vol. 45, no. 1, pp. 41-52. doi: 10.1109/82.659455
10. Butusov D.N., Karimov T.I., Kaplun D.I., Karimov A.I. Delta operator filter design for hydroacoustic tasks. Proc. 6th Mediterranean Conference on Embedded Computing. Bar, Montenegro, 2017, art. 7977213. doi: 10.1109/MECO.2017.7977213
11. Butusov D.N., Karimov T.I., Karimov A.I. Modified deltatransform for special computing devices design. Sovremennye Problemy Nauki i Obrazovaniya, 2014, no. 3, p. 76. (in Russian)
12. Butusov D.N., Karimov T.I., Kaplun D.I., Karimov A.I.,
Y., Li S.C. The choice between delta and shift operators for low-precision data representation // Proc. 20th Conf. of Open Innovations Association (FRUCT). St. Petersburg, 2017. P. 46-52. doi: 10.23919/FRUCT.2017.8071291
Авторы
Каримов Тимур Искандарович - ассистент, Санкт-Петербургский государственный электротехнический университет «ЛЭТИ», Санкт-Петербург, 197376, Российская Федерация, Scopus ID: 56703060800, ORCID ID: 0000-00029860-8211, [email protected]
Сольницев Ремир Иосифович - доктор технических наук, профессор, профессор, Санкт-Петербургский государственный электротехнический университет «ЛЭТИ», Санкт-Петербург, 197376, Российская Федерация, Scopus ID: 57144497800, ORCID ID: 0000-0002-0415-6382, [email protected]
Бутусов Денис Николаевич - кандидат технических наук, доцент, Санкт-Петербургский государственный
электротехнический университет «ЛЭТИ», Санкт-Петербург, 197376, Российская Федерация, Scopus ID: 54388644800, ORCID ID: 0000-0002-8941-4220, [email protected] Островский Валерий Юрьевич - ассистент, Санкт-Петербургский государственный электротехнический университет «ЛЭТИ», Санкт-Петербург, 197376, Российская Федерация, Scopus ID: 56702241500, ORCID ID: 0000-00016750-2337, [email protected]
Huang Y., Li S.C. The choice between delta and shift operators for low-precision data representation. Proc. 20h Conf. of Open Innovations Association, FRUCT. St. Petersburg, 2017, pp. 46-52. doi:
10.23919/FRUCT.2017.8071291
Authors
Timur I. Karimov - Assistant, Saint Petersburg State Electrotechnical University "LETI", Saint Petersburg, 197376, Russian Federation, Scopus ID: 56703060800, ORCID ID: 00000002-9860-8211, [email protected]
Remir I. Solnitsev - D.Sc., Full Professor, Saint Petersburg State Electrotechnical University "LETI", Saint Petersburg, 197376, Russian Federation, Scopus ID: 57144497800, ORCID ID: 00000002-0415-6382, [email protected]
Denis N. Butusov - PhD, Associate Professor, Saint Petersburg State Electrotechnical University "LETI", Saint Petersburg, 197376, Russian Federation, Scopus ID: 54388644800, ORCID ID: 0000-0002-8941-4220, [email protected]
Valeriy Yu. Ostrovskiy - Assistant, Saint Petersburg State Electrotechnical University "LETI", Saint Petersburg, 197376, Russian Federation, Scopus ID: 56702241500, ORCID ID: 00000001-6750-2337, [email protected]