Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PTCA.doc
Скачиваний:
268
Добавлен:
11.02.2016
Размер:
3.54 Mб
Скачать

Структурный синтез автомата мура

Выполним структурный синтез микропрограммного автомата Мура, заданного своей таблицей переходов-выходов (табл.29 или табл. 30). В качестве примера синтез будем выполнять по обратной таблице (табл. 32).

1. В исходном автомате количество состояний М=7, следовательно число элементов памяти

m = ] log 2 M [ = ] log 2 7 [ = 3

Пусть для синтеза используется D-триггеры.

2. Кодируем внутренние состояния автомата, используя алгоритм кодирования для D-триггеров. Количество переходов в данное состояние легко определяется из обратной таблицы: a1~ 2, a2~ 3, a3~ 2, a4~ 1, a5~ 1, a6~ 1, a7~ 2.

Поэтому коды состояний следующие:

a2-000, a1-001, a3-010, a7-100, a4-011, a5-101, a6-110.

3. Строим структурную таблицу переходов - выходов автомата Мура.

Табл. 32. Структурная таблица переходов - выходов автомата Мура.

am

K(am)

as(Y)

K(as)

X

ФВ

a6

110

a1(-)

001

x4

D3

a7

100

1

D3

a1

001

a2(y1y2)

000

x1

-

a2

000

x3x2

a6

110

x4

a1

001

a3(y3y4)

010

x1

D2

a4

011

1

D2

a3

010

a4(y1y4)

011

x2

D2D3

a2

000

a5(y2y3)

101

x3

D1D3

a2

000

a6(y4)

110

x3x2

D1D2

a3

010

a7(y2)

100

x2

D1

a5

101

1

D1

Построение таблицы выполняется аналогично автомату Мили.

4. Выражения для функций возбуждения получаются в виде суммы произведений aiх, где ai-исходное состояние, х - условие перехода.

D1 = a2x3 + a2x3x2 + a3x2 + a5

D2 = a1x1 + a4 + a3x2 + a2x3x2

D3 = a6x4 + a7 + a3x2 + a2x3

или

A = a3x2

B = a2x3x2

D1 = a2x3 + B + a3x2 + a5

D2 = a1x1 + a4 + A + B

D3 = a6x4 + a7 + A + a2x3

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

y1 = a2 + a4

y2 = a2 + a5 + a7

y3 = a3 + a5

y4 = a3 + a4 + a6

6. Для построения функциональной схемы автомата как и в предыдущем случае используем дешифратор состояний. Схема представлена на рис. 61 .

Замечания.

1. При синтезе микропрограммных автоматов изложенным методом получаемые выражения для функций возбуждения не всегда являются минимальными и в некоторых случаях могут быть упрощены. В частности, можно доопределить функции возбуждения на некоторых наборах единичным значением (а не нулевым, как было ранее) и выполнить все операции склеивания. Например, в синтезированном ранее автомате Мили таким образом можно получить значение k1=1. Рекомендуется в этом убедиться самостоятельно.

Для упрощения схем автоматов можно также предварительно упростить ГСА, уменьшив количество вершин или узлов методами, изложенными в / /.

Автомат Мили в течении такта сохраняет свое состояние и лишь в конце его переходит в новое. Пока автомат находится в данном состоянии Ai он вырабатывает выходные сигналы y=f(Ai,x), где х- сигналы, подаваемые на вход автомата в течение данного такта. В связи с этим автомат Мили может интерпретировать микропрограмму корректно только в том случае, если для любого перехода выполняется условие независимости логических условий от результатов выполнения микроопераций на данном переходе.

Условие независимости нарушается, если на некотором переходе из аmваsпод действием сигналахс выработкойуiнаблюдается функциональная зависимостьх=f(уi). В таком случае выполнение микрооперацииуiможет привести к изменению значенияхи автомат, находясь в состоянииаm, и, реагируя на набор входных сигналов, сформирует набор выходных сигналов, не соответствующий микропрограмме. Чтобы избежать этого, можно использовать следующие способы:

1)запомнить значение сигналовхна промежуток времени, равный длительности такта;

2)ввести в автомат дополнительные состояния;

3)реализовать автомат по схеме Мура.

Запоминание значений сигналов хв течение такта осуществляется операционным автоматом с помощью дополнительных элементов памяти – триггеров. Интерпретация микропрограммы автоматом Мура рассматривалась ранее. Введение дополнительных состояний иллюстрируется рис. 59 .

В исходном автомате (рис. 59.а) есть переходы из аiваjпод действием сигналовхихс выработкойy1иy2соответственно и имеет местох=f(y1,y2). Действительно, введение вспомогательных состоянийаkиаlпозволяет устранить возможную ошибку в выдаче выходных сигналов. На переходахаi аkилиаiаlвыходные сигналы не вырабатываются. Переходыаi аkилиаiаlявляются безусловными с выработкойy1илиy2соответственно. В таком случае изменение значениях,в результате выполнения микрооперацийy1илиy2,не повлияет на выходной сигнал, вырабатываемый автоматом, так как на переходахаi аkилиаiаlвыходной сигнал уже не зависит отх.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]