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

 

Изобретение относится к цифровой вычислительной технике, а точнее к устройствам обработки прерываний в мультипрограммных ЦВМ, и предназначено для использования главным образом в специализированных микропроцессорных системах. Целью изобретения является расширение функциональных возможностей устройства за счет своевременного снижения уровня прерывания выполняемой подпрограммы в процессе динамического управления прерываниями. Устройство многоуровневого прерывания содержит регистр запросов, блок элементов И, входной и выходной коммутаторы, схему сравнения , сче.тчик, дешифратор, два элемента И, триггеры запрета прерывания, прерывания и синхронизации, постоянный запоминающий блок и первый коммутатор . Новым является то, что устройство содерткит группу реверсивных счетчиков состояний и второй коммутатор , что позволяет осуш;ествлять эффективное динамическое управление процессом прерываний путем варьирования уровня прерывания обслуживаемой подпрограммына определенных этапах ее выполнения. 2 ил. Ю (Л

СОЮЗ СОВЕТСНИХ

СОЦИАЛИСТИЧЕСНИХ

РЕСПУБЛИН (51)4 G 06 F 9/46

ОПИСАНИЕ ИЗОБРЕТЕНИЯ

К А ВТОРСНОМ,Ф СВИДЕТЕЛЬСТВУ. д j

ГОСУДАРСТВЕННЫЙ НОМИТЕТ СССР

ПО ДЕЛАМ ИЗОБРЕТЕНИЙ И ОТНРЫТИЙ (21) 3864654/24-?4 (22) 04,03,85 (46) 30.01.87. Бюл, й- 4 (71) Харьковский авиационный институт им, Н, Е. Жуковского (72) Ю, И. Ялинич, В, Ю. Ларченко, К. К, Фурманов и М. Ф. Холодный (53) 681.325(088,8) (56) Авторское свидетельство СССР

11 - 1104516, кл, G 06 F 9/46, 1983.

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

N 1174926, кл. 0 06 F 9/46, 1984. (54) УСТРОЙСТВО МНОГОУРОВНЕВОГО ПРЕРЫВАНИЯ (57) Изобретение относится к цифровой вычислительной технике, а точнее к устройствам обработки прерываний в мультипрограммных ЦВМ, и предназначено для использования главным образом в специализированных микропроцессорных системах. Целью изобрете„.SU 1 87158 А1 ния является расширение функциональных возможностей устройства за счет своевременного снижения уровня прерывания выполняемой подпрограммы в процессе динамического управления прерываниями, Устройство многоуровневого прерывания содержит регистр запросов, блок элементов И, входной и выходной коммутаторы, схему сравнения, счетчик, дешифратор, два элемента И, триггеры запрета прерывания, прерывания и синхронизации, постоянный запоминающий блок и первый коммутатор. Новым является то, что устройство содержит группу реверсивных счетчиков состояний и второй коммутатор, что позволяет осуществлять эффективное динамическое управление процессом прерываний путем варьирования уровня прерывания обслуживаемой подпрограммы.на определенных этапах ее выполнения. 2 ил, ! 128

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

7158 и при наличии запросов на выходе регистра 1 формируется код приоритетности, соответствующий номеру приоритетного запроса, По переднему фронту очередного тактового импульса уста— навливается триггер 18, что вызывает установку триггера 20 и выдачу по выходу 21 сигнала прерывания, который устанавливает. триггер 19 запрета

10 прерывания, запрещая временно (до установки нового порога прерывания на входе 12 схемы сравнения) формирование последующих сигналов прерывания и изменение состояния регистра 1.

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

25 сигнала выдачи кода приоритетности, При этом код приоритетности через блок элементов И 3 поступает по выходу 4 и используется цля перехода к соответствующей прерывающей подпрограмме, а триггер 20 сбрасывается, снимая сигнал прерывания с выхода 21 устройства.

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

З5 продолжению выполнения прерванной программы, а затем с помощьк команды вывода посылает на вход 14 устройства импульс отрицательной полярности, В предлагаемом устройстве входы

4ц 14, 15, 22 и 25 соединены с соответствующими выходами системного дешифратора ввода-вывода и для формирования на них управляющих импульсов отрицательной полярности и в прерывающих подпрограммах в требуемых местах помещаются соответствующие команды.

Команда, обеспечивающая формирование импульса на входе 14 устройства, помещается в прерывающих подпрограммах после каманд выполняющих сохранение

1 в стеке оперативного запоминающего устройства (ОЗУ). всей необходимой информации, Команда, по которой формируется импульс на входе 22 устройст55 своевременного снижения уровня прерывания выполняемой подпрограммы в процессе динамического управления прерываниями.

На фиг. 1 приведена структурная схема предлагаемого устройствами на фиг, 2 — структуры коммутаторов и группы реверсивных счетчиков и их соединение, Устройство содержит регистр 1 запросов, вход 2 запросов устройства, блок элементов И 3, кодовые выходы 4 устройства, вход 5 выдачи кода приоритетности устройства, элемент И 6, вход 7 тактовых импульсов устройства, постоянный запоминающий блок 8, входной коммутатор 9, группу реверсивных счетчиков 10 состояний, выходной коммутатор ll схему 12 сравнения, счетчик 13, вход 14 прерывания устройст— ва, вход 15 конца обслуживания устройства, дешифратор 16, элемент И 17, триггер 18 синхронизации, триггер 19 запрета прерывания, триггер 20 прерывания, выход 21 прерывания устройства, вход 22 повьппения уровня прерывания устройства, коммутаторы 23 и

24, вход 25 снижения уровня прерывания устройства.

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

Исходное состояние устройства характеризуется тем, что регистр 1, триггеры 18-20 и счетчик 13 находятся в нулевом состоянии, состояние счетчиков 10 группы и входа 2 произвольное на входах 5 и 7 устройства и на его выходах 4 и 21 сигналы отсутствуют и единичные уровни сигналов на входах 14, 15, 22 и 25 и выходе триггера 19 (являющемся инверсным выходом).

Работа устройства начинается с по дачи на его вход 7 тактовых импульсов. С приходом тактового импульса на вход 7 устройства разрешается прием запросов в регистр 1 по входу 2 ва, помещается в тех местах каждой из прерывающих подпрограмм, где необходимо повышение уровня прерывания подпрограммы, а команда, обеспечива1287158 ющая формирование импульса на входе

25 устройства, помещается в тех местах каждой из прерывающих подпрограмм, где рационально снизить уровень прерывания подпрограммы, Команда, по которой формируется импульс на входе 15 устройства, помещается в конце прерывающих подпрограмм после команд, выполняющих прерывание, восстановление прерванного состояния процессора, Следует отметить., что только тактовые импульсы на входе 7 устройства следуют периодично. Запросы от абонентов на входы 2 устройства поступают в произвольные моменты времени в виде единичных потенциалов и после их обслуживания снимаются абонентами. Управляющие импульсы на входе 5 устройства формируются при входах в прерывающие подпрограммы и не следуют периодично, так же, как и управляющие импульсы на входах 14, 15, 22 и 25 устройства, формируемые при выполнении соответствующих команд вывода в прерывающих подпрограммах, При распределении типбв приоритетных запросов по уровням прерывания достаточно задать константы, фиксирующие границы уровней прерывания, При этом запросы по уровню прерывания будут разбиваться на группы.

Алгоритм программирования блока 8 заключается в следующем, В ячейку с нулевым адресом запись не произво- 35 дится (фиксируется нуль), а в ячейки с адресами от 1 до и записывает1 ся 1, в ячейки с адресами от n„+1 до п 2 записывается 2 (т.е. 10 в двоичной системе счисления), в ячейки 40 с адресами от п +1 до п записывает2 3 ся 3 (11 в двоичной системе), в ячейки с адресами от n„,, +1 до n„ запи- сывается число 1, представленное в двоичной системе, в ячейки с адреса в 45 ми от п,+1 до п записывается число m представленное в двоичной системе, При подаче на адресный вход блока

8 какого-либо кода приоритетности на его выходе будет формироваться соответствующий код уровня прерывания.

В исходном состоянии устройства счетчик 13 находится в нулевом состоянии, состояние счетчиков 10 группы произвольное, на выходах 14, 15, 22 и 25 устройства сигналы отсутствуют (единичные уровни сигналов на этих входах). При этом единичные уровни сигналов с входов 14 z> 15 поступают соответственно на первый ини формационный 9 и второй информации онный 9 входы коммутатора 9, отпирая все его элементы И по их первым и вторым входам. При нулевом состоянии счетчика 13 на нулевом выходе дешифратора 16 присутствует единичный сигнал. Этот сигнал поступает на

Ъ! управляющий вход 9, коммутатора 9 и далее на третий вход его первого элемента И, Б результате на выходе первого элемента И коммутатора 9 устанавливается единичный сигнал, поступаюший на управляющий вход записи первого счетчика 10 группы и разрешающий запись по его информационным входам кода уровня прерывания, поступающего с выхода блока 8 одновременно на все счетчики 10 группы. На всех выходах дешифратора 16, кроме нулевого присутствуют нулевые сигналы, в результате чего на управляющих входах записи всех счетчиков 10 груп— пы, кроме первого счетчика, будут нулевые, запрещающие запись сигналы, На всех управляющих входах коммутаторов

11, 2" и 24, как и на их выходах присутствуют нулевые сигналы.

При возникновении запросов прерываний и переходе к их обработке, прерывающая программа с помощью команды вывода посылает на вход 14 устройства импульс отрицательной полярности, который запирает по первому информационному входу 9" все элементы И ком-! мутатора 9 (при. этом код уровня прерывания, поступающий с выходов блока

8, фиксируется в первом счетчике 10 группы и одновременно по переднему фронту), обеспечивает увеличение на единицу показания счетчика 13 и переключение дешифратора !6, Восле чего единичный сигнал устанавливается на первом выходе дешифратора 16, Этот сигнал поступает на первый вход

1, коммутатора 11 и подключает по

1У и и информационным входам 11„-11, выходы первого счетчика к входам схемы 12 сравнения. По заднему фронту импульса на входе 14 происходит сброс триггера 19 и на его выходе (используется инверсный выход) устанавливается единичный сигнал, разрешающий работу элементов И 6 и И 17, т,е. разрешающий прием запросов прерываний в устройство и выработку сигнала прерыва! 287158 т(((я 1(а выходе 2 1 B с(тугае, pcJIH 11()c— тупит запрос, уровень прерывания которого превысит уровень прерывания, записанный в первом счетчике 10 группы. 5

Каждая прерывающая подпрограмма с помощью команд вывода, помещенных в соответствующих ее местах, может повышать свой уровень прерывания, а затем снижать его, что обеспечивает 1О эффективное динамическое управление процессом прерываний ° Если по команде вывода управляющий импульс отрицательной полярности подается на вход 22 устройства, то обеспечивается повышение на единицу уровня прерывания обслуживаемой подпрограммы.

Осуществляется это с помощью коммутатора 23, передающего (с инверсией) управляющий импульс на суммирующий 20 вход того счетчика 10 группь(, номер которого равен номеру выхода дешифратора 16, на котором присутствует единичный сигнал, Если единичный сигнал действует на первом выходе дешифратора 16, то от поступает на первый j управляющий вход 23 коммутатора 23, 1 разрешая передачу управляющего импульса через первый элемент И коммутатора 23 на суммирующий вход первого счетчика 10 группы, в результате чего содержимое этого счетчика увеличивается на единицу. Если по команде вывода управляющий импульс отрицательной полярности подается на 35 вход 25 устройства, то обеспечивается снижение на единицу уровня преры-. вания обслуживаемой подпрограммы.

Производится это с помощью коммутатора 24, передающего (с инверсией) управляющий импульс на вычитающий нход того счетчика 10 группы, номер которого равен номеру выхода дешифратора 16, на котором присутствует единичный сигнал, Если единичный сиг- 45 нал действует на первом выходе дешифратора 16, то он поступает на пер— вый управляющий вход 24 коммутато( ра 24, разрешая передачу управляющего импульса через первый элемент И э0 коммутатора 24 на вычитающий вход первого счетчика, н результате чего

его содержимое уменьшается на единицу.

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

9, исключая возможность искажения информации н счетчттках 10 группы во время переходных процессов, и одновременно (тто переднему фронту) обеспечивает уменьшение ыа единицу показания счетчика 13 и соответствующее переключение дешифратора 16, подключающего через коммутатор !l на входы схемы 12 сравнения выходы того счетчика группы 10, в котором хранится код уровня прерывания последнего из прерванных состояний (основ((ой программе соответствует нулевой код уровня прерывания).

Если во время выполнения прерывающей подпрограммы поступает запрос, уровень прерывания которого превышает уровень прерывания обслуживания подпрограммы, то на выходе 21 формируется сигнал прерывания. После об— наружения сигнала прерывания на вход 5 устройства поступает импульсный сигнал выдачи кода приоритетности, после чего на вход 14 поступает отрицательный импульс, который запирает коммутатор 9, фиксируя код уровня прерывания, поступающий с выходов блока 8 в соответствующем счетчике 10 группы, номер которого на единицу больше номера выхода дешифратора 16, на котором действует единичный сигнал. Если единичный сигнал присутствует на первом выходе дешифратора 16 связанном с вторым управУ о" ляющим входом 9 коммутатора 9, фиксация кода уровня прерывания, поступающего с выходов блока 8, произой— дет во втором счетчике 10 группы и одновременно выполняется процесс переключения дешифратора 16, после чего единичный сигнал установится на втором выходе дешифратора 16. Этот сигнал поступает на второй управляюЧ щий вход 11, коммутатора ll и подключает по информационным входам и И

ll — ll выходы второго счетчика по

1 к входам схемы 12 сравнения. Кроме того единица с второго выхода дешифратора 16, поступая на вторые управляющие входы 23 и 24 коммутаторов 1 Ч

23 и 24, подготавливают к работе вторые элементы И этих коммутаторов, связанные с суммирующим и вычитающим входами второго счетчика. Наряду с этим единичный сигнал с второго вы— хода дешифратора 16, поступая на треЧ тий управляющий вхоп >, v,î.(1(у (;т т(п .1

12871

9, подготавливает к работе третий элемент 11 коммутатора 9, выход которого связан с управляющим входом разрешения записи третьего счетчика 10 группы, Теперь же запись (после окон-чания:импульса на выходе 14) кода уровня прерывания с выходов блока 8 будет производиться в третий счетчик

10 группы, а импульсы, поступающие на входы 22 и 25, будут передаваться коммутаторами 23 и 24 соответственно на суммирующий и вычитающий входы второго счетчика 10 группы. После завершения выполнения прерывающей подпрограммы восстанавливается последнее из прерванных состояний процес— сора и с помощью команды вывода на вход 15 устройства посылается отрицательный импульс, который уменьшает на единицу показание счетчика 13, в результате чего с второго выхода дешифратора 16 снимается единичный сигнал, а единица устанавливается на первом выходе дешифратора 16, что обеспечивает подключение через комму25 татор 11 на вход схемы 12 сравнения выходов первого счетчика, в котором хранится код уровня прерывания прерванной подпрограммы (каким он был в момент прерывания обслуживания подпрограммы), Теперь уже к работе подготовлены первые элементы И коммутаторов 23 и 24, связанные с первым счетчиком, а запись кода уровня прерывания с выходов блока 8 будет про- 35 изводиться во второй счетчик 10 группы. Процесс обслуживания прерванной ранее подпрограммы продолжается и т.д.

Следует отметить, что управляющие импульсы, поступающие.на входы 14, 15, 22 и 24 запирают элемент И 17 и тем самым исключают возможность формирования ложного сигнала прерывания под воздействием вызываемых ими переходных процессов (при поступлении 45 управляющего импульса на вход 14 элемент И 17 заперт нулевым сигналом с выхода триггера 19). Формирование ложного сигнала прерывания под воздействием гонок исключается с помощью синхронизашии приема запросов в регистр 1 и формирования сигнала прерывания на выходe триггера 18, Формула изобретения 55

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

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

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

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

1287158

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

Редактор Ю, Середа Техред Л.Олейник

Корректор Л, Пилипенко

Заказ 7718/52 Тираж 694

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

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

Подписное

Производственно-полиграфическое предприятие, r, Ужгород, ул. Проектная, 4

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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