- •1. Синтез микропрограммных автоматов (мпа) с жесткой логикой.
- •1.1. Синтез автомата Мили по гса.
- •1) Разметка состояний автомата по гса.
- •2) Прямая таблица переходов.
- •3) Кодирование состояний автомата.
- •4) Обратная структурная таблица.
- •5) Запись функций выходов и переходов автомата.
- •6) Построение схемы автомата Мили (рис.2).
- •Р ис. 2. Функциональная схема автомата Мили на жесткой логике.
- •1.2. Синтез автомата Мура по гса.
- •1) Разметка состояний.
- •2) Прямая таблица переходов.
- •3) Кодирование состояний.
- •4) Обратная структурная таблица.
- •5) Запись функции выходов и переходов автомата.
- •6) Построение функциональной схемы автомата Мура (рис.5).
- •2. Синтез мпа на программируемых логических матрицах (плм).
- •2.1. Синтез автомата Мили.
- •2.2. Синтез автомата Мура.
6) Построение схемы автомата Мили (рис.2).
В качестве элементов памяти использованы D-триггера T1 и T0. DC — дешифратор состояний автомата. Zi — промежуточные функции — термы из функций. Их введение позволило упростить схему автомата.
Р ис. 2. Функциональная схема автомата Мили на жесткой логике.
1.2. Синтез автомата Мура по гса.
1) Разметка состояний.
В автомате Мура каждой операторной вершине соответствует состояние автомата. Переход из состояния bm в состояние bs — это переход из одной операторной вершины в другую при выполнении логический условий X(bm,bs) на пути из bm в bs.
Т.к. начальное и конечное состояние автомата совпадают, на ГСА искусственно добавлена еще одна операторная вершина, соответствующая состоянию b0.
Узлы используются для упрощения формул переходов и ставятся на ГСА в точках, где несколько путей сходятся, а затем расходятся. Узлы не кодируются.
Рис. 3. Размеченная ГСА автомата Мура с узлами.
2) Прямая таблица переходов.
Прямая таблица переходов строится так же, как и для автомата Мили (см. п.1.1.) Отличительная особенность: в данном примере в ГСА введены узлы . В ГСА с узлами возможны переходы четырех видов:
am as, am , as, .
Все эти переходы описываются в прямой таблице переходов.
Таблица 3.
№ |
bm |
bs |
X(bm,bs) |
Y(bm,bs) |
1 |
b0 |
b0 |
|
y6 |
2 |
|
|
|
— |
3 |
b1 |
|
1 |
— |
4 |
b2 |
|
1 |
— |
5 |
b3 |
b0 |
|
y6 |
6 |
|
|
|
— |
7 |
b4 |
b0 |
|
y6 |
8 |
|
|
|
— |
9 |
|
b2 |
|
y1y2y3 |
10 |
|
b1 |
|
y1y4y5 |
11 |
|
|
|
— |
12 |
|
b3 |
|
y1y2y5 |
13 |
|
b4 |
|
y3y4y5 |
В столбце X(bm,bs) единица записывается тогда, когда bm в bs переход осуществляется всегда.
3) Кодирование состояний.
Производится так же, как и у автомата Мили (см. п.1.1). (Узлы не кодируются).
В данном примере — автомат с пятью состояниями, для кодирования которого необходимо не менее трех двоичных разрядов. Память состояний на RS триггерах. Коды состояний:
k(b0)=000
k(b1)=001
k(b2)=010
k(b3)=011
k(b4)=100
k(b5)=101
4) Обратная структурная таблица.
Строится так же, как и для автомата Мили. Вначале описываются переходы в узлы, затем остальные переходы автомата.
Таблица 4.
№ |
bm |
k(bm) |
bs |
k(bs) |
X(bm,bs) |
Y(bm,bs) |
F(bm,bs) |
1 |
b0 |
000 |
|
000 |
|
— |
— |
2 |
b1 |
001 |
|
|
1 |
— |
— |
3 |
b2 |
010 |
|
|
1 |
— |
— |
4 |
b3 |
011 |
|
|
|
— |
— |
5 |
b4 |
100 |
|
|
|
— |
— |
6 |
|
|
|
|
|
— |
— |
7 |
b0 |
000 |
b0 |
000 |
|
y6 |
— |
8 |
b3 |
011 |
|
|
|
y6 |
R1R0 |
9 |
b4 |
100 |
|
|
|
y6 |
R2 |
10 |
|
|
b1 |
001 |
|
y1y4y5 |
S0 |
11 |
|
|
b2 |
010 |
|
y1y2y3 |
S1R0 |
12 |
|
|
b3 |
011 |
|
y1y2y5 |
R2S1S0 |
13 |
|
|
b4 |
100 |
|
y3y4y5 |
S2R1R0 |
Если переход в некоторое состояние bs происходит из узла , то в автомате с памятью на RS триггерах значения Ri и Si в обратной структурной таблице записываются с учетом кодов состояний bm из которых был переход в узел .
На рис.4 показано, как определить значения Ri и Si для нашего примера. Например, переход в b1 возможен через узел из состояний b0 (k(b0)=000) и b1 (k(b1)=001). Из рис.3 видно, чтобы обеспечить оба перехода в b1, необходимо выработать сигнал S0, устанавливающий триггер T0 в состояние логической единицы.
Рис. 4. Схема определения значений Ri и Si.