Организация ввода-вывода. Обмен информацией ЭВМ с внешними устройствами

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

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

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

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

Общие принципы организации ввода-вывода

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

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

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

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

Должна быть обеспечена унификация программирования операций ввода-вывода для максимальной независимости

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

Следующим фактором, усложняющим реализацию обмена данными с внешними устройствами, является то, что между различными внешними устройствами имеет место очень большой разброс в объемах передаваемой информации (сравним клавиатуру и внешнее запоминающее устройство) и в скорости формирования и обработки информации (сравним механический принтер и видеомонитор); при этом практически всегда быстродействие внешнего устройства значительно ниже, чем у процессора ЭВМ.

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

Для решения указанных проблем при реализации обмена информацией между ЭВМ и внешними (периферийными) устройствами предназначена подсистема ввода-вывода ЭВМ.

На рис. 12.1 показана схема подключения внешних устройств к внутренним информационным шинам ЭВМ, его центральному процессору и памяти.

Схема подключения внешних устройств к ЭВМ

Рис. 12.1. Схема подключения внешних устройств к ЭВМ

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

К ЭВМ внешние устройства подключаются через так называемые порты ввода-вывода. Для сопряжения внешнего устройства с конкретной ЭВМ служат так называемые интерфейсные устройства (или просто интерфейсы). Расположенные в ЭВМ интерфейсные устройства представляют собой совокупность линий и шин, сигналов, электронных схем и алгоритмов (протоколов передачи и обработки данных), решающих важную задачу обеспечения унификации и стандартизации обмена данными между ЭВМ и различными видами внешних устройств. Интерфейс ввода-вывода управляет действиями определенного вида внешнего устройства в соответствии с командами процессора ЭВМ: преобразует данные из внутреннего представления ЭВМ в форматы, используемые конкретным внешним устройством, и выполняет обратное преобразование в формат, используемый процессором конкретной ЭВМ. Конструктивно внешние устройства обычно выполняются как самостоятельные устройства, размещаемые отдельно от ЭВМ, интерфейсы же с портами ввода- вывода почти всегда являются частью конструкции ЭВМ.

Наличие в составе различных ЭВМ стандартизованных унифицированных интерфейсов позволяет разработчикам и производителям внешних устройств для обеспечения возможности использования внешнего устройства с разными ЭВМ ориентироваться не на особенности этих ЭВМ, а на конкретный тип используемого в ней интерфейса.

С другой стороны, для выполняемой процессором программы, точнее, для программиста, программирующего операцию ввода- вывода, порт ввода-вывода также представляет собой регистр или набор регистров, содержимое которых является программно-доступным для чтения/записи во время операций ввода-вывода.

Передача (вывод) числа или кода из ЭВМ во внешнее устройство фактически сводится к их передаче из регистра процессора или ячейки памяти ЭВМ в регистр данных интерфейса внешнего устройства. Аналогично, прием (ввод) информации из внешнего устройства заключается в чтении процессором содержимого (числа или кода) регистра данных конкретного интерфейса внешнего устройства.

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

В ЭВМ может использоваться три основных режима обмена информацией с внешними устройствами.

  • 1. Обмен данными с опросом готовности устройства — передача или прием данных по инициативе и под управлением программы, выполняемой центральным процессором ЭВМ.
  • 2. Обмен данными в режиме прерывания программы. Инициатива обмена информацией в этом случае принадлежит внешнему устройству, для этого им осуществляется прерывание выполняемой процессором программы и принудительный перевод процессора на выполнение программы обслуживания внешнего устройства, затребовавшего прерывание, по окончании которой процессор возвращается к выполнению прерванной программы.
  • 3. Обмен данными в режиме прямого доступа к памяти (ПДП). В этом режиме управление обменом полностью берет на себя контроллер внешнего устройства. Этот режим позволяет осуществлять наиболее быстрый обмен данными непосредственно между основной памятью ЭВМ и интерфейсом ввода- вывода внешнего устройства без участия процессора.

Рассмотрим особенности этих режимов обмена информацией более подробно.

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >