Противогоночное кодирование состояний автоматов

При функционировании автомата могут появиться так называемые состязания. Явление состязаний возникает вследствие того, что элементы памяти имеют различные, хотя и достаточно близкие, времена срабатывания. Кроме того, различны также задержки сигналов возбуждения, поступающих по логическим цепям неодинаковой длины td 2> td 1 (рис. 5.16).

Рисунок 5.16 – Фрагмент схемы автомата

Если при переходе автомата из одного состояния в другое должны изменить свои состояния сразу несколько запоминающих элементов, то между ними начинаются состязания. Тот элемент, который выиграет эти состязания, т.е. изменит свое состояние раньше, чем другие элементы, может через цепь обратной связи изменить сигналы на входах некоторых триггеров до того, как другие триггеры изменят свои состояния. Критические состязания называют гонками.

Существуют несколько способов устранения гонок. Когда использовались асинхронные автоматы и синхронные автоматы со статической синхронизацией, был распространен метод противогоночного кодирования, заключающийся в том, что состояния кодировались по возможности соседними кодами, т.е. использовалось соседнее кодирование (чтобы переключался только один триггер), рис. 5.17а. Это не всегда возможно. Или развязывались пары кодов. Т.е. между двумя состояниями, закодированными не соседними кодами, добавлялось состояние с кодом, который был соседним по отношению к этим обоим кодам (рис. 5.17б).

Рисунок 5.17 – Развязывание пар кодов

Это тоже не всегда хорошо, поскольку может привести к появлению нежелательного числа дополнительных состояний.

Наилучшим выходом из такого рода проблемы является использование динамически управляемых триггеров. Но и при этом необходимо правильно рассчитать частоту (период) синхросигнала T. Период синхросигнала должен быть больше, чем задержка самой длинной цепи в схеме (сюда входят и задержки элементов, и задержки распространения сигналов по линиям связи), T>td 2 рис. 5.18.

Рисунок 5.18 – Выбор периода синхросигнала T

Современные САПР позволяют производить такие расчеты в автоматизированном режиме.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: