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