"Архитектура ввода-вывода персональных ЭВМ IBM PC" - читать интересную книгу автора (Лукач Ю.С.)рывания;
- устанавливать/сбрасывать режим специальной маски; - переводить контроллер в режим опроса и считывать состояние регистров ISR и IRR; для этого Вам потребуется вывести в порты ПКП одно из трех слов рабочих приказов OCW1 - OCW3. Формат первого слова рабочих приказов OCW1: A0 7 6 5 4 3 2 1 0 +————+————+————+————+————+————+————+————+————+ | 1 | M7 | M6 | M5 | M4 | M3 | M2 | M1 | M0 | +————+————+————+————+————+————+————+————+————+ Единичное значение одного из битов М0 - М7 означает, что прерывания соответствующего уровня (IR0 - IR7) маскируются и не будут обрабатываться контроллером. Второе слово рабочих приказов (OCW2) предназначено для вывода команды завершения обработки аппаратного прерывания (EOI), циклического сдвига и явного изменения приоритетов уровней. Назначение битов OCW2 следующее: A0 7 6 5 4 3 2 1 0 +————+————+————+————+————+————+————+————+————+ | 0 | R | SL | EOI| 0 | 0 | L2 | L1 | L0 | +————+—+——+—+——+—+——+————+————+—+——+—+——+—+——+ | | | | +———————> ляют номер уровня | | | +————————————> прервания, если он | | | требуется в команде. | | | | | | | | +———————————————————————————> 1-команда завер- v v шения обработки +————+————+ аппаратного | 0 | 0 | Используется вместе с EOI=1 прерывания +————+————+ | 0 | 1 | Специфицированный EOI (сбрасывает бит, определя- +————+————+ емый полями L0 - L2 в ISR) | 1 | 0 | Циклический сдвиг приоритетов влево на одну +————+————+ позицию | 1 | 1 | Назначение низшего приоритета уровню, определяе- +————+————+ мому полями L0 - L2 Как уже говорилось, процедура обработки аппаратного прерывания должна перед своим завершением очистить свой бит в ISR выводом команды завершения обработки прерывания (End Of Interrupt, EOI). Существует два варианта команды EOI: обычный и специфицированный EOI. Обычный EOI очищает бит в ISR, соот- ветствующий прерыванию с максимальным приоритетом. Специфи- цированный EOI (R=0, SL=1, EOI=1, L0 - L2 равно номеру уровня |
|
|