7. Устройства ввода-вывода

7. Устройства ввода/вывода

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

Устройства ввода/вывода обмениваются информацией с магистралью по тем же принципам, что и память. Наиболее существенное отличие с точки зрения организации обмена состоит в том, что модуль памяти имеет в адресном пространстве системы много адресов (до нескольких десятков миллионов), а устройство ввода/вывода не более десяти (чаще всего один). Но модули памяти системы обмениваются информацией только с процессором (посредством магистрали), а устройства ввода/вывода взаимодействуют еще и с внешними устройствами, цифровыми или аналоговыми. Разнообразие устройств ввода/вывода неизмеримо больше, чем модулей памяти. Часто используются еще и другие названия для устройств ввода/вывода: устройства сопряжения, контроллеры интерфейсов, карты расширения, интерфейсные модули и т.д.

Объединяют все устройства ввода/вывода общие принципы организации узлов, которые осуществляют сопряжение с магистралью. Упрощенная структура интерфейсной части приведена на рис. 7.1. Как и в случае модуля памяти, она обязательно содержит схему селектора адреса, схему управления для обработки стробов обмена и буферы данных.

Самые простейшие устройства ввода/вывода выдают/принимают на внешнее устройство код данных в параллельном формате. Такие устройства ввода/вывода часто называют параллельными портами ввода/вывода. Они наиболее универсальны, то есть удовлетворяют потребности сопряжения с большим числом внешних устройств, поэтому их часто вводят в состав микропроцессорной системы в качестве стандартных устройств.

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

Описание: Структура простейшего устройства ввода/вывода.
Р
ис. 7.1.  Структура простейшего устройства ввода/вывода.

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

В составе микропроцессорных систем, как правило, выделяются три специальные группы устройств ввода/вывода:

  • устройства интерфейса пользователя (ввода информации пользователем и вывода информации для пользователя);
  • устройства ввода/вывода для длительного хранения информации;
  • таймерные устройства.

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

Устройства ввода/вывода для длительного хранения информации обеспечивают сопряжение микропроцессорной системы с дисководами (компакт-дисков или магнитных дисков), а также с накопителями на магнитной ленте.

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

Еще один важный класс устройств ввода/вывода — это устройства для подключения к информационным сетям (локальным и глобальным).

Иногда устройства ввода/вывода обеспечивают сопряжение с внешними устройствами с помощью аналоговых сигналов. Это бывает очень удобно, поэтому в состав некоторых микроконтроллеров даже вводят внутренние ЦАП и АЦП.

Способы передачи информации по линиям данных

 

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

Преимущества параллельного способа передачи очевидны и состоят в увеличении скорости обмена информацией.          

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

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

 

Возможны два режима последовательной передачи данных: синхронный и асинхронный.

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

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

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

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

Передатчик может начать пересылку символа в любой момент времени посредством генерирования стартового бита, перевода линии в состояние логического 0 на время, точно равное времени передачи бита. Затем происходит передача битов символа, начиная с младшего значащего бита, за которым следует дополнительный бит контроля по четности или нечетности. Далее с помощью стопового бита линия переводится в состояние логической 1.

Промежуток времени от начала стартового бита до конца стопового бита (стоповых бит) называется кадром.

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

7.5. Определение интерфейса. Виды интерфейсов

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

Для получения сведений о разновидностях интерфейсов, необходимо изучить следующий материал для чтения: ..Раздаточный  и дополнительный материалЛК6 виды интерфейсов.doc

 


Рекомендуемые лекции