Спецификация USB.Rev1.0



Каналы - часть 2


Клиентское программного обеспечения обычно запрашивает передачу данных в канале с помощью Пакетов Запроса Ввода - Вывода (IRPs) и затем или ждет или сообщает что они завершены (A software client normally requests data transfers via I/O Request Packets (IRPs) to a pipe and then either waits or is notified when they are completed). Подробности относительно IRPs определены в операционной системе специфическим способом. Эта спецификация использует термин простого обращения к запросу идентификации клиентским программным обеспечением для перемещения данных между собой (хостом) и конечной точкой устройства в соответствующем направлении(This specification uses the term to simply refer to an identifiable request by a software client to move data between itself (on the host) and an endpoint of a device in an appropriate direction). Клиентское программного обеспечения может заставлять канал возвратить все ожидающие обработки IRPs, если это требуется. Клиентскому программному обеспечению сообщают, что IRP завершен, когда транзакции шины, связанные с ним завершены или успешно или из-за ошибок.

Если нет никаких задержанных(pending) IRPs или движения в канале, то канал неактивен и хост контроллер не будет выполнять никаких действие относительно канала; то есть, конечная точка для такого канала не будет видна любыми транзакциями шины направленными к ней. Какие либо действия будут выполняться шиной связанные с каналом тогда, когда IRPs - задержаны для этого канала.

Если в не-изохронном канале происходит условие ОСТАНОВА(STALL) (обратитесь к Главе 8) или происходят три ошибки на шине в любом пакете IRP, IRP отменяется/удаляется, все ожидающие обработки IRPs также удаляются, и никакой последующие IRPs не принимаются, пока клиентское программного обеспечения не восстановится в рабочее состояния (в зависимости от способа заложенного при разработки) и подтвердит ОСТАНОВ(STALL) или условие ошибки через вызов USBD. Соответствующее состояние информирует клиентское программного обеспечения касательно специфического результата IRP для версий ошибки ОСТАНОВА (обратитесь к Главе 10)(An appropriate status informs the software client of the specific IRP result for error versus STALL ).  Поведение при изохронном канале описано в Разделе 5.6.




Содержание  Назад  Вперед