Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Адресное пространство системы ввода/вывода




Как и обращение к памяти, операции ввода/вывода также предполагают наличие некоторой системы адресации, позволяющей выбрать один из модулей СВВ, a также одно из подключенных к нему внешних устройств. Адрес модуля и ВУ является составной частью соответствующей команды, в то время как расположение дан­ных на внешнем устройстве определяется пересылаемой на ВУ информацией.

Адресное пространство ввода/вывода может быть совмещено с адресным про­странством памяти или быть выделенным. При совмещении адресного пространства для адресации модулей ввода/выво­да отводится определенная область адресов (рис. 8.2). Обычно все операции с моду­лем ввода/вывода осуществляются с использованием входящих в него внутренних регистров: управления, состояния, данных. Фактически процедура ввода/вывода сводится к записи информации в одни регистры МВВ и считыванию ее из других регистров. Это позволяет рассматривать регистры МВВ как ячейки основной па­мяти и работать с ними с помощью обычных команд обращения к памяти, при этом в системе команд ВМ вообще могут отсутствовать специальные команды ввода и вывода. Так, модификацию регистров МВВ можно производить непосредствен­но с помощью арифметических и логических команд. Адреса регистрам МВВ на­значаются в области адресного пространства памяти, отведенной под систему вво­да/вывода.

Рис. 8.2. Распределение совмещенного адресного пространства

Такой подход представляется вполне оправданным, если учесть, что ввод/вы­вод обычно составляет малую часть всех операций, выполняемых вычислитель­ной машиной, чаще всего не более 1% от общего числа команд в программе.

Реализация концепции совмещенного адресного пространства в ВМ с кэш-па­мятью и виртуальной адресацией сопряжена с определенными проблемами. В част­ности, усложняется отображение виртуального адреса устройства ввода/вывода на физическое ВУ. Сложности также возникают и с кэшированием регистров МВВ.

Сформулируем преимущества и недостатки совмещенного адресного простран­ства.

Достоинства совмещенного адресного пространства:

  • расширение набора команд для обращения к внешним устройствам, что позво­ляет сократить длину программы и повысить быстродействие;
  • значительное увеличение количества подключаемых внешних устройств;
  • возможность внепроцессорного обмена данными между внешними устройства­ми, если в системе команд есть команды пересылки между ячейками памяти; возможность обмена информацией не только с аккумулятором, но и с любым регистром центрального процессора.

Недостатки совмещенного адресного пространства:

  • сокращение области адресного пространства памяти;
  • усложнение декодирующих схем адресов в СВВ;
  • трудности распознавания операций передачи информации при вводе/выводе среди других операций. Сложности в чтении и отладке программы, в которой простые команды вызывают выполнение сложных операций ввода/вывода;
  • трудности при построении СВВ на простых модулях ввода/вывода: сигналя управления не смогут координировать сложную процедуру ввода/вывода. По­этому МВВ часто должны генерировать дополнительные сигналы под управ­лением программы.

Совмещенное адресное пространство используется в вычислительных маши­нах MIPS и SPARC.

 

В случае выделенного адресного пространства для обращения к модулям вво­да/вывода применяются специальные команды и отдельная система адресов. Это позволяет разделить шины для работы с памятью и шины ввода/вывода, что дает возможность совмещать во времени обмен с памятью и ввод/вывод. Кроме тог:., адресное пространство памяти может быть использовано по прямому назначению в полном объеме. В вычислительных машинах фирмы IBM и микроЭВМ на базе процессоров фирмы Intel система ввода/вывода, как правило, организуется в со­ответствии с концепцией выделенного адресного пространства.

Достоинства выделенного адресного пространства:

  • адрес внешнего устройства в команде ввода/вывода может быть коротким. В большинстве СВВ количество внешних устройств намного меньше количе­ства ячеек памяти. Короткий адрес ВУ подразумевает такие же короткие ко­манды ввода/вывода и простые дешифраторы;
  • программы становятся более наглядными, так как операции ввода/вывода вы­полняются с помощью специальных команд;
  • разработка СВВ может проводиться отдельно от разработки памяти, Недостатки выделенного адресного пространства: ввод/вывод производится только через аккумулятор центрального процессо­ра. Для передачи информации от ВУ в РОН, если аккумулятор занят, требуется выполнение четырех команд (сохранение содержимого аккумулятора, be из ВУ, пересылка из аккумулятора в РОН, восстановление содержимого аккумулятора);
  • перед обработкой содержимого ВУ это содержимое нужно переслать в ЦП.

Внешние устройства

Связь ВМ с внешним миром осуществляется с помощью самых разнообразных, внешних устройств. Каждое ВУ подключается к МВВ посредством индивидуальной шины. Интерфейс, по которому организуется такое взаимодействие МВВ и ВУ, часто называют малым. Индивидуальная шина обеспечивает обмен данными и управляющими сигналами, а также информацией о состоянии участников обмена. Внешнее устройство, подключенное к МВБ, обычно называют периферийным ус­тройством (ПУ). Все множество ПУ можно свести к трем категориям [200]:

  • для общения с пользователем;
  • для общения с ВМ;
  • для связи с удаленными устройствами.

Примерами первой группы служат видеотерминалы и принтеры. Ко второй группе причисляются внешние запоминающие устройства (магнитные и оптичес­кие диски, магнитные ленты и т. п.), датчики и исполнительные механизмы. От­метим двойственную роль внешних ЗУ, которые, с одной стороны, представляют собой часть памяти ВМ, а с другой — являются внешними устройствами. Нако­нец, устройства третьей категории позволяют ВМ обмениваться информацией с удаленными объектами, которые могут относиться к двум первым группам. В роли удаленных объектов могут выступать также другие ВМ.

 

Рис. 8.3. Структура внешнего устройства

 

Обобщенная структура ВУ показана на рис. 8.3. Интерфейс с МВБ реализует­ся в виде сигналов управления, состояния и данных. Данные представлены сово­купностью битов, которые должны быть переданы в модуль ввода/вывода или по­лучены из него. Сигналы управления определяют функцию, которая должна быть выполнена внешним устройством. Это может быть стандартная для всех устройств функция — посылка данных в МВБ или получение данных из него, либо специ­фичная для данного типа ВУ функция, такая, например, как позиционирование головки магнитного диска или перемотка магнитной ленты. Сигналы, состояния характеризуют текущее состояние устройства, в частности включено ли ВУ и го­тово ли оно к передаче данных.

Логика управления — это схемы, координирующие работу ВУ в соответствии с направлением передачи данных. Задачей преобразователя является трансфор­мация информационных сигналов, имеющих самую различную физическую при­роду, в электрические сигналы, а также" обратное преобразование. Обычно совместно с преобразователем используется буферная память, обеспечивающая временное хранение данных, пересылаемых между МВБ и ВУ.

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

Функции модуля

Модуль ввода/вывода в составе вычислительной машины отвечает за управление одним или несколькими ВУ и за обмен данными между этими устройствами с од­ной стороны, и основной памятью или регистрами ЦП — с другой. Основные функ­ции МВВ можно сформулировать следующим образом:

  • локализация данных;
  • управление и синхронизация;
  • обмен информацией;
  • буферизация данных;
  • обнаружение ошибок.

Локализация данных

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

Адрес ВУ обычно содержится в адресной части команд ввода/вывода. Как уже отмечалось, в состав СВВ могут входить несколько модулей ввода/вывода. Каж­дому модулю назначается определенный диапазон адресов, независимо от того, является ли пространство адресов совмещенным или раздельным. Старшие раз­ряды в адресах диапазона, выделенного модулю, обычно одинаковы и обеспечива­ют выбор одного из МВБ в рамках системы ввода/вывода. Младшие разряды адреса представляют собой уникальные адреса регистров данного модуля или подклю­ченных к нему ВУ.

Одной из функций МВБ является проверка вхождения поступившего по шине адреса в выделенный данному модулю диапазон адресов. При положительном от­вете модуль должен обеспечить дешифровку поступившего адреса и перенаправ­ление информации к адресуемому объекту или от него.

Для простейших внешних устройств (клавиатура, принтер и т. п.) адрес ВУ однозначно определяет и расположение данных на этом устройстве. Для более сложных ВУ, таких как внешние запоминающие устройства, информация о место­нахождении данных требует детализации. Так, для ЗУ на магнитной ленте необ­ходимо указать номер записи, а для магнитного диска — номер цилиндра, номер сектора и т. п. Эта часть адресной информации передается в МВВ не по шине ад­реса, а в виде служебных сообщений, пересылаемых по шине данных. Обработка такой информации в модуле, естественно, сложнее, чем выбор нужного регистра или ВУ. В частности, она может требовать от МВВ организации процедуры поис­ка на носителе информации.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...