Пример структурного синтеза синхронного автомата
Выполнить синтез синхронного цифрового автомата заданный совмещенной таблицей переходов/выходов.
y | |||
a0 | a2 | a1 | |
a1 | a3 | a4 | |
a2 | a4 | a3 | |
a3 | a5 | a0 | |
a4 | a0 | a5 | |
a5 | a2 | a1 |
Шаг 1 - Для упрощения примера кодирование выполняется не эвристическим алгоритмом, а наиболее простым последовательным способом. В лабораторной работе необходимо выполнить кодирование состояний с помощью эвристического алгоритма.
Двоичный код | |
a0 | |
a1 | |
a2 | |
a3 | |
a4 | |
a5 |
Шаг 2 – Переписывается таблица переходов в закодированном виде, вместо букв состояний подставляются двоичные коды состояний. Данная таблица показывает как должны переключатся триггеры под влиянием входных сигналов автомата.
y | |||
Шаг 3 – Записывается подграф переходов для триггера (JK, RS, T, D), на котором будет построен автомат. В данном случае будем строить на Т-триггере.
T | |||
0 | |||
0 | |||
1 | |||
1 | |||
Шаг 4 – Из закодированной таблицы переходов, полученной на шаге 2 и подрафа переходов для триггера (шаг 3) составляется таблица истинности для входных сигналов триггера, т.е. таблица истинности для функции переходов
Q1 | Q2 | Q3 | X=0 | X=1 | ||||
T2 | T3 | T1 | T2 | T3 | ||||
Шаг 5 – По полученной на шаге 4 таблице строят карты Карно для всех входов триггеров. В данном случае три карты Карно для Т1, Т2, Т3
Q3X Q1Q2 | ||||
00 | 1 | |||
11 | - | - | - | - |
T1=(nQ2Q3X)U(Q1 nX)U(Q2 nX)
Q3X Q1Q2 | ||||
00 | 0 | 1 | ||
- | - | - | - | |
T2=(nQ1Q3)U(Q1 nX)U(Q2 nX)
Q3X Q1Q2 | ||||
0 | ||||
1 | ||||
- | - | - | - | |
T2=(Q3x)U(nQ1 X)U(Q1 Q3 nX)
Шаг 6 – По таблице выходов строится таблица для получения функции выходов автомата.
Q1 | Q2 | Q3 | y |
y= Q1 nQ2 Q3
Шаг 7 – по уравнениям, полученным на шаге 5 и 6, строится схема автомата, приведенная на рисунке.