Основы микропроцессорной техники

2. Организация обмена информацией


«Структура курса | Глава 1 | Глава 2 | Глава 3 | Глава 4 | Глава 5 | Глава 6 | Раздел 7 | Глава 8 | Дополнения

Раздел 2 - Страницы: « | 1 | 2 | 3 | 4 | 5 | 6

2.4.3. Функции устройств ввода / вывода

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

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

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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


«Структура курса Раздел 2 - Страницы: « | 1 | 2 | 3 | 4 | 5 | 6