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

 

i i! 66GG5G

ОП ИСАНИ Е

ИЗОБРЕТЕНИЯ

К АВТОРСКОМУ СВИДЕТЕЛЬСТВУ

Сом Советских

Сониалнстинескнх

Реслублнн (61) Дополнительное к авт. свид-ву (22) Заявлено 03.01.77 (21) 2437574/18-24 с присоединением заявки ¹ (23) Приоритет (43) Опубликовано 30.04.79. Бюллетень ¹ 16 (45) Дата опубликования описания 30.04.79 (51) Я1. Кл.2

G 06F 9/18

Государственный комитет (53) УДК 681.326.34 (088.8) ло делам изобретений и открытий (72) Авторы изобретения

В. Х. Балаев и В. И. Евдокимов (71) Заявитель (54) УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ

ПPЕРЫВАНИЕМ ПРОГРАММ

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

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

Недостатком этих устройств является 25 большое число переключений программ, что приводит к значительному увеличению непроизводительных затрат машинного времени (1).

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

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

Основным недостатком указанного устройства являются значительные затраты

660050 времени на обработку прерываний, так как прерывание текущей программы происходит прп каждом поступлении запроса на программу более высокого приоритета, и при большом числе уровней приоритетов число прерываний программ достаточно велико.

Цель изобретения состоит в расширении функциональных возможностей устройства для сокращения непроизводительных затрат машинного Bpc«leiiH на обработку прерываний.

Поставленная цель достигается тем, что в устройство введены группа регистров вре«!eHII выполнения программы, группа регистров допустимого времени задержки начала выполнения программы, счетчик зремспп IIHTcpBaла дообслуживания, и два дополнительных элемента ИЛИ, причем вторая и третья группы выходов узла управЛС!!И!1 ПОДЕ.110 ICilbl COOTBCTCTBCHHO К ГР1 Ппе регистров времени выполнения программы и группе регистров допустимого времени задержки начала выполнения программы, группы выходов которых черсз соответственно первый и второй дополнительные элементы ИЛИ подключены соответственно к первым входам счетчика времени интервала дообслуживания и с«смы сравнения, выход счетчика времени соединен со вторым входом с !ет !пка времени интервала дообслуживания, выход которого подключен ко второму входу схемы сравнения, соединенной выходом со входом узла управления, выход первого элемента ИЛИ соединен со B«îäàìè сброса счетчика времени и схемы сравнения.

На чертеже представлсна блок-схема устройства, содержащего регистр 1 прерываний, узел 2 управления, группа регистров 3 времени выполнения программы, группа регистров 4 допустимого времени задержки начала выполнения программы, элементы ИЛИ 5 и б, счетчик 7 времени, счетчик 8 времени интервала дообслуживания, схема 9 сравнения, кодирующая матрица 10, элемент ИЛИ 11 и ЭВМ 12.

Регистр 1 прерываний предназначен для хранения кодов прерываний. При этом программе кахкдого из уровней приоритета соответствует свой код прерываний, записываемый в соответствующую ячейку регистра 1, Число ячеек регистра 1 равно числу уровней приоритета. Входы регистра 1 подключены к ЭВМ 12, причем число входов равно числу уровней приоритета. Узел управления 2 предназначен для выдачи сигналов считывания на регистры 3 и 4 сигналов прерывания в кодирующую матрицу 10 и сигналов сброса, поступающих чезез элемент ИЛИ 11, в счетчик времени 7 и схему сравнения 9.

Группа регистров 3 предназначена для хранения всличин полных длительностей выполнения программ. Число входов груп5

65 пы регистров 3 равно !ислу уровней приоритета. Группа рсг1!стров 4 предназначена для «ранения вслп illil максимально допустимого времени задержки на:ала запуска программ каждого:!з уровней приоритетов. ГруHllbl рсгпстрси 3 и 4 закреплены за программами различи! !«уровней приоритета.

Счетчик 7 времени предназначен для формирования и выдачи кодов значений текущего врсмс1П! в счетчик 8, который фиксирует время, необходимое для окончания выполнения текущей программы путем вычитания из величины полной длительности выпол1!сппя текущей программы значения време!ш, затраченного HB сс выполпеппс li ъ1оыспту пост плспия заllpocB на программу высшего приоритета. Выход счетчика 8 подключен к с«еме сравнения 9, предназначенной для формирования сигнала прерывания путем сравнения величин а!а ксимально доп, стимого врем пи задер;кки включения программы высшего приоритета и времени, необходимого для окончания выполпепи1! текущей програ«мы. С«сма 9 сравнения задерживает сигнал прерывания в случае, если допустимое время задержки превышает необходимое для завершеHHII программы время и выдаст сигнал прерывания в протии1ом случае.

Кодиру!о!ца1! матрица 10 предназначена для формирования кодов прерывания в случае выявления с«смой 9 сравнения нсоб«оди мости прсры ва пня текущей программы.

Устройство работает следующим обраЗОМ.

Сигналы прерывания, инициируемые запросами па включение программ высшего приоритета, поступают от ЭВМ 12 в регистр 1. При поступлении сигнала прерывания в соответствующую ячейку регистра

1 хранящийся в ней код прерывания считывается на вход узла 2, соответствующий данному уровшо приоритета. При поступлении кода прерывания из регистра 1 на узел 2 с выходов последнего выдается сигнал считывания в соответствующий регистр

3, хранящий вели гану полной длительности выполнения текущей программы, и сигнал считывания — в регистр 4, хранящий величину максимально допустимого времени задержки включения программы высшего приоритета, инициировавшей данный сигнал прерывания. Значение величины полной длительности выполнения текущей программы поступает из регистра 3 через элемент ИЛИ 5 на вход счетчика 8. На другой вход счетчика 8 с выхода счетчика времени 7, запускаемого ЭВМ 12 в момент включения программы в работу, постоянно поступают значения времени, затраченного на выполнение текущей программы, В счетчике 8 фиксируется значение интервала времени, необходимого для окон660050 чания выполнения текущей программы.

Код значения этой величины поступает на вход схемы сравнения 9, на другой вход которой из регистра 4 через элемент ИЛИ

6 поступает значение величины максимально допустимого времени задержки включения программы высшего приоритета, инициировавшей сигнал прерывания.

Схема 9 сравнения, получив оба значения величин времени, определяет необходимость прерывания текущей программы.

С выхода схемы 9 сигнал поступает в узел

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

11 в счетчик 7 времени и схему 9 сравнения.

Матрица 10 по сигналу прерывания из узла 2 формирует код прерывания, который поступает в ЭВМ 12. ЭВМ 12 осуществляет переход к выполнению программы высшего приоритета, инициировавшей сигнал прерывания.

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

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

Устройство для управления прерыванием программ, содержащее схему сравнения, регистр прерывания, соединенный входами с запросной группой входов устройства, а выходамп — с группой входов узла управления, первая группа выходов которого

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

10 устройства, о т л и ч а ю щ е е с я тем, что, с целью сокращения непроизводительных затрат времени на обработку прерываний, в устройство введены группа регистров времени выполнения программы, группа реги15 стров допустимого времени задержки начала выполнения программы, счетчик времени интервала дообслуживания, и два дополнительных элемента ИЛИ, причем вторая п третья группы выходов узла управ20 леппя подключены соответственно к группе регистров времени выполнения программы и группе регистров допустимого времени задержки начала выполнения программы, группы выходов которых через соот25 ветственно первый и второй дополнительные элемcíòû ИЛИ подключены соответственно к первым входам счетчика времени интервала дообслуживания и схемы сравнения, выход счетчика времени соединен

30 со вторым входом счетчика времени интервала дообслуживания, выход которого подключен ко второму входу схемы сравнения, соединенной выходом со входом узла управления, выход первого элемента ИЛИ

35 соединен со входами сброса счетчика времсни и схемы сравнения.

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

40 1. Дроздов Е. А. и Пятибратов А. П. Основы построения и функционирования вычислительных систем. М., Энергия, 1973.

2. Патент США № 3829839. Н., кл. 340 — 172.5 от 1974 r.

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

 

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

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

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

Изобретение относится к вычислительной технике

Изобретение относится к системе и способу для обеспечения возможности исполнения кода режима управления системой (SMM) во время защищенной работы в микропроцессорной системе

Изобретение относится к области вычислительной техники, в частности к системам прерывания ЭВМ

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

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

Изобретение относится к вычислительной технике
Наверх