Программируемый контроллер прерывания (ПКП) ВН 59
МП имеет 1 вход запроса прерываний. А внешних устройств много и прерывания возникают в разные моменты времени. ПКП формирует адрес подпрограммы обработки прерывания и код команды CALL.
Позволяет обслуживать до 8 запросов на прерывание. При соединении в каскадную схему – до 64 запросов на прерывание.
БШД– буфер шины данных. 8 разрядов
А0 – младший разряд ША. Задает режим функционирования ПКП
ВДН – сигнал ведущий – ведомый
УСИ – управляющее слово инициализации УСО – управляющее слово обмена
Формирование кода команды САLL и сигнала прерывания происходит схемой управления
РЗПР – регистр запроса прерывания. Фиксация прерываний
РМЗПР – регистр маски запроса прерывания и логика управления приоритетами. Обеспечивает запрещение одной или нескольких линий запросов прерывания.
РОЗПР – регистр обслуживания запроса на прерывание.
ПР – сигнал прерывания – к внешнему устройству
ППР – подтверждение прерывания от внешнего устройства
Физический адрес должен быть четным (0 – УСИ, 1 - УСО)
Режимы работы ПКП: (зависят от приоритетов)
1 Векторное прерывание с установленным типом приоритета – наивысший приоритет имеет 0-й запрос на прерывание. Наименьший – у 7-го.
2 Векторное прерывание с циклическим типом приоритета – запрос, который обслужился, встает в конец очереди, очередь продвигается – для равномерного обслуживания запросов.
3 Векторное прерывание с адресуемым типом приоритета – программным путем можно выставить любой запрос к конец очереди. Очередь продвинется.
4 Векторное прерывание по опросу – очередь выставляется по мере появления запросов
При обслуживании прерываний по запросу от внешних устройств выполняется следующая последовательность операций:
1 Запросы прерывания поступают на входы ЗПР0 – ЗПР7 и устанавливают соответствующие разряды РЗПР
2 ПКП принимает запросы, оценивают их приоритеты и формирует сигнал прерывания INT
3 МП принимает сигнал INT, если прерывания разрешены, и подтверждает прием выдачей сигнала INTA
4 После получения сигнала INTA ПКП устанавливает разряд регистра РОЗПР, соответствующий запросу с наивысшим приоритетом, сбрасывает соответствующий разряд и выдает на ШД код команды CALL
5 МП выдает еще два сигнала INTA, которые позволяют ПКП передать на шину данных 16-разрядный адрес подпрограммы обслуживания прерывания, причем младший байт адреса передается по первому сигналу INTA, а старший – по второму.
При обслуживании прерываний по опросу МП производит считывание кода номера запроса с высшим уровнем приоритета по сигналу Чт
Управляющее слово инициализации (УСИ)
A0 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | УСИ 1 | |
A7 | A6 | A5 | Ф | Е |
Е= 1 – 1 ПКП в системе Е = 0 – много ПКП в системе
Ф – формат – для каждого запрета прерывания отводится 4 или 8 байт, в которые записываются команды передачи управления. Ф = 1 – интервал 4 байта Ф = 0 – 8 байт
А7…А5 – разряды младшего байта адреса команды CALL
A0 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 | УСИ 2 | |
А15 | А14 | А13 | А12 | А11 | А10 | А9 | А8 |
Старший байт начального адреса команды CALL.
Адреса находятся путем сдвига на 4 или 8 байт базового адреса ЗПР 0.