- •ВВЕДЕНИЕ
- •1. ПАРАЛЛЕЛЬНЫЙ ИНТЕРФЕЙС — LPT-ПОРТ
- •1.1. Традиционный LPT-порт
- •1.2. Расширения параллельного порта
- •1.3. Стандарт IEEE 1284
- •1.3.1. Полубайтный режим ввода — Nibble Mode
- •1.3.2. Двунаправленный байтный режим — Byte Mode
- •1.3.3. Режим EPP
- •1.3.4. Режим ЕСР
- •1.3.6. Согласование режимов IEEE 1284
- •1.3.7. Физический и электрический интерфейсы
- •1.3.7. Развитие стандарта IEEE 1284
- •1.5. Параллельный порт и PnP
- •2. ПОСЛЕДОВАТЕЛЬНЫЙ ИНТЕРФЕЙС — СОМ-ПОРТ
- •2.1. Интерфейс RS-232C
- •2.2. Родственные интерфейсы и преобразователи уровней
- •2.3. Асинхронный режим передачи
- •2.4. Управление потоком данных
- •2.5. Микросхемы асинхронных приемопередатчиков
- •3. БЕСПРОВОДНЫЕ ИНТЕРФЕЙСЫ
- •3.1. Инфракрасный интерфейс IrDA
- •3.2. Радиоинтерфейс Bluetooth
- •4. ПОСЛЕДОВАТЕЛЬНЫЕ ШИНЫ USB И FIRE WIRE
- •4.1. Шина USB
- •4.1.1. Организация шины USB
- •4.1.2. Модель передачи данных
- •4.1.3. Протокол
- •4.1.4. Типы передач данных
- •4.1.5. Синхронизация при изохронной передаче
- •4.1.6. Хост
- •4.2. Шина IEEE 1394 - FireWire
- •4.2.1. Физический уровень сети
- •4.2.2. Протокол IEEE 1394
- •4.2.3. Устройства и адаптеры 1394
- •5. ШИНА SCSI
- •5.1. Параллельные интерфейсы SCSI
- •5.1.1. Кабели, разъемы, сигналы
- •5.1.2. Терминаторы
- •5.1.3. Протокол шины
- •5.2. Интерфейс Fibre Channel
- •5.3. Хост-адаптер SCSI
- •6. ШИНЫ И КАРТЫ РАСШИРЕНИЯ
- •6.1. ШИНЫ ISA, EISA И PC/104
- •6.2. Шина PCI
- •6.2.1. Адресация устройств PCI
- •6.2.2. Протокол шины PCI
- •6.2.3. Команды шины, адресация памяти и ввода-вывода
- •6.2.4. Таймеры, задержки и буферы
- •6.2.5. Пропускная способность шины
- •6.2.6. Прерывания
- •6.2.7. Электрический интерфейс, слоты и карты PCI
- •6.2.9. Иные конструктивы с шиной PCI
- •6.2.10. Мосты PCI
- •6.4. Интерфейс LPC
- •6.5. Шины и карты расширения блокнотных ПК
- •6.5.1. Интерфейсы PCMCIA, PC Card и CardBus
- •7. СПЕЦИАЛИЗИРОВАННЫЕ ИНТЕРФЕЙСЫ ПЕРИФЕРИЙНЫХ УСТРОЙСТВ
- •7.1. Интерфейс клавиатуры
- •7.1.1. Интерфейс клавиатуры AT и PS/2
- •7.1.2. Контроллер интерфейса клавиатуры и мыши 8042/8242
- •7.1.3. Системная поддержка и программный интерфейс
- •7.2. Интерфейсы мыши
- •7.2.1. Последовательные мыши — MS Mouse и PC Mouse
- •7.2.2. Мышь PS/2
- •7.3. Интерфейсы принтеров и плоттеров
- •7.3.1. Параллельные интерфейсы – Centronics, IEEE 1284
- •7.3.2. Последовательные интерфейсы
- •7.3.3. Системная поддержка принтера
- •7.4. Интерфейсы графических адаптеров
- •7.4.1. Дискретный интерфейс RGB TTL
- •7.4.2. Аналоговые интерфейсы RGB
- •7.4.4. Цифровые интерфейсы P&D, DVI и DFP
- •7.4.6. Видеоинтерфейсы
- •7.5. Интерфейсы аудиоустройств
- •7.5.1. Аналоговые интерфейсы
- •7.5.2. Цифровые интерфейсы
- •7.5.3. ИНТЕРФЕЙС MIDI
- •7.6. Интерфейс игровых устройств — Game-порт
Обратная связь позволяет согласовать значения частот устройств с частотой шины. Асинхронный приемник должен явным образом сообщать хост-контроллеру желаемую частоту передачи данных относительно частоты (микро)кадров. Это позволит хостконтроллеру постоянно корректировать число передаваемых байт за каждый (микро)кадр, не допуская переполнения или опустошения буфера устройства-приемника. Адаптивный передатчик должен воспринимать информацию обратной связи, чтобы за каждый (микро)кадр генерировать ровно столько данных, сколько требуется хост-контроллеру. Для обратной связи в устройстве выделяется специальная конечная точка, через которую периодически передается информация о текущем значении желаемой относительной частоты.
В принципе контроллер USB может подстраивать частоту кадров, но, естественно, под частоту внутренней синхронизации только одного устройства. Подстройка осуществляется через механизм обратной связи, который позволяет изменять период кадра в пределах ±1 битового интервала.
4.1.6. Хост
У каждой шины USB должен быть один (и только один!) хост — компьютер с контроллером USB. Хост делится на три основных уровня.
♦ Интерфейс |
шины |
USB |
обеспечивает |
физический |
интерфейс |
и протокол |
шины. |
|||
Интерфейс |
шины |
реализуется |
хост-контроллером, |
имеющим |
встроенный |
корне |
||||
вой |
хаб, обеспечивающий |
точки физического подключения к |
шине |
(гнезда USB |
||||||
типа «А»). |
Хост-контроллер |
отвечает |
за генерацию (микро)кадров. |
На |
аппарат |
|||||
ном |
уровне |
хост-контроллер обменивается информацией с основной |
памятью |
|||||||
компьютера, |
используя прямое управление шиной (bus-mastering) с |
целью |
||||||||
минимизации нагрузки на центральный процессор. |
|
|
|
|
♦Система USB, используя хост-контроллер(ы), транслирует клиентское «видение» обмена данными с устройствами в транзакции, выполняемые с реальными устройствами шины. Система отвечает и за распределение ресурсов USB — полосы пропускания и мощности источников питания (для устройств, питающихся от шины). Система состоит из трех основных частей:
•Драйвер хост-контроллера — HCD (Host Controller Driver) — модуль, привязанный к конкретной модели контроллера, обеспечивающий абстрагирование драйвера USB и позволяющий в одну систему включать несколько разнотипных контроллеров.
•Драйвер USB — USBD (USB Driver) — обеспечивает основной интерфейс (USBDI) между
клиентами и устройствами USB. Интерфейс HCDI (Host Controller Driver Interface) между
USBD и HCD спецификацией USB не регламентируется. Он определяется разработчиками ОС и должен поддерживаться разработчиками хост-контроллеров, желающих иметь поддержку своих изделий конкретными ОС. Клиенты не могут пользоваться интерфейсом HCDI; для них предназначен интерфейс USBDI. USBD обеспечивает механизм обмена в виде пакетов IRP (I/O Request Packet — пакет запроса ввода-вывода), состоящих из запросов на транспортировку данных по заданному каналу. Кроме того, USBD отвечает за некоторое абстрактное представление устройства USB клиенту, которое позволяет выполнять конфи-
гурирование |
и |
управление |
состоянием |
устройств |
(включая и |
стандартное |
|||
управление |
через |
конечную |
точку |
«О»). |
Реализация |
интерфейса |
USBDI |
||
определяется |
операционной |
системой; |
в |
спецификации |
USB |
излагаются |
|||
толькообщие идеи. |
|
|
|
|
|
|
|
|
|
• Программное |
обеспечение хоста реализует |
функции, |
необходимые |
для |
функ |
ционирования системы USB в целом: обнаружение подключения и отключения устройств и выполнение соответствующих действий по этим событиям (загрузки требуемых драйверов), нумерацию устройств, распределение полосы пропускания и потребляемой мощности и т. п.
♦Клиенты USB — программные элементы (приложения или системные компоненты), взаимодействующие с устройствами USB. Клиенты могут взаимодействовать с любыми устройствами (их конечными точками), подключенными к системе USB. Однако система USB изолирует клиентов от непосредственного обмена с какими-либо портами (в пространстве ввода-вывода) или ячейками памяти, представляющими интерфейсную часть контроллера USB.