ВУЗ:
Составители:
Э=
вПОз
ПО
tttt
t
+++
р
.
3.3.2. Виды прерываний микропроцессора
Существуют два основных вида прерывания: программное прерывание и аппаратное
прерывание.
Программное прерывание реализуется введением специальных команд прерывания в
систему команд процессора. Введение таких специальных команд позволяет создавать
гибкие и мощные программные средства (например, операционные системы).
Аппаратные прерывания могут инициироваться как операционными блоками
микропроцессора, так и устройствами внешними по отношению к нему. Аппаратные
прерывания подразделяются на маскируемые прерывания и немаскируемые прерывания.
Маскируемые прерывания реализуется только при условии разрешения прерывания.
Процессор реагирует на запросы маскируемых прерываний по линии INT, если установлен
внутренний триггер разрешения прерываний INTE, называемой также маской. На рис.3.3
приведена функциональная внутренняя схема прерываний.
Состояние триггера разрешения прерывания INTE идентифицируется выходным
сигналом разрешения прерывания с такой же мнемоникой INTE. Если INTE=0, прерывания
запрещены (замаскированы) и процессор не реагирует на сигнал INT=1. С помощью команд
разрешения EI и запрещения DI прерываний можно программно управлять состоянием
триггера INTE, и пользователь может защитить от прерываний критические сегменты
прикладной программы.
При восприятии прерывания триггер прерывания IFF переводиться в нулевое
состояние, что приводит к запрещению инкремента программного счетчика и генерированию
сигнала подтверждения прерывания INTA.
Программный
счетчик
Установка
Регистр команд
Дешифратор
команд
&
&
1
&
R T
S
R
S
1
EI
DI
INT
NMI
INTE
INTE INTA
IFFСтроб
Сигнал
инкремента
+1
Рис.3.3. Внутренняя схема прерывания
При этом сбрасывается триггер INTE и в дальнейшем разрешить прерывание можно
только командой EI. Для программного управления ПУ в их регистрах управления и
состояния предусмотрен специальный бит INTEN разрешения прерывания (маска). Иногда
биты масок всех устройств объединяются в специальный регистр. Наконец, в некоторых
микропроцессорах бит маскирования прерывания входит в слово состояния процессора PSW.
Немаскируемые прерывания реализуют режим безусловного прерывания.
Микропроцессор воспринимает запросы прерывания независимо от того, в каком состоянии
находится триггер разрешения прерывания. Эти прерывания должны отражать ситуации, в
которых желательно немедленное прерывание (например, ошибка аппаратуры контроля,
уменьшение напряжения сети до критического уровня и т.д.).
t ПО Э= . t р + t з + t ПО + t в 3.3.2. Виды прерываний микропроцессора Существуют два основных вида прерывания: программное прерывание и аппаратное прерывание. Программное прерывание реализуется введением специальных команд прерывания в систему команд процессора. Введение таких специальных команд позволяет создавать гибкие и мощные программные средства (например, операционные системы). Аппаратные прерывания могут инициироваться как операционными блоками микропроцессора, так и устройствами внешними по отношению к нему. Аппаратные прерывания подразделяются на маскируемые прерывания и немаскируемые прерывания. Маскируемые прерывания реализуется только при условии разрешения прерывания. Процессор реагирует на запросы маскируемых прерываний по линии INT, если установлен внутренний триггер разрешения прерываний INTE, называемой также маской. На рис.3.3 приведена функциональная внутренняя схема прерываний. Состояние триггера разрешения прерывания INTE идентифицируется выходным сигналом разрешения прерывания с такой же мнемоникой INTE. Если INTE=0, прерывания запрещены (замаскированы) и процессор не реагирует на сигнал INT=1. С помощью команд разрешения EI и запрещения DI прерываний можно программно управлять состоянием триггера INTE, и пользователь может защитить от прерываний критические сегменты прикладной программы. При восприятии прерывания триггер прерывания IFF переводиться в нулевое состояние, что приводит к запрещению инкремента программного счетчика и генерированию сигнала подтверждения прерывания INTA. INTE INTA Программный Регистр команд счетчик Сигнал инкремента +1 & & Дешифратор команд INTE EI DI 1 Строб R S IFF RT INT S & NMI 1 Установка Рис.3.3. Внутренняя схема прерывания При этом сбрасывается триггер INTE и в дальнейшем разрешить прерывание можно только командой EI. Для программного управления ПУ в их регистрах управления и состояния предусмотрен специальный бит INTEN разрешения прерывания (маска). Иногда биты масок всех устройств объединяются в специальный регистр. Наконец, в некоторых микропроцессорах бит маскирования прерывания входит в слово состояния процессора PSW. Немаскируемые прерывания реализуют режим безусловного прерывания. Микропроцессор воспринимает запросы прерывания независимо от того, в каком состоянии находится триггер разрешения прерывания. Эти прерывания должны отражать ситуации, в которых желательно немедленное прерывание (например, ошибка аппаратуры контроля, уменьшение напряжения сети до критического уровня и т.д.).
Страницы
- « первая
- ‹ предыдущая
- …
- 47
- 48
- 49
- 50
- 51
- …
- следующая ›
- последняя »