Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Распечатка.docx
Скачиваний:
3
Добавлен:
24.04.2019
Размер:
136.27 Кб
Скачать

11.Система прерываний мп i8086. Понятие прерывания, вектора прерывания. Таблица векторов прерываний.

Прерывание - сигнал, заставляющий МП прекратить выполнение текущей программы и переключиться на выполнение др. программы, называемой ПОП.

Виды прерываний:

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

Внешние прерывания возникают по сигналу какого-либо устройства.

Все внешние делятся на маскируемые и немаскируемые.

МП имеет двухуровневую векторную систему прерываний с внутренними и внешними источниками.

Может распознавать до 256 различных прерываний. Любой источник прерывания характеризуется своим номером (кодом 0..256) - однозначно определяется вид прерывания. МП использует данный номер для определения точки входа в специальную таблицу, которая называется таблицей векторов прерываний. Она располагается в младших адресах адресного пространства, начиная с логического адреса 00. Занимает 1 Kb памяти, состоит из ячеек размером по 4b. Любая ячейка содержит вектор процедуры обработки прерывания в формате (сегмент-смещение CS:IP).

12.Механизм обработки прерываний в вычислительных системах на базе мп i8086.

1. Определяется соответствующий номер прерывания

2. В стеке прерванной программы сохраняется значение флагового регистра, CS, IP

3. Сбрасываются флаги трассировки и прерывания. Запрещаются все прерывания

4. Из вектора с соответствующим номером в регистры CS:IP загружается адрес ПОП. Переход к программному коду процедуры 5. Выполнение процедуры

6. Завершение ПОП осуществл. с помощью команды IRET, кот. извлекает и стека значения IP, CS, Flags

13.Внешние (аппаратные) прерывания.

Сигналы внешних прерываний возникают в устройствах, поступают в МП через контроллер.

К 8 входным линиям контроллера IRQ0..IRQ7 подключены выводы внешних устройств, на которых возникают сигналы прерываний.

Контроллер направляет сигналы от устройств в МП, на вход IntR и передает по линиям данных номер вектора, через который должна быть вызвана процедура обработки прерывания.

N вектора образуется в контроллере путем сложения базового вектора в одном из регистров контроллера и номера линии IRQ.

Базовый вектор для одного контроллера =8, следовательно номера векторов соответствующих прерываний лежат в диапазоне 08h..0Fh.

Для обслуживания большого кол-ва устройств, контроллеры объединяются в веерообразную структуру.

Один из контроллеров ведущий, второй - ведомый. Соединение производится через канал ввода-вывода.

Базовый вектор для ведомого контроллера =70h порт A0h A1h, для ведущего =8h порт 20h 21h.

14.Логическая структура контроллера прерываний.

0 0 Х 1-0 МП IF=1

1 0 Х 0 EOI конец прерываний

0 0 Х 0

0 0 Х 0

0 0 Х 0

0 0 Х 0

0 0 Х 0

0 0 Х 0

Регистр

Запросов

IRR Регистр

Метки

IMR Схема

Анализа приоритетов Регистр обслуживания запросовISR Сигнал по линии IRQ поступает на вход регистра запросов и устанавливает 1 соответствующий бит. Если в регистре маски соответствующий бит равен 0 ,прерывание не замаскировано и сигнал проходит схему анализа приоритетов. Стандартная настройка приоритетов чем > N линий IRQ, тем ниже приоритет. Сигнал дает разрешение на установку бита в регистре обслуживаемых запросов и поступает на вход INTR МП. МП регистрирует поступление сигнала только в том случае, если IF=1. Получив сигнал ENTR,МП выдает сигнал INTA, который поступает в контроллер прерываний и выполняет 2 действия:1. Устанавливает нулевой бит в регистре обсл-их запросов и сбрасывает бит в регистре запросов. По этой линии может прийти следующий сигнал прерываний. 1в регистре обсл-их запросов воздействует на схему анализа приоритета т.о., что запрещены все прерывания с более низким приоритетом. Для разблокировки прерывания выдается сигнал EOI. Это выполняется в процедуре обработки прерываний. Сигнал INTA сбрасывает флаг IF, т.о. оказываются запрещенным все прерывания. Поэтому процедура обработки прер-ия должна воздействовать на IF в начале своей работы.