Синхронизация управляющего и операционного автоматов
В общем случае выполнение одного такта микропрограммы в ОА включает:
· настройку многофункциональных комбинационных операционных элементов, участвующих в выполнении микрокоманды данного такта, с помощью управляющих сигналов из УА;
· регистрацию в элементах хранения по управляющим сигналам из УА результирующих кодов с выходов комбинационных элементов.
Схематически это показано на рис. 1.27.
. Поэтому чтобы КС успели сработать к моменту появления сигналовtКомбинационные схемы обладают задержкой распространения сигнала y, сигналы Y раньше, чем сигналыtдолжны формироваться по крайней мере на время y (рис. 1.28).
Выполнение этого требования должно обеспечиваться при проектировании УА, в частности, за счет правильного выбора синхронизации УА и ОА. Для решения этой проблемы обычно используют двухфазную синхронизацию.
При двухфазной синхронизации используются две серии синхросигналов C1 и C2 одной и той же частоты, но сдвинуты во времени приблизительно на полпериода (рис. 1.29).
Синхросигналы С1 служат для синхронизации переходов УА из состояния в состояние. Так в УА с жесткой логикой по синхросигналам C1 выполняется запись кода нового состояния в память автомата.
Синхросигналы серии С2 используются для стробирования выходных сигналов УА тех микрокоманд, которые управляют элементами хранения.
Рассмотрим детально процесс срабатывания элементов УА и ОА во времени. Для конкретности будем иметь в виду управляющий автомат Мили.
По сигналу Ct1 в течение времени 1 происходит переключение памяти УА в новое состояние, которое определяется сформированными к этому времени функциями переходов. Значения функций переходов в свою очередь могут зависеть от каких-либо ЛУ, поступающих из ОА.
срабатывают комбинационные схемы УА, вырабатывающие управляющие сигналы для ОА. Как было сказано, первыми должны формироваться управляющие сигналы tПосле переключения памяти УА с задержкой в Y tдля КС ОА. Обозначим через 2 время срабатывания КС ОА. Таким образом, при разработке синхронизации необходимо гарантировать задержку сигналов у записи результатов в элементы хранения относительно начала периода C1 на время не меньшее, чем
t = t 1t+2. Для этого соответствующие выходные сигналы УА стробируются синхросигналами C2 (рис. 1.30).
Рис. 1.30
tОбозначим через x задержку срабатывания элементов хранения относительно момента подачи сигналов y.
Очевидно, что минимальный период T следования синхроимпульсов C1 и Ct, t2 определяется задержками x, т.е.
Tmin>t +tx.
Рассчитав длительность периода T, можно оценить время выполнения микропрограммы
tмп=N T,
где N – количество тактов выполнения микропрограммы.
Для анализа могут представлять интерес граничные значения tмп. Минимальное время выполнения микропрограммы
tмп min = Nmin T.
Максимальное время выполнения микропрограммы
tмп max = Nmax T.
Иногда используют многофазную синхронизацию. Одна серия используется для синхронизации УА, остальные – для формирования сдвинутых во времени управляющих сигналов, с помощью которых в течение такта можно фактически выполнить последовательное преобразование информации с помощью нескольких операционных элементов.
Логические условия, которые используются для формирования функций переходов УА и выходных сигналов в очередном такте должны быть сформированы к моменту начала синхросигнала C1 и не должны меняться в течение всего периода T. В противном случае может произойти либо неправильный переход УА, либо сформируется неверный набор управляющих сигналов.
При проектировании микропрограмм нельзя допускать переходов УА из состояния в состояние через условные вершины, в которых используются ЛУ, формируемые на этих же переходах. Кроме того следует помнить, что ЛУ, анализируемые в текущем такте должны гарантированно сохранять свои значения до конца такта. В силу этого часто предпочитают регистрировать значения ЛУ на элементах хранения.