Организация режима прерываний
ИМС КР580ВН59- программируемый контроллер прерываний (ПКП) предназначена для организации приоритетных прерываний от восьми внешних устройств с возможностью увеличения количества до 64 при использовании каскадного включения нескольких БИС ПКП.
Прерывание - режим МПС, при котором МП прекращает выполнение основной программы и переходит на выполнение специальной программы прерываний по обслуживанию ПФУ или УВВ, пославшего запрос на вход INT микропроцессора. Так как у микропроцессора всего один вход INT , а запросы на прерывание могут поступить от нескольких УВВ, то каждому УВВ присваивается свой уровень или статус приоритета, то есть осуществляются приоритетные прерывания.
Как правило, наивысшим приоритетом обладают УВВ с максимальным быстродействием либо с большей функциональной значимостью. УВВ с номером <0> имеет высший приоритет, поэтому УВВ с этим номером обслуживается в первую очередь.
ПКП работает в двух режимах:
1) Режим по вектору - это режим, в котором ПКП формирует и выдает микропроцессору адрес первой команды прерывающей программы (адрес вектора прерываний).
2) Прерывание по опросу - это режим, в котором микропроцессор отключает вход INT и читает словосостояние ПКП, в котором находится информация об УВВ с наивысшим приоритетом, а также информация о наличии запроса от этого УВВ.
ПКП имеет три основных восьмиразрядных регистров:
Вектор прерываний - это адрес первой команды прерывающей программы. Прерывающие программы для разных УВВ могут быть записаны в разных областях памяти. Однако в начальной области памяти отводится специальная область, называемая областью векторов прерываний, в которой хранятся первые адреса прерывающих подпрограмм.
В этой области памяти, как правило, на практике пишется команда JMP с указанием адреса команда программы прерываний.
Таблица векторов прерываний располагается в начальной области памяти, но по усмотрению программиста-разработчика может располагаться в любом месте памяти вектор прерываний. Вектор прерывания (второй и третий байт команды CALL формирует сам ПКП). На практике по этому адресу (по вектору прерываний) располагается команда JMP с указанием адреса первой подпрограммы прерываний для данного запроса IRQ. Сама подпрограмма прерывания может располагаться в любом свободном адресном пространстве.
Рисунок 1 - УГО ИМС КР580ВН59
Таблица 1- Назначение выводов ИМС КР580ВН59