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

 

О П И С А Н И Е < 1оо11оз

Союз Советскик

Социалистических

Республик

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ (6I ) Дополнительное к авт. свид-ву— (22) Заявлено 27.10.81 (21)3350752/18-24 с присоединениеет заявки №вЂ” (23) Приоритет (51)M. Кл.

Q 06 F 9/46

Гееулврстееива комитет

Опубликовано 28.02.83. Бюллетень № 8 (53) УДК681-325 (088.8) йв делен изобретений и открытий

Дата опубликования описания 28.02. ==, . ., -о

В, В. Мельшиян, В. Ф. Федорков, А. И. фф:кий, g,, Â. Нйкити т, В. В. Ильинский и И Q. ßÿóùðâ с

У

; Ъ.

/ т (72) Авторы изобретения (71) Заявитель (54) УСТРОЙСТВО ДЛЯ ПРЕРЫВАНИЯ ПРОГРАММ

Устройство относится к вычислительной технике и может быть использовано в системах прерывания цифровых вычислительных машин.

Известно устройство для прерывания программ, содержащее регистр прерываний, регистр масок, блок приоритета, элементы ИЛИ, шифратор, блок предсказания приоритетов, полусуммвторы, триггер, элемент И, сумматор и регистр.

Недостатком устройства является низкая достоверность выходной информации.

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

Недостатком известного устройства ,являетсч низкая достоверность выходной информации.

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

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

ИЛИ, регистр разрешенных прерываний, 103 4

1I0

3 1001 регистр адреса и блок выработки обоб- щенного сигнала прерывания, причем пер- вые входы первого и второго элементов

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

И второй и третьей групп и к первым входам элементов И пятой и шестой

1 ! групп, выходы первого и второго элементов И подключены соответственно к входу установки в нуль и к входу установки в единицу второго триггера, прямой и инверсный выходы которого соединены соответственно с третьими входами эле " ментов И третьей группы и с первыми входами элементов И седьмой группы, вторые входы которой подключены к входам сигналов прерывания ycãðîéñòââ, выходы третьей и седьмой групп элементов И соединены соответственно с первыми и вторыми входами соответствующих элементов ИЛИ группы, выходы которой подключены к входам установки в единицу соответствующих разрядов регистра прерываний, выходы второй группы элементов И подключены к входам установки в нуль соответствующих разрядов.регистра прерываний, выходы первой группы элементов И соединены с информационными входами регистра разрешенных прерываний, выходы регис тра разрешенных прерываний и регистра маски соединены с вторыми входами элементов

И соответственно пятой и шестой групп, выходы пятой и шестой групп элементов

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

Кроме того, блок выработки обобщенного сигнала прерывания содержит триггер, элемент И, элемент И-НЕ, элемент

И

56

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

На чертеже представлена функциональная схема устройства для прерывания программ.

Устройство содержит группу входов 1 прерываний устройства, схему 2 сравнения, регистр 3 адреса, триггер 4, группы элементов И 5-11, группу элементов ИЛИ

12, элементы И 13 и 14, триггер 15, регистр 16 маски, регистр 17 прерыва- ний, регистр 18 разрешенных прерываний. элемент ИЛИ 19, блок 20 выработки обобщенного сигнала прерывания, включающий в себя элемент И 21, инвертор 22, элемент ИЛИ 23, триггер 24, генератор

25 тактовых импульсов, элемент И-НЕ

26, счетчик 27, выход 28 прерывания устройства, группу информационных входов 29 устройства, тактовый вход 30 устройства, информационные выходы 31 ус тро йс тва.

Устройство работает в двух режимах, программно устанавливаемых цифровой вычислительной машиной (UBM): в основном режиме и режиме контроля.

В основном режиме ожидания внешних запросов на прерывание UBM с помощью схемы 2, триггера 4, группы элементов

И 5 и регистра 3 подключает устройство к каналу связи и устанавливает режим

Неконтроль". Для этого по командам про граммы-супервизора(программы диспетчера) UBM из группы входов 29, связанных с выходной информационной магистралью UBM, в устройство поступает математический адрес устройства, который сравнивается в схеме 2 сравнения с физическим адресом устройства, жестко прошитым в регистре 3 адреса и факт сравнения с выхода схемы 2 сравнения посту1 03. 6 ки обобщенного сигнала прерывания.

В отсутствие. прерываний (исходное состо яние) сигнал уровня логического нуля с выхода элемента ИЛИ 19 через тре- тий вход блока 20, инвертор 22, элемент ИЛИ 23 жестко устанавливает триггер 24 в единичное состояние по входу установки в единицу. Одновременно этот сигнал с выхода элемента ИЛИ

10 через третий вход узла 20 вырабатывает вместе с сигналом логической единицы с выхода триггера 24, на выходе элемента И-HE 26 сигнал уровня логической единицы, который жестко обнуляег по выходу установки в нуль счетчик 27 и блокирует счет импульсов генератора 25, поступающих на тактовый вход счетчика 27. При появлении на выходе первого элемента ИЛИ 19 сигнала уровня логической единицы, свидетельствующего о наличии разрешенного маской прерывания (прерываний), этот си нал через третий вход блока 20, инвертор 22, элемент ИЛИ 23 снимает сит нал высокого уровня с вьхода установки в нуль триггера 24. При этом грит гер 24 осгаегся в единичном состоянии до прихода управляющего сигнала положительной полярности на его вход усгановки в нуль. Одновременно сигнал уровня логической единицы с выхода элемента ИЛИ 19 через третий вход блока 20, совместно с сигналом уровня логической единицы с выхода триггера 24 вырабагываег на выходе элемента И-НЕ 26 сит нал уровня логического нуля, который разблокировываег счетчик 27. Первый импульс с генерагора 25, поступающий на счетный вход счетчика 27, выработает не первом выходе счетчика 27 импульс, который выдается в UBM в качестве обобщенного сигнала прерывания. Следующий импульс с генератора

25 вырабатывает импульсный сигнал на втором выходе счетчика 27, который поступаег на вход установки в нуль rpurt гера 24 и обнуляет его. Уровень логического нуля с выхода триггера 24 через элемент И-НЕ 26 вновь обнуляет счетчик 27. Получив обобщенный сигнал прерывания, UBN подключает устройство к каналу связи через блок 1, после чего управляимцим сигналом с выхода группы элементов И 5, поступакхцим на так-. товый вход регистра 18, переписывает с выходов группы элементов И 6 код разрешенных прерываний в регистр 18.

Затем UBN через группы элементов И

10 и 11 по группе выходов 31 устрой5 1001 пает на информационный вход триггера

4, где фиксируется управляющим сигналом

UBM, поступающим на тактовый вход триггера 4 в качестве сигнала сопровождения математического адреса. Выход триггера S

4 соединен с иходами группы элементов

И 5. и в случае сравнения адресов, высокий уровень логической единицы с выхода триггера 4 разрешает прохождение в устройство через группу элементов И 5 управляющих сигналов UBN, поступакецих .с ихода 30. После этого программа-супервизор UBM устанавливает триггер

15 в состояние нуля, а в регистр 16 засылается код маски для поразрядной конь-1 юкгивной фильтрации запросов на прерыва ние с учетом их приоритетов. Программное обнуление триггера 14 осушесгвляется через элемент И 13, сигнал с выхода кото рого поступает на вход установки в нуль .гунтера 1 5.

Код в регистр 16 из UBM посгупает также через группу входов 29 и фиксируется сопровождающим управляющим UBM> посту- gg паюшимс выходов группы элеменгов И 5, на тактовый вход регистра маски 16. Триггер 15, установленный в нуль, высоким уровнем с инверсного выхода разрешает прохождение через группу элементов

И 8, группу элементов ИЛИ 12 на входы поразрядной установки в единицу регистра 17 асинхронных сигналов-запросов на прерывание от внешних устройств, других UBM и г. д., поступающих из группы входов 1. При этом уровень ло3$ гического нуля с прямого выхода грит гера 15 блокирует прохождение сигналов через группу элементов И 9, сигналы поразрядного обнуления регистра 17

40 поступают через группу элементов И 7.

Каждому внешнему абоненту присвоен уровень приоритета и отведен свой канал (разряд в регистре 17 пРеРываний).

Сигналы-запросы на прерывание фикси4S руюгся в регистре 17 прерываний и поразрядно логически умножаются на код регистра 16 На элементах И 6, где выявляются разрешенные маской прерывания, которые с выходов элементов И

6 поступают на информационные иходы

50 регистра 18, а также на иходы элемента ИЛИ 19. Нв выходе элемента ИЛИ

19 появляегся сигнал логической единицы, когда хотя бы в одном разряде единица в регистре прерываний 1 7 совпала с единицей соответствующего разряда регистра 1 6 маски, Эгог сигнал поступает на третий вход блока 20 выработ7 100110 ства считывает информацию соответственно с выходов регистра 18 разрешенных прерываний и регистра 16 маски. После этого программа-супервизор ИВМ производит анализ по приоритету содержимого регистра 18 разрешенных прерываний и определяет запросившего ее абонента старшего по приоритету в случае наличия более одного разрешенного запроса в регистре 18. Затем программа- tO супервизор обнуляет разряд регистра 17 прерываний, соответствующий запросившему абоненту, а также обнуляет все разряды регистра 16 маски более низких приоритетов, но открывает разряды !5 регистра маски более старших по приоритету относительно запросившего. При этом сигнал уровня логического нуля с выхода элемента ИЛИ 19, поступающий на третий вход блока 20, устанавливает 26 блок 20 в исходное со:тояние, т. е. счетчик 27 через элемент И-HE 26 обнуляется и блокируется, а триггер 24 через инвертор 22 и второй элемент

ИЛИ 23 устанавливается в единичное ?S состояние. Затем команда программысупервизора для увеличения надежности через первый и второй входы блока 20; связанные Соответственно с группой входов 29, через элемент И 21, элемент

ИЛИ 23 подтверждает установку триггера 24 в единичное состояние. Устройство готово к приему нового сигнала запроса более высокого по приоритету относительно запросившего. После этого

UBN уходит на программу обработки запросившего ее абонента, Регистр 18 служит для промежуточного запоминания разрешающих маской запросов, поэтому во время считывания IIBN его состояние

40 не изменяется. Введение регистра исключает потерю повторных заявок, так как в начале программы обработки разрешенного маской залроса, код с выхода группы элементов И 6 переписывается в ре4S гистр 18, а разрешенный маской разряд регистра 17 программно гасится и регистр 17 по этому разрядУ может принимать новые заявки.

В режиме Контроль» LIBN программно устанавливает триггер 15 в единичное состояние через элемент И 14. Тогда уровень логического нуля с инверсного выхода триггера 15 запрещает прохождение в устройство через группу элементов

И 8 внешних сигналов прерывания, поступающих по группе входов 1. Высокий

- ровень логической единицы с прямого выхода триггера 15 поступает на входы группы элементов И 9 и разрешает стробирование информации из IIBN, поступающей из группы- входов 29. Сигналы с выходов элементов И 9 через группу элементов ИЛИ 12 поступают на соответствующие входы установки в единицу разрядов регистра 17, имитируя сигналы внешних заявок на .прерывание.

В режиме Контроль" UBN программно заносит сигналы, имитирующие внешние прерывания в регистр 17 прерываний, обрабатывает их с использованием регистра 16 маски по вышеописанному алгоритму и контролирует таким образом исправность трактов прохождения запросов на прерывание, а также осуществляет контроль функционирования схемы блока 20 выработки обобщенного сигнала прерывания.

Применение предлагаемого изобретениФ позволяет повышать достоверность функционирования устройства.

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

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

1$

2S

3$

И четвертной группы подключены соответственно к второму входу блока Bbfp8607» ки обобщенного сигнала прерывания, тактовому входу регистра маски, гактовому вх оду регистра разрешенных прерываний, к вторым иходам первого и второго элеэлементов И, к вторым входам элементов И второй и третьей групп и к первым входам элементов И пятой и шестой групп, выходы первого и второго элементов И подключены соответственно к иходу установки в нуль и к иходу установки в единицу второго триггера, прямой и инверсный выходы которого соединены соответственно с третьими входами элементов И третьей группы и с первыми входами элементов И седьмой группы, вторые входы которой подключены к входам сигналов прерывания устройства, выходы элеменгов И третьей и седьмой групп соединены соогветственно с первыми и вторыми входами соответствующих элементов ИЛИ группы, выходы которой подключены к входам установки в единицу соответствукяцих разрядов регистра прерываний, выходы элементов И второй группы подключены к входам установки в нуль соответсгвуюшик разрядов регистра прерываний, выходы элементов И пер вой группы соединены с информационными входами регистра разрешенных прерываний, выходы регистра разрешенных прерываний и регистра маски соединены с вторыми входами элементов И соответ с"гвенно пятой и шестой групп, выходы элементов И пятой и шестой групп подключены к информационным выходам yes

01103 10 ройства, выход элемента ИЛИ соединен с третънмвходом блока выработки обобшенного сигнала прерывания, выход которого подключен к выходу прерывания устро йс тва.

2. Устройство по п. 1, о т л и ч а— ю ш е е с я тем, гго блок выработки„ обобщенного сигнала прерывания содержит триггер, элемент И, элемент И-НЕ, элемент ИЛИ, инвертор, генератор тактовых импульсов и счетчик, причем первый и второй входы элемента И подключены соответственно к первому и второму входам блока, вход инвертора ипервый вход элемента И-НЕ обьединены и подключены к третьему входу блока, выходы инвергора и элемента И соединены соответственно с первым и вторым входами элемента ИЛИ, выход которого подключен к иходу установки в единицу триггера, выход триггера соединен с вторым иходом элемента И-НЕ, выход которого соединен с входом установки в нуль счетчика, выход генератора соединен со счетным входом счетчика, первый и второй выходы которого подключены соответственно к выходу блока и к входу установки в нуль триггера.

Источники информации, принятые во внимание при экспертизе

1. Авторское свидетельство СССР

No 736101, кл G 06 Р 9/46, 1980.

2. Авторское свидегельство СССР

N 744575, кл. Q 06 F 9/46, 1980 (прототип) .

1001103

Заказ 1397/56

Тираж 704 Подписное

ВНИИПИ Государственного комитета СССР по делам изобретений и открытий

113035, Москва, Ж-35, Раушская наб., д. 4/5

Филиал ППП Патент, г. Ужгород, ул. Проектная, 4

Составителв М. Кудряшев

Редактор Н. Стаппппина Техред >Лоштура Корректор O. Билак

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

 

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

Изобретение относится к области вычислительной техники и автоматического контроля и может быть использовано в устройствах прерывания программ, управления потоками данных и формирования исполнительного адреса банков данных в логических процессорах
Наверх