Организация приоритетных прерываний



Важность запросов прерывания различных источников, очевидно неодинакова. Технически несложно организовать реакцию центрального процессора на самый приоритетный запрос в случае, когда запросы от различных ПУ выставля­ются через схему логического ИЛИ на одну линию запроса прерывания (рис. 1.4.2).

При этом линия «Добро» на преры­вание, пропущенная через адаптер каждого ПУ, разрывается ключом ПУ, выдавшим запрос. Ответный сигнал процессора на запрос прерывания распространяется только до первого из одновременно запросивших прерывание адаптеров. Таким образом, это ближайшее к процессору устройство имеет высший приоритет и выставит на шину данных свой идентифицирующий код.

После начала обработки прерывания процессор автомати­чески переходит в режим «Запрещения прерывания». Если процессор приступил к обработке запроса от менее приоритетного ПУ2 (рис.1.4.3,а), даже более важный запрос - от ПУ2, пришедший позже, будет ожидать ее окончания. Такая система прерываний называется одноуровневой и обладает недостатком, заключающимся в задержке реакции на более приоритетное прерывание. Сделав дополнительные затраты на специальные аппаратные средства, можно обеспечить воз­можность каскадирования прерываний, т. е. «прерывание прерывания». Такая система называется многоуровневой (рис.1.4.3,б) и опирается на работу так называемого блока приоритетных прерываний (БПП). На рисунке 1.4.4 каждое из периферийных устройств связано с БПП индивидуальной линией запроса прерывания (так как число уровней прерывания ограничено, то на некоторых уровнях могут находиться несколько ПУ). Каждая из линий запроса подключена к соответст­вующему разряду регистра запросов прерываний, находяще­гося в БПП.

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


Дата добавления: 2015-12-20; просмотров: 72; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!