Классификация систем прерывания
Различаются одноуровневые и многоуровневые системы прерываний.
В одноуровневых системах прерывания существует одна линия запроса и одна линия разрешения прерывания.
В многоуровневых системах существуют несколько линий запросов и разрешений прерывания.
Если к одной линии разрешения прерывания подключено несколько устройств, то системы можно классифицировать по следующему признаку:
Системы с фиксированным, либо плавающим приоритетом.
Системы с фиксированным приоритетом часто назначаются по следующему правилу: то устройство, которое физически ближе подключено к ЦП, имеет более высокий приоритет. В системах с плавающим приоритетом опрос устройств ведется в соответствии с приоритетом, который назначается программой.
Организация в/в
Существуют 3 основных подхода к организации в/в:
- Канальный в/в.
- Магистральный в/в.
- Радиальный в/в.
Каналы представляют собой специализированные процессоры, предназначенные специально для организации в/в , которые выполняют канальную программу.
ЦП инициирует в/в, а далее продолжает выполнять программу ЦП. Канал, восприняв запрос по в/в, функционирует параллельно с ЦП и занимается в/в информации. Таким образом, для этого класса систем обработка программ ЦП и организация в/в ведется параллельно.
Канальная команда
Поскольку канал предназначен для организации в/в, а не для обработки данных, то формат канальной команды в корне отличается от формата команды ЦП. Канальная команда содержит следующие поля:
- КОП (код операции: чтение, запись).
- Адрес начала массива, считываемого или записываемого в ОП.
- Длина массива.
- Специальные признаки.
УС(управляющее слово)
Признаки:
1-й признак - цепочка команд.
Когда ЦП инициирует в/в, то он передает номер канала и номер внешнего устройства, с которым необходимо произвести обмен.
Далее канал по отношению к этому внешнему устройству будет выполнять одну канальную программу (ряд канальных команд).
Если признак цепочки команд в некотором управляющем слове установлен в значение 1, то это будет означать, что следующее управляющее слово принадлежит данной канальной программе. Если признак цепочки команд = 0, то данная канальная команда является последней, следовательно, операция в/в завершена и канал посылает сигнал прерывания в ЦП, сигнализирующий завершение операции в/в.
2-й признак - цепочка данных . Используется в том случае, если одна и та же операция (например, чтение или записи) выполняется над разными фрагментами массива. Тогда в одну канальную команду объединяются несколько управляющих слов, которые будут иметь один и тот же КОП, но для каждого фрагмента будет свой адрес начала размещения данного фрагмента в ОП и длина фрагмента.
Для того, чтобы показать, что следующее управляющее слово принадлежит данной канальной команде, устанавливается признач цепочки данных=1
Выделяются 2 типа каналов:
Один тип каналов предназначен для работы с высокоскоростными устройствами и работает в многоканальном режиме (селекторный).
Второй канал предначен для работы с медленно действующими устройствами. Работает в режиме разделения времени. Называется мультиплексный канал.
При обслуживании высокоскоростных устройств канальная программа выполняется с начала до конца для одного вычислительного устройства
В мультиплексном канале параллельно обслуживается несколько внешних устройств, каждое по своей канальной программе. При этом выделяется для каждого внешнего устройства сеанс связи, в течении которого с данным внешним устройством канал обменивается порцией информации. Таким образом, сеансы связи для разных внешних устройств чередуются во времени.