Микропрограммное устройство управления
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
(57) Изобретение относится к вычислительной технике и может быть использовано в контроллерах и ЭВМ. Цель изобретения - повышение быстродействия. Устройство включает блок управления последовательностью микрокоманд, два блока памяти микрокоманд, два конвейерных регистра, мультиплексор условий, блок памяти состояний, регистр флагов, регистр синхронизации, дешифратор, элемент НЕ, формирователь сигналов местного управления и блок памяти адресов ветвления. 4 ил. ВО Регистр 1 флагов (фиг, 2) содержит четыре триггера 20 - 23.Блок 2 памяти состояний (фиг, 3) содержит четыре регистра 24 - 27, память 28, элемент НЕ 29 и дешиФратор 30,Кроме того, обозначены выходы 31 де- Яшифратора 4, выход 32 регистра 1 флагов,выход 33 признака заполнения стековой памяти блока 10, выход 34 элемента НЕ, выход35 регистра 3 синхронизации, выход 36 управления прерыванием формирователя 5, СЬвыход 37 признака вектора прерыванияформирователя 5, выход 38 инструкции, вы- (ход 39 адреса вектора прерывания и выход ,40 управления формированием адресов вет- рвлений формирователя 5, выход 41 поля анализа условий регистра 12, синхровыход 42формирователя 5, вто рви выход 43 регистра3, выход 44 поля адреса регистра 12, выход45 блока 2 памяти, выход 46 мультиплексора6, выход 47 адреса блока 10, выход 48 блока7 памяти, выход 49 адреса регистра 11, выход 50 блока 8 памяти и вход 51 инструкцииблока 10.Формирравления мо ГОСУДАРСТВЕННЫЙ КОМИТЕТПО ИЗОБРЕТЕНИЯМ И ОТКРЫТИЯМПРИ ГКНТ СССР К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ(54) МИКРОПРОГРАММНОЕ УСТРОЙСУПРАВЛЕНИЯ Изобретение относится к области вычисЛительной техники и может быть использовано в контроллерах и ЭВМ,Целью изобретения является повышение быстродействия устройства.На фиг. 1 приведена схема устройства; на фиг. 2 - пример реализации регистра флагов; на фиг, 3 - пример реализации блока памяти состояний; на фиг. 4 - временные диаграммы, иллюстрирующие работу устройства. Микропрограммное устройство управления содержит (фиг. 1) регистр 1 флагов, блок 2 памяти состояний, регистр 3 синхронизации, дешифратор 4, формирователь 5 сигналов местного управления, мультиплексор 6 условий, первый 7 и второй 8 блоки памяти микрокоманд, блок 9 памяти адресов ветвления, блок 10 управления последовательностью микрокоманд, первый 11 и второй 12 конвейерные регистры, элемент НЕ 13, первый 14 и второй 15 синхровходы, вход 16 запросов на прерывание, вход 17 выбора адреса прерывания. вход 18 логических условий и выход 19,ователь 5 сигналов местного упжет быть выполнен в виде ПЛМна ИМС к 1556 х 8 348 ТУ, совокупность ; логических функций которого следующая:Выход 36 =ф 15 л 43+фО 5.541.0 л 41.1(35.0 +35.1 ++ 35.4) + 15 фЯ 43 41 О+л 41 1Выход 37 = "(1415 л 43" 35.541,0 , л 41.1(35.0 + 35.1 + 35.3+л 35.2 + 35.4 "л 35.2);Все выходы 38 на три состояния, выхо-ды разрешены, если истинно выражение"36+"14, выхЬд 36 одновременно использует, ся и как вход;Выход 38,0 = 1;Выход 38,1, 38.2 = 0;Выход 38.3 =". 15 л 43 л 35.541,0 "41,1(35,0+ - функцию ИЛИ.Устройство работает следующим образом. Устройство управляется 24 разрядами микрокода. Старшие шесть разрядов, с выходов 41 регистра 12, задают выбор условия ветвления мультиплексору 6; кроме того, эти разряды, проходя через формирователь 5, определяют адрес вектора ветвления на адресных входах 39 блока 9, два оставшихся разряда (на выходах 41) задают режим работы устройства, Четыре разряда с выхода 51 регистра 11 задают код команды и двенадцать разрядов с выходов 49 задают адрес ветвления блоку 18 и служат для записи кода адреса ветвления в блок 9.Устройство работает в четырех основных режимах.Первый режим - микропрограммные прерывания запрещены. Выбор следующего адреса определяет блок 10 в зависимости от кода инструкции с выхода 51 первого конвейерного регистра 11, от выбора условия ветвления на входах 41 мультиплексора 6 и информация на его входах 45 с блока памяти 2, ранее в блок.2 под управлением с выходов 44 регистра 12 записана необходимая информация, благодаря этому экономится время на определение условия ветвления,Второй режим - прерывания разреше 5 ны. При наличии запроса и разрешения напрерывание на входах 16 устанавливаетсяодин и более разрядов регистра флагов 1,регистр 3 синхронизации выдаст на входы35 формирователя 5 сигналы запросов пре 10 рывания, при этом выполняется текущая команда; заданная на выходах конвейерныхрегистров 11, 12, Сигнал 36 управления прерыванием с формирователя 5 блокируетпрохожденИе синхроимпульсов 42 на входы15 синхронизации второго конвейерного регистра 12, и блока 2 (следующий цикл для нихбудет пропущен) и блокирует выход блока 7,Этим же сигналом разрешается выход сформирователя 5 (код 01 на выходе 38) инс 20 трукции "Адрес микрокоманды в стек, переход по заданному адресу",С выхода 48 блокапамяти адресов ветвления поступает адрес ветвления на информационные входы первого25 конвейерного регистра 11. Адресныйвход 39 блока 9 памяти адресов ветвления(адрес вектора прерывания) определяетсяпоступившими запросами на прерывание,их приоритетом согласно описанным тер 30 мам, определяющим работу формирователя5. В следующем (дополнительном) циклеблок 10 записывает в стек адрес микрокоманды, которая должна была выполняться,осуществляет переход по адресу с выхода35 48 блока 9 и загружает этот адрес во внутрен, ний регистр адреса блока 10. В конце микропрограммы обслуживания прерываниявыполняется команда ветвления по содержимому стека с его разгрузкой и происходит40 возврат к прерванной микропрограмме, если же произошло пять прерываний, а возврата по содержимому стека не было, навыходе 33 блока 10 появляется сигнал заполнения стека, этот сигнал, пройдя через45 регистр 3, блокирует на формирователе 5обслуживание запросов на прерывание дотех пор, пока не будет разгружен стек.Третий режим - безусловный переходпо адресу, заданному блоком 9 памяти ад 50 ресов ветвления. Выполняется аналогичномикропрограммному прерыванию во втором режиме, но на вход инструкции 51 блока10 поступает команда "Переход по заданному адресу" (код 03), адреса для блока 9 эада 55 ются выходом 41 второго конвейерногорегистра 12 (формирователь 5 соединяетшину 41 с 39).Например: ветвление по адресу вектораО, выходы 4128 (где 2 - код режима; а 0 -адрес вектора О), выходы 39 = О, выходы 3810 20 25 30 35 Ветвление, если установлен разряд 1 Рна информационных входах 45, выходы 41 =1 Р.Ветвление, если сброшен разряд 1 Р на 50 55= 3 (код инструкции блока 10), выход 46 = 0 (разрешение ветвления, условие выполнено),Ветвление по адресу вектора Е, выходы 39 = Е, выходы 38 = 3, выход 46 = О.Четвертый режим - запись адреса ветвления по заданному вектору (адресному входу блока 9 памяти адресов ветвления). Адресная информация поступает с выхода 40 первого конвейерного регистра 11, При этом адрес следующей микрокоманды определяется выходом блока 10 и может быть либо адресом следующей микрокоманды, либо осуществляется переход по адресу, записанному ранее в стек с разгрузкой последнего, либо переход по адресу с регистра - счетчика блока 10.Например: запись адреса ветвления по вектору 0 с переходом в следующий адрес микропрограммы, выходы 41 = 00, выходы 39 = О, выходы 38 = А, выход 46 = 1(условия не выполнены), выходы 49 = инверсии записываемого адреса ветвления.Запись адреса ветвления по вектору Р так же, но выходы 39 = Е,Запись адреса ветвления по вектору 0 с разгрузкой стека, выходы 41 = 20, выходы 39 = О, выходы 38 = О, выход 46 = О, выходы 49 = инверсии записываемого адреса ветвления,Запись адреса ветвления по вектору 0 с ветвлением по содержимому регистра блока 10, выходы 41 = 00, выходы 39 = О, выходы 38 = 7, выход 46 = 1, выходы 49 = инверсии записываемого адреса ветвления. Запись адреса ветвления по вектору 0 с ветвлением по содержимому стека, выходы 41 = 20, выходы 39 = О, выходы 38 = А, выход 46 = О, выходы 49 = инверсии записываемого адреса ветвления. Мультиплексор 6 условий управляетсяследующим образом. Ветвление, если установлен разряд О наинформационных входах 45, выходы 41 -О. Ветвление, если сброшен разряд 0 наинформационных входах 45, выходы 41 = 20. информационных входах 45, выходы 41 = ЗГ.На фиг. 4 изображена временная диаграмма работы устройства в режиме обслуживания микропрограммного прерывания. При появлении сигнала на входе 16 запроса на прерывание, по его фронту, на выходе 32 регистра флагов 1 устанавливается сигнал, который по синхроимпульсу с синхровхода 14 передается на выход 35 ре 40 45 гистра 3. Формирователь 5 устанавливает на выходе 36 сигнал микропрограммного прерывания. Этот сигнал выводит третье состояние выходы 38 и 48 блока 7, блокирует выработку синхроимпульсов на выходе 42 на один период и по синхроимпульсу с входа 14 формирует сигнал 43, который задает режим безусловного ветвления блоку 10. Формирователь 5 вырабатывает импульс на выходе 37, стробирующий дешифратор 4, и адрес вектора прерывания на выходе 39. Дешифратор сигналов с выходов 31 сбрасывает соответствующий сигнал разрешения выборки блока 9, и на выход 38 - код команды ветвления с заталкиванием в стек адреса микрокоманды, которая должна была бы выполняться далее, В результате на выходе 48 блока 9 появляется .адрес ветвления, который через блок 10 поступает на адресные входы 47 первого и второго блоков 7, 8. Происходит переход в микропрограмму, обслуживающую прерывание, и фиксация нового адреса (с блоком 9) во внутреннем регистре адреса блока 10. Если при эаталкивании адреса в стек появляется сигнал на выходе 33 заполнения стековой памяти с блока 10, он проходит через регистр 3 и блокирует на формирователе 5 обслуживание других запросов на прерывание до тех пор, пока не будет разгружен стек. В памяти 28 с регистром на выходе (фиг. 3) хранится информация о состоянии входа 18, например:Сумма по модулю 2, одна "1" иэ девяти, одна "1" из восьми.Один "0" из девяти, все "0", все "1".Ошибка контроля по нечетности и другие функции, требующие дополнительных затрат времени на их вычисление. Ф ор мул а изобретен ия Микропрограммное устройство управления, содержащее блок управления последовательностью микрокоманд, первый блок памяти микрокоманд, первый конвейерный регистр, мультиплексор условий, причем выход поля управления адресом и выход поля адреса первого конвейерного регистра соединены соответственно с входом инструкции и информационным входом блока управления последовательностью микрокоманд, выход адреса которого соединен с адресным входом первого блока памяти микрокоманд, выходы которого соединены с информационными входами первого кон.- вейерного регистра. синхроеход которого соединен с первым синхроеходом устройст-, ва и синхроеходом блока управления последовательностью микрокоманд, вход признака условного перехода которого сое 1667068динен с выходом мультиплексора условий, о т л и ч а ю щ е е с я тем, что, с целью повышения быстродействия, устройство содержит второй блок памяти микрокоманд, блок памяти состояний, блок памяти адресов ветвлений, элемент НЕ, формирователь сигналов местного управления, регистр флагов, дешифратор, регистр синхронизации и второй конвейерный регистр, выход поля адреса и выход поля микроопераций которого соединены соответственно с адресным входом блока памяти состояний и выходом устройства, вход выбора адреса прерывания и второй синхровход которого подключены соответственно к первому информационному и первому стробирующему входам формирователя сигналов местного управления, вторые информационный и стробирующий входы которого подключены соответственно к первому выходу регистра синхронизации и первому синхровходу устройства, входы запросов на прерывание которого подключены.к установочным входам регистра флагов, выход которого соединен с первым информационным входом регистра синхронизации, второй информационный и вход записи которого соединены соответственно с выходом признака заполнения стековой памяти блока управления последовательностью микрокоманд и выходом элемента НЕ, вход которого соединен с входом разрешения наращивания адреса блока управления последовательностью микрокоманд, выходом управления прерыванием формирователя сигналов местного управления и входам выборки первого блока памяти микрокоманд, второй выход регистра синхронизации соединен с входом разрешения анализа условий блока управления последовательностью микрокоманд и третьим информационным входом формирователя сигналов местного управления, 5 выход адреса вектора прерывания которогосоединен с адресным входом блока памяти адресов ветвлений и информационным входом дешифратора, выходы и стробирующий вход которого соединен соответственно с 10 входами сброса регистра флагов и выходомпризнака вектора прерывания формирователя сигналов местного управления, выход инструкций и выходуправления формированием адресов ветвлений которого соедине,ны соответственно с информационнымвходом. первого конвейерного регистра и входом записи - чтения блока памяти адресов ветвлений, информационный вход и выход которого соединены соответственно с 20 выходом поля адреса и информационнымвходом первого конвейерного регистра, синхровыход формирователя сигналов местного управления соединен с входом записи второго конвейерного регистра и входом 25 чтения-записи блока памяти состояний, информационный вход и выход которого подключены соответственно к входу логических условий устройства и информационному входу мультиплексора условий, управляю щий вход которого соединен с четвертыминформационным входом формирователя сигналов местного управления и выходом поля анализа условий второго конвейерного регистра, информационный вход которого 35 соединен с выходом второго блока памятимикрокоманд, адресный вход которого соединен с выходом адреса блока управления .последовательностью микрокоманд.орректор В, Гирня роизводственно-издательский комбинат "Патент", г. Ужгород, ул.Гагарина Х Л М Я 17 в Л каз 2524 Тираж 404ВНИИПИ Государственного комитета по113035, Москва, ЖПодписноеобретениям и открытиям при ГКНТ СССРаушская наб 4/5
СмотретьЗаявка
4479415, 01.09.1988
ПРЕДПРИЯТИЕ ПЯ В-8893
БОРОДИНА НАТАЛЬЯ ДМИТРИЕВНА, КАЗАКОВ АЛЕКСАНДР РАФАИЛОВИЧ
МПК / Метки
МПК: G06F 9/22
Метки: микропрограммное
Опубликовано: 30.07.1991
Код ссылки
<a href="https://patents.su/6-1667068-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления</a>
Предыдущий патент: Устройство индикации состояния эвм
Следующий патент: Микропрограммное устройство управления
Случайный патент: Способ получения 5-2-аминофенилсульфамоил-4-хлор фурфурилантраниловой кислоты