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