Микропрограммное устройство управления
Иллюстрации
Показать всеРеферат
МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее регистр адреса, блок памяти, регистр микрокоманд, формирователь адреса, причем первый информационный вход регистра адреса соединен с входом кода операции устройства, выход регистра ащэеса соединен с адресным вход блока памяти, выход которого соейинен с входом регистра микрокоманд, выход поля адреса которого соединен с адресшлм входом формирователя адреса, вход логических ус- ; ловий устройства соединён с первьпу входом Логических условий формирователя адреса выход которого соединен с вторым информационным входом регистра адреса, отличающееся тем, что, с целью сокращения оборудования, оно дополнительно содеркит дешифратор, первый, второй, третий и четвертый элементы задержки, первый, второй, третий и четвертый бпок и элементов И, триггер, блок элементов ИЛИ, узел сдвига, сдновибратор. перш 1й и второй элементы И, причем выход поля Логических условий регистра микрокоманд соединен с первыми входами первого и второго блока элементов И и с входом дешифратора, ьыход логических условий которого соединен через лервый элемент задержки с вторым входом первого блока элементов И, ваыосод которогю соединен с вторым вход логических условий .формирователя 5 адреса, выход начала сборки деши4 тбра через второй элемент задержки соединен с единичным входом триггера, а выход ксшха сборки дешифратора соединен с нулевь1М ш:одом триггера, через одновифатор - с инверсным входом первого элемента И, а че . рез третий элемент задержки - с первыW ми входами третьего и четвертого блоков элементов И, выходы которых через блок элементов ИЛИ соеданены с выходом микроопераций устройства, единичный и нулевой выходы триггера соеди:Нены соответственно с вторым входом . второго блока элементов И и инверсньпл входом второго элемента И, выходы во1 fopax. соединены соответственно с инфоро мационным и управляющим входами ре00 гисгр савига, f ВЕЕЕХОД которого соединен с втор1ым входом третьего блока элемен« тов И, выход микроопераций регистра. МЕКрокаманд соединен с вторым входом четвертого блока элементов И, всыход тактовых импульсов устройства соединен с прямым входом первого элемента И, а через четвертый элемент задержки - с прямым входом второго элемента И.
СОЮЗ СОВЕТСКИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИН
ЗШ С Р /22
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
К АВТОРСКОМ .Ф СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И.ОТКРЫТИЙ (2 1) 3393401/18-24 (22) 09.02 82 (46) 30.05.83. Вюл. ¹ 20
° (72) Г. Н. Тимонькин, В. С. Харч««нко, .С. Н. Ткаченко и Ю. И. Матвиенко (53) 681. 325 (088.8) (56) 1. Авторское свидетельство СССР № 857995, кл. (j 06 F 8/22, 1981.
2. Справочник по цифровой вь}числительной технике. Под ред. Б. Н. Малиновского, К., Техника" 1979, с. 223 (прототип), (54) (57) МИКРОПРОГРАММНОЕ УСТ
РСЙСТВО УПРАВЛЕНИЯ, содержащее регистр адреса, блок памяти, регистр микрокоманд, формирователь адреса,. при чем первый информационный вход регист ра адреса соединен с входом кода операции устройства, выход perистра адресасоединен с адресным входом блока памяти,. выход которого соединен с входом peracT» ра микрокоманд, выход поля адреса которого соединен с адресным входом формирователя адреса, вход логических условий устройства соединен с первым входом логических условий формирователя адреса, выход которого соединен с вторым информационным входом регистра адреса, о тл ичаюшеесятем,что,сцелью сокращения оборудования, оно дополнитель» но содержит дешифратор, первый, второй, третий и чеп«ертый элементы задержки, первый, второй, третий и четвертый блоки. элементов И, триггер, блок элементов ИЛИ, узел сдвига, одновибратор, „„SU„„1020824 А
f первый и второй элементы И, причем выход поля логических условий регистра микрокоманд соединен с первыми входамк первого и второго блока элементов И и с входом дешифратора,выход логйческих
-условий которого соединен через первьй элемент задержки с вторим входом первого блока элементов И, выход которого соединен с вторым входом логических условий формирователя} адреса, выход начала сборки дешифратора через второй элемент задержки соединен с единичным входом триггера, а. выход конца сборки дешифратора соединен с нулевым входом триггера, через одновибратор - с инверсным входом первого элемента И, а че- g реэ третий элемент задержки - с первыми входамк третьего и четвертого бло-. ков элементов И, выходы которых через р блок элементов ИЛИ соединены с выходом микроопераций устройства, единич- « ный и нулевой выходы триггера соединены соответственно с вторым входом . второго блока элементов И и инверсным }© входом второго элемента И, выходы которых соединены соответственно с ийфор мационным и управлякпцим входами регистр сдвига,, вжход которого соединен с:вторым входом третьего блока элемен- к© тов И, выход микроопераций регистра. « микрокомацд соединен с .вторым входом четвертого блока элементов И, выход так товых импульсов устройства соединен с прямым входом первого элемента И, а через четвертый элемент задержки - с 3Ьв прямым входом второго элемента И.
1020824
Изобретение относится к вычислительной технике и может быть использовано при построении устройств управления микропрограммных электронных вычислительных машин и систем.
Известно микропрограммное упр авляю-. шее устройство, содержащее блок памяти микрокоманд, регистры адреса и микрокоманд и формирователь адреса (1)
Недостатком этого устройства являеь. ся большая избыточность блока памяти, которая обусловлена неэффективным испотъзованием свободных полей микроком анде
Наиболее близким по технической сущности к пуедлагаемому является устройст во, содержащее регистр адреса, блок памяти, регистр микрокоманд, формирователь адреса, причем первый информационный вход регистра адреса является входом .кода опершии устройства, выход регистра адреса соединен с информационным входом блока памяти, выход которого соединен с входом регистра микрокоманд, выход поля адреса которого соединен с адресным входом формирователя адреса; вход логи ческих условий устройства соединен с первым входом логических условий формирователя адреса, выход которого соединен с вторым информационным входом регистра адреса (2J
Недостатком. данного устройства является большой объем блока иамяти, так как записанные последовательно микрокоманды содержат в поле логических условий 3 полезную информацию только в точках ветвления .микропрограммы. Вследствие
% этого в блоке памяти остается значитель ное количество свободных ячеек, которые не используются в процессе реализации микропрограмм -, Доля используемого объема блока памяти оценивается формулой и
3= — (- — )
4 где, и, - разрядность поля логичес ких условий и микрокоманды в целом;
k Й - число микрокоманд ветвле ния и общее число микро 5 команд.
При tl q "4,,П = 32, О 13 6; Постоя ку 90-95% объема оборудования микропрограммного òðÎÀñò приходится HB блок памяти, то его избыточность существещю снижает экономичность устрой-
СТВО.
Цель изобретения - сокращение оборудования.
Поставленная цель достигается тем, что в микропрограммное устройство управления, содержащее регистр адреса, блок памяти, регистр микрокоманд, фор5 мирователь адреса, причем первый информационный вход регистра адреса соедииен с входом кода операции устройства, выход регистра адреса соединен с
10 адресным входом блока памяти, выход которого соединен с входом регистра микрокоманд, выход поля адреса которого соединен с адресным входом формирова теля адреса; вход логических условий устройства соединен с первым входом логических условий формирователя "адреса, выход которого соединен с вторым информационным входом регистра адреса, дополнительно введены дешифратор, пер0 вый, второй, третий и четвертый элементы задержки, первый, второй, третий и четвертый блоки элементов И, триггер, блок элементов HllH, узел сдвига, одновибратор, первый, второй элементы И, . причем выход поля логических условий регистра микрокоманд соединен с первыми входами первого и второго блоков элементов И и с входом дешифратора, выход логических условий которого сое-" динен через первый элемент задержки с
0 вторым входом первого блока элементов И, выход которого соединен с вторым входом логических условий,формирователя адреса, выход начала сборки дешифратора через второй элемент задержки соединен с единичным входом триггера, а выход конца сборки дешифратора соединен с нулевым входом триггера, через одновибратор — с инверсным входом первого элемента И, а через третий элемент, задержки - с первыми входами третьего и четвертого блоков элементов И, выходы которых через блок элементов
ИЛИ соединены с выходом микроопераций устройства, единичный и нулевой вы5 ходы триггера соединены соответственно .с вторым входом второго блока элемен тов И и инверсным входом второго эле- мента И, выходы которых соединены соответственно с информационным и.управО ляющим входами регистра, сдвига, выход которого соединен с вторым входом третьего блока элементов И(выход микр оопераций регистра микрокоманд соеди- . нен с вторым входом четвертого блока
5 элементов И, выход тактовых импульсов устройства соединен с прямым входоМ первого элемента И, а через четвертый элемент задержки - с прямым входом второго элемента И.
24 . .4
Устройство содержит (фиг. 1) регистр
1 адреса, блок 2 памяти, регистр 3 микрокоманд, содержащий поле 3,1 адреса, поле 3.2 микроопераций, поле 3.3 логических условий, формирователь 4 адреса, дешифратор 5, первый элемент 6 задержки, первый блок элементов И 7, второй элемент 8 задержки, триггер 9, второй бдок элемантов И 10, узел 11 сдвига, коммутатор 12, одновибратор 13, первый элемент. И 14, четвертый:эле-мент 15 задержки, второй элемент И 16, третий элемент 17 задержки, вход %8..: кода операции, вход 19 логических усло вий, выход 20 микроопераций, вход 21 тактовъ}х импульсов, Коммутатор содержит блоки элементов И 22 и 23 и блок элементов ИЛИ 24.
Формирователь 4 адреса (фиг. 2) содержит блок элементов И 25, блок эле» ментов 26 сумма по модулю два. Узел 11 сдвига (фиг. 3) содержит группу регистров 27 сдвига.
На фиг. 4 использованы следующие обозначения: }} — разрядность микроко манд, }} (й„) - число линеек в блоке памяти прототипа и предлагаемо6о устройства. Нумерация полей сожыдает с нумерацией полей на регистре 5..
В исходном состоянии в блоке 2 нам яти записаны микропрограммы, регистр 1 адреса, регистр 3 микрокоманд и узел 12 сдвига и триггер 9 находятся в нулевом состоянии.
Устройство работает следую}цим образом.
Начальный адрес (код операции) .поступает со входа 18 на регистр 1 адре-са. В соответствиис этим адресом из блока 2 памяти выбирается первая микрокоманда и по,тактовому импульсу, поступающему со входа 21 через открытый элемент И 14, считываетсч в регистр 3 микрокоман.
3 10208 свободное поле логических условий пре--. щ.дъ}дущих }} микрокоманд линейной последовательности.
При считъ вании одной иэ }}. микроко.манд информация иэ полей. логических условий цоступает в регистр сдвига.. 25
В i (О +1)-ом такте считывается не микрокоманде, записанная в . запоминающем.устройстве следом за . f1 (}} -1)-1)-й, а микрокоманда, собранная в регистре сдвига. В следующем такте считывания . gg считывается очередная микрокоманда, записанная в блоке памяти. Таким образом, при наличии в микропрограмме учась ков,- содержащий число .микрокоманд меж-ду микрокомандами ветвления достажч-, . . ное для записи целой микрокоманды в полях логических условий, существенно сокращается объем блока памяти.
Для идентификации наличия в полях логйческих условий частей микрокоманды используют коды начала и- конца сборки.
Зля э йих коды используются коды с больщим числом единйц, например при .} }„5 такими кодами могут быть
01111, .ioiil, 11011. логос ий не с одер ф) 45 болыиого числа единиц, поэтому можно однозначно, с вероятностью Р 1, выбрать такие коды начала и конца сборки, кото:: рые ие совпацут с кодами логических условий. 50
Косвенный адрес следующей микрокоманды поступает с -выхода поля 3.1 адреса регистра 3 микрокоманд в форми- рователь 4 адреса.
Код микроопераций - считывается с поля: .3.2 микроопераций регистра 3 микрокоманд и проходит через открытый блок элементов И 22 и блрк элементов
ИЛИ 24 на вход 20 устройства.
Если в поле логических условий этой микрокоманды записан код идентифика тор микрокоманды ветвления, то дешифра тор 5 въщает разрешающий сигнал на выходе логических условий, этот сигнал. Ha фиг. 1 представлена функциональ нам схема микропрограммного управляющего устройства; на фиг. 2 и 3 — функ ционалыпае схемы формирователя адреса 55 к узла сдвига соответственно; на фиг. 4» варианты упаковки блока памяти прототипа (а) и предлагаемого устройства (б).
Сущность изобретения состоит в умень« шепни объема блока памяти за счет использования свободнъ}х полей логических условий в последовательностях микрокоманд стандаржого формата для хранения частей микрокомаиды, т.е. сокращения оборудования.
Стандартный формат микрокомацды со стоит из трех полей:. ноля адреса, поля логических условий и поля микроопераций. 30 .. В поле логических условий информация записывается только тогда, когда в.микропрограмме происходит ветвление. В ос» тельных случаях аапе логических условий свободно. Это поле в предлагаемом уст-. р ойстве испоньзуется следующим обре å . Каждую микрокоманду разбивают на П частей и каждую часть записывают в
1020 (1) 00 о задерживается элементом задержки на один такт.
Поступивший в формирователь 4 адреса косвенный адрес следующей микрокоминды проходит на его выход не модифицируясь, и далее записывается в ре гистр 1 адреса, По этому новому адресу иэ блока 2 памяти вторым тактовым импульсом считывается в регистр 3 микрокоманд микрокоманда, у которой в поле логичес-. ких условий записан код проверяемых логических условий.
Этот код проходит через открытый к этому времени блок элементов И 7 на формирователь 4, в котором с помошью элементов И 25 производит маскирова ние значений логических условий. При этом на элементах 26 происходит модификация адреса и новый адрес с выхода формирователя 4 адреса поступает в регистр l адреса. Таким образом, в микропрограмме реализуется ветвление. Микрооперации, соответствующие второй микрс команде, аналогично описанному выше проходят на выход 20 устройства.
При наличии в поле логических условий q -й микрокоманды кода начала сборки он поступает йа дешифратор 5.
На выходе начала сборки дешифратора 5 появляется управляющий сигнал. Этот си гнал задерживается элементом 8 задержки на один такт. Блок элементов
И 7 при этом закрыт. Адресная часть дмшой микрокоманды с поля 3.1 адре- 35 са регистра 3 микрокоманд поступает на формирователь 4 адреса, а с его выхода без изменений подается на регистр 1 адреса. По новому адресу выбирается (д +1)-я микрокоманда, у 40 которой в поле логических условий запи.сана первая часть (i +И+1)-й микрокоманды. К этому времени задержанным на такт управляющим импульсом триггер 9 переключится в единичное состояние и откроет блок элементов И 10. Первая часть (i + ц+1)-й микрокоманды считывае ется с поля логических условий 3.3 по импульсу, задержанному элементом 15, записывается в узел 11 сдвига. Косвенный адрес поступает на формирователь 4 адреса. По новому адресу выбирается микрокоманда, у которой в поле логических условий записана вторая часть (1 +И+1)-й микрокоманды, Эта часть аналогично за д
824 4 писывается в узел 11 сдвига, а микрооперационная часть поступает через блоки 22 и 24 на выход 20. После записи в узел 11 сдвига последней части (3 +
+П +1)-й микрокоманды в поле логических условий очередной микрокоманды поя вится код конца сборки, который поступит на входы дешифратора 5.
На выходе конца сборки дешифратора5 появится управляющий сигнал по которому: установится в нулевое состояние триггер 9 и запретит подачу информации в узел 11; одновибратор 13 заблокирует на один такт элемент И 14) с задержкой на один такт откроется блок И 23 и закроется блок элементов И 22. При этом после выдачи на выход 20 операционной части (j + n)-й микрокоманд будет выдана операционная часть (i + п+1)-й микрокоманды, сформированная в узле 11 сдви» гав
Адрес следующей микрокоманды с выхода формирователя 4 адреса поступает на регистр 1 адреса. Г!о этому последнему адресу с задержкой на такт выбирает ся следующая (+ П+2)-я микрокоманда.
В зависимости от информации, записанной в поле логических условий этой микрокоманды, устройство либо осуществляет сборку очередной микрокоманды, либо . производит ветвления микропрограмм, либо реализацию последовательности микрокоманц.
Объем блока памятй прототипа определяется по формуле
Wq=-é и, Объем блока памяти предлагаемого устройства оценивается выражением
I а2 М n3
Г . Ои("-4k)
N = И-iq< и
И о - разрядность операционности части, Тогда „ ц1 п1
3аN
При Я Ы2 к2
l1p = 4 (6)
3 W =17,(25%)
Таким образом, использование свободных полей логических условий позволяет уменьшить объем памяти запоминающих устройств.
1020824
1020824
1020824
4F
8.2
Составитель Л. Логачева
Редактор С. Юско Техред E.Õàðèãîí÷êê Корректор А. Ильин
Заказ 3898/41 Тираж 706 Подписное
ВНИИПИ Государственного комитета СССР по делам изобретений и открытый
113035, Москва, Ж-35, Раушская наб., д. 4/5
Филиал ППП Патент", r. Ужгород, ул. Проектная, 4