
Синтез конечных автоматов
Реализация конечных автоматов сводится к синтезу соответствующей комбинационной схемы, преобразующей входные переменные x() и s() в выходные переменные y() и s(+1) в соответствии с заданными характеристическими s(+1)= (x(), s()) и y() = (x(), s()). Для сохранения состояний s(+1) до следующего такта в цепь обратной связи вводится необходимое количество элементов памяти.
При реализации автоматов в двоичном структурном алфавите можно использовать методы синтеза комбииационных схем. Но для этого необходимо закодировать состояния схемы и предоставить характеристические функции в виде булевых функций двоичных переменных. Такое кодирование можно осуществить преобразованием общей таблицы перехода автомата к таблице соответствия в двоичном структурном алфавите. Если элементы множеств X, Y и S пронумерованы порядковыми числами, начиная с нуля, то им соответствуют коды, представляющие собой двоичные эквиваленты этих чисел. Например, для автомата, заданного графом на рис. 2, таблицу переходов можно преобразовать к виду (табл. 5).
Таблица 5
x() |
0 |
0 |
0 |
0 |
|
1 |
1 |
1 |
1 |
|
2 |
2 |
2 |
2 |
|
3 |
3 |
3 |
3 |
s() |
0 |
1 |
2 |
3 |
|
0 |
1 |
2 |
3 |
|
0 |
1 |
2 |
3 |
|
0 |
1 |
2 |
3 |
s(+1) |
3 |
3 |
3 |
3 |
|
2 |
2 |
2 |
0 |
|
1 |
1 |
2 |
0 |
|
3 |
3 |
3 |
1 |
y() |
0 |
1 |
1 |
0 |
|
0 |
0 |
0 |
0 |
|
0 |
0 |
1 |
1 |
|
0 |
1 |
1 |
1 |
Заменяя десятичные числа их двоичными эквивалентами, читаемыми сверху вниз, получаем таблицу соответствия, в которой значения функций s(+1) и y() представлены двоичными кодами (табл. 6).
Таблица 6
-
x(){
00
00
00
00
01
01
01
01
10
10
10
10
11
11
11
11
s(){
00
01
10
11
00
01
10
11
00
01
10
11
00
01
10
11
s(+1) {
11
11
11
11
10
10
10
00
00
01
10
00
11
11
11
01
y(){y1()
0
1
1
0
0
0
0
0
0
0
1
1
0
1
1
1
Отсюда видно, что комбинационная схема должна иметь четыре входа, соответствующие входным переменным x1(), x2() и переменным состояния s1(), s2(), а также три выхода, соответствующие переменным состояния s1(+1), s2(+1) и выходной переменной y1(). Синтезировав комбинационную схему, соответствующую полученной таблице, и введя два элемента задержки З1 и З2, получим структурную схему автомата (рис. 5).
Рис. 5