(54) МИКРОПРОГРАММНЫЙ ПРОЦЕССОР
название | год | авторы | номер документа |
---|---|---|---|
Микропрограммный процессор | 1982 |
|
SU1070557A1 |
Микропрограммное устройство для управления и обмена данными | 1983 |
|
SU1129601A1 |
Микропрограммное устройство управления | 1983 |
|
SU1156073A1 |
Микропрограммное устройство управления с контролем | 1985 |
|
SU1267414A1 |
Мультимикропрограммная управляющая система | 1984 |
|
SU1241244A1 |
Мультимикропрограммная управляющая система | 1983 |
|
SU1133594A1 |
Микропрограммное устройство для контроля и управления | 1985 |
|
SU1325476A1 |
Микропрограммное устройство для ввода-вывода информации | 1983 |
|
SU1144099A1 |
Управляющая векторная вычислительная система | 1982 |
|
SU1120340A1 |
Микропрограммный процессор с контролем | 1981 |
|
SU985791A1 |
1
Изобретение относится к автоматике и вычислительной технике и может найти применение в управляющих и вычислительных системах.
Известен микропрограммный процессор, содержащий операционный блок, оперативную память, счетчик команд, постоянную память 13
Недостатком такого микропроцессора является относительно низкая экономичность.
Наиболее близко к предлагаемому устройство, содержащее операционный блок, оперативное запоминающее устройство, счетчик команд, блок микропрограммного управления, постоянное запоминающее устройство, триггер, группу элементов И 2.
Недостатком устройства является низкая экономичность.
Цель изобретения - повышение экономичности процессора.
Поставленная цель достигается тем, что в ,микропрограм п1ый процессор, содержащий операционный блок, оперативное запоминающее устройство, счетчик команД| блок микропрограммного управления, поcTOifflHoe запоминающее устройство, триггер режима, блок элементов И, причем сигнальный выход блока многопрограммного управления соединен с входом микроопераций операционного блока, выход адреса данных которого соединен с дом считывания оперативного запоминающего устройства, выход последнего соединен с информационным входом операционного блока, выход адреса команды которого соединен с входом счетчика ко15 манд, выход которого соединен с адресным входом операционного блока и перВЬ1М входом блока элементов И, второй вход которого соединен с выходом сигнала обращения в операционную систему
20 операционного блока, третий вход блока элементов И подключен к единичному выходу триггера режима, единичный вход которого соединен с выходом установки . режима операционного блока, нулевой вход триггера режима соединен с выходом сброса режима операционного блока, введены дешифратор идентификации, триг гер прерываний, пять элементов И, два элеменога ИЛИ, элемент ИЛИ-НЕ и посто SMHoe запоминающее устройство команд операционной системы, причем выход бло ка элементов И соединен с входом считывания постоянного запоминающего уст ройства команд операционной системы, выход которого подключен к входу коман операционного блока, выход начальной установки которого соединен с входом начальной микрокоманды блока микропро граммного управления, вход прерьтаний операционного блока соединен с единичным выходом триггера прерываний, нуле вой выход которого подключен к входу прерывания блока микропрограммного управления, нулевойвход триггера преры ваний соединен с входом конца цикла процессора, единичный вход триггера прерываний соединен с выходом первого элемента ИЛИ, первый вход которого соединен с выходом первого элемента И второй вход первого элемента ИЛИ соединен с выходом второго элемента И, третий вход первого элемента ИЛИ соединен с выходом третьего элемента И, четвертый вход первого элемента ИЛИ подключен к выходу четвертого элемента И, первый вход которого соединен с едш-1ичным; выходом триггера режима, второй вход четвертого элемента И соединен с первым выходом постоянного запоминающе о устройства, с первым , входом элемента ИЛИ-НЕ и первым вхо дом второго .элемента ИЛИ, выход которого подключен к первому входу первого элемента И, второй вход которого соединен с первым вьосодом дешифратора идентификации, второй выход которого соединен с первым входом второго элемента И, второй вход Которого соединен с выходом элемента ИЛИ-НЕ и первым входом третьего элемента И, второй вхо которого соединен с третьим выходом дешифратора; идентификации, вход которо го соединен с выходом микроопераций блока микропрограммного управления, адресный выход которого подключен к входу считьшания постоянного запомина щего устройства, второй выход которого соединен с информационным входом бло ка микропрограммного управления, а третий выход nocTosfflHoro запоминающе устройства соединен с вторым входом второго элемента ИЛИ, вторым входом элемента ИЛИ-НЕ и первым входом пятого элемента И, второй вход которого одключен р нулевому выходу триггера режима, а выход соединен с пятым вхоом первого элемента ИЛИ. Блок микропрограммного управления одержит формирователь адреса микрокоанд, регистр адреса, блок элементов . И, дешифратор микроопераций и генератор тактовых импульсов, вькод которого подключен к первому входу блока элементов И, тактовому входу регистра адреса, первому входу дешифратора микроопераций и первому входу формирователя адреса микрокоманд, второй вход которого соеинен с входом начальной микрокоманды блока, вход прерывания которого соединен с вторым входом блока элементов И и с первым информационным входом регистра адреса, второй информационный вход которого подключен к выходу формирователя адреса микрокоманд, третий вход которого подключен к информацион ному входу блока, сигнальный выход которого подключен к выходу дешифратора микроопераций, второй вход которого соединен с выходом поля микроопераций регистра адреса, выход поля адреса очередной микрокоманды которого подключен к третьему входу блока элементов И и к адресному выходу блока, выход микроопераций которого соединен с выходом блока элементов И. Операционный блок содержит регистр, сумматор и узел местного управления, вход микроопераций которого соединен с входом микроопераций бяока, информа- 1ШОННЫЙ вход которого соединен с первым входом регистра, первый выход которого соединен с первым информационным входом узла местного управления, адресный вход которого соединен с адресным входом блока, вход команд которого соединен с входом комавд узла местного управления, вход прерываний которого соединен с входом прерываний блока, второй информационный вход узла местного управления соединен с первым вььходом сумматора, второй выход которого соединен с вторым входом регистра, второй и третий выходы которого соединены соответственно с выходом адреса данных и выходом сигнала обращения в операционную систему блока, четвертый выход регистра соединен с первым входом сумматора, второй вход которого соединен с выходом информационного поля микрооперации узла местного управпения, выход установки режима которого соединен с выходом установки режима блока, выход сброса режима которого соединен с выходом сброса режима узпа местного управления, выход адреса еледующей команды которого соединен с выходом кода адреса команды и логических условий операционной системы блока выход начальной установки которого сое динен с выходом начального адреса узла местного управления, выход микрооперашш которого соединен с третьим входом регистра. Кроме того, узел местного управления содержит смесь групп элементов И, груп пу элементов Сумма по модулю 2, две группы элементов ИЛИ и элемент НЕ, причем первый информационный вход узла соединен с первыми входами элементов ИЛИ первой группы, вторые входы которых соединены с выходами элементов Сумма по модулю 2 группы, первые входы которых соединены с выходами элементов И первой группы, первые входы элементов И групп с первой по треть и первые входы элементов ИЛИ второй 1 Р1У1ШЫ соединены с вторым информацион ным входом узла, вторые входы элементов И групп с первой по третью и вторы входы элементов ИЛИ второй группы соединены соответственно с входом микроопераций узла и с входом команд узла, первые входы элементов И четвертой и пятой групп соединены с входом микроопераций узла, вторые входы элементов И четвертой и пятой групп и первые входы элементов И шестой и седьмой групп соединены через элемент НЕ с входом прерываний узла, вторые входы элементов И шестой группы соединены с выхо- дами одноименньтх элементов И третьей группы, вторые входы элементов И седьмой группы соединены с выходами эле; ментов ИЛИ второй группы, выход адре.са следующей микрокоманды узла соединен с вькодами эдементов ИЛИ второй группы, выход микроопераций, узла соединен с выходами элементовИ четвертой группы, выходы элементов И второй группы являются соответственно выходом установки режима и выходом сброса режима узла, вькоды элементов И пятой группы соединены с выходом информационного поля микрооперации узла, выхо- ды элементов И седьмой группы являютс выходом начального адреса узла. На фиг. 1 приведена структурная схема микропрограммного процессора; на фиг. 2 - структурная схема блока микро программного управления; /на фиг. 3 блок-схема операционного блока; на фиг. 4 - блок-схема формирователя адреса; на фиг. 5 - блок-схема узла местного управления. Микропрограммный процессор содержит I постоянное запоминающее устройство 1 команд операционной системы, операционный блок 2, оперативноезапоминающее устройство 3, постошшое запоминающее устройство 4, элемент ИЛИ 5, И 6, элемент ИЛИ 7, триггер 8 прерываний, блок 9 элементов И, триггер 1О режима, элемент И 11, дешифратор 12, элемент ИЛИ-НЕ 13, элемент И 14, счетчик 15, элемент И 16, блок 17 микропрограммного управление элемент И 18, вход 19 конца цикла процессора. Блок 17 микропрограммного управления содержит формирователь 20 адреса, регистр 21, поле 22 миЕрооперашга, поле 23 адреса следующей ыюфокоманды дешифратор .24, блок 25 элементов И, / . генератор 2,6 импульсов. Операционньй блок 2 содержит узел 27 местного управления, регистр 28 и сумматор 29. Формирователь 20 адреса содержит группу элементов 30 Сумма по модулю два , группу элементов; И 31 и группу элементов ИЛИ 32. Узел 27 местного управления содержит группы элементов И 33, 34, группу элементов ИЛИ 35, элемент НЕ 36, группу элементов 37 Сумма по модулю два , группу элементов ИЛИ 38, группы элементов И 39-43. Постоянное запоминающее устройство 1 команд операиионной системы предназж начено для хранения команд операционной системы. При подаче на его вход адреса команды с блока 9 на его выходе считывается соответствующая команда операционной системы, поступающая на вход команд блока 2. Блок 2 предназначен для обработки операндов и команд. При этом, узел 27 естного управления служит для управления обработкой слов по микрокомандам, поступающим, из блока 17 микродрограммного управления, кодам микроопераций. Регистр 28 предназначен для хранения слов в процессе выполнения микроопераций, а сумматор 29 - для непосредственной реализации требуемой обработки операндов и команд. Оперативное запоминающее устройство 3 предназначено для оперативного хранения прЬг)рамм пользователей (команд
пользователей) и данных, Постоямное запминающее устройство 4 предназначено для долговременного хранения микрокоманд, необходимых для выполнения программ операционной системы и программ пользователей.
Триггер 8 прерываний предназначен для- формирования сигнала прерывания выполнения считанной микрокоманды в блоке 2 и сигнала разрешения обработки считанной микрокоманды в блоке 17. Блок 9 предназначен для передачи адреса очередной команды операционной системы на входы постоянного запоминающего устройства 1 команд операционной системы из счетчика 15 команд при наличии разрешающих сигналов с первого выхода триггера Ю режима и с третьего выхода операционного блока 2. Триггер 10 режима предназначен для формирования сигналов о реализующемся режиме работы Супервизор или Задача.
Счетчик 15 команд предназначен для формирования очередной команды операционной системы в nocTosffiHOM запоминаю Тцем устройстве 1 команд операционной системы. Он увеличивает свое содержимое на единицу после выполнения команды. Коман,аы переходов могут полностью менять содержимое счетчихса.
Блок 17 микропрограммного управления предназначен для управления работой операционного блока 2 и микропрограммного процессора в целом. При этом формирователь 20 а,цреса микрокоманд обеспечивает, формирование адреса очередной микрокоманды на основе адресной части текущей (считанной) микрокоманды, кода логических условий и начального адреса микрокоманды. Регистр 21 обеспечивает хранение кода микроопераци текущей микрокоманды в поЛе 22 и адреса очередной микрокоманды в поле 23.
Формирование адреса очередной микрокоманды производится следующим образом.
Начальный адрес (код операции) поступает на вход формирователя 20 и далее через элементы ИЛИ 32 и открываемые тактовым импульсом элементы И 31 - на выход формирователя 20. По начальному адресу из постоянного запоминающего устройства 4 считывается микрокоман,ца, адресная часть которой подается на первый вход формирователя 2О, Адрес каждой следующей микрокоманды состоит из ПОСТО5ШНОЙ и модифицир уемой частей, постоянная часть адреса через
элементы ИЛИ 32 поступает на первую подгруппу элементов И 31, а модифицируемая часть адреса подается на элементы 30 Сумма по модулю два, на другие входы которых подаются значения соответствующих логических условий.
С учетом значений логических условий осуществляется модификация адреса сложения по модулю два кода логических условий и кода модифицируемой части адреса. В результате с выходов элементов 30 Сумма по модулю два на вторую подгруппу элементов И 31 поступает модифицированная часть адреса. По тактовому импульсу код адреса, состоящий из постоянной и модифицированной частей, через группу элементов И 31 поступает на выход. Формирование адреса следующей микрокоманды осуществляется аналогично.
Рассмотрим работу предлагаемого микропрограммного процессора при выполнении программы операционной системы.
Из операционного блока 2 на его выход установки режима подается сигнал, соответствующий режиму работы микропрограммного процессора Супервизор. При этом триггер 1О режима устанавливается в единичное состояние.
Узел 27 местного управления управ ляет работой операционного блока 2 следующим образом.
В режиме Супервизор на вход регистра 28 и первый информационный вход узла 27 поступает адрес первой команды операционной системы, который через элементы ИЛИ 38 заносится в счетчик 15. Из посто5шного запоминающ го устройства 1 на вход команд узла 27 поступает код первой команды операционной системы, который через элементы ИЛИ 35 к И 42 поступает в блок микропрограммного управления, задавая на чальный адрес соответствующей микропрограммы. После считьсвания первой микрокоманды на вход микроопераций поступают сигналы микроопераций, котор через элементы И 39, 40 передаются в регистр 28 и сумматор 29. Затем на вход микроопераций поступает следующая микрокоманда, и на выходах микроопераций и информационного поля микроопераций выдаются сигналы микроопераций. В микрокомандах ветвления открываются соответствующие элементы И 34 и сигналы логических условий поступают на выход начального адреса. После выполнения последней микроко манды очередной команды операционной системы, еспи необходимо перейти в рабочий режим, триггер 10 устанавливает ся в нулевое состояшие. Из регистра 28 на вход узла 27 поступает код первой команды программы пользователя. В регист 28 этот код подается из оператив го запоминающего устройства 3. Затем этот код через элементы ИЛИ 35, И 41 проходит на выход начального адреса блока 2, задавая в блоке 17 микропрограммного управления начальный адрес микропрограммы. Дальнейшее выполнени микропрограммы осуществляется аналоги но выполнению микропрограмм команд операционной системы. Если в процессе реализации микропро грамм обнаруживается оыибка, то на вх перерывания блока 2 поступает единичны сигнал. В результате нулевым сигналом с выхода элемента НЕ 36 узла 27 блокируется вьщача информации через элементы И 39 - 42, т.е. блокируется выдача микроопераций. После исправления ошибки на вход прерывания блока 2 подается нулевой сигнал и открьтаются элементы И 39-42. Применение изобретения позволяет по вьюить экономичность предлагаемого пр цессора. Формула изобретения 1. Микропрограммный процессор, соде жащий операционный блок, оперативное запоминающее устройство, счетчик коман блок микропрограммного управления, постоянное запоминающее устройство, триг гер режима, блок элементов И, причем с 1гнальный выход блока микропрограммного управления соединен с входом микроопераций операционного блока, выход адреса данных которого соединен с входами считьгоания оперативного запоминающего устройства, выход последнего соединен с информационным входом операционното блока, выход адреса команды которого соединяй с входом счетчика команд, выход последнего соединен с адреснь1м входом оперх ционного блока и первым входом блока элементов И, второй вход которого соединен с выходом сигнала обращения в -операционную систему операционного блока, третий вход блока элементов И подключен к единичному выходу триггера режима, единичный вход которого соединен с выХОДОМ установки режима операционного блока, нулевой вход триггера режима соединен с выходом сброса режима операционного блока, отличающийс я тем, что, с целью повышения его экономичности, в него введены дещифр)а- тор идентификации, триггер прерываний, пять элементов И, два элемента ИЛИ, элемент ИЛИ-НЕ и постоянное запоминающее устройство команд операционной системы, причем вькод блока элементов .И соединен с входом считывания постоянного запоминающего устройства команд операционной системы, выход которого подключен к входу команд операционного блока, выход начальной установки которого соед1шен с входом начальной микрокоманды блока микропрограммного управления, вход прерываний операционного блока соединен с единичным выходом триггера прерываний, нулевой выход которого подключен к входу прерывания блока микропрограммного управления, нулевой вход триггера прерываний соединен с входом конца цикла процессора, единичный вход триггера прерываний соединен с выходом первого элемента ИЛИ, первый вход которого соединен с выходом первого элемента И, второй вход первого элемента ИЛИ соединен с выходом второго элемента И, третий вход первого элемента ИЛИ соединен с выходом третьего элемента И, четвертый вход первого элемента ИЛИ подключен к выходу четвертого элемента И, первый вход четвертого элемента И соединен с единичным выходом триггера режима, второй вход четвертого элемента И сое-, динен с первым выходом постоянного .запоминающего устройства, с первым входом элемента ИЛИ-НЕ и первым входом второго элемента ИЛИ, выход которого подключен к первому входу первого элемента И, второй вход которого соединен с первым выходом дешифратора идентификации, второй выход последнего соединен с первым входом второго элемента И, второй вход которого соединен с первым входом второго элемента И, второй вход последнего соединен с выходом элемента ИЛИ-НЕ и первым входом третьего элемента И, второй вход которого соединен с третьим выходом дешифратора идентификации, вход последнего соединен с выходом микроопераций блока- микропрограммного угфавлеиия, адресный вьгход которого подключен к входу считьгоания постоянного запоминающего устройства, второй выход которого 1198 соединен с информационным входом блока микропрограммного управления, третий выход постоянного запоминающего ус- ойствв соединен с вторым входом второго элемента ИЛИ, вторым входом элемента ИЛИ-НЕ и первым входом пято го элемента И, второй вход которого подключен к нулевому выходу триггера режима, а выход соединен с пятым входом первого элемента ИЛИ., 2. Процессор по п. 1, о т л и ч а ю щ и и с я тем, что блок микропрограммного управления содержит формирователь адреса микрокоманд, регистр адреса блок элементов И, дешифратор микроопераций и генератор тактовых импульсов, вьгход которого подключен к первому входу блока элементов И,, тактовому вхо ду регистра адреса, первому входу дешифратора микроопераций и первому входу формирователя адреса микрокоманд, второй вход которого соединен с входом начадьной микрокоманды блока, вход пре рывания которого соединен с вторьпу входом блока элементов И и с первым информационным входом регистра адреса, второй информационный вход которого подключен к выходу формирователя адрес микрокоманд, третий вход которого подключен к информационному входу блока, сигнальный выход которого подключен к выходу дешифратора микроопераций, второй вход которого соединен с выходом поля микроопераций регистра адреса выход поля адреса очередной микрокоман ды которого подключен к третьему входу €лока элементов Инк адресному выходу блока, выход микроопераций которого соединен с выходом блока элементов И. 3. Процессор по п, 1, о т л и ч а ю щ и и с я тем, что операционный блок содержит регистр, сумматор и узел мест ного управления, вход микроопераций которого соединен с входом микроопераций блока, информационный вход которого соединен с nepBbnvi входом регистра, пер вый выход которого соединен с первым информационным входом узла местного управления, адресный вход которого соединен с адресным входом блока, вход команд которого соединен с входом команд узла местного управления, вход прерываний которого соединен с входом прерываний блока, второй информационный вход узла местного управления соединен с первым, выходом сумматора, вто рой вьгход которого соединен с вторым входом регистра, второй и третий выхоы которого соединены соответственно выходом адреса данных и выходом сигала обращения в операционную систему лока, четвертый выход регистра соедиен с первым входом сумматора, второй ход которого соединен с выходом инфорационного поля микрооперации узла естного управления, выход установки ежима которого соединен с выходом становки режима блока, выход сброса ежима которого соединен с выходом броса режима узла местного управлеия, выход адреса следующей команды оторого соединен с выходом кода адреса оманды и логических условий операционой системы блока, выход начальной установки которого соединен с выходом . ачального адреса узла местного управления, выход микрооперации которого оединен с третьим входом регистра. 4. Процессор по пп. 1-3, отличающийся тем, что узел местного управления содержит семь групп элементов И, группу элементов Сумма по модулю 2, две группы элементов ИЛИ и элемент НЕ, причем первый информационный вход узла соединен с первыми входами элементов ИЛИ первой группы, вторые входы которых соедршены с выходами элементов Сумма по модулю 2 группы, первые входы которых соединены с выходами элементов И первой группы, первые входы элементов И групп с первой по третью и первые входы элементов ИЛИ второй группы соединены с вторым информационным входом узла, вторые входы элементов И групп с первой по третью и вторые входы элементов ИЛИ второй группы соединены соответственно с входом микроопераций узла и с входом комавд узла, первые входы элементов И четвертой и пятой групп соединены с входом микроопераций узла, вторые входы элементов И четвертой и пятой групп и первые входы элементов И шестой и седьмой групп соединены через элемент НЕ с входом прерьтаний узла, вторые входы элементов И шестой группы соединены с выходами одноименных элементов И третьей группы, вторые входы элементов И седьмой группы соединены с выходами элементов ИЛИ второй группы, выход адреса следующей микрокоманды узла соединен с выходами элементов ИЛИ второй группы, выход микроопераций узла соединен q выходами элементов И четвертой группы, выходы элементов И второй группы являются соответственно выходами установки режима и выходом сброса режима узла, выходы элементов И пятой группы соединены с выходом информационного поля микрооперации узла, выходы элементов И седьмой группы являются выходом начального адреса узла.
Источники информации, принятые во внимание при экспрртизе
№ 1447736, кл. 6:4 А, 1976.
Авторы
Даты
1982-12-07—Публикация
1980-07-04—Подача