1. В исходном автомате количество состояний М=6, следовательно, число элементов памяти
m = ] log 2 M [ = ] log 2 6 [ = 3.
Пусть для синтеза используются JK триггеры.
2. Кодируем внутренние состояния автомата, используя для этого карту Карно (рис.57.) и по возможности метод соседнего кодирования. Рекомендуется самостоятельно закодировать состояние с помощью эвристического алгоритма.
3. Строим прямую структурную таблицу переходов-выходов автомата Мили (табл. 31). В данной таблице в столбцах k(am) и k(as) указывается код исходного состояния и состояния перехода соответственно. В столбце функций возбуждения ФВ указывается те значения функций возбуждения, которые на данном переходе обязательно равны 1. Остальные (т.е. равные 0 или принимающие неопределенные значения) не указываются. Это эквивалентно тому, что всем неопределенным значениям функций возбуждения приписывается значение 0, что в общем случае не дает минимальной функции, однако в реальных автоматах минимизация обычно не делается в виду ее неэффективности. Предлагается самостоятельно построить структурную таблицу переходов с указанием всех значений функций возбуждения (в том числе и неопределенных), выполнить минимизацию и сравнить результаты с приведенными ниже.
Табл. 31. Структурная таблица переходов-выходов автомата Мили.
Am | K(am) | as | K(as) | X | Y | ФВ |
a1 | 000 | a2 | 010 | x1 | y1y2 | J2 |
a4 | 001 | x1 | y3y4 | J3 | ||
a2 | 010 | a2 | 010 | x3x2 | y1y2 | - |
a5 | 110 | x3 | y2y3 | J1 | ||
a6 | 011 | x3x2 | y4 | J3 | ||
a3 | 101 | a4 | 001 | 1 | y3y4 | K1 |
a4 | 001 | a1 | 000 | x2 | y2 | K3 |
a3 | 101 | x2 | y1y4 | J1 | ||
a5 | 110 | a1 | 000 | 1 | y2 | K1K2 |
a6 | 011 | a1 | 000 | x4 | - | K2K3 |
a2 | 010 | x4 | y1y2 | K3 |
4. Для получения функций возбуждения поступаем следующим образом. Выражение для каждой функции получается в виде логической суммы произведений вида aiX, где ai- исходное состояние, X-условие перехода. Для упрощения полученных выражений выполняем все возможные операции склеивания и поглощения:
J1 = a2x3 + a4x2 K1 = a3 + a5
J2 = a1x1 K2 = a5 + a6x4
J3 = a1x1 + a2x3x2 K3 = a4x2 + a6x4 + a6x4 = a6 + a4x2
5. Для получения функций выходов поступаем аналогично:
y1 = a1x1 + a2x3x2 + a4x2 + a6x4
y2 = a1x1 + a2x3x2 + a2x3 + a4x2 + a5 + a6x4
y3 = a2x3 + a3 + a1x1
y4 = a1x1 + a2x3x2 + a3 + a4x2
6. Для построения функциональной схемы автомата по полученным выражениям необходимо либо заменить ai его значениями через Q1Q2Q3 либо получить сигнал, соответствующий ai. Обычно используют второй способ и для получения сигнала ai применяют так называемый дешифратор состояний, на вход которого поступают сигналы с выходов элементов памяти Q1Q2Q3. Кроме того, при построении схемы стараются выделить общие части, встречающиеся в функциях возбуждения или выходных сигналах. В этом случае окончательная система уравнений, по которым строится схема, будет иметь вид:
A = a2x3x2+J2 ; J1 = D + B ; y1 = A + B + E ;
B = a4x2 ; K1 = a3 + a5; y2 = A + D + C + a5 + E ;
C = a4x2 ; J2 = a1x1 ; y3 = D + F + a3 ;
D = a2x3 ; K2 = a5 + a6x4 ; y4 = a3 + B + J3;
E = a1x1 ; K3 = a6 + C ;
F = a1x1 J3 = F+a2x3x2
Функциональная схема автомата, построенная на основании полученных уравнений, представлена на рис. 58.
СТРУКТУРНЫЙ СИНТЕЗ АВТОМАТА МУРА
Выполним структурный синтез микропрограммного автомата Мура, заданного своей таблицей переходов-выходов (табл.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.
... (пе- редний фронт) сигнала, то используется элемент ИЛИ. (Первый перепад сигнала синхронизации в новом такте не должен быть рабочим.) _ОПТИМИЗАЦИЯ ОПЕРАЦИОННОГО АВТОМАТА При проектировании вычислительного устройства основными являются ограничения на: 1)- время вычисления; 2)- объем аппаратуры, реализующей вычисления; 3)- тип применяемых базовых функций. ОПТИМИЗАЦИЯ ...
... если Да то на E07(Л2), иначе на C04(Л2). E07(Л2) Выводим частное, т.е. Z:=Рг.В. F07(Л2) Конец. 1.6 Описание моделирующей программы (Приложение В) Программа операции деления без восстановления остатка со сдвигом остатка с фиксированной точкой в коде 8421, 8421+6 выполнена на языке программирования ассемблера. В моделирующей программе регистрами Рг.А, Рг.В, Рг.К, а так же ...
0 комментариев