Микропрограммное устройство управления
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
СОЮЗ СОВЕТСКИХСОЦИАЛИСТИЧЕСНИРЕСПУБЛИК 5)4 С 06 Г 9/ . ОПИСАН Н АВТОРСНО ИЕ ИЗОБРЕТЕН ТЕЛ олова ство СССР2, 1980.во СССР2, 1977. ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССРПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ(56) Авторское свидетелУ 955057, кл. С 06 Г 9/Авторское свидетельсМ 732871, кл. С 06 Р,9/Патент США 11 4131943кл. 364-200, 1978,(54)(57) МИКРОПРОГРАММНОЕ УСТРОЙСТВО УПРАВЛЕНИЯ, содержащее регистркоманды, память начальных адресов,счетчик адреса микрокоманд, мультиплексор, память микрокоманд, регистрмикрокоманд, регистр управления,шифратор управляющих сигналов, генератор синхроимпульсов и дешифратормикроопераций, причем информационный вход регистра команды являетсявходом кода команды устройства, выход регистра команды соединен с адресным входом памяти начальных адресов, первая группа выходов котороисоединена с первой группой информационных входов мультиплексора,вторая группа информационных входовкоторого соединена с.группой выходовшифратора управляющих сигналов, второй выход которого соединен с управляющим входом мультиплексора, выходкоторого соединен с информационнымвходом регистра адреса микрокоманд,вход записи и счетный вход которогосоединены соответственно с первым ивторым выходами генератора синхроимпульсов, вход запуска которого сое 80117045 динен с третьим выходом шифратора управляющих сигналов, первый вход которого является входом логическихусловий устройства, второй вход шифратора управляющих сигналов соединенс первым выходом регистра управления, группа информационных входовкоторого соединена с второй группойвыходов памяти начальных адресов,выход регистра адреса микрокомандсоединен с адресным входом памятимикрокоманд, выход которой соединен с информационным входом регистра микрокоманд, вход записи которого соединен с .третьим выходом генератора синхроимпульсов, выход кодамикрооперации регистра микрокомандсоединен с первым входом дешифратора микроопераций, второй вход которого соединен с вторым выходом регистра управления, выход дешифратора микроопераций является выходомустройства, о т л и ч а ю щ е е с ятем, что, с целью сокращения оборудования за счет уменьшения объемапамяти микрокоманд, оно содержит память переходов, сдвиговый регистр,коммутатор и блок управления следующим адресом, содержащий шифратор игруппу коммутаторов, причем выход регистра команды соединен с адреснымвходом памяти переходов, выход которой соединен с первым информационнымвходом коммутатора, второй информационный вход которого соединен с выходом первого кода адреса регистрамикрокоманд, выход второго кода адреса которого соединен с первыми информационными входами мультиплексоровгруппы, вторые информационные входы117 которых соединены с выходом сдвигового регистра, информационный вход которого соединен с выходом коммута, тора, управляющий вход которого соединен с первым выходом кода режима регистра микрокоманд, второй, третий и четвертый выходы кода режима которого соединены соответственно с вхо 1 дом записи сдвигового регистра, входом управления сдвигом сдвигового регист 0457ра и входом сброса сдвигового регистра, выход кода ветвления регистрамикрокоманд соединен с третьим вхо-дом шифратора управляющих сигналови с входом шифратора, выходы которого соединены с управляющими входамимультиплексоров группы, выходы которых соединены с третьей группой информационных входов мультиплексора3Изобретение относится к вычислительной технике и может быть использовано в качестве устройства управления вычислительными машинами среднего быстродействйя. 5Целью изобретения является сокращение оборудования за счет уменьше- ,ния объема памяти микрокоманд.На фиг. 1.представлена структурная схема микропрограммного устройства управления; на фиг. 2 - функциональная схема блока управления следующим адресом; на фиг. 3 - таблица значенийполя управления переходом и поляследующего адреса для микрокоманд некоторой микропрограммы; на фиг. 4- таблица начальных адресов и начальных состояний сдвигового регистра, ,соответствующих кодам операций; на фиг. 5 - графсхема микропрограммы некоторой группы команд.Микропрограммное устройство управления (фиг. 1) содержит регистр 1 1команды, память 2 начальных адресов,25 регистр 3 адреса микрокоманд, мульти:.плексор 4, память 5 микрокоманд, счетчик 6 адреса микрокоманд, ре,гистр 7 управления, шифратор 8 управляющих сигналов, генератор 9 синхро 1 импульсов, дешифратор 10 микроопе аций, память 1 1 переходов, сдвиговыйрегистр 12, блок 13 управления. следующим адресом, коммутатор 14, выход 15, вход 16 кода командыи вход 17 логических условий.35Блок управления следующим адресом13 (фиг. 2) содержит группу коммутаторов 181-18 и шифратор 19. Работу устройства рассмотрим на примере микропрограммы реализации некоторой группы команд (фиг. 3-5).Микропрограммное устройство управления.работает следующим образом,В исходном состоянии все регистры находятся в нулевом состоянии. Работа микропрограммного устройства управления начинается по приему команды на его вход 17 и записи ее в регистр 1 команды. Код операции команды из регистра 1 команды поступает, на вход. памяти 2 начальных адресов и памяти 11 переходов. В соответст- вии с этим кодом, который используется как адрес для памяти 2 начальных адресов и памяти 11 переходов, память 2 начальных адресов выдает адрес первой микрокоманды, который через мультиплексор 4 поступает на вход счетчика 3 адреса микрокоманды Одновременно в регистр 7 из памяти 2 начальных адресов записываются управляющие биты, определяющие режим выполнения данной команды, а из памяти 11 переходов в сдвиговый регистр 12. через его второй информационный вход записывается соответст вующая данной команде информация о переходах, зависящих только от кода операции выполняемой команды, а не от вычисляемых условий.Адрес первой микрокоманды из счетчика 3 адреса микрокоманды поступает на адресный вход памяти 5 микрокоманд, из которой выбранная микрокоманда записывается в регистр,б микрокоманды. Соответствующие поляЪмикрокоманды из регистра 6 микро- команды поступают на вход дешифратора 10 микроопераций, на выходах которого формируются сигналы управления, соответствующие микрооперациям данной микрокоманды, которые поступают на выход 15 устройства.Прием адреса в счетчик 3 адреса микрокоманды и прием микрокоманды в регистр 6 микрокоманды осуществля О ется по сигналам, вырабатываемым генератором 9 синхроимпульсов, управление работой которого осуществляется сигналом, поступающим на его вход с второго управляюшрго выхода 15 шифратора 8. В зависимости от значения сигнала на входе генератор 9 синхроимпульсов вырабатывает либо синхросигнал, по которому счетчик Э адреса микрокоманды принимает инфор мацию с выхода мультиплексора 4 лиУ 1 бо синхросигнал, по которому счетчик 3 адреса микрокоманды работает в счетном режиме.и модифицирует свое значение на + 1 . Остальные цепи 25 синхронизации условно не показаны.Рассмотрим пример, когда в регистр 1 команды поступила команда с кодом операции "5 Е" (фиг. 4). По адресу"5 Е" (шестнадцатиричному) иэ памяти 2 З 0 начальных адресов выбирается адрес первой микрокоманды "01", который записывается в счетчик 3 адреса микро- команды. Из памяти 11 переходов по адресу "5 Е" читается и записывается в сдвиговый регистр 12 код "000 0110" (двоичный)По адресу, хранящемуся в счетчике 3 адреса микрокоманды иэ памяти 5 микрокоманд считывается микрокоманда и поступает в регистр 640 микрокоманды. Каждая микрокоманда имеет поле управления переходом, старший разряд которого определяет наличие перехода, остальные разряды определяют количество анализируемых раз рядов сдвигового регистра 12 формирования следующего адреса и величину, на которую осуществляется последующий сдвиг регистра 12. В приведенном примере для этих целей отведено два разряда, что обеспечивает возможность замещения до трех разрядов адреса и управления вставлением по восьми направлениям.Кроме того, размер сдвигового регистра 12 принят равным восьми двоичным разрядам (фиг, 4). Это обеспечивает возможность задания 2 =256 1170457 , 4различных вариантов последовательности выполнения микрокоманд в микропрограмме. Если этой величины недостаточно, а также если в ходе выпол-нения микропрограммы требуется изменить содержимое сдвигового регистра12, то для таких случаев в устройстве предусмотрена возможность записиновой информации из поля константымикрокоманды, хранящейся в регистре6 микрокоманды, которая с соответствующего выхода регистра 6 микрокоманды поступает на информационныйвход сдвигового регистра 12 черезкоммутатор 14.В первой выбранной микрокоманде(в рассматриваемом примере) поле управления переходом содержит код"000. Наличие первого нуля в полеуправления переходом, подаваемого на1соответствующий вход шифратора 8,обеспечивает выработку шифраторомсоответствующего управляющего сигнала, поступающего на вход генератора9 синхроимпульсов, который вырабатывает синхросигнал, по которому счетчик 3 адреса микрокоманды модифицирует свое значение на + 1. В данномпримере в нем установится значение"02" (шестнадцатиричное). По соответствующему синхросигналу микрокоманда, прочитанная из памяти 5 микрокоманд, будет вновь принята в регистр6 микрокоманд и передана на дальнейшее выполнение.Если в микрокоманде в поле управления переходом старший разряц содержит "1", то шифратор 8 вырабатывает сигнал управления генератором 9синхроимпульсов, по которому последний, в свою очередь, вырабатываетсинхросигнал, по которому счетчик 3адреса микрокоманд принимает адресследующей микрокоманды с выходамультиплексора 4. В рассматриваемомпримере после того, как в регистре 6микрокоманды будет принята микрокоманда, имеющая адрес "03", адресследующей микрокоманды будет формироваться следующим образом (фиг.3-5)Уровень " 1 в старшем разрядеполя управления переходом, поступая на вход шифратора 8, обеспечива"ет прием следующего адреса в счетчикадреса микрокоманды с выхода мультиплексора 4 (рассматриваются толькобезусловные переходы и переходы покоду операции), Кроме того, на соот.000 . ОХХ 000 100 100 101 110 110 ветствующем выходе шифратора 8 выра батывается код, который поступает на управляющий вход мультиплексора 4 и разрешает передачу на выход информации с третьего информационного . входа, т,е. с выхода блока 13 управления следующим адресом. На первый ийформационный вход блока управления следующим адресом поступает код из поля следующего адреса (в данном, случае "04" - фиг. 3,5), Код из поля управления переходом (.110) поступает на управляющий вход блока 13 управления следующим адресом, т.е. на вход шифратора 18, на выходе которого формируются потенциалы в соответствии с табл. 1.Таблица 1 Вход (выход поля уп- Выходравления переходом) В соответствии свырабатываемыми сигналами посредством коммутаторов 18 - 18 в приведенном примере реализаг 1ции п=3 )в информации, поступающей из поля следующего адреса микрокоманды, хранящейся в регистре 6 микрокоманды замещается несколько младших разрядов содержимым младших разрядов сдвигового регистра 12 (при выполнении микрокоманды с адресом "03" в поле следующего адреса 041 замещается два младших разряда на ,соответствующие разряды сдвигового регистра 12, в регистр адреса микро- команды поступает соответственно код 00000110 =06 . Поэтому следующей выполняемой микрокомандой после микрокоманды с адресом "03" при выполнении команды с кодом операции "5 Е" будет микрокоманда с адресом 06). формирование адреса следующей микро- команды происходит одновременно с выполнением текущей. Таким образом, при переходах по коду операции (т,е. в зависимости от содержимого сдвигового регистра 12) не вносится задержек в работу устройства. Одновременно с чтением микрекоманды по сформированному адресу содержимое сдвигового регистра 12 сдвигается на столько разрядов, сколько былоиспользовано при формировании следую,щего адреса (после выполнения микрокоманды с адресом "03", чтения микрокоманды с адресом "06" и сдвига10 регистра 12 в последнем окажетсяновый код, равный 0000 0001),При работе устройства описаннымобразом последовательность выполнениямикропрограммы команды с кодом операции "5 Е" будет следующая (указанытолько адреса выполняемых .микрокоманд): 01-02-03-06-09-0 А-ОО, а,например, для команды с кодом операции ".5 Г" - 01-02-03-04-ОВ 20 (фиг. 3-5) .Если выполняемая микрокоманда является условным переходом, то признакусловного перехода и информация обанализируемых условиях поступает с25 выхода регистра 6 микрокоманды и подается на соответствующий вход шифра- .тора 8. Управляющий сигнал с третьего выхода шифратора 8 приостанавливает работу генератора 9 синхроимЗ 0 пульсов до получения внешних вычисляемых условий с входа 16 устройства.В зависимости от значения внешнихусловий и информации об анализируемыхусловиях шифратор 8 либо вырабатываеткод, который поступает на управляющийвход мультиплексора 4 и разрешает передачу на выход информации с третьегоинформационного входа мультиплексора 4, и управляющий сигнал, по .кото,щ рому генератор 9 синхроимпульсовзапускает прием адреса в счетчик 3адреса микрокоманды с выхода мультиплексора 4 (если условие перехода выполнено), либо вырабатывает управля 45 Ьщии сигнал, по которому генератор 9синхроимпульсов вырабатывает синхросигнал, запускающий модификациюсчетчика 3 адреса микрокоманды на"+1". Разряд регистра 7, значение которого управляет переходами, определяет, по какому значению ("0" или"1") сигнала внешнего условия осуществляется переход,Если в регистр 1 команд принята привилегированная команда (т.е. команда, выполняемая только в управля-. ющих программах и недоступная пользователю), то в соответствующий раз- и-А- А А АА 0 А -0 А 0 1 - А 0 А 01 7 1170 ряд регистра 7 записывается "1". Если на вход 16 устройства поступает признак того, что привилегированная команда разрешена, то шифратор 8 вырабатывает код, разрешающий переда-чу начального адреса микропрограммы с второго выхода памяти 1 начальных адресов через мультиплексор 4 на выход счетчика 3 адреса микрокоманды.Далее микропрограмма выполняется 10 обычным порядком как описывалось ранее. В противном случае, так как выполнение привилегированной команды запрещено, шифратор 8 вырабатывает начальный адрес микропрограммы обра ботки прерывания, который с соответствующего выхода шифратора 8 поступа ет на второй информационный вход мультиплексора 4, и соответствующий 457 8код, разрешающий запись этого адреса с выхода мультиплексора 4 в счетчик 6 адреса микрокоманды. Далее идет выполнение микропрограммы обработки прерывания. Выход на микропрограмму обработки перерывания воз можен также по сигналу внешнего пре- рывания, который с входа 16 устройст. - ва поступает на соответствующий вход шифратора 8.Блок 8 может быть реализован любым из известных способов синтеза комбинационных схем по таблице истинности (табл. 2).В табл. 2 принято четыре типа переходов: 00 - безусловный переход;01 - условный переход; 10 - не используется; 11 - переход по концу команцы.-А ровождаетсловия.Признактсутствов я признаком выр ки ыработь, если слови с тав которо устройство входит предлагаВжестко синхрони усл чем признаквыр.усл. Выбор условия обеспечивает выбор любой комбинации из двух внеш них условий. ля примера количество внешнихий принято равным двум, приыработка внешних условий совил. команда разреш. При- Перевил, ходы ко" по манды вып.ВВылусл. Продолжение табл,2 Адрес бр. ре- ыве может в сосмоеирована
СмотретьЗаявка
3603453, 10.06.1983
ПРЕДПРИЯТИЕ ПЯ М-5339
РАДКЕВИЧ АЛЕКСАНДР ЛЕОНИДОВИЧ, ГОЛОВАН АЛЕКСАНДР КУЗЬМИЧ, ЗАБЛОЦКИЙ ВЛАДИМИР НИКОЛАЕВИЧ
МПК / Метки
МПК: G06F 9/22
Метки: микропрограммное
Опубликовано: 30.07.1985
Код ссылки
<a href="https://patents.su/9-1170457-mikroprogrammnoe-ustrojjstvo-upravleniya.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления</a>
Предыдущий патент: Устройство программного управления
Следующий патент: Логический анализатор
Случайный патент: Преобразователь время-амплитуда