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

Есть еще 3 страницы.

Смотреть все страницы или скачать ZIP архив

Текст

.9)8011 1 1 О ОПИСАНИЕ ИЗОБРЕ АВТОРСКОМУ СВИДЕТЕЛЬСТВУ(прототип),онным входом регистра микрокоманд,выход которого является информационным выходом устройства, о т л ич а ю щ е е с я тем, что, с цельюрасширения области применения устройства, в него введены регистр кодаопераций, регистр контроля, счетчик,формирователь адреса первой микрокоманды, преобразователь кода операций в код числа команд, блок элементов Ивторой и третий элементы И-НЕ,элементИЛИ-НЕ,элемент ИЛИ,элемент И-НЕ и элемент задержки, причем вход кода операции устройства соединен с информационным входом регистра кода операции, выход которого соединен с входами формирователя адреса первоймикрокоманды и преобразователя кодаоперации в код числа команд, выходформирователя адреса первой микрокоманды соединен с вторым информационным входом коммутатора адреса,третий выход блока памяти микрокоманд соединен с вторым информационным входом мультиплексора, четвертыйвыход блока памяти микрокоманд соединен с информационными входами регистра контроля и с первым входомблока элементов И, выходы регистраконтроля соединены с соответствунщими входами элемента И-НЕ, выход блока элементов И соединен с управляющим входом мультиплексора, выходпреобразователя кода операции в кодчисла команд соединен с информационным входом счетчика, выходы которогосоединены с соответствующими входамиэлемента ИЛИ-НЕ, выход элемента ИЛИНЕ соединен с управляющими входамикоммутатора адреса и вторым входом В 47 С.Н.Ткачен Самарский,видетельство СС Р 9/22, 19823586599,и Новиков Г.И.Машиностроение",рис. 10.4 ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ(54) (57) МИКРОПРОГРАММНОЕ УСТРОИСТВОУПРАВЛЕНИЯ, содержащее блок памятимикрокоманд, регистр адреса, регистрмикрокоманд, триггер пуска, генератор тактовых импульсов, коммутаторадреса, мультиплексор и первый элемент И, причем вход пуска устройствасоединен с единичным входом триггерапуска, единичный выход которого соединен с входом генератора тактовыхимпульсов, первый выход. генераторатактовых импульсов соединен с первымвходом первого элемента И, выход коммутатора адреса соединен с информационным входом регистра адреса, выходкоторого соединен с входом блока памяти микрокоманд, вход логическихусловий устройства соединен с первыминформационным входом мультиплексора,выход которого и первый выход блокапамяти микрокоманд соединены с первым информационным входом коммутатора адреса, второй выход блока памяти микрокоманд соединен с информациС 06 Р 9/22; С 06 Г 11/ОСинхроимпульс с первого выхода генератора 12 тактовых импульсов поступит на первый вход элемента И 13 и на вход синхронизации регистра 4 адреса. Единичный сигнал, сформированный на выходе элемента И 13, поступит на первый вход элемента И 15, опрашивая состояние инверсных выходов регистра 6 контроля. В случае1 О безошибочной реализации микропрограммы на всех инверсных выходах регистра 6 контроля будут единичные сигналы, на выходе элемента И-НЕ 17 - нулевой сигнал, который поступает на15 второй вход элемента И 15. Сигнал ошибки устройства в этом случае сформирован не будет.В случае неправильной реализации составной команды значение контрольной суммы, хранящейся в регистре 620 контроля, отлично от нуля и тогда на выходе элемента И-НЕ 17 присутствует единичный сигнал. В результате на выходе элемента И 15 будет сформировансигнал ошибки, который поступает навторой вход элемента ИЛИ 19, этимсигчалом обнулится триггер 11 пускаи работа устройства будет заблокирована.При реализации элементарной команды К =К 10 формирователь 7 сформи 10.рует код адреса первой микрокоманды,равный 1010, Преобразователь на своем выходе сформирует код 001. Работаустройства по реализации микропрограммы не будет отличаться от описанной. При выполнении последней микрокоманды микропрограммы, кроме нулевого кода адреса очередной микрокоманды, нулевым будет и поле логических условий.Использование изобретения позволит расширить область примененияустройства благодаря осуществлениювозможности реализации составныхкоманд,в дакто оррект кма з 9611/ е ИИПИ 113035, Моск ент", г.ужгород, ул.Проектная, 4 лиал ППП Тираж Государстве о делам изо ва, Ж, 98 Подпис ного комитета СССР ретений и открытий аушская наб д. 4/511308 первого элемента И, выход которого соединен с входом синхронизации счетчика и первым входом второго элемента И, первый управляющий выход регистра микрокоманд соединен с вторым входом блока элементов И, третьим входом первого элемента И и первым входом третьего элемента И, выход которого соединен со счетным входом счетчика и входом синхронизации регистра контроля, второй управляющий выход регистра микрокоманд соединен с входом синхронизации регистра кода операций, а третий управляющий выход регистра микрокоманд соединен с пер 65вым входом элемента ИЛИ, выход кото-рого соединен с цулевым входом триггера пуска, выход элемента И-НЕ соединен с вторым входом второго элемента И, выход которого соединен с вторым входом элемента ИЛИ и являетсявыходом ошибки устройства, первыйвыход генератора тактовых импульсовсоединен с входом синхронизации регистра адреса, второй выход генератора тактовых импульсов соединенс входом синхронизации регистра микрокоманд и через элемент задержкис вторым. входом третьего элемента И.Изобретение относится к цифровойвычислительной технике и может бытьиспользовано при проектировании микропрограммных управляющих устройствдля ЭВМ и вычислительных систем, 5Известно микропрограммное .устройство управления с контролем, содержащее блок памяти микрокоманд, регистрадреса, буферный регистр, схему сравнения, элементы И, ИЛИ 13 . 1 ОНедостатком указанного устройстваявляются его низкие функциональныевозможности, обусловленные отсутствием контроля правильности работыустройства при реализации микропрограмм.Известно микропрограммное устрой.ство управления с контролем, содержащее блок памяти микрокоманд, регистр адреса микрокоманд, регистр 20адреса, буферный регистр, схемысравнения, элементы И, ИЛИ 1.23 .Недостатком указанного устройстваявляются низкое быстродействие,обусловленное неэффективным использо ванием рабочего времени устройстваНаиболее близким к нредлагаемомуизобретению по технической сущностиявляется микропрограммное устройство управления, содержащее блок памя- щоти микрокоманд, регистры адреса имикрокоманд, триггер пуска, генератор,тактовых импульсов, коммутаторадреса, мультиплексор -и элемент И,причем вход пуска устройства соединен с единичным входом триггера пуска, единичный выход которого соединен с входом генератора тактовыхимпульсов, первый выход генераторатактовых импульсов соединен с первымвходом первого элемента И; выход коммутатора адреса соединен с информационным входом регистра адреса,выход которого соединен с входомблока памяти микрокоманд; вход логических условий устройства соединенс первым информационным входом мультиплексора, выход которого совместно с первым выходом блока памятимикрокоманд соединен с первым информационным входом коммутатора адреса;второй выход блока памяти миКрокоманд соединен с информационнымвходом регистра микрокоманд, информационный выход которого соединенс информационным выходом устройства 33,Недостатком данного устройстваявляется узкая область применения,вызванная невозможностью реализациисоставных команд. Это обусловленотем, что после выполнения микропрограммы, интерпретирующей командупроцессора вычислительной машины,для определения кода очередной микропрограммы необходимо обращение к основной оперативной памяти процессора.При такой организации работы устройства после реализации последнеймикропрограммы текущей микропрограммы для определения адреса первоймикрокоманды очередной микропрограм865 3 1130 мы необходимо обращение к основной оперативной памяти процессора для определения кода операции, Таким образом, существенно снижается быстродействие процессора, в котором ис пользуется устройство за счет того, что оно всякий раз после выполнения микропрограммы находится в режиме ожидания до момента поступления кода операции, 1 ОВ известном устройстве также отсутствует организация контроля пра-, вильности его функционирования, Это обуславливает низкую достоверность его функционирования, значительно 15 ограничивает его функциональные возможности и область применения.Таким образом, невозможность реализации составных команд, временные задержки в работе микропрограммного 20 устройства управления, обусловленные необходимостью ожидания поступления кода операции на вход устройства и отсутствие контроля правильности его функционирования значительно ограни чивают функциональные возможности и сужают область применения устройст; ва.Целью изобретения является расширение области применения устройства ЗО путем обеспечения микропрограммной реализации составных команд и организации контроля их выполнения.Поставленная цель достигаетсятем, что микропрограммное устройство 35 управления, содержащее блок памяти микрокоманд, регистр адреса, регистр микрокоманд, триггер пуска, генератор тактовых импульсов, коммутатор адреса, мультиплексор и первый эле мент И, причем вход пуска устройства соединен с единичным входом триггера пуска, единичный выход которого соединен с входом генератора тактовых импульсов, первый выход генератора 45 тактовых импульсов соединен с первым входом первого элемента И, выход коммутатора адреса соединен с информационным входом регистра адреса, выход которого соединен с входом блока 5 О памяти микрокоманд, вход логических условий устройства соединен с первым информационным входом мультиплексора, выход которого и первый выход блока памяти микрокоманд соединены с первым информационным входом коммутатора адреса, второй выход блока памяти микрокоманд соединен с информационным входом регистра микрокоманд, ийформационный выход которого является информационным выходом устройства, дополнительно введены регистр кода операций, регистр контроля, счетчик, формирователь адреса первой микрокоманды, преобразователь кода операции в код числа команд, блок элементов И, второй и третий элементы И, элеиент ИЛИ-НЕ, элемент ИЛИ, элемент ИНЕ и элемент задержки, причем вход кода операции устройства соединен с информационным входом регистра кода операции, выход которого соединен с входами формирователя адреса первой микрокоманды и преобразователя кода операции в код числа команд, выход формирователя адреса первой микрокоманды соединен с вторым инфор.мационным входом коммутатора адРеса, третий выход блока памяти микроко/манд соединен с вторым информационным входом мультиплексора, четвертый выход блока памяти микрокоманд соединен с информационными входами регистра контроля и с первым входом блока элементов И, выходы регистра контроля соединены с соответствующими входами элемента И-НЕ, выход блока элементов И соединен с управляющим входом мультиплексора, выход преобразователя кода операции в код числа команд соединен с информационным входом счетчика, выходы которого соЕдинены с соответствующими входами элемента ИЛИ-НЕ,. выход элемента ИЛИ-НЕ сое- динен с управляющими входами коммутатора адреса и вторым входом первого элемента И, выход которого соединен с входом синхронизации счетчика и первым входом второго элемента И, первый управляющий выход регистра микрокоманд соединен с вторым входом блока элементов И, третьим входом первого элемента И и первым входом третьего элемента И, выход которого соецинен со счетным входом счетчика и входом синхронизации регистра контроля, второй управляющий выход регистра микрокоманд соединен с входом синхронизации регистра кода операций, а третий управляющий выход регистра микрокоманд соединен с первым входом элемента ИЛИ, выход которого соединен с нулевым входом триггера пуска, выход элемента И-НЕ соединен с вторым входом второго элемента И, выход которого соединен с вто 11308 б 5рым входом элемента ИЛИ и являетсявыходом ошибки устройства, первыйвыход генератора тактовых импульсовсоединен с входом синхронизации регистра адреса, второй выход генерато" 5ра тактовых импульсов соединенс входом синхронизации регистра микрокоманд и через элемент задержкис вторым входом третьего элемента И.Сущность изобретения состоитв расширении области применения устройства путем выполнения составныхкоманд на основе микропрограммнойреализации переходов между командами за счет записи очередного кода 15операции в адресном поле последнеймикрокоманды текущей микропрограммы; организации контроля составныхкоманд путемсложения контрольныхпризнаков, записанных в свободных 2 Ополях логических условий последнихмикрокоманд в микропрограммах,В процессе реализации микропрограммным устройством управления сос"тавных команд в адресном поле послед. 25ней микрокоманды записывается код,соответствующий адресу первой микрокоманды очередной микропрограммы.Если реализуется составная команда,содержащая четыре микропрограммы, то ЗОв последних микрокомандах первойтретьей микропрограмм будут записаныкоды, соответствующие адресам первыхмикрокоманд второй-четвертой микропрограмм соответственно. 35В поле логических условий послед-,ней микрокоманды первой микропрограммы будет записан код К, в соответствующем поле последней микрокомандывторой микропрограммы будет записан 40код Кф, в соответствующем поле последней микрокоманды третьей микропрограммы будет записан код К, а вполе логических условий последнеймикрокоманды четвертой микропрограммы будет записан код К. Правильность выполнения составной командыопределяется путем сложения на модулю два контрольных кодов Е"-К послеокончания выполнения последней микрокоманды последней микропрограммы.Следовательно, использование естественной избыточности форматов микрокоманд позволяет при реализации составных команд осуществлять пере ход на микропрограммном уровне между образующими их элементарными командами и организовать контроль правильности реализации команд, что и повышает быстродействие процессора, в котором используется устройст" во и достоверность его функционирования и тем самым способствует расширению области его применения.Сущность изобретения реализуется путем введения следующих элементов и связей.Введение регистра кода операции и обусловленных им связей необходимо для записи кода операции и его храненияВведение регистра контроля и обусловленных им связей необходимо для организации контроля правильности реализации составных команд путем суммирования по модулю контрольных признаков.Введение счетчика и обусловленных им связей необходимо для организации счета реализованных элементарных команд, образующих составную команду.Введение формирователя адреса первой микрокоманды и обусловленных им связей необходимо для формирования адреса первой микрокоманды реализуемой микропрограммы по коду операции,Введение преобразователя кода операции в код числа команд и обусловленных им связей необходимо для формирования кода числа элементарных команд, реализуемых устройством по соответствующему коду операции.Введение блока элементов И и обусловленных им связей необходимо для управления передачей в мультиплексор кода проверяемых логических условий при реализации микрокоманд условных переходов.Введение второго элемента И и условленных им связей необходимо для формирования сигнала прерывания работы устройства в случае возникновения сбоя или ошибки.Введение третьего элемента И и обусловленных им связей необходимо для формирования сигналов в управлении работой регистра контроля и импульсов счета числа реализованных элементарных команд.Введение элемента И-НЕ и обусловленных им связей необходимо для формирования сигнала ошибки при значении кода, записанного в регистр контроля не равном нулю.Введение элемента ИЛИ и обусловленных им связей необходимо для формирования сигнала прекращения работы устройства при возникновении сбоя, а также по сигналу конца работы реги" 5 стра микрокоманд.Введение элемента ИЛИ-НЕ и обусловленных им связей необходимо для формирования сигнала управления коммутатором адреса для записи кода адреса очередной микрокоманды в регистр адреса, а также сигнала, разрешающего записькода числа элементарных команд в счетчик.Таким образом, благодаря введению 1 новых элементов и связей микропрограммное устройство управления обеспечивает более высокое быстродействие и достоверность функционирования процессора, что в значительной степе-М ни расширяет его функциональные возможности и область применения.На фиг. 1 представлена функциональная схема микропрограммного уст. ройства управления: на фиг. 2 - вре менная диаграмма его работы.Микропрограммное устройство управления (фиг. 1) содержит блок 1 памяти микрокоманд, счетчик 2, регистр 3 кода операции, регистр 4адреса, регистр 5 микрокоманд, регистр 6 контроля, формирователь 7 адреса первой микрокоманды, преобразователь 8 кода операции в код числакоманд, мультиплексор 9, коммута- З 5тор 10 адреса, триггер 11 пуска, генератор 12 тактовых импульсов,первый элемент И 13, третий элемент И 14, второй элемент И 15,блок 16 элементов И, элемент И-НЕ 17,4 фэлемент ИЛИ-НЕ 18, элемент ИЛИ 19,элемент 20 задержки, вход 21 кодаоперации устройства, вход 22 логических условий устройства, выход 23устройства микрокоманд устройства, 4первый управляющий выход (конца команды) 23.1 регистра 5 микрокоманд,второй управляющий выход (занесениякода) операции 23,2 регистра 5 микрокоманд, третий управляющий выход(конца работы) 23,3 регистра 5 микрокоманд, выход 24 пуска устройства,первый выход (немодифицирующих разрядов кода адреса) 25 блока 1 памя-ти микрокоманд, третий выход (модифицируемых разрядов кода адреса) 26блока 1 памяти микрокоманд, четвертый выход (кода логических условий) 27 блока 1 памяти микрокоманд,второй выход (микроопераций) 28 блока 1 памяти микрокоманд, выход 29ошибки устройства,Назначение основных элементовмикропрограммного устройства управления (фиг. 1) состоит в следующем.Блок 1 памяти микрокоманд предназначен для хранения микропрограмм,реализуемых устройством,Счетчик 2 предназначен для записии подсчета числа реализованных микропрограмм. Запись кода числа микропрограмм осуществляется по заднемуфронту импульса синхронизации. Вычитание "1" из содержимого счетчикаосуществляется также по заднему фронту импульса счета.Регистр 3 кода операции предназначен для записи и хранения кода операции. Запись кода операции осуществ"ляется по переднему фронту синхроимпульса.Регистр 4 адреса предназначендля хранения адреса очередной микрокоманды. Запись следующего адресав регистр 4 адреса осуществляетсяпо заднему фронту первого тактовогоимпульса, формируемого генератором 12 тактовых импульсов,Регистр 5 микрокоманд предназначен для приема, хранения и выдачимикрокоманд с полями: информационным(микроопераций); управляющими; меткиконца команды, занесения кода операций, конца работы устройства. В ииформационном поле записываются кодымикроопераций реализуемых микрокоманд; в поле метки "Концы команды" последней микрокоманды каждой микропрограммы записывается "1". Для остальных команд значение этого разряда равно "0". В поле метки "Запись кода операции" записывается единичный сигнал последней микрокомандепоследней микропрограммы составной или элементарной команды. Для остальных микрокоманд значение этого разряда равно "0". В поле метки "Конец работы" устройства записывается единичное значение в той микрокоманде, после реализации которой необходимопрервать (закончить) работу устройства. Для остальных микрокоманд значение этого разряда равно "0",Регистр 6 контроля выполнен на Т- триггерах и предназначен для организации контроля правильности функцио10 11308 нирования устройства путем суммирования по модулю для контрольных признаков, поступающих с выхода логичес" ких условий 27 блока 1 памяти микро- команд. Суммирование осуществляется 5 по заднему фронту импульса счета числа реализованных микропрограмм.Формирователь 7 адреса первой микрокоманды предназначен для формирования кода адреса первой микроко О манды реализуемой микропрограммы по коду операции, преобразователь 8 кода операции в код числа команд предназначен для формирования кода числа реализуемых микропрограмм в соответ-15 ствии с кодом операции.Рассмотрим на конкретном примере алгоритмы функционирования формирователя 7 и преобразователя 8, т.е. алгоритмы формирования кодов адресов 20 первых микрокоманд и кодов чисел реализуемых микропрограмм.Предположим, что всю совокупность команд процессора, которую необходимо реализовать, можно представить 25 следующим образомК К 64 ПК 6 1 жбПКб 4К 464 - составная команда К, К К К 4 фкоторая реализуется устройством в соответствии с ука занной последовательностью;бзК, - составная команда К 5 К 6 Ку 3Ксоставная команда Кр К 9 уК, - элементарная команда процессора, соответсвующаякоманде процессора К,о (команда К может совпадатьс любой из элементарныхкоманд К 1 -К д)ы 4Пусть составной команде К соот ветствует код операции 001; составной команде К- кд операции 010;6составной команде К- код опера 38, ции 011, а элементарной команде К," соответ твует од операции 100,45В соответствии с кодом Операции формирователь 7 формирует код адреса первой микрокоманды первой микропро". граммы в реализуемой составной (элементарной) команде. 50Формирователь 7 реализует систему булевых функций, состоящую из управ" лений, каждое из которых описывает соответствующий выход формирователя и представляется в виде дизъюнктивной нормальной формы. Число уравнений в системе определяется разряд-. ностью адреса микрокьманд. Пусть раз 65рядность аДреса равна 4 и выбранследующий вариант кодирования начальных адресов. При поступлении кодаоперации 001, сообтветствующего составной команде К ф, на выходе матри-цы сформируется код 0001; при поступлении кода операции, собответствующего составной команде К , сформируется код 0101; при поступлении кодаоперации 011, соответствующего составной команде К 5, сформируетсякод 1000; при поступлении кода операции 100, соответствующего элементарной команде, сформируется код 1010,Тогда система управлений, реализуемых формирователем 7, будет иметьвидС, =хх ХЗ+Х 4 ххд",С=хх хСз =Х 4 х 2 хз фС 4- Х 1 хх +х,ххзгде С (1=1, 4) - д-я. выходная переменная формирователя 7, соответствующая -му разрядукода адреса;х(=1,3) - 1-я входная перемен-.ная соответствующая1-му разряду кодаоперации. В соответствии с данной системойуправлений формирователь 7 может,быть реализован на программируемойогической матрице, имеющей три вхо-а х,х , х , четыре выхода С 1, С,Преобразователь 8 формирует код числа микропрограмм, интерпретирующих реализуемую процессором команду. Реализация составной команды К 41 требует выполнения четырех микропрограмм; реализация составной команды ф - трех микропрограмм; реализация составной команды К- двухбЬ микропрограмм реализация элементарной команды К 4 потребует выполнения только одной микропрограммы, При поступлении на вход преобразователя 8 кодов операций 001, 010, 011, 100, на выходе его будут сформированы коды числа микропрограмм 100, 011, 010, 001 соответственно.Система управлений, реализуемых преобразователем 8, имеет видС =ххх,С=Х 1 ххз+Х 4 Х 2 ХСэ =Х 1 Х Х +Х 4 ХХэ12 65 11 11308В соответствии, с данной системойуправлений преобразователь 8 можетбыть реализован на программируемойлогической матрице, имеющей три входа х,х, х и три выхода С, С5и Сз,Мультиплексор 9 предназначен длямодификации адреса микрокоманды,следующей за микрокомандой ветвления.Модификация адреса осуществляетсяпутем изменения значения последнегоразряда модифицируемых разрядов адреса, Для этой цели на первый информационный вход с входа 21 устройствапоступает код значений логических 5условий, На управляющий вход мультиплексора 9 поступает код проверяемыхлогических условий. На второй информационный вход мультиплексора 9 поступают значения младшего модифицируемого разряда адреса. При значенияхпроверяемых логических условий, равных "0", изменения значений модифицируемых разрядов адреса не происходит. Адрес очередной микрокоманды 25определяется значением кода адресана первом 25 выходе блока 1 памятимикрокоманд; В противном случаепроисходит модификация адреса путемизменения с нуля на единицу значения ЗОмодифицируемого разряда адреса. Адрес очередной микрокоманды определяется немодифицируемыми разрядами,поступающими с первого 25 выходаблока 1 памяти микрокоманд, и модифицируемым разрядом, поступающимс выхода мультиплексора 9.Коммутатор 10 адреса предназначен для организации записи адреса,очередной микрокоманды. При реализа рции первой микрокоманды составныхи элементарных команд код адресапоступает с выхода формирователя 7на второй информационный вход. Адреса всех остальных микрокоманд поступают через первый информационныйвход.Триггер 11 пуска предназначен дляуправления работой генератора 12тактовых импульсов. Генератор 12тактовых импульсов предназначен дляформирования синхроимпульсов. Синхроимпульсы с первого выхода осуществляют синхронизацию записи кода числаэлементарных команд в счетчик 2 изаписи кода адреса в регистр 4 адреса, Синхроимпульсы с его второговыхода осуществляют синхронизацию записи кода микрокоманд в регистр 5микрокоманд,Первый элемент И 13 предназначендля управления синхровходом счетчика 2, Блок 16 элементов И предназначен для управления подачей на мультнплексор 9 кода проверяемых логических условий.Второй элемент И 15 предназначендля формирования сигнала прерыванияработы устройства при возникновениисбоя или ошибки в процессе функционирования. Третий элемент И 14 предназначен для управления подачей импульсов на счетный (вычитающий) входсчетчика 2. Элемент И-НЕ 17 предназначен для формирования сигнала ошибки работы устройства. Элемент ИЛИ 9предназначен для формирования сигнала обнуления триггера 11 пуска. Элемент ИЛИ-НЕ 18 предназначен дляуправления работой коммутатора 10 адреса при записи информации в регистр 4 адреса и формирования сигнала разрешения на запись информациив счетчик 2. Элемент 20 задержкипредназначен для задержки синхроимпульса с второго выхода генератора 12тактовых импульсов на время 1, причем Т больше времени переключенияэлементов памяти регистра 5 микрокоманд. Вход 21 устройства являетсявходом кода операции, который определяет адрес первой микрокоманды.1Микропрограммное устройство уйравления функционирует следующим образом.В соответствии с кодом операции,поступающим на вход 21 устройства,осуществляется запись кода адресапервой микрокоманды в регистр 4 адреса и кода числа микропрограмм -в счетчик 2. Так, при поступлении,кода операции 001, соответствующегосоставной команде К 1 =К 1 ККК,61в регистр 4 адреса будет записанкод 0001, соответствующий адресупервой микрокоманды первой из четырех реализуемых микропрограмм.В счетчике 2 будет записан код 100,соответствующий чису реализуемыхмикропрограмм. Запись информациив регистр 4 адреса и счетчик 2 осуществляется одновременно по синхроимпульсам, поступающим с первого выхода генератора 12 тактовых импульсов. После считывания информации изблока 1 памяти микрокоманд осуществ 14131130865ляется ее запись в регистр 5 макрокоманд для управления работой процессора, Запись информации в регистр 5 микрокоманд осуществляется по синхроимпульсам, поступающим 5 с второго выхода генератора 12 тактовых импулЬсов. Адрес очередной микро- команды с первого 25 выхода блока 1 памяти микрокоманд через коммутатор 10 адреса записывается в ре гистр 4 адреса для дальнейшей реализации цикла обработки микрокоманды. В случае необходимости перехода к адресу очередной микрокоманды по условному переходу в мультиплексо ре 9 происходит модификация младшего разряда адреса по коду проверяемых условий и их значению. При нулевом значении проверяемого логического условия адрес очередной микрокоман ды полностью определяется значениями немодифицируемых разрядов адреса. В случае единичного значения условия адрес очередной микрокоманды изменяется на единицу (в младшем разряде). После записи последней микро- ,команды первой микропрограммы в ре-, гистр 5 микрокоманд происходит уменьшение содержимого счетчика 2 на единицу и запись контрольного призна- ЗО ка К в регистр 6 контроля. Поскольб ку реализуемая команда Кф является составной, адрес первой микрокоманды очередной микропрограммы через коммутатор 10 адреса записывается в регистр 4 адреса с первого выхода блока 1 памяти микрокоманд. После реализации второй микропрограммы также происходит изменение состояния счетчика,2 и запись второго контрольО ного признака К в регистр 6 конт 2,роля После завершения считывания последней микрокоманды последней микропрограммы счетчик 2 обнуляется и происходит опрос значений инверс ных выходов регистра 6 контроля. При:нормальном функционировании устройства после выполнения последней элементарной команды регистр 6 должен быть обнулен и на выходе эле мента И-НЕ 17 сигнал равен "0". В случае возникновения сбоя или отказа в процессе функционирования устройства сигналом блокировки про- . исходит обнуление триггера 11 пуска 55 и работа устройства в рабочем режиме будет запрещена. При отсутствии сбоев или отказов в работе устройства цикл реализации очередной команды по соответствующему коду операции будет повторен.В случае выполнения элементарной команды К, реализуемой одной микропрограммой, работа устройства будет аналогична описанной, однако после считывания последней микрокоманды микропрограммы в регистр 6 контроля будет занесен код, состоящий из одних нулей.Микропрограммное устройство управления работает следующим образом.В исходном состоянии все элементы памяти устройства (фиг. 1) находятся в нулевом состоянии. На выходе 23.2 регистра 5 присутствует единичный сигнал. Код операции, соответствующий коду составной команды К 1 4 и равный 001, поступает с входа 21 кода операции устройства на информационный вход регистр 3 кода операции, По разрешающему сигналу с второго 23.2 управляющего выхода регистра 5 микрокоманд происходит запись кода операции в регистр 3, Формирователь 7 формирует код адреса 0001 первой микрокоманды первой микропрограммы, Код адреса поступает на второй информационный вход коммутатора 10 адреса, на управляющий вход которого поступает сигнал "1" с выхода элемента ИЛИ-НЕ 18, Преобразователь 8 формирует код числа микропрограмм, которые будут реализованы в течение цикла выполнения команды Кф.По сигналу "Пуск" с входаустройства триггер 11 пуска устанавливается в единичное состояние и включает генератор 12 тактовых импульсов. Синхроимпульс с первого выхода генератора 12 тактовых импульсов поступает на синхровход регистра 4 адреса и по заднему его фронту осуществляется запись кода адреса, поступившего на его информационный вход с выхода коммутатора 10 адреса. Кроме того, синхроимпульс с первого выхода генератора 12 тактовых импульсов поступает,на первый вход первого элемента И 13, второй и третий входы которого открыты единичными сигналами с выхода элемента ИЛИ-НЕ 18 и выхода 23,1 регистра 5 микрокоманд соответственно. На выходе первого элемента И 13 формируется импульс, который поступает на синхро11308 15 вход счетчика 2 и по заднему его фронту осуществляется запись информации, поступающей на его информационные входы с выхода преобразователя 8. После записи информации содержимое 5 счетчика 2 стало отличным от нуля и на выходе элемента ИЛИ-НЕ 18 появляется нулевой сигнал, который блокирует поступление информации по второму информационному входу коммута тора 10 адреса и разрешает ее прохождение по первому информационному входу. Кроме того, этот сигнал закрывает первый элемент И 13, запрещая тем самым Формирование на его выхо де синхроимпульса записи и опроса состояния регистра 6 контроля,После записи адреса первой микро- команды в регистр 4 адреса происходит считывание соответствующей микро команды из блока 1 памяти микрокоманд, Немодифицируемь 1 е разряды адреса очередной микрокоманды с первого его выхода 25 поступают на первый информационный вход коммутатора 10 Й адреса, который открыт управляющим сигналом с выхода элемента И-НЕ 18.Модифицируемый разряд адреса очередной микрокоманды поступает с третьего 26 выхода блока 1 памяти микрокоманд на управляющий вход мультиплексора 9. Если реализуемая микро- команда не является микрокомандой условного перехода, то поле логических условий является свободным. Со второго выхода 28 блока 1 памяти микрокоманд код микрооперациии управ- . ляющие метки поступают на информационный вход регистра 5 микрокоманд. По заднему фронту синхроимпульса, поступающего с второго выхода генератора 12 на синхровход регистра 5 микро- команд происходит запись информации. Коды микроопераций поступают на выход 23 устройства. Нулевой сигнал с 45 выхода 23.1 регистра 5 микрокоманд поступает на второй вход элемента И 13, управляющий вход блока 16 элементов И и на первый вход элемента И 14, закрывая его. Синхроимпульс 50 с второго выхода генератора 12 тактовых импульсов через элемент 20 задержки через время Т поступит на второй вход элемента И 14. Изменения состояния счетчика 2 не произойдет, 55 По очередному импульсу с первого1 выхода генератора 12 тактовых импульсов произойдет запись кода ад 65 16реса второй микрокоманды в регистр 4 адреса. В дальнейшем работаустройства будет продолжаться аналогично описанному. При записи последней микрокоманды первой микропрограммы значение сигнала на выходе 23.1 регистра 5 микро- команд меняется на противоположное. .Единичный сигнал с этого выхода блокирует элемент И 16, открывает элемент И 14 и поступает на заблокированный нулевым сигналом с выхода элемента ИЛИ-НЕ 18 элемент И 13. Синхроимпульс со второго выхода генератора 12 тактовых импульсов через элемент 20 задержки поступает на первый вход открытого элемента И 14, на выходе которого формируется импульс, поступающий на счетный вычитающий. вход счетчика 2 и на синхровход регистра 6 контроля, разрешая запись контрольного кода, записанного в поле логических условий микрокоманды в регистр 6. В адресном поле считанной микрокоманды записан код адреса первой микрокоманды второй микропрограммы. В дальнейшем работа устройства будет аналогична описанной до момента считывания последней микро- команды последней микропрограммы.ЪПри считывании последней микрокоманды последней микропрограммы из блока 1 памяти микрокоманд значение кода адреса равно нулю. По заднему фронту синхроимпульса, поступающего на синхровход микрокоманд, осуществляется запись информации в регистр 5. ,Единичный сигнал с выхода 23.1 поступает на первые входы элементов И 13И 14. С выхода элемента 20 задержки поступает импульс -на второй вход элемента И 14. Единичный сигнал на выходе этого элементаразрешает запись контрольного кода, записанного в поле логических условий считанной мик"- рокоманды, в регистр 6 контроля. Кроме того, по этому сигналу происходит обнуление счетчика 2 и на выходе элемента ИЛИ-НЕ 18 появится сигнал "1", который поступает наатретий вход элемента И 13, поддерживая его в открытом состоянии, а также на управляющий вход коммутатора 10 адреса, запрещая передачу адреса по первому информационному входу и разрешая передачу по второму информационному входу.

Смотреть

Заявка

3647732, 30.09.1983

ХАРЬКОВСКОЕ ВЫСШЕЕ ВОЕННОЕ КОМАНДНО-ИНЖЕНЕРНОЕ УЧИЛИЩЕ ИМ. МАРШАЛА СОВЕТСКОГО СОЮЗА КРЫЛОВА Н. И

ХАРЧЕНКО ВЯЧЕСЛАВ СЕРГЕЕВИЧ, ТКАЧЕНКО СЕРГЕЙ НИКОЛАЕВИЧ, ТИМОНЬКИН ГРИГОРИЙ НИКОЛАЕВИЧ, САМАРСКИЙ ВИКТОР БОРИСОВИЧ, ТКАЧЕВ МИХАИЛ ПАВЛОВИЧ, БАРБАШ ИВАН ПАНКРАТОВИЧ

МПК / Метки

МПК: G06F 11/00, G06F 9/22

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

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

Код ссылки

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

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