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

       

Ограничения Доступа к Шине


Передачи Управления могут использоваться полно скоростными и низко скоростными устройствами USB.

Конечная точка не имеет никакого способа указать желаемую частоту доступа к шине для канала управления. USB уравновешивает требования доступа к шине всех каналов управления и специфических отложенных IRPs, чтобы потратить “самые большие усилия”, при доставки данных между клиентским программным обеспечением и функциями (USB balances the bus access requirements of all control pipes and the specific IRPs that are pending to provide “best effort” delivery of data between client software and functions).

USB требует, чтобы часть каждого кадра была зарезервирована, чтобы быть доступной для использования передачами управления следующим образом (USB requires that part of each frame be reserved to be available for use by control transfers as follows):

  • Если предпринятые( are attempted) передачи управления (в зависимом от реализации режима) потребляют меньше чем 10 %  времени кадра, оставшееся время может использоваться, чтобы поддерживать bulk передачи (обратитесь к Разделу 5.8).
  • Передача управления, которая была предпринята и должна быть повторена, может быть повторена в текущем или будущем кадре; то есть, не надо посылать требование, чтобы осуществить повторение в том же самом кадре (A control transfer that has been attempted and needs to be retried can be retried in the current or a future frame; i.e., it is not required to be retried in the same frame).
  • Если имеется больше передач управления чем зарезервированного времени, но имеется дополнительный кадр времени, который не используется передачами типа изохронных или прерываний, хост контроллер может перемещать дополнительные передачи управления, когда они есть(If there are more control transfers than reserved time, but there is additional frame time that is not being used for isochronous or interrupt transfers, a host controller may move additional control transfers as they are available).
  • Если имеется слишком много отложенных передач управления чем доступных кадров времени,  управляющие передачи выбираются для перемещения в шине как соответствующие (If there are too many pending control transfers than available frame time, control transfers are selected to be moved over the bus as appropriate.)

  • Если имеются задержки передач управления для нескольких конечных точек, передачи управления для различных конечных точек выбраются согласно справедливой стратегии доступа(fair access policy), которая зависит от реализации хост контроллера.


  • Транзакция передачи управления, которая часто повторяется, не должна ожидать пропуска, несправедливо участвуя в кадре времени (A transaction of a control transfer that is frequently being retried should not be expected to consume an unfair share of the frame time).


  • Эти требования позволяют передачи управления между хостом и устройствами регулярно перемещаться в шине с "самым большим эфектом".

    Все передачи управления задержанные в системе борются за одно и то же самое доступное время шины. Из-за этого, время шины выделенное для передач управления к специфической конечной точке, может быть изменено программным обеспечением системы USB, по своему усмотрению. ( Because of this, the bus time made available for control transfers to a particular endpoint can be varied by USB system software at its discretion.) Конечная точка и клиентское программное обеспечение не могут присвоить специфическую скорость обслуживания для передач управления (An endpoint and its client software cannot assume a specific rate of service for control transfers). Время шины выделенное клиентскому программному обеспечению и конечной точке, может быть изменено, поскольку другие устройства вставляются и удаляются из системы, а также поскольку передачи управления запрашиваются другими конечными точками устройства.

    Частота шины и время кадра ограничивают максимальное число успешных передач управления, внутри кадра для любой системы USB, до менее чем 29 при полно скоростной 8 байтовой полезной нагрузки данных или менее  четырех при низко скоростной 8 байтовой полезной нагрузки данных. Таблица 5-1 содержит информацию относительно различного размера полно скоростных передач управления и максимального числа передач, возможных в кадре. Эта таблица была сгенерирована, принимая транзакцию стадии данных состояния нулевой длины и одну транзакцию стадии данных (This table was generated assuming zero length status data stage transaction and one data stage transaction). Таблица иллюстрирует возможную мощность двух полезных нагрузок данных меньших или равных размеру максимально допустимой полезной нагрузки данных (The table illustrates the possible power of two data payloads less than or equal to the allowable maximum data payload sizes).



    Table 5-1.  Ограничения передачи в полно скоростном режиме



    Сохранение 10 % кадра для передач управления означает, что в системе с  полностью распределенным времением шины, все полно скоростные передачи управления в системе борятся за номинальные три передачи управления в кадре (The 10% frame reservation for control transfers means that in a system with bus time fully allocated, all full speed control transfers in the system contend for a nominal three control transfers per frame). Так как подсистема USB дополнено использует передачи управления в целях конфигурации любых других передач управления , другое клиентское программное обеспечение может запрашивать, данное клиентское программного обеспечение, и функция не должна ожидать, а использовать эту же полную пропускную способность для собственных целей управления.(Since the USB subsystem uses control transfers for configuration purposes in addition to whatever other control transfers other client software may be requesting, a given software client and its function should not expect to be able to make use of this full bandwidth for its own control purposes. ) Хост контроллеры также свободны, при определении того как индивидуальные транзакции шины для специфических передач управления перемещаются поверх шины внутри и поперек кадров(Host controllers are also free to determine how the individual bus transactions for specific control transfers are moved over the bus within and across frames.) Конечная точка могла бы видеть все транзакции шины для передачи управления внутри того же самого кадра или распространяться поперек нескольких разобщенных кадров. (An endpoint could see all bus transactions for a control transfer within the same frame or spread across several discontiguous frames.) В заключение, хост контроллер, по различным причинам реализации, не способен обеспечить теоретическое максимальное число передач управления в кадре. (Finally, a host controller, for various implementation reasons, may not be able to provide the theoretical maximum number of control transfers per frame.)

    И полно скоростная и низко скоростная передача управления, борются за то же самое доступное время кадра. Низко скоростные передачи управления просто тратят больше времени при передачи. Таблица 5-2 содержит информацию относительно различного размера низко скоростных передач управления и максимального числа передач, возможных в кадре. Также для обеих скоростей, передача управления составлена из нескольких пакетов, пакеты могут быть распространены более чем в нескольких кадрах, которые разделят требуемое время шины, между несколькими кадрами. (Also for both speeds, since a control transfer is composed of several packets, the packets can be spread over several frames to spread the bus time required across several frames.)

    Таблеца 5-2.  Передача управляющих сообщений в медленном режиме




    Содержание раздела