Процессор
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
,1247884 А 1 4 С 06 Р 15/00 ГОСУДАРСТВЕН ПО ДЕЛАМ ИЗ ЫЙ КОМИТЕТ СССРБРЕТЕНИЙ И ОТКРЫТИЙ ИСАНИЕ ИЗОБРЕТЕНИЯ ОМ ВИ ЕТ ВТОРС ЪИГ) Ж снов,к Мос 1 е 1 148,1 Ргосеззо 979 к облас жет быт вычислиовня проачения. повышение Аункциосора пуедств для.(56) А СцЫе го где 1 ВМ/1 ВМ Согр., 1974.А СиЫе о гЬе 1 ВМ 431 ВМ Согр., 1979.Авторское свидетельстУ 670935, кл, С 06 Р 15/(57) Изобретение относится вычислительной техники и м использовано в электронных тельных машинах среднего ур изводительности общего наз Целью изобретения является быстродействия и расширени нальных возможностей проце тем введения технических с аппаратной трассировки программ имикропрограмм. С. этой целью в процесор, содержащий блок выборки команд,регистр адреса местной памяти, первыйкоммутатор данных, блок местной памяти второй коммутатор данных, блокмикропрограммного управления, блоккоммутации адреса памяти, блок управляющей памяти, блок основной памяти,арифметико-логический блок, блок регистров преобразования виртуальныхадресов и третий коммутатор данных,введены блок оперативной памяти микропрограмм, блок регистров динамической переадресации микрокоманд, блокускорения арифметических операций,блок обработки данных переменнойдлины, блок регистров связи, блок памяти адреса страницы, блок триггерованализа конца страницы, блок запросовна косвенную адресацию, блок памятитрассировки, первая и вторая группыэлементов ИЛИ, первая и вторая группы элементов И, триггер выборки памяти и группа элементов ИСКЛЮЧАЮЩЕЕИЛИ. 3 з.п. Ь-лы, 19 ил.соответственно. Выход данных коммутатора соединен с входом данных матрицы памяти 239, управляющий входкоторой соединен с первым управляющим выходом дешифратора 241, второйуправляющий выход которого соединенс управляющим входом коммутатора 238,Адресный вход матрицы памяти 239 соединен с выходом данных счетчика 242,управляющий вход которого соединенс третьим управляющим выходом цешифратора 241,. вход данных которогосоединен с выходом данных регистра240, вход данных которого соединенс третьим входом данных 53, Выходданных матрицы памяти 239 соединенс выходом данных 51. Управляющийвход дешифратора 241 соединен с управляющим входом 100.Блок 1 предназначен для накопления в буферных регистрах 101, 102и 103 предварительно выбранных иэосновной памяти команд, Формирования адресов местной памяти для адресации регистров общего назначения,содержащих базу и индекс, с помощьюрегистра непосредственного байта 109и коммутатора адреса местной гамяти110, хранения кода операции в регистре кода операции 106 и его частичнойдешифрации с помощью дешифратора 108,хранения адресов операндов в регистре адресов операндов 104, а такие дляхранения и модификации адреса команды в счетчике адреса команды 105.Коммутатор адресов 107 предназначен длявыдачи из блока выборки команд адреса обращения к основной памяти длячтения команды или операндовБлок 4 предназначен дпя хранениярегистров орщего назначения, регистров с плавающей точкой, рабочих регистров, используемых при выполненииопераций в процессоре,Блок 6 предназначен для приемаиз управляющей памяти или из оперативной памяти микропрограмм микрокоманд в регистр микрокоманд 111, дешифрации микрокоманды с помощью дешифратора 112 и формирования адресаследующей микрокоманды с помощью коммутатора адреса микрокоманды 113. Блок 1 предназначен для осуществления связи центральной обрабатывающей части процессора с блоком 8Блок 8 предназначен для хранения программ и данных. Блок 9 предназначен для храненияосновного комплекса микропрограмм,Блок 10 предназначен для хранениямикропрограмм, оперативно заменяемых5в процессе работы процессора, и логически имеет сегментно страничнуюструктуру,Арифметико-логический блок 11(фиг, 5) предназначен для обработкидвоична-десятичной информации.Блок 12 предназначен для преобразования виртуального (логического)адреса основной памяти в реальный в1 режиме работы с виртуальной .памятью,Блок 13 (фиг, 7) предназначен дляпреобразования логического адресамикрокоманды в реальный,Блок 14 (Фиг. 8) предназначен дляускорения логических и арифметическихкоманд, использующих сдвиги при обработке данных.Блок 15 (фиг. 9) предназначен дляуправления выполнением команд десятичной арифметики.Блок 17 (фиг. 1) предназначен дляхранения двадцатичетырехразрядноготекущего адреса страницы и шестнадцатиразрядного начального адреса следующей страницы.Блок 18 (фиг, 12) предназначен дляопределения конца обмена данными меж,цу каналами ввода-вывода и основнойпамятью по текущему адресу страницы.Блок 19 (фиг. 13) предназначен дляформирования запроса на косвеннуюадресацию, следствием которого является блок 17 начального адреса следу.ющей страницы.Блок 20 предназначен для накопления трассы адресов микрокоманд.Блок содержит матрицу буфернойпамяти 118, в которой накапливаетсянаиболее часто используемая информация из основной памяти. При наличии45информации, соответствующей адресу,поступающему в регистр адреса 114,в матрице буферной памяти информациив регистр выходных данных 214 поступает из матрицы буферной памяти 118через группы элементов И 120 и эле- ментов ИЛИ 123, Наличие информациив матрице буферной памяти 118 определяется путем сравнения данных, считайных из матрицы памяти индексов117 по адресу, поступающему из регистра адреса 114 с частью содержимогоэтого же регистра адреса 113, рас"сматриваемой как индекс блока данных,с помощью группы элементов сравнения119. Если соответствующая информацияв матрице буферной памяти 118 отсутствует, т,есравнения. не произошло,то отсутствие сигнала сравнения спомощью элемента НЕ 121 и группы элементов И 122 обеспечивает поступление в регистр выходных данных 124информации из регистра входных данных116, куда информация принимается изосновной памяти 8. При записи информации в основную память 8 данные изрегистра входных данных 1 16 передаются в основную память по шине 86 и вматрицу буферной памяти 118. Записьв матрицу буферной памяти 118 производится при наличии разрешающего сигнала из группы элементов сравнения119 в случае положительного результа.та сравнения, т,е. если информация,соответствующая адресу записи, находится в матрице буферной памяти. Запись данных производится по маске, которая из регистра маски 115передается в основную память 8 пошине 85 и в матрицу буферной памяти118, Адрес в основную память передается по шине 87 из регистра адреса 114,Арифметико в логическ блок 11(фиг, 5) работает следующим образом.В первый и второй регистры 125 и126 принимаются первый и второй операнды по шинам 67 и 99 соответственно. Их разрядность четыре байта. Изпервого регистра 125 все четыре байта поступают на четыре цайтных мультиплексора 127 в 1, которые управляются по шине 57, а выходы мультиплексоров поступают на первый вход узлаарифметических и логических операций125 и на шину 66. Из второго регистра 126 все четыре байта поступают начетыре. байтных мультиплексора 131134 и шину, 64. Выходы мультиплексоровпоступают на второй вход узла арифметических и логических операций 135,Работа мультиплексоров управляетсядвадцатичетырехразрядной шиной 57 изблока управления данными переменнойдлины 15 по три разряда на каждыймультиплексор. Пва разряда управляютпередачей соответствующего байта через мультиплексор и один разряд бло кирует все передачи через него. Блр -кировка мультиплексоров используетсятолько в десятичных операциях. Узел арифметических и логическихопераций 135 выполняет все двоичнодесятичные арифметические и логические операции, задаваемые .кодом по шине 69, и,за один цикл может обрабатывать четырехбайтные операции, Пошине 74 задается характер управлениявходами (два операнда, операнд и компонента, передача одного операнда сосдвигом на 4 и т.п.) и константа.Если микрокомандой задана обработкабайтов информации, то через мульти -плексор 127 в 130 передается один и тотже байт первого операнда, указанныймикрокомандой, а через мультиплексоры 131 в 1 один и тот же байт второго.операнда, что определяется кодамина шине 57. Одновременно код на шине69 определяет тип операции, а код нашине 74 блокирует межбайтные переносыузла арифметических и логических операций 135, т.е. арифметико-логическийблок 11 работает на четыре одинаковых. однобайтных блока. Если задана обработка полуслов, то арифметико-логический блок работает как два одинаковых двухбайтных блока.Результат операции узла арифметических и логических операций выдается на тридцатидвухразрядную шину 65.В регистре состояний 135 Фиксируют.ся состояния результата (нулевой результат, переполнение и т.п.) и сигналы об окончании работы блока управления данными 15 и блока ускоренияарифметических операций 14, Содержимое регистра состояний 135 по шине 68поступает в узел микропрограммногоуправления 6 для формирования адреса 40 микрокомандыБлок 12 работает следующим образом.Блок содержит ш регистров для хране"ния логических адресов (на фиг, 6 дляпримера ш = 4) 145-148, Логический 45адрес основной памяти, поступающийв блок по шине 49, сравнивается одновременно со всеми регистрами содерУжащими логические адреса на группахэлементов сравнения 149-152. Каждомурегистру, содержащему логическийадрес, соответствует регистр, содержащий реальный адрес (регистры 137140), .Если в одной из групп элементов сравнения произошло сравнение,то через соответствующую группу элементов И (группы 141-144), черезгруппу элементов ИЛИ 153 на выходблока подается реальный адрес, соот 1247884 22нетствующий логическому, поданному на вход блока, Если сравнение не произошло ни н одной группе элементов сравнения, то с помощью элемента ИЛИНЕ 154 в узел микропрограммного управления подается сигнал об отсутствии в блоке преобразования виртуальных адресов нужного логического адреса.Блок 13 работает следующим образом. Логический адрес микрокоманды поступает в блок 13 по шине 72. Блок содержит и пар регистров (где и число сегментов микропрограмм в оперативной памяти микропрограмм 10). содержащих логические адреса сегментов и информацию о наличии страниц внутри сегмента, загруженного в оперативную память микропрограмм. На фиг. 7 показана структура блока динамической переадресации микрокоманд для и = 4. Каждая пара регистров однозначно соответствует адресной области сегмента в оперативной памяти микропрограмм. Регистры 157-160 содержат логические адреса сегментов, а регистры 165-168 содержат каждый информацию о наличии страниц в соответствующем сегменте, Число разрядов этих регистров соотнетствует числу страниц в сегменте. Единичное состояние любого разряда обозначает наличие соответствующей страницы в опе. ратинной памяти микропрограмм 10, Логический адрес микрокоманды (его часть, определяющая адрес сегмента) сравнивается с помощью групп элементов сравнения 161-164 сравнивается с содержимым регистров 157-160, При положительном результате сравнения логического. адреса с содержимым одного иэ регистров 157-160 разрешающий сигнал из соответствующей группы элементов сравнения поступает на вход одного из элементов И 173-176. На второй вход одного из этих элементов И поступает результат сравнения из соответствующей группы элементов сравнения 169-172. Эти группы элементов сравнения сравнивают дешифрированную с помощью второго дешифратора 182 часть логического адреса, определяющую номер старницы в сегменте, с содержимым регистров 165- 168. Если на выходах элементов И 173- 176 отсутствуют сигналы, то с помощью элемента ИЛИ-НЕ 178 формируется сигнал в узел микропрограммного управления, которьй свидетельствует, что микрокоманда, соответствующая логическому адресу, поступившему на вход блока, отсутствует в оперативной памяти 5микропрограмм. Выходы групп элементов сравнения 161-164 поступают на шифратор 177, который на выходе формирует реальный адрес сегмента, Этот адрес поступает в десятьй регистр 181, являющийся регистром реального адреса, через первую группу элементов И при наличии разрешающего сигнала с прямого выхода триггера 183. Этот триггер устанавливается по шине 50 по сигналу из узла микропрограммного управления 6 при необходимости переадресации. Сброс этого триггера производится через элемент ИЛИ 184 либо из узла микропрограммного управления, либо при появлении сигнала на выходе элемента ИЛИ-НЕ 178. При нулевом состоянии триггера 183 н десятый регистр 181 через вторую группу элементов И 180 принимается логический адрес сегмента. Часть логического адреса, определяющая адрес микрокоманды внутри сегмента, передается н десятьй регистр 181 непосредственно.с шины 72, Для записи новой информации н регистры 157-160 и 165 - 169 через шину53 устанавливается адрес соотнетствую -шей пары регистров в первом регистре 155.С помощью дешифратора 156 вырабатывается один из разрешающих сигналов и 35поступает на разрешающий входы соответствующей пары регистров. Данные для записи поступают по шине 53.Блок 14 работает следующим образом,Основу блока составляет сдвиговый регистр 193, собранный на микросхемах четырехразрядных универсальных регистров, сдвигающих за один синхроимпульс только на один разряд вправо или влево. Использование первого коммутатора 190 и второго коммутатора 196 позволило использовать сдвиговый регистр 1.93 для органиэации сдвигов на 1,4 и 8. Направление сдвигов задается дешифратором 189, При сдвигах на 1 50информация заносится с шины 53 в сдвиговый регистр 193 через коммутатор 190, управляемый дешифратором 189 в нормальном порядке, как показано на фиг. 15. При сдвигах на 8 сдвиговый регистр 193 разбивается на 8 носьмиразрядных регистров, переносы между которыми блокируются дешифратором 189. Информация с шины 53 че 12478842324рез коммутатор 190 поступает на сдвиговый регистр 193 в последовательности, показанной на фиг. 15, где цифрами показаны разряды шины 53, поступающие в последовательные разряды сдвигового регистра 193. Таким образом совокупность крайних выходов восьмибитных регистров будет определять последовательные байты обрабатываемой информации, При поступлениисинхроимпульса на восьмибитные регистры из них будут выдвигаться последовательные восемь разрядов. Лля организации сдвигов на 4 сдвиговый регистр 193 разбивается на четыре шестнадцатиразрядных регистра, переносы межцу которыми блокируются дешифратором 189,Информация с шины 53 через ком мутатор 190 записывается в сдвиговый регистр 193,в последовательности, показанной на фиг. 15. Аналогично описанному при поступлении синхроимпульса на шестнадцатиразрядные регистры, в совокупности крайних выходов пос-.ледних выдвигаются четыре последовательных бита. Второй коммутатор 196 под управлением дешифратора .189 выдает выходы сдвигового регистра 193 на шину результата 63 в прямой последовательности для сдвигов на .1 и 8, либо преобразуя из последовательности для сдвигов на 4 в прямую. Следовательно, на шине результата 63 всегда прямая, последовательность информации. При выполнении команд сдвига количество необходимых сдвигов комбинируется из сдвигов на 8 и сдвигов на 1, Команды сдвигов начинаются аппаратным занесением кода операции в регистр команд 187, количества сдви 40 гов на 8 во второй счетчик и количества сдвигов на 1 в первый счетчик по шинам 48 и 53, Лешифратор 189 по занесенной информации определяет направление сдвигов и характер работы45 первого 190 и второго 196 коммутаторов. Если второй счетчик 186 не равен О, то определяется занесение в сдвиговый регистр 193 для сдвигов на 8, в противном случае для сдвигов на 1. После занесения в сдвиговый регистр информации, что определяется кодом, полученным по шине 60, дешифратором 189 разрешается прохождение синхроимпульсов с шины 43 через элемент И 192, которые поступают на сдвиговый регистр 189 и второй счетчик 186, Информация по синхроимпульсам в сдвиговом регистре 193, начинает сдвигаться на восемь разрядов содновременным вычитанием 1 из второгосчетчика 186, При обнулении второгосчетчика 186 серия синхроимпульсовпрекращается, а информация из сдвигбвого регистра 193 через первый коммутатор 190 перезаписывается обратнов сдвиговый регистр 193 из последовательности для сдвигов на 8 в прямуюпоследовательность, при этом разблокируются все переносы. Следующим этапом снова разрешается выдача синхроимпульсов через элемент И 192, по которым в сдвиговом регистре 193 организуются сдвиги на 1 с одновременнымвычитанием 1 из первого счетчика 185.Этот процесс продолжается до обнуления первого счетчика 185. После обнуления первого счетчика 185 и второго счетчика 186 дешифратор 189 выдает на шину 61 сигнал об окончаниисдвигов для сообщения об этом событии микропрограмме, Операции выравнивания и нормализации начинаются сзанесения 53 соответствующего кода врегистр команд 187 и 0 для нормализации и константы количества сдвиговдля выравнивания во второй счетчик186. По коду из регистра команд дешифратор 189 настраивает первый коммутатор 190, второй коммутатор 196 исдвиговый регистр 193 на сдвиги на 4влево для нормализации и вправо длявыравнивания. При занесении информации в сдвиговый регистр 193, что определяется кодом на шине 60, дешифратор 189 разрешает прохождение синхроимпульсов с шины 43 на сдвиговый регистр 193 и второй счетчик 186, кото-рый увеличивается на 1 при нормализации или уменьшается на 1 при каждомсдвиге. Процесс заканчивается при обнулении счетчика 186 при выравниванииили при появлении ненулевой старшейцифры в сдвиговом регистре 193 принормализации, послЕ чего дешифратор189 выдает на шину 61 сигнал об окончании операции. Константа, подученная во втором счетчике 186 при нормализации по шине 62, считывается дляувеличения характеристики нормализуемого числа. Выполнение команд умножения начинается с занесения в регистркоманд 187 кода операции, а во второйсчетчик 186 - числа цифр множителяс шины 53, после чего дешифратором189 первый коммутатор 190, сдвиговыйрегистр 193 и второй коммутатор 196настраиваются на сдвиги на 4 вправо.Операции двоичного умножения выполняются циклами, за каждый иэ которыхобрабатывается одна шестнадцатеричнаяцифра множителя, Для этого в местнойпамяти 4 формируются кратные множимого 1, 2 и 4. Обрабатывать двухкрат-ные и четырехкратные значения множимого двоичных операндов фиксированнойдлины разрядная сетка арифметико-логического блока 11 не позволяет, поэтому младшая цифра множителя обрабатывается отдельно в блоке ускоренияарифметических операций 14, Для этого младшая шестнадцатеричная цифрамножимого по шине 53 заносится в первый регистр 188. Множимое в местнойпамяти 4 сдвигается на четыре разряда вправо, после чего формируютсясоответствующие кратные. В разряды32-63 сдвигового регистра заноситсямножитель по шине 53 через первыйкоммутатор 190, который сдвигаетсямикрокомандой по коду на шине 60 начетыре разряда. Одновременно выдвинутые разряды 60-63 попадают в третий регистр 195, откуда через второйсумматор 198, который складываетвыдвинутую цифру со значением триггера 197 (в исходном состоянии триггер 197 в нуле), и результат запоминается в четвертом регистре 199,значение которого по шине 59 вьдается для анализа микропрограммой. Триг.гер 197 устанавливается в единицу,если выдвинутая цифра больше или равна 8, для увеличения следующей выдвигаемой цифры на 1, или в коль впротивоположном случае. Цикл начинается с анализа цифры в четвертом регистре 199. По анализу цифры в четвертом регистре 199 к частичномупроизведению прибавляются или вычитаются, если цифра больше. 8) необходимые кратные, одновременно по кодамна шине 60 в каждой микрокоманде сложения (вычитания) байт, старшей тетрадой которого является второй регистр 191, а младший - бить 1 0-3 сдвигового регистра 193, через первыйсумматор складывается вычитается)соответствующим значением кратного,задаваемого дешифратора 189 согласнокоду на шине 60. Результат каждогосложения (вычитания) возвращается вовторой регистр 191 и биты 0-3 сдвигового регистра 193, Цикл заканчивается 5 1 О 15 20 25 30 35 4 О 45 5 О 55 микрокомандой сдвига, по которой частичное произведение в местной памятисдвигается на четыре разряда вправо,одновременно вьдвинутая младшая цифра частичного произведения из арифметико-логического блока 11 по шине64 выдвигается в разряды 32-35 сдвигового регистра 193, а вьдвигаемаяпри этом цифра множителя поступаетчерез третий регистр 195, второй сумматор 198 в четвертый регистр 199,как было описано вышее. Вместе с этимсдвигаются и 0-31 разряды сдвиговогорегистра 192, При этом значениевторого регистра 191 выдвигается вразряды 0-3 сдвигового регистра 193,а второй регистр 191 подготавливается к следующему циклу, По окончаниицикла из второго счетчика 186 вычитается 1, Циклы повторяются до обнуления второго счетчика 186, о чемдешифратор сообщает вьдачей сигналана шину 61. Обработав все цифры множимого, микропрограмма складываетв арифметико-логическом блоке. 11 раз.ряды 0-31 и 32-63, а получившуюсямладшую часть произведения помещаетв местную память 4. Старшая частьпроизведения также находится в местной памяти 4, где обрабатывалисьчастичные произведения, В командахумножения чисел с плавающей запятойи умножении десятичных чисел первыйрегистр 188, второй, регистр 191 ипервый сумматор 194 в операции неучаствуют. Подготовка к циклам производится аналогично подготовке умножения чисел с фиксированной запятой,Исключение составляет блокировка работы триггера 197 при умножении десятичных данных. В цикле при сложении (вычитании) кратных значений множимого с частичным произведением вблоке ускорения арифметических операций никаких действий не производится,По микрокоманде, сдвига по шине 64 вразряды 0-3 сдвигового регистра 193вьдвигаются четыре младших разряда,полученного в цикле частичного произведения которая является очереднойцифрой полного произведения. Такимобразом при обнулении второго счетчика 166 в сдвиговом регистре 193оказывается младшая половина произведения, В командах двоичного деления в регистр команд 187 на шине 53заносится код деления, по которомупервый коммутатор 190, сдвиговый ре 28124788427гистр 193 и .второй коммутатор 196 .настраиваются на сдвиги на 1 влево.В этом случае блок ускорения арифметических операций 14 используется для сдвига частичного остатка,зано 5 симого в сдвиговый регистр 193 на 1 влево непосредственно в той же микрокоманде занесения, В команде десятичного деления в регистр команд 187. заносится код десятичного деления, а во второй счетчик 186 - количество цифр частного, Дешифратор 189 настраивает первый коммутатор 190, сдвиговый регистр 193 и второй коммутатор 196 на сдвиги на 4 влево. Деление осуществляется попеременными циклами сложения и вычитания, в каждом из которых определяет очередную цифру частного. Количество сложений или вычитаний в цикле фиксируется в первом счетчике 185, откуда получившаяся цифра частного по шине 62 считывается в местную память 4. По окончании цикла, которое определяется по коду на шине 60 дешифратором 189, из значения второго счетчика 186 вычитается 1. Следующий цикл начинается занесением частичного остатка в сдвиговый регистр 193 с одновременным (в той же микрокоманде) сдвигом его на 4 разряда влево и обнулением первого счетчика 185, Операция заканчивается при обнулении второго счетчика 186 с выдачей сигнала на шину 61. На элемент И по шине 43 поступают синхроимпульсы СИ 1, СИЗ, СИ 5.Блок 15 работает следующим образом, В регистр управления 200 заносится код выполняемой операции, в первый40 регистр исходных длин 201 заносятся длины операндов, а в счетчик адреса операнда 206 адреса местной памяти 4, отведенные для размещения первого и второго операндов. Значение исходных45 длин операндов через коммутатор 204 под управлением первого дешифратора 203 заносятся во второй регистр исходных длин 207. При считывании операндов из памяти в регистр исходного адреса 202 записываются два младших50 бита адреса соответствующего операнда, определяющих положение первого байта операнда в слове, В первой микрокоманде считывания из основной памяти производятся следующие действия;считывается операнд и записывается в соответствии с адресом, находящимся в счетчике адреса операнда 206,помещаемым через шину 54 в регистрадреса местной памяти 2, в местнуюпамять 4. В этой же микрокоманде ад.рес в счетчике адреса операнда 206увеличивается на 1, что соответствует продвижению к следующему словуместной памяти 4, В сумматоре 208 иззначения длины операнда, находящегосяво втором регистре исходных длин, вычитается количество обработанныхбайт, определенных вторым дешифратором 209, и результат через коммутатор длин 204 записывается во второйрегистр исходных длин 207. Нафиг. 16 (а) показано размещение семибайтного операнда в основной памятис двумя младшими битами адреса 10.На Фиг, 16 (б) показан результат выполнения первого считывания в местнойпамяти 4. Последующие считывания выполняются аналогично, но в работувключается третий дешифратор 205,который через четырехразрядную шину 55и группу элементов ИСКЛЮЧАЮ 111 ЕЕ ИЛИ 27могут инвертировать значение младшегобита адреса слова местной памяти 4в каждом байте отдельно. Второе считывание производится аналогично первому, но будет инвертирован младшийадрес третьего байта местной памяти,и третий байт операнда будет записанв слово 0 местной памяти 4, тогдакак байт О, 1 и 2 будут записаны вслово 1 (фиг. 16(в). Таким же образом считан второй операнд, Изфиг. 16(в) видно, что операнды вместной памяти упорядочены в границахслова, но порядок байт не последовательный, Окончание считывания определяется по нулевому значению длиныоперанда во втором регистре исходнойдлины 207 вторым дешифратором 209,по сигналу которого первый дешифратор 203 выдает сигнал на шину 56 дляанализа окончания считывания микропрограммной, и приводит счетчик длины в исходное состояние. Далее выполняются микрокоманды арифметики.В микрокоманде арифметики на первыйи второй регистры 125 и 126 поступают младшие слова первого и второгооперандов, записанных в местнуюпамять 4, и через мультиплексоры 127130 и 131-134, поступают на входыузла арифметических и логических операций 135. Второй дешифратор 209 подвадцатичетырехразрядной шине 57 управляет передачей байтов от первогои второго регистров 125 и 126 через группы мультиплексоров 127-130 и 13 1-134. Обе группы работают одинаково, поэтому рассмотрим прохождение информации на примере, показанном5 на фиг. 16(в), В первой микрокоманде арифметически на первый регистр 125 считывается слово 0 местной памяти 4 с порядком байт 4, 5, 6, 3, а под управлением шины 57 этот порядок меняется на 3, 4, 5, 6. При второй мик рокоманде арифметики на первый регистр 125 считывается слово 1, из местной памяти 4 с порядком байт О 1, 2, Х, где Х - байт, не принадлежащий операнду. Под управлением шины 57 на входы узла арифметических и логических операций 135, операнд поступит в порядке Х, О, 1,. 2, причем передача байта Х через первый мультиплексор 127 будет заблокирована. В нулевой байт узла арифметических и логических операций 135 вместо байта Х поступает ноль, т.е. неполное слово дополняется слева нулями. Во всех этих операциях происходит модификация второго регистра исходных длин 207 и.при его обнулении по шине 56 выдается признак окончания арифметических операций. Результат арифметических операций расположен в местной памяти 4, как показано на , фиг, 16(г), где О, 1, 2,3,4,5 и 6 последовательные байты операнца, а Х - байт, не принадлежащий результату. Результат должен быть записан в основ. ную память 8 согласно фиг, 16(а). В первой микрокоманде записи в первый регистр 25 из местной памяти 4 будет считано слово О (3,4,5 и 6 байты)40 код, поступающий по шине 57 из второго дешифратора, разрешит. передачу через первый, второй, третий и четвер тый дешифраторы 127-130 на шину 66 в порядке 4, 5, 6, 3, причем код бло 45 кировки указанных мультиплексоров будет 1110, т,е. передача через четвертый мультиплексор 130 заблокирована. Этот же код поступает в основную память в качестве маски записи, по кото.50 рой третий байт записываемого слова в основной памяти изменен не будет, а запишутся только байты О, 1,2 - байты 4,5,6 результата. При выполнении второй микрокоманды записи в первый регистр 125 считывается первое слово честной памяти, фиг, 16(г), причем третьим дешифратором 205 через шину 55 и элементы ИСКЛНТЧАЮЩЕЕ ИЛИ 27проинвертируется младший бит адресанулевого байта (байт 0 будет считаниз 0 слова), в последовательности 3,О, 1 и 2 байтов. Код на шине 57 разрешит выдачу на шину 66 через первый,второй, третий и четвертый мультиплексоры 127-130 в последовательности0,1,2,3, код блокировки будет 1111,обеспечит работу всех четырех мультиплексоров и, являясь одновременномаской записи, запнсь полного слова,При арифметических операциях и записирезультата продвижения по адресамместной памяти 4 определение концаоперации и выдача сообщения об окончании аналогична описанной в операциях считывания. В каждой микрокомандесчитывания и записи на второй регистр126 из блока выборки команд 1 поступает адрес операнда в основной памяти 8,который по шине 64 поступает в регистр адреса 114 блока связи с памятью 7,а через пятый, шестой, седьмой ивосьмой мультиплексоры 131-134, которые кодом на шине 57 обеспечиваютнормальную передачу байтов, - на входузла арифметических и логических операций 135, В узле арифметических илогических операций 135 под управлением шин 69 и 74 производится уменьшение адреса на 4 и последующая записьмодифицированного адреса на прежнееместоБлок регистров связи с дополнительными средствами 16 (Фиг, 10)предназначен для подключения к процессору специализированных устройств,позволяющих повысить его производительность для определенных классовзадач. Блок связи с дополнительнымисредствами работает следующим образом: в восьмибайтный регистр данных211 по шине 53 заносится информация,требующая обработку. В регистр управ.ления 212 по шине 53 заносится управ.ляющая информация, представляющаякоманду, поступающую по шине 32 вспециализированное устройство , согласно укаэанной команде специализированное устройство забирает по шине31 операнды из регистра данных 211и по шине 29 заносит обратно результат обработки, сопровождая его управляющей информацией, заносимой в регистр управления 212 по шине 30. Управляющая информация поступает пошине 94 в арифметико-логический блок11 для анализа, по результатам кото 32124788431рого определяется окончание, и ре-.зультат обработки по шине 96 забирается в процессор, При необходимостиобеспечения прямого доступа к основной памяти специализированное устрой.ство заносит в управляющий регистр212 по шине 30 маски записи в основную память и код, обеспечивающий прием по шине 28 адреса необходимойобласти памяти в регистр адреса 210,который по шине 93 поступает в блоксвязи с памятью 7, режим работы спамятью (" Запись"/"Чтение" ) по шине 34, поступающей в канал, и установку триггера 213, который по шине33 вьщает в каналы ввода-вывода запрос на обмен. Маска записи по шине5 поступает в блок связи с памятью7.,Обмен информацией между основнойпамятью 8 и регистром данных 211обеспечивается оборудованием каналапо шине 35, обеспечивающей сбростриггера 213, и управлением регистром данных 211 при окончании обмена.Блок 17 работает следующим образом. Перед выполнением в каналахввода-вывода начальной выборки устройства по сигналам записи,1 и записи 2, которые являются результатомдешифрации соответствующих микрокоманд записи в каналах ввода-выводаи которые поступают из соответствующего канала ввода-вывода на 6 и 7входы устройства, а по шинам 37 и38 - в блок соответственно, сначалав регистр 215, а затем в регистр 214по шинам 53 заносятся первый и второй байты адреса. Причем первый ивторой байты текущего адреса страницы заносятся в регистр 215 черезгруппы элементов И 217 и ИЛИ 222, ав регистр 214, первый и второй байтыначального адреса следующей страницызаносятся непосредственно с шин 53.Третий байт текущего адреса страницызаносится в регистр 216 непосредственно с шин 53,После конца передачи информационного массива по текущему адресу страницы, т.е. после передачи 2048 байтмежду каналами ввода-вывода и основной памятью, по сигналу перезаписи,который вырабатывается в блоке запросов на косвенную адресацию, поступающем в блок по шине 91, информация изрегистра 214 через группы элементовИ 218 и ИЛИ 222 заносится в регистр215. Новая информация в регистре 215 и старая информация в регистре 216 становятся текущим образом страницы, а начальный адрес следующей страницыпо сигналу из канала, поступающему 5в блок по шине 37, заносится с шины 53 в регистр 214. Перезапись информации из регистра 214 в регистр215 осуществляется до тех пор, пока 1 О не будут переданы между каналом вводавывода и основной памятью все страницы обменного массива, Чтение текущего адреса страницы выполняется по сивналу чтения из канала, который посту 15 пает на 5 вход устройства, а в блок -по шине 36. Этот сигнал стробируетгруппы элементов И 218 и 219, черезкоторые адрес, из регистра 214 поступает на шину 92,Блок 18 работает следующим образом, Адрес конца страницы определяется путем анализа двенадцатого разряда текущего адреса страницы (байтдва бит четыре), который поступает в блок по шине. 89 каждый раз до модификации текущего адреса страницы и после модификации адреса страницы, в процессе выполнения разделенного цикла, в течение которого происходитобмен единицей информации между каналами ввода-вывода и основной памятью. Сигнал с шины 89 поступает на вход триггера 224 и элемент ИСКЛЮЧАЮЩЕЕ ИЛИ 223. Если двенадцатый разрядпосле модификации текущего адреса 35страницы не изменился, триггер 225 не будет установлен в единицу. Если изменение произойдет, триггер 225 установится в единицу и в разделенном цикле по синхроимпульсу, поступающему из канала по шине 42 и синх- роимпульсу от синхронизатора процессора через элемент И 227 будет взведен триггер 226, который по шине 90 45выставит сигнал конца страницы.Последовательность срабатываниятриггеров 224-226 определяется последовательностью поступления синхроимпульсов по шине 43, и в частности, .по синхроимпульсам СИ 1, СИ 5, СИ 1 со,ответственно, которые вырабатываются синхронизатором последовательно друг за другом без перекрытия, семь синхроимпульсов в каждом цикле процессора. Следовательно, если в триггер 224 55 155 информация будет занесена по СИ 1 очередного цикла процессора, то в триггер 226 информация будет занесена по СИ 1 следующего цикла процессора. Эле 34124788433мент И 227 стробируется сикхроимпульсом СИ 7. Элемент 228 - СИ 1. На входэлемента И 228 по шине 79 из блока 6поступает сигнал установки в исходноесостояние триггеров 224 и 225,Последовательность поступления пошине 43 синхроимпульсов показана нафиг. 17.Блок 19 работает следующим образом. Перед выполнением в каналахввода-вывода начальной выборки устройства, по сигналам записи 1 и записи 2, которые являются результатомдешифрации соответствующих микрокоманд записи в каналах ввода-вывода,которые поступают из соответствующего канала ввода-вывода на 6 и 7 входы устройства, а по шинам 37 и 38 вблок соответственно, устанавливаются триггеры 234 и 236. Причем сначала через элемент ИЛИ 237 устанавлива.ется триггер 236, инверсный выходкоторого стробирует элемент И 236,поэтому после установки триггера234 по сигналу записи 1, поступающему в блок по шине 37, триггер 235не будет взведен до техпор, пока несбросится триггер 236, триггер 235по шине 91 инверсным выходом управляет записью информации с шины 53в регистр 215 блока хранения адресастраницы 17 путем стробирования группы элементов И 217, а прямым выходомуправляет перезаписью информацииизрегистра 214 в регистр 215 путемстробирования группы элементов И 218и элемента ИЛИ 221 в блоке храненияадреса страницы 17. После того, какна вход блока по шине 90 поступитсигнал конца страницы, этот сигналчерез элемент И 232, который стробируетсй управляющим сигналом в видепотенциала, поступающего из каналаввода-вывода по шине 40, и управляющим сигналом определенной длительности, поступаюещго из канала вводавывода по шине 4 1, сбросит триггер236 и разрешит через элемент И 230установку триггера 235 по сигналуот ранее установленного триггера 234.Прямой вход триггера 235 по шине 91разрешает перезапись информации изрегистра 214 в регистр 215 блока хранения адреса страницы 17, сбрасываетчерез элемент И 229 триггер 234 и устанавливает через элемент И 23 1 иэлемент ИЛИ 237 триггер 236, Послесброса триггера 234 этот триггер инверскым выходом разрешит через элемент И 233, стробируемый потенциалом,поступающим из канала ввода-выводапо шине 40, выдачу в канал ввода-вывода сигнала запроса на косвеннуюадресацию. После сброса триггера 234тригер 235 ке будет сброшен, так какэлемент И 230 будет запрещен инверс 1 Оным выходом триггера 236. Триггер 235будет сброшен в следующей микрокоманде по сикхроимпульсу СИ 1. После того,как по запросу на косвенную адресациювыданному в какал ввода;вывода, будет15выполняться занесение в блок храненияадреса страницы 17 начального адресаследующей страницы, по сигналу записи 1, поступающему из канала вводавывода в блок по шине 37, н становится триггер 234.Стробирование элемента И 229, элемента И 230 триггера 235 и элементаИ 231 выполняется по СИЗ, СИ 1, СИ 1следующего цикла и СИЗ соответственно, поступающих в блок по шине 43,С целью организации одновременнойработы включенных в состав ЭВМ каналов ввода-вывода (в ЭВМ ЕС 1036 включены четыре блок-мультиплекскых. канала), что позволяет повысить быстродейЗОствие. процессора за счет более быстрой органиэации обмена массивами данных между основной памятью и каналами ввода-вывода, блок хранения адреса страницы 17 и блок 19 реализованыв процессоре для каждого канала вводавывода отдельно. Блок 18 являетсяобщим блоком для всех каналов вводавывода. Информация, считываемая изблока 17 по шине 92, от каждого блока 17 поступает на вторую группу элементов ИЛИ 23 (фиг, 1),Режим работы блока 20 задается спомощью регистра 240, информация вкоторый поступает по шине 53, и дешифратора 24 1, на вход которого подается из регистра 240 информация о режиме работы и по шине 50 информацияиз узла микропрограммйого управленияб. С выхода дешифратора 241 поступают5 Руправляющие сигналы на .управляющиевходы коммутатора 238 для выбора нужной шины, поступающей ка вход коммутатора, в матрицу памяти 239 длястробирования записи данных из коммутатора 239 и на вход счетчика 242,адресуемого матрицу памяти 239, Прикаждой записи в матрицу памяти 239счетчик 242 модифицируется на "+1".Процессор работает под управлени-, ем микропрограмм, хранящихся в.блоке 9 или блоке 10, В микропрограммах используется несколько типов микро- команд, показанных на фиг. 18, Первые четыре бита микрокоманды определяют ее тип, На фиг. 10(а) показана структура микрокоманды ПЕРЕКЛЮЧЕНИЕ МОДУЛЯ, Эта микрокоманда обеспечивает 10 переход на любую микракоманду в управляющей памяти 9 или оперативнойпамяти микропрограмм 10, заданную адресом в поле модули; ветвление почетырем направлениям, определяемымполями "Источник перехода" и "Условиеперехода", После "Источник перехода"определяет байт, а поле "Условие перехода" задает два бита иэ этогобайта, по которым осуществляется ветвление на фиг. 18(б) показана структура микрокоманды Переход", Эта микрокоманда обеспечивает возможность устанавливать или сбрасывать биты,заданные константой в поле К, в байте, укаэанном в поле "Источник перехода"; или осуществлять переход к лю 25 бой микрокоманде и ветвление по четырем направлениям или шестнадцати направлениям, что задается полем "Режим". На фиг, 18(в) показана структура микрокоманд "Переход с возвратом" и "Возврат", которые различаются битом режим. Функция микрокоманды "Переход с возвратом" состоит в запоминании информации в регистре, задан 35 ном полем "Регистр возврата" для последующего возврата на прерванную микропрограмму, осуществляемую микрокомандой "Возврат", Обе микрокоманды40 могут осуществлять ветвление по че. тырем направлениям, заданным полем "Условие перехода". На фиг, 18(г) : показана структура микрокоманды "Пересыпка". Микрокоманда "Пересылка" обеспечивает пересыпку слова или45 любых заданных байтов слова, что задается четырехбитной маской из регистра, заданного полем "Источник", в регистр, заданный полем "Назначение" и обеспечивает ветвление по четырем направлениям, эаданныи полем "Условие перехода", На фиг. 18(д) показана микрокоманда "Память", которая обеспечивает обмен данными между блоком 8, адрес которой находится в регистре, укаэанном полем "Источни адреса", и регистром, указанным полем "Регистр данных и .ветвление" по четырем направлениям, заданным полем(слово, полуслово, байт) и его направление (запись или чтение) задается кодами микрокоманды 4-7 и полем"Режим, которым указывается такженеобходимость модификации адреса на4 в используемом для адресации регистре, На фиг, 18(с) показана струк.тура микрокоманды "Арифметика", Кодмикрокоманды "Арифметика" 8-Г определяет различные виды обработки: работа по словам, байтами, константами,заданными полем "Второй операнд",место записи результата операции(на место первого операнда, на местовторого операнда, сохранение в узлеарифметических и логических операций 135). Поля первый операнд и второй операнд указывают регистры, в которых находятся соответствующие операнды. Поле Операция" задает режимработы узла арифметических и логических операций 135. Полем "Режим" обеспечивается управление входами узлаарифметических и логических операцийтакими, как блокировка передачи некоторых байт на обработку, "Сдвиг второго операнда на 4 разряда вправо,Поле "Условие перехода" обеспечиваетветвление по четырем направлениям. Рассмотрим работу процессора на примере выполнения команды сдвига, Формат команды показан на фиг, 19(а), Биты 0-7 определяют код операции, биты 8-11 - адрес общего регистра местной памяти 4, хранящего первый операнд. Биты 12-15 не используются. Биты 16- 19 определяют адрес общего регистра местной памяти, хранящей базовый адрес второго операнда, а биты 20-31 - смещение для адреса второго операнда, Адрес второго операнда в командах сдвига не является адресом данных; 6 его младших битов показывают, на сколько позиций необходимо произвести сдвиг, Остальная часть адреса игнорируется, Выполнение команды делится на две фазы: выборки команды и выполнения (фиг.19 б) В фазе выборки команд работает блок 1Адрес из счетчика адреса команд 105 через схему ИЛИ 107, шину 49, блок 12 и шину 83 поступает в регистр адреса 114 блока 7. Блок 7 обеспечивает выдачу команды из блока 8 или матрицы буферной памяти 118 черезЗО Ф 12478Изобретение относится к цифровой вычислительной технике и может быть использовано в электронных вычислительных машинах среднего уровня производительности общего назначения.Целью изобретения являетСя повыше, ние быстродействия процессора путем введения технических средств для аппаратной трассировкИ программ и микро 1программ. 10На фиг. 1 изображена функциональная схема процессора; на фиг. 2 ехема блока выборки команд; на фиг3 - схема блока микропрограммного управления; на фиг, 4 - схема блока коммутации адреса памяти; на фиг. 5 - схема арифметико-логического блока, на фиг. 6 - схема блока регистров преобразования виртуальных адресов, на фиг. 7 - схема блока ре. гистров динамической переадресации микрокоманд, на фиг, 8 - схема блока ускорення арифметических операций; на фиг. 9 - схема блока обработки данных переменной длины, на фиг, 10- схема блока регистров связи, нафиг, 11 - схема блока памяти адреса страницы; на фиг, 12 - схема блока триггеров анализа конца страницы; на фиг, 13- схема блока запросов на косвенную адресацию; на фиг14 - схема блока памяти трассировки, на фиг. 15 - таблица занесения данных в сдвиговый регистр, на фиг, 16 в пример размещения десятичных данных в местной памяти; на фиг 17 - времен.35 ная диаграмма входа синхронизации процессора, на фиг. 18 - структура микрокоманд процессора, на фиг, 19 формат команды сдвига и алгоритм ее40 выполнения.Процессор (фиг, 1) содержит блок 1 выборки команд, регистр 2 адреса местной памяти, первый коммутатор 3 данных блок 4 местной памяти втоФ В рой коммутатор 5 данных, блок 6 микропрограммного управления, блок 7 коммутации адреса памяти, блок 8 основной памяти, блок 9 управляющей памяти, блок 10 оперативной памяти микропрограмм, арифметико-логический блок 11, блок 12 регистров преобразования виртуальных адресов, блок 13 регистров динамической переадресации микрокоманд, блок 14 ускорения арифметико-логических операции, блок 15 обработки данных переменной длины , блок 16 регистров связи, блок 17 памяти адреса страницы, блок 18 триг 84 2геров анализа конца страницы, блок 19 запросов на косвенную, адресацию, блок 20 памяти трассировки, первую группу элементов ИЛИ 21, третий коммутатор 22 данных, вторую группу элементов ИЛИ 23, первую группу элементов И 24, вторую группу элементов И 25, триггер 26 выбора памяти, группу элементов ИСКЛЮЧАКЙ 1 ЕЕ ИЛИ 27, адресный вход 28, вход данных, процессора 29, первый вход кода операции процессора 30, выход данных процессора 31, выход управления выбором процессора 32, выход запроса на обмен процессора 33, выход режима работы процессора 34, вход окончания обмена процессора 35, второй,третий, четвертый входы кода операции.проддессора 36, 37 и 38 соответственно, выход запроса в канал процессора 9, пятый, шестой входы кода, операции процессора 40 и 41 соответственно, синхровход канала процессора 42, синхровход процессора 43, вход масок канала процессора 44. Позициями 45-100 обозначены входы и выходы блоков процессора.Первый адресный выход блока 1 подключен к первому входу данных регист- . ра 2. Второй адресный выход блока 1 соединен с первым входом данных блока 20, второй. вход. данных которого подключен к выходу кода операции блока 1 и первому адресному входу блока 6, Третий адресный выход блока 1 соединен с адресным входом блока 12, с первыми входами данных первого коммутатора 3 и второго коммутатора 5 н с адресным входом блока 15. Первый и второй управляющие выходы блока 1 подключены соответственно к первому управляющему входу блока 14 и установочному входу блока 13 соответственно. Управляющий вход блока 1 соединен с выходом управления выборкой команд блока 6. Вход данных блока 1 соединен с входом данных блока 4, входом данных блока 12, входом данных блока 13, первым входом блока 14, входом данных блока 15, первым входом данных блока 16, с входом данных блока 17, с третьим входом данных блока 20 и выходом данных третьего коммутатора 22,Второй и третий входы данных регистра 2 соединены с первым адресным выходом блока 6 и адресным выходом блока 15 соответственно. Четвертый вход данных регистра 2 соединен с первым выходом данных арифметико-логического блока 11 и первым входом15 20 25 50 регистр выходных данных 124, шину 82,третий коммутатор 22.и шину 53 вблок 1. Команда пошине 53 заноситсяв первый, второй и трЕтий буферныерегистры 101, 102 и 103, откуда кодоперации (биты 0-7 команды) заносится в регистр кода операции 106, биты8-15 команды заносятся в регистр непосредственного байта 109, а биты 2031 - в регистр адресов операндов 104Следующей микрокомандой будет базирование второго адреса,Эта операция осуществляется следующим образом. Черезкоммутатор адреса местной памяти 1.10по шине 88 заносится в регистр адреса местной памяти 2 адрес общего регистра, заданного полем В 2, Слово,заданное этим адресом иэ блока 4 через второй коммутатор 5 и шину 67,запишется в первый регистр 125 арифметико-логического блока 11. Одновременно во второй регистр 126 этого блока через шину 99, первый коммутатор3, шину 49, и схему ИЛИ 107 запишется смещение (поле Л 2 команды) из регистра адресов операндов 104, По шинам 69 и 74 в узле арифметическихи логических операций 135 будет задана функция сложения слов, Получившийся в результате полный адрес второгооперанда по шине 65 через третий коммутатор 22 выдается на шину 53, Этотадрес будет записан в регистр адресовоперандов 104. В этой же микрокоманде по коду операции из регистра кодаоперации 106 и коду, заданному пошине 47 дешифратором 112 блока 6, дешифратором 108 по.шине 48 занесетсякод операции в регистр команды 187и разрешится прием битов 2,3,4 во вто.рой счетчик .186 (количество сдвиговна 8) и битов 5,6,7 в первый счетчик185 (количество сдвигов на 1) из третьего байта адреса, находяшегося нашине 53. Последней микрокомандой фазы выборки будет пересылка кода операции из регистра кода операции 106по шине 46 на коммутатор адреса микрокоманды 113 блока 6 для формирования адреса первой микрокоманды фазывыполнения. При этом по коду операции иэ регистра кода операции 06 икоду на шине 47 из дешифратора 112дешифратором 108 будет промодифицирован счетчик адреса команд 105. Первоймикрокомандой фазы выполнения будетпересылка первого операнда из общегорегистра блока 4 в блок 14. Для этого через коммутатор адреса. местнойпамяти 110 иэ регистра непосредственного операнда 109 по шине 88 в регистрадреса блока 2 будет занесено поле Р 1команды, являющееся адресом первогооперанда в блоке .4. Указанный операндчерез первый коммутатор 3, шину 99 из блока 4 запишется во второй ре 1 Огистр 126. Код на шинах 69 и 74 опре делит прохождение операнда через арифметико-логический блок 11 без изменений. Операнд через шину 65, третий коммутатор 22, шину 53 поступит на вход блока 14 где через первый коммутатор 190 будет помещен в сдвиговый регистр 193. После занесения операнда в сдвиговый регистр 193 блок 12 начнет выполнять "двиги, как было описано в описании работы блока, После за-, несения операнда процессор перейдет на микрокоманду анализа регистра состояния 136, в котором по шине 61 блоком 14 будет установлен признак окончания сдвигов, При анализе содерь жимое регистра состояний 136 по шине 68 поступает на коммутатор адреса микрокоманды 113, где под управлением дешифратора 113 адрес микрокоманды не изменяется (повторяется выполняемая микрокоманда), если отсутствует признак окончания, или формируется адрес следующей микрокоманды в противном случае. При определении окончания сдвига происходит переход к микрокоманде пересылки результата сдвига в блок 4. При выполнении этой микрокоманды через коммутатор адреса местной памяти 110 из регистра непос редственного операнда 109 поле Р 1 4 Окоманды (адрес общего регистра с пер вым операндом) по шине 88 заносится в регистр адреса блока 2, Результат сдвига по шине 63 через второй ком- мутатор 5 и шину 67 будет занесен в первый регистр 125. Блоком 6 по шинам 69 и 74 будет задана прямая передача первого входа узла арифметических и логических операций 135, врезультате чего сдвинутый операндбудет выцан на шину 65. Далее черезтретий коммутатор 22 и шину 53 онбудет записан в блок 4 по адресу,заданному регистром адреса блока 2Последней микрокомандой фазы выполнения будет микрокоманда перехода,по которой будет передано управлениепервой микрокоманде фазы выборкиследующей команды. Выполнение каждоймикрокоманды осуществляется блоком 6. Выполняемая микрокоманда находится в регистре микрокоманд 114. По соответствующим полям микрокоманды дешифратором 112 вырабатываются управляю 5 щие сигналы и через коммутатор адре- . са микрокоманды 113 определяется источник адреса следующей микрокоманды. Адрес следующей микрокоманды по шине 72 через блок 13 и шину .77 поступает в блок 9. Считанная микрокоманда через вторую группу элементов И 25, первую группу элементов ИЛИ 21 и шину 78 поступает в регистр микрокоманд и ей передается управление.Формула изобретения1, Процессор, содержащий блок выборки команд, регистр адреса местной памяти первый коммутатор данных, блок местной памяти, второй коммутатор данных, блок микропрограммного управления, блок коммутации адреса памяти, блок управляющей памяти, блок, основной памяти, арифметика-логический блок, блок регистров преобразова" ния виртуальных адресов и третий коммутатор. данных, причем управляющий вход, первый адресный и второй адресный выходы блока выборки команд соединены с выходом управления выборкой команд блока микропрограммного управления, первым входом данных регистра адреса местной памяти и адресным вхо 35 дом блока регистров преобразования виртуальных адресов сооветственно, второй вход данных, третий вход данных, первый адресный вьмод регистра40 адреса местной памяти подключены к первому адресному выходу блока микропрограммного управления, первому выходу данных арифметико-логического блока и первому входу данных третьего коммутатора данных, первому адресно 45 му входу блока местной памяти соответственно, первый и второй входы данных, управляющий вход и выход данньм первого коммутатора данных соединены с вторым адресным выходом блока выборки команд и первым входом данных второго коммутатора данных, выходом данных блока местной памяти и вторым входом данных второго коммутатора данных, первым выходом управления коммутацией данных блока микро; .программного управления, первым входом данных арифметико-логического блока соответственно, управляющийвход и выход данных второго коммутатора данных подключены к второму выходу управления коммутацией данныхблока микропрограммного управленияи второму входу данных арифметикологического блока соответственно,первый и второй выходы кода операции и первый адресный вход блока микропрограммного управления соединеныс первым н вторым входами кода операции и вторым выходом данных арифметико-логического блока соответственно, второй, третий и четвертый адресные входы, выходы управления коммутацией адреса и управления выборкойпамяти блока микропрограммного управления подключены к выходу кода операции блока выборки команд, третьемувыходу данных арифметико-логическогоблока и первому входу данных блокакоммутации адреса памяти, первому адресному выходу блока регист 1 ов преобразования виртуальных адресов, управляющему входу блока управляющей памяти, управляющим входам блока коммутации адреса памяти и блока основнойпамяти соответственно, первый, второйвыходы данных, адресный выход, выходмаски, второй, третий и четвертыйвходы данных блока коммутации адресапамяти соединены с вторым входом данных третьего коммутатора данных, входом данных, адресным входом и входоммаски блока основной памяти,четвертым выходом данных арифметико-логического блока и входом данных блокауправляющей памяти, выходом данныхблока основной памяти, вторым адресным выходом блока регистров преобразования виртуальных адресов соответственно, вход данных блока регистровпреобразования виртуальных адресовсоединен с входом данных блока выборки команд и выходом третьего коммутатора данных, о т л и ч а ю щ и йс я тем, что, с целью повышениябыстродействия, он содержит блок оперативной памяти микропрограмм, блокрегистров динамической переадресациимикрокоманд, блок ускорения арифметических операций, блок обработки данных переменной длины, блок регистровсвязи, блок памяти адреса страницы,блок триггеров анализа конца страницы, блок запросов на косвенную адреса.цию, блок памяти трассировки, первуюи вторую группы элементов ИЛИ, первуюи вторую группы элементов И, триггер выборки памяти и группу элементов ИСКЛЮЧАЮЩЕЕ ИЛИ, причем вход данных, управляющий, адресныйвходы и выхоц блока оперативной памяти микропрограмм подключены к четвертому выходу данных арифметико-логического блока, выходу управления коммутацией адреса блока микропрограммного управления, адресному выходу блока регистров динамичес кой переадресации микрокоманд и адрес. ному входу блока управляющей памяти, первым входам элементов И первой груп пы соответственно, вход данных, установочный, управляющий, адресный входы и управляющий выход блока регистров динамической переадресации микрокоманд соединены с выходом данных третьего коммутатора данных, входом данных блока местной памяти, первым входом данных блока памяти трассировки, первым входом данных блока памяти адреса страницы, первым входом данных блока регистров связи, входом данных блока обработки данных переменной длины, первым входом данных блока ускорения арифметических операций, вторым управляющим выходом блока выборки команд, выходом управления динамической переадресацией блока микропрограммного управления, вторым адресным выходом блока микропрограммного управления, пятым адресным входом блока микропрограммного управЗг ления соответственно, синхровход,первый и второй управляющие входы, второй вход данных, управляющий выход, первый, второй, третий выходы данных блока ускорения арифметических операций подключены к синхровходу процессора и первому синхровходу бгока триггеров анализа конца страницы, к синхровходу блока запросов на косвенную адресацию, к первому управляю,г щему .выходу блока выборки команд, к выходу управления быстрыми операциями блока микропрограммного управленя третьему выходу данных арифметикологического блока, третьему входу ко 50 да операции арифметико-логического блока,.четвертому входу данных второго коммутатора данных, пятому входу данных второго коммутатора дацных, шестому адресному входу блока микропрограммного управления соответствен- -5 но, управляющий и адресный входы,первый, второй и третий управляющие выходы и адресныи выход блока обработки данных переменной длины соединены с выходом управления обработкой данных переменной длины блока микропрограммного управления, вторым адресным выходом блока выборки команд, с четвертым вхоцом кода операции арифметика-логического блока, пятым входом данных блока коммутации адреса памяти и пятым входом кода операции аримети ко-логического блока, вторым входом группы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ,четвертым входом,цанных регистра адреса местной памяти соответственно, адресный вход, второй и третий входы данных, первый, второй, третий и четвертый выходы данных, первь;й и второй управляющие выходы, управляющий вход, адресный выход, выход маски блока регистров связи подключены к адресному входу, входу данных и первому входу кода операции процессора, шестому входу данных второго коммутатора данных, седьмому входу данных второго коммутатора данных, выходу данных про. цессора, выходу управления выводом процессора, выходу режима работы процессора, выходу запроса на обмен процессора, входу окончания обмена процессора, первым входам элементов ИЛИ второй группы, шестому входу данных блока коммутации адреса памяти соответственно, первый, второй, третий и четвертый входы управления, вход данных и выход данных блока памяти адреса страницы соецинены с вторым входом кода операции процессора, третьим входом кода операции процессора и пер. вым управляющим входом блока запросов на косвенную адресацию четвертым входом кода операции процессора и вторым управляющим входом блока запросов на косвенную адресацию, первым управляющим выходом блока запро. сов на косвенную адресацию, выходом третьего коммутатора данных, вторыми входами элементов ИЛИ второй группы соответственно, второй синхровход,Оуправляющий вход, вход данных и управляющий выход блока триггеров анализа конца страницы подключень к синхровходу канала процессора, выходу управления анализом конца страницы блока микропрограммного управления выходам элементов ИЛИ второй группы, третьему входу данных второго коммутатора данных и третьему входу данных первого коммутатора данных третьему управляющему входу блоказапросов на .косвенную адресацию соответственно, второй управляющий выход, четвертый и пятый управляющие входы блока запросов на косвенную адресацию соединены с выходом запроса5 в канал процессора, пятым входом кода операции процессора, шестым входом кода операции процессора соответствен-. но, второй, третий и четвертый входы данных, выход данных и управляющий вход блока памяти трассировки подключены к третьему адресному выходу блокавыборки команд, выходу кода операции блока выборки команд, второму адресному выходу блока микропрограммного управления, восьмому входу данных второго коммутатора данных, выходу управления трассировкой блока, микропрограммного управления соответ. ственно, первые и вторые входы и выходы элементов ИЛИ первой группы соединены с выходами элементов И пер вой группы, выходами элементов И второй группы, входом данных блока микропрограммного управления и третьим входом данных третьего коммутатора данных соответственно, выходы элементов ИЛИ второй группы подключены к второму входу данных блока триггеров анализа конца страницы, вторые входы элементов И первой группы соедине- . ны с прямым выходом триггера выборки памяти соответственно, первые и вторые входы элементов И второй группы подключены к инверсному выходу тригге 35 ра выборки памяти, выходу данных блока управляющей памяти соответственно, установочный, сбросовый входы триггера выборки памяти подключены к выхо 40 дам установки и сброса блока микро- программного управления соответственно, второй вход, выход группы элементов ИСКЛКЧАКЩЕЕ ИЛИ соединены с вторым адресным выходом регистра адреса45 местной памяти и вторым адресным входом блока местной памяти соответ- . ственно, седьмой вход данных блока коммутации адреса памяти подключен к входу масок канала процессора, при этом блок ускорения арифметических операций содержит первый счетчик, вто рой счетчик, регистр команды, первый регистр, дешифратор, первый коммутатор, второй регистр, элемент И, сдвиговый регистр, первый сумматор, третий регистр, второй коммутатор, триггер, второй сумматор, четвертый регистр, причем первые управляющие входы первого счетчика, второго счетчика и управляющий вход регистра команды соединены с первым управляющимвходом блока, входы данных первогосчетчика, второго счетчика, регистракоманд, первого регистра и лервыйвход данных первого коммутатора соединены с первым входом данных блока,входы синхронизации первого счетчика,второго счетчика, сдвигового регистраподключены к выходу элемента И, первый вход которого соединен с входомсинхронизации процессора, выходы данных первого и второго счетчиков подключены к второму выходу данных блока, вторые управляющие входы первогои второго счетчиков подключены к первому и второму выходам дешифраторасоответственно, первый управляющийвход которого соединен с вторым управ.ляющим входом блока, управляющие выходы первого и второго счетчиков Подключены к второму и третьем" управляющим входам дешифратора соответственно, первый вход данных которого соединен с выходом данных регистра команды, выход данных первого регистрасоединен с первым входом данных первого сумматора, второй вход данныхкоторого подключен .к выходу данныхвторого регистра и первому входу данных сдвигового регистра, первый выход данных которого соединен с входомданных второго коммутатора, выход дан.ных которого подключен к первому выходу данных блока, третий выход дешифратора подключен к управляющемувходу первого коммутатора, выход данных которого соединен с вторым входом данных сдвигового регистра, вто-рой выход данных которого подключенк входу данных третьего регистра, выход данных которого подключен к входу данных второго сумматора, выходкоторого соединен с входом данныхтриггера и входом данных четвертогорегистра, выход. данных которого подключен к третьему выходу данных блока, четвертый выход дешифратора сое-,динен с управляющим входом второгорегистра, вход данных которого подключен к первому выходу данных первого сумматора, второй выход данныхкоторого соединен с третьим входомданных сдвигового регистра, третийвыход которого подключен к второмувходу данных первого коммутатора,пятый выход дешифратора соединен суправляющим входом первого сумматора, третий вход данных которого подключен к червертому выходу данныхсдвигового регистра, четвертьгй входкоторого подключен к второму входуданных блока, шестой выход и второйвход дешифратора подключены к управ -ляющему входу и пятому выходу данныхсдвигового регистра соответственно,седьмой, восьмой, девятый, десятыйвыходы дешифратора соединены с управляющим входом второго коммутатора,управляющим выходом блока, вторымвходом элемента И, управляющим входом триггера соответственно, выходкоторого соединен с входом переносавторого сумматора, причем блок обработки данных переменной длины содержит регистр управления, первый регистр исходных длин, регистр исходныхадресов, первый дешифратор, коммутатор длин, второй дешифратор, счетчикадреса операнда, второй регистр исходных длин, сумматор, третий дешифратор, причем входы данньгх регистрауправления, первого регистра исходных длин и счетчика адреса операнцасоединены с входом данных блока, выход данных регистра управления соединен с входом данньгх первого,цешифратора, первый выход которого соединен с управляющим входом третьегодешифратора, выход которого подключен к выходу управления адресом местной памяти, выход данных первогорегистра исходных длин подключен кпервому входу данных коммутаторадлин, второй вход данных которогосоединен с выходом данных сумматора,первый вход данных которого подключен к выходу данньгх второго регистраисходных длин и к первому входу данных второго дешифратора, второй входданных которого соединен с вхоцомданных третьего дешифратора и с выходом данньгх регистра исходных адресов, вход данных которого подключенк адресному входу блока, второй выход первого дешифратора соециненуправляющим входом коммутатора длин,выход данных которого подключен квходу данных второго регистра исходных длин, третий и четвертый выходыпервого дешифратора соединены с первым и вторым управляющими входамивторого коммутатора соответственно,выход данных которого соединен с вторым входом данных сумматора, пятый выход и первый управляюпгий вход первого дешифратора подключены к второмууправляющему выходу блока и к первому управляющему выходу второго дешифратора, второй выход которого соединенс первым управляющим выходом блока,второй управляющий вход и шестой выход первого цешифратора соединены с 1 О управляющим входом блока и управляюшим входом счетчика адреса операнда,выход данных которого подключен кацресному выходу блока.2, Процессор по и, 1, о т л и ч а ю щ и й с я тем, что блок памяти адреса страницы содержит три регистра,четыре группы элементов И, элементИЛИ, группу элементов ИЛИ, причемвход данных блока соединен с первыми 20 входами элементов И первой группы,первого регистра и третьего регистра,второй управляющий вход блока подклю -чен к второму входу первого регистра,третий управляющий вход блока соединен с вторыми входами элемента ИЛИи третьего регистра, четвертый управ -ляющий вход блока подключен к вторымвходам элементов И первой группы,вторым входам элементов И второй группы и к первому входу элемента ИЛИ,первый управляющий вход блока соединен с вторьпи входами элементов И. третьей и четвертой групп, выходыкоторых соединены с выходами данныхблока, выход первого регистра подключен к первым входам элементов И второй группы, выходы которых соединеныс вторыми входами элементов ИЛИ группы, первые входы и выходы которыхсоединены с выходами элементов И первой группы и первым входом второгорегистра соответственно, второй входи выход второго регистра подключенык выходу элемента ИЛИ и первым входамэлементов И третьей группы соответственно, вьгход третьего регистра соединен с первыми входами элементов Ичетвертой группы.3. Процессор по п, 1, о т л ич а ю щ и Й с я тем, что блок запро Осов на косвенную адресацию содержиттри триггера, пять элементов И, элемент ИЛИ, причем второй управляющийвход блока соецинен с первым входомэлемента ИЛИ, первый управляющий входблока подключен к установочному входу первого триггера четвертый управляющий вход блока соединен с первымивходами четвертого и пятого элемен247884 48 г.7 тов И, третий управляющий вход блокаподключен к второму входу четвертогоэлемента И, пятый управляющий входблока соединен с третьим входом четвертого элемента И, выход которогоподключен к сбросовому входу третьего триггера, установочный вход и инверсный выход которого соединеныс выходом элемента ИЛИ и с первымвходом второго элемента И соответственно, синхровход блока подключенк первому входу первого элемента И,третьему входу второго элемента И,синхровходу второго триггера и перному входу третьего элемента И, прямойи инверсный выходы первого триггерасоединены с вторым входом второгоэлемента И и вторым входом пятогоэлемента И соответственно, выход второго элемента И подключен к установочному входу, второго триггера, прямой выход которого соединен с первымуправляющим выходом блока и вторымивходами первого и третьего элемен -тов И, инверсный выход триггера соединен с первым управляющим выходомблока, выход третьего элемента И соединен с вторым входом элемента ИЛИ,выход пятого элемента И подключен квторому управляющему выходу блока. 4, Процессор по п. 1, о т л и ч а.ю щ и й с я тем, что блок памятитрассировки содержит коммутатор, матрицу памяти, регистр, дешифратор,счетчик, причем первый, второй и тре- О тий входы данных коммутатора соединены с вторым, третьим и четвертымвходами данных блока соответственно,выход данных коммутатора подключенк входу данных матрицы памяти, управ. 5 ляющий вход которой соединен с первым выходом дешифратора, второй выход которого подключен к управляющему входу коммутатора, адресный входматрицы памяти .соединен с выходом 20 данных счетчика, управляющий входкоторого подключен к третьему выходудешифратора, вход данных которогосоединен с выходом, данных регистра,вход данных которого подкльчен к пер 25 вому входу данных блока, выход данных матрицы памяти соединен с выходом данных блока, управляющий входдешифратора подключен к управляющемувходу блока3 1247 данных третьего коммутатора 22. Г/ервый адресный выход регистра 2 подключен к первому входу группы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 27, выход которой подключен к первому адресному входу блока 4, выход которой подключен к вторым входам данных первого коммутатора 3 и второго коммутатора 5, выход данных которого соединен с вторым входам данных арифметика-логического 10 блока 11, первый вход данных которого соединен с выходом первого коммутатора 3, управляющий вход которого соединен с первым выходом управления коммутацией данных блока 6. Второй адресный выход регистра 2 подключен к вто - рому адресному .входу блока 4. Третий вход данных первого коммутатора 3 соединен с третьим входом данных вто рого коммутатора 5, входом данных блока 18 и выходом второй группы элементов ИЛИ 23, первый вход которой соединен с адресным выходом блока 16, адресный вход которого соединен с адресным входом 28. Четвертый, пятый, шестой, седьмой и восьмой входы данных второго коммутатора 5 соединены соответственно с первым и вторым выходами данных блока 14, первым и вторым выходами данных блоЭО ка 16 и с выходом данных блока 20, управляющий выход которого соединен с выходом управления трассировкой блока 6. Управляющий вход второго коммутатора 5 соединен с вторым выходом управления коммутацией данных блока 6. Первый и второй выходы кода операции блока 6 подключены соответственно к первому и второму входам кода. операции арифметика-логического блока 11, первый выход данных кото 40 рого соединен с вторым адресным входом блока 6, выход управления обработкой данных переменной длины ко - торого соединен с управляющим входом блока 15, выход управления адресом местной памяти которого соединен с вторым входом группы элементов ИСКЛЮЧАЮЩЕЕ ИЛИ 27, Выход установки и выход сброса блока 6 соединены соответственно с установочным и сбросовым входами триггера 26, прямой и инверснь 1 й выходы которого подключены соответственно к первым входам первой группы элементов И 24 и второй группы элементов И 25, выходы которых подключены соответственно к первому и, второму входам первой группы элементов ИЛИ 21, выход которой подключен 884 4 к входу данных блока 6 и к второму входу данных третьего коммутатора 22, третий вход данчых которого подключен к первому выходу данных блока 7. Выход управления коммутацией адреса блока 6 соединен с управляющим входом блока 9 и блока 10, выходы данных которых соединены соответственно с вторыми входами второй группы элементов И 25 и первой группы элементов И 24.Выход управления динамической переадресацией блока 6 подключен к управляющему входу блока 13, адресный выход которого подключен к адресным входам блока 9 и блока 10, входы данных которых подключены к первому входу данных блока 7 и четвертому выходу данных арифметика-логического блока 11. Выход управления анализом конца страницы блока 6 соединен с управляющим входом блока 18, первый вход синхронизации которого соединен с синхровходом процессора 43, входом синхронизации блока 19, входом синхронизации блока 14, управляющий выход которого соединен с третьим входом кода операции арифметика-логического блока 11, третий выход данных которого соединен с третьим адресным входом блока 6, вторым входом данных блока 7 и вторым входом данных блока 14. Выход управления выборкой памяти блока 6 подключен к управляющим входам блока 7 и блока 8, выход данных которой подключен к третьему входу данных блока 7, четвертый вход данных которого соединен с первым адресным выходом блока 12, второй адресный выход которого соединен с четвертым адресным входом блока 6, второй адресный выход которого соединенс четвертым входом данных блока 20и с адресным входом блока 13, управляющий выход которого подключен к пятому адресному входу блока 6, выходуправления быстрыми операциями которого соединен с вторым управляющимвходом блока 14, третий выход данныхкоторого соединен с шестым адреснымвходом блока 6. Выход маски и второйвыход данных блока 7 соединены соответственно с входом маски и входомданных блока 8, адресный вход которойсоединен с адресным выходом блока 7,пятый и шестой входы данных которогосоединены соответственно с входоммасок канала процессора 44 и выходаммасок блока 16, Седьмой вход данныхИтднсй распслсмюние спюронбИдюаЮюая аотть пап 1 с ц от о ц лпЮр ларою свююЬмоеИманол панях1247884 Юсрощ коканды сосиска Я Я варцгпн сыпслненил го сы 47 ркоконам согцрссание оцресо юо сылслненилАнврцпрмЫцщсянцкрсксконбпи,трекляченце иссцле"еойолцямбивакцеро сйтицю)З, усшнойадоемслстр вИлРоРлимгУЬф Р Риг. 7 У Составитель В.ПронинТехред Э,Чкюар корректор Л.Пилипенко Редактор И.Рыбч Заказ 4127/ одпис но ого коми ий и откРаушск 4/5 Произво нно-полиграфическое предприятие, г.укгород, ул,Проектная,Тирак ВНИИПИ Государствен по делам изобрете 113035, Москва Жблока 7 подключен к четвертому входу кода операции арифметнко-логического блока 11 и к первому управляющему выходу блока 15, второй управляющий вьжод которого подключен к пятому5 входу кода операции арифметико-логического блока 11. Второй и третий входы данных блока 16 подключены соответственно к входу данных процессора 29 и первому входу кода операции процессора 30, Третий и четвертый выходы данных блока 16 подключены соответственно к выходу данных процессора 3 1 и управляющему выходу управления выводом процессора 32. Первый и второй управляющие выходы блока 16 соединены соответственно с выходом режима работы процессора 34 с выходом запроса на обмен процессора 33, а его управляющий вход с входом окончания обмена процессора 35. Выход данных блока 17 соединен с вторым входом второй группы элементов ИЛИ 23, Первый управляющий вход блока 17 подключен к второму входу кода операции процессора 36. Второй и третий управляющие входы блока 17 соединены соответственно с третьим и четвертым входами кода операции процессора 37 и 38, Четвертый управляющий вход блока ,17 подключен к первому управляющему выходу блока 19, третий и четвертый управляющие входы которого соединены соответственно с пятым и шестым входами кода операции процес 35 сора 40 и 41. Второй управляющий вход блока 19 соединен с выходом запроса вканал процессора 39. Пятый управляющий вход блока 19 подключен к40 управляющему выходу блока 18, второй вход синхронизации которого подключен к синхровходу канала процессора 42,Блок 1 (Фиг, 2) содержит первый буферный регистр 101, второй буферный45 регистр 102, третий буферный регистр 103, регистр адресов операндов 104, счетчик адреса команд 105, регистр кода операции 106, коммутатор адресов 107 дешифратор 108 регистр не) Ф50 посредственного байта 190, коммутатор адреса местной памяти 110.Вход данных первого буферного регистра 101 саединен с входом данных счетчика адреса команд 105, первым входом данных регистра адресов операн дов 104 и входом данных 53. Выход данных первого буферного регистра 101 подключен к входу данных второго буферного регистра 102, управляющийвход которого подключен к управляющему входу первого буферного регистра101 и к первому управляющему выходудешифратора 108, второй н третийуправляющие выходы которого подключены соответственно к управляющим входам третьего буферного регистра 103и коммутатора адреса местной памяти110, выход данных которого подключенк первому адресному выходу 88,Первый выход данных второго буферного регистра 102 соединен входомтретьего буферного регистра 103, первый и второй выходы данных которогосоединены соответственно с вторымвходом данных регистра адресов операндов 104 и первым входом данных коммутатора адреса местной памяти 110, Второй и третий выходы данных второгобуферного регистра 102 подключены соответственно к третьему входу данныхрегистра адресов операндов 104 и квторому входу данных коммутатора адреса местной памяти 110, третий входданных которого подключен к выходуданных регистра непосредственно байта 109, вход данных которого подключен к третьему выходу данных третьего буферного регистра 103, четвертыйвыход данных которого подключен квходу данных дешифратора 108 и выходукода операции 46. Первый и второй выходы данных регистра адресов операндов104 соединены соответственно с первыми вторым входами группы элементовИЛИ 107, выход которых соединен стретьим адресным выходом 49. Выходданных счетчика адреса команд 105подключен к второму адресному входу45 и третьему входу группы элементовИЛИ 107, четвертый вход которых соединен с выходом данных дешифратора108, первый управляющий выход которого подключен к управляющему входусчетчика адреса команды 105. Второйи третий управляющие выходы дешифратора 108 подключены соответственнок первому и второму управляющим входам 48 и 50, а управляющий вход - куправляющему входу 47,Блок 6 (Фиг, 3) содержит регистрмикрокоманд 111, дешифратор 112 икоммутатор адреса микрокоманд 113.Вход данных регистра микрокоманд 111соединен с входом данных 78. Первый,второй, третий и четвертый выходыданных регистра микрокоманд 111 сое.динены соответственно с первым адресным выходом 71, пятымуправляющимвыходом 69, первым входом данныхдешифратора 112, первым входам данныхкоммутатора адреса микрокаманды 113,второй, третий, четвертый, пятый,шестой, седьмой входы данных которогосоответственно с первым адреснымвходом 46, вторым адресным входом 68,третьим адресным входом 64, четвертымадресным входом 73, пятым адреснымвходом 75 и шестым адресным входом59; Первый, второй, третий, четвер-тый, пятыЙ, шетЙ, седьоЙ, восмоЙ,девятый, десятый, одиннадцатый, двенадцатый, тринадцатый и четырнадцатый управляющие выходы дешифратора112 соединены соответственно с первымуправляющим выходом 47, вторым управляющим выходом 70, третьим управляющим выходом 100, четвертым управляющим выходом 52, шестым управляющим выходом 74, седьмым управляющимвыходом 58,восьмым управляющим выходом 81, девятым управляющим выходом 80, десятым управляющим выходом 97, одиннадцатым управляющим выходом 76, двенадцатым управляющимвыходом 79, тринадцатым управляющимвыходом 98, четырнадцатым управляющим выходом 60 и управляющим входомкоммутатора адреса микрокоманды 113,выход данных которого соединен свторым входом данных дешифратора 112и вторым адресным выходом 72,Блок 7 (фиг. 4) содержит регистрадреса 114, регистр маски 115, регистр входных данных 116, матрицупамяти индексов 117, матрицу буфернойпамяти 118, группу элементов сравне 40ния 119, первую группу элементов И120, элемент НЕ 121 вторую группуэлементов И 122, группу элементов ИЛИ123 и регистрвыходных данных 124.Пер45вый и второй входы данных регистраадреса 114, подключены соответственнок второму 64 и четвертому 83 входуданных, а управляющий вход к управляющему входу 98 и управляющему входурегистра маски 115, первый, второй итретий входы данных подключены соответственно к пятому входу 44, шестомувходу 95 и седьмому входу 57 данных,а выход данных к входу масок матрицыбуферной памяти 118 и выходу масок85. Первый, второй, третий и четвертый выходы данных соединены соответственно с адресным входом матрицы памяти индексов 117, адресным входом матрицы буферной памяти 118, первым входом группы элементов сравнения 119 и адресным выходом 87. Первый и второй входы данных регистра входных данных 116 подключены соответственна к первому входу 66 и третьему входу 84 дан ных, а выход данных подключен к второму выходу данных 86, входу данных матрицы буферной памяти 118 и первому входу второй группы элементов И 122, выход которой подключен к первому входу группы элементов ИЛИ 123, выход которой подключен к входу данных регистра выходных данных 124, выход которого соединен с первым выходом данных 82, Выход данных матрицы памяти индексов 117 соединен с вторым входом группы элементов сравнения 119, выход которой соединен с управляющим входом матрицы буферной памяти. 118, первым входом первой группы элементов И 120 и входом элемента НЕ 121, выход которого соединен с вторым входом второй группы элементов И 122, Выход данных матрицы буферной памяти 118 подключен к второму входу первой группы элементов И 120, выход которой подключен к второму входу группы элементов ИЛИ 123.Лрифметико-логический блок 11 (фиг. 5) содержит первый регистр 125, второй регистр 126, первый мультиплексор 127, второй мультиплексор 128, третий мультиплексор 129, четвертый мультиплексор 130, пятый муль-. типлексор 131, шестой мультиплексор 132, седьмой мультиплексор 133, восьмой мультиплексор 134, узел арифметических и логических операций 135, ре- гистр состояний 136, Вход данных первого регистра 125 соединен с первым входом данных 67. Выходы нулевого, первого, второго и третьего байтов первого регистра 125 соединены соответственно с первыми, вторыми, третьими и четвертыми входами дан-. ных первого, второго, третьего и чет-, вертого мультиплексоров 127-130, Управляющие входы первоГо, второго, третьего и четвертого мультиплексоров 127-130 соединены с управляющими входами пятого, шестого, седьмого и вась. мого мультиплексоров 131-134 и четвертым управляющим входом 57, Выходы данных первого, второго, третьего и четвертого мультиплексоров 127-130 подключены к первому входу данныхузла арифметических и логических операций 135 и третьему ввгходу данных бб Вход данных второго регистра 126 подключен к второму входу данных 99, Выходы нулевого, первого, второго и5 третьего байтов второго регистра 126 соединены с первыми, вторыми, третьими и четвертыми входами данных пятого, шестого, седьмого и восьмого мультиплексоров 131-134 соответственно и с четвертым выходом данных 64, Выходы данных пятого, шестого, седьмого и восьмого мультиплексоров 131-134 подключены к второму входу узла арифметических и логических операций 135, первый и второй управляющие входы которого подключены соответственно к первому и второму управляющим входам 69 и 74, Первый и второй выходы данных узла арифметических и логических операций соединены соответственно с первым выходом данных 65 и входом данных регистра состояний 136, первый и второй управляющие торого соединены соответственно с третьим и пятым управляющими входами 61 и 56, Выход данных регистра состояний 136 соединен с вторым выходом данных 68.Блок 12 (фиг, 6) содержит первый регистр 137, второй регистр 138, третий регистр 139, четвертый регистр 140, первую группу элементов И 141, вторую группу элементов И 142, третью группу элементов И 143, четвертую35 группу элементов И 144,.пятый регистр 145, шестой регистр 146, седьмой регистр 147, восьмой регистр 148, первую группу элементов сравнения 149,40 вторую группу элементов сравнения 150, третью, группу элементов сравнения 151, четвертую группу элементов сравнения 152, группу элементов ИЛИ 153, элемент ИЛИ-НЕ 154. Вход данных4 г 5 первого регистра 137 соединен с входами данных второго третьего, четвертого, пятого, шестого, седьмого, восьмого регистров 138-148 и входом данных 53. Выходы данных первого, второго, третьего и четвертого регистров 137-140 подключены соответственно к первым входам первой, второй, третьей и четвертой группам элементов И 141-144, выходы которых подклю. чены соответственно к первому, второму, третьему и четвертому входам группы элементов ИЛИ 153, выход которой подключен к первому адресному выходу 83. Выходы данных пятого, шес того, седьмого и восьмого регистров 145-148 соединены соответственно с первыми входами первой, второй, третьей и четвертой групп элементов сравнения 149-152, выходы которых соединены соответственно с вторыми входами первой, второй, третьей и четвертой групп элементов И 14 1-144, и первым, вторым, третьим и чеъ вертым входами группы элементов ИЛИ-НЕ 154, выход которой соединен с вторым адресным выходом 73. Вторые входы первой, второй, третьей и четвертой групп элементов сравнения 149-152 соединены с адресным входом 49.Блок 13 (фиг, 7) содержит первый регистр 155, первый дешифратор 156, второй регистр 157, третий регистр 158, четвертый регистр 159, пятый регистр 160, первую группу элементов сравнения 161, вторую группу элементов сравнения 162, третью группу элементов сравнения 163,четвертую груп пу элементов сравнения 164, шестой регистр 165, седьмой регистр 166, восьмой регистр 167, девятый регистр 168, пятую группу элементов сравнения 169, шестую группу элементов срав. нения 170, седьмую группу элементов сравнения 171, восьмую группу элементов сравнения 172, первый элемент И 173, второй элемент И 174, третий элемент И 175, четвертый элемент И 176, шифратор 177, элемент ИЛИ-НЕ 178, пятый элемент И 179, шестой элемент И 180, десятый регистр 181, второй дешифратор 182 триггер 183 и элемент ИЛИ 184.Вход данных первого регистра 155 подключен к входам данных второго, третьего, четвертого, пятого, шестО- го, седьмого, восьмого, девятого регистров 157-,160 и 165-168 и к входу данных 53, Выход данных первого регистра 155 соединен с входом данных первого дешифратора 156, первый управляющий выход которого соединен с управляющими входами второго и шестого регистров 157 и 165, выходы данных которых соединены соответственно с первыми входами первой и пятой групп элементов сравнения 161 и 169 Второй управляющий выход первого дешифратора 156 подключен к управляющим входам третьего и седьмого регистров 158 и 66, выходы данных которых подключе 1247884 12ны соответственно к первым входам второй и шестой групп элементов сравнения 162 и 170. Третий управляющий выход первого дешифратора 156 подклю-чен к. управляющим входам четвертого и восьмого регистров 159 и 167, выходы данных которых подключены к первым входам третьей и седьмой групп элементов сравнения 163 и 171, Четвертый управляющий выход первого дешифратора 156 подключен к управляющим входам пятого и девятого регистров 160 и 168, выходы данных которых соответственно подключены к первым входам четвертой и восьмой групп элементов сравнения 164 и 172. Вторые входы первой, второй, третьей и четвертой групп элементов сравнения 157-160 соединены с входом данных второго дешифратора182, первым входом шестой группы элементов И 180, первым входом данных десятого регистра 181 и адресным входом 72, Выходы первой, второй, третьей и четвертой групп элементов срав 25 нения 161-164 соединены соответственно с первым, вторым, третьим и четвертым входами шифратора 177 и первыми входами первой, второй, третьей и четвертой групп элементов И 173-176, выходы которых соединены соответствен но с первым, вторым, третьим и четвертым входами элемента ИЛИ-НЕ 178, выход которого соединен с первым входом элемента ИЛИ 174 и управляющим выходом 75, Вторые входы пятой,шестой, седьмой и восьмой групп элементов 169-172 соединены с управляющим выходом второго дешифратора 182. Вы - ходы пятой, шестой, седьмой и восьмой .групп элементов сравнения 169-17240 соединены соответственно с вторыми входами групп элементов И 173-176. Выход шифратора 177 подключен к первому входу пятой группы элементов И 179,выход которой подключен к вто 45 рому входу. данных десятого регистра 181, третий вход данных которого подключен к выходу шестой группы элементов И .180, .второй вход которой подключен к инверсному выходу триггера 183, прямой выход которого подключен к второму входу пятой группы элементов И 179. Установочный вход триггера 183 соединен с установочным входом 50, Сбросовый вход триггера 183 соединен с выходом элемента ИЗЩ, второй вход которого соединен с вхо дом управления 76. Выход данных десятого регистра 181 соединен с адресным выходом 77.Блок 14 (фиг, 8) содержит первый счетчик 185, второй счетчик 186, регистр команды 187, первый регистр 188 дешифратор 189, первый коммутатор 190, второй регистр 191, элемент И 192, сдвиговый регистр 193, первый сумматор 194, третий регистр 195,вто рой коммутатор 196, триггер 197, второй сумматор 198, четвертый регистр 199.Первые управляющие входы первого счетчика 185, второго счетчика 186 и управляющий вход регистра команды 187 соединены с первым управляющим входом 48, Входы данных первого счетчика 185, второго счетчика 186, регистра команд 187, первого регистра 188 и первый вход данных первого коммутатора соединены с первым входом данных 53. Входы синхрониэации первого счетчика 185, второго счетчика 186, сдвигового регистра 193 соединены с выходом элемента И 192 первый вход которого соединен с вхо-. дом синхронизации процессора 43. Выходы данных первого и второго счетчи ков 185 и 186 соединены с вторым выходом данных 62, Вторые управляющие входы первого и второго счетчиков 185 и 186 соединены соответственно с первым и вторыми унрайляющими выходами дешифратора 189, первый управляющий вход которого соединен с вторым управляющим входом 60. Управляющие выходы первого и второго счетчиков 185 и 186 подключены соответственно к второму и третьему управляющим входам дешифратора 189, первый вход дан ных которого подключен к выходу данных регистра команды 187. Выход данных первого регистра 188 соединен с первым входом данных первого суммато. ра 194, второй вход даннык которого соединен с выходом данных второго регистра 191 и первым входом данных сдвигового регистра 193, первый выход данных которого соединен с входом данных второго коммутатора 196, выход данных которого соединен с первым выходом данных 63. Третий управляющий выход дешифратора 189 подключен к управляющему входу первого коммутатора 190, выход данных которо. го подключен к второму входу данных сдвигового регистра 193, второй выход данных которого. подключен к вхо 1412478841320 ду данных третьего регистра 195, выход данных которого подключен к входу данных второго сумматора 198, выход которого подключен к входу данныхтриггера 197 и входу данных четвертога регистра 199, выход данных которого подключен к третьему выходу данных59. Четвертый управляющий выход дешифратора 189 соединен с управляющим вхоОдом второго регистра 191, вход данныхкоторого соединен с первым выходомданных первого сумматора 194, второйвыход данных которого соединен с третьим входом данных сдвиговога регистра 193, третий выход которого соединен с вторым входом данных первогокоммутатора 190. Пятый управляющийвыход дешифратора 189 подключен куправляющему входу первого сумматора 194, третий вход данных которогоподключен к четвертому выходу данныхсдвигового регистра 193, четвертыйвход которого подключен к второму входу данных 64, Шестой управляющий выход и второй вход данных дешифратора189 подключены соответственно к управ.ляющему входу и пятому выхоцу данныхсдвиговаго регистра 192, Седьмой,восьмой, девятый и десятый управляющие выходы дешифратора 189 соединенысоответственно с управляющим входомвторого коммутатора 196, управляющимвыходом 61, вторым входом элементаИ 192 и управляющим входом триггера ф197, выход которого соединен с входом35переноса второго сумматора 198,Блок 15 (фиг. 9) содержит региструправлечия 200, первый регистр исходных длин 201, регистр исходных адресов 202, первый дешифратор 203, ком 40мутатор длин 204, третий дешифратор205, счетчик адреса операнда 206, второй регистр исходных длин 207 сумматор 208, второй дешифратор 209, Входы45данных регистра управления 200 первого регистра исходных длин 201 и счетчика адреса операнда 206 соединеныс входом данных 53. Выход данных регистра управления соединен с входомБОданных первого дешифратора 203, первый управляющий выход которого соединен с управляющим входом третьего дешифратора 205, управляющий выход като.рого соединен с выходом управленияадресом местной памяти 55. Выход дан-ных первого регистра исходных, длин201 подключен к первому входу цанныхкоммутатора ппин 204, второй вход данных которого подключен к выходу данных сумматора 208, первый вход дан ных которого подключен к выходу данных второго регистра исходных длин 207 и первому входу данных второго дешифратора 209, второй вход данных которого подключен к входу данных третьего дешифратора 205 и выходу данных регистра исходных адресов 202, вход данных которого подключен к адресному входу 49, Второй управляющий выход первого дешифратора 203 соединен с управляющим входом коммутатора длин 204, выход данных которого соединен с входом данных второго регистра исходных длин 204, Третий и четвертый управляющий выходы первого дешифратора 203 соединены соответственно с первым и вторым управляющими входами второго коммутатора 209, выход данных которого соединен с вторым входом данных сумматора 208. Пятый управляющий выход и первый управляющий вход дешифратора 203 соединены соответственно с вторым управляющим выходом 56 и первым управляющим выходом второго дешифратора 209, вто. рой управляющий выход которого соединен с первым управляющим выходом 57. Второй управляющий вход и шестой управляющий выход первого дешифратора 203 соединен соответственно с управляющим входом 58 и управляющим входом счетчика адреса операнда 205, выход данных которого соединен с адресным выходом 54.Блок 16 (фиг, 10) содержит регистрадреса 210, регистр данных 211, регистр управления 212, триггер 213, Вход данных регистра адреса 210 соединен с адресным входом 28. Выход данных регистра адреса 210 соединен с адресным выходом 93. Вход управления занесением подключен к первому управляющему выходу регистра управле ния 212, первый вход данных которого соединен с первым входом данных 53 и первым входом данных регистра данных 211, первый выход данных которого соединен с первым выходом данных 96Вторые вход и выход данных регистра данных 211 соединены с вторымвходом данных 29 и третьим выходом данных 3 1. Первый и второй выходы данных регистра управления 212 соединены с вторым выходом данных 94 и выходом масок 95 соответственно. Второй вход и третий выход данных саеди", 1247884 16О нены с третьим входом данных 30 и с четвертым выходом данных 32 соответственно. Второй и третий управляющиевыходы регистра управления соединенысоответственно с первым управляющим5выходом 34 и установочным входом тритгера 213, выход которого соединен свторым управляющим выходом 33, Сбросовый вход триггера 213 соединен с управляющим входом 35.Блок 17 (фиг, 11) содержит три регистра 214-216, четыре группы элементов И 217-220, элемент ИЛИ 221, группу элементов ИЛИ 222. Вход данных блока 53 соединен с первыми входами группы элементов И 217, регистра 214, регистра 216. Управляющий вход блока 37 подключен к управляющему входу устройства 37 и к второму входу Регистра 214. Управляющий вход блока 38 соединен с вторыми входами элементаИЛИ 221 и регистра 216, Управляющий вход блока 91 подключен к второму входу группы элементов И 217, к второму входу группы элементов И 218 и, к первому входу элемента ИЛИ 221; Уп равляющий вход блока 36 соединен с вторыми входами групп элементов И 219 и 220, выходы которых соединены с выходом данных блока 92. Выход регистра. 214 подключен к первому входу группы элементов И 218, выход которой соединен с вторым входом группы элементов ИЛИ 222, первый вход и выход которой соединен с выходом35 группы элементов И 217 и с первым входом регистра 215 соответственноВторой вход и выход регистра 215 подключены к выходу группового элемента40 ИЛИ 222 и к первому входу группы элементов И 219 соответственно. Выход регистра 216 соединен с первым входом группы элементов И 220Блок триггеров анализа конца страницы 18 (фиг. 12) содержит элемент45 ИСКЛЮЧАЮЩЕЕ ИЛИ 222, три триггера 224-226, два элемента И 227 и 228, Вход данных блока 89 соединен с установочным входом триггера 224 и с первым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ50 223. Прямой выход триггера 224 соединен с вторым входом элемента ИСКЛЮЧАЮЩЕЕ ИЛИ,223, выход которого подключен к установочному триггеру 225, прямой выход которого соединен с первым входом элемента И 227, выход которого подключен к установочному входу триггера 226, выход которого соеди нен с управляющим выходом блока 90. Управляющий вход блока 79 соединен с первым входом элементаИ 228, выход которого подключен к сбросовым входам триггеров 224 и 225. Синхровход от процессора 43 подключен к вторым синхровходам триггеров 224 и 225, к сбросовому входу триггера 226, к третьему входу элемента И 227, к второму входу элемента И 228. Синхровход от канала 42 соединен с вторым входом элемента 227.Блок 19 (фиг. 13) содержит пять элементов И 229-233, три триггера 234-236, элемент ИЛИ 237, Управляющий вход блока 38 соединен с управля- ющим входом устройства 38 и с первым входом элемента ИЛИ 237. Управляющий вход блока 37 подключен к установочному входу триггера 234, Управляющий вход блока 40 соединен с первыми входами элементов И 232 и 233. Управляющий вход блока 41 подключен к второму входу элемента И 232. Управляющий вход, блока 90 соединен с третьим входом элемента И 232, выход которого подключен к сбросовому входу триггера 236, установочный вход и инверсный выход которого соединены с вьгходомэлемента ИЛИ 237 и с первым входом элемента И 230 соответственно, Синхровход блока 43 подключен к первому входу элемента И 229, к третьему входу элемента И 230, к синхровхо. ду триггера 235, кпервому входу эле. мента И 231, Прямой и инверсный выходы триггера 234 соединены с вторым входом элемента И 230, с вторым входом элемента И. 233 соответственно, Выход элемента И 230 подключен к ус- тановочному входу триггера 235, прямой выход которого соединен с управляющим выходом блока 91 и со вторыми входами элементов И 229 и 231, а инверсный выход которого соединен с управляющим выходом блока 91, Выход элемента И 231 соединен с вторым входом элемента ИЛИ 237. Выход элемента И 233 подключен к управляющему выходу блока 39.Блок 20 (фиг. 14) содержит коммутатор 238, матрицу памяти 239, регистр 240, дешифратор 241, счетчик 242.Первый, второй и третий входы данных коммутатора 238 соединены соответственно с первым, вторым, четвертым входами данных 45, 46 и 72
СмотретьЗаявка
3732351, 23.04.1984
ПРЕДПРИЯТИЕ ПЯ М-5339
ЛОПАТО ГЕОРГИЙ ПАВЛОВИЧ, СМИРНОВ ГЕННАДИЙ ДМИТРИЕВИЧ, ЧАЛАЙДЮК МИХАИЛ ФОМИЧ, ПЫХТИН ВАДИМ ЯКОВЛЕВИЧ, АСЦАТУРОВ РУБЕН МИХАЙЛОВИЧ, ЗАПОЛЬСКИЙ АЛЕКСАНДР ПЕТРОВИЧ, ПОДГОРНОВ АНАТОЛИЙ ИВАНОВИЧ, ПРОНИН ВЛАДИСЛАВ МИХАЙЛОВИЧ, ШКЛЯР ВИКТОР БОРИСОВИЧ
МПК / Метки
МПК: G06F 15/00
Метки: процессор
Опубликовано: 30.07.1986
Код ссылки
<a href="https://patents.su/34-1247884-processor.html" target="_blank" rel="follow" title="База патентов СССР">Процессор</a>
Предыдущий патент: Устройство для сопряжения канала эвм с линией связи
Следующий патент: Блок управления для ячейки волновой коммутационной системы
Случайный патент: Способ качественного определения 1, 3-диметил-ксантина