Рефераты. Абстрактные цифровые автоматы

Отображение Fai записывается следующим образом:


Fai{ap (Xm/yk),ai (Xf/yz) …}.


Для абстрактного автомата Мили (табл.1.7.) аналитическое задание имеет следующий вид:


S={ X,A,Y,F}, X={x1,x2}, A={a1, а2, а3}, Y={y1, y2, у3},

Fa1={a2 (x1/y2), a1 (x2/у3) },

Fа2={а3 (x1/y3), a1 (x2/y1) },

Fa3={a1 (x1/y3), а2 (x2/y2) }.


Следует отметить, что функция Fai всегда записывается для исходного состояния.

Определим синхронные и асинхронные автоматы. Состояние аs автомата S называется устойчивым cостоянием, если для любого входного сигнала хjХ, такого, что аs= δ (аi Хm) имеет место as= δ (as, xm).

Автомат S называется асинхронным, если каждое его состояние as А устойчиво. Автомат S называется синхронным, если он не является асинхронным.

Необходимо заметить, что построенные на практике автоматы всегда асинхронные и устойчивость их состояний всегда обеспечивается тем или иным способом, например, введением сигналов синхронизации. Однако, на уровне абстрактной теории автоматов, когда автомат всего лишь математическая модель, которая не отражает многих конкретных особенностей его реализации, часто оказывается более удобным оперировать с синхронными автоматами.


1.4 Связь между моделями Мили и Мура


Как уже отмечалось, абстрактный автомат работает как преобразователь слов входного алфавита в слова выходного алфавита.

Пусть абстрактный автомат Мили задан графом рис.1.5.

На вход этого автомата, установленного в начальное состояние, поступает входное слово X=x1, x1, x2, x1, x2, x2.


Рисунок 1.5 - Граф автомата Мили


Так как  (a1, x1) = а3, a  (a1, x1) = y1, то под действием первой буквы слова Х входного сигнала x1 автомат перейдет в состояние a3 и на выходе его появится сигнал y1. Далее,  (а3, x1) = a1, а  (а3, x1) = у2, потому при приходе второго сигнала x1 автомат окажется в состоянии a1, а на выходе его появится сигнал у2. Проследив непосредственно по графу или таблицам переходов и выходов дальнейшее поведение автомата, опишем его тремя строчками, первая из которых соответствует входному слову X, вторая - последовательности состояний, которые проходит автомат под действием букв слова X, третья - выходному слову У, которое появляется на выходе автомата:


x1 x1 x2 x1 x2 x2

a1 а3 a1 a1 а3 a2 а3

y1 y2 y1 y1 y1 y2


Назовем у = (а1, X) реакцией автомата Мили в состоянии a1 на входное слово X. Как видно из примера, в ответ на входное слово длины k автомат Мили выдает последовательность состояний длины к+1 и выходное слово длины k. В общем виде поведение автомата Мили, установленного в состояние аm, можно описать следующим образом:


Входное слово

xi1

xi2

xi3

Последовательность состояний

am

ai2= (am,xi1)

ai3= (ai2,xi2).

Выходное слово

yi1= (am,xi1)

yi2= (ai2,xi2)

yi3= (ai3,xi3)


Точно так же можно описать поведение автомата Мура, находящегося в состоянии am, при приходе входного слова xi1, xi2,., хik. Напомним, что в соответствии с (1-2) выходной сигнал в автомате Мура в момент времени t (У (t)) зависит лишь от состояния, в котором находится автомат в момент t (a (t)):


Входное слово

xi1

xi2

xi3


Последовательность состояний

am

ai2= (am,xi1)

ai3= (ai2,xi2)

ai4= (ai3,xi3)

Выходное слово

yi1= (am,xi1)

yi2= (ai2,xi2)

yi3= (ai3,xi3)

yi4= (ai4)


Очевидно, что выходной сигнал уi1=λ (am) в момент времени i1 не зависит от входного сигнала xi1, а определяется только состоянием аm.

Таким образом, этот сигнал yi1 никак не связан с входным словом, поступающим на вход автомата, начиная с момента i1. В связи с этим под реакцией автомата Мура, установленного в состояние am на входное слово X=xi1, хi2,., хik будем понимать выходное слово той же длины у= λ (am, Х) =уi2, уi3,., yik+1.

В качестве примера рассмотрим автомат Мура S5, граф которого изображен на рис.1-6, и найдем его реакцию в начальном состоянии на то же самое входное слово которое мы использовали при анализе поведения автомата Мили S1:


Входное слово

x1

x1

x2

x1

x2

х2


Последовательность состояний

a1

a4

a1

a1

a4

a3

a5

Выходное слово

y1

y1

y2

y1

y1

y1

y2


Рисунок 1-6 - Граф автомата Мура


Как видно из этого и предыдущего примеров, реакции автоматов S5 и S1 в начальном состоянии на входное слово Х с точностью до сдвига на 1 такт совпадают (реакция автомата Мура обведена линией). Дадим теперь строгое определение эквивалентности полностью определенных автоматов.

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

 

1.5 Эквивалентные автоматы. Эквивалентные преобразования автоматов


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

При описании алгоритмов взаимной трансформации автоматов Мили и Мура в соответствии с изложенным выше мы будем пренебрегать в автоматах Мура выходным сигналом, связанным с начальным состоянием ( (a1)).

Рассмотрим сначала преобразование автомата Мура в автомат Мили.

Пусть дан автомат Мура: SA={ ХA, АA, УA,A,A, аоA}, где:

ХA={х1, х2,. хn}; Y={y1, у2,. уm}; А={ а0, а1, а2,. аN}; а0A = а0 - начальное состояние (а0AА); A - функция переходов автомата, задающая отображение (ХAхАA) - >АA; A - функция выходов автомата, задающая отображение АA->УA.

Построим автомат Мили: SB={ ХB, АB, YB,B, B, а0B}, у которого АB=АA; ХB=ХA; YB=УA; B=A; а0B=а0A. Функцию выходов B определим следующим образом. Если в автомате Мура A (аm, х1) = аs и A (аs) =yg, то в автомате Мили B (am, х1) =yg


Рисунок 1.7 - Иллюстрация перехода от модели Мура к модели Мили


Переход от автомата Мура к автомату Мили при графическом способе задания иллюстрируется рис.1-7: выходной сигнал yg записанный рядом с вершиной (as), переносится на все дуги, входящие в эту вершину.

При табличном способе задания автомата таблица переходов автомата Мили совпадает с таблицей переходов исходного автомата Мура, а таблица выходов получается из таблицы переходов заменой символа as, стоящего на пересечении строки хf и столбца аm, символом выходного сигнала yg отмечающего столбец as в таблице переходов автомата SA.

Из самого способа построения автомата Мили SB очевидно, что он эквивалентен автомату Мура SA. По индукции нетрудно показать, что любое входное слово конечной длины, поданное на входы автоматов SA и SB, установленных в состояния am, вызовет появление одинаковых выходных слов и, следовательно, автоматы SA и SB эквивалентны.

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


SA={ ХA, АA,YA, A, A, a0A},


где:

ХA={x1, x2,. xn}; Y={y1, у2,. ym}; А={ a0,a1,a2,. aN}; a0A = a0 - начальное состояние (а0AА); A - функция переходов автомата, задающая отображение (ХAxАA) - >АA; A - функция выходов автомата, задающая отображение (ХAxАA) - >YA.

Построим автомат Мура: SB={XB, AB, YB, B, B, a0B}, у которого XB=XA; YB=YA.

Для определения AB каждому состоянию asАA поставим в соответствие множество As всевозможных пар вида (as, yg)

Функцию выходов B определим следующим образом. Каждому состоянию автомата Мура SB, представляющему собой пару вида (as,yg), поставим в соответствие выходной сигнал yg.

Если в автомате Мили SA был переход A (am, xf) = as и при этом выдавался выходной сигнал A (am,xf) =yg, то в SB будет переход из множества состояний Am, порождаемых am, в состояние (as,yg) под действием входного сигнала xf.

В качестве начального состояния a0B можно взять любое из состояний множества A0, которое порождается начальным состоянием a0 автомата SA. При этом выходной сигнал в момент времени t=0 не должен учитываться.

Страницы: 1, 2, 3, 4



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.