Микропрограммный процессор

Иллюстрации

Показать все

Реферат

 

Изобретение относится к области вычислительной техники и может быть использовано в цифровых вычислительных машинах с микропрограммньм управлением. Цель изобретения -: повышение быстродействия. Микропрограммный процессор содержит блок памяти данньтх, депшфратор, регистр адреса, операционный блок, блок микропрограммной памяти, блок формирования адреса и признака обращения, коммутатор микрокоманд, регистр микрокоманд, блок управления, блок буферной памяти , коммутатор данных, регистр команд и коммутатор. Цель достигается указанной совокупностью признаков. (Л I 3. п. ф-лы, 8 ил. с 1C ел 4i сд vj

СОЮЗ СОВЕТСКИХ

СОЦИАЛИСТИЧЕСКИХ

РЕСПУБЛИК

„„SU,„, 1275457 др 4 G 06 F 15/00

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К AST0PCHOMV СВИДЕТЕЛЬСТВУ

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТКРЫТИЙ (21 ) 3894841/24-24 (22) 11,05,85 (46) 07.12.86. Бюл. 11» 45 (71) Ордена Ленина институт кибернетики им. В.М.Глушкова (72) В.А.Иванов, В.В.Сыров и А.А.Черевко (53) 681,325(088.8) (56) Патент США 11 3859636, кл. G 06 F 9/22, 1975.

Авторское свидетельство СССР

11» 1062712» кл, G 06 F 15/00, 1984

Хассон С. Микропрограммное управление. — М.: "Мир", 1973.

Авторское свидетельство СССР

1l» 752341, кл. G 06 F 9/28, 1980.

Фельдман Б.Я.» Панферов Б.И., Громов В,С, Логическая организация процессора СМ-ЗП. — Управляющие вычислительные комплексЬ| на базе малых ЭВМ: Труды ИЭУМ, вып. 68, 1978, с. 9-23. (54 ) МИКРОПРОГРАММНЫЙ ПРОЦЕССОР (57) Изобретение относится к области вычислительной техники и может быть использовано в цифровых вычислительных машинах с микропрограммным управлением. Цель изобретения — повышение быстродействия. Микропрограммный процессор содержит блок памяти данных, дешифратор, регистр адреса, операционный блок, блок микропрограммной памяти, блок формирования адреса и признака обращения, коммутатор

> микрокоманд» регистр микрокоманд, блок управления, блок .буферной памяти, коммутатор данных, регистр команд и коммутатор. Цель достигается указанной совокупностью признаков.

1 э.п. ф-лы, 8 ил.

1275457

Изобретение относится к вычислительной технике и может найти применение н цифровых вичислительных машинах с микропрограммным управлением,!

Целью изобретения янляется повышение быстродействия.

На фиг, 1 представлена структурная схема микропрограммного процессора, на фиг. 2 — функциональная схема блока буферной памяти, ца фиг. 3 — схема блока формирования адреса микрокоманде и признака обращения, на фиг. 4 — схема операционного блока; на фиг. 5 - схема блока управления, на фиг. 6 — формат микрокоманды, на фиг, 7, — алгоритм

ыполнения микропрограмм и формирования адресон микрокоманд, на фиг.8временные диаграммы работы микропрограммного процессора, Микропрограммный процессор.(фиг..l) содержит блок 1 памяти данных, дешифратор 2, регистр 3 адреса, содержащий старшую часть 4 и младшую часть

5, в которую входит младший разряд

6 регистра адреса, операционный блок

7, блок 8 микропрограммной памяти, блок 9 формирования адреса микрокоманд и признака обращения, коммутатор 10 микрокоманд, регистр Il микрокоманд, содержащий адресную 12 и операционную 13 части и разряд 14 признака перехода, блок 15 управле" ния, блок 16 буферной памяти, коммутатор 17 данных и регистр 18 команд, содержащий разряд 19 признака перехода и коммутатор 20.

Вход 21 кода команды процессора соединен с пятым информационным входом блока 9 формирования адреса микрокоманд и признака обращения.

Блок 16 буферной памяти (фиг. 2) содержит накопитель 22 памяти, разрядность которого равна двойной разрядности блока 1 памяти данных, состоящий из накопителя 23 старшего слова и накопителя 24 младшего слова, коммутатор 25 адреса, первый 26,второй 27,третий 28 и четнертый 29 элементы И, элемент ИЛИ 30 и элемент

ИЛИ 31, Входы 32 блока 16 являются первым входом синхронизации, вход 33 — информационным входом блока 16, входы

34 и 35 — соответственно первым и вторым адресными входами блока 16, входы 36 и 37 — соответственно третьим и вторым входами синхронизации

I0 !

55 блока !6, выходы 38 и 39 — соответственно вторым и первым входами блока 16.

Блок 9 формирования адреса микрокоманд и признака обращения (фиг,Э) содержит регистр 40 адреса микрокоманд, состоящий иэ полей старшей 41 и младшей 42 частей адреса, дешифратор 43 старшей части адреса микрокоманд, узел 44 мультиплексоров, состоящий из и групп 45 элементов

ИЛИ, элемента HE 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 формирования

1275457 признаков операции, сдвнгатель 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 регистра ll микрокоманд, поступающих на вход.93 блока 15. Сигналы управления сумматором 69, сдвигателем 71, коммутатором

68 и узлом 70 формирования признаков g0 операции поступают соответственно по шинам 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 соединен линией 1 05 с шестым выходом 32, блока

15, Выход триггера 85 соединен линией 106 с четвертым 107 и шестым 32 выходами блока 15 Выходы элементов

И 83 и 84 соединены соответственно с вторым 108 и первым 109 выходами блока 15. Сигналы управления блоком

9 формирования адреса микрокоманд и признака обращения поступают по линиям 57-60 на восьмой выход 61 блока 15 из соответствующих полей операционной части 13 регистра 11 микрокоманд, поступающих на вход 93 блока 15.

Микропрограммный процессор рабо" тает следуюшим образом.

В текущий момент времени на регистр ll микрокоманд поступает очередная микрокоманда. Ее операционная часть 13 подается на вход блока

15 управления, который вырабатывает совокупность сигналов, управляющих работой блоков памяти данных 1, микропрограммной памяти 8, буферной памяти 16, регистра 3 адреса, операционного блока 7, блока 9 формирования адреса микрокоманд и признака обращения и регистра 18 команд, Адресная часть 12 микрокоманды поступает на вход блока 9 формирования адреса микрокоманд и признака обращения, который формирует адрес очередной микрокоманды с учетом npH9HafcoB ветвлений, поступающих по шине условий из блока 7 обработки. При формировании начальных адресов микропрограмм в блок 9 формирования адреса микрокоманд подается также код. опе- . рации командного слова из регистра

18 команд и адрес из младшей части

5 регистра 3 адреса.

В зависимости от сформированного кода адреса очередной микрокоманды, который анализируется блоком 9 формирования адреса микрокоманд".и признака обращения, обращение происходит либо к блоку 8 микропрограммной памяти, либо по второму адресному вхо-! ду к блоку 16 буферной памяти, В пео1275457 вом случае считанная информация поступает на регистр I! микрокоманд, с блока 8 микропрограммной памяти через первый информационный вход коммутатора 10 микрокоманд по инверсному значению сигнала на выходе признака обращения блока 9 формирования адреса микрокоманд и признака обращения. Во втором случае микроко- !О манда считывается из блока 16 буферной памяти и поступает на регистр 11 микрокоманд через второй и третий информационные входы коммутатора 10 по прямому значению сигнала на выхо- 15 де признака обращения блока 9, После записи микрокоманды в регистр 11 микрокоманд в операционном блоке 7 и других блоках микропрограммного процессора выполняются задан- 2б ные микрокомандной операции и анали" зируется разряд 14 признака перехода, Состояние "Логический ноль" зтого разряда означает, что следующей будет выполняться микрокоманда,ад- 2g рес которой сформирован в блоке 9.

При этом, как и в предыдущем случае, по адресу, сформированному в блоке

9, обращение sa следующей микрокомандой происходит либо к блоку 8, Зо микропрограммной памяти, либо к блоку I6 буферной памяти.

Состояние Логическая единица

II н разряда 14 признака перехода регистра 11 микрокоманд означает, что сле- З5 дующей будет выполняться команда, адрес которой задается адресной 12 частью регистра ll микрокоманд. При этом адрес команды из адресной час40 ти 12 регистра 11 микрокоманд пересылается через коммутатор 20 в о««ределенный регистр узлов 66 и 67 регистров, отведенный под счетчик команд, а в блок 9 формирования адреса микрокоманд пересылается фиксиро- 45 ванный адрес микрокоманды, общей для всех команд, с входа 21 процессора. Эта микрокоманда является первой микрокомандой выборки команд и .задает обращение за командой к памя- 5О ти, адрес которой пересылается в этой микрокоманде со счетчика команд, находящегося в операционном блоке 7, на регистр 3 адреса. По входу 21 поступает константа из шин питания про-55 цессора, являющихся источниками нулевых и единичных логических сигналов.

Коммутатор 20 при нулевом значении сигнала на егo управляющем Вхо де коммутирует на свой выход информацию со своего первого информационного входа, а при единичном значении сигнала на его управляющем входе — информацию со своего второго информационного входа. Дешифратор 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 регистра 11 микрокоманд. Затем выполняется первая микро25

7 1275 команда выборки, задающая обращение к памяти за командой. После этого выполняется выборка и отработка команды как и в предыдущем случае. .При выполнении команды, если в текущей микрокоманде задана необходимость обращения за данными или очередным командным словом, что определяет блок 15 управления, адрес из соответствующего регистра операционного блока 7 подается на регистр 3 адреса и далее на дешифратор 2, который в зависимости от значения адреса разрешает обращение к блоку 1 памяти данных или по первому адресному входу к блоку 16 буферной памяти, Через коммутатор 17 считанная информация поступает на регистр 18 команд, если считывается очередное командное слово, или в операционный блок 7, если считываются данные под управлением блока 15 управления.

Состояние "Логическая единица" разряда 19 признака перехода, анализируемого по управляющему сигналу из блока 15 управления в конце выполнения команды, означает, что следующей будет выполняться микрокоман.да, эквивалентная команде или группе команд. При этом адрес микрокоманды пересылается с регистра 3 ад- реса в блок 9 формирования адреса

1 микрокоманд и признака обращения, В процессе выполнения этой микрокоманды анализируется разряд 14 признака перехода, и работа микропрограммного процессора происходит аналогично рассмотренному случаю.

Таким образом, в блоке 1 памяти данных хранятся массивы данных и программ базовой системы команд.

Микропрограммы базовой системы команд хранит блок 8 микропрограммной памяти. Блок 16 буферной памяти содержит как данные и программы, так и микропрограммы, содержащие одну 4 или некоторое множество микрокоманд и предназначенные для ускоренного выполнения некоторого алгоритма.

Блок 16 буферной памяти имеет. общую систему адресации как с блоком 1 памяти данных, так и с блоком 8 микропрограммной памяти. При обращении по первому адресному входу блок

16 буферной памяти является продолжением адресного пространства бло- 55 ка 1 памяти данных, а при обращении по второму адресному входу " продолжением адресного пространства

457 Я блока 8 микропрограммной памяти.При этом загрузка микропрограмм, как и любой другой информации, в блок 16 буферной памяти осуществляется при обращении по первому адресному входу. Поскольку объем блока 16 буферной памяти невелик по сравнению с общим объемом памяти данных, он может быть выполнен в виде полупроводникового запоминающего устройства с;. высоким быстродействием; равным быстродействию блока 8 микропрограммной памяти. При обращении по второму адресному входу из блока 16 буферной памяти считывается двойное слово, что позволяет выбрать разрядность микрокоманды и блока 8 микропрограммной памяти, равную двойной разрядности блока 1 памяти данных.

Блок 16 буферной памяти (фиг. 2) может работать в трех режимах: режим записи данных, команд или микрокоманд; режим чтения данных или команд; режим чтения микрокоманд, Работа блока 16 буферной памяти в режиме записи возможна только IIQ первому адресному входу 34 в случае, если дешифратор 2 определяет, что адрес обращения к памяти принадлежит блоку 16 буферной памяти, При этом единичный уровень сигнала с выхода дешифратора 2 поступает на третий вход 36 синхронизации блока 16 5y- . ферной памяти, разрешая прохождение адреса с первого адресного входа 34 блока 16 через коммутатор 25 на вход накопителя 22 и прохождение сигнала обращения памяти (чтения или записи)„ приходящего с шестого выхода блока

1 5 управления на первый вход 32 синхронизации блока 16 и далее через элементы И 28 и ИЛИ 31 на вход выборки накопителя 22.

Сигнал записи при этом проходит с шестого выхода блока 15 управления по первому входу 32 синхронизации блока 16, через элемент И 26 на вход строба записи накопителя 24 младшего слова или через элемент И 27 на вход строба записи накопителя 23 старшего слова в зависимости от разряда четности адреса, поступающего с управляющего выхода коммутатора 25. При его единичном значении открывается элемент И 26, а при нулевом — элемент И 27, Таким образом, при наличии сигнала записи, если заданный адрес принадлежит блоку 16 буферной памяти, по заданному на первом адрес9 12 754 ном входе 34 адресу записывается информация с информационного входа 33, причем запись осуществляется либо в накопитель 23 старшего слова, либо в накопитель 24 младшего слова в зависимости от разряда четности адреса.

Работа блока 16 в режиме чтения данных или команд происходит следующим образом, В случае, если дешифратор 2 определяет, что адрес обращения к памяти принадлежит блоку 16, единичный уровень сигнала на третьем входе 36 синхронизации блока 16 разрешает прохождение адреса с первого адресного входа З4 блока 16 через коммутатор 25 на вход накопителя

22, а также разрешает прохождение сигнала обращения с первого входа 32 синхронизации блока 16 через элементы И 28 и KIH 31 на вход выборки накопителя 22, На выходах 38 и 39 накопителя 22 появляется считанная информация, Режим чтения микрокоманд из блока

1б буферной памяти выполняется в случае, когда дешифратор 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 информационных входов., 5

Единичный уровень сигнала на третьем управляющем входе 63 разрешает формирование адреса микрокоманд с пя57 10 того информационного входа 56, запрещая одновременно через элемент HF. 46 формирование адреса с других направлений..Дешифратор 43 осуществляет анализ содержимого старшей части 41 регистра 40 адреса микрокоманд и в случае его соответствия адресу, принадлежащему блоку 16 буферной памяти, формирует единичный сигнал на выходе 65 признака обращения. С адресного выхода 64 выдается содержимое регистра 40 адреса микрокоманд °

Операционный блок 7 (фиг. 4) работает следующим образом, В зависимости от выполняемой микрокоманды под воздействием управляющих сигналов на входе 76 кода операции блок осуществляет арифметикоI логические операции на сумматоре 69 над одним или двумя операндами, поступающими из узлов 66 и 67 первых и вторых регистров либо с информационного входа 75, вырабатывает признаки результата в узле 70 формирования признаков, осуществляет сдвиг результата арифметико-логической oneрации на сдвигателе 71, заносит результат операции в узлы 66 и 67 первых и вторых регистров или в регистр

72 данных. Результат операции выдается также через второй информационный выход 74 блока 7 на регистр 3 адреса, В микрокомандах перехода на программный уровень управления (раз.ряд 14 признака перехода которых равен единице), адресуемым регистром узлов бб и 67 является счетчик команд, а остальные узлы (коммутатор

68, сумматор 69, сдвигатель. 71) настраиваются с входа 76 кода операции таким образом, чтобы пропустить информацию с информационного входа 75 блока 7 через коммутатор 68, сумматор 69 и сдвигатель 71 на вход узлов

66 и 67 для ее записи. С первого информационного выхода 73 блока 7 выдается содержймое регистра 72 данных, а с выхода 77 признака результата операции — признаки результата операции.

Блок 15 управления (фиг, 5) управляет работой других блоков процессора, Генератор 78 синхросигналов осуществляет синхронизацию предлагаемого устройства. На выходе элемента

ИЛИ 79 вырабатывается строб выборки узлов 66 и 67 первых и вторых регистров. Строб записи в эти регистры. на линии 89 вырабатывается на выходе

Временные диаграммы (фиг.8) и алгоритм формирования адресов и выполнения микропрограмм (фиг. 7) ига- 50 люстрируют выполнение последовательности микрокоманда — команда— микрокоманда, На фиг. 7 приняты следующие сокращения: MKO — микрокоманда с номе- 55 ром 0, МК (N+l) — микрокоманда с номером (N+1),PAM — регистр адреса микрокоманды, СчК вЂ” счетчик команд, ll 1275 элемента И 80 при наличии высокого уровня сигнала на линии 98 и появлении синхросигнала "Фаза 3", На выходе элемента И 81 вырабатывается строб записи в регистр 72 данныхпри нали5 чии высокого уровня сигнала на линии

tt 11

99 и появления синхросигнала Фаза 3

Йа выходе элемента И 82 вырабать|вается сигнал записи в блок 16 буферной памяти при наличии высокого уровня сигнала на линии 100 и появлении синхросигнала "Фаза 2", На выходе элемента И 83 вырабатывается строб записи в регистр 3 адреса при наличии высокого уровня сигнала на линии 103 и появлении синхросигкала "Фаза 2".

На выходе элемента И 84 вырабатывается строб записи в регистр 18 команд при наличии высокого уровня сигнала на линии 104 и появлении синхросигнала "Фаза 3". На выходе триггера .

85 вырабатывается сигнал обращения к памяти при наличии высокого уровня сигнала на линии 102 и появлении синхросигнала "Фаза 3".

Назначение полей формата микрокоманды (фиг. 6) следующее.

Поле Пl определяет адрес регистра узла бб первых регистров, поле

П2 — функции сумматора 69. Полем ПЗ определяется запись в регистр 72 данных, полем П4 — запись в регистр

3 адреса. Поле П5 определяет микрооперации обращения к памяти. Поле

Пб управляет коммутатором 68. Поле

П8 разрешает выполнять анализ разря35 да 19 признака перехода регистра 18 команд. Полем П9 определяется запись в регистр 18 команд, Поле П10 определяет адрес регистра узла 67 вторых регистров, поле П11 — вид сдвига на сдвигателе 71. Полем П12 определяется запись признаков в узле 70. Поле П13 определяет адресную часть 12 регистра 11 микрокоманд, поле П14 — разряд 14 признака перехода регистра 11 микрокоманд.

457 l2

PK — регистр команд, PA — регистр адреса.

В предлагаемом микропрограммном процессоре пользователю доступен наряду с программным микропрограммный уровень управления, снижены затраты времени при переходе с одного уровня управления на друго" ° Возможность быстрого перехода с одного уровня управления на другой позволяет гибко использовать преимущества обеих уровней управления на различных этапах выполнения алгоритма, а возможность замены команды или нескольких команд эквивалентной микрокомандой ведет к повьштению быстродействия устройства °

Использование микропрограмм в теле рабочих и ут1равляющих программ значительно повышает системную производительность за счет отсутствия циклов выборки, декодирования команд и модификации счетчика команд, высокой операционной плотности. микрокоманд, позволяющей параллельно выполнять несколько операций, в предлагаемом техническом решении одной микрокомандой можно выполнять до шести операций (пересылку, арифметикологическую операцию, сдвиг, обращение к памяти, установку признаков и проверку условий), а также за счет возможности органиэации групповых ветвльний.

Предлагаемый микропрограммный процессор предоставляет программисту дополнительно к языку команд эффективный язык микрокомакд и обеспечивает простой механизм перехода от одного языка к другому.

Формула изобретения

1, Микропрограммный процессор, содержащий блок памяти данных, дешифратор, регистр адреса, операционный блок, блок микропрограммной памяти, блок формирования адреса микрокоманд и признака обращения, коммутатор микрокоманд, регистр микрокомакд, блок управления, блок буферной памяти, коммутатор данных и регистр команд, причем первый и второй выходы блока управления соединены соответственно с входами sanucu регистра команд и регистра адреса, третий выход блока управления соединен с входом кода операции операционного блока, четвертый и пятый

127545;!

4 выходы. блока управления соединены соответственно с первым входом синхронизации и входом записи-считывания блока памяти данных, шестой выход блока управления соединен с первым входом синхронизации блока буферной памяти, седьмой и восьмой выходы блока управления соединены соответственно с входом чтения блока микропрограммной памяти и с первым 1п управляющим входом блока формирования адреса микрокоманд и признака обращения, первый информационный выход операционноцо блока подключен к информационным входам блока памяти данных и блока буферной памяти, второй информационный выход операционного блока подключен к информационному входу регистра адреса, выход признака результата операции операционного блока соединен с первым информационным входом блока формирования адреса микрокоманд и признака обращения, выход старших разрядов регистра адреса соединен с входом дешифратора, выход первîro младшего разряда регистра адреса подключен к первому управляющему входу коммутатора данных, выход m младших разрядов (где m — - разрядность адреса бло30 ка памяти данных) регистра адреса соединен с адресным входом блока памяти данных и с первым адресным входом блока буферной памяти, второй и третий информационные входы блока формирования адреса микрокоманд и признака обращения соединены соответственно с выходом поля операции регистра команд и с выходом поля адреса следующей микрокоманды регистра микрокоманд, адресный вы. ход блока формирования адреса микрокоманд и признака обращения соединен с адресным входом блока микропрограммной памяти и с вторым адресным входом блока буферной памяти, выход признака обращения блока формирования адреса микрокоманд и признака обращения соединен с управляющим входом коммутатора микрокоманд и с вторым входом синхронизации блока буферной памяти, третий вход синхронизации которого соединен с вторым входом синхронизации блока памяти данных, с вторым управляющим входом коммутатора данных и с выходом дешифратора Ы выход блока памяти данных подключен к первому информационному входу коммутатора данных, выход которого соединен с информационным входом регистра команд, выход блока микропрограммной памяти соединен с первым информационным входом коммутатора микрокоманд, второй информационный вход которого соединен с первым выходом блока буферной памяти и с вторым информационным входом коммутатора данных, третий информационный вход коммутатора микрокоманд соединен с вторым выходом блока буферной памяти и с третьим информационным входом коммутатора данных, выход коммутатора микрокоманд подключен к информационному входу регистра микрокоманд, выход поля операции которого соединен с входом блока управления, отличающийся тем, что, с целью повышения быстродействия, в него введен коммутатор, при этом выход признака перехода регистра команд соединен с вторым управляющим входом блока формирования адреса микрокоманд и признака обращения, четвертый информационный вход которого соединен с выходом младших раэ— рядов регистра адреса, третий управляющий вход блока формирования адреса микрокоманд и признака обращения подключен к выходу признака перехода регистра микрокоманд и к управляющему входу коммутатора, первый и второй информационные входы коммутатора соединены соответственно с выходом коммутатора данных и с выходом поля адреса следующей микрокоманды регистра микрокоманд, пятый информационный вход блока формирования адреса микрокоманд и признака обращения является входом кода команды процессора, выход коммутатора соединен с информационным входом операционного блока.

2. Процессор по п. 1, о т л ич а ю шийся тем, что блок формирования адреса микрокоманд и при» знака обращения содержит регистр адреса микрокоманд, дешифратор старшей части адреса микрокоманд и узел мультиплексоров кода адреса микрокоманд, первый, второй и третий управляющие входы узла мультиплексоров

"являютСя соответственно первым, вторым и третьим управляющими входами блока, первый, второй, третий, четвертый и пятый информационные входы узла мультиплексоров являются соответственно первым, вторым, третьим, четвертым и пятым информационными

1275457

Фиг. K входами блока, выход уэла мультиплексоров соединен с информадионным входом регистра адреса микрокоманд,выход старших раэрядов регистра адреса микрокоманд соединен с входом дешиф- 5 ратора старшей части адреса микрокоманд, выход регистра адреса микрокоманд является адресным выходом блока, выход дешифратора старшей части адреса микрокоманд является выходом приэнака обращения блока.

1275457

Фиг. з

Риг. Ф

1275457

Фиг. 5

91 90 90 10S 400 <02 96 5 7 58 59 60 f09 92 95. 97 5Ъ 6З

1275457

Фи8.?

Фал. ю

Составитель Л,Андрианов

Редактор О.Юрковецкая Техред И.Ходанич Корректор И.Муска

Тираж 671 Подписное

ВНИИПИ Государственного: комитета СССР по делам изобретений и открытий

113035, Москва,. Ж-35, Раушская наб., д. 4/5

Заказ 6563/42

Производственно-полиграфическое предприятие, r Ужгород, ул. Проектная, 4