SU1372328A1 - Микропрограммный процессор с контролем - Google Patents
Микропрограммный процессор с контролем Download PDFInfo
- Publication number
- SU1372328A1 SU1372328A1 SU864126733A SU4126733A SU1372328A1 SU 1372328 A1 SU1372328 A1 SU 1372328A1 SU 864126733 A SU864126733 A SU 864126733A SU 4126733 A SU4126733 A SU 4126733A SU 1372328 A1 SU1372328 A1 SU 1372328A1
- Authority
- SU
- USSR - Soviet Union
- Prior art keywords
- input
- output
- register
- command
- micro
- Prior art date
Links
Landscapes
- Hardware Redundancy (AREA)
Abstract
Изобретерше относитс к вычис и- тельной технике, в частности к процессорам с контролем. Пелью изобретени вл етс повышение достоверности контрол микропрограммного процессора гтутем суммировани кодов микрокоманд и сравнени их суммы с контрольной суммой. В микропрограммный процессор с контролем дополнительно введены сумматор 18, регистр контрольной суммы 19, регистр команды 2, первый 3 и второй 4 мультиплексоры. Он также содержит операционный блок 1, регистр 6 адреса микрокоманд, блок 7 пам ти микрокоманд, регистр 8 микрокоманд , схему сравнени 20, триггер фиксации сбо 21, одновибратор 22, элемент И 5. 1 з.н. ф-лы, 5 ил. к
Description
оо
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 и будет вновь выполн тьс прежн микропрограмма.
Фор. мула изобретени
Claims (1)
1. Микропрограммный процессор с контролем, содержап1ий операционный блок, регистр адреса микрокоманд, блок пам ти микрокоманд, регистр микрокоманд, триггер фиксации сбо , схему сравнени , элемент И, причем информационный вход-выход операционного блока вл етс информационным входом-выходОх- процессора, выход пол кода операций регистра микрокоманд соединен с входом кода операции операционного блока, выход регистра адреса микрокоманд соединен с адресным входом блока пам ти микрокоманд, выход которого соединен с информационным входом регистра микрокоманд, отличающийс тем, что, с целью повышени достоверности контрол процессора, он содержит регистр команд, первый и второй мультиплексоры , сумматор, регистр суммы и одно- вибратор,причем информационный вход регистра команд подключен к информационному входу-выходу процессора, выход регистра команд соединен с первым информационным входом первого мультиплексора , первый вход синхронизации процессора подключен к входам синхронизации регистров команд и адреса микрокоманд, выход элемента И соединен с входом разрешени записи регистра команд, выход первого мультиплексора соединен с информационным входом регистра адреса микрокоманд, второй информационный вход первого мультиплексора соединен с выходом второго мультиплексора, вход условного перехода операционного блока соединен с выходом пол условного перехода регистра микрокоманд, выход пол кода операции регистра микрокоманд соединен с первыми информационными входами второго мультиплексора, схемы сравнени и сумматора, выход пол
адреса микрокоманд регистра микрокоманд соединен с вторым информационным входом второго мультиплексора, управ л ющий.вход которого соединен с выхо- дом подтверждени перехода операцион- ного блока,второй вход синхрониза ции процессора подключен к входам синхронизации операционного блока, регистра суммы, регистра микрокоманд и триггера фиксации сбо , выход пол конца команды регистра микрокоманд соединен с входом запуска одновибра- тора, управл ющим входом схемы срав- нени , входом разрешени записи ре- гистра суммы, управл ющим входом пер вого мультиплексора, первым входом элемента И и входом конца команды операционного блока,второй вход элемента И соединен с инверсным выходом триггера фиксации сбо , выход сумматора соединен с информационным входом регистра суммы, выход которого соединен с вторыми информационными входами сумматора и схемы сравнени , выход которой соединен с информацион ным входом триггера фиксации сбо , выход одновибратора соединен с входа- Ми сброса регистра суммы и триггера
узел, схему срг1внени , два элемента И, элемент ШД1-НЕ, приемопередат чик и буферный усилитель, причем ра р ды входа кода операций операционн го блока подключены к входу направл ни передачи приемопередатчика, к входу кода операций арифметического узла, к первому входу схемы сравнени и через буферный усилитель - к выходу управлени обменом операцион ного блока, первый вход элемента ИЛИ НЕ вл етс входом конца команды оп рационного блока, второй вход элеме та ИЛИ-НЕ и первый вход первого элемента И подключены к входу условног перехода операционного блока, второй вход первого элемента И соединен с выходом схемы сравнени , второй вход которой соединен с выходом кода усло вий арифметического узла, вход синхронизации которого соединен с выходо второго элемента И, первый вход кото рого вл етс входом синхронизации операционного блока, второй вход вто рого элемента И соединен с выходом элемента ИЛИ-НЕ, информационные вход и выход арифметического узла соедине ны соответственно с информационными
фиксации сбо , выход управлени обме- ЗО выходом и входом приемопередатчика.
ном операционного блока вл етс выходом управлени обменом процессора.
2, Процессор по п.1, отличающийс тем, что операционный блок содержит арифметический
35
информационный вход-выход которого вл етс информационным входом-выходом операционного блока, выход перво го элемента И вл етс выходом подтверждени перехода операционного блока.
узел, схему срг1внени , два элемента И, элемент ШД1-НЕ, приемопередатчик и буферный усилитель, причем разр ды входа кода операций операционного блока подключены к входу направлени передачи приемопередатчика, к входу кода операций арифметического узла, к первому входу схемы сравнени и через буферный усилитель - к выходу управлени обменом операционного блока, первый вход элемента ИЛИ- НЕ вл етс входом конца команды операционного блока, второй вход элемента ИЛИ-НЕ и первый вход первого элемента И подключены к входу условного перехода операционного блока, второй вход первого элемента И соединен с выходом схемы сравнени , второй вход которой соединен с выходом кода условий арифметического узла, вход синхронизации которого соединен с выходом второго элемента И, первый вход которого вл етс входом синхронизации операционного блока, второй вход второго элемента И соединен с выходом элемента ИЛИ-НЕ, информационные вход и выход арифметического узла соединены соответственно с информационными
выходом и входом приемопередатчика.
информационный вход-выход которого вл етс информационным входом-выходом операционного блока, выход первого элемента И вл етс выходом подтверждени перехода операционного блока.
Запись 6 Pff
Запись 6
TSbiff
ПК
Запись
5дт
Запись б PC
уст %Сб
запись коп 5 06
Тисп МК, формиробоние
(PiL25
odpecQ /V/T
«-) «м
i
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU864126733A SU1372328A1 (ru) | 1986-06-16 | 1986-06-16 | Микропрограммный процессор с контролем |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
SU864126733A SU1372328A1 (ru) | 1986-06-16 | 1986-06-16 | Микропрограммный процессор с контролем |
Publications (1)
Publication Number | Publication Date |
---|---|
SU1372328A1 true SU1372328A1 (ru) | 1988-02-07 |
Family
ID=21260048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
SU864126733A SU1372328A1 (ru) | 1986-06-16 | 1986-06-16 | Микропрограммный процессор с контролем |
Country Status (1)
Country | Link |
---|---|
SU (1) | SU1372328A1 (ru) |
-
1986
- 1986-06-16 SU SU864126733A patent/SU1372328A1/ru active
Non-Patent Citations (1)
Title |
---|
Авторское свидетельство СССР № 490122, кл. С 06 F 15/06, 1973. Авторское свидетельство СССР № 705452, кл. G 06 F 15/00, 1977. * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0528585B1 (en) | Data processing system with internal instruction cache | |
US4253147A (en) | Memory unit with pipelined cycle of operations | |
US4276595A (en) | Microinstruction storage units employing partial address generators | |
AU617446B2 (en) | Improved parity checking apparatus | |
US4348721A (en) | System for selectively addressing nested link return addresses in a microcontroller | |
US4318172A (en) | Store data buffer control system | |
US4339795A (en) | Microcontroller for controlling byte transfers between two external interfaces | |
SU1372328A1 (ru) | Микропрограммный процессор с контролем | |
US4339796A (en) | System for generating a plurality of different addresses for a working memory of a microcontroller during execution of certain instructions | |
US4339797A (en) | Microcontroller with auxiliary register for duplicating storage of data in one memory location | |
JPS6386630A (ja) | 並列伝送路におけるフレ−ム同期方式 | |
SU985791A1 (ru) | Микропрограммный процессор с контролем | |
US5055707A (en) | Method and apparatus for single step clocking on signal paths longer than a clock cycle | |
JP2870101B2 (ja) | データパス診断回路 | |
SU1130865A1 (ru) | Микропрограммное устройство управлени | |
SU1038944A1 (ru) | Микропрограммное устройство управлени с контролем | |
SU1649539A1 (ru) | Устройство микропрограммного управлени | |
SU1522216A1 (ru) | Устройство дл контрол управл ющей ЭВМ | |
SU798853A1 (ru) | Процессор с реконфигурацией | |
RU2011216C1 (ru) | Устройство для контроля управляющей вычислительной машины | |
SU598080A1 (ru) | Устройство дл контрол выполнени последовательности микрокоманд | |
SU898431A1 (ru) | Микропрограммное устройство управлени | |
SU1508211A1 (ru) | Устройство микропрограммного управлени с контролем | |
RU1807487C (ru) | Устройство дл коррекции ошибок вычислительного процесса | |
SU1564621A1 (ru) | Микропрограммное устройство управлени |