Логический синтез управляющих устройств с кодированием состояний.
2.1.5.1. Понятие состязания элементов памяти.
Состязание элементов памяти возникает из-за неидентичности характеристик и может приводить к появлению переходных неустойчивых состояний, которые отличаются от требуемых устойчивых состояний.
-без состязания
или - с состязанием
Наличие неустойчивых комбинаций в блоке памяти, например 00, 11 может приводить к ложным срабатываниям выходных сигналов и исполнительных механизмов с непредсказуемыми последствиями для объекта управления. В связи с этим при синтезе управляющих устройств принимают меры по предотвращению состязания элементов памяти с помощью так называемого противогоночного кодирования.
Чтобы избежать состязания элементов памяти необходимо организовать их переключение так, чтобы при каждом переходе в новое состояние в блоке памяти изменял свое состояние только один тригер. Если кодировать состояние элементов памяти двоичным кодом, то такому способу кодирования соответствуют коды, изменяющиеся при каждом переходе только в одном разряде.
Для примера выполним противогоночное кодирование следующего графа перехода.
Если замкнутый граф содержит нечетное число состояний или переходов, то противогоночное кодирование с минимальным числом элементов памяти выполнить невозможно. В этих случаях используется следующее правило коррекции исходного графа переходов: если исходный граф переходов содержит замкнутые подграфы с нечетным числом переходов, то для противогоночного кодирования необходима коррекция с целью приведения к четному числу переходов. Для этого используется дополнительные состояния и безусловные переходы.
При выполнения противогоночного кодирования графа переходов часто удобно пользоваться следующей техникой. Требуемый граф переходов размещается на заранее заданной структуре, соответствующей определенному числу элементов памяти в блоке памяти. Эти структуры следующие:
1) Элементов памяти 2 (N=2). Обозначим их тригерами А и В. Тогда структура имеет вид:
2) Элементов памяти 3 (N=3). Обозначим их тригерами А, В и С. Тогда структура имеет вид:
3) элементов памяти 4 (N=4). Обозначим их тригерами А, В, С и D. Тогда структура имеет вид:
Замечание: если граф переходов содержит состояния, в которых количество переходов из одного состояния больше числа элементов в блоке памяти (разрядов кода), то для противогоночного кодирования может потребоваться либо расширение графа переходов, либо увеличение блоков памяти.