Устройство для прерывания программ

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

Автор: Тимошок

ZIP архив

Текст

(23) П рноритет -лом нзобретеннйн открытий публнковано 25,05,80, Бвллетента опубликования описан 05.80) Автор,нзобретени Тимошо 71) Заявитель РО 1 тежит к ет быть Изоб тельнойычисписполь- тфровых тение прин схнике и м зовано в системах прерывания цвычислительных машин.Известно устройство для обр бот запросов с контролем очередности, содержащее блок памяти, записывающий и считывающий кольцевые счетчики, форм нныи И, первые шифратором одами замы ИЛИ, соединенные с входами дешифратора, вторыесхемы И, первые входы которых соединены с выходами ячеек памяти, вторыевходы - с выходами считывающего счетчика,а выходы соединены с соответствую.шими входами схем ИЛИ 11, Входы блока контроля наличия информации соединены с выходами ячеек памяти, а выходысоединены с первыми входами схемы запрета и третьих схем И и с входами блока синхронизации, первый и второй выхоирователь импульсов, соедифратором, первые схемыоды которых соединены сорые входы связаны с выхсываюшего счетчика, схе ДЛЯ ПРЕРЫВАНИЯ ПРОГРАММ ды которого соединены с входами соответствующих счетчиков, вторые входытретьих схем И соединены с выходамизаписывающего счетчика и с вторымивходами схем запрета, а выходы третьихсхем И через схему ИЛИ соединены сосчетным входом записывающего счетчика, Счетный вход считывающего счетчика соединен с выходом датчика окончанияобслуживания и с третьими входами втоторых схем И,Большое количество аппаратуры иотсутствие контропя соответствия выбранного запроса дисциплине обслуживания запросов, делает это устройство несовершен 15ньтм. Известно устройство для поерыванияпрограмм, содержащее регистр прерывания, регистр зашиты, схему выявленияразрешенных прерываний, счетчик, дешифратор, схему управления, сумматор,группы вентилей, схемы свертки, регистрконтрольного кода ащиты, схемы ИЛИ,логическую схему, регистр номера преры- вания и регистр контрольного кода номстору, остальные входы которого соединены, соответственно, с выходами первой схемы свертки и схемы управления, а выходы сумматоре соединены с регистром контрольного кода номера прерывания и схемой управления, подключенной к второму выходу логической схемы и к второму входу регистра контрольного кода номера прерывания, один выход схемы управления соединен через счетчик и дешифратор с входами второй, третьей и четвертой групп вентилей, Второй вход четвертой группы вентилей связан со схемой управления, а выход - с регистром прерывания и первой схемой свертки. Первый вход регистра номере прерывания соединен со схемой управления, е вход - со счетчиком, выход которого подключен к второму входу регистре номера прерываний.Недостатками такого устройстве яииются наличие большого количестве аппаратуры и малое быстродействие, обуслов ленное последоветьпьным сложением информации на сумматоре, а также том, что при возникновении сбоя или отказа повторяется цикл работы устройства и только затем выдается сигнал ошибки.Наиболее близким по технической сущности к изобретению является устройство для прерывания программ, содержащее схему приоритета, входы которой саединины с выходами регистра прерываний и ре гистра масок, шифратор, ьходы ко.;араго соединены с входами упревляюшего элемента ИЛИ и с основными выходами схемы приоритетеэ дополнительный выход 55 которой соединен с выходной шиной устройства. и сумматор, основные входы которого соединены с выходами шифраторе и регистре базового адреса 3. Допол 20 3 7361 ра прерывания Я, Первый вход устройства через первую группу вентилей соединен с первой схемой свертки, Второй ьход устройства через регистр заииты подключен к первому входу схемы ИЛИ, вторым входом связанной с регистром прерывания, и через регистр контрольного кода зашиты - к входу сумматора. Выход схемы выявления разрешения прерываний через вторую группу вентилей соединен с первыми входами логической схемы и второй схемы свертки, вторые входы которых подключены к схеме упраьпения. Выход схемы ИЛИ через третью группу вентилей соединен с третьей схемой свертки. Выходы второй и третьей схем свертки и первый выход логической схемы подключены к сумма 01нительный вход сумматоре через злсмент И соединен с выходами триггераи управляющего элемента ИЛИ,Однако работоспособность этого устройства в процессе работы не контропируется.Целью изобретения является повышение достоверности работы,Это достигается тем, что в устройство введены группа элементов ИЛИ, блокпредскезания приоритетов, первый и второй полусумматоры, второй, третий и четвертый элементы ИЛИ, причем, инверсные выходы регистра прерываний и регистра масок соединены соответственнос первыми и вторыми входами элементовИЛИ группы, четные вьходы группы элементов ИЛИ соединены с четными входами блока предсказания приоритета, а не -четные выходы группы элементов ИЛИ соединены с нечетными входами блока предсказания приоритета, прямой выход блока предсказания приоритета соединен спервым входом первого полсумматора,второй вход которого соединен с вьлодом второго элемента ИЛИ, входы которого подключены к нечетным вьсходамблока приоритета, инверсный выход блока предсказаний приоритете подключенк первому входу второго полусучаатора,второй вход которого соединен с выходом третьего элемента ИЛИ, входы которого соединены с четными выходамиблока приоритета, Кроме того, выходывторого и третьего элементов ИЛИ подкл 1 очены соответственно к первому ивторому входам первого элемента ИЛИ,при этом выходы первого и второго полусумматоров подицочепы к первому и второму входам четвертого элемента ИЛИ,выход которого является третьим выходом устройства. Бчок предсказания приоритета содержит группу элементов НЕ,группу элементов И, элем нт НЕ и гятыйэлемент ИЛИ, причем первый вход пятого элемента ИЛИ соединен с выходомпервого элементе НГ группы, а остальные входы пятого элемента ИЛИ соединены с выходами элементов И группы,первые входы которых соединенысоответственнос выходами элементов НЕгрупты кроме первого, входы элементовНЕ группы являются нечетными входамиблока предсказания приоритета, а четныевходы блока предсказания приоритетасоединены с вторыми ьходами элементовИ группы, при этом группа входов каждого последующего элементе И кромепервого соединена со всеми вторыми ьхо7361 10 есличетноеесли 5дами предыдуших элементов И группы, соответственно, е вход перв го элемента И группы является вторым входом блока предсказания приоритета, выход пятого элемента И соединен с входом элемента НЕ и является прямым выходом блока предсказания приоритета, е выход элемента НЕ является инверсным выходом блока предсказания приоритета.Блок предсказания приоритета реализует логическую функцию РФ 1 фхг О+Хг Х 4 ХБ+ + ХгХ 4 ХМ,ХХХ 4 Хп, нечетное где Х Хг М - обозначение двоичныхи 20переменных, каждая изкоторых соответствуетсигналу на выходе одного из разрядныхэлементов ИЛИ группы; 25И - максимально возможное в данной системечисло запросов на прерывание,Возможность контроля предлагаемого устройства прерывания достигается путем сравнения на полусумматорах сигнала предсказанного приоритета и сигнала, вырабатываемого в действительности схемой приоритета. Блок предсказания приоритета прогнозирует приоритет запроса, подлежащий отработке, а второй и третий многовходовые элементы ИЛИ определяют четность или нечетность реально отраба 40 тыввемого запроса.На фиг. 1 приведена схема предлагаемого устройства для прерывания программ на фиг, 2 - схема блока предсказания приоритета.45Устройство для прерывания программ содержит регистр 1 прерываний и регистр 2 масок, выходы которых соединены с входами блока 3 приоритета, а входы являются первым и вторым входами усч 50 ройства соответственно. Нечетные выходы 4 блока 3 приоритета соединены с входами второго многовходового элемента ИЛИ 5. Четные выходы 6 блока 3 приоритета соединены с входами третье го многовходового элемента ИЛИ 7., Четные и нечетные выходы 6 и 4 блока 3 приоритета соединены также с входами шифратора 8. Инверсные выходы регист 01 6ра 1 прерываний и регистра 2 масок соединены с входами соответствующих разрядньк элементов ИЛИ 9 группы, выходы которьпс соединены с входами блока 10 предсказания приоритета, Прямой выход 1 1 блока 10 предсказания приоритета соединен с первым входом первого пспусумматора 12. Инверсньш выход 13 блока 10 предсказания приоритета соединен с первым входом второго полусумматора 14. Выходы второго и третьего многовходовых элементов ИЛИ 5 и 7 соединены соот ветственно с вторьыи входами полусум маторов 12 и 14, а также с входами первого элемента ИЛИ 15. Выходы полусумматоров 12 и 14 соединены с входами четвертого элемента ИЛИ 16, выход 17 которого соединен с шиной контроля и является третьим выходом устройства, Выходы первого элемента ИЛИ 15 и триггера 18 соединены с входами элемента И 19, выход которого соединен с третьим входом сумматора 20. Второй и первый входы сумматора 20 соединены с выходами регистра 21 базового адреса и выходами шифратора 8. Дополнительный выход выход отсутствия прерываний) 22 схемы 3 приоритета соединен с выходной шиной устройства и является первым выходом устройства, Выходы первого, второго, третьего, четвертого, И-го разрядных элементов ИЛИ 9 обозначены соответственно 23, 24, 25,26 и 27. Выход сумматора - второй выход устройства, вход триггера- третий вход устройства, е вход регистра базового адреса - четвертый вход устройства. Блок 10 предсказания приоритета содержит элемент ИЛИ 28, элементы 29 НЕ группы и группу элементов И 30. Дополнительный вход элемента ИЛИ 28 через элемент НЕ 29 группы соединен с выходом 23 первого разрядного элемента ИЛИ 9 группы. Основные входы элемента ИЛИ 28 соединены с выходами элементов группы И 30.Дополнительный вход каждого элемента группы И 30 соединен через элемент группы НЕ 29 и с выходом соответствукьщего разрядного элемента групп ИЛИ 9.Вторые 2 ьходы каждого элемента И 30 группы соединены с выходами всех четных разрядных элементов ИЛИ 9 группы, предшествующих выбранному, Например, основной вход первого элемента И 30 груп- пы соединен с выходом 24 второго разрядного элемента ИЛИ 9 группы. Допол736101 О 35 0 1 1 0 0 О 50 О 1 0 55 Х нительный вход первого элемента 30 Игруппы соединен через элемент НЕ 29с выходом 25 третьего разрядного элемента ИЛИ 9 группы, Прямой выходэлемента ИЛИ 28 является прямым выходом 11 бдока 10 предсказания приоритета. Выход 13, связанный через элемент 31 НЕ с прямым выходом элемента ИЛИ 28 является инверсным выходомблока 10 предсказания приоритета,Устройство для прерывания программфункционирует следуюшим образом. Наличие запроса на прерывание фиксируетсяв регистре 1 прерываний. В регистре 2масок по командам программы-диспетчера устанавливается код зашиты от прерываний. Единичное значение в 1= М разояде кода соответствует разрешению прерывания,Блок 3 приоритета обеспечивает выделение сигнала прерывания с более высоким приоритетом, который определяется слева направо из числа поступившихна схему сигналов прерывания, разрешенных кодом регистра 2 масок, Переходк программе прерывания происходит приналичии соответствующего запроса и разрешения со стороны программы-диспетчера, которое фиксируется триггером 18.Выбранный сигнал запроса через второйи третий многовходовые элементы ИЛИ5 и 7 и первый элемент ИЛИ 15 поступает на вход элемента И 19, с выходакоторого на дополнительный вход сумматора 20 поступает управляющий сигнвдпри наличии разрешающего сигнала с выхода триггера 18.Адрес начальной команды программыпрерывания формируется суммирсваниемна сумматоре 20 кода номера сигналапрерывания, который формируется шифратором 8, и кода базисного адреса, расположенного в регистре 21 базисногоадреса. факт отсутствия незамаскированных прерываний отмечается наличиемсигнала на выходе отсутствия прерывания 22 блока 3 приоритета. Устройствоуправления процессора перед выборкойследующей команды должно анализироватьсостояние этого выхода. Если сигналнв выходе 22 блока 3 приоритета есть,то выбирается очередная команда программы если сигнала нет, то начинаетвыполняться операция прерывания.Контроль работоспособности производится параллельно с функционированиемустройства, При этом, во время отработки устройством прерывания очередного запроса на прерывание, на выходах группы разрядных элементов ИЛИ 9 формируется определенный код. Поскольку вхо ды 1 -го разрядного элемента ИЛИ 9 5 группы соединены с инверсными .выходами 1-го разряда регистра 1 прерываний и регистра 2 масок, то нуль в таком коде соответствует ситуациям, когда 1 -й запрос не замаскирован 1 -м триггером регистра 2 масок. Во всех других случаях в 1 -м разряде кода будет присут ствовать единица. Код с выходов группы разрядньк элементов ИЛИ 9 поступает на входы блока 10 предсказания приори тета. Блок 10 предсказания приоритета предназначен ддя того, чтобы по преобразованным элементами ИЛИ 9 группы кодам регистра 1 приоритета и регистра 2 масок определить, четный или нечетный 20 запрос должен выполняться (под четностью иди нечетностью запроса понимает- ся его порядковый номер в регистре 1 прерываний) .Работа блока 10 предсказания приори тета отражена в табл 1.Таблица9 736101 д в регист приоритет Код в регистр2 масок Код на выходах азрядных элементов 9 ИЛИ В этой таблице приведена логическая функция Р от четырех переменных. Как видно из таблицы функция Р=1, если она первая в порядке возрастания, равная нулю переменная Х имеет нечетный 5 номер, и функция Р = О, если этот номер четный, Если учесть, что переменная Хсоответствует сигналу с выхода 1-го разрясиюго элемента ИЛИ 9 группы нулевой уровень которого соответствует 10 незамаскированному запросу, то становится ясно, что функция Р = 1 в случае, если должен отрабатываться запрос, имеющий нечетный номер. Если же должен отрабвтнваться запрос с четным номером, то функция Р = О.Для случая четырех переменных функция Р имеет вид;Р Х+ХХ (г)В качестве прймера рассмотрим случай, когда коды в регистре 1 приоритета, регистре 2 масок и на выходах группы разрядных элементов ИЛИ 9 соответствуют приведенным в табл. 2.25Таблица 2 Как видно из этой таблицы, не замаскированы из числа поступивших второй и четвертый запросы (ноль на выходе второго и четвертого разрядного элементов45 9 ИЛИ группы). При этом, в соответствии с приоритетом, сначала должен выполняться второй (т.е. четный запрос).При этом, из выражения (2) функцияР=О+О,О=О50 (т.е. действительно предсказывается ьтработка четного запроса).Из табл. 1 видно, что коду 1111 на выходе группы разрядных элементов 9 ИЛИ группы соответствует неопределен 55 ное значение функции Р. Действительно, код 1111 означает, что нет ни одного незамаскированного запроса на прерывание, Поскольку в обшем случае поступле. 10ние запроса есть событие случайное, топредсказать, какой это будет запрос(етный или нечетный) невозможно. Вэтом случае работа схемы контроля блокируется сигналом с выхода отсутствияпрерываний 22 схемы 3 приоритета домомента появления незамаскированногозапроса.В случае И переменных функция Рпринимает вид (1). Блок 10 предсказания приоритета в общем случаен реализует функцию вида (1), При этом прямой выход 11 блока соответствует самой функции, а инверсный выход 13 -ее отрицанию,Таким образом, если должен отрабатываться, например, нечетный запрос,то на выходе 11 блока 10 предсказания приоритета будет 1, на выходе13-0. При этом, при правильной работе блока 3 приоритета должен появиться сигнал на одном из его нечетныхвыходов 4, на его четных выходах 6сигналы должны отсутствовать. Следовательно, на выходе второго элементаИЛИ 5 должна быть 1, на выходетретьего элемента ИЛИ 7 - 0". Вэтом случае первый и второй полусумматоры 12 и 14 не вырабатываютсигнал несоответствия и с выхода 17четвертого элемента ИЛИ 16 в шинуконтроля сигнал ошибки не поступает.В случае же ошибки, например, еслиблоком 3 приоритета вместо нечетногозапроса выберется четный, на выходетретьего элемента ИЛИ 7 появится "1,на выходе второго элемента ИЛИ 5 -"0" и полусумматоры 12 и 14 выработают сигнал несоответствия, вследствиичего с выхода 17 четвертого элементаИЛИ 16 в шину контроля поступит сигнал ошибки. Аналогично выявляютсядвойные и многократные ошибки, когдавместо одного возбуждено несколькочетных и нечетных выходов блока 3 приоритета. Кроме того, выявляются такжеслучаи отсутствия сигнала на выходахблока 3 приоритета. Действительно, наодном из выходов 11 или 13 будет присутствовать "1, свидетельствуюшая отом, четный или нечетный запрос долженотрабатываться. Нв выходах же элементов 5 и ИЛИ 7 будет присутствовать логический 0", Следовательно, один изполусумматоров 12 и 14 выработаетсигнал несоответствия и с выхода 17четвертого элемента ИЛИ 16 в шинуконтроля поступит сигнал ошибки.Надо отметить, что логическая " 1 на выходе 17 четвертого элемента 16 ИЛИ воспринимается как сигнал ошибки только в соответствующие мо менты времени и при отсутствии сигна да на выходе 22 отсутствия прерьвений блока 3 приоритета (этот сигнал должен блокировать контроль в неопределенных ситуациях, связанных с отсутствием незамаскированных запросов), 10В настоящее время устройство прерывания является обязательным функциональным эдементом любой вьчислитедьной машины. С его помошью в ЦВМ реализуются такие функции, как обмен информацией с внешними устройствами, разграничение доступа и защита памяти, реакция на сигнады аппаратурного контродя, комплексирование нескольких ШЗМ и организация раздичных режимов их совместной работы, 20 Спедоветельно, от своевременного обнаружения ошибок в работе устройства прерывания зависит эффективность функционирования ЦВМ в цедом. Задача контроля работоспособности решается в предлагае мом устройстве ддя прерывания программ. При этом предлагаемое устройство имеет ряд преимушеств перед известными.Во-первых обнаруживается широкий класс ошибок, таких кек нарушение дисциплины обслуживания запросов (вместо выбора запроса в соответствии с приоритетом выбирается запрос противоположной четности): появление пакетов ошибок (одновременно выбирается две и бспьше 35 запросов на прерывание) , "отсутствие сигнала прерывания (в соответствии с приоритетом не выбирается ни один незамаскированный запрос).Во-вторых при достаточно высокоин достоверности контроля не требуется существенных дополнительных затрат аппаратуры, так как для организации контроля необходимо реализовать несложные логические функции. В-третьих контроль осуществляется оперативно, так как поиск ошибок производится параллельно с выполнением опе 50 рации прерывания.Исходя из этого, предлагаемое устройство может найти широкое применение в вычисдитедьной технике при проектировании систем прерывания ЦВМ,55Применение такого устройства при не. больших дополнительных затратах оборудования позволит повысить эффективность функционирования ЫВМ в целом за счет 12оперативного и достаточно достоверногоконтроля ее устройства прерывания.Формула изобрет,ения1. Устройство ддя прерывания программ, содержашее регистр прерываний, регистр маски, блок приоритета, шифратор, сумматор, регистр базового адресе, триггер, элемент И, первый элемент ИЛИ, причем вход регистра прерываний является первым входом устройства, а прямой и инверсный выходы регистра прерываний подключены соответственно к первым прямому и инверсному входам блока приоритете, вторые прямой и инверсные входы которого подключены соответственно к прямому и инверсному выходам регистра маски, вход которого является вторым входом устройства, выход отсутствия прерываний блока приоритета является первым выходом устройстве, при этом нечетные выходы блока приоритета подкдючены к первому входу шифратора, е. четные выходы блока приоритета соединены со вторым входом шифратора, выход которого подключен к первому входу сумматора, ко второму входу которого подкдючен выход регистра базового адреса, к третьему входу сумматора подключен элемент И, а выход сумматора является вторым выходом устройства, к первому входу элемента И подключен выход первого элемента ИЛИ, е второй вход элемента И соединен с выходом триггера, вход которого является третьим входом устройства, при этом вход регистра базового адресе является четвертым входом устройства, о т л и ч а ю ш е ес я тем, что, с цепью повышения достоверности работы, в него введены группа элементов ИЛИ, бпок предсказания прис- ритетов, первый и второй полусумматоры, второй, третий и четвертый элементы ИЛИ, причем инверсные выходы регистра прерываний и регистра масок соединены соответственно с первыми и вторыми входами элементов ИЛИ группы, четные выходы группы элементов ИЛИ соединены с четными входами бдока предсказания приоритета, а нечетные выходы группы элементов ИЛИ соединены с нечжными входами блока предсказании приоритета, примой выход блока предсказания приоритета соединен с первым входом первого пспусумматорв, второй вход которого соединен с выходом второго,Ужгород,уп,Пр ктиая 9 13 736 элемента ИЛИ, входы которого подключены к нечетным выходам блока приоритета, инверсный выход блока предсказаний приоритета подключен к первому ьходу второго полусумматора, второй 5 вход которого соединен с выходом третьего элемента ИЛИ, входы которого соединены с четными выходами блока приоритета, кроме того, выходы второго и третьего элементов ИЛИ подключены10 соответственно к первому и второму ьходам первого элемента ИЛИ, при этом выходы первого и-второго полусумматоров подключены к первому и второму входам четвертого элемента ИЛИ, выход которого является третьим выходом устройства.2. Устройство по п. 1, о т л и ч а ющ е е с я тем, что блок предсказания приоритета содержит группу элементов НЕ, группу элементов И, элемент НЕ и пятый элемент ИЛИ, причем первый вход пятого элемента ИЛИ соединен с выходом первого элемента НЕ группы, а остальные входы пятого элемента ИЛИ25 соединены с выходами элементов И группы, первые входы которых соединены соответственно с выходами элементов НЕ группы, кроме первого, входы элементовНЕ группы являются нечетными входамиблока предсказания приоритета, а четныевходы блока предсказания приоритетасоединены с вторыми ьходами элементовИ группы, при этом группа входов каждого последуюшего элемента И кромепервого соединена со всеми вторымивходами предыдуших элементов И группысо-гветственно а вхсд первого элементаИ группы яьпяется вторым входом блокапредсказания приоритета, выход пятогоэлемента И соединен с входом элементаНЕ и является прямым выходом блокапредсказания приоритета а вьход злэмента НЕ является инверсным выходомблока предсказания приоритета.Источники информации,принятые во внимание при экспертизе1. Лвторское свидетельство СССРЬ 350005, кл, 6 06 Р 15/46, 1970.2. Азторское свидетельство СССР368604, кл. 5-06 Р 9/18, 1970.3. Справочник по цифровой вычислительной технике под редакцией Б, Н. Малиновского, Киев, "Техника, 3 974,с,. 345-346 прототип). ЦНИИПЦ 3 аказ 2428/39Тираж 751 Подписное

Смотреть

Заявка

2566826, 05.01.1978

ПРЕДПРИЯТИЕ ПЯ В-8117

ТИМОШОК СЕРГЕЙ ВАСИЛЬЕВИЧ

МПК / Метки

МПК: G06F 9/48

Метки: прерывания, программ

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

Код ссылки

<a href="https://patents.su/7-736101-ustrojjstvo-dlya-preryvaniya-programm.html" target="_blank" rel="follow" title="База патентов СССР">Устройство для прерывания программ</a>

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