Приведение автоматного представления устройства дискретной автоматики к линейному векторно-матричному виду на основе агрегирования булевых термов

ПРИВЕДЕНИЕ АВТОМАТНОГО ПРЕДСТАВЛЕНИЯ

УСТРОЙСТВА ДИСКРЕТНОЙ АВТОМАТИКИ К ЛИНЕЙНОМУ ВЕКТОРНО-МАТРИЧНОМУ ВИДУ НА ОСНОВЕ АГРЕГИРОВАНИЯ БУЛЕВЫХ ТЕРМОВ

А.А. Мельников, А.В. Ушаков

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

Введение. Постановка задачи

На настоящий момент известен ряд решений [1-3] приведения линейного векторно-матричного описания [4,5] устройства дискретной автоматики (УДА) к автоматному [6] виду. Такое модельное преобразование УДА своей целью обычно ориентировано на сокращение размерности вектора состояния устройства, что в технической реализации приводит к уменьшению числа элементов памяти (ЭП) его реализующих. С точки зрения аналитических представлений это характеризуется сокращением размерности плин кодов состояния линейной реализации до размерности павт автоматной реализации, что может быть представлено в виде неравенства

Павт < Плин .

Наряду с очевидными достоинствами, предоставляемыми отмеченным модельным преобразованием, следует отметить, что в рамках общей концепции конструирования УДА, когда изначально синтезируется та или иная версия устройства, необходимо уделять внимание анализу различных модельных представлений. Несмотря на некоторую избыточность ЭП линейной версии УДА по сравнению с автоматной, такая версия может обеспечить заметный выигрыш в простоте комбинационной схемы и в упрощении топологии технической реализации устройства. На настоящий момент существует ряд работ, посвященных конструированию линейной модели УДА по имеющейся автоматной версии устройства, среди которых можно выделить работу, представленную, например, в [7]. Однако канонизированная методология конструирования таких моделей пока не сформирована. Возможное частичное решение проблемы в концептуальной постановке может обеспечить использование принципа агрегирования булевых термов автоматного описания УДА.

1. Каноническое представление автоматной версии УДА

Каноническое автоматное описание УДА в форме абстрактного автомата (АА) записывается в виде пятиэлементного [3] макровектора:

АА: {Z,5,ЖД,5 },

где Z - алфавит входов мощности [ Z ]= rZ, 5 — алфавит состояния мощности [5] = , Ж - алфавит выходов мощности [Ж] = тЖ, X - правило

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 },

для которого правило X принимает вид

x

и функция выхода 5 -

y

где в выражении (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 .

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

и

которая с учетом правила X в форме (7) принимает следующий вид:

и

В итоге техническая реализация автоматного УДА будет в своем аналитическом описании иметь булевы функции:

• возбуждения информационных и входов триггеров

U = ~{x, y},

• формирования выходов y

У = 5 {x,y}.

2. Приведение автоматного представления УДА к линейному векторно-матричному виду

Задача приведения автоматного представления УДА (6)-(8) к линейному векторно-матричному виду состоит в получении описания функционирования УДА в следующей векторно-матричной форме:

x

y

где 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 входа триггера, которое в

рамках общей теории устройств дискретной автоматики для Б-триггера имеет общий вид

и ^ =

где ЦI — переменная состояния Б-триггера.

Выделим в общем виде переменную X| состояния УДА:

п

п

1=1

где ап 1, Ъ1 - элементы матриц А и в, соответствующие переменной X| ВМ описания

(14), (15). Здесь и далее по тексту - суммирование по модулю два элементов

1

(•) •

Подставим с учетом тождества х1 = в выражение для функции (16) возбуждения информационного и 1 входа триггера значение переменной х1 (к +1) состояния из соотношения (17):

п

= ц

1=1

Сопоставление выражения (18) с выражениями (10) и (11) показывает справедливость положений, постулируемых утверждением.

Зафиксируем значения входных переменных, соответствующие условию переходов в УДА. Таким образом, для решения задачи необходимо свести аналитическое описание БФ возбуждения информационного и 1 входа триггера,

имеющего в общем случае следующий вид:

1<2п " / ч

ц

где ^/(•1) — дизъюнкция элементов (•1), /) — конъюнкция элементов (• / ), а

переменная ч/1 (здесь и далее по тексту) определяется как

/ =Ь ^ = 0-

j [ч/ • Р/ = 0

к линейному виду:

Ц

1

где а 1 - логическая константа, принимающая значение 0 или 1.

х

Свести представление БФ возбуждения в форме (19) к виду (21) позволяют положения следующего утверждения.

Утверждение 2

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,

& XlXJ к 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

д xl

частная производная, вычисляемая в силу следующего соотношения

[9, 10]:

дf3

д x

= f J (x1, x2,к, xl-1,1, xl+1,к xn ) 0 0 f j (x1, x2, к, xl-1,0, xl +1, к xn ).

Доказательство. При вычислении производной к-го порядка производные младшего порядка обращаются в 0, а старшие, в силу (х1, х2,..., хп ) = 0, также равны 0.

Из выражения (22) видно, что в результате преобразования выражения (19) в качестве БФ возбуждения будем иметь линейную переключательную функцию (ПФ), аргументы которой представляют собой сочетания переменных состояния в форме их произведения. Последнее обстоятельство не позволяет напрямую получить линейное ВМ описание из системы полученных ПФ. Решить эту проблему позволяет использование принципа агрегирования булевых термов автоматного описания УДА, который сформулируем в форме следующего утверждения.

Утверждение 3 (У.3). Произвольное автоматное УДА представимо линейной своей версией с ВМ описанием в форме (14), (15) агрегированием конъюнкций булевых переменных полинома Жегалкина в переменные x состояния, расширяющие исходный вектор x, dimx = n , состояния УДА:

x = [x! ~]T,

при этом матрица 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

где С рп - «композиционное» произведение параметров рп множества

п=1

Р {Р1 ,Р2,к,Рх): Р1 е{0,1), 1 = 1,х, образующее по классическому сочетательному

закону Ст множество Р композиционных параметров в форме произведения

параметров из множества Р мощностих = [ Р ]; Рх - коэффициент, значение которого принадлежит множеству {0,1}, а агрегирование переменных х осуществляется с использованием следующей рекуррентной процедуры (26)—(31):

Х|(к +1)= Г1 (Х1(к +1))= а0 © аг/X/(к)© . © а^-/Хп- - (к)© .

v<2п-п-1 п

... © а1пхп

1=1 1 ж=1

в

/,/ =1,п; а0 5 а1/ ,ае: / (Р1, Р2,..., Рп^У^С Рп; а,/ = {0,1}п= 1в

, 1 = Гу; к = {х * 0 },

?(к ) =

аг§

а 1 Схж(к0

Ж=1

,(к + 1) = П хж (к + 1) = П /ж ( (к +1)),

ж=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 }

Доказательство. Из выражения (27) видно, что на каждом шаге рекурсии образуется некоторый алфавит, буквы которого представлены сочетаниями х булевых переменных х1 состояния УДА. Начальный шаг рекурсии характеризуется мощностью алфавита

V

= [х ] = 2п -п-1

всех возможных сочетаний булевых переменных х1 без повторений, кроме случая,

когда элемент сочетания представлен одной переменной. Выражение (31) показывает, что на очередном шаге рекурсии алфавит пополнится новыми сочетаниями из числа

V = 2п - п - 1 -к дает:

оставшихся. В этой связи предельный переход при

к —> 2п - п - 1

I

I

v = lim v — к = 0.

—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.