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

Есть еще 13 страниц.

Смотреть все страницы или скачать ZIP архив

Текст

(51)М, Кл,6 06 Г 9/22О 06 Г 11/16 ЬфуйарстщеыЬ кевовт ССьР ав лелаев взовретеник н открытей(088,8) Дата опубликования описания 09 . 12 .82 В,С. Харченко, А.П. Плахтеев, Н.П. БлагоДарныи,- " Г,Н. Тимонькин и С.Н, Ткаченко(5 Ь) ИИКРОПРОГРАИИННЙ ПРОЦЕССОР 1Изобретение относится к цийровой вычислительной технике и может быть использовано при проектировании процессоров отказоустойчивых вычислительных систем с микропрограммным5 управлением.Известно двухканальное устройство микропрограммного управления дублированной вычислительной системы, в котором осуществляется потактное срав о нение микрокоманд. Устройство содержит формирователь адреса, блок памяти, формирователь микроопераций, коммутатор, триггер 1 1 ).15Недостатком указанного аналога является низкая функциональная надежность, обусловленная отсутствием средств восстановления при выходе иэ строя блоков одного из каналов. гО Известны микропрограмнныепроцессоры с самодиагностикой, содержащие задублированные блоки обработки,блоки локальной памяти и блок основ ной памяти ( 2 ЗНедостатками указанных процессоров являются большой объем дополнительного резервного оборудования и необходимость разработки сложного программного обеспечения для осуществления реконфигурации процессоров,Известен также микропрограммный процессор с самодиагностикой, содержащий первый и второй блоки обработки информации, коммутатор, схему сравнения, триггер, блоки основной памяти, регистры адреса и данных, блок микропрограммной памяти, оормирователи адреса и микроопераций 1. Недостатками указанного аналога являются большой объем средств контроля и сложность восстановления рабо.тоспособности при возникновении отказавНаиболее близким к предлагаемому по технической сущности и достигаемо19 980Считывание микрокоманд иэ блока 13буферной памяти осуществляется следующим образом.Адрес микрокомвнды поступает че"рез блок элементов И 7, блок элемен" 5тов ИЛИ 70 и на адресный вход накопи"теля 71, а также через элемент ИЛИ 80открывает элемент И 81,Сигнал считывания через элементИ 81 поступает на вход считывания на- фкопителя 71 и по выбранному адресусчитывает микрокоманду.При считывании первой микрокоманды каждой эквивалентной заменяющей последовательности микрокоманд с помощью элемента И 83 осуществляется проверка, является ли данная микрокоманда отказавшей.Назначение основных Функциональных элементов первого Формирователя 15 адреса микрокоманд ( Фиг. 6 ) состоит в следующем.Регистр 92 предназначен для хранения адреса следующей микрокоманды ивыдачи его на выход 112 Формирователя 15 адреса микрокоманд.Блок 91 элементов ИЛИ предназначендля записи в регистр 92 адреса инфор"мации либо со входа 88, либо с выхода шифратора 90, либо с выходов бло- зОков 91, 97, 105 элементов И,Нифратор 90.предназначен для Формирования адреса первой микрокоманды микропрограммы диагностики при появлении сигнала несравнения,Одновибратор 93 предназначен для запуска шифратора 90 при Формировании адреса первой микрокоманды микропрограммы диагностики.Блоки 9 ч и 97 элементов И предна" значены для управления передачей в соответствующие моменты работы микропрограммного процессора на блок 9145 элементов ИЛИ адреса следующей микро" команды или адреса микрокоманды обработки информации в контрольной точке. Буферный ре истр 101 предназначен для хранения адреса микрокоманды, при выполнении которои произошел сбои илич ч50 отказ и работе микропрограммного процессора. Блок 100 элементов И предназначен для передачи адреса отказавшей микрокоманды с информационного ,выхода регистра 92 адреса на вход первого буферного регистра 101 при наличии на входе блока 100 элементов И сигнала от схемы 10 сравнения и от 095 20 сутствии сигнала с выхода элемента ИЛИ. 102. Буферный регистр 99 предназначен для хранения адреса микрокоманды в контрольной точке.Схема 103 сравнения предназначенадля сравнения адреса микрокоманды,хранящейся в буферном регистре 1.01 адресом микрокоманды, поступающим навход 111 с формирователя 18 микроопе"раций и выдачи, в случае равенстваэтих адресов сигнала на нулевой вход триггера 109 и установочный вход счетчика 107. Одновибратор 10 предназначен для выдачи после выполнения микропрограммь 1 диагностики импульса, разрешающе" го передачу адреса микрокоманды с бу" Ферного регистра 99 через блок 105,элементов И на вход блока 91 элементов ИЛИ.Счетчик 107 сбоев предназначен для подсчета числа повторов микропрограммы.Триггер 108 предназначен для перевода Формирователя 15 адреса микро- команд и всего процессора в режим выполнения микропрограммы диагностики. Триггер 109 предназначен для выдачи сигнала блокировки записи в блок б основной памяти информации с операционных блокови 5 и разрешения ее записи при устранении отказа.Первый формирователь 15 адреса мик рокоманд Функционирует следующим образом.Код операции поступает через вход 88 на вход блока элементовфИЛИ 91 и далее в регистр адреса 92, Затем через выход 112 адрес поступает в блок 17 памяти микрокоманд, где считывается первая микрокоманда. Адресследующей микрокоманды через вход 111поступает на вход блока 91 элементов И и после выполнения микрокоманды импульсом синхронизации передается на вход блока 91 элементов ИЛИ. Далее Г)ормирователь 15 адреса Функционирует аналогично. При выполнении микрокоманды в контрольной точке ее адрес с выхода регистра 92 адреса через блок 98 элементов И, открытый сигналом с управляющего выхода регистра 92 адреса (этот сигнал для микрокоманд обработки инФормации в контрольной точке равен единице, в остальных случаях- нулю), поступает в регистр 99При, шифратора 90 код адреса первой микрокоманды микропрограммы диагностикипоступает через блок 91 элементов ИЛИна регистр 92 адреса. Далее выполняется микропрограмма диагностики с целью определения отказавших микроко"манд, Сигналы, поступающие со схемы 10сравнния на второй вход 89 через эле"мент И 95 на вход блока 91 элементов0 ИЛИ модифицируют адрес следующей микрокоманды.После выполнения микропрограммыдиагностики сигналом, поступающим навход 111, происходит установка в нуле"15 вое состояние триггера 108, При этомзапускается одновибратор 101, выходной сигнал которого открывает блок 105элементов И и адрес микрокоманды обработки информации в контрольной точке20 из буферного регистра 99 через блок 105элементов И поступает на блок 91 эле"ментов ИЛИ, Далее Формирователь адреса микрокоманд работает в режиме обработки информации после восстановле"25 ния отказа. Алгоритм работы в этомрежиме аналогичен алгоритму работы довозникновения отказа в микропрограм"мном процессоре,Назначение основных Функциональных30 элементов Формирователя микроопераций 18 ( Фиг. 7 ) состоит в следующем.Регистр 115 предназначен для хранения адресных и операционных частеймикрокоманд,Вторые -уй-ые деаифраторы 116 пред"назначены для Формирования по кодуоперационной части микрокоманд, поступающему с регистра 115 кодов микро"операций.ео , Первый деаифратор 117 предназначендля Формирования кода номеров отка"завших микрокоманд в последнем тактевыполнения микропрограммы диагностикиТриггер 120, первый и второй одновибраторы 122 и 121 соответственнопредназначены для управления деаифраторол 117 Формирования управляющего сигнала на выходе 127 формиро"5 О вателя микроопераций 18. Элемент И 119предназначен для Формирования сигналаустановки триггера 120 в нулевое со- стояние. Если число сбоев превысит критическое, то счетчик 107 переполнится и выходным сигналом установит Ь еди" ничное состояние триггер 108, сигнал с единичного выхода которого закроет элементы И 96 и 106, откроет элемент И 95 и запустит одновибратор 96. Выходной сигнал одновибратора 93 запускает вибратор 90, закрывая при этом блок 9 л элементов И. С выхода 21 9 возникновении сбоя в работе микр - программного процессора на входе 89 появляется сигнал со схемы 10 сравне. ния, В этом случае адрес микрокоманды, при выполнении которой произоаел сбой, с выхода регистра 92 адреса через блок 100 элементов И открыт сигналом от схемы 10 сравнения, записывается в буферный регистр 101. . Блок 91 элементов И сигналом от схемы 10 сравнения через элемент И 96 закрывается и адрес следующей микро- команды на вход блока 91 элементов ИЛИ не передается. Одновременно сигнал от схемы 10 сравнения через.элемент И 96 открывает блок элемен" тов И 97, через который адрес микро- команды обработки информации в контрольной точке с буферного регистра 99. поступает на вход блока,элемен" тов ИЛИ 91 и через элемент И 106 за" писывает единицу в счетчик 107. Этим сигналом устанавливается в единичное состояние триггер 109.Микропрограмма начинает выполняться повторно с контрольной точки по алгоритму, описанному выше. Если адрес следующей микрокоманды и адрес микрокоманды, при выполнении которой произсеел сбой совпадают и на управ" ляющем входе схемы .103 сравнения от сутствует сигнал сбоя с входа 89, сигнал со схемы 103 сравнения обнуляет счетчик 107 и триггер 109 и выполнение микропрограммы продолжается, Если при выполнении очередной микро" команды, адрес которой расположен между адресами микроколанды в контрольной точке и микрокоманды, при выполнении которой произошел сбой, поступает сигнал сбоя от схемы 10 сравнения, та этот сигнал увеличивает содержимое счетчика 107 на единицу и в регистр адреса 92 снова запи" ается адрес микрокоманды в контроль" ной точке и обработка информации про" должается, как и после возникновения первого сбоя. Формирователь микроопераций 18работает следующим образом.При. выполнении последней микроко"манды режима диагностики единичныйсигнал с разряда адресного поля микТаким образом, первым Ч и вторым 5 операционными блоками осуществляется параллельная обработка данных. В зависимости от сигнала, поступающего с выхода Формирователя микроопераций 18 через коммутатор 11 разрешается прохождение информации либо с первого 1, либо со второго 5 операционных блоков в блок 6 основной памяти. Схема 10 сравнения сравнивает результаты обработки данных в операционных блоках; при совпадении результатов вычисления продолжаются. Если в первом 1 или втором 5 операционных блоках или в первом 2 или втором 3 блоках локальной памяти происходит отнаружит их из-за расхождения в результатах обработки и сФормирует выходной сигнал, который переводит микропрограммный процессор в режим отработкисбоя. При этом в Формирователе адреса микрокоманд 15 формируется адрес микрокоманды обработки инФормации в конт 25 роЛьной точке. 23 980095 2 Й рокоманды ( в остальных микрокомандах,хранящихся в блоке памяти микрокоманд 17, в этом поле записан нульс регистра 115 поступает на выход .123формирователя микроопераций 18, устанавливает в единичное состояниетриггер 120 и открывает элементИ 119. Сигнал с единичного выходатриггера 120 запускает одновибратор. 121, выходной сигнал которого открывает первый дешифратор 117. Код номеров отказавших микрокоманд с .выхода регистра 115 через дешифратор 117поступает на выход 125 Формирователямикроопераций 18.15После выборки и маскирования начального адреса эквивалентной заме- . каз или сбой, схема сРавнения 10 обняющей последовательности микрокомандна вход 118 с выхода блока основнойпамяти 6 поступает, управляющий сигнал,20При этом обнуляется триггер 120 ивыходной сигнал одновибратора 129через выход 127 устанавливает в единичное состояние триггер 28.Процессор работает оледующим образом. При выполнении программы ко-.манды считываются из блока 6 основной памяти в регистр 7 данных. Код операци с выхода регистра 7 данных посту пает на вход формирователя 15 адреса микрокоманд. По выработанному в этом узле адресу из блока 17 памяти микро- команд считывается первая микрокоманда. При выполнении микропрограммы об работки операндов формирователь 18 микроопераций вырабатывает управляющие воздействия, по которым операнды записываются одновременно в первый 2 и второй 3 блоки локальной памяти. 40 Если в процессоре отсутствуют неисправности, .то в каждый данный -момент времени первый. 2 и второй 3 блоки локальной памяти хранят одинаковую инФормацию. 45В ходе обработки операнды поступают из первого 2 и второго 3 блоков ло-кальной памяти в первый ч и второй 5 операционные блоки параллельно и независимо, причем для этих блоков50 формирователем микроопераций 18 задается выполнение одинаковых операций. Результат обработки в зависимости от выполняемой команды записывается либо в первый 2 и второй 3 блоки локальной памяти, либо в блок 6 основной памяти через коммутатор 11 блок элементов И 12. Адрес микрокоманды,при выполнении которой обнаружен отказ, запоминается в первом формирователе адреса микро- команд 15 и с его выхода на вход блока элементов И 12 подается сигнал блокировки записи инФормации в блок 6 основной памяти. Происходит повторная обработка информации, начиная с ближайшей контрольной точки, информация о которой хранится в первом 2 и втором 3 блоках локальной памяти.Если в ходе и после выполнения микрокоманд, следующих после микро- команды обработки информации в конт- рольной точке, перед микрокомандой, при выполнении которой произошел сбой, а также выполнении этой микрокоманды сигнал с выхода схемы сравнения 10 не поступает, то сигнал блокировки блока 12 элементов И снимается и микропрограмма выполняется дальше. В противном случае, при возникновении сбоя снова осуществляется возврат к выполнению микрокоманды обработки информа-. ции в контрольной точке. Если после определенного количества повторов сбой не исчезает, то сигнал несравнения с выхода схемы 10 сравнения формирует адрес первой микрокоманды микропрограммы диагностики отказавших микро- команд. Определение номеров отказавших микрокоманд осуществляется диагности9800 ческим тестом, которому передает управление микропрограмма диагностики отказавших микрокоманд. Диагностичес" кий тест выполняется путем передачи тестовой информации в первый 2 и вто рой 3 блоки локальной памяти, в первый 4 и второй 5 операционные блоки. Сигнал рассогласования с выхода схемысравнения 10 модифицирует адреса мик- рокоманд микропрограммы диагностики отказавших микрокоманд.На последнем такте выполнения микропрограммы диагностики формирователь 18 микроопераций выдает на четвертый вход блока 6 основной памяти код номера отказавшей микрокоманды.Адрес начальной микрокоманды по сигналам микроопераций с выхода формирователя 18 считывается в блок 13 буферной памяти, где по нему маскирует О ся эквивалентная заменяющая последовательность микрокоманд. Процесс мас-,кирования эквивалентных заменяющихпоследовательностей микрокоманд,хранимых в блоке 13 буферной памяти, состоит в маскировании первых микрокоманд последовательностей соответствующим микрокомандамФиг. 8). Так, еслипроизошел отказ микрокоманды Л, ко торой соответствует эквивалентная 30заменяющая последовательность Э,то в первом поле начальной микрокоманды последовательности записываетсяединичная метка. Эта метка в дальнейшем является логическим условием переЗ 5хода к выполнению последовательностимикрокоманд Э вместо выполнения отказавшей микрокоманды А. По оконца"нию формирования последовательностейсигнал с выхода блока 6 основной па вмяти, воздействуя на формировательмикроопераций 18, разрешает выполнение микропрограммы обработки команды, начиная с микрокоманды обработкиинформации в контрольной точке, адрес 45которой хранится в формирователе 15адреса микрокоманд,По операционной части текущеймикрокоманды, подаваемой с выходаформирователя 18 микроопераций через 5 Воткрытый триггером 28 блок 19 элементов И, формирователь 20 адреса через, блок 23 элементов И записывает в счет чик 25 адреса адрес первой микрокоманды эквивалентной заменяющей после5довательности микрокоманд. Одновременно, через элемент ИЛИ 29возбуидается одновибратор 30., выход 95 26ной сигнал которого через элемент ИЛИ 31 поступает на управляющие входы коммутаторов 1 и запрещает прохождение сигналов микроопераций с выхо да формирователя 18 микроопераций.По адресу, записанному в счетчике 25 адреса, осуществляется считывание первой микрокоманды эквивалентной заменяющей последовательности микро- команд и анализ выполняемой микрокоманды.Если при считывании первой микро" ф команды эквивалентной заменяющей последовательности в первом поле ее за" писан нуль, то триггер 14 свое состо" яние не изменяет, счетчик 25 адреса сигналом с выхода блока 13 буферной памяти через третий элемент ИЛИ 24 обнуляется и после окончания сигнала на выходе одновибратора 30 код микро- операций с выхода Формирователя микро- операций 18 через коммутаторы 1 и 9 поступает в блоки 2 и 3 локальной памяти и операционные блоки 4 и 5. ф 1Сигнал с выхода счетчика 25 адреса через элемент ИЛИ-НЕ 26 открывает блок элементов И 16 и с блока 17 па" мяти микрокоманд считывается следующая микрокоманда, Ее выполнение осу" ществляется по описанному алгоритму. Если очередная микрокоманда является отказавшей, то реализуется следующий алгоритм. Иикрокоманда с выхода Фор" мирователя 18 микроопераций через открытый сигналом от триггера 28 блок 19 элементов И поступает на Формирователь 20 адреса микрокоманд и через элемент ИЛИ 29 запусккает одно- вибратор 30, который через элемент ИЛИ 31 подает сигнал на управляющие входы коммутаторов 1 и 9, и код микро" операций с выхода формирователя мик" роопераций 18 через них не проходит. Адрес первой микрокоманды эквивалентной заменяющей последовательности микрокоманд, сформированный Формирова" телем 20 адреса микрокоманд через блок элементов И 23, открытый сигналом с нулевого выхода триггера 14, поступает в счетчик 25 адреса. По этому адресу счетчик 25 адреса считывает из блока 13 буферной памяти .пер" вую микрокоианду эквивалентной заменяющей последовательности микрокоманд фиг.8, Единичный сигнал.с первого поля микрокоманды устанавливает в единичное состояние триггер 14. Сигнал с единичного выхода триггера 14через элемент ИЛИ 31 поступает на коммутаторы 1 и 9 и код микроопераций с выхода блока 13 буферной памяти поступает в.блоки локальнойпамяти 2 и 3 и операционные блоки 4и 5. Сигнал с третьего поля микрокоманды из блока 13 буферной памятипоступает на счетный вход счетчика 25 адреса и увеличивает. его содержимое на единицу, Формируя таким об- Оразом адрес следующей микрокомандыэквивалентной заменяющей последовательности. Так как счетчик 25 адресанаходится не в нулевом состоянии, тосигнал на выходе элемента ИЛИ-НЕ 26 15отсутствует, запрещая при этом считывание из блока 17 памяти микрокомандследующей микрокоманды. Счетчик 25адреса по новому адресу считываетследующую микрокоманду, входящую в . 20эквивалентную заменяющую последовательность микрокоманд, с блока 13 буферной памяти. Выполнение ее осуществляется аналогично выполнению первой иикрокоманды. При считывании с 25блока 13 буферной памяти последнеймикрокоманды эквивалентной заменяющейпоследовательности сигнал на выходеблока 13 буферной памяти с третьегополя микрокоманды йиг. 8) отсутству- з 0ет. При этом возбуждается одновибратор 27 и через элемент ИЛИ 24 обнуляет триггер 14 и счетчик 25 адреса.На выходе элемента ИЛИ-НЕ 26 при этомпоявляется сигнал, разрешающий прохождение адреса следующей микрокоманды с формирователя 15 адреса микрокоманд через блок 16 элементов И. Поэтому адресу с блока 17 памяти микро"команд считывается и выполняется 40следующая микрокоманда по алгоритму,описанному выше. Если при выполнении микрокоманды, входящей в эквивалентную заменяющую45 последовательность микрокоманд, произойдет сбой при обработке данных, то сигнал с выхода схемы 10 сравнения через элемент ИЛИ 24 обнулит счетчик 25 адреса и триггер 14 и про 50 цессор перейдет в режим обработки сбоя, который описан выше. Если произошел отказ, то запускается микропрограмма диагностики, определяются номера отказавших микрокоманд, форми" руются для них эквивалентные заменяющие .последовательности микрокомаид и программа выполняется дальше. Таким образом, в процессоре осуществляется обработка информации при наличии двух и более отказов в раз" личных каналах. При этом даже в условиях отказов осуществляется паритетный контроль обрабатываемой информации. Следовательнс, данный микропрограммный процессор превосходит прототип по отказоустойчивости и достоверности функционирования. Использование процессора позволит строить вычислительные и управляющие системы, предназначенные для длительного использования в условиях отсутствия технического обслуживания.Формула изобретенияМикропрограммный процессор, содержащий блок основной памяти, регистр адреса, регистр данных, блок буферной памяти, первый и второй блоки локальной памяти, первый и второй операционные блоки, первый коммутатор, первый блок элементов И,. схему сравнения, первый формирователь адреса микрокоманд, триггер управления, блок памяти микрокоманд и формирователь микроопераций, причем первый информационный выход блока основной памяти соединен с входом регистра данных, первый выход которого соединен с первыми входами первого и второго блоков локальной памяти, второй выход регистра данных соединен с входом кода операции первого формирователя микрокоманд, управляющий выход которого соединен с инверсными входами первого блока элементов И, третий выход регистра данных соединен с входом регистра адреса, выход которого соединен с первым адресным входом блока основной памяти, второй информационный выход блока основной памяти соединен с первым информационным входом блока буферной памяти и первым входом формирователя микроопераций, выход микроопераций которого соединен с управляющим входом блока основной памяти и управляющим входом блока буферной памяти, выход первого коммутатора соединен с входом первого блока элементов И, выход которого соединен с инпормационным входом блока основной памяти, выход блока памяти микро- команд соединен со вторым входом формирователя микроопераций, адресный выход которого соединен с адресным1980095 30го коммутаторов, второй управляющийвыход формирователя микрооперацийсоединен с единичным входом триггерарежима, единичный выход которого сод 5 единен с первым входом второго блокаэлементов И, выход микрооперацийформирователя микроопераций соединенсо вторым входом второго блока элементов 11, выход которого соединен с вхо 3 о дами первого элемента ИЛИ и входамивторого формирователя адреса микрокоманд, выход второго формирователя адреса микрокоманд соединен с первымвходом третьего блока элементов И,5 выход которого соединен с информацион"ными входами счетчика адреса, первыйуправляющий выход блока буферной памяти соединен с единичным входомтриггера управления, нулевой выходкоторого соединен со вторым входомтретьего блока элементов И, второйуправляющий выход блока буферной памяти соединен с первым входом третьего элемента ИЛИ, выход которогосоединен с установочным входом счетчика адреса и нулевым входом триггера управления, третий управляющийвыход блока буферной памяти соединен с входом второго однов братораи счетным входом счетчика адреса,выходы которого соединены со вторыминформационным входом блока буфернойпамяти и входами элемента ИЛИ-НЕ, адресный выход первого формирователя адреса микрокоманд и выход элементаИЛИ-НЕ соединены соответственно с первым и вторым входами четвертого блока элементов И, выход которого соединен с входом блока памяти микрокоманд,выход кода отказавших микрокомандформирователя микроопераций соединенсо вторым адреснцм входом блока основной памяти, выход схемы сравненияи выход второго одновибратора соеди 45 нены соответственно со вторым и третьим входами третьего элемента ИЛИ,установочный вход устройства соединен с нулевцм входом триггера режима,входом первого формирователя адреса микрокоманд, выход первого операцион ного блока соединен с первым информационным входом первого коммутатора и первым входом схемы сравнения, выхо которой соединен с управляющим входом формирователя адреса микрокоманд выход второго операционного блока соединен со вторым входом схемы срав" нения и вторым информационным входом первого коммутатора, прямой и инверсный управляющие входы которого со единены с первым управляющим выходом формирователя микроопераций, второй выход первого операционного блока со,единен со вторым входом первого блока локальной памяти, выход которого соединен с первым информационным входом первого операционного блока, второй выход второго операционного блока соединен со вторым входом второго блока локальной памяти, выход которого соединен с первым информационным входом второго операционного блока, вход синхронизации формирователя адреса микрокоманд соединен с входом тактовых импульсов устройства, о т - л и ч а ю щ и й с я тем, что, с целью повышения отказоустойчивости и достоверности функционирования микропрограммного процессора, в него введе ны второй и третий коммутаторы, вто" рой, третий и четвертый блоки элементов И, триггер режима, второй формирователь адреса микрокоманд, счетчик адреса, первый, второй и третий элементы ИЛИ, первый и второй одновиб раторц, элемент ИЛИ-НЕ, причем информационный выход блока буферной памяти соединен с первыми информационными входами второго и третьего коммута торов, выход которого соединен со вторыми входами первого и второго операционных блоков, выход микроопечФрации формирователя микроопераций соединен со вторыми информационными входами третьего и второго коммутаторов, выход которого соединен с третьими входами первого и второго блоков локальной памяти, выход первого эле мента ИЛИ соединен с входом первого однооибратора, выход которого соединен с первым входом второго элемента ИЛИ, единичный выход триггера управления соединен со вторым входом 55 второго элемента ИЛИ, выход которого, соединен с прямыми и инверсными управляющими входами второго и третье" Источники информации,принятые во внимание при экспертизе1. Авторское свидетельство ССОРМ 556439, кл. С 06 Г 15/00, 1977. 2, Методы автоматического возвратав вычислительной машине СОРИ . Зкс, О 4 Л, опублик. 1978,5, Авторское свидетельство СССРН 7 б 3902, кл, С об Г 15/00, 19803 9800 му эффекту является процессор, содержащий блок основной памяти, регистр адреса, регистр данных, блок буферной памяти, два блока локальной памяти, два операционных блока, первый комму татор, первый блок элементов И, схе" му сравнения, первый формирователь адреса микрокоманд, блок памяти микро- команд, триггер управления, формирователь микроопераций, причем первый 10 выход блока основной памяти соединен с входом регистра данных, первый выход которого соединен с первыми входами первого и второго блоков локальной памяти соответственно, второй вы ход - с первым входом первого Формирователя адреса микрокоманд, третий- через регистр адреса - с первым входом блока основной памяти, второй вход которого соединен с первым входом щ блока буферной памяти и первым выходом формирователя микроопераций, вто рой выход - со вторым входом блока буферной памяти и первым входом Формирователя микроопераций, третий а вход - с выходом первого блока элементов И, первый вход которого соеди нен с выходом первого коммутатора, второй вход - с первым выходом первого формирователя адреса микрокоманд, зв второй вход которого соединен с выходом схемы сравнения, третий вход является входом синхронизации устройства, четвертый вход соединен со вторым выходом формирователя микро- операций, второй вход которого соеди. нен с выходом блока памяти микрокоманд, третий выход - с управляющими входами первого коммутатора, первый информационный вход которого соеди О нен с первым входом схемы сравнения и первым выходом первого операционного блока, второй выход которого соединен со вторым входом первого блока локальной памяти, первый выход которого соединен с первым входом первого операционного блока, второй вход схемы сравнения соединен со вторым информационным входом первого коммутатора и первым выходом второго операционного блока, второй выход которого соединен со вторым входом второго блока локальной памяти, выход которого соединен с первым входом второго операционного блока5.55Недостатками указанного процессора являются низкая отказоустойчивость и низкая достоверность функционирования,95 4В прототипе реализуется следующаядисциплина функционирования,Результаты работы двух параллельно функционирующих каналов обработкиинформации сравниваются, При их совпадении осуществляется обмен даннымис основной памятью процессора, причем один из каналов определяется какосновной, а второй как резервный.В случае несовпадения результатов на.выходе каналов Формируется управляющий сигнал, по которому работа процессора блокируется, содержимое каналов передается в буферную память,а затем с использованием специального диагностического оборудованияопределяется отказавший канал. По результатам диагностики восстанавливается содержимое работоспособного канала и процессор продолжает работу водноканальном режиме.Низкая отказоустойчивость обусловлена тем, что при наличии второгоотказапервого отказа в другом канале) процессор теряет работоспособность. Указанный недостаток ограничивает возможность использования процессора в системах с накоплением отказов. Низкая достоверность функционирования обусловлена тем, что приналичии одного отказа процессор переходит в одноканальный режим и пари. тетный контроль правильности обработки информации не, производится.Кроне того, прототип имеет большое время диагностики, которое обусловлено тем, что в режиме диагности- ,ки определяется отказавший блдк илиэлемент, а не отказавшие микрокоманды и для диагностики не используетсяинформация при передаче ее в буфернуюпамять.Большое время диагностики обуславливается также необходимостью передачи содержимого каналов в буфернуюпамять и последующей перезагрузки ра"ботоспособного канала.Низкая отказоустойчивость, низкая достоверность функционирования и боль" шое время диагностики,микропрограммного процессора существенно ограничивает область его применения, снижает эффективность решаемых им задач.Цель изобретения - повышение отказоустойчивости и достоверности функционирования микропрограммного процессора.Составитель И. Си а Техоев Т.Иаточка Тираж 731 дарственного ком изобретений и о а Х-Я Раушска ент"., г. Ужгородказ 9361/39ВН ИПИ Госупо деламНосквеЕ иееииППП "Пат Филиа еаактор Н. аловКорректор Неиее еиеПодписноетета СССРкрытийнаб, а 4/и щМ ие ее и иул. Проектная, Ч Буояк и ирого формирователя адреса микроко" манд соединен с первым входом третьего блока элементов И, выход которого соединен с информационными входами счетчика адреса, первый управляющий выход блона буферной памяти соединен с единичным входом триггера управления, нулевой выход которого соединен со вторым входом третьего блока элементов И, второй управляющий выход блока буферной памяти соединен с первым входом третьего эле 5 9800Поставленная цель достигается тем, что в микропрограммный процессор, содержащий блок основной памяти, регистр адреса, регистр данных, блок буферной памяти, первый и второй блоки 5 локальной памяти, первый и второй операцйонные блоки, первый коммутатор, первый блок элементов И, схему сравнения, первый Формирователь адреса микрокоманд, триггер управления, блок О памяти микрокоманд и первый Формирователь микроопераций, причем первый информационныи выход блока основной памяти соединен с входом регистра дан. ных, первый выход которого соединен с 15 первыми входами первого и второго бло. ков локальной памяти, второй выход регистра данных соединен с входом кода операции первого Форлирователя микрокоманд, управляющий выход которого 20 соединен с инверсными входами первого блока элементов И, третий .выход регистра данных соединен с входом регистра адреса, выход ноторого соединен с первым адресным входом блока 25 ОснОВнОЙ памяти ВторОЙ информационный выход блока основной памяти соединен с первым информационным входом блока буферной памяти и первым входом формирователя микроопераций, вы- ЗО ход микроопераций которого соединен с управляющим входом блока основной памяти и управляющим входом блока буферной памяти, выход первого коммутатора соединен с входом первого блока элементов И, выход которого соединен с информационным входом блока основной памяти, выход блока памяти микро- команд соединен со вторым входом формирователя микроопераций, адресный 4 в выход которого соединен с адресным вХодом первого формирователя адреса микрокоманд, выход первого операционного блока соединен с первым информационным входом первого коммутатора : и первым входом схемы сравнения, выход которой соединен с управляющим входом формирователя адреса микрокоманд, выход второго операционного блока соединен со вторым входом схемы сравнения, и вторым информацион ным входом первого коммутатора, прямой и инверсный управляющие входы которого соединены с первым управляющим выходом формирователя микроопера 55 ций, второй выход первого операционного блока соединен со вторым входом первого блока локальной памяти, выход Оторого соединен с первым информа 95 6 ционным входом первого операционногоблока, второй вйход второго операционного блока соединен со вторым входомвторого блока локальной памяти, выход которого соединен с первым информационным входом второго операционного блона, вход синхронизации Формирователя адреса микрокоманд соединенс входом тактовых импульсов устройст"ва, введенй второй и третий коммутаторы, второй, третий и четвертый блокиэлементов И, триггер режима, второйформирователь адреса микрокоманд,счетчик адреса, первый, второй и третий элементы ИЛИ, первый и второй одновибраторы, элемент ИЛИ-НЕ,причеминформационный выход блока буфернойпамяти соединен с первыми информационными входами второго и третьего коммутаторов, выход которого соединен,совторыми входами первого и второго операционных блоков, выход микрооперацийФормирователя микроопераций соединенсо вторыми информационными входамитретьего и второго коммутаторов, выход которого соединен с третьими входами первого и второго блоков локальной памяти, выход первого элемента ИЛИсоединен с входом первого одновибратора; выход которого соединен с первым входом второго элемента ИЛИ, единичный выход триггера управления соединен со вторым входом второгоэлемента ИЛИ, выход которого соединен с прямыми и инверсными управляющими входами второго и третьего коммутаторов, второй управляющий выходФормирователя микроопераций соединен с единичнь 1 м входом триггера режима,единичный выход которого соединен с первым входом второго блока элементов И, выход минроопераций Формирователя соединен со вторым входом второго блока элементов И, выход которого соединен с входами первого элемента ИЛИ и входами Второго Формирователя адреса микрокоманд, выход втомента ИЛИ, выход которого соединен с установочным входом счетчика адре" са и нулевым входом триггера управления, третий управляющий выход блока ,буферной памяти соединен с входом 5 второго одновибратора и счетным входом счетчика адреса, выходы которого соединены со вторым информационным входом блока буферной памяти и входами элементаИЛИ-НЕ, адресный выход пер 1 О вого Оормирователя адреса микрокоманд и выход элемента ИЛИ-НЕ соединены соответственно с первым и вторым входами четвертого блока элементов И, выход которого соединен с входом блока 15 памяти микрокоманд, выход кода отказавших микрокоманд формирователя микроопераций соединен со вторым, адресным входом блока основной памяти, выход схемы сравнения и выход второго 20 одновибратора соединены соответственно со вторым и третьим входами третьего элемента ИЛИ, установочный вход устройства соединен с нулевым входом триггера режима. 25Сущность изобретения состоит в повышении отказоустойчивости и достоверности функционирования микропрограммного процессора путем использования функциональной избыточности микроко- зо манд и замены микрокоманд, управляющих отказавшими Функциональными блоками каналов, соответствующими эквивалентными последовательностями микро- команд.35Множество микрокоманд, образующих микрооперационный базис Мо вычислительной системы, как правило обладает функциональной избыточностью. Множество микрокоманд М может быть представлено объединением подмножества микро- команд М.1,.без которых не могут быть реализованы все требуемые операции и подмножества микрокоманд М.2, вводи. мых дополнительно для обеспечения заданного уровня производительности сис. темы. Поэтому часть микрокоманд подмножества М.1 может бытьвыполнена пу тем реализации эквивалентной последовательности других микрокоманд из подмножеств М.1 и М.2. Например, микрокоманды операции умножения могут быть заменены последовательностью микрокоманд сложения и сдвига. Это позволяет для большинства микрокоманд55 Формировать эквивалентные заменяющие последовательности и использовать их при соответствующих отказах с целью восстановления работоспособности. Основные отличительные особенности реализованной в процессоре дисциплины функционирования состоят в следу-. ющем: при отказе одного из каналов микродиагностика проводится с целью определения микрокоманд, которые не вывыполняются вследствие отказа соответствующего функционального блока( а: не самих Функциональных блоков); на основе результатов микродиагностики составляется список отказавших микро- команд; в блоке буферной памяти хранятся эквивалентнь 1 е заменяющие последовательности микрокоманд, которые могут пополняться по мере накопления отказов; при появлении в одном из каналов отказа, определении отказавших микрокоманд и маскирования соответствующих эквивалентных заменяющих последовательностей в блоке буферной памяти, микропрограммный процессор переходит во второй режим нормального функционирования, который характеризуется потактным обращением к блоку буферной памяти с целью проверки необходимости выполнения эквивалентной заменяющей последовательности микро- команд.Для реализации сущности изобретения в микропрограммный процессор дополнительно введены второй и третий коммутаторы, три блока элементов И, три элемента ИЛИ, элемент ИЛИ-НЕ, второй триггер, второй формирователь адреса микрокоманд, состоящий из дешифратора и шифратора, два одновибратора, счетчик адреса.фКод микрокоманды, считываемой из блока памяти микрокоманд в формирователь микроопераций, разбит на пять полей: поле метки конца выполнения микропрограммы диагностики; поле кода выполняемых миКроопераций; поле метки управления выдачей обработанной информации с первого или второго канала в блок основной памятй; поле ко" да адреса следующеймикрокоманды; по-, ле кода отказавших микрокоманд.Код микрокоманд, входящих в эквивалентную заменяющую последовательность иикрокоманд, состоит из трех полей: поле метки, определяющей необходимость выполнения данной эквивалентной заменяющей последовательности микрокоманд; поле кода микроопераций; поле метки считывания информации.9 9800Введение второго и третьего коммутаторов и обусловленных ими связейпозволяет управлять обработкой инФормации в обоих каналах либо по микрокомандам, поступающим с формирооателя микроопераций, либо по микрокомандам, входящим в эквивалентную заменяющую последовательность микрокоманд и считываемым из блока буферной памяти. 10Введение цетвертого блока элементов И, элемента ИЛИ-НЕ и обусловленных ими связей необходимо для управления выдачей адреса следующей .микрокоманды в блок памяти микрокоманд 15только после выполнения эквивалентнойзаменяющей последовательности микрокоманд, выполняемых вместо отказавшей микрокоманды.Введение триггера режима, второго 20 формирователя адреса микрокоманд, второго блока элементов И и обуслов" ленных ими связей позволяет записывать в счетчик адреса адрес первой микрокоманды эквивалентной заменяю щей последовательности для отказавшей микрокомандыВторой формирователь адреса микро- команд может быть выполнен в виде программируемой логической матрицы, По- зо , скольку список .микрокоманд, которые могут быть заменены эквивалентными последовательностями. известен, то операционным частям этим микрокояанд становится в соответствие адрес начальной минрокоманды эквивалентной заменяющей последовательностиНапример, если полное множество заменяемых микрокоманд состоит из мик. рокоманд Й 4 Р й, то дешифратор 40 второго Формирователя адреса имеет К выходов и Ч входовЧ - разрядность операционной части Ю" микрокоманд й;, 1 6 1,К).На каждом из выходов дешифратора . 45 д реализуется функция 50 блока буферной памяти; на Фиг. 6 кгде= 3 ОД Х ,где 1,1- двоичная переменная -того3 разряда операционной частиИl .СШифратор второго Формирователяадреса имеет в этом случае Ч входови 6 выходов,95 10где М - число микрокоманд образую 41щих эквивалентную заменяющую последовательность для 1-той микрокоманды.Шифратор формирует на своих выходах двоичные коды разрядностью которые соответствуют единичным сигналам, поступающим с выхода дешифратора, Эти коды задают начальные адреса эквивалентных заменяющих последовательностей,Введенйе счетчика адресов обусловт лено необходимостью Формирования адресов микрокоманд, входящих в эквивалентную заменяющую последовательность микрокоманд, и считывания по этим адресам микрокоманд из блока буФерной памяти.Соединение третьего управляющего выхода блока буферной памяти со счетным входом счетчика адреса и введение третьего элемента. ИЛИ, второго одновибратора и обусловленных ими связей необходимо для увеличения содержимого счетчика адреса в процессе считывания микрокоманд, входящих в эквивалентную заменяющую последовательность микрокоманд, и его обнуления по окончании выполнения последооательности или при сбое в процессе ее выполнения. Введение первого и второго элементов ИЛИ, первого одновибратора и обусловленных ими,связей позволяет блокировать выполнение очередной микрокоманды, считываемой с выхода Формирователя микроопераций, на время проверки принадлежности ее к числу отказавших микрокоманд. На фиг, 1 приведена функциональная схема микропрограммного процессора; на Фиг, 2 - Функциональная схема блоков локальной памяти, выполненных идентично; на фиг. 3 - Функциональная схема операционных блоков, выполненных идентично; на Фиг. 4 - Функциональная схема блока основной памя. ти; на Фиг. 5 - Функциональная схема функциональная схема первого Формирователя адреса микрокоманд, на Фиг. 7 . функциональная схема Формирователямикроопераций. Пример кодирования полей экоивалентных заменяющих последовательностей микрокоманд для отказавших и неотказавших микрокоманд показан на Фиг. 8.11 9800На фиг. 1 используются следующие,обозначения: второй коммутатор 1,первый блок 2 локальной памяти, второй блок 3 локальной памяти., первыйоперационный блок 4 и второй операционный блок 5, блок 6 основной памяти, регистр 7 данных, регистр 8 адреса, третий коммутатор 9, схема 10сравнения, первый коммутатор 11,первый блок 12 элементов И, блок 13буферной памяти, триггер 14 управления, первый формирователь 15 адресамикрокоманд, четвертый блок 16 элемен.тов И, блок 17 памяти микрокоманд,формирователь 18 микроопераций, второй блок 19 элементов И, второй формирователь 20 адреса микрокоманд,состоящий из дешифратора 21 и шифратора 22, третий блок 23 элементов И,третий элемент ИЛИ 24, сцетцик 25 адреса, элемент ИЛИ-НЕ 26, второй одно.вибратор 27, триггер 28 режима, первый элемент ИЛИ 29, первый одновибра"тор 30, второй элемент ИЛИ 31, вход 32синхронизации, вход 33 установкитриггера 28 в нуль.На фиг. 2 используются следующиеобозначения: третий вход 34 блока локальной памяти, дешифратор 35 шифратор 36, й коммутаторов 37, и первых 30регистров 38, и вторых регистров 39,первый вход 40 блоков локальной памяти, выход 41 блока локальной памяти, второй вход 42 блока локальнойпамяти. 35На Фиг. 3 используются следующиеобозначения: второй вход 43 операционного блока, дешифратор 44, шифратор 45,коммутатор 46, сумматор 47,регистр 48, второй вход 49 операциононого блока, первый 50 и второй 51 бло.ки элементов И, первый 52 и второй 53выходы операционного блока соответственно.На Фиг, 4 используются следующие45обозначения: инфррмационный вход 54блока основной памяти, регистр 55,первый накопитель 56 информации, первый адресный вход 57 блока основнойпамяти, управляющий вход 58 блока основной памяти, первый элемент И 59,вход 60 импульсов записи, вход 61 импульсов считывания, второй элемент И 62,третий элемент И 63, второй накопитель 64 информации, второй 65 адресный 55вход, первый 66 и второй 67 информационные выходы блока основной па.мяти соответственно. 95 12На Фиг, 5 используются слеачющие обозначения: управляющий вход 68 блока буферной памяти, первый блок 69 элементов И, блок 70 элементов ИЛИ, накопитель 71 информации, первый 72 и второй 73 информационные входы блока буферной памяти, второй блок 74элементов И, первый элемент ИЛИ 75,вход 76 импульсов записи, первый 77и второй 78 элементы И соответственно, вход 79 генератора константы единицы ( вход постоянного уровня логической единицы), второй элементИЛИ 80, третий элемент И 81, вход 82импульсов сцитывания, четвертый элемент И 83, первый 84 управляющий,информационный 85, третий 86 и второй 87 управляющие выходы блока буферной памяти соответственно,На Фиг. 6 используются следующиеобознацения: вход 88 кода операции иуправляющий вход 89 первого Формирователя адреса микрокоманд соответственно, шифратор 90, блок 91 элементов ИЛИ, регистр 92 адреса, первыйодновибратор 93, первый блок 94 элементов И, третий элемент И 95, первыйэлемент И 96, второй блок 97 элементов И, пятый. блок 98 элементов И,второй буферный регистр 99, третий блок 100 элементов И, первый буферный регистр 101, элемент ИЛИ 102, схема 103 сравнения, второй одновибратор 104, четвертЫй блок 105 элементов И, второй элемент И 106, счетчик 107 сбоев, первый 108 и второй 109 триггеры, синхронизирующий и адресный входы 110 и 111 первого формирователя адреса микрокоманд соответственно, адресный и управляющий выходы 112 и 113 первого Формирователя адреса микрокоманд соответственно.На Фиг, 7 используются следующие обозначения: второй вход 114 формирователя микроопераций, регистр 115микрокоманд, группа первых дешифраторов 116, дешифратор 117, первыйвход 118 формирователя микроопераций, элемент И 119, триггер 120, первый 121 и второй 122 одновибраторысоответственно, выход адреса, первыйуправляющий выход, выходы кода"отказавших микрокоманд, микроопераций ивторой управляющий выход формирователя микроопераций 123-127 соответственно. На йиг. 8 используются следующиеобозначения; 1-3 - столбцы первогоБлок 6 основной памяти предназначен для хранения данных и команд и адресов начальных микрокоманд, входящих в эквивалентные заменяющие последовательности микрокоманд.Регистр 7 данных предназначен для приема и хранения очередных команд выполняемой программы, поступающих из 40 блока 6 основной памяти. Операнды с первого выхода регистра 7 поступают в блоки 2 и 3 локальной памяти.Регистр 8 адреса. предназначен для хранения адреса следующей команды.Коммутатор 9 предназначен для коммутации микроопераций, поступающих с выхода Формирователя 18 микроопераций или с выхода блока 13 буферной памяти на вторые входы первого 4 и второго 5 операционных блоков соответственно, в зависимости от режима работы. 50 Схема 10 сравнения предназначена для сравнения результатов обработки 55 информации в первом 4 и втором 5 операционных блоках и выдачи сигнала на выходе в случае их несовпадения. третьего полей микрокоманд, входящихв эквивалентную заменяющую последовательность микрокоманд, соответственно Э - эквивалентная заменяющая последовательность для микрокоманд 5А, 1 Е1-1, 1, 1+1,Назначение основных элементовфункциональной схемы микропрограммного процессора (Фиг. 1) состоит вследующем.Коммутатор 1 предназначен для коммутации микроопераций, поступающихс Формирователя 18 микроопераций илис блока 13 буферной памяти на .третьивходы первого и второго блоков локаль 45ной памяти 2 и 3 соответственно,Блоки 2 и 3 локальной памяти предназначены для хранения операндов ипромежуточных результа 1 ов обработкиинформации, 20Операционные блоки 4 и 5 осуществляют преобразование информации помикрокомандам, поступающим от коммутатора 9. На первые входы операционных блоков 4 и 5 из блоков 2 и 3 локальной памяти поступают операнды,над которыми осуществляются соответствующие операции. Результат вычислений выдается на вторые входы блоковлокальной памяти, на коммутатор 11 зои на схему 10 сравнения. Коммутатор 11 предназначен для ком-,мутации информации, поступающей изпервого 4 или второго 5 операционного блока в блок 6 основной памяти.Блок 12 элементов И предназначендля передачи обработанной информациис выхода коммутатора 11 на вход блока 6,основной памяти и блокировкиэтой передачи при возникновейии отказа в одном из каналов микропрограммного процессора,Блок 13 буферной памяти предназначен для хранения эквивалентных заменяющих последовательностей микрокоманд. Триггер 14 предназначен дляуправления через второй элемент ИЛИ 31коммутаторами 1 и 9 о зависимостиот режима работы микропрограммногопроцессора,формирователь 15 адреса микрокоманд предназначен для Формированияадресов микрокоманд и выдачи сигналовуправления на второй вход первого блока 2 элементов И.Блок 16 элементов И предназначендля управления считыванием микроко-манд из блока 17 памяти микрокомандпо адресу, сформированному в первомформирователе 15 адреса микрокоманд.Блок 17 памяти микрокоманд предназначен для хранения микрокоманд,используемых при обработке информации и выполнении микропрограммы диагностики,Формирователь 18 микрооперацийпредназначен для формирования микроопераций, по которым осуществляетсяобработка информации, для Формирования кодов номеров отказавших микрокоманд, для .Формирования адреса следующей микрокоманды, для формированиясигнала конца выполнения микропрограммы диагностики и сигнала началаработы процессора после восстановления отказа, для управления выходамиоперационных блоков 4 и 5.Блок 19 элементов И предназначендля управления выдачей кода первоймикрокоманды эквивалентной заменяющейпоследовательности с выхода формирователя микроопераций 18 на вход Формирователя 20 адреса микрокоманд.Формирователь 20 адреса микрокоманд, состоящий из последовательно соединенных дешифратора 21 и шифрато" ра 22, предназначен для формирования адреса первой микрокоманды эквивалентной заменяющей последовательности980095 15микрокоманд, который через блок 23элементов И поступает на вход счетци"ка 25 адреса.Счетчик 25 адреса предназначендля считывания по записанному в немадресу из блока 13 буферной памятимикрокоманд, входящих в эквивалентнуюзаменяющую последовательность микрокоманд. Элемент ИЛИ 24 предназначендля передачи сигнала обнуления счет 1 Очика 25 адреса и триггера 14 управления свыхода схемы 10 сравнения, одновибратора, 27 и выхода блока 13 буФерной памяти.Элемент ИЛИ-НЕ 26 предназначен дляформирования сигналов управления блоком 16 элементов И,Одновибратор 27 предназначен дляформирования сигнала обнуления счетчика 25 адреса.ЗОТриггер 28 режима предназначендля управления цередацей кода микрокоманды через блок ",9 элементов Ив режиме функционирования после восстановления отказа.Одновибратор 30, элементы ИЛИ 31и 29 предназначены для запрещения прохождения микроопераций с выхода формирователя 18 микроопераций на входыблоков 2 и 3 локальной памяти и входы операционных блоков 4 и 5 в течение времени проверки оцередной микрокоманды на предмет необходимости еезамены эквивалентной заменяющей последовательностью микрокоманд. 35Назнацение основных элементов функ.циональной схемы блока локальной памяти ( фиг, 2) состоит в следующем,Кодопреобразователь, состоящий издешифратора 35 и шифратора 36, преоб- Оразует поступающие на третий вход блока локальной памяти 34 коды микроопераций в управляющие сигналы, которыепоступают на управляющие входы коммутаторов,37 и на вход синхронизации 45Ввторых регистров 39.Коммутаторы 37 предназначены дляпередаци информации с первого входа 40или со второго входа 42, с выхода соответствующего второго регистра 39 в 50соответствующий регистр 38 (при восстановлении информации) . Регистры 39 предназначены для хра нения информации и выдачи ее на вход соответствующих регистров 39 и на вы ход блока 41.Блок 2 ( 3 локальной памяти Функционирует следующим образом. 16По очередному коду микроопераций через соответствующий коммутатор 37 операнд со входа 40 блока локальной памяти записывается в регистр 38 и хранится в нем или передается затем в операционный блок. Таким же образом осуществляется запись, хранение и выдача информации в операционный блок при обработке информации, поступающей на вход 42 блока локальной памяти или с выхода соответствующего регистра 39. Бели информация является результатом выполнения программы в-.й контрольной точке и ее необходимо хранить до получения результата выполненияпрограммы в ( +1) -й контрольной тоцке, то эта информация хранится в соответствующем регистре 39. Сигнал .записи информации в контрольной точкепоступает на вход синхронизации регистра 39, после чего информация срегистра 38 перезаписывается в регистр 39. Назначение основных функциональныхэлементов операционного блока ( фиг.33 состоит в следующем,Кодопреобразователь, состоящий из дешифратора 44 и шифратора 45, преобразовывает поступающие на вход 43 операционного блока коды микроопераций в коды управляющих сигналов, которыми управляются коммутатор 46 и блоки 50 и 51 элементов И.Коммутатор 46 предназначен для передачи информации, поступающей с выхода регистра 48 или с входа 49 на вход сумматора 47 в зависимостРот кода микроопераций на управляющих входах.Сумматор 47 предназначен для обработки информации и выдачи ее в регистр 48, регистр 48 предназначен для,промежутоцного хранения информации.Блоки 50 и 51 элементов И предназначены для выдачи информации из операционного блока в локальную или основную память процессора.Операционный блок 4 ( 5) Функционирует следующим образом. По кодам микроопераций формируется код управляющих сигналов, по которому информация с входа 49 через коммутатор 46 поступает на вход сумматора 47, Далее по управляющим сигналам осуществляется подача информации с выхода регистра 48 на вход сумматора 47 и с его выхода на вход ре"17 9800 гистра 48. После окончания обработки, информации открываются блоки 50 или 51 элементов И и информация с выхода регистра 48 поступает на первый 52 или второй 53 выходы операционного 5 блокаНазначение основных функциональных элементов блока основной памяти Фиг.Ц состоит в следующем.Регистр. 55 предназначен для приема О обработанной информации с входа 54 и последующей ее записи в накопитель 56Накопитель 56 предназначен для хранения данных и команд. Первый 59 и второй 62 элементы И по сигналам микроопераций, поступающим нв вход 58 формируют сигналы записи и считывания, по которым осуществляется запись в накопитель 56 содержимого регистра 55 и считывание очередной ко манды по адресу, поступающему на вход 57.Накопитель 64 предназначен для хранения адресов первых микрокоманд эквивалентных заменяющих последователь 15 ностей микрокоманд. Элемент И 63 предназначен для Формирования сигнала считывания информации по адресу, который поступает на четвертый вход 65.Блок основной памяти функциониру- ЗО ет в трех режимах.1. Режим записи информации, поступающей на вход 54. Информация с первого 4 или второго 5 операционного блока поступает на вход блока 6 ос- з 5 новной памяти и записывается в регистрКод микроопераций открывает элемент И 59. Импульсы записи через элемент И 59 поступают на вход накопите ля 56 и записывают в него содержимое регистра 552. Режим считывания следующей команды.Код микроопераций считывания по ступает на вход элемента И 62. Импуль. сы считывания через элемент И 62 поступают на вход накопителя 56 и по адресу, поступающему на адресный ,вход 57 накопителя, производят считы в вание следующей команды и подают ее на первый выход 66. 3. Режим считывания адресов начальных микрокоманд эквивалентных зач 55 меняющих последовательностеи микрокоманд. Код микроопераций считывания поступает на вход элементаИ 63. Импульсы считывания через элемент И 63 95 18поступают на вход второго накопителя 64 и по адресу, поступающему с входа 65 считывают на выход 67 адрес начальной микрокоманды эквивалентной последовательности, отказавшей микро- команды.Назначение основных функциональных элементов блока буферной памяти фиг. Ц состоит в следующем,Блоки 69 и 74 элементов И, блок 70 элементов ИЛИ Формируют адрес, по которому осуществляется запись или считывание микрокоманд, входящих в эквивалентную заменяющую последовательность микрокоманд.Элемент ИЛИ 75, первый 77 и второй, 78 элементы И предназначены для записи в первое поле микрокоманд по выбранному адресу единичного сигнала.Элемент ИЛИ 80 и элемент И 81 предназначены для Формирования сигнала считывания по заданному адресу микрокоманды, входящей в эквивалентную заменяоцую последовательность микро- команд.Накопитель 71 предназначен для хранения эквивалентных заменяющих последовательностей микрокоманд.Элемент И 83 предназначен для формирования сигнала установки в нулевое состояние счетчика 25 адреса при считывании из блока 13 буферной памяти первой микрокоманды эквивалентной заменяющей последовательности микрокоманд для неотказавшей микрокоманды.Блок 13 буферной памяти функционирует следующим образом.Адрес очередной микрокоманды, вхо" дящей в эквивалентную заменяющую последовательность микрокоманды, поступает через вход 72 на вход блока 69 элементов И и на входы элемента ИЛИ 75. Сигнал микрооперации поступает на вход блока 69 элементов И. Адрес микрокоманды с выхода блока 69 элементов поступает на вход блока 70 элементов ИЛИ и через него далее на,адресный вход накопителя 71. Сигнал с выхода элемента ИЛИ 75 открывает первый 77 и второй 78 элементы И. При этом сигнал записи поступает на вход элемента И 77 и через него на вход записи накопителя 71, а единичный сигнал с входа 79 через элемент И 78 поступает на информационный вход накопителя и записывает в первое полемикрокоманды единицу.

Смотреть

Заявка

3303317, 18.06.1981

ХАРЬКОВСКОЕ ВЫСШЕЕ ВОЕННОЕ КОМАНДНОЕ УЧИЛИЩЕ ИМ. МАРШАЛА СОВЕТСКОГО СОЮЗА КРЫЛОВА Н. И

ХАРЧЕНКО ВЯЧЕСЛАВ СЕРГЕЕВИЧ, ПЛАХТЕЕВ АНАТОЛИЙ ПАВЛОВИЧ, БЛАГОДАРНЫЙ НИКОЛАЙ ПЕТРОВИЧ, ТИМОНЬКИН ГРИГОРИЙ НИКОЛАЕВИЧ, ТКАЧЕНКО СЕРГЕЙ НИКОЛАЕВИЧ

МПК / Метки

МПК: G06F 9/22

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

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

Код ссылки

<a href="https://patents.su/21-980095-mikroprogrammnyjj-processor.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммный процессор</a>

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