Микропрограммный процессор с контролем
Похожие патенты | МПК / Метки | Текст | Заявка | Код ссылки
Текст
Изобретение относится к вычислительной технике, в частности к процессорам с контролем.ель изобретения - повышение достоверности контроля микропрограммного процессора.На Фиг.1 приведена функциональнаясхема микропрограммного процессорас контролем; на фиг.2 - функциональная схема операционного блока; нафиг.3-5 - временные диаграммы работы устройства.Микропрограммный процессор (фиг.1)содержит операционный блок 1, регистр 2 команд, первый мультиплексор3, второй мультиплексор 4, элемент И5 регистр 6 адреса микрокомандблок 7 памяти микрокоманд, регистр 8микрокоманд с полями: условного перехода (УП ) 9, кода операции (КОП) 10,адреса микрокоманды (АМК) 1, концакоманды (КК) 12, выход 13 подтверждения перехода (ПП), входы условногоперехода 14 и кода операции 15, выход 6 управления обменом и информационный вход - выход 17 операционного блока 1, сумматор 18, регистр 19суммы, схему 20 сравнения, триггер21 фиксации сбоя, одновибратор 22,вход 23 синхронизации операционногоблока, первый 24 и второй 25 входысинхронизации устройства,Операционный блок(фиг.2) содер"жит арифметический узел 26, приемопередатчик 27, схему 28 сравнения,первый элемент И 29, элемент ИЛИ-НЕ30, второй элемент И 3, буферныйусилитель 32, вход 33 направления передачи приемопередатчика, вход 34кода операции арифметического узла,первый вход 35 второго элемента И,первый вход 36 элемента ИЛИ-НЕ, первый вход 37 первого элемента И, выход 38 буферного усилителя, информационный вход-выход 39 приемопередатечика, выход 40 первого элемента И. На фиг.3 приведена схема, поясняющая синхронизацию работы блоков микропрограммного процессора, где Ф сигналы на первой линии синхронизации, Ф 2 - сигналы на второй линии синхронизации,На фиг.4 приведена временная диаграмма работы микропрограммного процессора в нормальном режиме, где Ф синхросигналы на линии ф 24, Ф 2 синхросигналы на линии Ф 2 25, РАМК -5 О 15 20 25 30 35 40 45 50 55 адрес микрокоманды на выходе регис 1- ра 6, РК - код команды, записанный в регистре 2 КОП - поле КОП 1 О микрокоманды на выходе регистра 8 ИК - сигнал "Конец команды на выходе регистра 8, УП - сигнал условного перехода нп выходе регистра 8, ПП - сигнал на входе 13, РС - код регистра 19, "Сброс" - сигнал сброса на выходе одновибратора 22.На фиг.5 приведена временная диаграмма работы микропрограммного процессора при наличии сбоя в его аппаратуре, где Ф 1 - синхросигналы на линии Ф 1 24, Ф 2 - синхросигналы на линии Ф 2 25, РК - код команды, РАМК - адрес микрокоманды, КОП - поле КОП 10 микрокоманды, КК - сигнал бита КК 12, РС - код регистра 19, СС - сигнал на выходе первой схемы 20 сравнения, "Сбой" - сигнал на выходе триггера 21 фиксации сбоя,Сброс сигнал сброса на выходе одновибратора 22.Микропрограммный процессор работает следующиМ образом.Операционный блок 1 производит логическую и арифметическую обработки информации, поступающей на информационный вход 17 процессора из внешних устройств. При этом данные и адреса поступают в блок 1, а коды команд - в регистр 2. Команда, поступающая на вход регистра 2, порождает микропрограмму, вырабатываемую блоками 3, 4, 6-8 процессора. Микрокоманда микропрограммы управляет процессом обработки информации в блоке 1 и процессом выборки следующей микро- команды микропрограммы из блока 7, В процессе исполнения команды в регистре 2 хранится ее код, в регистре 6 - адрес следующей микрокоманды, в блоке 7 - коды микропрограмм, в регистре 8 - код исполняемой микрокоманды. Первый и второй мультиплексоры 3 и 4 управляют процессом формирования адреса следующей микрокоманды.Операционный блокфункционирует следующим образом.В качестве узла 26 может быть использована БИС К 1804 ВС 2, Разряды поля КОП 10 микрокоманды поступают навход 15 блока 1. При этом часть разрядов по линиям 31 через буфер 32 поступают на выход 16 блока 1 и являются управляющими сигналами процессора при обмене информацией с внешнимиВыполнение команд в предложенномпроцессоре осуществляется следующимобразом (фиг.3 4).Код исполняемой команды поступаетна информационный вход регистра 2. 55 устройствами. По линии .33 поля КОП 10в блок 1 на управляющий вход приемопереддтчикд 27 поступает сигнал управления режимом работы приемопере5датчика: 0 - линии 17 подключенык информационному входу узла 26,"1" - информационный выход узла 26подключается к шине 17 блока 1, Полиниям 34 поля КОП 10 микрокоманды Она управляющий вход узла 26 поступает код инструкции, который задаеттип выполняемой инструкции, а именноарифметикологическое преобразованиеинформации, находящейся во внутренних регистрах узла 26, прием информации с информационного входа узла 26в один из внутренних регистров узла 26, выдачу информации из одногоиз внутренних регистров узла 26 на 20информационный выход узла 26. С выхода кода условий на первый вход схемы28 сравнения поступают 4 бита условий, вырабатываемых схемами узла 26при выполнении следующих операций: 25Е, результат равен цО"; С, бита переноса; Ч , есть переполнение; Р результат сО,Внутренние схемы арифметическогоузла синхроииэируются синхросигндлами Ф 2 25, передаваемыми по синхролинии 35 на синхронизирующий вход узла 26. Поле условий иэ КОП 10 и биты условий из узла 26 используютсядля реализации условного перехода В 35микропрограммах процессора. Управляет условным переходом бит УП 9 микрокоманды, передаваемый с входа 15 бло.ка 1 на второй вход второго элемента И 31, Если после исполнения эаданной операции код условий узла 26и код условий на линиях 34 совпадут,то на выходе схемы сравнения 28 появляется "1", и если бит УП 9 микрокоманды установлен в 1 , т.е, проверяется условие перехода, то на выходе второго элемента И 31 появляется"1 сигнала подтверждения перехода40, который подается с выхода 13блока 1 на управляющий вход второго50мультиплексора 4 и управляет процессом формирования адреса следующеймикрокоманды микропрограммы. При этом нд управляющем входерегистра 2 с выхода элемента П 5 поддетснразрешающая запись кмднды в регистр 2. Запись в регистр 2 синхронизируется передним фронтом синхроимпульса Ф 24, "1" на выходе элемента И 5 появляется в результате того,что на его входы подантся: 1 с инверсного выхода триггера 21, поскольку последний н нормальном состоянии установлен в "0", "1" бита КК 12 исполняемой микрокоманды, поскольку бит КК 12 в микрокоманде означает конец микропрограммы. Итак, последняя микрокоманда микропрограммы записывает код новой команды в регистр. Одновременно бит КК 12 запрещает работу блока 1. Это связано с организацией контроля функционирования процессора. Бит КК 12 управляет работой первого мультиплексора 3. "1" на его управляющем входе разрешает прохождение информации с его первого информационного входа на выход. Таким образом, с выхода регистра 2 код команды подается через первый мультиплексор 3 на информационный вход регистра 6. По заднему фронту синхросигнала Ф 1 24 код команды записывается в регистр 6, Таким образом, код команды является адресом начала микропрограммы, реализующей данную команду.Адрес микрокоманды с выхода регистра 6 подается на вход блока 7, с его выхода код считанной микрокоманды поступает на информационный вход регистра 8, в который микрокоманда записывается по переднему фронту синхросигналд Ф 2 25, С выхода регистра 8 поля подаются следующие микрокоманды: бит УП 9 на вход 14 блокаи включает схему выработки сигнала подтверждения перехода при реализации условного перехода в микропрограмме; поле КОП 10 на вход 15 блока 1 и управляет работой ОБ 1, а также подается в схему контроля работы процессора; лоле АМК 11 через первый и второй мультиплексоры 3 и 4 в регистр 6 для выработки адреса следующей микро- команды; бит КК 12, сигналиэирующий о том, что исполняется последняя микрокоманда микропрограммы.Исполнение микрокомднды в блоке синхронизируется задним фронтом синхросигнала Ф 2 25. Поле АМК 11 через второй мультиплексор 4, открытый сигналом "0" ПП 13, подается на второйинформационный вход первого мультиплексора 3, поскольку бит КК 12 равен0 (микрокоманда не последняя), информация с второго информационноговхода первого мультиплексора 3 передается на его выход, Адрес следующеймикрокоманды поступает на информационный вход РАМК. Далее процесс исполнения микрокоманды повторяется. 1 ОПри исполнении микрокоманды условного перехода в блоке 1 проверяетсясоответствие кода условий, выработанного узлом 26 (фиг.2), и кода условий поля КОП 10 микрокоманды. Приэтом бит УП 9 установлен в "1". Есликод условий совпадает, то на выходе3 блока 1 появляется "1", котораяподключает первый информационный входвторого мультиплексора 4 к его выходу, В этом случае часть разрядовКОП 10 используется для задачи адреса условного перехода. При этом битУП запрещает в данном такте работуузла 26. Если коды условий не совпадают, то в регистр 6 будет переданосодержимое поля АМК 11 микрокоманды,т.е. условный переход в микропрограм.ме не произойдет. В предпоследнеймикрокоманде выполняемой микропрограммы производится обращение операционного блока к запоминающим устройствам за кодом следующей команды, врезультате к моменту извлечения последней микрокоманды микропрограммына информационном входе регистра 2команд находится код следующей команды. В последней микрокоманде БИТ ККустановлен в "1", поэтому в качествеадреса микропрограммы будет использован код очередной команды.При работе блоков предложенногопроцессора производится контроль исполнения микропрограммы, так как сбоив аппаратуре процессора могут пРивести к выполнению другой последовательности микрокоманд или к выборке неправильного кода микрокоманды, Приэтом в процессоре контролируется всеполе микрокоманды и осуществляетсяконтроль последовательности выполнения микрокоманд,Сбой в работе блоков 1, 3, 6, 7,8 и 4 может привести к следующимситуациям: искажено поле КОП 1 О очередной микрокоманды, в результате вы 55полнится другая инструкция в ОБ 1; искажен бит УП 9 очередной микрокоманды, в результате выполняется непредусмотренный переход в микропрограмме, что вызывает невыполнение инструкции в ОБ 1 и искажение последовательности микрокоманд; искажен бит КК 12 очередной микрокоманды, в результате этого прервано выполнение микропрограмм; искажено после АМКочереднои микрокоманды, что приводитк искажению последовательности микрокоманд.Это означает, что в любом случае сбой в работе блоков 1, 3, 6, 7, 8и 4 приведет к неправильному выполнению микропрограммы. Предлагаемое устройство позволяет зафиксировать подобные сбои и устранить их последствия. Это достигается при помощи дополнительно выделенных блоков: сумматора 13, регистра 2 команд, регистра19 суммы, одновибратора 22. С их помощью в устройстве реализуется подсчет контрольной суммы кодов микро- команд выполняемой микропрограммы. Вполе КОП 10 последней микрокомандызаписан код эталонной контрольнойсуммы, которая сравнивается с вычисленной суммой, Эталонная сумма сравнивается с полученной, Несовпадениесумм означает, что в работе блоков 1,3, 6, 7, 8 и 4 был сбой. Предложенное устройство, зафиксировав такимобразом сбой, организует повторениемикропрограммы,С помощью блоков 18, 19, 22, 21и 22 осуществляется подсчет контрольной суммы выполняемой последовательности микрокоманд и сравнение с эталонной в конце микропрограммы, При несовпадении контрольных сумм осуществляется повторное исполнение микропрограммы, в которой был зафиксирован сбой, Для этого по заднему фронту бита КК 12 последней микрокоманды каждой микропрограммы, если при исполнении микропрограммы в аппаратуре процессора не было сбоев, приведших к искажению микрокоманды, на выходе одновибратора 22 вырабатывается импульс сброса, который обнуляет регистр 19 и триггер 21 (фиг.5). Затем начинается исполнение очередной микропрограммы, определяемой кодом команды, хранящимся в регистре 2, При выборке каждой микрокоманды производится накопление контрольной суммымикропрограммы с помощью сумматора 18 и регистра 19, на которых реализуется функция7 .1372328 го выхода триггера 21 блокируе; ос рвый элемент И 6, а сигнал с его выхода - запись в РК 2 кода следующей команды, Таким образом, в регистре 2 будет сохранен код команды, при выполнении которой был зафиксирован сбой в работе блоков процессора, Код этой команды вновь будет передан че рез первый мультиплексор 3 в регистр6 и будет вновь выполняться прежняя микропрограмма,КС, = КС;, + КОП;,микрокоманд.Запись результата суммирования врегистр 19 производится по заднемуфронту синхроимпульса ф 2 25. "0" бита КК 12 микрокоманды разрешает запись информации в регистр 19.Таким образом, после исполнениямикропрограммы в регистре суммы будет храниться результат суммированияполей КОП 10 исполненных микрокомандКС. Проверка КС производится послевыборки последней микрокоманды исполняемой микропрограммы. В последней 20микрокоманде исполняемой микропрограммы бит КК 12 микрокоманды равен"1", В этом случае поле КОП 10 является эталонной КС исполненной микропрограммы. Эталонная КС подается на 25первый вход схемы 20 сравнения, навторой вход первой схемы сравненияподается КС с выхода регистра 19."1" бита КК 12 микрокоманды в этомтакте работы процессора запрещает запись в регистр 19 и разрешает работусхемы 20 сравнения. Если полученнаяКС и эталонная КС совпадают, то навыходе первой схемы 20 сравнения будет сигнал "0". Триггер 21 остаетсяв нулевом состоянии. Поэтому элементИ 5 открыт сигналом "1" с инверсноговыхода триггера 21 и сигнал бита КК12 разрешает запись кода новой команды в регистр 2, Код команды является 40адресом начала новой микропрограммыи через первый мультиплексор 3 передается в регистр 6. Таким образом,начинается исполнение новой микропрограммы. После записи в регистр 8 45кода первой микрокоманды бит КК 12меняется на "0", Фронт бита КК 12 запускает одновибратор 22, Сигнал с еговыхода обнуляет регистр 19. Далеевыполняется микропрограмма,где КОП; - поле КОП 10 д-й выполненной микрокоманды; КС - контрольная сумма полей КОП 10 д-х выполненныхЕсли в конце микропрограммы полученная КС не совпадает с эталонной, то на выходе первой схемы 20 сравнения в цикле выполнения последней микрокоманды (бит КК 12 "1") появится 55 "1". Поэтому задним фронтом синхросигнала Ф 2 25 триггер 21 установится в . В этом случае нОн с инверсноФормула изобретения 1. Микропрограммный процессор с контролем, содержащий операционный блок, регистр адреса микрокоманд, блок памяти микрокоманд, регистр микрокоманд, триггер фиксации сбоя, схему сравнения, элемент И, причем информационный вход-выход операционного блока является информационным входом-выходо, процессора, выход поля кода операций регистра микрокоманд соединен с входом кода операции операционного блока, выход регистра адреса микрокоманд соединен с адресным входом блока памяти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, о т л и ч а ю щ и й с я тем, что, с целью повышения достоверности контро" ля процессора, он содержит регистр команд, первый и второй мультиплексоры, сумматор, регистр суммы и одно- вибратор, причем информационный вход регистра команд подключен к информационному входу-выходу процессора, выход регистра команд соединен с первым информационным входом первого мультиплексора, первый вход синхронизации процессора подключен к входам синхронизации регистров команд и адреса микрокоманд, выход элемента И соединен с входом разрешения записи регистра команд, выход первого мультиплексора соединен с информационным входом регистра адреса микрокоманд, второй информационный вход первого мультиплексора соединен с выходом второго мультиплексора, вход условного перехода операционного блока соединен с выходом поля условного перехода регистра микрокоманд, выход поля кода операции регистра микрокоманд соединен с первыми информационными входами второго мультиплексора, схемы сравнения и сумматора, выход поляадреса микрокоманд регистра микрокоманд соединен с вторым информационнымвходом второго мультиплексора, управляющий .вход которого соединен с выходом подтверждения перехода операционного блока, второй вход синхронизации процессора подключен к входамсинхронизации операционного блока,регистра суммы, регистра микрокоманди триггера фиксации сбоя, выход поляконца команды регистра микрокомандсоединен с входом запуска одновибратора, управляющим входом схемы сравнения, входом разрешения записи регистра суммы, управляющим входом первого мультиплексора, первым входомэлемента И и входом конца командыоперационного блока, второй вход элемента И соединен с инверсным выходомтриггера фиксации сбоя, выход сумматора соединен с информационным входом регистра суммы, выход которогосоединен с вторыми информационнымивходами сумматора и схемы сравнения,выход которой соединен с информационным входом триггера фиксации сбоя,выход одновибратора соединен с входами сброса регистра суммы и триггерафиксации сбоя, выход управления обменом операционного блока является выходом управления обменом процессора,2. Процессор по п.), о т л и - ч а ю щ и й с я тем, что операционный блок содержит арифметический узел, схему сравнения, два элемента И, элемент ИБ 1-НЕ, приемопередатчик и буферный усилитель, причем раэ 5ряды входа кода операций операционного блока подключены к входу направления передачи приемопередатчика, квходу кода операций арифметическогоузла, к первому входу схемы сравне 10 ния и через буферный усилитель - квыходу управления обменом операционного блока, первый вход элемента ИЛИНЕ являе.тся входом конца команды операционного блока, второй вход элемен 15 та ИЛИ-НЕ и первый вход первого элемента И подключены к входу условногоперехода операционного блока, второйвход первого элемента И соединен свыходом схемы сравнения, второй вход20 которой соединен с выходом кода условий арифметического узла, вход синхронизации которого соединен с выходомвторого элемента И, первый вход которого является входом синхронизации25 операционного блока, второй вход второго элемента И соединен с выходомэлемента ИЛИ-НЕ, информационные входи выход арифметического узла соединены соответственно с информационными30 выходом и входом приемопередатчика,информационный вход-выход которогоявляется информационным входом-выходом операционного блока, выход первого элемента И является выходом подЗ 5 тверждения перехода операционногоблока,1372328 Составитель Д. ВанюхинТехред М. Ходанич ктор В.Даик орректор А.Зимокосо Заказ 484/4 писное НИИ 035 Произвопственно-полиграфическое предприятие, г. Ужгород, ул. Проектна Тираж 704Государственногоделам изобретенийосква, Ж, Раушс митета ССС открытий я наб., д.
СмотретьЗаявка
4126733, 16.06.1986
УФИМСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ ИМ. СЕРГО ОРДЖОНИКИДЗЕ
ИВАНОВ АНАТОЛИЙ ИВАНОВИЧ, ЖИЛЯЕВ ЮРИЙ ПАВЛОВИЧ, КЛАДОВ ВИТАЛИЙ ЕВГЕНЬЕВИЧ
МПК / Метки
МПК: G06F 11/36
Метки: контролем, микропрограммный, процессор
Опубликовано: 07.02.1988
Код ссылки
<a href="https://patents.su/8-1372328-mikroprogrammnyjj-processor-s-kontrolem.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммный процессор с контролем</a>
Предыдущий патент: Устройство для формирования тестовых воздействий
Следующий патент: Устройство для управления каналами
Случайный патент: Устройство для электролитической обработки образцов