288
Гл. 4. Теория формальных грамматик и автоматов
графа зацепления имеем следующие подмножества состояний, ка
ждое из которых состоит из незацепленных между собой состоя
ний:
Vi = {Ss,S22,S'}, Vn = {S„,SC}, Vhi = {s„}, Fiv = {57}-
Из каждого подмножества Vi (i = I, ..., IV) выбираем по одному элементу,
например, Sf, 5М, 57, 5^; из выбранных элементов образуем подмножество
V31 = {5«, SM, Sv, Sy}. Далее, снова из каждого подмножества К выбираем
по одному из оставшихся элементов и снова образуем из иих подмножество. Вы
борку осуществляем до тех пор, пока каждое из подмножеств V; не преобразуется
в пустое множество. Образованные в результате этой выборки подмножества и
являются подмножествами, состоящими из зацепленных состояний. В данном
случае они имеют следующий вид:
Vu = {£*, 3Й, Sv, Sy}, V32 = {З’гз, = {S,}.
Каждое подмножество, состоящее из зацепленных состояний,
заменяем одним состоянием, вес которого является совокупностью
микролучей, соответствующих объединяемым вершинам (в част
ном случае микролуч может состоять из одной микрокоманды).
Такую замену будем называть стягиванием зацепленных состоя
ний. В результате стягивания зацепленных состояний графа пе
реходов (рис. 4.17, а) получаем граф переходов G„ (рис. 4.18,5).
Стягивания зацепленных состояний также нарушают детермини
рованность автомата. Детерминированность синтезируемого авто
мата и его эквивалентность сохраняем, введя в обратную связь эле
мент памяти, в котором будет фиксироваться краска, соответствую
щая микролучу, выполняемому в данный момент (рис. 4.18,в).
Тогда совокупность кода вершины окончательного графа перехо
дов, краска и показания счетчика микрокоманд в микролуче вза
имно однозначно определяют выполняемую микрокоманду. В ре
зультате такого преобразования граф переходов можно предста
вить в виде частичного декартова произведения соответствующих
графов (рис. 4.18, в), что упрощает процесс кодирования внутрен
них состояний и практически уменьшает аппаратурные затраты
при синтезе схемы возбуждения обратных каналов автомата.
Если контуры в графе переходов, соответствующем реализуе
мым микропрограммам, отсутствуют, то целесообразно разложить
его только на два графа, исключив граф, показывающий смену
красок. При этом проводят свертывание двухинцидеитных под
графов в каждом графе переходов, соответствующем реализуемой
операции, с последующим склеиванием совместимых состояний.
Если граф переходов является деревом, то в обратной связи ав
томата оставляют только счетчик. При этом граф переходов реали
зуется счетчиком при условии запоминания или наличия значений
логических переменных, характеризующих вычисления. Началь
ному внутреннему состоянию автомата сопоставляется начальный
код на счетчике, например код 0. Внутренние состояния, в кото
рые автомат переходит из состояния 5,-, имеющего код
А, кодиру
ются как А + 1. Смена кодов происходит прибавлением единицы