Адресное пространство системы ввода/вывода
Как и обращение к памяти, операции ввода/вывода также предполагают наличие некоторой системы адресации, позволяющей выбрать один из модулей СВВ, a также одно из подключенных к нему внешних устройств. Адрес модуля и ВУ является составной частью соответствующей команды, в то время как расположение данных на внешнем устройстве определяется пересылаемой на ВУ информацией. Адресное пространство ввода/вывода может быть совмещено с адресным пространством памяти или быть выделенным. При совмещении адресного пространства для адресации модулей ввода/вывода отводится определенная область адресов (рис. 8.2). Обычно все операции с модулем ввода/вывода осуществляются с использованием входящих в него внутренних регистров: управления, состояния, данных. Фактически процедура ввода/вывода сводится к записи информации в одни регистры МВВ и считыванию ее из других регистров. Это позволяет рассматривать регистры МВВ как ячейки основной памяти и работать с ними с помощью обычных команд обращения к памяти, при этом в системе команд ВМ вообще могут отсутствовать специальные команды ввода и вывода. Так, модификацию регистров МВВ можно производить непосредственно с помощью арифметических и логических команд. Адреса регистрам МВВ назначаются в области адресного пространства памяти, отведенной под систему ввода/вывода.
Рис. 8.2. Распределение совмещенного адресного пространства Такой подход представляется вполне оправданным, если учесть, что ввод/вывод обычно составляет малую часть всех операций, выполняемых вычислительной машиной, чаще всего не более 1% от общего числа команд в программе. Реализация концепции совмещенного адресного пространства в ВМ с кэш-памятью и виртуальной адресацией сопряжена с определенными проблемами. В частности, усложняется отображение виртуального адреса устройства ввода/вывода на физическое ВУ. Сложности также возникают и с кэшированием регистров МВВ.
Сформулируем преимущества и недостатки совмещенного адресного пространства. Достоинства совмещенного адресного пространства:
Недостатки совмещенного адресного пространства:
Совмещенное адресное пространство используется в вычислительных машинах MIPS и SPARC.
В случае выделенного адресного пространства для обращения к модулям ввода/вывода применяются специальные команды и отдельная система адресов. Это позволяет разделить шины для работы с памятью и шины ввода/вывода, что дает возможность совмещать во времени обмен с памятью и ввод/вывод. Кроме тог:., адресное пространство памяти может быть использовано по прямому назначению в полном объеме. В вычислительных машинах фирмы IBM и микроЭВМ на базе процессоров фирмы Intel система ввода/вывода, как правило, организуется в соответствии с концепцией выделенного адресного пространства.
Достоинства выделенного адресного пространства:
Внешние устройства Связь ВМ с внешним миром осуществляется с помощью самых разнообразных, внешних устройств. Каждое ВУ подключается к МВВ посредством индивидуальной шины. Интерфейс, по которому организуется такое взаимодействие МВВ и ВУ, часто называют малым. Индивидуальная шина обеспечивает обмен данными и управляющими сигналами, а также информацией о состоянии участников обмена. Внешнее устройство, подключенное к МВБ, обычно называют периферийным устройством (ПУ). Все множество ПУ можно свести к трем категориям [200]:
Примерами первой группы служат видеотерминалы и принтеры. Ко второй группе причисляются внешние запоминающие устройства (магнитные и оптические диски, магнитные ленты и т. п.), датчики и исполнительные механизмы. Отметим двойственную роль внешних ЗУ, которые, с одной стороны, представляют собой часть памяти ВМ, а с другой — являются внешними устройствами. Наконец, устройства третьей категории позволяют ВМ обмениваться информацией с удаленными объектами, которые могут относиться к двум первым группам. В роли удаленных объектов могут выступать также другие ВМ.
Рис. 8.3. Структура внешнего устройства
Обобщенная структура ВУ показана на рис. 8.3. Интерфейс с МВБ реализуется в виде сигналов управления, состояния и данных. Данные представлены совокупностью битов, которые должны быть переданы в модуль ввода/вывода или получены из него. Сигналы управления определяют функцию, которая должна быть выполнена внешним устройством. Это может быть стандартная для всех устройств функция — посылка данных в МВБ или получение данных из него, либо специфичная для данного типа ВУ функция, такая, например, как позиционирование головки магнитного диска или перемотка магнитной ленты. Сигналы, состояния характеризуют текущее состояние устройства, в частности включено ли ВУ и готово ли оно к передаче данных. Логика управления — это схемы, координирующие работу ВУ в соответствии с направлением передачи данных. Задачей преобразователя является трансформация информационных сигналов, имеющих самую различную физическую природу, в электрические сигналы, а также" обратное преобразование. Обычно совместно с преобразователем используется буферная память, обеспечивающая временное хранение данных, пересылаемых между МВБ и ВУ. Модули ввода/вывода Функции модуля Модуль ввода/вывода в составе вычислительной машины отвечает за управление одним или несколькими ВУ и за обмен данными между этими устройствами с одной стороны, и основной памятью или регистрами ЦП — с другой. Основные функции МВВ можно сформулировать следующим образом:
Локализация данных Под локализацией данных будем понимать возможность обращения к одному из ВУ, а также адресации данных на нем. Адрес ВУ обычно содержится в адресной части команд ввода/вывода. Как уже отмечалось, в состав СВВ могут входить несколько модулей ввода/вывода. Каждому модулю назначается определенный диапазон адресов, независимо от того, является ли пространство адресов совмещенным или раздельным. Старшие разряды в адресах диапазона, выделенного модулю, обычно одинаковы и обеспечивают выбор одного из МВБ в рамках системы ввода/вывода. Младшие разряды адреса представляют собой уникальные адреса регистров данного модуля или подключенных к нему ВУ.
Одной из функций МВБ является проверка вхождения поступившего по шине адреса в выделенный данному модулю диапазон адресов. При положительном ответе модуль должен обеспечить дешифровку поступившего адреса и перенаправление информации к адресуемому объекту или от него. Для простейших внешних устройств (клавиатура, принтер и т. п.) адрес ВУ однозначно определяет и расположение данных на этом устройстве. Для более сложных ВУ, таких как внешние запоминающие устройства, информация о местонахождении данных требует детализации. Так, для ЗУ на магнитной ленте необходимо указать номер записи, а для магнитного диска — номер цилиндра, номер сектора и т. п. Эта часть адресной информации передается в МВВ не по шине адреса, а в виде служебных сообщений, пересылаемых по шине данных. Обработка такой информации в модуле, естественно, сложнее, чем выбор нужного регистра или ВУ. В частности, она может требовать от МВВ организации процедуры поиска на носителе информации.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|