Особенности обслуживания при каскадировании контроллера прерываний

 

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

По первому сигналу, разрешающему прерывание (INTА) на своем входе, ведущий контроллер выдает на шину данных первый байт команды CALL (код команды). Кроме этого, на своих выходах GAS0 ÷ GAS2 ведущий контроллер формирует код выбираемого ведомого. С приходом двух последующих сигналов INTА от системного контроллера ведомый контроллер прерываний выставляет на шину данных последовательно два байта адреса первой команды подпрограммы обслуживания прерываний.

В каскадируемых системах по окончанию обслуживания прерывания необходимо корректно завершить выход из процедуры обслуживания прерываний. Это осуществляется путем загрузки по команде OUT из микропроцессора соответствующих операционных управляющих слов в ведущий и ведомый контроллеры.

Схема каскадирования контроллеров представлена на рис. 18.

 

Рис. 18

 

Данная схема позволяет обслужить 22 запроса от внешних устройств. Максимальное же число запросов для каскада из ведущего и 8 ведомых контроллеров = 64.