Общий принципы построения СВВ:
1. Передача в ПК осуществляется по системной магистрали, которые параллельно подключают все модули и устройства ПК.
2. В каждый момент времени функционирования ПК передача данных может осуществляться только между устройствами, одной из которых является источником, а другой приемником. В ПК система ввода\вывода информации построена на принципе разделения во времени системной магистрали между источником и приемником информации.
3. Передача данных между источником и приемником информации инициируется управляющими сигналами с помощью которых обеспечивается задание режима обмена данными, проверка состояния готовности устройств к обмену, выдачи и приема кодов.
4. Управляющий сигнал системы ввода\вывода данных ПК вырабатываются командами обмена информации между МП и внешними устройствами.
5. Выработку управляющих сигналов осуществляется с помощью электронных схем, которые включают схемы синхронизации, схему управления системной магистралью, и контроллеры внешних устройств.
В ПК предусмотрено 3 способа организации ввода\вывода данных:
1. Программный ввод\вывод.
2. Ввод\вывод про прерываниям.
3. Ввод\вывод в режиме прямого доступа к памяти (ПДП).
В первых двух случаях в обмене данными между ОП и внешним устройством обязательно участвует МП в качестве буфера для передачи данных. В третьем случае обмен данными между ОП и внешним устройством осуществляется без участия МП. Для этой цели предназначен специализированный процессор, называемый контроллером ПДП.
Логическая структура контроллера ВУ позволяет интерпретировать внешние устройства, подключаемый к системной магистрали ПК, как совокупность адресный регистров, включающих регистр приемника, регистр источника, регистр состояния и регистр управления.
В операциях обмена данными ЦП ПК взаимодействует не с конкретными внешними устройствами, а соответствующими регистрами контроллера.
Фактически ввод данных от ВУ или вывод данных во внешнее устройство осуществляет соответствующий контроллер с помощью специальных средств управления.
Обмен данными в ПК осуществляется под управление программ ввода\вывода (драйверы ввода\вывода) для каждого внешнего устройства разрабатывается своя программа, зависящая от системы команд МП, типа внешнего устройства и структуры системной магистрали программа ввода\вывода оперирует с регистрами контроллеров ВУ и выполняют следующие функции по обмену данными:
1. Проверку состояния внешнего устройства, чтобы МП мог принять решение о передаче данных.
2. Посылку управляющих команд во внешнее устройство с помощью оно настраивается на соответствующий режим работы.
3. Передачу данных по системной магистрали во внешнее устройство или из него.
Основная программа |
Ввод\вывод задачи |
Модификация текущего адреса буфера ПУ |
Передача символа àМП+ПУ |
ПУ готово |
Ввод состояния ПУ |
Загрузка процессов буфера ПУ |
Основная программа |
Данные передаются посимвольно, до момента приема кода, завершения передачи. Перед началом передачи очередного символа МП всегда проверяют состояние ВУ и его готовность к передаче.
В ПЭВМ используется большое количество системных шин, которые различаются архитектурой, но используют только параллельный способ обмена информацией.
Передача данных – это физический перенос данных, те цифрового битового потока в виде сигналов от точки к точке или от точки к нескольким точкам.
Виды:
Последовательный
Параллельный
Последовательная передача – это последовательная отправка битов по одному каналу это требует меньшей обработки сигнала и меньше вероятность ошибки. При это скорость передачи данных медленней, чем при параллельной.
Использование последовательных линий связи для обмена данными с внешними устройствами возлагают на контроллеры внешних устройств. Восьми-разрядный адресуемый буферный регистр контроллера служит для временного хранения байта данных до его загрузки и сдвига регистра. Запись байта данных в буферный регистр из шины данных системного интерфейса производится также, как и в параллельном интерфейсе, те только при наличии единицы в одноразрядном адресуемом регистре состояния контроллера, единица в регистре состояния указывает на готовность контроллера принять очередной байт в буферный регистр. Содержимое регистра передается в процессор по одной из линии шин данных системного интерфейса и используется для формирования управляющего сигнала системного интерфейса “готовность ВУ”. При записи очередного байта в буферный регистр А1 обнуляется регистр состояния А2. Преобразование данных из параллельного формата в котором они поступили в буферный регистр контроллера и системного интерфейса в последовательной и производится в сдвиговом регистре или с помощью генератора тактовых импульсов и двоичного трехразрядного счетчика импульсов следующим образом:
Последовательная линия связи контроллера с ВУ подключается к выходу младшего разряда сдвигового регистра. По очередному тактовому импульсу содержимое сдвигового регистра сдвигается на 1 разряд вправо и в линии связи в “данные”. Выдается выражение очередного разряда. Одновременно с сдвигом в ВУ по отдельной линии “синхронизации” передается тактовый импульс. Таким образом, каждый передаваемый по линии данные бит информации сопроважется синхронизирующим сигналом по линии синхронизации, чтобы обеспечить, что обеспечивает его однозначное восприятие на приемном конце последовательной линии связи. Синхронная последовательная передача отдельных битов в линию связи должна производиться без перерыва и следующий байт данных должен быть загружен в буферный регистр и системного интерфейса, за время не превышающие время передачи 8 битов в последовательную линию связи. При записи байта данных в буферный регистр обнуляется регистр состояния контроллера. Ноль в этом регистре указывает, что в линию связи передается байт данных из сдвигового регистра…
… Простой контроллер для последовательного синхронного приема данных из ВУ состоит из тех же компонентов, что и контроллер для синхронной последовательной передачи, за исключением генератора тактовых импульсов в данные поступающие из линий связи в последовательном коде преобразуется в контроллере в параллельный код с помощью сдвигового регистра и трехразрядного двоичного счетчика тактовых импульсов.