Асинхронные потенциальные автоматы


У асинхронных потенциальных автоматов входные сигналы оказывают потенциальное воздействие на схему, т.е. смена сигнала на входе задает такты функционирования автомата, а сами сигналы воздействуют на него все время.
Различают автоматы с простыми и со сложными переходами.
Для синтеза асинхронных потенциальных автоматов, свободных от критических состязаний, т.е. когда автомат функционирует неправильно, необходимо выполнить ряд условий:
1. При переходных процессах не должны возникать автоколебательные процессы, это может произойти, когда используется автомат со сложными переходами, образующими цикл.
Например, рассмотрим схему:

Как видно из рисунка, автомат будет перебирать состояния: q1,q3,q6,q1,q3,q6,…
2. Комбинационные схемы должны синтезироваться свободными от критических состязаний, а если критические состязания и присутствуют, то они не должны оказывать воздействия на входы следующего автомата. Это означает, что время, в течении которого на выходе появляются ложные сигналы должно быть намного меньше, чем время реакции комбинационной схемы. На практике это можно организовать т.к. величина времени реакции схемы может быть вычислена.
3. Величина задержки сигнала ?? должна быть больше максимальной длительности переходных процессов.
Это требование вытекает из требования № 2. Оно используется при рассмотрении второй модели асинхронного потенциального автомата с элементами задержки в цепи обратной связи.
4. Частота изменения входного сигнала должна быть не больше некоторой частоты fmax , при которой в автомате еще успевают завершиться переходные процессы.

5. Должны отсутствовать критические состязания элементов задержки в цепи обратной связи, т.е. когда разные сигналы обратной связи принимают свои истинные значения в разные моменты времени.

Это условие применяется в том случае, если используется многоразрядное кодирование состояний автомата.
?i должны подбираться с точностью, большей чем время реакции схемы. Если же это невозможно обеспечить, то для кодирования знаков состояния необходимо использовать код Грея, когда при смене состояний изменяется только один сигнал.
Например:

Первое и последнее условия являются необходимыми, а при невыполнении остальных условий иногда автомат будет работать правильно.

Пример. Синтез RS триггера.
RS триггер имеет два состояния Q={q0,q1}.
Триггер переходит в состояние q1 если на входе знак a2;
Триггер переходит в состояние q0 если на входе знак a1;
Триггер не изменяет состояния, если на входе знак a0.
Кратко это можно записать:
a2 ? q1
a1 ? q0
a0 ? состояние не меняется.
Изобразим структурную схему RS триггера.

Нарисуем автоматный граф и доопределим состояния выхода.

Представим автомат в виде таблицы:
A\Q q0/0 q1/1
a0 q0 q1
a1 q0 q0
a2 q1 q1
Перейдем к дискретным функциям:
A Q Q+ B
a0 q0 q0 0
a0 q1 q1 1
a1 q0 q0 0
a1 q1 q0 0
a2 q0 q1 1
a2 q1 q1 1
Закодируем алфавиты:
A a0 a1 a2 B 0 1 Q q0 q1
SR 00 01 10 b 0 1 q 0 1
Представим поведение автомата в виде булевых функций:
A Q Q+ B
S R q q+ b
0 0 0 0 0
0 0 1 1 1
0 1 0 0 0
0 1 1 0 0
1 0 0 1 1
1 0 1 1 1
Представим функцию q+ в виде выражений в автоматном базисе:
(1)
Представим выражение в виде комбинационной схемы:

Преобразуем выражение для q+ :

Тогда комбинационная схема примет вид:

Замечание 1.
Из выражения (13) следует, что комбинационная схема является свободной от критических состязаний.
Замечание 2.
Вход R имеет больший приоритет по отношению ко входу S. По функции переходов триггера можно установить, какие значения входных сигналов изменяют состояние триггера.
A. Пусть состояние триггера изменяется с 1 на 0.
Q+:1?0, тогда dQ+=1;
По формуле (1) оператора переходов имеем:
(2)
Для того, чтобы найти воспользуемся системой (12):
, из него вытекает, что ;
Подставив в формулу (14) получаем:
;
Ранее было показано, выражение (13), что , тогда

Т.о. триггер переходит из состояния 1 в состояние 0 только при сигнале R=1 и состоянии Q=1.
B. Пусть состояние триггера меняется с 0 на 1.
Q+:0?1, тогда ;
Можно показать, что в этом случае , тогда

Т.о. триггер переходит из состояния 0 в состояние 1 только при состоянии Q=0, сигналах R=0 и S=1.
Вывод: сигнал R более приоритетен, чем сигнал S.
Замечание 3.
Так как функция переходов триггера, заданная в виде таблицы является не полностью определенной и содержит равное число 0 и 1, то в виде формулы она может быть представлена и с использованием СКНФ, тогда получим:

В этом случае можно показать, что приоритетным является вход S.
Тогда комбинационная схема примет вид:

Тема 5.4. Импульсные автоматы
Импульсными автоматами называются такие автоматы, на которые входные сигналы воздействуют импульсно, т.е. кратковременно, в моменты их изменения.
Рассмотрим пример счетного триггера:
A={a0,a1};

Этот автомат имеет два типа переходов:
1-й тип: a0?a1
2-й тип: a1?a0
Примем эти переходы за знаки автомата.
Задав выходной алфавит B={b1,b2,b3,b4}, автомат будет сообщать путь, по которому он попал в текущее состояние.
Воспользуемся формулой (1), оператора переходов:
В случае более двух знаков определим оператор переходов так:
Пусть есть алфавит A={a1,a2,…,am}. Оператор переходов должен сопоставлять каждой паре различных знаков новый знак из алфавита, содержащего m(m-1) знак.
Представим такой оператор переходов в виде таблицы.

Где a– — значение входного сигнала до изменения, а a+ — значение входного сигнала после изменения,
Зададим автоматную таблицу счетного триггера:
A 1 2
a– a+
a0 a1 2/b2 1/b3
a1 a0 1/b1 2/b4
Закодируем алфавиты:
A a0 a1
1 0
С учетом введенного кодирования можно записать:

Причем оператор переходов =1, если переход произошел и =0, если не произошел.
Q 1 2 B b1 b2 b3 b4
0 1 00 01 10 11
Представим поведение автомата в виде булевых функций:
da Q Q+ B
1 0 1 0 1
1 1 0 1 0
0 0 0 0 0
0 1 1 1 1
Представим функцию Q+ в виде выражений в автоматном базисе:

Тогда импульсная схема примет вид:

Теорема 5.2. О реализации импульсных автоматов
Произвольный импульсный автомат может быть реализован в виде асинхронного потенциального автомата. Верно и обратное.
Доказательство осуществим на примере.
Пусть задан импульсный автомат K=<dA,B,Q,?,?>.
Для построения асинхронного потенциального автомата, неотличимого от заданного преобразуем его в эквивалентный ему автомат Мура KM=<dA,B,QM,?M,?>.
Пусть задан импульсный автомат Мура.

Где aij это изменение входного знака ai?aj.
Тогда, каждое состояние qi?QM расщепляется на m(m-1) состояний следующим образом:

ч.т.д.
Пример:
Рассмотрим импульсный автоматный граф:

Преобразуем данный автомат в асинхронный автоматный граф.
Как видно из рисунка, каждое состояние (1 и 2) расщепляется на два состояния (10, 11 и 20,21). Причем, состояния 10 и 11 имеют один и тот же выходной знак 0, а состояния 20 и 21 – знак 1.
Из состояния 1 в состояние 2 имеется дуга a0?a1, следовательно, из состояния 10 имеется дуга в состояние 21, помеченная знаком a1. И к состоянию 21 добавляем петлю, помеченную знаком a1 .
Аналогично строятся остальные дуги.

Загрузка...