Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билеты по ТС АиУ / Ответы на 9-14 билеты.docx
Скачиваний:
12
Добавлен:
31.03.2015
Размер:
71.38 Кб
Скачать

Функциональный состав пкп и его программная модель

Рис. 6.8 Программируемый контроллер прерываний в ЭВМ семейства IBMPC.

IRR – Interrupt Request Register – регистр запросов прерываний,

IMR – Interrupt Mask Register – регистр масок прерываний,

ISR – Interrupt Service Register регистр обслуживаемых запросов,

PR – Priority Resolver – шифратор приоритетов.

Назначение:

IRR:

  • фиксирует ЗП на входах IR0-IR7от ВУ. К каждому входу можно подключить одно ВУ.

IRi=1, если на входеIRiпоявляется ЗП.

  • Входные цепи могут программироваться на восприятие уровня или фронта сигнала.

IMR:

  • Служит для маскирования или разрешения ЗП на отдельных входах.

  • Если IMi=1, то сигнал на входеIRiне обслуживается.

  • Маскирование входа IRiне запрещает прерывание на остальных входах..

ISR:

  • Хранит запросы, обслуживаемые ЦП.

  • На время обслуживания IRiЦП, битISi устанавливается в 1.

  • Если ISi = 1, то прерывания от этого входа и входов с меньшими приоритетами запрещены.

  • Этот бит должна сбросить программа обслуживания прерывания по завершению работы или в процессе обслуживания ВУ.

PR:

  • Анализирует содержимое предыдущих трех регистров и определяет необходимость генерировать сигнал ЗП (INT) в ЦП, т.е. реализует схему учета приоритетов и формирования АВП.

  1. Алгоритм обслуживания запросов прерываний от внешнего устройства контроллером прерываний (ПКП) в ЭВМ семейства IBM AT.

Алгоритм работы пкп.

Начальная инициализация подразумевает установку всех параметров:

  1. Количество ПКП в системе: один или несколько.

  2. АВП (номера типов прерываний).

  3. Режим обслуживания ВУ.

Инициализация выполняется специальными командами записи приказов инициализации в регистр ПКП и не должна прерываться. В ЭВМ семейства IBM PCинициализация выполняетсяBIOS (basic input/output system- базовая система ввода-вывода), которая устанавливает режим вложенных прерываний, АВП, ПКП1 объявляет ведущим, ПКП2 – ведомым.

При появлении сигнала ЗП от какого-либо ВУ, ПКП выполняет следующие действия:

  1. Запрос на входе IRi фиксируется в регистреIRR.

  2. Установленный в 1 бит IRi сравнивается с соответствующим битомIMi. Если

      1. IMi= 1 → запросIRiне обслуживается.

      2. IMi= 0 → запросIRiпередается вPR.

  1. PRсравнивает приоритетIRiс приоритетами ЗП, обслуживаемыми в данный момент времени ЦП.

      1. Если биты регистра ISRс большим приоритетом = 1, то дальнейшее обслуживание запроса не выполняется.

      2. Если биты регистра ISRс большим приоритетами сброшены в 0, то ПКП формирует ЗП (INT) в ЦП.

  1. ЦП проверяет бит IF (Interrupt Flag) в регистре флагов (Flags):

  1. Если IF= 0, запрос не обслуживается, покаIFне будет установлен в единицу.

  2. Если IF = 1, то по завершению текущей команды ЦП сбрасываетIF=0и возвращает сигнал в ПКП по линииINTAв виде двух последовательных импульсов.

  1. ПКП при первом импульсе INTAзапрещает сигналы на входахIRRдо второго импульсаINTA. Сбрасывает битIRi = 0 и устанавливает битISi = 1.

  2. ПКП при втором импульсе INTAЦП разрешает сигналы на входах регистраIRRи на ШД устанавливает номер типа прерывания.

  3. ЦП считывает с ШД код номера типа прерывания и приступает к обслуживанию устройства.

Если поступает сигнал с большим приоритетом, ЦП не реагирует на сигнал INTпри сброшенномIF. Поэтому любая оперативная программа должна устанавливатьIF=1, как только это становится возможным, чтобы установить режим вложенных прерываний.

Чтобы повторить процедуру прерывания, то входа IRiнеобходимо сигнал на входеIRi перевести в неактивное состояние.

Если какой-то вход IRк замаскирован соответствующим битомIMк, то запрос не обрабатывается ПКП.

Если программа сбрасывает IMк=0, ПКП распознает активный запрос и начинает его обслуживать.

См. в методичке (л.р.2)

Схема каскадирования ПКП,

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

Каскадирование позволяет объединить несколько контроллеров для расширения числа ЗП.

При этом один ПКП работает как ведущий, а до 8 ПКП могут работать ведомыми.

Сигнал INTведомого ПКП подается на один из входов ведущего (IRi). ЕслиIMRиISRне блокируют сигнал, то он поступает на вход ЦП по линииINTведущего.

Когда ЦП возвращает INTA, ведущий ПКП проверяет, возникло ли его собственное прерывание или от ведомого. Если прерывание от ведомого, то на шину ведущий на шину каскадирования выдает код, соответствующий входу, к которому подключен ведомый.

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

CAS2

CAS1

CAS0

22(4)

21(2)

20(1)

0

1

0

За исключением реакции на сигнал INTAдействие всех контроллеров в системе одинаково.

IR0 имеет самый высокий приоритет, номер типа прерывания – 8.

IR0

IR1

IR8

IR9

IR10

IR11

IR12

IR13

IR14

IR15

IR3

IR4

IR5

IR6

IR7

8

9

70h

71h

72h

73h

74h

75h

76h

77h

Bh

Ch

Dh

Eh

Fh

алгоритмы работы ведущего и ведомых контроллеров.

См. у Оли

  1. Программирование работы контроллера прерываний в ЭВМ семейства IBM AT. Команды управления операциями: маскирование/разрешение запросов прерываний, изменение режима работы, обработка конца программы обслуживания прерывания, опрос регистров контроллера.

Соседние файлы в папке Билеты по ТС АиУ