Управляющие автоматы с постоянными запоминающими устройствами
Принцип микропрограммного управления и структурная схема МПА с ПЗУ впервые были предложены М. Уилксом. После этого как советскими, так и зарубежными учеными были разработаны несколько различных схем МПА, однако все они являются дальнейшим усовершенствованием МПА, структурная схема которого изображена на рисунке 5.10.

Рисунок 5.10 - Структурная схема микропрограммного автомата
Схема автомата состоит из регистра команд (РК), регистра адреса микрокоманд (РАМК), дешифратора (ДШ), блока проверки логических условий (БПЛУ), формирователя адреса микрокоманд (ФАМК) и формирователя микрокоманд (ФМК).
РК предназначен для записи кодов команд, поступающих на МПА из вне. Код команды, записанный в РК, определяет номер выполненной МПА микропрограммы. Код команды, поступающий в регистр команд, может изменяться только после выполнения соответствующей ему микропрограммы.
РАМК служит для запоминания адресов микрокоманд, входящих в выполняемую микропрограмму. При практической реализации МПА РК и РАМК могут быть объединены в один регистр, при этом часть регистра отводится для записи кодов команд, а остальные разряды регистра - для записи адресов микрокоманд. ДШ имеет две группы входов, на которые подаются сигналы с выходов РК и РАМК и осуществляет дешифрацию поступивших на него кодов, при этом в каждый момент времени на его выходах возбуждается только одна шина, номер которой соответствует поступившим на его входы кодам. На входы блока логических условий ПЛУ поступают значения логических условий Р = (Р1, Р2,..., Рn) и выходные сигналы ДШ. Выход ДШ - парофазный.
ФАМК возбуждает одну из шин ЗУ2, в результате чего производится считывание адреса очередной микрокоманды, входящей в выполняемую микропрограмму и подачи адреса микрокоманды в РАМК. ФМК возбуждает одну из шин ЗУ1 и на выходах МФА формируется совокупность микроопераций, составляющих микрокоманду. Работа МПА начинается после поступления кода очередной команды в РК.
При сравнении схем МПА с КА общего вида РАМК образует память МПА, а каждый триггер РАМК (разряд РАМК) является его элементом памяти.
Совокупность блоков ДШ, ПЛУ, ФА2, ЗУ2 образует блок управления памятью МПА, а формирование адреса очередной микрокоманды есть не что иное, как формирование сигналов управления памятью, переводящих МПА в новое состояние. Блоки ДШ, ФА1, ЗУ1 образуют выходной преобразователь МПА.
Основной особенностью МПА является то, что при неизменном состоянии входов, на которые поступают команды, МПА вырабатывает последовательность выходных сигналов (микрокоманд). Анализ структурной схемы МПА, изображенной на рис. 5.10, показывает, что его выходные сигналы целиком и полностью определяются состояниями памяти. Длительность выходных сигналов таких МПА определяется временем нахождения МПА в том или ином состоянии. При синтезе реальных устройств нередко приходится сталкиваться с необходимостью формирования как длинных, так и коротких микрокоманд. Этого можно достичь, если использовать ФМК, входными сигналами которых являются сигналы с выхода ДШ (например, для ФМК1) и сигналы с выхода ПЛУ (например для ФМК2).
Основные преимущества, которые обеспечивают применение МПА в качестве основных узлов УУ, состоят в следующем:
структура УУ с МПА в качестве ЦБУ отличается стройностью и четкостью построения;
МП устройство управления с МПА отличаются большой гибкостью, так как для изменения реализуемых ими микропрограмм достаточно заменить ЗУ1, ЗУ2;
стройность и четкость структуры МПА облегчает его диагностику, ускоряет обнаружение и локализацию неисправностей;
УУ с МПА отличаются простотой проектирования, отладки и эксплуатации. За счет возможностей реализуемых микропрограмм увеличивается срок их жизни.
Недостатки - низкое быстродействие.
Микропрограммные автоматы широко используются для построения устройств управления коммутационных систем и устройств обработки информации.
5.4. Построение структурной схемы микропрограммного автомата (МПА) на основе логической схемы алгоритма
МПА является основной частью центрального блока управления, в котором хранятся все реализуемые алгоритмы и вырабатываются определенные последовательности управляющих сигналов, необходимые для выполнения этих алгоритмов. МПА удобно реализовать в виде схемы Уилкса (рис. 5.11 ).
В состав МПА, построенного по этой схеме, в общем случае входят: регистр микрокоманд (РМК), матрица внешних микроопераций М1, матрица внутренних микроопераций М2 и матрица формирования кода следующей микрокоманды.
Регистры микрокоманд и микропрограмм предназначены для приема, хранения и выдачи кодов микрокоманд (1 ... e) и микропрограмм (R0...Rn-1). Иногда эти регистры совмещены в один регистр.
Структура дешифратора определяется количеством внешних и внутренних микроопераций. Матрица М1 представляет собой совокупность элементов ИЛИ, соединяющих выходы дешифратора с внешними выходами МПК в соответствии со структурой, реализуемой им ЛСА. Матрица М2 - комбинационная схема, соединяющая каждую из шин дешифратора с одним из входов матрицы формирования кода следующей микрокоманды. Она состоит из двухвходовых элементов И. Один из входов каждого из них соединен с одним из выходов дешифратора, а другой - с одним из внутренних входов МПА. Эта матрица обеспечивает выбор очередной микрокоманды. Матрица формирования кода следующей микрокоманды представляет собой шифратор. Выход этой матрицы соединен с регистром микрокоманды.

Рисунок 5.11 - Структурная схема микропрограммного автомата
Разработаны достаточно простые алгоритмы, позволяющие переходить непосредственно от ЛСА к схеме МПА без использования каких-либо дополнительных языков синтеза. Таким образом, язык ЛСА оказывается удобным для описания условий работы и построения схемы МПА.
Способы реализации ЛСА структурной схемой МПА отличаются тем, что выходы дешифратора сопоставляются либо с отдельными членами ЛСА, либо с группами членов ЛСА.
При этом будем говорить о структурной схеме МПА, а не о его функциональной схеме. При выбранном наборе логических элементов и элементов памяти от полученной структурной схемы можно перейти к функциональной, реализовав на выбранных элементах регистры, матрицы и дешифраторы.
В простейшем случае с каждым членом ЛСА сопоставляется свой выход дешифратора. В соответствии с получившимся при этом объемом дешифратора выбирается число разрядов РМК. При такой реализации в каждую микрокоманду входит только одна микрооперация (внешняя или внутренняя) и в течение каждого микротакта осуществляется включение только одного ОФБ и ЛФБ. Число внутренних состояний МПА полностью определяется числом членов ЛСА.
Объем матриц М1 и М2 зависит от числа операторов и логических условий в ЛСА. В частном случае, когда в ЛСА входят только операторы, матрица М2 отсутствует. В матрице М3 при этом каждый раз формируется номер следующей по порядку микрокоманды.
