Микропрограммное устройство управления с контролем переходов

Номер патента: 985787

Авторы: Бочанова, Колосков, Колоскова, Типикин

ZIP архив

Текст

ОП ИСАНИЕИЗОВЕЕтЕНИЯК АВТОРСКОМУ СВИДЕТЕЛЬСТВУ и 1985787 Союз СоветскихСоциалистическихРеспубмик(22) Заявлено 15.07,81 (21) 3317087118-24 с присоединением заявки М -Гвеудзрстхэнбй квмктет . СФОР аф делзм кзебретеикй и вткрвпмйОпубликовано 30.12.82. Бюллетень М 48 Дата опубликования опмсаммя 30,12.82. В, А. Колосков, Г; П. Колоскова. Йи А, П. ТнпикинЯ1(72) Авторы изобретен тщсдрут с кий политехнический 1) Заявмтел РОГРАММ НОЕ УСТРОЙСТВО С КОНТРОЛЕМ ПЕРЕХОД МИКРОП РАВЛЕН:1Изобретение относится к вычислительной технике, а именно к устройствампрограммного и микропрогоаммного управления повышенной надежности,Известно микропрограммное устройство с контропем переходов, в котором для5проверки правильности обращения по,адресу в каждом из слов микропрограммы за-.писывается бит обшей четности для ин формационной и адресной частей микрокоманды. После считывания данных конт- .рольный код адреса вычитается иэ считамного общего контрольного кода, послечего формируется контрольный код числаи сравнивается с кодом, полученным пос.ле вычитания 1),Контроль по четности этого устройства не позволяет выявить все возможныеотклонения от правильного выполнениямикропрограммы, так как для контроая 20по модулю два характерна высокая веро-ятность пропуска ошибки - 0,5, а необходимость запоминания контрольных кодовобуславливает увеличение разрядности всех слов запоминающего устройства, что ведет к значительным затратам оборудования. На ход выполнения микропрограмм решающее значение оказывает правильность выполнения микрокоманд условногоперехода (модификации текущего адреса в соответствии со значением опрошенного логического условия), поэтому сущест венным оказывается правильность запнби, хранения, считывания и, дальнейшего ис пользования кода номера логического ус;ловия. Применение в рассмотренном устройстве дця проверки правильностй записи и использования кода номера логического условия контроля по модулю повлечет за собой еше больший рост. разрядных цепей и потребует схем сверткй, но не позволит достичь существенного повышения обнаруживающей .способности. Повышение обнаруживающей способности пу . тем увеличения модуля контроля приведет к еше большим аппаратурным затратам(увеличению разрядности всех слов памя- . ти мнкрокоманд), при этом обнаруживаю3 98578щая способность увеличивается незначительно,Так, для контроля по модулю три необходимы уж два контрольных разрядав слове, а вероятность пропуска ошибкиостается высокой - 0,33. Контроль правильности опроса значений логических ус-,ловий можно проводить в микропрограммных устройствах известным методом; дублирование аппаратуры выбора значений 10логических условий, Однако дублированиев сочетании с контролем по модулю требует значи тельных аппаратурных затрат.Наиболее близким к предлагаемому потехнической сущности является микропрограммное устройство управления с контролем переходов, содержащее блок,памяти микропрограмм, регистр адреса, регистр микрокоманд, блок сравнения, блокуправления переходами и сдвигающий регистр.В данном устройстве с целью контроляпорядка следования микрокоманд в микропрограмму введены специальные контрольные микрокоманды, содержащие контрольную информацию Рпя соответствующихучастков исходной микропрограммы. Контрольный код участка алгоритма формиру-.ется на основе структуры конкретногоучастка с учетом порядка, следования микрокоманд условного и безусловного перехода, значений опрашиваемых на участкелогических условий и представляет собойпоследовательность нулей и единиц, где1 соответствует единичному значению опрашиваемого логического усдовия, а О 35нулевому значению логического условияи безусловному переходу.В процессе исполнения микропрограм-мы на сдвигающем регистре формируется40контрольная информация о реальном вы-1подняемом участке, которая в конце участка сравнивается со считанным из памятиконтрольным кодом, Использование вкачестве контрольных кодов информации45о структуре выполняемых участков микропрограммы увеличивает обнаруживающую способность данного устройства посравнению с рассмотренными выше и позволяет обнаружить практически все ошибки, связанные с ложными переходами вну50ри одного контролируемого участка, атакже ложные переходы на новые участки микропрограммы. Исключение составляют ложные переходы на смежные участки в местах разветвлений, Достижениевысокой обнаруживающей способности получено при сравнительно небольших затратах допсанитедьйого оборудования 2 7 4Однако в данном устройстве не контролируется правильность записи, храненияи считывания кода номера логическогоусловия и работа блока управления переходами,Повысить обнаруживаюшую способностьустройства можно было бы рассмотренными выше известными методами, т,е. ддяконтроля записи .и считывания кода номера логического условия использовать контроль по модулю, а для контроля блокауправления переходами - дублирование,Такое решение является неэффективным,так как контроль по модулю требует роста разрядных цепей основной памяти иприменения схем сварки, что совместнос дублированием блока управления переходами потребует значительных затратоборудования, которые будут расти с уве-личением модуля контроля, Применениеже с целью уменьшения оборудования малого модуля контроля (два или три) дает недостаточную обнаруживающую способнос ть. Бель изобретения - повышение эффективности контроля эа счет повышения обнаруживаюшей способности устройства применьших аппаратурных затратах,Поставленная цель достигается тем,что в микропрограммное устройство управления с контролем переходов, содержащее блок памяти микрокоманд, регистрадреса, регистр микрокоманд, дешифратор микрокоманд, дешифратор логическйхусловий, первый коммутатор и первыйблок сравнения, сдвигающий регистр иэлемент НЕ, причем выход первого коммутатора соединен с информационным входом сдвигаюшего регистра и первым входом регистра адреса, выод которого соединен с входом блока памяти микрокоманд, выход блока памяти микрокомандсоединен с входом регистра микрокоманй,первый, второй третий и. четвертый выходы которого соединены соответственнос вторым входом регистра адреса, с входом дешифратора логических условий, свходом дешифратора микрокоманд, с первым входом первого блока сравнения, выход дешифратора микрокоманд соединенс входом элемента НЕ й управляющимвходом первого блока сравнения, выходкоторого соединен с входом сдвига сдвиггаюшего регистра,выход дешифратора логических условий соединен с первым информационным входом первого коммутатора, выход которого соединен с установочным входом сдвигающего регистра, выход5 9857элемента НЕ соединен с управляющимвходом первого коммутатора, второй информационный вход которого соединен свходом логических условий устройства,введены второй блок сравнения, сумматор по модулю два, второй коммутатор,первый и второй блоки элементов И, блокэлементов ИЛИ и элемент ИЛИ, причемпятый выход регистра микрокоманд ивыход дешифратора микрокоманд соединены соответственно с первым и вторымвходами первого блока элементов И, выход которого соединен с первым входомблока элементов ИЛИ, выход которогосоединен с информационным входом сум Зматора по модулю два, управляющий входкоторого соединен с выходом дешифрато. ра микрокоманд, выходы дешифратора логических условий и элемент НЕ соединены соответственно с первыми и вторыми 20входами второго блока элементов И, выход которого соединен с первым входомвторого коммутатора и вторым входомблока элементов ИЛИ, вход логическихусловий устройства, соединен с вторым 2входом второго коммутатора, выход которого соединен с первым входом второгоблока сравнения, выход первого разрядасдвигаюшего регистра соединен с вторымвходом второго блока сравнения, выходысумматора по модулю два первого и второго блоков сравнения соединены соответственно с первым, вторым и третьимвходами элемента ИЛИ, выход которогоявляется выходом устройства.На чертеже приведена схема микропрограммного устройства управпения сконтролем переходов,В устройство входят блок. 1 памятимикрокоманд, регистр 2 адреса, регистр3 микрокоманд, дешифратор 4 логических условий и дешифратор 5 микрокоманд.сдвигающий регистр 6, коммутаторы 7 и8, блоки 9 и 10 элементов И, блок 11и 12 сравнения, сумматор 13 по моду 45лю два, элемент НЕ 14, блок элементовИЛИ 15, элемент ИЛИ 16.Единичное значение выхода дешифратора 5 микрокоманд соответствует выполнению контрольной микрокоманды. Если50реализуемая микрокоманда не являетсяконтрольной, нулевое значение выхода дешифратора 5 блокирует передачу сигнапаошибки с сумматора 13 на элемент ИЛИ16 и передачу кодов с регистра 3 микрокоманд на блок 12 сравнения и суммаИтор 13,Для повышения эффективности контроля хода микропрограмм в них введены 87 6контрольные микрокоманды, позволяющие проконтролировать выполнение участков , микропрограммы, Контрольные микрокоманды размещаются в конце соответствующих участков и состоят из двух групп контрольных разрядов. Первая группа контрольных разрядов соответствует контрольному коду для участка микропрограммы, описанному в прототипе.Вторая группа контрольных разрядов содержит информацию о номерах опрашиваемых на участке логических условий, При этомразрядность второй группы соответствует числу различных логических условий в микропрограмме и наличие еди-, ницы в какой-либо позиции указывает на номер опрашиваемого на данном участке логического условия. Общее число разрядов контрольного снова соответствует сумме числа микрокоманд контролируемого участка и количества различных логических условий в микропрограмме.Сдвигающий регистр 6 и сумматор 13 предназначены для формирования и хранения контрольной информации о реализуемых участках микропрограммы; При этом к моменту выполнения контрольной микрокоманды в конце участка содержимое регистра 6 соответствует реальной посдедовательности выполнения микрокоманд безусловного и усдовного (опроса логических условий) перехода Содержимое сумматора 13 соответствует номерам реально опрошенных на участке логических условий. Например, после безошибочного выполнения последовательности микрокоманд хб Ххр хз( ; - микрокоманды безусловного перехода, хх - мик- .1 рокоманцы условного перехода по нуле-. вым и единичньцм значениям логических условий х ) микропрограммы, обрабатывающей 9 различных логических условий, содержимое сдвигающего регистра 6 и сумматора 13 соответственно равно 1001000 и 011011000.Устройство работает следующим образом.Если при выполнении микропрограммы считана микрокоманда условного перехода, то после дешифрации номера опрашиваемого логического условия дешифратором 4 состояние выходов этого дешифратора (унитарный код с единицей в позиции опрошенного условия) передается с выхода блока 9 элементов И через блок 15 зпементов ИЛИ на сумматор 13 и скпадывается по модулю два с его содержимым. В то же время значение опрошенного логического усло 7 9857вия с выхода коммутатора 7 подается нарегистр 2 адреса для модификации адреса следующей микрокомвнды. Одновременно это значение (1 или 0) поступает наинформационный вход сдвигаюшего регист-ра 6 и со сдвигом записывается в егопервый разряд. После записи значениепервого разряда сдвигающего регистра подается на первый вход блока 11 сравнения, На второй вход блока 11 сравнения 10через коммутатор 8 поступает значениеопрошенного логического условия в соответствии с выходом дешнфратора 4, Навторой вход коммутатора 8 через блок9 элементов И подается информация .с вы-ихода дешифратора логических условий, Такое построение схемы позволяет, проверить правильность считывания, передачии записи в сдвигающий регистр значенияопрошенного логического условия, При эа описи в первый разряд сдвигаюшего регистра 6 значения, не соответствующего ,состоянию опрошенного разряда регистралогических условий, на выходе блока 11сравнения вырабатывается сигнал ошибки, упоступающий на элемент ИЛИ 16, единичное значение выхода которой блокирует работу устройства,Если считана микрокоманда безусловного, перехода, в сдвигаюшем регистре 6 зопроизводится сдвиг информации с записьюнуля в первый разряд. При этом на сумматор 13 никакой информации не поступает.При выполнении контрольной микроко- зманды (на выходе дешифратора 5 - еюница) первая группа контрольных разрядов подается на первый, вход блока 12сравнения, в вторая группа - передаетсячерез блок 10 элементов И на вход сум-матора 13 и складывается по модулю двас его содержимым. Если при выполнении,участка отсутствовали ошибки ложногоперехода на другие фрагменты микропрограммы, либо ложные переходы внутриучастка, то на выходе блока сравнения 12появляется сигнал (нулевой) отсутствияошибки, устанавливающий регистр 6 в "1.В противном случае сигнал наличия ошибки подается на вход элемента ИЛИ 16,Если прн выполнении участка отсутствовали ошибки эаниси, хранения, считыванияи де 1 нифрации кодов номеров опрашиваемыхна участке логических условий, то содержимое сумматоре 13 будет нулевым, что,свидетельствует о совпадении номеров.реально опрошенных логических условийс эталонным контрольным кодом на регисзре 3 микрокоманд. В случае, если в результате ошибки произошел опрос логического условия, которого не было нвучастке, то на сумматоре 13 фиксируются две единицы, одна из которых соответствует номеру ошибочно пропущенного,а другая - ошибочно опрошенного логического условия, При этом с выхода сумматора 13 подается сигнал ошибки наэлемент ИЛИ 16, Счиытвание информациинакапливающего сумматора осуществляется только в период выполнения контрольной микрокоманды по сигналу от дешифратора контрольной микрокоманды,При отсутствии отписанных выше ошибокпроизводится считывание и выполнение очередной микрокоманды.Таким образом, предлагаемое устройство позволяет не только эффективно обнаружить ошибки ложных переходов, но и с меньшими затратами выявить все ошибки, связанные с неправильной записью, хранением, считыванием и дешифрацией кодов номеров логических условий, а также оперативно определить неправльный опрос и запись в сдвигающий регистр 6 значений логических условий.Лостоинством предлагаемого устройства является то, что оно может быть эффективно использовано не только для контроля правильности выполнения микропрограмм в процессе эксплуатации,устройства, но и для проверки правильности записи в памяти мнкрокоманд, т., е. для отладки микропрограмм. Простота отладки достигается за счет введения дополнительных блоков, которые упрощают локализацию места ошибки.Так при наличии ошибки замени номера логического условия оператор, ведущий отладку, может не.только предполагать причину ошибки (невернвя запись в память, считывание из памяти, декодирование номера логического услсеия), но и сопоставлением содержимого сумматора 13 с регистром 3 микрокомвнд может точно определить логическое условие, номер которого был воспринят неверно, Установление факта неправильного считывания значения логического условия позволяет оперативно выявить ошибку по считыванию и передаче на выход значения логического условия, номер которого легко определить по значению кода номера логических нв регистре 3 микрокоманде.Таким образом, изобретение позволяет достичь более высокой обнаруживающей способности меньшими аппаратными затратами и тем самым повысить эффективность контроля.9 9857Значительный эффект может дать применение предлагаемого устройства при микропрограммном и программном управлении реальными объектами, для которых требуется высокая вероятность правиль ного выполнения управляющих программ и наличие оперативных и гибких средств их отладки.10Формула изобретенияМикропрограммное устройство управления с контролем переходов, содержащее блок памяти микрокоманд, регистр адреса, 1 регистр микрокоманд, дешифратор микро- команд, дешифратор логических условий, первый коммутатор, первый блок сравнения, сдвигающий регистр и элемент НЕ, причем выход первого коммутатора соединен с информационным входом сдвигаюшего регистра и первым входом регистра адреса, выход которого соединен с входом блока памяти микрокоманд, выход блока памяти микрокоманд соединен с входом . 25 регистра микрокоманд, первый, второй, третий и четвертый выходы которого соединены соответственно с вторым входом регистра адреса, с входом дешифратора логических условий, с входом дешифрато- Зп ра микрокоманд, с первым входом первого блока сравнения, выход дешифратора микрокоманд соединен с входом элемента НЕ и с управляющим входом первого блока сравнения, выход которого соединен с входом сдвига сдвигающего регистра, выход дешифратора логических условий соединен с первым информационным входом первого коммутатора, выход которого соединен с установочным входом сдвигаю- щего регистра, выход элемента НЕ соеди-. . нен с управляющим входом первого коммутатора, второй информационный вход 10которого соединен с входом логическихусловий устройства, о т л и ч а ю щ е ес я тем, что, с целью повьпцения эффективности контроля, в устройство введенывторой блок сравнения, сумматор по модулю два, второй коммутатор, первый ивторой блоки элементов И, блок элементов ИЛИ и элемент ИЛИ, причем пятыйвыход регистра микрокоманд и выход дешифратора микрокоманд соединены соответственно с первым и вторым входамипервого блока элементов И, выход которого соединен с первым входом блока элементов ИЛИ, выход которого соединен синформационным входом сумматора по модулю два, управляющий вход которого сэ.единен с выходом дешифратора микрокомани, выходы дешифратора логических условий и элемента НЕ соединены соответственно с первыми и вторыми входами второго блока элементов И, выход которогосоединен с первым входом второго коммутатора и вторым входом блока элементов ИЛИ, вход логических условий устройства соединен с вторым входом второгокоммутатора, выход которого соединен спервым входом второго блока сравнения,выход первого разряда сдвигаюшего регистра соединен с вторым входом второгоблока сравнения, выходы сумматора помодулю два первого и второго блоковсравнения соединены соответственно спервым, вторым и третьим входами элемента ИЛИ, выход которого является выходом устройства,Источники информации,принятые во внимание при экспертизе1. Патент США % 3789204,кл. 606 К 11/00, опублик. 1974.2. Авторское свидетельство СССР985787 Составитель И. Сигаловдактор Н. Сташишина Техред Л.Пекарь Корректор О.Бил Зак Тираж дарс обре а, Ж ал ППП Патент, г. Ужгород, ул. Проектная, 4 166/69 ВНИИПИ Гос по делам 113035, Моск731 Подписно енного комитета СССР ний и открытий

Смотреть

Заявка

3317087, 15.07.1981

КУРСКИЙ ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ

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

МПК / Метки

МПК: G06F 9/22

Метки: контролем, микропрограммное, переходов

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

Код ссылки

<a href="https://patents.su/6-985787-mikroprogrammnoe-ustrojjstvo-upravleniya-s-kontrolem-perekhodov.html" target="_blank" rel="follow" title="База патентов СССР">Микропрограммное устройство управления с контролем переходов</a>

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