Cтраница 4
Если прерывание маскируется, то распознавание условия прерывания приводит к прерыванию только тогда, когда маска прерывания имеет разрешающее ( обычно единичное) значение. Основные маски прерываний находятся в ССП. Значения всех масок могут быть опрошены или изменены программно. [46]
Схема маскирования состоит из схемы анализа приоритета и регистра маски, в который предварительно записывается код маски прерываний, разрешающий или запрещающий прохождение определенных запросов на схему анализа приоритета. Сигналы, прошедшие чсргз регистр маски, анализируются по приоритету. Запрос с наивысшим приоритетом записывается в регистр обслуживаемых запросов, запрещая прохождение через схему маскирования новых запросов, имеющих равный обслуживаемому или низшие приоритеты. Схема логики чтения / записи позволяет записывать команды в различные регистры микросхемы, а также считывать содержимое регистров на шину данных. [47]
Когда МП принимает запрос прерывания, он переходит в режим супервизора, состояние запоминается в стеке супервизора, значение маски прерывания в регистре состояния меняется соответственно новому уровню и процессор выдает сигнал подтверждения прерывания по своим линиям функционального кода. В это время происходит обработка векторного или невекторного прерывания. [48]
Если в канале еще не установлены приоритеты условий прерывания, то прерывание происходит необязательно сразу после команды, снимающей маску прерывания. Эта задержка может иметь место независимо от того, как долго условие прерывания находится в ВУ или подканале. [49]
Регистр, каждый разряд которого соответствует определенному типу прерывания; прерывание обслуживается или игнорируется в зависимости от значения соответствующего разряда маски прерываний. [50]
В архитектуре современных ЭВМ уделяется большое внимание развитию аппаратных и программных средств обработки прерываний, Среди функциональных узлов вычислительной машины, имеющих прямое отношение к этому вопросу, необходимо выделить регистр прерываний и регистр маски прерываний. Возникновение того или иного события приводит к занесению единицы в соответствующий разряд регистра прерываний. Если при этом одноименный разряд регистра маски открыт, то выполнение текущего программного процесса прекращается и управление передается операционной системе. [51]
При выполнении прерывания по запросам СВВ в ЦП выполняются следующие основные действия: после завершения текущей команды временно выключается система прерывания; запоминается состояние ЦП; определяется источник прерывания; запоминается состояние регистров общего назначения, обычно используемых программой прерывания; устанавливаются новые маски прерывания от СВВ; включается система прерывания и разрешается пре - рывание от устройств более высокого приоритета; начинается выполнение подпрограммы обработки данного типа прерывания. [52]
Системный байт, содержит маску прерывания, бит супервизора и бит трассировки. Маска прерывания, биты IQ - Ь, определяет уровень приоритета текущего прерывания. Бит супервизора S определяет, в каком режиме в данный момент работает процессор. Бит трассировки Т вызывает особое прерывание с переходом на программу трасснровки после выполнения каждой инструкции. [53]
Если прерывание маскируется, то распознавание условия прерывания приводит к прерыванию только тогда, когда маска прерывания имеет разрешающее ( обычно единичное) значение. Основные маски прерываний находятся в ССП. Значения всех масок могут быть опрошены или изменены программно. [54]
Маска прерываний ввода-вывода должна сниматься только после того, как информация и CSW, записанного по команде, будет обработана или передана в другую область для дальнейшей обработки. [55]
Прерывание в регистре состояния микропроцессора имеет значение 0, то при поступлении запросов на прерывание микропроцессор будет реагировать на эти запросы и выполнять обработку прерываний. Если же маска прерывания установлена в 1, т.е. разряд Прерывание имеет значение 1, микропроцессор не будет реагировать на сигналы, поступающие на вход маскируемого прерывания. [56]
Системные команды осуществляют переключения состояния процессора ( программы) путем загрузки нового ССП или его части. В частности, эти команды изменяют маски прерывания, устанавливают ключи памяти и ключи защиты в ССП, реализуют операции прямого управления. [57]
ССП хранятся в фиксированных ячейках ЗУ. В простейшем случае ССП должно содержать маску прерываний, код причины прерывания, признаки состояний блоков процессора в момент прерывания, содержимое счетчика команд, указывающее адрес следующей невыполненной команды прерванной программы. После записи в память старого ССП ( то есть ССП прерванной программы) на блоки процессора поступает новое ССП, характеризующее состояние прерывающей программы. Если независимо от причины прерывания для хранения ССП отводятся одни и те же ячейки ЗУ, то исключается возможность прерывания самой прерывающей программы без потери информации, необходимой для возвращения к ее выполнению. В таком случае для правильной работы ЦВМ в соответствующий разряд регистра RG3FIP необходимо записать нуль. Сигнал перехода к продолжению прерванной программы должен вырабатываться программным путем в конце работы прерывающей программы. Для этого в машине должна быть специальная команда. [58]
Прерывание разрешено или Прерывание замаскировано. Прерывание может быть замаскировано установкой нулей в разряды масок прерываний. [59]