ZIP архив

Текст

Союз СоветскихСоциалистическихРеспубпии ОП ИСАНИЕИ ЗОБРЕТЕ Н,ИЯК АВТОРСКОМУ СВИДЕТЕЛЬСТВУ(23) Приоритет Опубликовано 1 5.07.82. Бюллетень26 вв делам изобретений и открытий(54) МИКРОПРОЦЕССОР 1Настоящее изобретение относится квычислительной технике и может бытьиспользовано при построении процессоровЭВМ различных классов и, в частности,микропрог раммируемых эмулирующих одно 5кристальных микропроцессоров.Известны микропрограммные устройствауправления, построенные с использованиемматрицы памяти микропрограмм и содержащие регистр адреса микрокоманд, матри 1 оцу памяти, регистр микрокоманд и дешиф- .ратор микрокоманд 3.В качестве памяти микропрограммиспользуется обычно пассивное запоминающее устройство или программируемая логическая матрица.Известны также микропрограммные устройства управления, использующие для хранения микропрограмм две матрицы памяти (21,20Недостатком укаэанных устройств является большой обьем памяти микропрограмм при реализации достаточно мощнойсистемы команд. Наиболее близким к предлагаемому является однокристальный микропроцессор, содержащий постоянное запоминающее устройство с управляющей микропрограммой, регистр команд, арифметико логический узел, регистры, первую группу элементов И, регистр адреса микрокоманд, матрицу памяти, регистр микрокоманд, дешифратор микрокоманд, входную информационную шину процессора, шину условий, шину адреса микрокоманд, выходную шину процессора .Микропроцессор работает следующим образом.Иэ внешней памяти поступает управ ля 1 ощее слово (команда), которое через информационную шину передается в ре-гистр команд, По содержимому регистра команд с помощью первой группы элементов И через шину адреса микрокоманд в регистре формируется начальный адрес микропрограммы, соответствующий принятой команде, В соответствии с этим адресом из матрицы памяти в регистр3 9437выбирается микрокоманда, операционнаячасть которой расшифровывается дешифратором микрокоманд, При линейной последовательности микрокоманд часть словамикрокоманды из регистра по связи ишине передается в регистр и определяетадрес следующей микрокоманды. При ветвленни в микрокоманде адрес следующеймикрокоманды формируется на шине, например, логическим рвжением кодов оусловий ветвления, проходящих через первую группу элементов И и адреса, указанного в текущей микрокоманде. На информационные входы первой группы элемен-.тов И поступают сигналы внешних условий 15со входа, код команды с регистра, интерпретируемый как начальный адрес соответствующей микропрограммы, и признакирезультата выполнения арифметико-логических операций с выхода арифметикологического устройства,На управляющие входы первой группыэлементов И поступают микроприказы свыходов дешифратора микрокоманд,После выполнения микропрограммы врегистре устанавливается адрес микрокома нды, формирующей микроприказы чтения из внешней памяти следующей команды и начала интерпретации ее кода 3.Недостатками известного устройстваявляются большой объем матрицы памятимикропрограммы и ограниченные функциональные возможности, заключающиеся втом, что устройство реализует лишь набормикропрограмм, существенно ограниченный35объемом матрицы памяти и недостоточноебыстродействие,Целью изобретения является повышениебыстродействия.Поставленная цель достигается тем,40что в микропроцессор введены счетчикрегистр адреса внешних микрокоманд, ре-.гистр внешних микрокоманд, вторая группа элементов И, третья группа элементовИ, дешифратор внешних микрокоманд, об 45щий дешифратор, четвертая группа элементов И, пятая группа элементов И,первая и вторая группа элементов ИЛИ,шестая группа элементов И, причем первая группа входов счетчика-регистра адреса внешних микрокоманд подключена к выходам элементов И четвертой группы, вторая группа входов подключена к выходамэлементов И второй группы, а третьягруппа входов счетчика-регистра адресавнешних микрокоманд и первые входыэлементов И пятой группы подключены кпервой группе выходов дополнительных микФмикроприказов регистра микрскоманд, а 34выходы счетчика-регистра адреса внешнихмикрокоманд подключены к многоразрядному информационному выходу микропроцессора, группа входов регистра внешнихмикрокоманд подключена к информационнымвходам микропроцессора, первая группавыходов регистра внешних микрокомандподключена к первым входам элементов Ивторой и третьей групп вторая группавыходов регистра внешних микрокомандподключена ко вторым входам элементов И пятой группы, вторые входы элементов И второй группы подключены квторой группе выходов дополнительныхмикроприказов регистра микрокоманд,вторые входы элементов И третьей группыподключены к третьей группе выходов дополнительных микроприказов регистрамикрокоманд, четвертая группа выходовдополнительных микроприказов регистрамикрокоманд подключена ко вторым входам элементов И четвертой группы, выходы элементов И третьей группы подключены ко входам дешифратора внешних микрокоманд и к первой группе входов общего дешифратора, выходы дешифратора внешних микрокоманд подключенык первым входам элементов ИЛИ первойгруппы, вторые входы которых подключены к выходам общего дешифратора, атретьи входы подключены к выходам дешифратора микрокоманд, первые выходыэлементов ИЛИ первой группы подключены ко вторым входам соответствующих.элементов И первой группы, а втораягруппа выходов является выходами основных микроприказов микропроцессора, выходы элементов И первой группы подключены к первым входам элементов ИЛИвторой группы, выходы которых подключены к первой группе входов элементов Ишестой группы, вторые входы элементовИ шестой группы подключены к пятойгруппе выходов регистра шестой группы И,а также выходы элементов И пятойрутины через шину адреса микрокоманд подключены ко входам регистра адреса микрокоманд и ко вторым входам элементов И третьей грутпы, шестая группа выходов регистра микрокоманд подключена ко входам дешифратора микрокоманди ко второй группе входов общего дешифратора микропроцессора.На чертеже изображена схема предлагаемого устройства,Схема включает регистр команд 1,арифметика.логическое устройство 2, регистры 3, первую группу элементов И 4,регистр адреса микрокоманд 5, матрицуи пятой группы элементов И 23 черезшину адреса микрокоманд 11 подключены ко входам регистра адреса микрокоманд 5, и ко вторым входам четвертой группы элементов И 23, выход которогочерез матртшу памяти 6 подключен ковходу регистра микрокоманд 7, шестая группа выходов регистра микрокоманд 7подключена ко входам дешифратора микрокоманд и ко второй группе входов общего дешифратора 21, первая группа манд 20, а выход общего дешифратора 20подключен ко второй группе входов первой группы элементов ИЛИ 17, первая грутпта выходов первой группы элементов ИЛИ 1 7 подключена к выход:м дешифратора внешних микрокоманд О, атретья группа входов подключена тс выходам дешифратора микрокоманд 8, первая группа выходов первой группы элегруппе входов первой группы элементов И 4, а вторая группа выходов являеъся основными микроприказами 24, первая группа выходов дополнительных микроприказов 25 регистра микрокоманд 7 подключена к первым входам пятой группыэлементов И 23 и к третьей группе вхо-. дов счетчика-регистра адреса внешнихмикрокоманд 15, вторая группа выходовдополнителыых микроприказов 26 регистра микрокоманд 7 подключена ко второйгруппе входов второй группы элементов И 18, третья группа выходов дополнитель. ных микроприказов 27 регистра микрокоманд 7 подключена ко вторсй группевходов третьей группы элементов 1 19,четвертая группа выходов дополнительныхмикроприказов 28 подключена к первымвходам четвертой группы элементовИ 22, высоды четвертой группы элементов И 22 подклточеньт к первой группевходов счетчика-регистра адреса внешнтпс микрокоманд 15, вторая группа вхо- дов которого подключена к выходам второй группы элементов И 18. Схема работает следуюцим образом.В матрице памяти 6 хранятся внутренние микропрограммы, реализующие, например, основную систему команд процессора либо ее подмножество, Состав этой системы команд или ее подмножества выбирается исходя из функциональных требований, предьявляемътх к процессору и технологических организаций. 5 943734 6памяти 6, регистр микрокоманд 7, дешифратор микрокоманд 8, входную информационную шину микропроцессора 9, шинуусловий микропроцессора 10, шину адреса микрокоманд 11, информационную выходную шину микропроцессора 12, входсигналов прерывания и других внешнихусловий микропроцессора 13, связь регистра микрокоманд с шестой группой элементов И 14, счетчик-регистр адреса внеш- тоних микрокоманд 15, регистр внешнихмикрокоманд 16, первую грутшу элемен-входов которого подтслючена к выходамтов ИЛИ 17, вторую группу элементов третьей группы элементов И 19 и коИ 18, третью группу элементов И 19, входам дешифратора внешних микрокодешифратор внешних микрокоманд 20, т 5общий дешифратор 21, четвертую группуэлементов И 22, пятую группу элементов И .23, выходы мнкропрнказов 24,25-28 - первая, вторая, третья и четвер тая группы выходов дополнительных микро.щприказов, соответственно, вторую группуэлементов ИЛИ 29 - шестую группуэлементов И 30.Входы регистра адреса микрокоманд 5 ментов ИЛИ 17 подключена ко второйшиной адреса мтткрокоманд 11, соединены 25с выходами четвертой группы элементовИ 22 второй группы элементов ИЛИ 29,а выходы подключены ко входам матрицыпамяти 6, .выходы которой подключены ковходам регистра микрокоманд 7 .30Информационные входырегистра команд 1, арифметико-логического устройства 2, общих регистров 3 и регистравнешних микрокоманд 16 подключены квходной информационной шине микропрсь 35цессора 9, выходы регистров 3 арифметико-логического устройства 2, счетчика-регистра адреса внешних микрокоманд 15 подключевы к информационной";выходной шине микропроцессора 1 2.Пе.рвые выходы регистра внешних мйкрокоманд 16 подключены к первым группам входов второй группы элементов И 18и третьей группы элементов И 19, вторая группа выходов подключена ко вхо 45дам пятой группы элементов И 23,Вход сигналов прерываний и другихвнешних условий микропроцессора 13, атакже выходы регистра команд 1, арииетико-логического устройства 2, черезшину условий микропроцессора подклточены к первым входам первой группы элементов И 4, выходы которых через вторую группу элементов ИЛИ 29 подключены к первой группе входов шестойгруппы элементов И 30, вторая группавходов которой подключена к пятой группе выходов регистра микрокоманд 7, авыход шестой группы элементов И 307 9437Микропрограммы, хранящиеся во внешней памяти, реализуют команды, дополняющие основное подмножество системыкоманд процессора до полнрго или пред- .ставляющие собой самостоятельную и отличную от основной систему команд.Микрокоманды микропрограмм дополнительных команд эмулируются (выполняются) с помощью микропрограммы, хранящейся в матрице памяти 6. 1 ОМножество внутренних и множествовнешних микрокоманд имеют общий базисмикроприкаэов, соответствующий структуре и функционированию процессора.По внешнему сигналу в регистрах 5 15и 15 устанавливаются начальные адреса,регистр 16 в "нулевое" состояние.По начальному коду регистра 5 (вобщем случае отличному от "нулевого )с выходов матрицы 6 снимается и записывается в регистр 7 код микрокоманды, который затем расшифровываетсяцещнфратором 8 и 21 и реализует чтениеиэ внешней памяти и интерпретацию команды. 25Микрокоманда на регистре 7 состоитиэ опереционной н адресной частей. Операционная часть представляет собой совокупность независимо закодированных полей основанных и.дополнительных микро- З 0приказов, первые из которых декодируются дешифраторами 8 и 21.Дешифратордополнительных микроприказов на чертеже не показан. Дополнительные микроприказы в микрокомандах, реализующихосновные команды процессора, не вырабатываются, Адресная часть (поле) содержит код адреса следующей микрокоманды или базовый адрес группы следующих мнкрокоманд,В соответствии с основными микроприкаэами читается из внешней памяти и записывается в регистр 1 код команды,Микроприказы условий с выходов элементов ИЛИ 17 открывают соответствующиеэлементы И первой группы 4,Адрес следующей микрокоманды формируется на элементах ИЛИ 29 и элементах И 30, например, логическим сложением разрядов команды, прошедших через открытые элементы И 4 и элементы50ИЛИ 29 и кода базового адреса с выходов 14 регистра микрокоманд 7. Сформированный адрес записывается в регистр 5 и является адресом первой внутренней микрокоманды исполнительной час- фти одной из основных команд, адресомвнутренней микрокоманды интерпретирующей внешнюю микрокоманду или адресом 34 8микрокома нды, продолжающей интерпретацию команды.После, окончания интерпретации команды устройство переходит к выполнению внутренней микропрограммы, содержащейся в матрице памяти 6 исполнительной части одной иэ основных команд либо к выполнению микропрограммы, записанной во внешней памяти.При выполнении внутренней микропрограммы исполнительной части одной из основных команд работа устройства по существу не отличается от работы известных микропрограммных устройств управления и происходит аналогично описанной при интерпретации команды.При переходе к выполнению команды интерпретации внешней микрокоманды в регистре адреса 5 устанавливается "нулевой" код адреса, в соответствии с которым в регистр 7 записывается код микро- команды, содержащей базовый адрес группы следующих микрокоманд, основные микроприказы и дополнительный микроприказ 25. В соответствии с основными микро- приказами выполняется чтение внешней микрокоманды иэ внешней памяти по адресу, указанному на.регистре 15, и запись ее в регистр внешних микрокоманд 16, Микроприказ на выходе 25 увеличивает содержимое счетчика-регистра 15, например, на единицу" младшего разряда и открывает элементы И 23.Адрес спедующей микрокоманды формируется из адреса, содержащегося в текущей микрокоманде, и кода внешней микро- команды, поступающих на шину адреса микрокоманд 11 иэ регистра микроко. манд 7 с выходов 14 и вторых выхо-; дов регистра внешних микрокоманд 16 и записывается в регистр 5. Таким образом, в зависимости от кода внешней микрокоманды осуществляется переход к выполнению одной нз внешних микрокоманд.Внешние микропрограммы эаписьваются в языке внешних микрокоманд эмулируемых внутренними микрокомандами, с держащимися в матрице памяти 6, Если на регистр 16 принята микрокоманда "выполнить с помощью соответствующей внутренней микрокоманды осуществляется выполнение микроприкаэов, код которых содержится в соответствующем поле этой микрокоманды. В соответствии с кодом регистра 5 из матрицы памяти 6,выбирается и принимается в регистр 7 микрокоманда, содержащая нулевой адрес следующей микроко9 943734 10 манды и микроприкаэ 27 открывающий дующей микрокоманды с выходов 14 реэлементы И 19. гистра 7 записываетса в регистр 5.При этом код микроприкаэов с первых Если на регистр 16 принята внешняя выходов регистра 16 проходит через оъ миикрокоманаа безусловный переход втокрытые элементы И 19, декодируется де рого типа", Согласно этой микрокоманшифратором 20 и 21 и, пройдя через еле. де с помощью внутренней микрокоманды менты ИЛИ 17, поступает на соответ- осуществляется безусловный переход во ствующие управляющие входы схем про- внешней микропрограмме и переход к вы цессора, вызывая выполнение внешней попнению интерпретации кранцы. Эта микрокоманды "выполнить". Микроприка- о микрокоманда используется после вы.зы условий микрокоманда "выполнить" полнения внешней микропрограммы и оэнане формирует. Если в регистр 16 принята чает возврат к выполнению внутренней микрокоманда "условный переход". Соотг- микропрограммы. ветственно внешней микрокоманде "услов- В соответствии с кодом регистра 5 ный переход" с помощью внутренней мик иэ матрицы памяти 6 выбирается и запирокоманды осуществляется ветвление во сывается в регистр 7 микрокоманца, совнешней микропрограмме формированием держащая код адреса первой микрокомансоответствующего адреса в счетчике-ре- ды блока 1 и дополнительный микроща- гистре 15. каз 26. Под действием микроприказа наВ соответствии с кодом регистра 5 2 о выходе 26 содержимое поля микрокоманиз матрицы памяти 6 выбирается и при- ды фбыусловный переход второго типа" с нимается в регистр 7 микрокоманде, со- первых выходов регистра 16 проходит ч держащая нулевой" адрес следующей мю- реэ элементы И 18 и записывается в рокоманды и дополнительные микроприказы регистр 15, Код адреса с выходов 14 28 и 27. Микроприказ 27 открывает але 2 регистра 7 записывается в регистр 5, и менты И 19, разрешая дешифрацию опе-устройство управления переходит к вырационного поля внешней микрокоманды полнению интерпретации команды. "условный переход и формирование соот- функциональныевоэможности микроветствуюцах микроприкаэов, в том числе программируемого микропроцессора рас микроприкаэов условий. Признаки Условнй 1 щ ширены эа счет структурно-микропрогрампрошедшие перед выборочно открытую пер- мной реализации .наравне с внутреннимвую группу, элементов И 4 и через откры- микропрограммированием внешнего микротые элементы И 22, вписываются в соот- программирования. Внутренняя микропрог- ветствующие разряды счетчика-регистра рамма, кроме реализация основной сиоадреса внешних микрокоманд 15. В ре- темы команд, с помощью структурных гистр адреса микрокоманд 5 с выходов средств интерпретирует внешние микрь регистра микрокоманд 7 записывается команды и реализует взаимодействие "нулевой код. Если на регистр 16 ще- внутреннего и внешнего микропрограммиИята внешняя микрокоманда безуслов ровання. Положительный эффект достигнут ный переход первого типа, то согласно 4 О за счет; введения в устройство счетчика- атой микрокоманде с помощью внутренней регистра адреса внешних микрокоманд 15, макрокоманды осуществляется безуслов- регистра внешних микрокоманд 1 6, ел ный переход во внешней микропрограмме ментов ИЛИ 17, дешифраторов 20 и 21, формированием в регистре 15 адреса мик- элементов И 18, 19, 22 и 23 и оригирокоманды, к которой осуществляется бе-нальных связей между узлами. зусловный переход и затем возврат с ко- Использование этого устройства поэводом регистра 5 из матрицы памяти 6 вы- ляет в предельном случае полностью искбирается и принимается в регистр 7 мик- лючить иэ матрицы памяти 6 микропрограмрокоманда, содержащая нулевой" код му системы команд, оставив в ней лишь адреса следующей микрокоманды и допол- вспомогательные микрокоманды, обеспе- нительный микроприкаэ на выходе 26, чивающие использование внешнего микро- открывающий элементы И 18. Пройдя чв- программирования. рез открытые элементы И 18, код со При другом варианте, когда в матрице, вторых выходов регистра 16 записывает-. памяти 6 содержится микропрограмма ся всчетчик-регистр адреса внешних базовой системы команд, описанное устмикрокоманд 15, т. е. в регистре 15 фор- ройство позволяет использовать внешнееИмируется адрес, указанный в поле внеш- микропрограммирование наравне с внуъней микрокоманды безусловный переход рениим, не предъявляя к последнему супервого типа. "Нулевой" код адреса сле щестзенных требований и предоставляявозможность расширять систему команд вне зависимости от ограничений на объем матрицы памяти 6 микропрограммируемого микропроцессора.Одновременное использование внут реннего и внешнего микропрограммирования при проектировании микропроцессора служит целям повышения его производительности на заданном классе задач, благодаря реализации с помощью внутренних микропрограмм, как более быстродействующих, команд с наибольшей частотой встречаемости в программах, а редко встречающихся - с помощью внешних микропрограммм. 15 формула изобретенияМикропроцессор, содержащий регистр команд, арифметико-логическое устройст во, блок регистров, регистр адреса микро- команд, матрицу памяти, регистр микро- . команд, первую группу элементов И, дешифратор микрокоманд, причем входы регистра команд, арифметико логического 25 устройства и блока регистров подключеиы к входной шине микропроцессора, выходы арифметикэ-логического устройства и блока регистров подключены к информационному выходу микропроцессора, вы- Эо %оды арифметико-логического устройства, выходы регистра команд и первые входы элементов И первой группы подключены к шине условий микропроцессора, выход регистра адреса микрокоманд через матри цу памяти подключен к входу регистра микрокоманд, о т л и ч а ю щ и й с я тем, что, с целью увеличения быстродействия, в него введены счетчик-регистр адреса внешних микрокоманд, ре-.гистр внешних микрокоманд, вторая группа элементов И, третья группа элементов И, дешифратор внешних микрокоманд, общий дешифратор, четвертая группа элементов И, пятая группа элементов И, первая и вторая группы элементов ИЛИ, шестая группа элементов И, причем первая группа входов счетчика-регистра адреса внешних микрокоманд подключена к выходам элементов И четвертой группы, вторая группа входов подключена к выходам элементов И второй группы, а третья группа входов счетчика-регистра адресов внешних микрокоманд и первые входы элементов И пятой группы подклю 55 чены к первой группе выходов дополнительных микроприказов регистра микро- команд, а выходы счетчика-регистра адреса внешних микрокоманд подключены к 34 12многоразрядному информационному выходмикропроцессора, группа выходов регистра внешних микрокоманд подключена кинформационным входам микропроцессора, первая группа выходов регистравнешних микрокоманд подключена к первым входам элементов И второй итретьей групп, вторая группа выходоврегистра внешних микрокоманд подключена к вторым входам элементов И пятойгруппы, вторые входы элементов И второй группы подключены к второй группевыходов дополнительных микроприказоврегистра.микрокоманд, вторые элементыИ третьей группы подключены к третьейгруппе выходов дополнительных микроприказов регистра микрокоманд, четвертаягруппа выходов дополнительных микроприказов регистра микрокоманд подключенак вторым входам элементов И четвертойгруппы, выходы элементов И третьей группы подключены к входам дешифраторавнешних микрокоманд и к первой группе,входов общего дешифратора, выходы дешифратора внешних микрокоманд подключены к первым входам элементов ИЛИпервой группы, вторые входы которых подключены к выходам общего дешифратора,а третьи входы подключены к выходамдешифратора микрокоманд, первая группавыходов элементов ИЛИ первой группы подключена к вторым входам элементов Ипервой группы, вторая группа выходовэлементов ИЛИ первой группы являетсявыходами основных микроприказов микропроцессора, выходы элементов И первойгруппы подключены к первым входам элементов ИЛИ второй группы, выходы которых подключены к первым входам шестойгруппы, вторые входы элементов И шестой группы подключены к пятой группевыходов регистра микрокоманд, выходыэлементов И шестой группы и выходы элементов И пятой группы, через шину адреса микрокоманд подключены к входам регистра адреса микрокоманд и к второйгрущте входов элементов И четвертойгруппы, шестая группа выходов регистрамикрокоманд подключена к входам дешифратора микрокоманд и к второй группе входов общего дешифратора,Источники информашщ,принятые во внимание при экспертизе1. Справочник по цифровой вычислительнойтехнике Техника",К., 1974,с,241-2452,Хассон С, "Микропрограммное управление", выл,1, Мир",М., 1973, с, 43,3."Электроника". % б, 1974, с, 50-57 (прототип),

Смотреть

Заявка

2479571, 26.04.1977

ОРДЕНА ЛЕНИНА ИНСТИТУТ КИБЕРНЕТИКИ АН УССР, ПРЕДПРИЯТИЕ ПЯ Х-5263

ПАЛАГИН АЛЕКСАНДР ВАСИЛЬЕВИЧ, КУРГАЕВ АЛЕКСАНДР ФИЛИППОВИЧ, ДРЯПАК АНАТОЛИЙ ФЕДОРОВИЧ, ГОРОДЕЦКИЙ ВАЛЕРИЙ ВИКТОРОВИЧ, ЕВЗОВИЧ ИЛЬЯ СИМОНОВИЧ, БЕЛИЦКИЙ РОБЕРТ ИЗРАИЛЕВИЧ

МПК / Метки

МПК: G06F 15/00

Метки: микропроцессор

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

Код ссылки

<a href="https://patents.su/7-943734-mikroprocessor.html" target="_blank" rel="follow" title="База патентов СССР">Микропроцессор</a>

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