Микропрограммный процессор с контролем Советский патент 1988 года по МПК G06F11/36 

Описание патента на изобретение SU1372328A1

оо

IsD

ОО

to

ас

113

ИпоПретение относится к вычисли тельной технике, в частности к процессорам с контролем.

Целв изобретения повышение до стоверности контроля микропрограммного процессора.

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

Микропрограммный процессор (фиг.1 содержит операционный блок 1, ре- гистр 2 команд, первый мультиплексор 3, второй мультиплексор 4, элемент И 5, регистр 6 адреса микрокоманд, блок 7 памяти микрокоманд, регистр 8 микрокоманд с полями: условного пере хода (УП) 9, кода операции (КОП) 10, адреса микрокоманды (АМК) I1, конца команды (КК) 12, выход 13 подтверждения перехода (ПП), входы условного перехода 1 и кода операции 15, вы- ход 16 управления обменом и информационный вход - выход 17 операционного блока 1, сумматор 18, регистр 19 суммы, схему 20 сравнения, триггер 21 фиксации сбоя, одновибратор 22, вход 23 синхронизации операционного блока, первьш 24 и второй 25 входы синхронизации устройства.

Операционный блок 1 (фиг.2) содержит арифметический узел 26, приемопередатчик 27, схему 28 сравнения, первый элемент И 29, элемент ИЛИ-НЕ 30, второй элемент И 31, буферный усилитель 32, вход 33 направления передачи приемопередатчика, вход ЗД кода операции арифметического узла, первый вход 35 второго элемента И, первый вход 36 элемента ИЛИ-НЕ, первый вход 37 первого элемента И, выход 38 буферного усилителя, информа- ционный вход-выход 39 приемопередат - чика, выход 40 первого элемента И.

На фиг.З приведена схема, поясняющая синхронизацию работы блоков мик- ропрограммного процессора, где Ф1 - сигналы на первой линии синхронизации, Ф2 - сигналы на второй линии синхронизации.

На фиг.4 приведена временная диаг- вход 15 блока 1. При это м часть разрамма работы микропрограммного процессора в нормальном режиме, где Ф1 - синхросигналы на линии Ф1 24, Ф2 - синхросигналы на линии Ф2 25, РАМК -

рядов по линиям 31 через буфер 32 поступают на выход 16 блока 1 и являются управляющими сигналами процессора при обмене информацией с внешними

5 0 5 0

5

0

л.

адрес микрокоманды на выходе регистра 6, РК - код команды, записанный в регистре 2, КОП - поле КОП 10 микpoкoмaн ц I на выходе регистра 8, ИК - сигнал Конец команды на выходе регистра 8, УП - сигнал условного перехода нп выходе регистра В, 1Ш - сигнал на входе 13, PC - код ре- 1 истра 19, Сброс - сигнал сброса на выходе одновибратора 22.

На фиг.5 приведена временная диаграмма работы микропрограммного процессора при наличии сбоя в его аппаратуре, где Ф1 - синхросигналы на линии Ф 24, Ф2 - синхросигналы на линии Ф2 25, РК - код команды, РАМК - адрес микрокоманды, КОП - поле КОП 10 микрокоманды, КК - сигнал бита КК 12, PC - код регистра 19, СС - сигнал на выходе первой схемы 20 сравнения, Сбой - сигнал на выходе триггера 21 фиксации сбоя,Сброс - сигнал сброса на выходе одновибрато- ра 22.

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

Операционный блок 1 производит логическую и арифметическую обработки информации, поступающей на информационный вход 17 процессора из внешних устройств. При этом данные и адреса поступают в блок 1, а коды команд - в регистр 2. Команда, поступающая на вход регистра 2, порождает микропрограмму, вырабатываемую блоками 3, 4, 6-8 процессора. Микрокоманда микропрограммы управляет процес- |сом обработки информации в блоке 1 и процессом выборки следующей микрокоманды микропрограммы из блока 7. В процессе исполнения команды в регистре 2 хранится ее код, в регистре 6 - адрес следующей микрокоманды, в блоке 7 - коды микропрограмм, в регистре 8 - код исполняемой микрокоманды. Первый и второй мультиплексоры 3 и 4 управляют процессом формирования адреса следующей микрокоманды.

Операционный блок 1 функционирует следующим образом.

В качестве узла 26 может быть использована БИС К1804ВС2. Разряды поля КОП 10 микрокоманды поступают на

вход 15 блока 1. При это м часть разрядов по линиям 31 через буфер 32 поступают на выход 16 блока 1 и являются управляющими сигналами процессора при обмене информацией с внешними

устройствами. По линии 33 поля КОП 10 в блок 1 на управляющий вход приемопередатчика 27 поступает сигнал управления режимом работы приемопере- датчика: О - линии 17 подключены к информационному входу узла 26, 1 - информационный выход узла 26 подключается к шине 17 блока 1. По линиям 34 поля КОП 10 микрокоманды на управляющий вход узла 26 поступает код инструкции, который задает тип выполняемой инструкции, а именно арифметикологическое преобразование информации, находящейся во внутрен- них регистрах узла 26, прием информации с информационного входа узла 26 в один из внутренних регистров узла 26, выдачу информации из одного из внутренних регистров узла 26 на информационный выход узла 26. С выхода кода условий на первый вход схемы 28 сравнения поступают 4 бита условий, вырабатываемых схемами узла 26 при выполнении следующих операций: Z, результат равен С, бита переноса; V , есть переполнение; F, результат 0.

Внутренние схемы арифметического узла синхронизируются синхросигнала- ми Ф2 25, передаваемыми по синхроли- НИИ 35 на сиюсронизирующий вход узла 26. Поле условий из КОП 10.и биты условий из узла 26 используются для реализации условного перехода в микропрограммах процессора. Управляет условным переходом бит УП 9 микрокоманды, передаваемый с входа 15 блока 1 на второй вход второго элемента И 31. Если после исполнения за- данной операции код условий узла 26 и код условий на линиях ЗА совпадут, то на выходе схемы сравнения 28 появляется 1, и если бит УП 9 микрокоманды установлен в 1, т.е. проверяется условие перехода, то на выходе второго элемента И 31 появляется 1 сигнала подтверждения перехода 40, который подается с выхода 13

блока 1 на управляющий вход второго мультиплексора 4 и управляет процессом формирования адреса следующей микрокоманды микропрограммы.

Выполнение команд в предложенном, процессоре осуществляется следующим образом (фиг.З, 4).

Код исполняемой команды поступает на и}1формационный вход регистра 2.

с )0 15 20 25

зо -, Q 5

50

5

При этом на управляющем входе регистра 2 с выхода элемента И 5 подается 1, разрешающая запись коман/о : и р г- гистр 2. Запись в регистр 2 синхронизируется передним фронтом cинxpoи - пульса Ф1 24. 1 на выходе элемента И 5 появляется в ре: ультате того, что на его входы подаются: 1 с инверсного выхода триггера 21, поскольку последний в нормальном состоянии установлен в О, 1 бита КК 12 исполняемой микрокоманды, поскольку бит КК 12 в микрокоманде означает конец микропрограммы. Итак, последняя микрокоманда микропрограммы записывает код новой команды в регистр. Одновременно бит КК 12 запрещает работу блока 1. Это связано с организацией контроля функционирования процессора. Бит КК 12 управляет работой первого мультиплексора 3. 1 на его управляющем входе разрешает прохождение информации с его первого информационного входа на выход. Таким образом, с выхода регистра 2 код команды подается через первый мультиплексор 3 на информационный вход регистра 6. По заднему фронту синхросигнала Ф1 24 код команды записывается в регистр 6. Таким образом, код команды является адресом начала микропрограммы, реализующей данную команду.

Адрес микрокоманды с выхода регистра 6 подается на вход блока 7, с его выхода код считанной микрокоман- дь поступает на информационный вход регистра 8, в который микрокоманда записывается по переднему фронту синхросигнала Ф2 25. С выхода регистра 8 поля подаются следующие микрокоманды: бит УП9 на вход 14 блока 1 и включает схему выработки сигнала подтверждения перехода при реализации условного перехода в микропрограмме; поле КОП 10 на вход 15 блока 1 и управляет работой ОБ, а также подается в схему контроля работы процессора; поле АМК 11 через первый и второй мультиплексоры 3 и 4 в регистр 6 для выработки адреса следующей микрокоманды; бит КК 12, сигнализирующий о том, что исполняется последняя микрокоманда микропрограммы.

Исполнение микрокоманды в блоке 1 синхронизируется задним фронтом синхросигнала Ф2 25. Поле АМК II через второй мультиплексор 4, открытый сигналом О ПП 13, подается на второй

информационный вход первого мультиплексора 3, поскольку бит КК 12 равен о (микрокоманда не последняя), информация с второго информационного входа первого мультиплексора 3 передается на его выход. Адрес следующей микрокоманды поступает на информа- ционный вход РАМК. Далее процесс ис- 1юлне1шя микрокоманды повторяется.

При исполнении микрокоманды условного перехода в блоке 1 проверяется соответствие кода условий, выработанного узлом 26 (фиг,2), и кода условий поля КОП 10 микрокоманды. При этом бит УП 9 установлен в М, Если код условий совпадает, то на выходе 13 блока 1 появляется 1, которая подключает первый информационный вход второго мультиплексора 4 к его выхо- ду, В этом случае часть разрядов КОП 10 используется для задачи адреса условного перехода. При этом бит УП запрещает в данном такте работу узла 26, Если коды условий не совпа- дают, то в регистр 6 будет передано содержимое поля АМК 11 микрокоманды, т.е. условный переход в микропрограмме не произойдет, В предпоследней микрокоманде выполняемой микропрог- раммы производится обращение операционного блока к запоминающим устройствам за кодом следующей команды, в результате к моменту извлечения последней микрокоманды микропрограммы на информационном входе регистра 2 команд находится код следующей команды, В последнег микрокоманде БИТ КК установлен в 1, поэтому в качестве адреса микропрограммы будет исполь- зован код очередной команды,

При работе блоков предложенного процессора производится контроль исполнения микропрограммы, так как сбо в аппаратуре процессора могут привес ти к выполнению другой последовательности микрокоманд или к выборке неправильного кода микрокоманды. При этом в процессоре контролируется все поле микрокоманды и осуществляется контроль последовательности выполнения микрокоманд.

Сбой в работе блоков 1, 3, 6, 7, 8 и 4 может привести к следующим ситуациям; искажено поле КОП 10 очередной микрокоманды, в результате выполнится другая инструкция в ОБ 1; искажен бит УП9 очередной микрокоманды, Б результате выполняется непред-

0 5 о Q

5

0

5

усмотренный переход в микропрограмме, что вызывает невыполнение инструкции в ОБ и искажение последова- тельности микрокоманд; искажен бит КК 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, на которых реализуется функция

КС, КС j, + КОП;

где КОП; - поле КОП 10 i-й выполненной микрокоманды; КС; - контрольная сумма полей КОП 10 i-X выполненных микрокоманд.

Запись результата суммирования в регистр 19 производится по заднему фронту синхроимпульса Ф2 25. О бита КК 12 микрокоманды разрешает запись информации в регистр 19.

Таким образом, после исполнения микропрограммы в регистре суммы будет храниться результат суммирования полей КОП 10 исполненных микрокоманд КС. Проверка КС производится после выборки последней микрокоманды испол-

няемой микропрограммы. В последней микрокоманде исполняемой микропрограммы бит КК 12 микрокоманды равен 1. В этом случае поле КОП 10 является эталонной КС исполненной микропрограммы. Эталонная КС подается на первый вход схемы 20 сравнения, на второй вход первой схемы сравнения подается КС с выхода регистра 19. 1 бита КК 12 микрокоманды в этом такте работы процессора запрещает за пись в регистр 19 и разрешает работу схемы 20 сравнения. Если полученная КС и эталонная КС совпадают, то на выходе первой схемы 20 сравнения будет сигнал О . Триггер 21 остается

в нулевом состоянии. Поэтому элемент И 5 открыт сигналом 1 с инверсного выхода триггера 21 и сигнал бита КК 12 разрешает запись кода новой команды в регистр 2. Код команды является адресом начала новой микропрограммы и через первый мультиплексор 3 передается в регистр 6. Таким образом, начинается исполнение новой микропрограммы. После записи в регистр 8 кода первой микрокоманды бит КК 12 меняется на О. Фронт бита КК 12 запускает одновибратор 22. Сигнал с его выхода обнуляет регистр 19. Далее выполняется микропрограмма.

Если в конце микропрограммы полученная КС не совпадает с эталонной, то на выходе первой схемы 20 сравнения в цикле выполнения последней микрокоманды (бит КК 12 1) появится- 1. Поэтому задним фронтом синхросигнала Ф2 25 триггер 21 установится в 1. В этом случае О с инверсно

10

15

20

5

0

5

О з

5

0

го пыхода триггера 21 блокирусi чор- вый элемент И 6, п сигнал с его i.i- хода - запись в РК 2 кода следчтиией команды. Таким образом, в регистре 2 будет сохранен код команды, при выполнении которой был зафиксирован сбой в работе блоков процессора. Код этой команды вновь будет передан через первый мультиплексор 3 в регистр 6 и будет вновь выполняться прежняя микропрограмма.

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

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

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

узел, схему срг1внения, два элемента И, элемент ШД1-НЕ, приемопередат чик и буферный усилитель, причем ра ряды входа кода операций операционн го блока подключены к входу направл ния передачи приемопередатчика, к входу кода операций арифметического узла, к первому входу схемы сравнения и через буферный усилитель - к выходу управления обменом операцион ного блока, первый вход элемента ИЛИ НЕ является входом конца команды оп рационного блока, второй вход элеме та ИЛИ-НЕ и первый вход первого элемента И подключены к входу условног перехода операционного блока, второй вход первого элемента И соединен с выходом схемы сравнения, второй вход которой соединен с выходом кода усло вий арифметического узла, вход синхронизации которого соединен с выходо второго элемента И, первый вход кото рого является входом синхронизации операционного блока, второй вход вто рого элемента И соединен с выходом элемента ИЛИ-НЕ, информационные вход и выход арифметического узла соедине ны соответственно с информационными

фиксации сбоя, выход управления обме- ЗО выходом и входом приемопередатчика.

ном операционного блока является выходом управления обменом процессора.

2, Процессор по п.1, отличающийся тем, что операционный блок содержит арифметический

35

информационный вход-выход которого является информационным входом-выходом операционного блока, выход перво го элемента И является выходом подтверждения перехода операционного блока.

узел, схему срг1внения, два элемента И, элемент ШД1-НЕ, приемопередатчик и буферный усилитель, причем разряды входа кода операций операционного блока подключены к входу направления передачи приемопередатчика, к входу кода операций арифметического узла, к первому входу схемы сравнения и через буферный усилитель - к выходу управления обменом операционного блока, первый вход элемента ИЛИ- НЕ является входом конца команды операционного блока, второй вход элемента ИЛИ-НЕ и первый вход первого элемента И подключены к входу условного перехода операционного блока, второй вход первого элемента И соединен с выходом схемы сравнения, второй вход которой соединен с выходом кода условий арифметического узла, вход синхронизации которого соединен с выходом второго элемента И, первый вход которого является входом синхронизации операционного блока, второй вход второго элемента И соединен с выходом элемента ИЛИ-НЕ, информационные вход и выход арифметического узла соединены соответственно с информационными

выходом и входом приемопередатчика.

информационный вход-выход которого является информационным входом-выходом операционного блока, выход первого элемента И является выходом подтверждения перехода операционного блока.

Запись 6 Pff

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

название год авторы номер документа
Микропрограммный процессор 1984
  • Иванов Анатолий Иванович
  • Жиляев Юрий Павлович
  • Кладов Виталий Евгеньевич
SU1211746A1
Процессор для мультипроцессорной системы 1985
  • Белицкий Роберт Израилевич
  • Зайончковский Анатолий Иосифович
  • Палагин Александр Васильевич
SU1295410A1
Процессор с микропрограммным управлением 1983
  • Соловьев Алексей Алексеевич
  • Курбатов Борис Юрьевич
  • Барашко Виктор Сергеевич
  • Еремин Алексей Тимофеевич
  • Власов Феликс Сергеевич
  • Румянцев Владимир Ильич
SU1149273A1
Микропрограммный процессор 1982
  • Полонский Дмитрий Васильевич
  • Пушкарев Юрий Яковлевич
SU1037264A1
Устройство для управления цифровой вычислительной машиной 1974
  • Овсепян Грачья Есаевич
  • Оганян Герман Арташесович
  • Гончоян Ваган Грачикович
SU520591A1
Микропрограммный процессор с контролем 1981
  • Ткаченко Сергей Николаевич
  • Тимонькин Григорий Николаевич
  • Харченко Вячеслав Сергеевич
  • Плахтеев Анатолий Павлович
SU985791A1
Микропрограммное устройство управления 1988
  • Сидоренко Николай Федорович
  • Харченко Вячеслав Сергеевич
  • Тимонькин Григорий Николаевич
  • Сазонов Александр Евгеньевич
  • Ткаченко Сергей Николаевич
  • Остроумов Борис Владимирович
SU1621027A1
Микропрограммный процессор 1987
  • Дрель Леонид Исаакович
  • Мугинштейн Израил Семенович
  • Шварц Эммануил Ехезкелевич
SU1553984A1
Устройство для сопряжения оперативной памяти с внешними устройствами 1981
  • Верига Маргарита Андреевна
  • Овсянников Валерий Иванович
  • Погодаев Валерий Викторович
  • Шевченко Тарас Григорьевич
SU993237A1
Устройство для сопряжения ЦВМ с накопителями на магнитной ленте 1985
  • Давыдов Виктор Александрович
  • Попов Владимир Григорьевич
  • Козлов Вячеслав Максимович
  • Чесалин Лев Сергеевич
SU1288708A1

Иллюстрации к изобретению SU 1 372 328 A1

Реферат патента 1988 года Микропрограммный процессор с контролем

Изобретерше относится к вычис и- тельной технике, в частности к процессорам с контролем. Пелью изобретения является повышение достоверности контроля микропрограммного процессора гтутем суммирования кодов микрокоманд и сравнения их суммы с контрольной суммой. В микропрограммный процессор с контролем дополнительно введены сумматор 18, регистр контрольной суммы 19, регистр команды 2, первый 3 и второй 4 мультиплексоры. Он также содержит операционный блок 1, регистр 6 адреса микрокоманд, блок 7 памяти микрокоманд, регистр 8 микрокоманд, схему сравнения 20, триггер фиксации сбоя 21, одновибратор 22, элемент И 5. 1 з.н. ф-лы, 5 ил. к

Формула изобретения SU 1 372 328 A1

Запись 6

TSbiff

ПК

Запись

5дт

Запись б PC

уст %Сб

запись коп 5 06

Тисп МК, формиробоние

(PiL25

odpecQ /V/T

«-) «м

i

Документы, цитированные в отчете о поиске Патент 1988 года SU1372328A1

Микропрограммный процессор 1973
  • Ульянова Елена Константиновна
  • Маслова Жанна Робертовна
  • Степанов Виктор Николаевич
  • Евдолюк Юрий Максимович
SU490122A1
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1
Микропрограммный процессор 1977
  • Андрущенко Анатолий Григорьевич
  • Барбаш Иван Панкратович
  • Тимонькин Григорий Николаевич
  • Ткаченко Сергей Николаевич
  • Фомин Николай Федорович
  • Харченко Вячеслав Сергеевич
SU705452A1
Приспособление для точного наложения листов бумаги при снятии оттисков 1922
  • Асафов Н.И.
SU6A1

SU 1 372 328 A1

Авторы

Иванов Анатолий Иванович

Жиляев Юрий Павлович

Кладов Виталий Евгеньевич

Даты

1988-02-07Публикация

1986-06-16Подача