
- •Вопрос 1. Общие требования, предъявляемые к современным эвм.
- •4. Совместимость и мобильность по.
- •Вопрос 2. Классификация эвм.
- •Классификация по поколениям.
- •Вопрос 3.
- •Вопрос 5.
- •Вопрос 6.
- •Вопрос 7.
- •Вопрос 8.
- •Вопрос 9.
- •Вопрос 10.
- •Вопрос 11.
- •Вопрос 12.
- •Вопрос 13.
- •Вопрос 14.
- •Вопрос 15.
- •Вопрос 16.
- •Вопрос 17.
- •Mov. Пересылка (байта или слова)
- •Jae Переход если выше или равно
- •Jb Переход если ниже
- •Jbe Переход если ниже или равно
- •Jc Переход если перенос
- •Je Переход если равно
- •Jg Переход если больше
- •Jge Переход если больше или равно
- •Jl Переход если меньше
- •Jle Переход если меньше или равно
- •Loopne Переход пока не равно
- •Loopnz Переход пока не ноль
- •Loopz Переход пока ноль
- •Вопрос 18.
- •Вопрос 19.
- •Вопрос 20.
- •Вопрос 21.
- •Вопрос 22.
Вопрос 8.
Контроллер (программируемый) приоритетных прерываний.
(ПКП)
Находится по адресу: 0020h – 003Fh
Система прерываний.
МП обеспечивает возможность реакции на асинхронные внешние события и на различные исключительные ситуации, возникающие в процессе выполнения программ, используя векторную структуру прерываний. Он позволяет обрабатывать 256 типов прерываний, которые делятся на внешние аппаратные маскируемые, внешние аппаратные немаскируемые, внутренние аппаратные и программные.
Структура прерываний.
INT NMI
ST0
ST1
ST2
Запросы на внешние аппаратные маскируемые прерывания (IRQ0…IRQ7) поступают в МП через программируемый контроллер приоритетных прерываний, который формирует общий сигнал INT (внешнего аппаратного маскируемого прерывания).
Список внешних аппаратных маскируемых
прерываний (в порядки приоритета).
Прерывание |
Устройство |
IRQ1 |
Клавиатура |
IRQ2 |
Свободен |
IRQ3 |
Контроллер последовательного ввода-вывода СОМ2 |
IRQ4 |
Контроллер последовательного ввода-вывода СОМ1 |
IRQ5 |
Контроллер НЖМД |
IRQ6 |
Контроллер НГМД |
IRQ7 |
Контроллер параллельного ввода-вывода LPT1 |
IRQ0 |
таймер |
Немаскируемые.
Запрос на внешние аппаратные немаскируемые прерывания поступают непосредственно на вход NMI МП и обычно используются для прерывания работы МП при катастрофических событиях, таких, как: сбой питания, обнаружение ошибки памяти и т.п.
К внутренним аппаратным прерываниям относятся ошибка деления и пошаговый режим.
К программным прерываниям относятся: прерывание по точке прерывания, по переполнению и команда INT.
Обработка прерываний.
Для обслуживания прерываний необходимо определить таблицу векторов прерываний. Вектора прерываний – это указатели на соответствующие программы обслуживания. Таблица занимает первый Кб ОЗУ и содержит 256 элементов. Каждый i-ый элемент представляет собой полный (2 16-ти разрядных значения) начальный адрес программы, которая обслуживает прерывания этого типа.
Если возникает прерывание, производятся следующие действия:
МП выполняет текущую команду до конца.
Адрес очередной команды – содержимое регистров CS и IP и состояние МП-ра (регистр признаков FLAGS) сохраняется в стеке, что позволит впоследствии возобновить прерванную программу.
МП меняет свое состояние (выводы ST0, ST1, ST2), которое отслеживается контроллером системной магистрали.
Контроллер системной магистрали вырабатывает сигнал INTA (подтверждение прерывания), который поступает на ПКП.
ПКП сообщает номер вектора прерывания МП. Номер вектора прерывания – соответствующий элемент векторов прерывания.
Из того элемента берутся 2 16-ти разрядных значения и помещаются в регистры CS и IP.
выполняется программа обслуживания прерывания до команды IRET.
После этого восстанавливается старое состояние МП и адрес прерванной программы (из стека извлекаются значения и записываются в регистр FLAGS, CS и IP).
Программируемый контроллер
приоритетных прерываний.
Обеспечивает приоритетный выбор запросов внешних аппаратных маскируемых прерываний, формирование вектора прерывания и имеет 8 входов прерываний от 8 различных устройств.
Основные функции контроллера:
Фиксация запросов прерывания от 8 внешних источников.
программное маскирование поступающих запросов
Присвоение фиксированных или циклически изменяемых приоритетов входом контроллера, на которые поступают запросы.
Инициация вызова процедуры обработки поступившего внешнего аппаратного маскируемого прерывания.
Структурная схема ПКП.
IRQ0
IRQ1 IRQ7
D0-D7
R
W
CS
A0
INT
INTA
Назначение выводов микросхемы ПКП.
Выводы |
Назначение |
D0-D7 |
Шина данных |
R |
Сигнал чтения микросхемы |
W |
Сигнал записи микросхемы |
CS |
Сигнал выбора микросхемы |
INT |
Сигнал запроса внешнего аппаратного маскируемого прерывания |
INTA |
Подтверждение запроса внешнего аппаратного маскируемого прерывания |
A0 |
Адресный сигнал |
IRQ0…IRQ7 |
Запросы на внешние аппаратные маскируемые прерывания (от устройств) |
ПКП может находиться в двух основных состояниях настройки и обслуживания запросов на прерывания.
Описание основных элементов ПКП.
Блок чтения записи принимает команды от МП и передает ему информацию о состоянии ПКП.
Обмен информацией осуществляется через 8 разрядный буфер данных.
Каскадный буфер-компаратор отвечает за работу каскада из нескольких контроллеров.
Блок управления ПКП формирует сигнал запроса на прерывание INT и обрабатывает сигнал INTA.
Регистр запросов прерываний используется для хранения всех входных запросов прерывания.
Блок приоритетов определяет, прерывание какого уровня будет обрабатываться в первую очередь.
Регистр обслуживания прерывания описывает прерывание какого уровня в настоящий момент обрабатывается.
Регистр маскирования прерываний описывает, маскирования какого типа в настоящий момент замаскировано.
Режимы работы ПКП.
Режим фиксированных приоритетов (по умолчанию).
Запросы прерываний IRQ0…IRQ7 имеют фиксированные приоритеты (0 – высший) и обрабатываются в соответствии с ними. Прерывание с меньшим приоритетом никогда не будет обработано, если в процессе обработки прерывания с более высокими приоритетами постоянно возникают запросы на эти прерывания.
Автоматический сдвиг приоритетов.
Здесь задается возможность обработать прерывания всех уровней без их дискриминации. После обработки прерывания какого-либо уровня ему автоматически присваивается низший приоритет. При этом приоритеты всех остальных уровней циклически сдвигаются и прерывание следующего уровня будет иметь в данной ситуации высший приоритет, и, следовательно, возможность быть обработанным.
Программно-управляемый сдвиг приоритетов.
В этом режиме программист может задать номер уровня, которому требуется присвоить максимальный приоритет. После этого контроллер работает также, как в режиме фиксированных приоритетов с учетом их сдвига.
4. Автоматическое завершение обработки прерываний.
5. Режим специальной маски.
Данный режим позволяет отменить приоритетную обработку прерываний и обрабатывать их по мере поступления.
Режим опроса.
В этом режиме сигнал аппаратного прерывания не появляется автоматически, а наличие запроса на прерывание определяется считыванием определенных регистров МП.