- •Раздел V. Основы теории конечных автоматов
- •1. Основные понятия теории
- •1.1. Автоматы Мили. Граф переходов. Однотактные и многотактные автоматы
- •1.2. Таблица состояний автомата
- •1.3. Реакция, эквивалентность и сокращение автоматов
- •1.4. Свойства классов k - эквивалентности автоматов. Построение сокращенных автоматов
- •1.5. Автоматы Мура
- •5) G : х q q - функция переходов.
- •2.1. Числовая форма задания автоматов. Двоичные автоматы
- •2. Анализ и синтез двоичных автоматов
- •2.2. Канонические уравнения и схема автомата
- •1. Канонические уравнения.
- •2.Схема автомата.
- •2.3. Оптимальные автоматы
- •2. По заданной канонической таблице состояний построить оптимальную функциональную схему автомата и граф пере-ходов.
2.3. Оптимальные автоматы
Для многотактных автоматов, также, как и для одно-тактных можно ввести понятие оптимальности.
Определение. Рассмотрим некоторый автомат (Х, Z, Q, F, G), в котором множества Q, Х, Z закодированы в двоичной системе.
Если функции выходов и переходов автомата F : Х Q Z, G : Х Q Q являются минимальными нормаль-ными формами алгебры логики, то автомат будем называть оптимальным в классе нормальных форм.
Если же функции выходов и переходов автомата F: Х Q Z, G : Х Q Q являются абсолютно оптимальные фор-
мулы, получаемые из минимальных нормальных форм после применения дистрибутивных законов, то автомат будем называть абсолютно оптимальным.
Смысл введенных определений в том, что соответст-вующие реальные автоматы будут иметь в своей физичес-кой структуре минимальное число элементарных функцио-нальных элементов, а также соединений между ними.
Построение оптимальных автоматов Мили и Мура производится теми же способами, что и у функциональных схем (однотактных автоматов).
Пример 1. Ввести двоичные коды для множеств Q, Х, Z автономного светофора, заданного в Примере 1 п.1.5, и построить для него:
1) таблицу состояний,
309
2) канонические уравнения и
3) схему оптимального автомата.
Решение. Вход у автомата отсутствует, выходной информа-цией устройства являются световые сигналы красного, зеленого и желтого цветов - К,З,Ж. Внутренних состояний четыре - qк , qз, qжк и qжз. Поэтому для двоичного коди-рования множеств Q, Х, Z автомата необходимы следующие числа разрядов:
n =]log 2 N[=]log 2 0[ = 0,
m=]log 2 M[=]log 2 3[= 2,
p=]log 2 P[=]log 2 4[= 2.
Введем двоичные коды.
1. Выход (z1,z2): К00,З01,Ж10.
2. Внутренние состояния (q1, q2,): qк00 , qз01, qжк10, qжз11. В итоге граф переходов принимает вид, пока-занный на Рис.5.15.
Рис.5.15
Таблицу состояний строим по графу переходов.
q1(ti-1) |
q2(ti-1) |
z1 |
z2 |
q1(ti) |
q2(ti) |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
310
Строим СДНФ для выходов и внутренних состояний:
z1 = q1(ti-1)q2(ti-1) q1(ti-1) q2(ti-1) ;
z2 =q1(ti-1) q2(ti-1) ;
q1(ti) =q1(ti-1)q2(ti-1) q1(ti-1) q2(ti-1) ;
q2(ti) = q1(ti-1) q2(ti-1) q1(ti-1)q2(ti-1) .
Минимизируя формы, получаем соответствующие МДНФ:
z
1
= q1(ti-1)
;
z2 =q1(ti-1) q2(ti-1) ;
q1(ti) =q1(ti-1) ;
q2(ti) =q1(ti-1) q2(ti-1) q1(ti-1)q2(ti-1) .
Поскольку полученные выражения нельзя минимизи-ровать путем применения дистрибутивных преобразований, то данные выражения будут одновременно оптимальными и в классе нормальных форм и абсолютно оптимальными. Следовательно, они задают канонические выражения соот-ветствующих автоматов.
Схему оптимального автомата дополнительно упро-щаем за счет объединения слагаемогоq1(ti-1)q2(ti-1), содер-жащегося в z2 и q2(ti) (Рис. 5.16).
Рис.5.16
311
Обычно функции выходов и переходов, получаемые после перевода множеств Q, Х, Z в двоичной системе, являются частично определенными. Поэтому оптимальное доопределение их необходимо искать по правилам для ЧОФ.
Пример 2.
Заданы канонические уравнения автомата Мили:
z
= x
q1(ti-1)q2(ti-1)
xq1(ti-1)q2(ti-1)
x
q1(ti-1)q2(ti-1);
q1(ti)= (x q1(ti-1) q2(ti-1)) & (x q1(ti-1) q2(ti-1) ) ;
q2(ti)=xq1(ti-1) q2(ti-1)xq1(ti-1) q2(ti-1)
x q1(ti-1) q2(ti-1) x q1(ti-1) q2(ti-1) ;
q1(t0) = 0 ;
q2(t0) = 0 .
Требуется:
оптимизировать канонические уравнения;
построить структурную схему оптимального автомата
построить таблицу состояний;
построить граф переходов.
Решение: 1. Упростим канонические уравнения, ис-пользуя операцию склеивания, удаление дубликатов и дистрибутивные законы:
z
= xq2(ti-1)
q1(ti-1)q2(ti-1)
= (x
q1(ti-1))q2(ti-1);
q1(ti) = x q1(ti-1) q2(ti-1) ;
q2(ti) = q2(ti-1);
q1(t0) = 0 ;
q2(t0) = 0 .
Как следует из упрощенных канонических уравнений, двоичное состояние q2 неизменно по времени и, следова-тельно, всегда равно начальному значению 0. Подставляя это значение в уравнения для z и q1(ti) , исключаем q2 из уравнений и получаем итоговый вид канонических урав-нений:
312
z = x q1(ti-1);
q1(ti) = x q1(ti-1) ;
q1(t0) = 0 .
2. Схема оптимального автомата, соответствующего полу-ченным оптимальным каноническим уравнениям, дана на Рис. 5.17.
Рис.5.17
3. Таблица состояний будет следующей:
-
x
q1(ti-1)
z
q1(ti)
0
0
0
0
0
1
1
1
1
0
1
1
1
1
1
1
4. Граф переходов оптимального автомата в двоичной форме имеет вид:
Рис.5.18
313
Задачи.
1. По заданному графу переходов построить канони-ческую таблицу состояний и оптимальную структур-ную схему автомата.
Рис.5.19
