УДК 681.325.5
ОТКАЗОУСТОЙЧИВЫЕ
АЛГОРИТМЫ
ПРЕОБРАЗОВАНИЯ
ВРЕМЯИМПУЛЬСНЫХ
СИГНАЛОВ
САФЬЯННИКОВ Н.М., БУРЕНЁВА О.И.
Предлагается подход к созданию алгоритмов процессов непрерывного следящего преобразования, основанных на использовании методов приращений с квантами информации, образующими потоки.
В информационо-измерительных и управляющих системах широко распространена задача обработки информации с различными формами представления, в том числе смешанными: времяимпульсной, частотноимпульсной, фазоимпульсной и цифровой. Подобные задачи аппаратно решаются с использованием аналоговой и цифровой элементной базы, например, в [1]. При этом достигается высокая отказоустойчивость, адаптивность и производительность преобразований.
Микропроцессорные средства позволяют вести обработку информации с различными формами представления, однако классические подходы (например, методы с насчетом, заполнением, нониусные, групповые и др.) не обеспечивают следящий режим и перечисленные выше достоинства аппаратных реализаций. Таким образом, представляет интерес создание функционально-подобных алгоритмических преобразователей (ФПАП), с сохранением свойств отказоустойчивости и адаптивности.
Построение микропроцессорных ФПАП требует создания библиотеки простых, гибко модифицируемых отказоустойчивых алгоритмов для различных форм представления информации. Предлагается подход к построению ФПАП для реализации следящего преобразования широтно-импульсно-мо-дулированных (ШИМ) сигналов [2].
Для создания ФПАП были использованы структуры цифровых время-импульсных преобразователей со сглаживанием импульсных потоков, в основу работы которых положен принцип автоматической компенсации входных и результирующих информационных потоков, реализуемый с помощью отрицательной обратной связи [3]. В этом случае вычисление какой-либо функции, использующей кодовую и широтно-импульсную форму представления аргументов, представляет собой не дискретную последовательность операций получения результата, а процесс его непрерывного формирования.
Процесс вычисления функции
NBbIX =(^- ]NBX, (1)
где №х и №ых - выходной и входной цифровые коды, ©1 и ©2 - входные относительные длительности ШИМ-сигналов, может быть организован как показано на рис. 1.
Квантование информации, представленной в виде кода, состоит в формировании последовательности единичных квантов, количество которых в течение периода ШИМ-сигнала соответствует нормированному кодовому эквиваленту. Организация процесса основана на использовании методов малых приращений, согласно которому входной код представляется как последовательность квантов информации, появляющихся в определенные фиксированные моменты времени ti.
Алгоритм квантования кода приведен на рис 2. Пусть требуется выполнить квантование кода Nk, представленного в n разрядной сетке. Для выполнения квантования параллельно формируются n последовательностей квантов с общим количеством квантов Nn=2n-1. Последовательности могут быть получены при выполнении следующих действий: некоторый базовый код Nb, представленный в n разрядной сетке, при наступлении момента квантования инкрементируется и формируется код Nbinc; на основе полученного значения Nbinc и имевшегося значения Nb формируется Nbn, который может
■с з
Рис. 2
РИ, 2000, № 2
45
содержать единицу только в одном разряде; выявляется разряд m (0 < m < n-1), содержащий единицу, указывающую, что здесь произошла смена из состояния 0 в 1 при выполнении инкремента. Определение такого разряда вызывает появление информационной единицы в n-1-m квантовой последовательности.
Квантуемый код используется в качестве маски текущего состояния квантовых последовательностей Pn0, Pn1, ... , Pn(n-1). Маска накладывается по правилу: младший разряд двоичного кода Nk0 соответствует последовательности Pn (n-1), старший разряд Nk(n-1) соответствует последовательности Pn. Результат наложения позволяет определить необходимость формирования кванта для представления кода Nk в текущий момент.
Пример получения квантовых последовательностей Pno, Pn1, Pn2, Pn3 при n=4 приведен в таблице. В рассматриваемом примере при Nk=7 (двоичный эквивалент: 0111) будут выделены последовательности Pno, Pni, и Pn2, а при Nk= 11 (двоичный эквивалент: 1011) - последовательности Pn0, Pn1, и Pn3.
N6 N6 1ПС Pv0 Pv1 Pv2 Pv3
0000 0001 0001 0 0 0 1
0010 0010 0 0 1 0
0011 0001 0 0 0 1
0100 0100 0 1 0 0
0101 0001 0 0 0 1
0110 0010 0 0 1 0
0111 0001 0 0 0 1
1000 1000 1 0 0 0
1001 0001 0 0 0 1
1010 0010 0 0 1 0
1011 0001 0 0 0 1
1100 0100 0 1 0 0
1101 0001 0 0 0 1
1110 0010 0 0 1 0
1111 0001 0 0 0 1
При появлении кванта, соответствующего значению кода №х, в момент действия ШИМ-сигнала ©1 начинается формирование результата процесса вычисления (рис. 1). Одновременно с этим, в момент действия сигнала ©2 вырабатываются компенсирующие кванты в соответствии с видом множительно-делительной операции и текущим состоянием процесса. В начальный момент работы количество компенсирующих воздействий мало, однако в процессе вычисления поток квантов по компенсирующей цепи увеличивается. Достижение некоторого значения, при котором потоки квантов входного сигнала и компенсирующих квантов эквивалентны, является признаком результата вычисления.
Если в процессе вычисления произойдет произвольное изменение квантовых потоков, то возникнет нарушение равновесия, которое автоматически будет скомпенсировано, и результат будет восстановлен. При этом любые изменения параметров входного сигнала переводят процесс вычисления в новое устойчивое состояние.
46
С использованием предложенного подхода был реализован алгоритм выполнения множительноделительной операции (1), представленный на рис.3.
Отслеживание входных > воздействий
Отслеживание
компенсирующих
воздействий
Рис. 3
Для обеспечения отслеживания входных воздействий выполняется квантование входного кода №х, и если квант сформирован и сигнал ©1 принимает действующее значение, выполняется инкремент выходного кода. Компенсация воздействий обеспечивается выработкой соответствующих квантов на основе выходного кода в случае действия сигнала ©2=1. Появление кванта при квантовании выходного кода №ых вызывает компенсацию по обратной связи, и выполняется декремент результата. При нулевых значениях ©1, ©2 кванты вырабатываются, но не воздействуют на выходной результат, т.е. не участвуют в процессе формирования №ых.
Работа предложенного алгоритма происходит в соответствии со схемой процесса вычисления (рис. 1). С увеличением значения выходного кода количество компенсационных квантов возрастает. Это происходит до тех пор, пока процесс не придет в равновесие, характеризующееся равенством интенсивностей потоков инкрементирующих и декрементирующих квантов.
Период Т работы алгоритма определяется выбранной разрядностью n и составляет T=2n ti, где ti— интервал времени между импульсами частоты кван-
РИ, 2000, № 2
тования процесса . При описании процесса вычисления в качестве единицы времени выбираем длительность интервала ti. Тогда в относительных единицах T=2n. При этом количество временных отсчетов ti за период обозначим Xt.
Входной и выходной коды нормируются максимальным значением в используемой разрядной сетке. Примем коэффициент нормирования равным единице, т.е. максимальные значения №х и №ых совпадают с максимальным значением периода Тв относительных единицах.
Количество квантов, воздействующих на выходной результат, при отслеживании входных воздействий в течение периода Т определится как
X
NBX©jXt1
2n
Количество временных отсчетов ti за период может быть произвольным. Для вывода формулы, соответствующей процессу получения множительноделительной функции (рис. 3), примем Xti=2n. При этом коэффициент, связывающий разрядность и опорную частоту квантования процесса, будет равен единице, что упростит восприятие, не изменяя сущности математического описания процесса. Тогда
X + = Nbx©1 .
Аналогично определяется количество компенсирующих квантов, воздействующих на результат в течение периода Т:
NBbix (©1, © 2, Nbx )© 2Xt2
X _ =---------------------
2n
Так же как при отслеживании входных воздействий, при формировании компенсирующих квантов опорную частоту квантования процесса принимаем Xt2=2n. В результате получим
X_ = Nbbix^ , © 2, Nbx)© 2 .
После окончания первого периода ШИМ-сигна-лов, т.е. после выполнения цикла алгоритма множительно-делительной операции 2n раз, выходной код будет определяться следующим образом:
Хвых1(©1,©2, Хвх)= Хвыхо + Хвх©1 - №ых0©2 ,
Хвых1(©1,©2, Хвх)= №ых0 (1-©2) + №х©1 ,
где Хвых0 — любое начальное значение выходного кода.
В конце второго и третьего периодов работы алгоритма соответственно будут сформированы коды (2) и (3):
Хвых2(©1,©2, №х)=
=Хвыхо(1- ©2)2 + Хвх©1[1 + (1- ©2)] , (2) Хвых3(©1,©2, №х)=№ых0(1 - ©2)3 +
+ Хвх©1[1 + (1- ©2) + (1- ©2)2] . (3) Результат работы после i-го периода определяется: №ых^©ь©2, Хвх)= №ых0(1- ©2) i +
+ Хвх©1[1+ (1 - ©2) + ... + (1- ©2) (i 1)] . (4)
Второе слагаемое этого выражения характеризуется геометрической прогрессией с основанием q= 1 - ©2 и может быть представлено суммой
S = q(b1) ~ 1 = 1 - (1 ~©2)(1^1) q -1 ©2
(5)
Таким образом, функция, соответствующая процессу получения множительно-делительной зависимости во времени t, определяется соотношением:
Nbbix t(©j, ©2,Nbx) = NBbix 0(1 -© 2)1
+
Nbx©1
©
2
Nbx©1 (1 ~©2)(t-1)
©
2
Поскольку величина ©1 находится в диапазоне 0 < ©2 = 1, следовательно,
lim(1-©2)t -0 lim(1~®2)(t :) -0 .
Таким образом, в установившемся режиме результирующий код будет определяться следующим соотношением:
NBbix =
(
©
х
1
Nbx
V
©
2
В качестве характеристики работы алгоритма процесса получения множительно-делительной функции рассмотрим его время выхода в установившийся режим, определяющееся количеством Nt периодов T.
Динамика переходного процесса может быть определена из уравнения
Nt
Nbmx = J (Nbx ©1 - NBbix©2)5Nt
0
путем нахождения Nt.
Это уравнение описывает процесс выхода в режим отслеживания результата как процесс накопления разности потоков инкрементирующих и д екремен -тирующих квантов в течение каждого периода Т.
Считая на время переходного процесса неизменными значения №х, ©1, ©2 и решая это уравнение относительно переменной Nt, имеем:
Nt = -1-ln
®2
©1
NBbix 0 - Nbx—1
©2
©1
NBbix p - Nbx—1
p ©2
(6)
где №ыхр — значения, которые принимает выходной код в течение переходного периода.
Характер переходного процесса соответствует логарифмической зависимости, параметры которой определяются сочетанием входных данных и начальным состоянием процесса.
Моделирование предлагаемого алгоритма процесса получения множительно-делительной функции выполнялось с использованием системы Mathcad 7.
РИ, 2000, № 2
47
Целью моделирования было подтверждение полученных аналитических зависимостей, поэтому диапазон используемых значений для наглядности ограничивался восьмиразрядной сеткой.
Выход процесса в установившийся режим при следующих исходных данных: ©1=0,24, ©2=0,78, №х=120 и ©1=0,12, ©2=0,39, №х=120 происходит в соответствии с графиками 1 и 2, приведенными на рис. 4.
Экспериментально определенные зависимости длительностей переходных процессов соответствуют
В результате моделирования определены зависимости длительности переходного процесса от входного кода №х. На рис. 5 представлены зависимости длительности переходных процессов от входного кода №х при фиксированном соотношении Q1/Q2 для Q1=0,16, Q2=0,32 (график 1), Q1=0,24, Q2=0,48 (график 2), Qi=0,47, Q2=0,94 (график 3).
Анализ поведения алгоритма на различных наборах исходных данных выявил и подтвердил характерные формы зависимости длительности переходного процесса от сочетания входных данных.
При достижении установившегося режима отслеживания результата средние значения интенсивностей потоков инкрементирующих и декрементирующих квантов в течение каждого периода Т равны. Однако мгновенные значения разности потоков могут отличаться, что приводит к флуктуациям кода №ых, т.е. абсолютная погрешность процесса получения функциональной зависимости может превышать единицу младшего разряда.
Относительная погрешность процесса вычисления при фиксированной разрядности, как известно, с уменьшением абсолютного значения возрастает. Поэтому влияние флуктуации кода №ых на точность получения результата при приближении к нижней границе диапазона может стать значимым.
Сказанное иллюстрируется графиками зависимости относительной погрешности
, N - №ых о =------
N
при различных входных данных, показанных на рис. 6 и соответствующих входным наборам ©1=0,24, ©2=0,68 (график 1), и ©1=0,47, ©2=0,94 (график 2). В качестве значения N, служащего базой для определения погрешности процесса, можно использовать результат множительно-делительной операции, выполненной в абсолютных значениях с точностью 0,01.
Таким образом, для устранения влияния флуктуации выходного кода на точность получения резуль -тата необходимо предусматривать дополнительные младшие разряды. Для худшего из приведенных графиков рис. 6 (вариант 1) при увеличении разрядности получены зависимости относительной погрешности, приведенные на рис. 7: график 2 соответствует увеличению на один, а график 3 — на два разряда.
Анализ приведенных зависимостей показывает, что для рассмотренного примера уже при увеличении разрядной сетки до 10 влияние флуктуации практически отсутствует.
Отказоустойчивость алгоритма достигается за счет организации отрицательной обратной связи, которая обеспечивает отслеживание входных воздействий с компенсацией малых изменений по входам. Сказанное проиллюстрировано результатами моделирования, приведенными на рис. 8. График 1 получен для исходных данных ©і=0,8, ©2=0,4, №х=20. При этом алгоритм достигает установившегося режима отслеживания результата за 10 тактов. При поступлении, например, на тактах 11, 12 помехи по входу ©1, равной Д©1=0,1, произойдет искажение результата. Это искажение будет нейтрализовано алгоритмом в течение трех тактов в непрерывном процессе получения множительноделительной функции. Аналогичным образом алгоритм реагирует на помеху Д©2=0,1, действующую на тактах 13, 14, при исходных данных ©1=0,8, ©2=0,4, №х=15 (график 2).
48
РИ, 2000, № 2
Рис. 8
При возникновении сбоя в работе аппаратуры процесс сохраняет свойство восстанавливаемости. При аппаратном отказе какого-либо разряда процесс выходит из состояния установившегося режима отслеживания результата, но при этом стремится вернуться в это состояние. Позиция сбойного разряда будет определять диапазон флуктуаций значения кода Мвых при сохранении среднего значения результата.
Рассмотренный алгоритм отказоустойчивого следящего преобразования обеспечивает структурную реализацию вычисления множительно-делительной зависимости. Аналогичным образом может быть организован процесс отслеживания входных и формирования компенсирующих воздействий при непрерывном формировании результата любой дробно-рациональной зависимости вида
f(x)
Pn(x)
Qm(x)
Z a‘x‘
Z b
J=0
1=0
x
При этом операция деления выполняется структурно в едином процессе с использованием весовых потоков информационных квантов.
Веса квантовых потоков, соответствующие значениям aj и bj, могут задаваться с помощью опорных кодов, параллельно квантуемых во времени по алгоритму, приведенному на рис. 2.
Возможен вариант задания aj и bj с использованием весов сравнения, т.е. коэффициентов, присваиваемых единичным квантам на этапе сравнения и интегрирования разности потоков (рис.1). При этом в потоках кванты остаются единичными, а их интегральный вклад в выходной результат будет зависеть от веса, присваиваемого потоку.
Для алгоритма, приведенного на рис. 3, это равносильно интегрированию потоков со взвешиванием квантов: для инкрементирующего потока — с весом v1:
Мвых=Мвых+1у1,
а для декрементирующего потока — с весом v2: №ых=Мвых- 1v2.
Таким образом, приведенный базис достаточен для организации отказоустойчивых процессов любых функциональных преобразований времяимпульсных сигналов.
Функционально-подобные алгоритмические преобразователи рассмотренного класса могут быть реализованы с использованием всех известных средств: элементов с программируемой логикой и элементов памяти, микропроцессоров, спецпроцессоров. Выбор технической базы будет опреде-
РИ, 2000, № 2
ляться требованиями быстродействия обработки, универсальности и перестраиваемое™ системы, энергопотреблением и так далее.
Очевидно, что специализированная реализация алгоритмов, в том числе и ФПАП, по техническим показателям более эффективна, чем реализация с использованием универсальных средств. Но использование ФПАП позволит получить лучшие показатели в обоих случаях по сравнению с реализацией классических алгоритмов преобразований.
В специализированных реализациях ФПАП малый набор простейших операций позволяет максимально упростить процессорную часть. При использовании универсальных цифровых вычислительных средств общего назначения преимущества ФПАП будут состоять в неявном выполнении множительно-делительных операций в базисе “коротких” служебных инструкций.
При этом независимо от выбранной аппаратной реализации алгоритмы будут сохранять показанные в статье достоинства.
Предлагаемые алгоритмы представляют интерес и для новых направлений вычислительной техники, основанных на непрерывных процессах при осуществлении преобразований, например, квантовых, молекулярных, оптических и биологических вычислений. Это объясняется тем, что в ФПАП при формировании результата естественным образом реализуются непрерывные процессы вычисления.
Литература: 1.Время-импульсные вычислительные уст-ройства/їод ред. В.Б.Смолова, Е.П.Угрюмова. М: Радио и связь. 1983. 288с. 2. Сафьянников Н.М., Буренёва О.И. Отказоустойчивые измерительно-вычислительные алгоритмы для обработки времяимпульсных сигналов/ /Тезисы докладов 4 Международной конференции “Теория и техника передачи, приема и обработки информации”. ХТУРЕ, Харьков-Туапсе. 1998. С. 47-48. 3. Сафьянников Н.М., Буренёва О.И. Множительноделительное устройство. Патент РФ № 2097829 от 27.11.97. Опубл. БИ №3.
Поступила в редколлегию 14.03.2000
Рецензент: д-р техн. наук, проф. Анкудинов Г.
Сафьянников Николай Михайлович, канд. техн. наук, доцент, старший научный сотрудник, ведущий научный сотрудник кафедры вычислительной техники Санкт-Петербургского государственного электротехнического университета. Научные интересы: разработка и исследование волновых информационных процессов и структур, специализированных средств вычислительной техники для систем управления и измерения, разработка САПР топологического этапа проектирования. Увлечения: психоанализ. Хобби: поэзия. Адрес: Россия, 197376, Санкт-Петербург, ул. проф. Попова, 5, корп. 2, тел. (812) 234-25-03, (812) 234-91-32, (812) 444-53-72.
Буренёва Ольга Игоревна, инженер кафедры вычислительной техники Санкт-Петербургского государственного электротехнического университета. Научные интересы: разработка и исследование потоковой организации вычислений, разработка специализированных средств вычислительной техники для систем управления и измерения, разработка САПР топологического этапа проектирования. Адрес: Россия, 197376, Санкт-Петербург, ул. проф. Попова, 5, корп. 2, тел. (812) 23425-03, (812) 234-60-77, (812) 261-68-47.
49