Модули ввода-вывода

Технически система ввода/вывода в рамках ВМ реализуется комплексом модулей ввода/вывода (МВВ). Модуль ввода/вывода выполняет сопряжение ПУ с ядром ВМ и различные коммуникационные операции между ними.

В архитектуре ВС выделяют три основных способа подключения СВВ процессору:

1) использование раздельных шин памяти и ввода/вывода;

2) совместно используемые линии данных и адреса;

3) подключение СВВ на общих правах процессора и памяти.


В варианте с раздельными шинами памяти и ввода/вывода (рис. 3.4, а) обмен информацией между ЦП и памятью физически отделен от ввода/вывода, поскольку обеспечивается полностью независимыми шинами.

При совместно используемых линиях данных и адреса (рис. 3.1, б) память и СВВ имеют общие для них линии адреса и линии данных, разделяя их во времени. В то же время управление памятью и СВВ, а также синхронизация их взаимодействия с процессором осуществляются независимо по раздельным линиям управления.

Возможно подключение СВВ к системной шине на общих правах с процессором и памятью (рис. 3,1, в).

Модуль ввода-вывода представляет собой совокупность аппаратных и программных средств, предназначенных для организации управления обменом и непосредственной передачи данных между ОЗУ и ПУ.

Все функции, которые реализует МВВ можно разбить на три группы.

1. Установка логической связи между ПУ и ОП:

а) выявить наиболее приоритетный запрос на ввод-вывод;

б) определить для него маршрут передачи данных между ОП и ПУ;

в) проверить работоспособность и готовность к выполнению обмена каждым из компонентов СВВ вдоль выбранного маршрута;

г) если какой-либо компонент не может участвовать в обмене, то нужно искать альтернативный путь. Если он не найден, то известить ЦП о невозможности установления канала;

д) всем компонентам обмена передать управляющую информацию;

е) управление непосредственно ПУ (управление механизмами).

2. Передача информации между ПУ и ОП:

а) определить адрес в ОП для записи или чтения кванта информации;

б) преобразовать формат данных;

в) контроль переданных по каналу данных на ошибки;

г) определение особых условий (например, потребность в дополнительной управляющей информации).

3. Завершение обмена и разрушение логического канала:

а) определить момент завершения операции обмена;

б) определить причину завершения обмена;

в) известить ЦП об изменении состояния компонентов СВВ;

г) привести СВВ в исходное состояние.

Если все функции управления обменом осуществляются средствами управления интерфейса и аппаратурой ЦП, то такой МВВ называется программным. Если в МВВ предусмотрены специальные аппаратные средства для буферизации, преобразования форматов данных, определения текущего адреса данных в памяти и момента завершения обмена, то МВВ называют аппаратным модулем ввода-вывода.

Модуль ввода/вывода, который берет на себя детальное управление ПУ и общается с ЦП только с помощью команд высокого уровня, называют каналом ввода/вывода или процессором ввода/вывода. Наиболее примитивный МВВ, требующий детального управления со стороны ЦП, называют контроллером ввода-вывода или контроллером устройства.

Если модулю ввода-вывода предоставлены права процессора со специализированным набором команд, ориентированных на операции ввода-вывода, то такой МВВ называют каналом ввода-вывода (КВВ).

Если в состав КВВ входит собственная локальная память, то модуль ввода-вывода называют процессором ввода-вывода (ПВВ). При этом возможно управление множеством устройств в/выв с минимальным привлечением ЦП.

В принципе различие между каналом и процессором ввода/вывода достаточно условно, поэтому в дальнейшем будем пользоваться термином "канал".


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: