Железо ПК
Для начинающих пользователейДля любопытных пользователей
Для продвинутых пользователей
Трюки
Базовые операции с системной платойНастройка системной платы
Процессор
Память
Жесткие диски
Производительность жестких дисков
Видео
Устройства ввода/вывода
Загрузка
Настройка нового компьютера
Аппаратные интерфейсы ПК
ВведениеПараллельный интерфейс— LPT-порт
Последовательный интерфейс — СОМ-порт
Беспроводные интерфейсы
Последовательные шины USB и FireWire
Шина SCSI
Шины и карты расширения
Интерфейсы электронной памяти
Специализированные интерфейсы периферийных устройств
Интерфейсы устройств хранения
Интерфейсы компьютерных сетей
Вспомогательные последовательные интерфейсы и шины
Архитектурные компоненты IBM PC-совместимого компьютера
Интерфейсы питания, заземление и гальваническая развязка
Последовательный интерфейс — СОМ-порт
Иногда управление потоком пута¬ют с квитированием. Квитирование (handshaking) подразумевает посылку уведом-
2.4. Управление потоком данных
:
61
ления о получении элемента, в то время как управление потоком предполагает посылку уведомления о возможности или невозможности последующего приема данных. Зачастую управление потоком основано на механизме квитирования.
Аппаратный протокол управления потоком RTS/CTS (hardware flow control) ис¬пользует сигнал CIS, который позволяет остановить передачу данных, если при¬емник не готов к их приему (рис. 2.13). Передатчик «выпускает» очередной байт только при включенной линии CTS. Байт, который уже начал передаваться, задер¬жать сигналом CTS невозможно (это гарантирует целостность посылки). Аппарат¬ный протокол обеспечивает самую быструю реакцию передатчика на состояние приемника. Микросхемы асинхронных приемопередатчиков имеют не менее двух регистров в приемной части — сдвигающий, для приема очередной посылки, и хра¬нящий, из которого считывается принятый байт. Это позволяет реализовать обмен по аппаратному протоколу без потери данных.
Рис. 2.13. Аппаратное управление потоком
Аппаратный протокол удобно использовать при подключении принтеров и плот¬теров, если они его поддерживают. При непосредственном (без модемов) соеди¬нении двух компьютеров аппаратный протокол требует перекрестного соедине¬ния линий RTS — CTS.
При непосредственном соединении у передающего терминала должно быть обес¬печено состояние «включено» на линии CTS (соединением собственных линий RTS — CTS), в противном случае передатчик будет «молчать».
Применяемые в IBM PC приемопередатчики 8250/16450/16550 сигнал CTS аппарат-но не отрабатывают, а только показывают его состояние в регистре MSR (см. п. 2.5). Реализация протокола RTS/CTS возлагается на драйвер BIOS Int 14h, и назы¬вать его «аппаратным» не совсем корректно. Если же программа, пользующаяся СОМ-портом, взаимодействует с UART на уровне регистров (а не через BIOS), то обработкой сигнала CTS для поддержки данного протокола она занимается сама. Ряд коммуникационных программ позволяет игнорировать сигнал CTS (если не используется модем), и для них не требуется соединение входа CTS с выходом даже своего сигнала RTS. Однако существуют и иные приемопередатчики (например, 8251), в которых сигнал CTS отрабатывается аппаратно. Для них, а также для «чест¬ных» программ, использование сигнала CTS на разъемах (а то и на кабелях) обя¬зательно. Преимущество протокола RTS/CTS во времени реакции (по сравне¬нию с программным методом XON/XOFF) остается лишь для буферированной (в режиме FIFO) передачи.