Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
билет Организация ЭВМ.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
797.66 Кб
Скачать
  1. Структура контроллера прерываний.

Аппаратные прерывания обслуживаются специализированными интегральными схемами, простейшими являются блоки приоритетного прерывания. Программируемый контроллер i8259A (8 уровней запросов прерывания).

Рисунок обязательно!

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

1) поступает запрос прерывания от источника. В соответствующих разрядах регистра запроса прерывания устанавливается единица. 2) Проверяется возможность обработки данного запроса прерывания. Если прерывание разрешено, то устройство управления посылает в процессор сигнал INT …. 3) номер запроса прерывания фиксируется в регистре обслуживания. Он запрещает прерывание от источника с низким приоритетом, параллельно сброс запроса в регистре прерывания. Номер источника прерывания поступает в буфер данных, затем на шину и используется для определения начального адреса программы. 4) для обработки 3 видов прерываний требуется программы нескольких контроллеров прерываний – один ведущий, другой – ведомый.

Контроллер позволяет реализовать следующие режимы:

  1. простой приоритетный режим – всем входам присвоение фиксированного приоритета, причем наивысший приоритет присваивается входу IR0, наинизший – IR7.2) режим циклического приоритета; 3) программной-управляемый приоритет – программным способом можно изменить уровень; 4) режим опроса источников прерывания?

  1. Векторное прерывание. Обработка прерываний в реальном режиме.

Векторное прерывание является наиболее динамичным методом, т.к. при этом исключается опрос источников прерываний. Прерывание наз. векторным, если источник прерывания посылает в процессор код адреса своего вектора прерывания. Структура вектора прерывания зависит от используемого процессора.

Текущий режим

Предыдущий режим

Порог прерываний

Коды условий

Процедура перехода к прерывающей программе:

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

Обработка прерываний в реальном режиме

1) прекращение выполнения текущей программы; 2) переход к выполнению и выполнение программы обработки прерываний; 3) возврат управления прерванной программе.

1 этап должен обеспечить временное прекращение текущей программы и запомнить содержимое регистра слова-состояния процессора, содержимое РОН. Вся эта информация заносится в стек. После включения в стек сбивается? регистр флагов, предотвращая возможность вложенных прерываний.

2 этап заключается в определении источника прерываний и вызова соответствующей программы обработки. В реальном режиме допускается 256 источников прерываний. Количество источников ограничено таблицей векторов прерываний. Каждый элемент таблицы занимает 4 байта: 1 слово – значение смещения начала процедуры обработки прерывания от кодового сегмента; 2 слово – значение базового сегмента, в котором находится код обработки прерывания? После определения адреса программы обработки прерывания начинается выполнение прерывания. Начальный адрес таблицы можно изменить программным путем.

3 этап заключается в восстановлении данных прерванной программы: восстановление регистра слова-состояния программы и содержимого РОН. Последней командой в процедуре обработки прерывания является разрешение аппаратного прерывания.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]