
ЛЕКЦИЯ 2.
Конечные автоматы.
Автомат – идеализированное устройство, работающее в идеализированном дискретном времени
t = 0,1,2,3,…..
в каждый момент этого времени на входах и выходах формируется некоторый алфавит, т.е. непустые множества.
Упорядоченная последовательность символов или букв образует слово в данном входном или выходном алфавите.
Различают автоматы абстрактные
Структурные.
Микропрограммные.
М-автоматы.
Абстрактные автоматы.
Абстрактный автомат – устройство с одним входом и одним выходом. Автомат описывается следующим множеством элементов:
X = x1,x2,… xk,
Z = z1,z2, … zl,
S = s1,s2,… sm,
f – функция переходов в следующий момент автоматного времени (t+1):
f(x,st) st+1
- функция выходов:
φ(x,s) Z,
a1 – начальное состояние автомата (t = 0).
Этот набор параметров называется кортеж.
Определяют два основных типа автоматов.
Автомат Мили (Mealy):
Функция выходов ставит в соответствие паре переменных определенное состояние выхода:
x,sz z = x,s, zi = i(xi,si).
Автомат Мура (Moore): функция переходов ставит выходной сигнал в соответствие состоянию автомата
fs z, zi = f(si).
Начальное состояние автомата а1, безусловно, принадлежит множеству А:
a1 A;
a1 = At=o.
Несколько определений.
Комбинационые автоматы – это подкласс абстрактных автоматов с одним внутренним состоянием S = 0, т.е. в этих схемах нет памяти. Автоматы с памятью называются последовательностными.
Автомат называется конечным и детерминированным, если конечны множества A, x, Z и переходы между ними однозначны, т.е. только в одно состояние под действием одного и того же входного сигнала (слова, алфавита).
Автомат называется инициальным, если выделено начальное состояние.
Автомат называется полностью определенным, если область определения функции совпадает с областью определения множества возможных пар вида S,Z.
Для автомата Мили область определения (о.о.) совпадает с о.о. S,Z.
Для автомата Мура о.о. f совпадает с о.о.S
Задать автомат – значит описать все элементы кортежа x,Z,S,f,,a1. Известны два способа: табличный и графический.
Рассмотрим примеры задания автоматов Мили и Мура.
Автомат Мили. Для задания необходимы 2 таблицы.
Таблица переходов f |
|
|
|
|
|
|
|
Таблица выходов Z |
||||||||||||||
|
S1 |
S2 |
S3 |
S4 |
|
|
|
|
|
|
|
S1 |
S2 |
S3 |
S4 |
|||||||
X1 |
S2 |
S2 |
S1 |
S1 |
|
|
|
|
|
X1 |
Z1 |
Z1 |
Z2 |
Z4 |
||||||||
X2 |
S4 |
S3 |
S4 |
S3 |
|
|
|
|
|
X2 |
Z5 |
Z3 |
Z4 |
Z5 |
В данном примере имеем следующие алфавиты:
S = S1,S2S3,S4,
X = X1,X2,
Z = Z1, Z2,Z3,Z4,Z5,
Si = f(Sk,Xi), Zi = (Si,Xi).
Можно воспользоваться для задания автомата совмещенной таблицей.
|
S1 |
S2 |
S3 |
S4 |
X1 |
S2/ Z1 |
S2/ Z1 |
S1/ Z2 |
S1/ Z4 |
X2 |
S4/ Z5 |
S3/ Z3 |
S4/ Z4 |
S3/ Z5 |
Этот
же автомат можно задать
ь
при помощи графа.
Граф автомата – ориентированная форма представления связей параметров кортежа.
Ворма
представления связей параметров кортежа.
Дуги – переходы.
Выходные сигналы записываются в конце дуги.
Входные сигналы – в начале дуги.
Автомат Мура. Табличный способ задания автомата Мура показан ниже.
|
Z3 |
Z2 |
Z3 |
Z1 |
S1 |
S2 |
S3 |
S4 |
|
X1 |
S1 |
S3 |
S1 |
S4 |
X2 |
S2 |
S4 |
S4 |
S1 |
S = S1,S2S3,S4,
X = X1,X2,
Z = Z1, Z2,Z3.
При представлении автомата в виде графа
Вершины – это состояния.
Дуги – переходы.
Выходные сигналы записываются рядом с вершиной.
Входные сигналы – в начале дуги.
X1 Z3
S1
X2
Z2 x1
S2 x1 S3 Z3
X2 S4 Z1
X1
Структурные автоматы.
Такой автомат имеет L входных {X1…XL} и N выходных полюсов {Z1…ZN}.
Каждому входному сигналу абстрактного автомата соответствует двоичный вектор, так же и выходному сигналу абстрактного автомата соответствует некоторый двоичный вектор. (Векторы могут быть и троичными, например
-01 ≡ 001 или 101, при этом старший разряд сигнала называется интервал второго ранга, ему соответствует 2 вектора. Если задают вектор как 0 - - то это интервал первого ранга, ему соответствует 4 вектора).
Структурный автомат (СА) учитывает структуру входных и выходных сигналов и внутреннее устройство автомата. Для проектирования структурных автоматов используют структурный синтез на базе структурной теории, основной принцип которой можно сформулировать следующим образом: построение логических схем автомата из элементарных автоматов, принадлежащих заранее заданному конечному числу типов.
1
1
{x} CA {Z}
L N
{x} {T}
комб. память
схема
{Z} {D}
Память автомата состоит из выбранных элементарных автоматов Мура. Триггеры – это структурные автоматы.
Структурный синтез осуществляется по таблицам состояний, переходов, записи логических функций, по ним построение логической схемы (или при помощи графов). (Пример – DC- триггер).
Микропрограммные автоматы. МПА. Широкий класс дискретных схем можно представить в виде композиции операционного (ОА) и управляющего (УА) автоматов.
X1
Z1
β1
УА
ОА βП
XL ZN µ1 µF
Задача УА – выработка распределенной во времени последовательности управляющих сигналов. Задача ОА – преобразование входных слов {µ1.. µF} (это могут быть слагаемые, множимые, просто значения переменных. Результаты преобразований подаются на выходы {β1.. βП}.
Микрооперация – элементарный неделимый акт обработки информации в ОА в течение одного такта.
Совокупность микроопераций, выполняемых одновременно за один такт автоматного времени, образует микрокоманду.
Последовательность выполнения микрокоманд определяется функциями переходов (булевыми).
Совокупность микрокоманд и функций перехода образует микропрограмму.
Описание микропрограмм дается граф-схемой алгоритмов (ГСА):
begin
end yt
xl
0
1
М-автомат – это МПА, у которого в любой строке описания пути входного алфавита X(am, as) таблицы переходов записано не более одной переменной из множества {X}.