Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
„. SUÄÄ 1352486 с5ц 4 G 06 F 9/22
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н A ВТОРСНОМУ СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21 ) 4083597/24-24 (22) 02.07 ° 86 (46) 15.11.87. Бюл, Р 42 (72) И.Б.Напиро, Л.A.ÍóìèäoB, А.И.Кряжев и Б.E.Áû÷êîâ (53) 681.3 (088,8) (56) Авторское свидетельство СССР
Р 955061, кл. G 06 F 9/22, 1981, Авторское свидетельство СССР
9 1185332, кл, G 06 F 9/22, 1984. (54) МИКРОПРОГРАИ1"1НОЕ УСТРОЙСТВО
УПРАВЛЕНИЯ (57) Изобретение относится к области вычислительной техники и может быть использовано в цифровых вычислительных системах, а также терминальной аппаратуре. Цель изобретения — повышение быстродействия устройства. Лик» ропрограммное устройство управления содержит реги стр 1 адреса, блок 2 памяти, регистр 3 микрокоманд, регистр 4 условий, блок 5 формирования адреса, блок 6 анализа условий, блок
7 управления. Возможны три случая выполнения микропрограммы, которым соответствуют три режима работы микропрограммного устройства управления.
Если в микропрограмме существуют пары следующих друг за другом микрокоманд, таких,что при выполнении каждой из этих микрокоманд изменяется значение некоторого признака,. -.о использование для реализации такой программы предложенного устройства позволяет сократить время ее выполнения. Укаэанная цель достигается с помощью вышеуказанной совокупности признаков. 7 ил.
13
Изобретение относится к вычислительной технике к может быть использовано в цифровых вычислительных сис темах, а также в терминальной аппаратуре.
Целью изобретения является повышение быстродействия устройства.
На фиг.1 изображена функциональная схема микропрограммного устройства управления; на фиг.2 — функциональная схема блока анализа условий; на фиг.3 — функциональная схема блока управления, на фиг.4 — временные диаграммы работы блока управления; на фиг.5 — функциональная схема блока формирования адреса; на фиг,6— фрагмент граф-схемы микропрограммы, реализуемой предлагаемым устройством; на фиг.7 — таблица содержимого ассоциативного запоминающего устройства, входящего в блок формирования адреса.
Устройство содержит регистр 1 адреса, блок 2 памяти микрокоманд, регистр 3 микрокоманд, регистр 4 условий, блок 5 формирования адреса, блок 6 анализа условий, блок 7 управления, группу 8 входов условий, синхровход 9, выход 10, первый 11, второй 12 и третий 13 выходы блока 7 управленйя, первую 14 и вторую 15 группу выходов регистра 1 адреса, группу 16 выходов поля анализируемых условий регистра 3 микрокоманд, группу 17 выходов регистра 4 условий и первый 18-1 и второй 18-2 выходы блока 6 анализа, Блок 6 фиг.2) анализа условий содержит группу элементов ИСКЛ10ЧАЮЦЕЕ ИЛИ 19, первую и вторую группы элементов И 20 и 21 и два элемента
ИЛИ 2? и 23.
Блок 7 управления (фиг.3) содержит первый элемент ИЛИ 24, первый
25, второй 26, третий 27, четвертый
28 и пятый 29 триггеры, второй элемент ИЛИ 30, первый 31 и второй 32 элементы И.
Блок 5 формирования адреса (фиг.5) содержит элемент НЕ 33, первую группу элементов И 34, вторую группу элементов И 35, группу элементов ИЛИ 36 и ассоциативную память (АП) 37. Ассоциативная память состоит из двух частей: ассоциативной и информационной.
Алгоритм работы АП следующий: поиск в ассоциативной части по содержимому поискового входа;
52486 2 при обнаружении совпадения со словом, записанным в ассоциативной части, соответствуюший индикатор слова устанавливается в состояние "0"; чтение слова, записанного в информационной части, индикатор которого установлен в состояние "0".
Работу микропрограммного устрой1р ства управления рассмотрим на примере выполнения фрагмента микропрограммы, граф-с: ма которой приведена на фиг.6. Каждую МК микропрогаммы будем идентифицировать адресом, по
15 которому она записана в блоке 2 памяти. Размещение фрагмента микропрограммы в АП 37 приведено на фиг.7.
Путь в первом такте работы уст2р ройства выполняется в МК А, (в регистре 3 микрокоманды находятся коды операции и маски МК, записанной .в блоке 2 памяти по адресу А „) счи тывается МК А (в регистре 1 адре3
25 са находится код адреса А ), а в
) У регистре 4 условий записан код условия 101, сформированный по значениям логических условий, поступивших на вход 8 устройства в предыдущем такте.
ЗО В этом случае при отсутствии "1" на выходе 13 блока 7 управления на выходе группы элементов ИЛИ 36 формируется код 001.
При этом в АП 37 вырабатывается сигнал совпадения .с содержанием ассоциативной части 8-й ячейки (фиг.7) и содержимое информационной части
8-й ячейки АП 37 поступает на выход блока 5 формирования адреса. Таким
40 образом, в первом такте в блоке 5 формирования адреса формируется код адреса и код маски МК А
Возможны три случая выполнения микропрограммы, которым соответствует три режима работы микропрограммнсго устройства управления.
Первый режим соответствует случаю, когда в течение такта работы устройства не происходит изменения значебо ний логических условий, влияющих на выбор пути выполнения микропрограммы из МК,, выполняемой в данном такте и NK считываемой в данном такте из блока 2 памяти.
Второй режим соответствует случаю, когда в течение текущего такта изменяются значения логических условий, 0 влияющих на выбор пути выполнения микропрограммы из МК, считываемой в
1352486
50 данном такте из блока 2 памяти, а значения ло ги че ских условий, влияющих на выбор пути выполнения микропрограммы из МК, которая выполняется в текущем такте (код операционной части которой присутствует на выходе
10 устройства) остаются неизменными, Третий режим соответствует случаю, когда в текущем такте работы происходит изменение значений логических условий, влияющих на выбор пути выполнения микропрограммы из МК, которая выполняется в текущем такте.
Реализация первого и третьего режимов микропрограммного устройства управления осуществляется так же, как в устройстве прототипе.
Дпя нашего примера условием работы устройства в первом режиме является неизменность значений логичес- 20 кихусловийХ„= 1, Х =О, Х = 1 в течение первого такта. При э том на выходе блока 6 анализа условий сохраняется код 00 и в следующем такте на выходах 11 и 12 блока 7 управления вырабатывается синхроим-,. пульс. Во втором такте на выход 10 устройства поступает операционная часть МК Лз, из блока 2 памяти микрокоманд считывается МК А6, а на выходе блока 5 формирования адреса форуется адрес Aто
Как и в прототипе в первом режиме работы устройства обеспечивается полное совмещение процессов выполне- 35 ния, считывания и формирования адреса МК, При этом на выполнение двух следующих друг за другом MK (А„, A ).затрачивается два такта, 40
При выполнении линейных участков микропрограммы устройство всегда работает в первом режиме, поскольку в этом случае логические условия не влияют на траекторию микропрограммы.
В нашем примере устройство переходит в третий режим работы, если в течение первого такта изменились значения Х, или Х . Пусть в первом такте меняется значение Х, . В этом случае значения логических условий в конце первого такта будут следующие: Х, = Qi X2 = Oi Хз = 1. При этих значениях логических условий после МК А, в микропрограмме следует
МК А . Поэтому в течение второго такта работы устройства в блоке 5 формирования адреса вырабатывается адрес А, а в течение третьего такта
МК А считывается из блока 2 памяти.
Это происходит следующим образом.
На выходе блока 6 анализа условий вырабатывается код 10 (фиг,2) ° Во втором и третьем тактах работы устройства на синхровход регистра 3 микрокоманд с выхода 12 блока 7 управления не поступают синхроимпульсы, во втором такте работы синхроимпульсы с выхода 11 блока 7 управления не поступают также на синхровход регистра 1 адреса, кроме того во втором такте работы устройства на выходе 13 блока. 7 управления формируется сигнал логической "1" (фиг ° 4). При этом во втором такте на вход блока 5 формирования адреса поступают: код адреса А ; код условия 001; сигнал
"1" с выхода 13 блока 7 управления.
В этом случае на выходе группы элементов ИЛИ 36 формируется код
00...0, а на выходе блока 5 формирования адреса — коды адреса и маски
МК А (.фиг.7). В третьем такте МК
Л считывается иа блока 2 памяти, в блоке 5 формирования адреса вырабатывается адрес А, (фиг. 7), а на выходе 10 устройства будет по-прежнему находиться код операционной части МК А,. В четвертом такте на выход 10 устройства поступит код операционной части МК А„, При этом из блока 2 памяти будет считываться
МК А,, а в блоке 5 формирования адреса вырабатывается адрес А, Таким образом, в третьем режиме работы на выполнение двух следующих друг за другом МК 1А, и А ) затрачивается четыре такта (два дополнительных такта ), Рассмотрим работу устройства при реализации второго режима, В нашем примере устройство переходит во второй режим работы, если в течение первого такта значения логических условий Х, и Х остаются неизмененными (Х„= 1, Х > = О), а значения Х меняются (Х = О).
В этом случае после МК А в микропрограмме должна выполняться МК
А . Поэтому во втором такте работы
5 устройства в блоке 5 формирования адреса должен быть сформирован адрес
А . Это происходит следующим образом.
На выходе 18 блока 6 анализа условий вырабатывается код 01 (фиг,2), При этом во втором такте с выхода
11 блока 7 управления на синхровход
52486
6 формирования, адреса — коды адреса и маски МК А (фиг,7), которые в четвертом такте TIo синхросигналу записываются в регистр 1 адреса. При этом в третьем и четвертом тактах иа выходах
10 устройства сохраняется код операции МК Аз, В четвертом такте на вход блока 5 формирования адреса поступа1р ет: код адреса А, код условия 101, сигнал логического "0" с выхода 13 блока 7. На выходе блока 5 формирования адреса будет вырабатываться адрес МК А„ (фиг 7 ). Таким обра15 зом, на выполнение следующих друг за другом МК А„ и А потребуется в этом случае четыре такта.
35
55
5 13 регистра 1 адреса не поступает синхроимпуш с,ôè ..4), На вход блока 5 формирования адреса поступают код адреса А, код условия 100, сигнал логического "О" с выхода 13 блока 7 управления, В этом случае на выходах элементов ИЛИ формируется код 000, . а на выходе блока 5 формирования адреса — коды адреса и маски МК А (фиг ° 7 ) . Синхроим ульс, поступающий в í-чале второго такта на синхроB ход ре ги стра 3 микрокоманд, о существляет запись следующей по микропрограмме МК.
Таким образом, в регистре 1 адреса во втором такте по-прежнему находится код адреса А, а в регистре 3 микрокоманд появляются коды операции и маски MK Л .
Дальнейшая работа микропрограммного устройства зависит от того, произойдет ли во втором такте изменение значения логического условия Хз под действием вырабатываемого в этом такте на выходе 10 устройства кода операции МК А
Если значения Х не меняются (X.; = О), то в устройстве сохраняется второй режим работы и в третьем акте работы на синхровход регистра
1 адреса поступает нхроимпульс, B то время как на синхровход регист::а 3 микрокоманц с выхода 12 блока 7 управления синхроимпульс не поступает, При этом в третьем такте работы на выходе 10 устройства вырабатывается код операциончой части МК А>, из блока 2 памяти будет считываться
МК А>, а в блоке 5 формирования адреса вырабатывается адрес МК Л и ж. алогично тому как это происходит в прототипе во втором режиме работы
; строй ств а н а выполнение двух сл еующих дру sa другом NK затрачивается три тахта.
Если под действием кода операции
i1K А значение признака Х> меняется (Х„= 1), устройство г;ереходит в третий режим работы, Однакс в этом случае на выходе 13 блока 7 управления в третьем такте вырабатывается сигнал логического "О" (фиг.4). При этом в третьем такте на вход блока 5 формирования адреса поступает: код адреса А, код условия 101,, сигнал логического "О с выхода 13 блока 7.
На,"выходах элементов ИШ1 36 формируется код 001, а на выходе блока 5 формул а изобретения
Микропрограммное устройство управления, содержащее блок памяти микрокоманд, регистр адреса, регистр микрокоманд, блок анализа условий, регистр условий, б ок формирования адреса, блок управления, который содержит первый, второй и третий триггеры, первый элемент ИЛИ, первый и второй элементы И, причем входы условий устройства соединены с информационными входами регистра условий и с первой группой информационных входов блока анализа условий, выходы регистра условий соединены с второй группой инфррмационных входов блока анализа условий и с первой группой информационных входов блока формирования адреса, выход которого соединен с информационным входом регистра адреса, первая группа выходов которого соединена с второй группой информационных входов блока формирования адреса и с адресным входом блока памяти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, выход поля микроопераций которого соединен с выходом микроопераций устройства, вторая группа выходов регистра адреса,соединена с первыми группами входов логических условий, блоков формирования адреса и анализа условий, выход полл кода условий регистра микроко-,".анд соединен с вторыми группами входов логических условий блоков формирования адреса и анализа условий, первый и второй выходы группы блока анализа условий, соединены соответственн 1 с первым и вторым входами
135248á (Pv2 3
Pvc 2 задания режима блока управления, вход синхронизации устройства соединен с входом синхронизации регистра условий и с входом синхронизации блока управления, первый, второй и третий выходы которого соединены соответственно с входами синхронизации регистра адреса, регистра мккрокоманд и с входом синхронизации блока формирования адреса, первый и вто- 10 рой входы задания режима блока управления соединены соответственно с первым и вторым входами первого эле— мента ИЛИ блока управления, выход которого соединен с входом установки 15 в "!" первого триггера, инверсный выход которого соединен с первым входом первого элемента И, выход которого соединен с первым выходом блока управления, вход синхронизации 20 которого соединен с входами синхронизации первого и второго триггеров, с вторым входом первого элемента И и с первым входом второго элемента И, инверсный выход второго триггера соединен с вторым входом второго элемента И, выход которого соединен с вторым выходом блока управления, второй вход задания режима которого соединен с входом установки в "!" 30 третьего триггера, выход которого соединен с третьим выходом блока управления, информационные входы первого и третьего триггеров блока управления соединены с шиной нулевого потенциала, о т л и ч а ю щ е е— с я тем, что, с целью повышения быстродействия устройства, блок управления содержит четвертый и пятый триггеры, второй элемент ИЛИ, причем первый вход задания режима блока управления соединен с входом установки в "!" пятого триггера, второй вход задания режима блока управления соединен с входами установки в "!" второго и четвертого триггеров, выход которого соединен с первым входом второго элемента ИЛИ, выход которого соединен с информационным вхо; дом второго триггера, вход синхронизации блока управления соединен с входом синхронизации пятого триггера, выход которого соединен с вторым входом второго элемента ИЛИ и с входом синхронизации третьего триггера, выход первого элемента И соединен с входами установки в "0" третьего и четвертого триггеров, информационный вход пятого триггера соединен с шиной нулевого потенциала.
1352486 !
I) ю!
В I Ф 1ю 1 фиУ4
1352486
1352486
Со ставитель А,Михайлов
Редактор Ю.Середа Текред М.Ходанич Корректор М.UàðoùH
Заказ 5566/48 Тираж 671 Подписное
ВНИИПИ Государственного комитета СССР и о дел ам из о бр етений и открытий
113035, Москва, Ж-35, Раушская наб., д. 4/5
Производственно-полиграфическое предприятие, г. Ужгород, ул. Проектная, 4