Микропрограммное устройство управления

Номер патента: 1084793

Автор: Дворецкий

ZIP архив

Текст

СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСНИХРЕСПУБЛИН 9 2 ГОСУД АРС .ПО ДЕЛАМ ЕННЫЙ НОМИТЕТ СССРЗОБРЕТЕНИЙ И ОТНРЬГГИИ ИСАНИЕ ИЗОБРЕТЕНИ ВТОРСКОМ СВИДЕП:ЛЬСТ 19429/18-248. 12.82(5 Л)(57) 1. МИКРОПРОГРАММНОЕ УСТРОЙ. СТВО УПРАВЛЕНИЯ, содержащее блок памяти микрокоманд, выходы старших .разрядов адреса которого соединены со старшими разрядами первого информационного входа регистра адреса микрокоманд, выход которого сойди-. нен с адресным входом блока паюэти микрокомаид, дешифратор переключения микрооперации, первый мультиплексор и элемент И, о т л и ч а ющ е е с я тем, что, с целью повы,шения его быстродействия и расширения функциональных воэможностей за счет переключения микроопераций в зависимости от условий ветвления, введены регистр модификации микрокоманды, блок условных переходов, второй и третий мультиплексоры, группу дешифраторов микроопераций,Ф элемент задержки и дешифратор модиФикации микрокоманды, причем выходы старших разрядов адреса блока памяти микрокоманд соединены с первым информационным входом первого мультиплексора, выход которого соединен с информационным входом регистра модификации микрокоманды,выход которого соединен с первым информационным входом второго мультиплексора, второй информационный вход которого соединен со вторым информационным входом первого мультиплексора, первым информационным входом третьего мультиплексора и выходом блока условных переходов, выходы младших разрядов адреса блока памяти микрокеманд соединены с вторым информационным входом третьего мультиплексора, выход которого соединен с младшими разрядами первого информационного входа регистра адреса микрокоманд, выход второго мультиплексора соединен с входомс дешифратора переключения микроопераций, выход микроопераций блока памяти микрокоманд соединен с информационными входами дешифраторов микроопераций группы, выходы которых являются выходами устройства, входы блокировки дешифраторов микроопераций группы соединены с соответствующи. ми выходами дешифратора переключения микроопераций, выход поля ветвлений блока памяти микрокоманд соединен с первым входом блока условных переходов, второй вход которого является входом условий ветвления устройства, два разряда выхода поля ветвления блока памяти микрокоманд соединены с входом дешифратора модификации Фякрокоманд, первый, второй и третий выходы которого соединены с управляющими входами первого, второго и третьего мультиплексоров соответственно, выход бита модификации микрокоманд блока памяти микрокоманд через элемент задержки соединен с первым входом элемента И, второй вход которого1084793 соединен с тактовыми входом устройст- ва и с входом синхронизации регистра адреса микрокоманд, а выход - с входом синхронизации регистра модификации микрокоманд, вход кода операции устройства соединен со вторым информационным входом регистра адреса микрокоманд.2, Устройство по п.1, о т л ич а ю щ е е с я тем, что блок условных переходов содержит группу мультиплексоров ветвления и группу 1Изобретение относится к вычислительной технике, в частности к проектированию процессоров с микропрограммным управлением.Известно микропрограммное устройство управления, содержащее память микрокоманд, иа вход которойчерез дешифратор подключен регистрадреса мнкрокоманды, регистр микрокоманд, элементы задержки, дешифраторы микроопераций и узел условныхпереходов И ,Недостатком этого микропрограммного устройства является отсутствие возможности многофункционального использования одних и тех жеполей микрокомандного слова.Наиболее близким к изобретениюпо технической сущности являетсямикропрограммное устройство управопения, содержащее блок памятимикрокоманд, вход которого соединенс выходом адресного регистра, регистрпризнака результата, блок операций,первый дешифратор и блок регистров,причем первый и второй выходы блока памяти микрокоманд соединеныс одноименными входами блока операций, первый выход которого соединен с входом блока регистров, первыйвыход которого соединен с третьимвходом блока операций и с первым вхо"дом адресного регистра, второй входкоторого соединен с третьим выходом.блока памяти микрокоманд, четвертыйвход блока операций соединен с выхо-.дом регистра признака результата,первый вход которого соединен с выходом первого дешифратора. Кроме элементов.И, первые входы которыхсоединены с выходами соответствующихмультиплексоров ветвления, вторыевходы соединены соответственно спервым входом блока условных переходов и с управляющими входами мультиплексоров ветвления, информационныевходы которых соединены соответственно с вторым входом блока, а выходы элементов И соединены с соответствующими выходами блока условныхпереходов,1того, устройство содержит второйдешифратор, элемент И, элемент ИЛИ и коммутатор, причем вход второгодешифратора соединен с четвертымвыходом блока памяти микрокоманд,первый выход второго дешифраторасоединен с управляющим входом коммутатора и с первым входом эле,.мента ИЛИ, второй вход которого О соединен с вторым вьиодом второгодешифратора, а выход - с первымвходом элемента И, второй входкоторого соединен с вторым выходомблока операций, а выход - с третьим 15 входом регистра признака результата, первый вход коммутатора соединен с выходом блока регистров,второй вход коммутатора соединен счастью разрядов второго выхода 1 О блока памяти микрокоманд, другаячасть разрядов которого соединенас входом первого дешифратора, выход коммутатора соединен с вторымвходом регистра признака результа та, а третий выход второго дешифратора соединен с пятым входомблока операций.В этом устройстве с целью использования некоторого поля поразличным назначениям вводится дополнительное поле, код в которомпоказывает на ту функцию; котораяотводится основному микрооперацион-ному полю в данной микрокоманде35В этом случае число функций использования некоторого микрооперационного поля составит 2 где ф4793 10 3 108Недостатком известного устройства является низкое быстродействие при получении окончательной микрооперации. Действительно, время получения микрооперации 10 на выходе устройства относительно появления адреса микрокоманды на адресном коде блока памяти микрокоманд в этой устройстве составляет)1где с ,в - время выборки информации из блока памятимикрокоманд;152 С- вРемя дешифрации дополнительного поля;лс 1 р - время стробирования дешифратора микрооперацииосновного микрооперационного поляКроме того, недостатком являются недостаточно широкие функциональные возможности. Это объясняется тем, что в нем отсутствует возмож 25 ность в зависимости от условий ветвления осуществлять условное подключение того или иного дешифратора элементарных микроопераций к многофункциональному микрооперационному полю. Причем наличие дополнительного поля, указывающего на назначение некоторого микрооперационного поля, также как и в известном 1, приводит к неэффективному использованию разрядов микрокомандного слова, 35Цель изобретения - повышение быстродействия устройства микропрограммного управления и расширение его функциональных возможностей засчет переключения микроопераций в 4 О зависимости от условий ветвления.Поставленная цель достигается тем, что в микропрограммное устройство управления, содержащее блок памяти микрокоманд, выходы старших 45 разрядов адреса которого соединены со старшими разрядами первого информационного входа регистра адреса микрокоманд, выход которого соединен с адресным входом блока па мяти микрокоманд, дешифратор переключения микроопераций, первый муль типлексор и элемент И, введены. регистр модификации микрокоманды, блок условных переходов, второй и 55 третий мультиплексоры, группу дешифраторов микроопераций, элемент . задержки и дешифратор модификации микрокоманды, причем выходы старших разрядов адреса блока памятимикрокоманд соединены с первым информационным входом первого мультиплексора, выход которого соединен с информационным входом регистра модификации микрокоманды, выходкоторого соединен с первым информационным входом второго мультиплексора, второй информационныйвход которого соединен со вторыминформационным входом первого муль.типлексора,выходом блока условныхпереходов, выходы младших разрядовадреса блока памяти микрокомандсоединены с вторым информационнымвходом третьего мультиплексора,выход которого соединен с младшимиразрядами первого информационного входа регистра адреса микрокоманд,выход второго мультиплексора соединен с входом дешифратора переключения микроопераций, выход микроопераций блока памяти микрокомандсоединен с информационными входамидешифраторов элементарных микроопераций группы, выходы которыхявляются выходами устройства, входыблокировки дешифраторов элементарных микроопераций группы соединеныс соответствующими выходами дешифратора переключения микроопераций,выход поля ветвлений блока памятимикрокоманд соединен с первым входом блока условных переходов, второй вход которого является входомусловий ветвления устройства, дваразряда выхода поля ветвления блока памяти микрокоманд соединены с входом дешифратора модификации микрокоманд, первый, второй и третий выходы которого соединены с управляющими входами первого, второго и третьего мультиплексоров соответственно, выход бита модификации микрокоманд блока памяти микрокомандчерез элемент задержки соединен с первым входом элемента И, второйвход которого соединен с тактовым входом устройства и с входом синхронизации регистра адреса микрокоманд,а выход - с входом синхронизациирегистра модификации микрокоманд,вход кода операции устройства соединен со вторым информационным входомрегистра адреса микрокоманд. При этом блок условных переходовсодержит группу Мультиплексоровветвления и группу элементов И,первые входы которых соединены с выходами соответствующих мультиплексоров ветвления, вторые входы соединены соответственно с первым входом блока условных переходов с управляющими входами мультиплексоров ветвления, информационные входы которых соединены соответственно с вторым входом блока, а выходы эле,/ агентов И соединены с соответствуюими выходами блока условных переодов.На чертеже приведена функциональная схема микропрограммного устройства управления.Устройство содержит блок 1 памяти микрокоманд с выходом 2 адреса, выходом 3 микроопераций, выходом 4 поля ветвлений, выход 5 бита модификации микрокоманд, регистр 6 адреса микрокоманд, мультиплексоры 7-9, блок 10 условных переходов, регистр 11 модификации микрокоманды, дешифратор 12 переключения микроопераций, группу дешифраторов 13 микроопераций, выход 14 устройства, элемент И 15, элемент 16 задержки, тактовый вход 17 устройства, дешифратор 18 модификации микрокоманд, вход 19 условий ветвления устройства, вход 20 кода операций устройства, группу мультиплексоров 21 ветвления и группу элементов И 22.Микропрограммное устройство управления работает следующим образом.На тактовый вход 17 устройств поступают тактовые импульсы с периодом, равным циклу работы микропрограммного устройства управления. В последней микрокоманде любой микропрограммы в двух разрядах поля ветвления, поступающих на вход дешифратора 18 модификации микро- команды, записывается нулевой код, по которому на выходах дешифратора 18 отсутствуют управляющие сигналы, и мультиплексоры 7-9 настроенына передачу информации с блока 1Вход в микропрограмму осущестВляется по коду (адресу), который поступает на вход регистра 6 адреСа микрокоманды через вход 20 кода Операций устройства и фиксируется 3 нем. Одновременно осуществляется установка в ноль регистра 11 по 25 30 35 40 45 50 55 сиг цацу иэ цецтрального устройства управления. этот же сигнал осуществляет подключение входа 20 кода операциц для записи его в регистр 6. адреса микрокомацды.По содержимому регистра 6 из блока 1 памяти микрокоманд выбирается микрокоманда, в поле адреса (выход 2 блока 1) которой записывается адрес следующей, микро- команды, который, в свою очередь, поступает на первый вход регистра б адреса микрокоманд, причем младшие разряды адреса поступают через мультиплексор 9 и по переднему фронту тактового импульса записывается в него. По обновленному содержимому регистра 6 выбирается из блока 1 следующая микрокоманда и т.д. Организуется последовательность микрокоманд, составляющая некоторую микропрограмму.Если текущая микрокоманда не требует опроса условий ветвления, то в поле ветвления записывается нулевой код.При необходимости ветвления микропрограммы в ходе ее выполнения, в микрокоманде, опрашивающей условия ветвления, в поле ветвлейия (выход 4 блока 1) записывается соответствующий код ветвления, вызывающий появление сигнала на третьем выходе дешифратора 18 модификации микрокоманд. Это вызывает переключение мультиплексора 9 на передачу информации по другому входу. Одновременно код ветвления с выхода,4 блока 1 поступает и на первые входы блока 10 условных переходов, что, в свою очередь, вызывает выработку на его выходе (при наличии на его соответствующих входах 19 опрашиваемых одного или несколько условий ветвления) кода младших разрядов адреса следующей микрокоманды. Последний через мультиплексор 9 параллельно со старшими разрядами адреса, идущими непосредственно с выхода 2, поступает на первый вход регистра 6 адреса микрокоманд, Таким образом про. исходит модификация младших разрядов адреса. Сформированный, таким образом, адрес по фронту тактового сигнала фиксируется в регистре 6 адреса микрокоманд и далее осуществляется выборка из блока 1 памяти микрокоманд следующей микрокоманды.1084793 10 15 ЯО Вшб ЭСМО 1 Поле микроопераций (выход 3 блока 1) является многофункциональным,т,е. это поле может использоватьсядля выработки различных групп элементарных операций. Каждая группаэлементарных микроопераций вырабатывается своим дешифратором микроопераций из группы дешифраторов 13.Подключение поля микрооперацийк конкретному дешифратору 13 осуществляется следующим образом.Все поле микропрограммной памятиусловно разбивается на два массива,Иикрокоманда, в которой используется определенная группа микроопераций, размещается в определенном массиве микропрограммногополя памяти блока 1, с тем расчетом, что при выборки данной микрокоманды из блока 1 старших разрядов ее адреса указывают на подключение требуемого дешифратора 13элементанных микроопераций к многофункциональному полю микроопераций. В предыдущей микрокоманде вмодификации микрокоманд (выход 5блока 1) записывается "1".Тогда при выборке данной микрокоманды единичный сигнал с выхода5 блока 1 поступает через элемент16 задержки на первый вход элемента И 15, разрешая, тем самым,прохождение тактового импульсана вход синхронизации записи регистра 11 модификации микрокоманддля фиксации в нем й старшихразрядов адреса выбираемой. микрокоманды. Одновременно, по фронтутактового импульса полный адресвыбираемой микрокоманды с выхода2 блока 1 заносится в регистр6 адреса микрокоманд и по содержимому последнего начинается выборкаданной микрокоманды,Параллельно с этим процессомсодержимое регистра 11 модификациимикрокоманд через мультиплексор8 поступает на. вход дешифратора 12переключения микроопераций. Насоответствующем выходе дешифратора12 появляется разрешающий сигнал,который поступает на вход блокировки соответствующего дешифратора13 элементарных микроопераций разрешая, тем самым, дешифрацию последним кода поля 1 микроопераций.За счет того, что выборка данной микрокоманды из блока 1 памятимйкрокоманд и срабатывание дешифратора 12 переключения микрооперации, осуществляющей подключение соответствующего дешифратора 13, происходит одновременно, и очевидно, чтоЪ лфВЫЬ "РС М 1 1где .С 1 с - время срабатывания дешифратора 12, 1 ц - время задержки прохождения сигнала через мультиплексор 8, во время полученияэлементарной микрооперации на выходе устройства относительно появления адреса на входе блока 1, в отличие от известного, меньше и составляет где С 1 с, - время срабатывания де шифратора 13 элементарных микроопераций,В ряде случаев, для сокращениявремени ветвящихся микропрограммпредлагаемое устройство позволяет, 25 в отличие от известного, осуществлять условное подключение полямикроопераций к соответствующемудешифратору 13 по условиям ветвления на входах 19 устройства без выхода на микрокоманду, в которойпроизводится безусловная выработка,некоторой микрооперации из соответствующей группы.Такое ветвление осуществляетсяследующим образом.В поле микроопераций микрокоманды, в которой необходимо ветвлениезаписывается такой код, которыйпри дешифрации одним дешифратором 40 13 микроопераций вырабатывает насоответствующем его выходе ту микрооперацию, которую необходимо получить при отсутствии условий ветвления, а при дешифрации этого кодадРугим дешифратором 13 вырабатываетна его одноименном выходе ту микрооперацию, которую необходимо получить при наличии условия ветвления. Кроме того, в поле ветвлениязаписывается соответствующий кодветвления, по которому на второмвыходе дешифратора 18 появляетсясигнал, фпереключающий мультиплексор 8 на передачу информации с 55выхода блока 10 условных переходов.Код ветвления, поступая также и наопросные входы блока 10, вырабатывает на его выходе (при наличиина его соответствующих входах од 1084793 10ного или несколько опрашиваемых условий ветвления) код, который, поступая через второй вход мультиплексора8 на вход дешифратора 12, дешифрируется им и на соответствующем выходе 5дешифратора 12 вырабатывается разрешающий сигнал, осуществляющий подключение того, или иного дешифра.тора 13 на дешифрацию основногомикрооперационного поля, Выбранный, 10таким образом, дешифратор 13 осуществляет дешифрацию поля микрооперацийи вырабатывает на соответствующемвыходе 14 устройства требуемуюмикрооперацию. 15Блок 10 условных переходов работает следующим образом,При поступлении кода ветвления наопросные входы блока 10 производитсявыборка одноименных направлений на 20всех мультиплексорах ветвлений и подача разрешающего сигнала иа один илинесколько (в зависимости от числанаправлений ветвления) элементов изгруппы элементов И 22. Если к этому 25моменту сигналы ветвления на соответствующих входах 19 условий ветвленияустройства присутствуют, то они черезвход выбранного направления мультиплексоров 21 ветвлений поступают на зопервые входы элементов И 22. Теэлементы И из группы И 22, на которые ранее с первых входов блока 10подают разрешающие сигналы, срабатывают и на выходах элементов И 22, азначит и на выходе блока 10 условныхпереходов, вырабатывается ненулевойкод младших разрядов адреса следующей микрокоманды,В противном случае на выходе блока 10 вырабатывается нулевой кодмладших разрядов адреса следующеймикрокоманды, и микропрограмма идетпо участку, соответствуюшему отсутствию, на момент опроса, опрашиваемых условий ветвления,Таким образом, добавление соответствующего оборудования и новыхсвязей позволяет достигнуть целейизобретения.Технико-экономическая эффективность предлагаемого техническогорешения заключается в том, что вотличие от известного в предлагаемом устройстве выше быстродействие при получении микрооперацийинициируемых многофункциональныммикрооперационным полем.Кроме того, предлагаемое микропрограммное устройство управленияимеет более широкие функциональныевозможности. Это обеспечиваетсяпрежде всего тем, что помимо традиционной возможности ветвлений поусловиям с выходом на альтернативные участки микропрограммы, в предлагаемом устройстве имеется возможность недетерминированного подключения дешифраторов элементарныхмикроопераций к многофункциональномумикрооперационному полю в зависимости от условий ветвления. Последнееобстоятельство, кроме того, в рядеслучаев позволяет сократить длинуветвящихся микропрограмм и тем самымдополнительно повысить быстродействие устройства при обработке микропрограмм,Попутно решена задача более эффективного использования разрядовмикрокомандного слова, так как впредлагаемом устройстве подключениецешифраторов элементарных микроопераций осуществляется не дополнительным полем микрокомандного слова, какв известном устройстве и в базовомобъекте, а старшими разрядами адреса микрокоманды.

Смотреть

Заявка

3519429, 08.12.1982

ПРЕДПРИЯТИЕ ПЯ А-1001

ДВОРЕЦКИЙ БОРИС МИХАЙЛОВИЧ

МПК / Метки

МПК: G06F 9/22

Метки: микропрограммное

Опубликовано: 07.04.1984

Код ссылки

<a href="https://patents.su/7-1084793-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления</a>

Похожие патенты