СХЕМЫ ИЗ ЭЛЕМЕНТАРНЫХ АВТОМАТОВ

Пусть A = {0, 1}. Следующие автоматы называются элементарными (см. рис. 7.16):

 

 

& - Z

 

Рис. 7.16

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

Эти автоматы имеют по одному внутреннему состоянию.

 

Автомат Z является задержкой для алфавита A = {0, 1}.

Рассмотрим как с помощью схем, составленных из элементарных автоматов, можно представлять произвольные автоматы.

Пусть Â = (A, B, Q, j, y) - произвольный автомат, для которого:

A = {a1, . . . , am}, B = {b1, . . . , bn}, Q = {q0, . . . , qr}, и q0 - это начальное состояние автомата Â.

Будем представлять символы алфавитов A и B, а также элементы множества состояний Q с помощью двоичных наборов длины p = ]log2(m)[, d = ]log2(n)[ и s = ]log2(r+1)[ соответственно.

 

Заметим, что значения p, d и sвыбраны из соображений минимальности длины наборов, которых должно быть не меньше, чем элементов соответствующих множеств.

 

Для определенности положим, что начальное состояние Â, равное q0, представляется набором, состоящим из s нулей.

Рассмотрим автомат Á, имеющий p входов и d выходов, который моделирует работу автомата Â.

Состояния Áпредставляются двоичными наборами, имеющими длину s, которые соответствуют состояниям Â.

Начальным состоянием автомата Áявляется состояние, представляющее состояние q0 автомата Â.

Если в некоторый момент времени на вход Á поступает набор, представляющий символ входного алфавита ai и автомат находится в состоянии, соответствующем состоянию qj, то на выходе Á появляется двоичный набор, представляющий
y(ai, qj). При этом сам автомат Áпереходит в состояние, представляющее состояние j(ai, qj).

 

Канонические уравнения для автомата Á можно записать в виде:

q1(t0) = 0;
  . . .  
qs(t0) = 0;
q1(t+1) = j1(x1(t), ... , xp(t), q1(t), . . . , qs(t));
  . . .  
qs(t+1) = js(x1(t), ... , xp(t), q1(t), . . . , qs(t));
y1(t) = y1(x1(t), ... , xp(t), q1(t), . . . , qs(t));
  . . .  
yd(t) = yd(x1(t), ... , xp(t), q1(t), . . . , qs(t)).

 

Здесь (x1(t), ... , xp(t)) обозначает набор символов, поступающих на входы Á в момент t, а (q1(t), . . . , qs(t)) - набор, задающий состояние автомата Á в тот же момент времени.

Функция ji, i = 1, . . . , s, определяет значение i-й компоненты состояния автомата Á, в которое он переходит из состояния (q1(t), . . . , qs(t)) под действием входного символа (x1(t), . . . , xs(t)).

 

Функция yj, j = 1, . . . , d, определяет значения символа на j-м выходе Á в момент t, для входного символа (x1(t), . . . , xs(t)) и текущего состояния (q1(t), . . . , qs(t)).

 

Поскольку функции ji, i = 1, . . . , s, и yj, j = 1, . . . , d являются булевскими функциями, то они могут быть реализованы схемами из функциональных элементов, которые изображены на рис. 7.17.

 

. . . . . . . .

 

y1 . . .yd j1 . . . js

 

 

Рис. 7.17

Рассмотрим автоматную схему, представляющую автомат Á, которая изображена на рис. 7.18:


x1 . . . x pq 1 . . . q s

 

. . . . . . . . . . . .

y1 . . .yd j1 . . . js . . .

 

 

Z . . Z

 

y1yd Рис. 7.18

Данная схема задает автомат, имеющий p входов и d выходов. В ней каждый из p входов, помеченных символами переменных, иs выходов элементов задержек является одним из входов схем из функциональных элементов, вычисляющих функции y1, . . . , yd, j1, . . . , js.

В начальный момент времени Á находится в состоянии, которое представляется набором из s нулей.

По определению функций ji и yj(i= 1, . . . , d, j = 1, . . . , s) построенная автоматная схема функционирует так же, как и автомат Â, c точностью до кодирования входных и выходных символов. То есть если на входе автомата Â появляется слово a, которое перерабатывается в выходное слово b, то автомат Áиз своего начального состояния перерабатывает слово, получаемое из aзаменой входящих в него символов их двоичными представлениями, в слово, получаемое из b аналогичной заменой сомволов алфавита B их двоичными представлениями.








Дата добавления: 2015-09-18; просмотров: 475;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.