Микропрограммный процессор
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
(19 паО 06 У 15/ ОСУДАРСПО ДЕЛ Я,1 Е ИЗОБРЕТ ОЛ ВУ К АВТОРСКОМ И 4 ЕННЫЙ КОМИТЕТ СССРЗОБРЕТЕНИЙ И ОТКРЫТИИ(71) Ордена Ленина институт кибернетики им. В.М.Глушкова(56) Патент США У 3859636,кл. С 06 Г 9/22, 1975.Авторское свидетельство СССРУ 1062712, кл, О 06 Р 15/ОО, 1984.Хассон С. Микропрограммное управление. - М.: "Мир", 1973.Авторское свидетельство СССР9 752341, кл. О 06 Р 9/28, 1980,Фельдман Б.Я Панферов Б.И., Громов В.С. Логическая организацияпроцессора СМ-ЗП. - Управляющие вы"числительные комплексЬ на базе малых ЭВМ: Труды ИЭУМ, вып. 68, 1978,с 923(54) МИКРОПРОГРАММНЫЙ ПРОЦЕССОР (57) Изобретение относится к области вычислительной техники и может быть использовано в цифровых вычислительных машинах с микропрограммным управлением. Цель изобретения - повышение быстродействия. Микропрограммный процессор содержит блок памяти данных, дешифратор, регистр адреса, операционный блок, блок микропрограммной памяти, блок формирования адреса и признака обращения, коммутаторФмикрокоманд, регистр микрокоманд, блок управления, блок .буферной памяти, коммутатор данных, регистр команд и коммутатор. Цель достигается указанной совокупностью признаков.1 э.п, ф-лы, 8 ил.1275457 Фиг. 7 оставитель Л,Ан ехред И.Ходанич Редактор О.Юрковец Подписное аказ 6563 2 Тираж 67 ВНИИПИ Государственного: комитета СССР по делам изобретений и открытий 13035, Москва, Ж-Э 5, Раушская наб., д./5 оизводстве олиграфическое предприятие нов Корректор И.Муск город, ул, Проектная, 45 1 О 15 20 25 30 35 40 45 50 55 Изобретение относится к вычислительной технике и может найти применение н цифровых вичислительных машинах с микропрограммным управлением,Целью изобретения янляется повышение быстродействия.На фиг, 1 представлена структурная схема микропрограммного процессора, на фиг. 2 - функциональнаясхема блока буферной памяти, нафиг, 3 - схема блока формированияадреса микрокоманде и признака обращения, на Фиг. 4 - схема операционного блока; на фиг. 5 - схемаблока управления, на Фиг, 6 - форматмикрокоманды, на фиг, 7. - алгоритмыполнения микропрограмм и формирования адресон микрокоманд, на Фиг,8 временные диаграммы работы микропрограммного процессора,Микропрограммный процессор.(фиг,1)содержит блок 1 памяти данных, дешифратор 2, регистр 3 адреса, содержащий старшую часть 4 и младшую часть5, в которую входит младший разряд6 регистра адреса, операционный блок7, блок 8 микропрограммной памяти,блок 9 формирования адреса микрокоманд и признака обращения, коммутатор О микрокоманд, регистр 11 микрокоманд, содержащий адресную 12 иоперационную 13 части и разряд 14признака перехода, блок 15 управления, блок 16 буферной памяти, коммутатор 17 данных и регистр 18 команд,содержащий разряд 19 признака перехода и коммутатор 20.Вход 21 кода команды процессорасоединен с пятым информационным входом блока 9 формирования адреса микрокоманд и признака обращения.Блок 16 буферной памяти (фиг. 2)содержит накопитель 22 памяти, разрядность которого равна двойной разрядности блока 1 памяти данных, состоящий из накопителя 23 старшего слова и накопителя 24 младшего слова,коммутатор 25 адреса, первый 26,второй 27,третий 28 и четнертый 29 элементы И, элемент ИЛИ ЭО и элементИЛИ 31,Входы 32 блока 16 являются первымвходом синхронизации, вход 33 - информационным входом блока 16, входы34 и 35 - соответственно первым ивторым адресными входами блока 16,входы 36 и 37 - соответственно третьим и вторым входами синхронизации блока 6, выходы 38 и 39 - соответственно вторым и первым входами блока 16.Блок 9 формирования адреса микро- команд и признака обращения (фиг,3) содержит регистр 40 адреса микрокоманд, состоящий иэ полей старшей 41 и младшей 42 частей адреса, дешифратор 43 старшей части адреса микро- команд, узел 44 мультиплексоров, состоящий из и групп 45 элементов ИЛИ, элемента НЕ 46, первой 47, второй 48, третьей 49, четвертой 50 и пятой 5 групп элементов И (и элементов И в группе), выходы которых соединены с входами соответствующих элементов групп ИЛИ 45, первые входы элементов И первой 47, второй 48, третьей 49, четвертой 50 и пятой 51 групп соединены соответстненно с первым 52, вторым 53, третьим 54, четнертым 55 и пятым 56 информационными входами узла мультиплексоров и являются соответствующими входами блока 9.Вторые входы элементов И первой 47, второй 48, третьей 49 и четвертой 50 групп соединены соответственно линиями 57-60 с первым управляющим входом 61 узла 44 мультиплексоров, являющимся первым управляющим входом блока 9. Третьи входы элементов И четвертой группы 50 и вторые входы элементов И пятой 51 группы соединены соответственно с вторым 62 и третьим 63 управляющими входами узла 44 мультиплексоров;и являют/ ся вторым и третьим упранляющими входами блока 9, Вход регистра 40 адреса микрокоманд соединен с выходами элементов ИЛИ группы 45, являющимися выходами узла 44 мультиплексоров, Выход регистра 40 адреса микрокоманд соединен с адресным выходом 64 блока 9. Выход 65 признака обращения блока 9 соединен с выходом дешифратора 43 старшей части адреса микрокоманд,. Вход элемента НЕ 46 соединен с третьим управляющим входом бЭ узла 44 мультиплексоров. Выход элемента НЕ 46 соединен с третьими входами элементов И первой 47, второй 48 и третьей 49 групп и четвертыми входами элементов И четвертой группы 50.Операционный блок 7 (фиг.4) содержит узел 66 первых регистров,узел 67 вторых регистров, коммутатор 68,. сумматор 69, узел 70 формированияпризнаков операции, сдвнгатель 71 и регистр 72 данных, Выход регистра 72 дайных соединен с первым информационным выходом 73 блока 7, второй информационный выход 74 которого сое-динен с входами регистра 72 данных, узла 66 первых регистров, узла 67 вторых регистров и выходом сдвигателя 71. Второй вход коммутатора 68 соединен с информационным входом 75 блока 7 обработки. Вход 76 кода операции блока 7 соединен с управляющими входами узлов 66 и 67 первых и вторых регистров, сумматора 69, коммутатора 68, сдвигателя 71, реги стра 72 данных, узла 70 формирования признаков операции. Выход узла 70 формирования признаков операции соединен с выходом 77 признака операции операционного блока 7. 20Блок 15 управления (фиг. 5) со-. держит генератор 78 синхросигналов, элемент ИЛИ 79, элементы И 80-84 и триггер 85, При этом первый выход генератора 78 синхросигналов соеди нен линией "Фаза 1" с первым входом элемента ИЛИ 79. Второй выход генератора 78 синхросигналов соединен линией "Фаза 2" с вторым входом элемента ИЛИ 79, первыми входами элементов 30 И 82 и 83 и линией 86 с шестым 32 и седьмым 87 выходами блока 15. Третий выход генератора 78 синхросигналов соединен:линией "Фаза 3" с первыми входами элементов И 80, 81 и 84 З и с синхровходом триггера 85. Выход элемента ИЛИ 79 и выходы элементов И 80 и 81 соединены соответственно линиями 88, 89 и 90 с третьим выходом 76 блока 15, 40Управляющие; сигналы адресации узлов 66 и 67 первых и вторых регистров поступают соответственно по шинам 91 и 92 на третий выход 76 блока 15 из соответствующих полей операционной части 13 регистра 11 микрокоманд, поступающих на вход.93 блока 15. Сигналы управления сумматором 69, сдвигателем 71, коммутатором 68 и узлом 70 формирования признаков 50 операции поступают соответственно по шинам 94 и 95 и линиям 96 и 97 иа третий выход 76 блока 15 иэ соответствующих : полей операционной части 13 регистра 11 микрокоманд, по- у ступающих на вход 93 блока 15. Вторые входы элементов И 80 и 81 соединенысоответственно линиями 98 и 99 с входом 93 блока 15. Второй вход элемента И 82 соединен линией 100 с входом 93 и с пятым выходом 101 блока 15Информационный вход триггера 85 соединен линией 102 с входом 93 блока 15, Вторые входы элементов .И 83 и 84 соединены соответственно линиями 103 и 104 с входом 93 блока 15. Выход элемента И 82 соединен линией 105 с шестым выходом 32, блока 15, Выход триггера 85 соединен линией 106 с четвертым 107 и шестым 32 выходами блока 15. Выходы элементов И 83 и 84 соединены соответственно с вторым 108 и первым 109 выходами блока 15, Сигналы управления блоком 9 формирования адреса микрокоманд и признака обращения поступают по линиям 57-60 на восьмой выход 61 блока 15 из соответствующих полей операционной части 13 регисТра 11 микрокоманд, поступающих на вход 93 блока 15.Микропрограммный процессор рабо" тает следуюптим образом.В текущиймомент времени на регистр 11 микрокоманд поступает очередная микрокоманда, Ее операционная часть.13 подается на вход блока 15 управления, который вырабатывает совокупность сигналов, управляющих работой блоков памяти данных 1, микропрограммной памяти 8, буферной па" мяти 16, регистра 3 адреса, операционного блока 7, блока 9 формирования адреса микрокоманд и признака обращения и регистра 18 команд, Адресная часть 12 микрокоманды поступа" ет на вход блока 9 формирования адреса микрокоманд и признака обращения, который формирует адрес очередной микрокоманды с учетом признаков ветвлений, поступающих по шине условий из блока 7 обработки. При формировании начальных адресов микропрограмм в блок 9 формирования адреса микрокоманд подается также код. операции командного слова из регистра 18 команд и адрес из младшей части 5 регистра 3 адреса.В зависимости от сформированного кода адреса очередной микрокоманды, который анализируется блоком 9 формирования адреса микрокоманд:и признака обращения, обращение происходит либо к блоку 8 микропрограммной памяти, либо по второму адресному входу к блоку 16 буферной памяти, В пео 1275457вом случае считанная информацияпоступает на регистр 11 микрокоманд,с блока 8 микропрограммной памяти через первый информационный вход коммутатора 10 микрокоманд по инверсному значению сигнала на выходе признака обращения блока 9 формирования адреса микрокоманд и признакаобращенияВо втором случае микроко Оманда считывается из блока 16 буферной памяти и поступает на регистр 11микрокоманд через второй и третийинформационные входы коммутатора 10по прямому значению сигнала на выхо" 5де признака обращения блока 9,После записи микрокоманды в регистр 11 микрокоманд в операционномблоке 7 и других блоках микропрограммного процессора выполняются задан Оные микрокомандной операции и анали"зируется разряд 14 признака перехода, Состояние "Логический ноль" этого разряда означает, что следующейбудет выполняться микрокоманда,адрес которой сформирован в блоке 9.При этом, как и в предыдущем случае,по адресу, сформированному в блоке9, обращение за следующей микрокомандой происходит либо к блоку 8микропрограммной памяти, либо к блоку 16 буферной памяти. Состояние Логическая единицан нразряда 14 признака перехода регистра 11 микрокоманд означает, что следующей будет выполняться команда,адрес которой задается адресной 12частью регистра 11 микрокоманд, Приэтом адрес команды из адресной час 40ти 12 регистра 11 микрокоманд пересылается через коммутатор 20 в определенный регистр узлов 66 и 67 регистров, отведенный под счетчик команд, а в блок 9 Формирования адреса микрокоманд пересылается Фиксированный адрес микрокоманды, общейдля всех команд, с входа 21 процессора. Эта микрокоманда является первой микрокомандой выборки команд и.задает обращение за командой к памя- оти, адрес которой пересылается в этоймикрокоманде со счетчика команд,находящегося в операционном блоке 7,на регистр 3 адреса. По входу 21 поступает константа из шин питания про-цессора, являющихся источниками нулевых и единичных логических сигналов,Коммутатор 20 при нулевом значении сигнала на его управляющем входе коммутирует на свой выход информацию со своего первого информационного входа, а при единичном значении сигнала на его управляющем входе - информацию со своего второгоинформационного входа. Дешифратор 2анализирует адрес и в зависимостиот его значения осушествляет обращение к блоку 1 памяти данных или по первому адресному входу к блоку 16 буферной памяти. В связи с этим команда считывается соответственнолибо с выхода блока 1 памяти данных, либо с выхода блока 16 буферной памяти через коммутатор 17 на регистр18 команд, Управление коммутатором17 осуществляется сигналами на егопервом и втором управляющих входах.При наличии единичного сигнала навтором управляющем входе коммутатора 17 последний осушествляет передачу информации с выхода блока 1 памяти данных. При наличии нулевогосигнала на втором управляющем входекоммутатора 17 последний осуществляет передачу четного или нечетногоолова из блока 16 буферной памяти в зависимости от состояния сигнала напервом управляющем входе коммутатора 17, определяющем четность или нечетность адреса блока 16 буфернойпамяти.При чтении команды из блока 1 .памяти данных в разряд 19 признака перехода записывается ноль. Считаннаякоманда выполняется под управлением микрокоманд, которые хранятся в блоке 8 микропрограммной памяти. При чтении микрокоманды из блока 8 микропрограммной памяти в разряд 14 признака перехода записывается ноль . Вконце выполнения команды вычисленный адрес следующей команды пересылается из операционного блока 7 нарегистр 3 адреса, Затем по управляющему сигналу из блока 15 управления в блоке 9 анализируется разряд 19 признака перехода. Состояние "Логический .ноль" этого разряда означает, что следующей будет выполняться команда, адрес которой находится на регистре 3 адреса, При этом в блоке 9 формируется адрес первой микрокоманды выборки, поступающий с адрес". ной части 12 регистра 1 микрокоманд. Затем выполняется первая микро 7 1275команда выборки, задающая обращение кпамяти за командой, После этого выполняетсявыборка и отработка команды как и в предыдущем случае,При выполнении команды, если втекущей микрокоманде задана необходимость обращения за данными или очередным командным словом, что определяет блок 15 управления, адрес изсоответствующего регистра операционного блока 7 подается на регистр 3адреса и далее на дешифратор 2, который в зависимости от значения адреса разрешает обращение к блоку 1 памяти данных или по первому адресному входу к блоку 16 буферной памяти,Через коммутатор 7 считанная информация поступает на регистр 18 команд, если считывается очередное командное слово, или в операционныйблок 7, если считываются данные подуправлением блока 15 управления.Состояние "Логическая единицаразряда 19 признака перехода, анализируемого по управляющему сигналуиз блока 15 управления в конце выполнения команды, означает, что следующей будет выполняться микрокоман.да, эквивалентная команде или группе команд. При этом адрес микрокоманды пересылается с регистра 3 ад-реса в блок 9 формирования адресамикрокоманд и признака обращения,В процессе выполнения этой микрокоманды анализируется разряд 14 признака перехода, и работа микропро- З 5граммного процессора происходит аналогично рассмотренному случаю.Таким образом, в блоке 1 памятиданных хранятся массивы данных ипрограмм базовой системы команд.Микропрограммы базовой системы команд хранит блок 8 микропрограммнойпамяти, Блок 16 буферной памяти содержит как данные и программы, таки микропрограммы, содержащие одну 45.или некоторое множество микрокоманди предназначенные для ускоренноговыполнения некоторого алгоритма.Блок 16 буферной памяти имеет. общуюсистему адресации как с блоком 1 50памяти данных, так и с блоком 8 микропрограммной памяти, При обращении по первому адресному входу блок16 буферной памяти является продолжением адресного пространства блока 1 памяти данных, а при обращениипо второму адресному входу " продолжением адресного пространства блока 8 микропрограммной памяти.При этом загрузка микропрограмм, как и любой другой информации, в блок 1 б буферной памяти осуществляется при обращении по первому адресному входу. Поскольку объем блока 16 буферной памяти невелик по сравнению с общим объемом памяти данных, он может быть выполнен в виде полупроводникового запоминающего устройства с;. высоким быстродействием; равным быстродействию блока 8 микропрограммной памяти. При обращении по второму адресному входу из блока 16 буферной памяти считывается двойное слово, что позволяет выбрать разрядность микрокоманды и блока 8 микропрограммной памяти, равную двойной разрядности блока 1 памяти данных.Блок 16 буферной памяти (фиг. 2) может работать в трех режимах: режим записи данных, команд или микро- команд; режим чтения данных или команд; режим чтения микрокоманд,Работа блока 16 буферной памяти в режиме записи возможна только по первому адресному входу 34 в случае, если дешифратор 2 определяет, что адрес обращения к памяти принадлежит блоку 16 буферной памяти, При этом единичный уровень сигнала с выхода дешифратора 2 поступает на третий вход 36 синхронизации блока 6 буферной памяти, разрешая прохождение адреса с первого адресного входа 34 блока 16 через коммутатор 25 на вход накопителя 22 и прохождение сигнала обращения памяти (чтения или записи) приходящего с шестого выхода блока15 управления на первый вход 32 синхронизации блока 16 и далее через элементы И 28 и ИЛИ 31 на вход выборки накопителя 22.Сигнал записи при этом проходит с шестого выхода блока 15 управления по первому входу 32 синхронизации блока 16, через элемент И 26 на вход строба записи накопителя 24 младшего слова или через элемент И 27 на вход строба записи накопителя 23 старшего слова в зависимости от разряда четности адреса, поступающего с управляющего выхода коммутатора 25, При его единичном значении открывается элемент И 26, а при нулевом - элемент И 27, Таким образом, при наличии сигнала записи, если заданный адрес принадлежит блоку 16 буферной памяти, по заданному на первом адрес 9 12 754 ном входе 34 адресу запись 1 вается информация с информационного входа 33, причем запись осуществляется либо в накопитель 23 старшего слова, либо в накопитель 24 младшего слова в зависимости от разряда четности адреса.Работа блока 16 в режиме чтенияданных или команд происходит следующим образом, В случае, если дешифратор 2 определяет, что адрес обращения к памяти принадлежит блоку 16,единичный уровень сигнала на третьемвходе 36 синхронизации блока 16разрешает прохождение адреса с первого адресного входа З 4 блока 16 через коммутатор 25 на вход накопителя22, а также разрешает прохождениесигнала обращения с первого входа 32синхронизации блока 16 через элементы И 28 и И 31 И 31 на вход выборки накопителя 22, На выходах 38 и 39 накопителя 22 появляется считанная информация,Режим чтения микрокоманд из блока16 буферной памяти выполняется в случае, когда дешифратор 43 блока 9 определяет, что сформированный на регистре 40 адрес микрокоманды принадлежит .блоку 16 буферной памяти, Приэтом единичный уровень сигнала с выхода 65 дешифратора 43 поступает навторой вход 37 синхронизации блока16, разрешая прохождение адреса микрокоманды с второго адресного входа35 блока 16 через коммутатор 25 навход накопителя 22 и прохождение сигнала выборки микрокоманд, проходящего с шестого выхода блока 15 управления на первый вход 32 синхронизацииблока 16 и далее через элемент И 29 ои ИЛИ 31 на вход выборки накопителя22, На выходах 38 и 39 накопителя 22появляется считанная микрокоманда,Блок формирования адреса микрокоманд и признака обращения (Фиг. 3) фработает следующим образом.Под управлением сигналов на управляющих входах 61-63 осуществляетсяприем адреса микрокоманды в регистр40 микрокоманд через группу 45 эле- Оментов ИЛИ с второго 53, третьего54, четвертого 55 и пятого 56 информационных входов или путем дизъюнктивного вписывания с первого 52 итретьего 54 информационных входов 55Единичный уровень сигнала на третьемуправляющем входе 63 разрешает формирование адреса микрокоманд с пя 57 10 того информационного входа 56, запрещая одновременно через элемент НЕ 46 формирование адреса с других направлений,.Дешифратор 43 осуществляет анализ содержимого старшей части 41 регистра 40 адреса микрокоманд и в случае его соответствия адресу, принадлежащему блоку 16 буферной памяти, Формирует единичный сигнал на выходе 65 признака обращения, С адресного выхода 64 выдается содержимоерегистра 40 адреса микрокоманд,Операционный блок 7 (фиг, 4) работает следующим образом,В зависимости от выполняемоймикрокоманды под воздействием управляющих сигналов на входе 76 кода операции блок осуществляет арифметико" 1логические операции на сумматоре 69 над одним или двумя операндами, поступающими из узлов 66 и 67 первых и вторых регистров либо с информационного входа 75, вырабатывает признаки результата в узле 70 Формирования признаков, осуществляет сдвигрезультата арифметико-логической операции на сдвигателе 71, заносит результат операции в узлы 66 и 67 первых и вторых регистров или в регистр72 данных, Результат операции выдается также через второй информационный выход 74 блока 7 на регистр 3 адреса, В микрокомандах перехода напрограммный уровень управления (раз.ряд 14 признака перехода которых равен единице), адресуемым регистром узлов 66 и 67 является счетчик команд, а остальные узлы (коммутатор 68, сумматор 69, сдвигатель. 7) настраиваются с входа 76 кода операциитаким образом, чтобы пропустить информацию с информационного входа 75 блока 7 через коммутатор 68, сумматор 69 и сдвигатель 71 на вход узлов 66 и 67 для ее записи. С первого информационного выхода 73 блока 7 выдается содержймое регистра 72 данных, а с выхода 77 признака результата операции - признаки результата операции.Блок 15 управления (фиг, 5) управляет работой других блоков процессора, Генератор 78 синхросигналов осуществляет синхронизацию предлагаемого устройства. На выходе элемента ИЛИ 79 вырабатывается строб выборки узлов 66 и 67 первых и вторых регистров. Строб записи в эти регистры. на линии 89 вырабатывается на выходе40 Временные диаграммы (фиг,8) и алгоритм формирования адресов и выполнения микропрограмм (фиг, 7) ил 1- 50 люстрируют выполнение последовательности микрокоманда - команда - микрокоманда,На фиг. 7 приняты следующие сокращения: МКО - микрокоманда с номе ром О, МК (И+1) - микрокоманда с номером (И+1), РАМ - регистр адреса микрокоманды, СчК - счетчик команд;)1 1275элемента И 80 при наличии высокогоуровня сигнала на линии 98 и появлении синхросигнала "Фаза 3, На выходе элемента И 81 вырабатывается стробзаписи в регистр 72 данныхпри нали 5чии высокого уровня сигнала на линии11 1199 и появления синхросигнала Фаза 3Йа выходе элемента И 82 вырабатывается сигнал записи в блок 16 буфернойпамяти при наличии высокого уровнясигнала на линии 100 и появлении синхросигнала "Фаза 2", На выходе элемента И 83 вырабатывается строб записи в регистр 3 адреса при наличиивысокого уровня сигнала на линии 103и появлении синхросигнала "Фаза 2".На выходе элемента И 84 вырабатывается строб записи в регистр 18 командпри наличии высокого уровня сигналана линии 104 и появлении синхросигнала фаза 3. На выходе триггера85 вырабатывается сигнал обращенияк памяти при наличии высокого уровня сигнала на линии 102 и появлениисинхросигнала "Фаза 31.25Назначение полей формата микрокоманды (фиг. 6) следующее,Поле П 1 определяет адрес регистра узла бб первых регистров, полеП 2 - функции сумматора 69. Полем ПЗопределяется запись в регистр 72данных, полем П 4 - запись в регистр3 адреса. Поле П 5 определяет микрооперации обращения к памяти. ПолеПб управляет коммутатором 68. ПолеП 8 разрешает выполнять анализ разря 35да 19 признака перехода регистра 18команд. Полем П 9 определяется запись в регистр 18 команд, Поле П 10определяет адрес регистра узла 67вторых регистров, поле П 1) - видсдвига на сдвигателе 71. Полем П)2определяется запись признаков в узле 70. Поле П 13 определяет адреснуючасть 12 регистра 11 микрокоманд,поле П 14 - разряд 14 признака пере- ф 5хода регистра 11 микрокоманд. 457 12РК - регистр команд, РА - регистрадреса.В предлагаемом микропрограммномпроцессоре пользователю доступеннаряду с программным микропрограммный уровень управления, сниженызатраты времени при переходе с одного уровня управления на другой. Возможность быстрого перехода с одногоуровня управления на другой позволяет гибко использовать преимуществаобеих уровней управления на различных этапах выполнения алгоритма, авозможность замены команды или нескольких команд эквивалентной микрокомандой ведет к повьштению быстродействия устройства,Использование микропрограмм в теле рабочих и ут 1 равляющих программзначительно повышает системную производительность за счет отсутствияциклов выборки, декодирования команди модификации счетчика команд, высокой операционной плотности микрокоманд, позволяющей параллельно выполнять несколько операций, в предлагаемом техническом решении одноймикрокомандой можно выполнять до шести операций (пересылку, арифметикологическую операцию, сдвиг, обращение к памяти, установку признакови проверку условий), а также за счетвозможности органиэации групповыхветвльний,Предлагаемый микропрограммныйпроцессор предоставляет программисту дополнительно к языку команд эффективный язык микрокоманд и обеспечивает простой механизм переходаот одного языка к другому.Формула изобретения1, Микропрограммный процессор, содержащий блок памяти данных, дешифратор, регистр адреса, операционный блок, блок микропрограммной памяти, блок формирования адреса микрокоманд и признака обращения, коммутатор микрокоманд, регистр микрокоманд, блок управления, блок буферной памяти, коммутатор данных и регистр команд, причем первый и второй выходы блока управления соединены соответственно с входами записи регистра команд и регистра адреса, третий выход блока управления соединен с входом кода операции операционного блока, четвертый и пятыйвыходы. блока управления соединены соответственно с первым входом синхронизации и входом записи-считывания блока памяти данных, шестой выход блока управления соединен с первым входом синхронизации блока буФерной памяти, седьмой и восьмой выходы блока управления соединены соответственно с входом чтения блока микропрограммной памяти и с первым 10 управляющим входом блока Формирования адреса микрокоманд и признака обращения, первый информационный выход операционноцо блока подключен к информационным входам блока памяти данных и блока буферной памяти, второй информационный выход операционного блока подключен к информационному входу регистра адреса, выход признака результата операции операционного блока соединен с первым информационным входом блока формирования адреса микрокоманд и признака обращения, выход старших разрядов регистра адреса соединен с входом дешифратора, выход первого младшего разряда регистра адреса подключен к первому управляющему входу коммутатора данных, выход ш младших разрядов (где ш - разрядность адреса бло 30 ка памяти данных) регистра адреса соединен с адресным входом блока памяти данных и с первым адресным входом блока буферной памяти, второй и третий информационные входы блока формирования адреса микрокоманд З 5 и признака обращения соединены соответственно с выходом поля операции регистра команд и с выходом поля адреса следующей микрокоманды регистра микрокоманд, адресный вы. ход блока формирования адреса микро- команд и признака обращения соединен с адресным входом блока микропрограммной памяти и с вторым адресным входом блока буферной памяти, выход признака обращения блока формирования адреса микрокоманд и признака обращения соединен с управляющим входом коммутатора микрокоманд и с вторымвходом синхронизации блока буферной памяти, третий вход синхронизациикоторого соединен с вторым входомсинхронизации блока памяти данных,с вторым управляющим входом коммутатора данных и с выходом дешифратора 55выход блока памяти данных подключенк первому информационному входу коммутатора данных, выход которого соединен с информационным входом регистра команд, выход блока микропрограммной памяти соединен с первым информационным входом коммутатора микрокоманд, второй информационный вход которого соединен с первым выходом блока буферной памяти и с вторым информационным входом коммутатора данных, третий информационный вход коммутатора микрокоманд соединен с вторым выходом блока буферной памяти и с третьим информационным входом коммутатора данных, выход коммутатора микрокоманд подключен к информационному входу регистра микро- команд, выход поля операции которого соединен с входом блока управления, о т л и ч а ю щ и й с я тем, что, с целью повышения быстродействия, в него введен коммутатор, при этом выход признака перехода регистра команд соединен с вторым управляющим входом блока формирования адреса микрокоманд и признака обращения, четвертый информационный вход которого соединен с выходом младших разрядов регистра адреса, третий управляющий вход блока формирования адреса микрокоманд и признака обращения подключен к выходу признака перехода регистра микрокоманд и к управляющему входукоммутатора, первый и второй информационные входы коммутатора соединены соответственно с выходом коммутатора данных и с выходом поля адреса следующей микрокоманды регистра микрокоманд, пятый информационный вход блока Формирования адреса микрокоманд и признака обращения является входом кода команды процессора, выход коммутатора соединен с информационным входом операционного блока.2, Процессор по п. 1, о т л ич а ю щ и й с я тем, что блок формирования адреса микрокоманд и при знака обращения содержит регистр адреса микрокоманд, дешифратор старшей части адреса микрокоманд и узел мультиплексоров кода адреса микрокоманд, первый, второй и третий управляющие входы узла мультиплексоров "являютСя соответственно первым, вторым и третьим управляющими входами блока, первый, второй, третий, четвертый и пятый информационные входы узла мультиплексоров являются соответственно первым, вторым, третьим; четвертым и пятым информационнымивходами блока, выход уэла мультиплексоров соединен с информадионным входом регистра адреса микрокоманд,выход старших раэрядов регистра адресамикрокоманд соединен с входом дешифратора старшей части адреса микрокоманд, выход регистра адресамикрокоманд является адресным выходом блока, выход дешифраторастаршей части адреса микрокомандявляется выходом приэнака обращения блока.
СмотретьЗаявка
3894841, 11.05.1985
ОРДЕНА ЛЕНИНА ИНСТИТУТ КИБЕРНЕТИКИ ИМ. В. М. ГЛУШКОВА
ИВАНОВ ВЛАДИМИР АНДРЕЕВИЧ, СЫРОВ ВИКТОР ВАЛЕНТИНОВИЧ, ЧЕРЕВКО АЛЕКСЕЙ АЛЕКСАНДРОВИЧ
МПК / Метки
МПК: G06F 15/00
Метки: микропрограммный, процессор
Опубликовано: 07.12.1986
Код ссылки
<a href="https://patents.su/12-1275457-mikroprogrammnyjj-processor.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммный процессор</a>
Предыдущий патент: Многоканальное устройство для сопряжения абонентов с каналами ввода-вывода эвм
Следующий патент: Однородная вычислительная система
Случайный патент: Антикоррозионное покрытие