Устройство микропрограммного управления
Иллюстрации
Показать всеРеферат
1. УСТРОЙСТЮ МИКРОПРОГРАММНОГО УПРАВЛЕНИЯ, содержащее блок выработки очередной 4Икpoкoмaнды, выход которого соединен с адресным входом блока памяти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, первый выход-дешифратора кода микрокоманд соединен с информационным входом первого коммутатора, вЫход которого подключен к выходу устройства , отличающееся тем, что, с целью повышения надежности за счет контроля правильности поряд ка следования микрокоманд в Микропрограмме , оно дополнительно .содержит два элемента задержки, второй коммутатор, блок сравнения, блок определения ошибки и сдвигающий регистр кода микропрограммы, причем управляющий вход устройства соединен с первым входом ключа и первым управляюишм входом блока выработки очередной микрокоманды, второй управляющий вход которого соединен с управляющим входсяи регистра микрокоманд, с входе первого элемента згщержки, с вторым входом ключа и с вьгходом ключа через второй элемент задержки ., выход первого элемента задержки соединен с первым управляющим входом второго коммутатора, информационный и второй управляющий входы которого соединены соответственно с информационным и управляющим выходами регистра микрокоманд, первый выход второго KOMMyTatopa соединен с входсм сдвигающего регистра кода микропрограммы, выход которого соединен с первым входом блока сравнения, второй вход которого соединен с вторым выходом дешифратора кода микрокоманд, вход которого соединен с вторым выходом второго коммутатора , выход блока сравнения подключен к информационному входу блока определения ошибки, выход которого соединен с управляющим входом первого KONwyTaTopa, а управляющий вход с управляющим выходом регистра микрокоманд и с третьим управляющим входом блока определения очередной микрокоманды , информационный вход которого соединен с адресным входом устройства; 2. Устройство по п. 1, о т л ичающееся тем, что блок определения ошибки содержит две группы элеме1 тов И, группу элементов ИЛИ, группу триггеров и элемент ИЛИ,; причем информационный вход блока подключен к первым входам элементов О И первой и второй групп, к вторым входам которых подключены соответст00 венно пря1к&1е и инверсные выходы со со триггеров группы, к входам сброса которых, кроме первого, подключены выходы элементов ИЛИ группы, KjxjMe первого, выход которого соединен с единичным входом первого триггера ; группы, выходы элементов И первой группы, кроме последнего, поДключены соответственно к единичным входам триггеров группы, кроме первого, выход последнего элемента И первой группы соединен с первыми входами элементов ИЛИ группыj вторые входы которых соединены с управляющим входом блока, выходы элементов И второй групги соединены с входами элемента ИЛИ, выход которого подключен к выходу блока.
СОЮЗ СОВЕТСНИХ
СОЦИАЛИСТИЧЕСКИХ
РЕСПУБЛИК
3 5п а 06 г 9/22 г
ОПИСАНИЕ ИЗОБРЕТЕНИЯ
Н ABTOPCHOMV СВИДЕТЕЛЬСТВУ
ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР
flO ÄÅËÀÌ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21 ) .3426706/18-24 (22) 21.04.82 (46) 23.01.84, Бюл. Р 3 (72) P Ï. Сыпченко, В.Б. Никитин и Е.И. Глушанков (53) 681.325(088.8) (56) 1. Авторское свидетельство СССР
9 543939, кл. G F 9/22, 1973. . 2. Авторское свидетельство СССР
9 556439, кл. G 06 F 9/22, 1975 (прототип). (54)(57) 1. УСТРОЙСТВО МИКРОПРОГРАММНОГО УПРАВЛЕНИЯ, содержащее блок выработки очередной микрокоманды, выход которого соединен с адресным входом блока памяти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, первый выход-дешифратора кода микрокоманд соединен с информационным входом первого коммутатора, выход которого подключен к выходу устройства, о т л и ч а ю щ е е с я тем, что, с целью повышения надежности за счет контроля правильности порядка следования микрокоманд в микропрограмме, оно дополнительно содержит два элемента задержки, второй коммутатор, блок сравнения, блок определения ошибки и сдвигающий регистр кода микропрограммы, причем управляющий вход устройства соединен с первым входом ключа и первым уп-. равляющим входом блока выработки очередной микрокоманды, второй управляющий вход которого соединен с управляющим входом регистра микрокоманд, с входом первого элемента задержки, с вторым входом ключа и с выходом ключа через второй элемент задержки, выход первого элемента задержки соединен с первым управляющим входом второго коммутатора, информационный и второй управляищий входы которого соединены соответственно с информационным и управляющим
„.в и„„1Обдду а выходами регистра микрокоманд, первый выход второго коммутатора соединен с входом сдвигающего регистра кода микропрограммы, выход которого соединен с первым входом блока сравнения, второй вход которого соединен с вторым выходом дешифратора кЬда микрокоманд, вход которого соединен с вторым выходом второго коммутатора, выход блока сравнения подключен к информационному входу блока определения ошибки, выход которого соединен с управляющим входом первого коммутатора, а управляющий вход .— с управляющим выходом регистра. микрокоманд и с третьим управляющим входом блока определения очередной микро- PQ команды, информационный вход которого соединен с адресным входом устройства.
2. Устройство по п. 1, о т л ич а ю щ е е с я тем, что блок определения ошибки содержит две группы элементов И, группу элементов Я
ИЛИ, группу триггеров и элемент ИЛИ,. причем информационный вход блока подключен к первым входам элементов
И первой и второй групп, к вторым входам которых подключены соответственно прямые и инверсные выходы триггеров группы, к входам сброса которых, кроме первого, подключены выходы элементов ИЛИ группы, кроме первого, выход которого соединен с единичным входом первого триггера группы, выходы элементов И первой группы, кроме последнего, подключены соответственно к единичным входам триггеров группы, кроме первого, выход последнего элемента И первой группы соединен с первыми входами элементов ИЛИ группы, вторые входы которых соединены с управляющим входом блока, выходы элементов И второй группы соединены с входами элемента HJIH выход которого. подключен к выходу блока.
10689 37 ния ошибок; на фиг. 3 - формат кода микропрограммы; на фиг. 4 — схема блока сравнения на фиг. 5 — формат микрокоманды
Изобретение относится к вычислительной технике и может быть исполь. зовано для расширения функ циональ" ных возможностей и повышения надежности работы устройства управления
Э ВИ. 5
Известно микропрограммное устрой ство управления, содержащее блок памяти микрокоманд, регистр адреса, блок формирования адреса, блок выработки микроопераций, блоки задания контрольного режима и блок контроля(13.
Недостатком этого устройства является отсутствие контроля порядка правильности следования операций„
Наиболее близким к предлагаемому является устройство, содержащее в. своем составе блок .выработки очередной микрокоманды, блок памяти микрокоманд, регистр микрокоманд, де- 20 шифратор кода микрокоманд, коммутатор, причем выходы блока выработки очередной микрокоманды соединены с входами блока памяти микрокоманд, выходы дешифратора-кода микрокоманд 25 соединены с информационными входами коммутатора.
Для повышения надежности устройства в нем резервируются основные блоки — регистр микрокоманд, блок g0 памяти микрокоманд, дешифратор и вводится регистр контроля. В случае выхода из строя одного из основных. блоков продолжают работать резервные, обеспечивая надежное функционирование всего устройства $ 21.
Однако н известном устройстве невозможен контроль за порядком следования микрокоманд в микропрограмме.
При нарушении порядка следования микрокоманд, например по причине случайного сбоя оборудования устройства управления, ошибка обнаружена не будет, т.е. произойдет отказ устройства. цельи изобретения является повы- 45 шение надежности за счет контроля правильности порядка следования микрокоманд в микропрограмме. указанная цель достигается тем, что в устройство микропрограммного управления, содержащее блок выработки очередной микрокоманды, выход которого соединен с адресным входом блока памяти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, первый выход .дешифратора кода микрокоманд соединен с информационным входом первого коммутатора, выход которого подключен к выходу устройства, введены 60 два элемента задержки, второй коммутатор, блок сравнения, блок опре- деления ошибки и двигающий регистр кода кякропрограммы, причем управляющий вход устройства социнен .с пер- 65 вым входом ключа и первым .управляющим входом блока выработки очеред ной микрокоманды, второй управляющий вход которого соединен с управляющим входом регистра микрокоманд, с входом первого элемента задержки, с вторым входом ключа и с выходом ключа через второй элемент задержки, выход первого элемента задержки соединен с первым управляющим входом второго коммутатора, информационный и второй управляющий входы которого соединены соответственно с информационным и управляющим выходами регистра микрокоманд, первый выход второго коммутатора соединен с вхо дом сдвигающего регистра кода микропрограммы, выход которого соединен с первым входом. блока сравнения, второй вход которого соединен с вторым выходом дешифратора кода микрокоманд, вход которого соединен с вторым выходом второго коммутатора, выход блока сравнения подключен к информационному входу блока опреде-. ления ошибки, выход которого соединен с управляющим входом первого коммутатора, а управляющий вход с управляющим выходом регистра микрокоманд и с третьим управляющим входом блока определения очередной микрокоманды, информационный вход которого соединен с адресным входом устройства.
Кроме того, блок определ ния ошибки содержит две группы элементов И, группу элементов ИЛИ, группу триггеров и элемент ИЛИ, причем информационный вход блока подключен к первым входам элементов И первой и второй групп, к вторым входам которых подключены соответственно прямые и инверсные выходы триггеров группы, к входам сброса которых, кроме первого, подключены выходы элементов ИЛИ группы, кроме первого, выход которого соединен с единичным входом первого триггера группы, выходы элементов И первой группы, кроме последнего, подключены соответственно к единичным входам триггеров группы, кроме первого, выход последнего элемента И первой группы соединен с первыми входами элементов ИЛИ группы, вторые входы которых соединены с управляющим входом блока, выходы элементов И второй группы соединены с входами элемента ИЛИ, выход которого подключен к выходу блока.
На фиг, 1 представлена структурная схема устройства> на фиг. 2 функциональная схема блока определе1068937
Устройство содержит блок 1 выработки очередной микрокоманды, блок
2 памяти микрокоманд, ключ 3, элемент 4 задержки,. регйстр 5 микрокоманд, элемент 6 задержки, коммутатор 7, дешифратор 8 кода микрокоманд, сдвигающий регистр 9 кода микропрограммы, блок 10 сравнения, блок 11 определения ошибки и коммутатор 12.
Блок 11.определения ошибки (фиг.2) содержит группу триггеров 13, группы элементов И 14 и 15, элемент ИЛИ
16, группу элементов ИЛИ 17.
Формат кода микропрограммы (фиг. 3), состоящей из 4-х микрокоманд, состоит из 4-х групп 18-21 разрядов, первые, вторые, третьи и четвертые разряды которых соответствуют операциям сложения, вычитания, умножения и деления.
Блок сравнения (фиг. 4) содержит группы элементов И 22-26 и элементов ИЛИ 23.
Блок выработки очередной микрокоманды (БВОМК) представляет собой счетчик, информационный вход которого является входом устройства.
На данный вход поступает адрес выполняемой .команды. На первый управляющий вход одновременно с адресом поступает управляющий сигнал "Прием адреса". Второй управляющий вход является счетным, на него поступает сигнал "+1". Сигналом по третьему управЛяющему входу БВОМК переводится в исходное состояние.
БПОМК предназначен для хранения микрокоманд.
Регистр микрокоманд предназначен для хранения считанной из БПОМК микроманды. На РМК поступает задержанный сигнал "Ф1", который разрешает занесение микрокоманды в данный регистр.
Коммутатор 7 содержит в своем составе непосредственно коммутатор и .триггер, управляющий коммутатором. Первый управляющий вход пред ставляет собой вход установки в "0" триггера. Второй управляющий вход
КМИП представляет собой вход установки триггера в "1". Если триггер находится в единичном состоянии, то информация из КМИП выдается по второму информационному выходу, а в противоположном случае — по первому.
Дешифратор кода (ДК) микрокоманд по первому выходу выдает все микрокоманды, а по второму — только результат дешифрации. кода операции микрокоманды.
Предлагаемое устройство функционирует следующим образом.
На вход устройства поступает адрес микропрограммы и управляющий сигнал "Прием адреса". Адресом микропрограммы является код операции команды, которая выполняется по данной микропрограмме. Адрес поступает на вход БПОМК. С выхода блока 1 адрес подается в БПОМК. Считанная по
5 данному åñó информация поступает в РМК. Разрешение приема информации в PMK происходит по задержанному сигналу "Прием адреса".
В первой ячейке, соответствующей о каждой микропрограмме; хранится не микрокоманда, а код микропрограмм, который определяет последовательность микрокоманд, выполняемых по данной микропрограмме.
15 В конце выполнения каждой микропрограммы триггер коммутатора 7 устанавливается в единичное состояние., Поэтому код микропрограммы из РМК через коммутатор 7 поступает в регистр 9. Задержанным на элементе 4 сигналом "Прием адреса" триггер коммутатора 8 устанавливается в нулевое состояние.
После элемента 4 сигнал "Прием
5О сигнал "+1" до прихода сигнала
"Прием адреса". В начале выполнения первой программы выполняется команда "Запуск", которая состоит из одной микрокоманды, имеющей единичное
55 состояние признака. Это делается для установки в единицу триггера коммутатора 7.
После того, как вся микрокоманда поступает из РМК в ДК, ее код опера6О ции дешифрируется и выдается в блок
10, а микрокоманда поступает на коммутатор 12.
В блоке 10 происходит сравнение кода микрокоманды из ДХ с кодом микропрограммы.
45 адреса" поступает также на счетный вход БПОМК и на второй вход ключа.
В БПОМК образуется адрес первой микрокоманды микропрограммы, которая считывается из БПОМК в РМК.
Сигнал на выходе ключа проходит через элемент 4 и управляет приемом в РМК, а также является сигналом
"+1" для БПОМК.
Так как триггер коммутатора 7 в нулевом состоянии, то микрокоманда из РМК через него поступает на вход ДК. Микрокоманда состоит из кода операции, адреснпй части и признака. Признак в ДК не поступает, он выдается по управляющему выходу
РМК. У всех микрокоманд, кроме последней и кода микропрограммы, значение признака нулевое. В последней микрокоманде микропрограммы значение признака единичное. Поэтому после считывания последней микрокоманды происходит установка в единичное состояние триггера коммутатора 7 и сброс БПОМК и блока 10. После сброса БПОМК он не реагирует на
1068937
Работа блока 10 происходит следующим образом.
Код первой микрокоманды, определенный в ДК, сравнивается с кодом разрядов 18 кода микропрограмм.
В случае совпадения на выходе формируется единичный сигнал. Таким же образом происходит сравнение кодов остальных микрокоманд.
На вход схемы поступают сигналы.
Выходным сигналом блока 10 является сигнал "0", разрешающий выдачу информации из блока 11., В состав блока 11 входит также линия задержки (ие показана) через которую проходит сигнал Сброс". Если коды пер вой микрокоманды из ДК и регистра 9 совпали, то в "+1" устанавливается первый триггер 13. По последующим микроксмандам .устанавливается второй триггер 13 и т.д. В случае несовпадения кодов в блоке 10 очередной сигнал не вырабатывается и запрещается выдача информации иэ коммутатора 12.
Таким образом, предлагаемое устройство позволяет осуществить кон1роль порядка следования микрокоманд . в микропрограмме и за счет этого по высить надежность устройства микро15 программного управления ЭВИ.
1068937
1S
ОП(Ч)
Составитель Л. Логачева .
Редактор Н. Рогулич ТехредЛ,Пилипенко Корректор И, Муск»
Заказ 11473/45 Тирак 703 "одписное
ВНИИПИ Государственного комитета СССР по.делам изобретений и открытий
113035, Москва, _#_-35, Раушская наб., д. 4/5
Филиал ППП "Патент", г. Ужгород, ул, Проектная, 4