Синтез микропрограммного автомата Мили

 

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

Синтез микропрограммного автомата Мили по граф - схеме алгоритма осуществляется в два этапа:

- получение отмеченной ГСА;

- построение графа автомата.

На этапе получения отмеченной ГСА входы вершин, следующих за операторными, отмечаются символами a1, a2, ... по следующим правилам:

- символом a1 отмечаем вход вершины, следующей за начальной и вход конечной вершины;

- входы всех вершин, следующих за операторными, должны быть помечены;

- если вход вершины помечается, то только одним символом;

- входы различных вершин, за исключением конечной, помечаются различными символами.

Для расстановки отметок потребуется конечное число символов. Для определённости входы вершин помечаются символами a1 , ... , аM.

Результатом выполнения первого этапа является отмеченная ГСА, которая служит основой для выполнения второго этапа - переходу к графу автомата. Применение первого этапа к граф - схеме автомата на рис.70 даёт отмеченную ГСА, изображённую на рис.72.

Если идти от одной отметки am к другой отметке as в направлении ориентации дуг ГСА, выписывая содержимое лежащих на этом пути вершин, то каждому такому пути можно поставить в соответствие слово в алфавите:

{},

где

Таким образом, Для обозначения того, что выписанное слово соответствует пути по ГСА из am в as, это слово ограничивается слева и справа символами am и as соответственно.

Практический интерес представляют слова двух видов:

Соответствующие этим словам пути в граф - схеме называются путями перехода.

В пути вида (D) возможен случай R=0, то есть:

amYt as .

Таким образом, путь вида (D) - это путь в ГСА из одной отметки am в другую отметку as (допустимо am=as), содержащий точно одну операторную вершину. Путь вида (E) - это путь из некоторой отметки am в отметку a1 (недопустимо am=a1), проходящий точно через все условные вершины.

Каждому пути (или слову) типов (D) или (E) ставится в соответствие конъюнкция

Для краткости эти пути обозначаются

am X(am,as) Y(am,as) as и

am X(am,a1) a1,

где Y(am,as) = Yt.

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

Если между am и as имеется несколько параллельных путей (рис.73б)) вида am Xh(am,as) Y(am,as) as (h=1, ... , H), проходящих через одну и ту же операторную вершину, то указанному множеству путей соответствует дизъюнкция , а само множество путей обозначается, как и ранее, am X(am,as) Y(am,as) as и называется обобщённым путём перехода.

 

После получения отмеченной ГСА строится граф автомата Мили S, состояниями которого будут a1, ... , aM , причём a1 - начальное состояние. Переходы и выходные сигналы в этом автомате определяются следующим образом:

- находятся все пути перехода в отмеченной ГСА. Если при некотором r (r=1, ... , R) имеется несколько вхождений символа в путь перехода, то все символы , кроме одного, из этого пути удаляются. Если при некотором r (r=1, ... , R) в путь перехода входят как xr , так и , то такой путь перехода из дальнейшего рассмотрения исключается;

- каждому пути перехода по отмеченной ГСА микропрограммного автомата вида am X(am,as) Y(am,as) as (am,asÎ{a1 , ... , aM}) ставится в соответствие переход автомата S из состояния am в состояние as под действием входного сигнала X(am,as) с выдачей выходного сигнала Y(am,as );

- каждому пути перехода вида am Y(am,as) as (am,asÎ{a1 , ... , aM}) ставится в соответствие переход автомата S из состояния am в состояние as , где am и as определяются так же, как и раньше. Входной сигнал на этом переходе также равен конъюнкции содержимого условных вершин на этом пути. Так как множество условных вершин на этом пути пусто, а конъюнкция пустого множества переменных равна единице, то соответствующий входной сигнал считается равным 1, а выходной сигнал, как и ранее, Y(am,as );

- каждому пути перехода вида am X(am,a1) a1 ставится в соответствие переход из am в a1. При этом am и входной сигнал определяются как и раньше, а выходной сигнал полагается равным Y0 (пустой оператор).

В результате получается граф автомата Мили S, имеющий столько же состояний, сколько символов потребовалось для отметки входов вершин ГСА. Граф автомата Мили, соответствующий примеру на рис. 72, приведён на рис. 74.

Отличительная особенность микропрограммных автоматов, синтезированных описанным выше способом, состоит в том, что приписанные дугам графа входные сигналы являются элементарными конъюнкциями тех переменных, которые входят в соответствующие пути перехода, причём ранг (длина) этих конъюнкций существенно меньше числа L всех входных переменных.