КОМПЬЮТЕРНОЕ ЖЕЛЕЗО
HARDWARE FOR PC

Последовательные шины USB и FireWire

ниже). Кроме нулевой точки, устройства-функции могут иметь дополнительные точки, реализующие полезный обмен данными. Низкоскоростные устройства могут иметь до двух дополнительных точек, полноскоростные — до 15 точек ввода и 15 точек вывода (протокольное ограничение). Дополнительные точки (а именно они и пре¬доставляют полезные для пользователя функции) не могут быть использованы до их конфигурирования (установления согласованного с ними канала).
Каналом (pipe) в USB называется модель передачи данных между хост-контрол¬лером и конечной точкой устройства. Имеются два типа каналов: потоки и сооб¬щения. Поток (stream) доставляет данные от одного конца канала к другому, он всегда однонаправленный. Один и тот же номер конечной точки может использо¬ваться для двух поточных каналов — ввода и вывода. Поток может реализовывать следующие типы обмена: передача массивов, изрхронный и прерывания. Сообще¬ние (message) имеет формат, определенный спецификацией USB. Хост посылает запрос к конечной точке, после которого передается (принимается) пакет сообще¬ния, за которым следует пакет с информацией состояния конечной точки. Последу¬ющее сообщение нормально не может быть послано до обработки предыдущего, но при отработке ошибок возможен сброс необслуженных сообщений. Двусторон¬ний обмен сообщениями адресуется к одной и той же конечной точке.
С каналами связаны характеристики, соответствующие конечной точке (полоса пропускания, тип сервиса, размер буфера и т. п.). Каналы организуются при кон¬фигурировании устройств USB. Для каждого включенного устройства существу¬ет канал сообщений (Control Pipe 0), по которому передается информация кон¬фигурирования, управления и состояния.
4.1.3. Протокол
Все обмены (транзакции) с устройствами USB состоят из двух-трех пакетов. Каж¬дая транзакция планируется и начинается по инициативе контроллера, который посылает пакет-маркер (token packet). Он описывает тип и направление переда¬чи, адрес устройства USB и номер конечной точки. В каждой транзакции возмо¬жен обмен только между адресуемым устройством (его конечной точкой) и хос¬том. Адресуемое маркером устройство распознает свой адрес и готовится к обмену-Источник данных (определенный маркером) передает пакет данных (или уведом-ление об отсутствии данных, предназначенных для передачи). После успешного" приема пакета приемник данных посылает пакет квитирования (handshake packet )? Последовательность пакетов в транзакциях иллюстрирует рис. 4.4. Хост-контроллер организует обмены с устройствами согласно своему плану рас¬пределения ресурсов.

Hosted by uCoz