ПРИВЕДЕНИЕ АВТОМАТНОГО ПРЕДСТАВЛЕНИЯ
УСТРОЙСТВА ДИСКРЕТНОЙ АВТОМАТИКИ К ЛИНЕЙНОМУ ВЕКТОРНО-МАТРИЧНОМУ ВИДУ НА ОСНОВЕ АГРЕГИРОВАНИЯ БУЛЕВЫХ ТЕРМОВ
А.А. Мельников, А.В. Ушаков
Рассматривается задача конструирования линейного векторно-матричного (ВМ) описания автоматной версии УДА. Своим решением эта задача позволяет расширить класс представлений УДА, что тем самым, обеспечивает возможность доставлять УДА различные структурные и функциональные свойства. Показывается, что в концептуальной постановке поставленная задача может быть частично решена использованием принципа агрегирования булевых термов. Приводится пример.
Введение. Постановка задачи
На настоящий момент известен ряд решений [1-3] приведения линейного векторно-матричного описания [4,5] устройства дискретной автоматики (УДА) к автоматному [6] виду. Такое модельное преобразование УДА своей целью обычно ориентировано на сокращение размерности вектора состояния устройства, что в технической реализации приводит к уменьшению числа элементов памяти (ЭП) его реализующих. С точки зрения аналитических представлений это характеризуется сокращением размерности плин кодов состояния линейной реализации до размерности павт автоматной реализации, что может быть представлено в виде неравенства
Павт < Плин . (1)
Наряду с очевидными достоинствами, предоставляемыми отмеченным модельным преобразованием, следует отметить, что в рамках общей концепции конструирования УДА, когда изначально синтезируется та или иная версия устройства, необходимо уделять внимание анализу различных модельных представлений. Несмотря на некоторую избыточность ЭП линейной версии УДА по сравнению с автоматной, такая версия может обеспечить заметный выигрыш в простоте комбинационной схемы и в упрощении топологии технической реализации устройства. На настоящий момент существует ряд работ, посвященных конструированию линейной модели УДА по имеющейся автоматной версии устройства, среди которых можно выделить работу, представленную, например, в [7]. Однако канонизированная методология конструирования таких моделей пока не сформирована. Возможное частичное решение проблемы в концептуальной постановке может обеспечить использование принципа агрегирования булевых термов автоматного описания УДА.
1. Каноническое представление автоматной версии УДА
Каноническое автоматное описание УДА в форме абстрактного автомата (АА) записывается в виде пятиэлементного [3] макровектора:
АА: {Z,5,ЖД,5 }, (2)
где Z - алфавит входов мощности [ Z ]= rZ, 5 — алфавит состояния мощности [5] = , Ж - алфавит выходов мощности [Ж] = тЖ, X - правило (функция) перехода +1)=X [(к), г(к)], *(0); (3)
5 — правило (функция) выхода
Ж(к) = 5 [(к)] (4)
в логике абстрактного автомата Мура и
Ж(к) = 5 [(к), 7(к)] (5)
в логике абстрактного автомата Мили. В приведенных выражениях (3)-(5) s(o), s(k), s(k +1) - начальное состояние, исходное состояние и состояние перехода АА соответственно, k - дискретное время, выраженное числом тактов. При составлении абстрактного описания основным математическим средством задания правил (функций) X , 5 являются графы переходов и таблицы переходов и выходов.
Кодированием алфавитов АА (1) элементами простого поля Галуа GF (p), p = 2 осуществляется переход от абстрактного описания (2)-(5) УДА к его описанию в форме конечного автомата (КА):
КА : {U,X,Y,X,5 }, (6)
для которого правило X принимает вид
x(k + 1)= X[x(k), u(k)], x(0), (7)
и функция выхода 5 -
y(k) = 5 [x(k), u(k)], (8)
где в выражении (6) U = e{Z}, U = ё{Z}, U = ё{Z}, £{(•)} - код (вектор-строка) элемента алфавита (•) размерности dimё{(^)}, при этом размерности кодов КА (6) и мощности алфавитов АА (2) связаны неравенствами
dimU = r: pr > rZ, dim X = n: pn > nS , dim W = m: pm > mW . (9)
Выбор для технической реализации элементов кода алфавита S состояния того или иного типа триггера приводит к функции ц возбуждения информационных и входов триггеров:
и (k) = ц [x(k),x(k +1)] , (10)
которая с учетом правила X в форме (7) принимает следующий вид:
и(k) = ц {x(k),X [x(k), u(k) ~ {x(k), u(k)}. (11)
В итоге техническая реализация автоматного УДА будет в своем аналитическом описании иметь булевы функции:
• возбуждения информационных и входов триггеров
U = ~{x, y}, (12)
• формирования выходов y
У = 5 {x,y}. (13)
2. Приведение автоматного представления УДА к линейному векторно-матричному виду
Задача приведения автоматного представления УДА (6)-(8) к линейному векторно-матричному виду состоит в получении описания функционирования УДА в следующей векторно-матричной форме:
x(k +1) = A x(k)+ Bu (k); (14)
y (k ) = C x(k)+ Hu (k), (15)
где x(k) - вектор состояния, dim x = n'; u(k) - вектор входной последовательности, dimu = r; y (k) - вектор выходной последовательности, dim y = m ; A - матрица состояния, dim A = n'xn'; B - матрица входов, dim B = n'xr; C - матрица выходов, dim C = m x n'; H - матрица вход-выход УДА, при этом действия в описаниях (14), (15) осуществляются линейными операциями умножения матрицы на вектор и сложения по модулю p = 2 .
Для очевидности положений предлагаемой методологии приведения автоматного представления УДА (6)-(8) к линейному векторно-матричному виду сформулируем следующее утверждение.
Утверждение 1 (У.1). Пара матриц А, В линейного ВМ описания (14), (15) УДА задает БФ ц возбуждения информационных и входов триггеров в форме (11).
Доказательство. Для доказательства утверждения выделим переменные состояния
XI из выражения (14) ВМ описания УДА и сопоставим их с аналитическим
представлением функции возбуждения информационного и 1 входа триггера, которое в
рамках общей теории устройств дискретной автоматики для Б-триггера имеет общий вид
и ^ = (к +1), (16)
где ЦI — переменная состояния Б-триггера.
Выделим в общем виде переменную X| состояния УДА:
п
(к +1) = Еад (к)ф ь , (17)
п
1=1
где ап 1, Ъ1 - элементы матриц А и в, соответствующие переменной X| ВМ описания
(14), (15). Здесь и далее по тексту - суммирование по модулю два элементов
1
(•) •
Подставим с учетом тождества х1 = в выражение для функции (16) возбуждения информационного и 1 входа триггера значение переменной х1 (к +1) состояния из соотношения (17):
п
= ц(к + 1) = Еап,х(к)еЬ. (18)
1=1
Сопоставление выражения (18) с выражениями (10) и (11) показывает справедливость положений, постулируемых утверждением. ■
Зафиксируем значения входных переменных, соответствующие условию переходов в УДА. Таким образом, для решения задачи необходимо свести аналитическое описание БФ возбуждения информационного и 1 входа триггера,
имеющего в общем случае следующий вид:
1<2п " / ч
ц(,Ч2...Чп) = У & ( ), (19)
где ^/(•1) — дизъюнкция элементов (•1), /) — конъюнкция элементов (• / ), а
переменная ч/1 (здесь и далее по тексту) определяется как
/ =Ь ^ = 0- (20)
j [ч/ • Р/ = 0
к линейному виду:
Ц(Ч1,Ч2 .Чп) = а0 ©^аЧ, (21)
1
где а 1 - логическая константа, принимающая значение 0 или 1.
х
Свести представление БФ возбуждения в форме (19) к виду (21) позволяют положения следующего утверждения.
Утверждение 2 (У.2). Произвольная БФ /(х1,х2,...,хп) может быть представлена в виде ряда [8] (полинома Жегалкина)
f (, x2,k, xn ) = f (o, 0,k,0) 0 2
д f
=1 д x,
& x, 0
l = 0, l = 1,n
^ в 2
д 2 f
1 , j = '* J
1 д x, д xj
& xlxJ 0
0
••• 0
2
l = 0, l =1, n д kf
l1,l2,K,lk
=1 дx, дx, кдx,
(22)
& Xl■XJ к xk 0
д nf
д x1 д x2 к д xn
l = 0, l = 1,n
& xlxj к xn
Лl = 0, l=1,n
в точке(x1,x2,k,xn) 0, где индексы lj, 12,k,ik,...,in e {1,2,к,n} попарно не равны друг
другу, а
д fj (x)
д xl
частная производная, вычисляемая в силу следующего соотношения
[9, 10]:
дf3 (x)
д x
= f J (x1, x2,к, xl-1,1, xl+1,к xn ) 0 0 f j (x1, x2, к, xl-1,0, xl +1, к xn ).
(23)
Доказательство. При вычислении производной к-го порядка производные младшего порядка обращаются в 0, а старшие, в силу (х1, х2,..., хп ) = 0, также равны 0.
Из выражения (22) видно, что в результате преобразования выражения (19) в качестве БФ возбуждения будем иметь линейную переключательную функцию (ПФ), аргументы которой представляют собой сочетания переменных состояния в форме их произведения. Последнее обстоятельство не позволяет напрямую получить линейное ВМ описание из системы полученных ПФ. Решить эту проблему позволяет использование принципа агрегирования булевых термов автоматного описания УДА, который сформулируем в форме следующего утверждения.
Утверждение 3 (У.3). Произвольное автоматное УДА представимо линейной своей версией с ВМ описанием в форме (14), (15) агрегированием конъюнкций булевых переменных полинома Жегалкина в переменные x состояния, расширяющие исходный вектор x, dimx = n , состояния УДА:
x = [x! ~]T, (24)
при этом матрица A dim A = n'x n' состояния будет иметь следующий вид:
2х-1 X
a, . : a, .
х=1 Xn=1 n
A :
■ J
■ J
1, j = 1 n', Рх={0, 1} pn e P, X = P
(25)
■
где С рп - «композиционное» произведение параметров рп множества
п=1
Р {Р1 ,Р2,к,Рх): Р1 е{0,1), 1 = 1,х, образующее по классическому сочетательному
закону Ст множество Р композиционных параметров в форме произведения
параметров из множества Р мощностих = [ Р ]; Рх - коэффициент, значение которого принадлежит множеству {0,1}, а агрегирование переменных х осуществляется с использованием следующей рекуррентной процедуры (26)—(31):
Х|(к +1)= Г1 (Х1(к +1))= а0 © аг/X/(к)© . © а^-/Хп- - (к)© .
v<2п-п-1 п
... © а1пхп(к)© к © I а С Хж(к)
1=1 1 ж=1
в
/,/ =1,п; а0 5 а1/ ,ае: / (Р1, Р2,..., Рп^У^С Рп; а,/ = {0,1}п= 1в
, 1 = Гу; к = {х * 0 },
?(к ) =
аг§
а 1 Схж(к0
Ж=1
,(к + 1) = П хж (к + 1) = П /ж ( (к +1)),
(26)
(27)
(28)
ж=1
ж=1
х (к +1) = / ((1 (к +1)) = а0 © а1 .х/(к)©... © ащ_,хп_. (к)©...
... © а1пхп'
(к)© ... ©1а е хе (к), 1, / = 1, п,
1=1
(к +1) = / ((к +1)) = а0 ©а1 -х -(к)©...©аы.-х^.(к)©...
у<2п—п—1 п
... ©а1пхп(к)© ...© I а1 Схж(к), 1,/ = \п,
1=1
ж=1
'(к )= аг§
а1 Схж(к)* 0
ж=1
, 1' = 1, у-к; к' = { * 0 }
(29)
(30)
(31)
Доказательство. Из выражения (27) видно, что на каждом шаге рекурсии образуется некоторый алфавит, буквы которого представлены сочетаниями х булевых переменных х1 состояния УДА. Начальный шаг рекурсии характеризуется мощностью алфавита
(32)
V
= [х ] = 2п -п-1
всех возможных сочетаний булевых переменных х1 без повторений, кроме случая,
когда элемент сочетания представлен одной переменной. Выражение (31) показывает, что на очередном шаге рекурсии алфавит пополнится новыми сочетаниями из числа
V = 2п - п - 1 -к дает:
оставшихся. В этой связи предельный переход при
к —> 2п - п - 1
I
I
v = lim v — к = 0. (33)
—n—1
Таким образом, процедура рекурсии (26)—(31) завершится за конечное число шагов, число которых не превысит значения, определяемого выражением (32), а полученные агрегированные переменные образуют вектор состояния (24), что в итоге позволяет по результатам рекурсии получить матрицу состояния линейной версии УДА в форме (25). ■
Следует заметить, что в силу нелинейности природы исходного УД, линейная его версия не всегда может обладать функциональной полнотой, характеризующейся, в частности, свойствами полной управляемости и наблюдаемости. Проиллюстрируем положения статьи примером.
3. Пример
В качестве примера рассмотрим возбуждения входов триггеров которого
автоматное УДА второго порядка, БФ
^ 1 — UXi X2 V U Xi X2 , ^ 2
= u (x1
XXi X2 »U X] X'
)
ПЛ2
Воспользуемся положениями утверждения У.1 и получим представления БФ возбуждения в виде соответствующих полиномов Жегалкина:
^ 1 = х2 ф их2 ф х1 х2 , ^ 2 = х2 Ф х1 х2 Ф их1 х2 .
Выполнение рекуррентной процедуры (26)-(31) дает агрегированную переменную
X3 — Xi X2 •
в соответствии с аналитическим представлением которой выражения для вектора состояния линейной версии УДА имеют вид х1 (к +1) = х2 (к)ф их2 (к )ф ~3 (к),
х2 (к +1) = х2 (к)ф ~3 (к)ф их3 ( к),
~3 (к +1) = х2 (к)ф ~3 (к)ф их2 ( к).
Полученные выражения позволяют в общем виде получить две версии представления матриц-компонентов ВМ описания (14), (15) линейной версии УДА — однородную
1
В = 0, С = I, Н = 0,
A(u ) —
10 u 1
1 0 U
10u 1
и неодно
родную
"0 1 1" X2
A — 0 1 1 , B(x) — X3
0 1 1 _ X2 _
C — I, H = 0
Заключение
Представленная методология приведения автоматного представления УДА к линейному векторно-матричному виду на основе агрегирования булевых термов обнаруживает свою состоятельность. Простота полученной рекуррентной процедуры позволяет погрузить ее в программную среду, что позволяет использовать ее для преобразования автоматных УДА большой размерности. Несмотря на конструктивность и простоту предлагаемой методологии следует отметить, что в
3
рамках «тонких» свойств той или иной природы УДА не всегда возможно получить его
версию, обладающую соответствующей функциональной полнотой,
характеризующейся, в частности, свойствами полной управляемости и наблюдаемости.
Литература
1. Ушаков А.В. Синтез циклических кодирующих и декодирующих устройств в логике произвольных триггеров. //Автоматика и телемеханика. 1997. №11
2. Баев А.П., Мельников А. А., Салмыгин И.П., Ушаков А.В. Построение устройств помехоустойчивого кодопреобразования в логике произвольных триггеров. //Алгебраические методы в теории устройств дискретной автоматики и телемеханики. СПб.: СПбГИТМО(ТУ), 2001.
3. Баев А.П., Салмыгин И.П., Ушаков А.В. Автоматный синтез циклических кодирующих и декодирующих устройств. //Изв. вузов. Приборостроение. 1998. Т. 41. № 7.
4. Гилл А. Линейные последовательностью машины. М.: Наука, 1974.
5. Фараджев Р.Г. Линейные последовательностью машины. М.: Сов. радио, 1975.
6. Баранов С.И. Синтез микропрограммных автоматов. Л.: Энергия, 1979.
7. Dubarenko V.V. About reduction of systems of the logic equations to linear sequential circuits. //Labour the first national conference with international participation on physical metrology problems "FIZMET-94, "Science ", St.-Petersburg, 1995.
8. Горбатов В. А. Фундаментальные основы дискретной математики. Информационная математика. М.: Наука, Гл. ред. физ.-мат. лит., 1999.
9. Селлерс Ф. Методы обнаружения ошибок в работе ЭЦВМ. М.: Мир, 1972.
10. Sellers F., Hsio M.Y., Bearson L.W., Analizing errors with Boolean difference//IEEE Trans. Comp. C-17. 1968. РР. 676-683.