Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Прерываний (в порядки приоритета)



Прерывание Устройство
IRQ1 Клавиатура
IRQ2 Свободен
IRQ3 Контроллер последовательного ввода-вывода СОМ2
IRQ4 Контроллер последовательного ввода-вывода СОМ1
IRQ5 Контроллер НЖМД
IRQ6 Контроллер НГМД
IRQ7 Контроллер параллельного ввода-вывода LPT1
IRQ0 таймер

Немаскируемые.

Запрос на внешние аппаратные немаскируемые прерывания поступают непосредственно на вход NMI МП и обычно используются для прерывания работы МП при катастрофических событиях, таких, как: сбой питания, обнаружение ошибки памяти и т.п.

К внутренним аппаратным прерываниям относятся ошибка деления и пошаговый режим.

К программным прерываниям относятся: прерывание по точке прерывания, по переполнению и команда INT.

Обработка прерываний.

Для обслуживания прерываний необходимо определить таблицу векторов прерываний. Вектора прерываний – это указатели на соответствующие программы обслуживания. Таблица занимает первый Кб ОЗУ и содержит 256 элементов. Каждый i-ый элемент представляет собой полный (2 16-ти разрядных значения) начальный адрес программы, которая обслуживает прерывания этого типа.

Если возникает прерывание, производятся следующие действия:

  1. МП выполняет текущую команду до конца.
  2. Адрес очередной команды – содержимое регистров CS и IP и состояние МП-ра (регистр признаков FLAGS) сохраняется в стеке, что позволит впоследствии возобновить прерванную программу.
  3. МП меняет свое состояние (выводы ST0, ST1, ST2), которое отслеживается контроллером системной магистрали.
  4. Контроллер системной магистрали вырабатывает сигнал INTA (подтверждение прерывания), который поступает на ПКП.
  5. ПКП сообщает номер вектора прерывания МП. Номер вектора прерывания – соответствующий элемент векторов прерывания.
  6. Из того элемента берутся 2 16-ти разрядных значения и помещаются в регистры CS и IP.
  7. выполняется программа обслуживания прерывания до команды IRET.
  8. После этого восстанавливается старое состояние МП и адрес прерванной программы (из стека извлекаются значения и записываются в регистр FLAGS, CS и IP).

Программируемый контроллер

приоритетных прерываний.

Обеспечивает приоритетный выбор запросов внешних аппаратных маскируемых прерываний, формирование вектора прерывания и имеет 8 входов прерываний от 8 различных устройств.

Основные функции контроллера:

  1. Фиксация запросов прерывания от 8 внешних источников.
  2. программное маскирование поступающих запросов
  3. Присвоение фиксированных или циклически изменяемых приоритетов входом контроллера, на которые поступают запросы.
  4. Инициация вызова процедуры обработки поступившего внешнего аппаратного маскируемого прерывания.




Дата публикования: 2015-02-03; Прочитано: 320 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...