Скачиваний:
31
Добавлен:
02.05.2014
Размер:
3.51 Mб
Скачать

Chapter 4

 

Data Flow Model

Wireless Universal Serial Bus Specification, Revision 1.0

transmit or receive window condition as defined in Section 5.4 by an appropriate control transfer (SetConfiguration, SetInterface, ClearEndpointFeature). A host sets the initial transmit or receive window state for isochronous pipes with the appropriate control transfer.

When an isochronous endpoint delivers a flow control event (as defined in 5.5.4) (e.g. NAK), the host must automatically resume transaction attempts with the function endpoint in the next service interval. Isochronous function endpoints do not use endpoint ready DNTS notifications.

Data may be discarded by the transmitter under the Wireless USB isochronous protocol. Each isochronous data packet contains an isochronous header that includes a presentation time. Gaps in the presentation time allow the receiver to detect when data has been discarded and how many packets have been discarded. The host uses an isochronous discard information element in the MMC to report discards to isochronous OUT endpoints. For some types of isochronous OUT endpoints the isochronous discard IE provides sufficient discard information and each presentation time does not need to be monitored, see Section 4.11 for a more detailed discussion of isochrony and some implementation examples. The host must discard data that is no longer usable by an isochronous OUT function endpoint. An isochronous IN function endpoint will be required to discard data if the channel quality has degraded and there is no buffering available (on the function) to store additional data.

Isochronous endpoints report the buffer size that is associated with the function endpoint. An isochronous IN endpoint device discards the oldest data in its buffer if this buffer size is exceeded. The host is responsible for not sending old data to an isochronous OUT endpoint based on presentation time. Section 4.11 provides examples and more detailed discussions of how buffering is used to add delay and increased short term error reliability to a wireless USB isochronous stream.

Wired isochronous endpoints never halt because the wired isochronous protocol does not include handshaking to report a halt condition. Wireless USB isochronous endpoints also must not return a STALL handshake.

4.7.4Isochronous Endpoint Host System Admission Decisions

Isochronous endpoints in the default interface setting are required to consume no bandwidth by reporting a maximum packet size of zero. The interface will have one or more alternate settings that provide additional settings for the isochronous endpoint. Each alternate setting contains endpoint descriptors that report a maximum transaction burst size, a maximum packet size and a service interval for the isochronous endpoints in that alternate interface setting. These values inform the host how much bandwidth each isochronous endpoint will need reserved in an error free environment to function when that alternate setting is selected.

When the host receives a request to enable an alternate setting with an isochronous endpoint – it will need to determine whether it can support the bandwidth required by the alternate setting. Specifying an exact policy for how hosts make this decision is outside the scope of the Wireless USB base specification. However, this section provides an informative discussion of some of the factors that may be considered by the host in these decisions.

A host may use LOOPBACK_DATA_WRITE and LOOPBACK_DATA_READ configuration requests (described in Sections 7.3.1.7 and 7.3.1.8) to estimate the error rate for the link at one or more data rates and packet sizes. In the case of an interface with an isochronous OUT endpoint, the host may repeatedly use the Data Loopback Write request to send packets with the same size as the isochronous OUT endpoint’s maximum packet size at a data rate the host wants to evaluate. The success rate of these data loopback write requests (successful acknowledge received) will give the host information to use in deciding whether to enable the alternate setting with the isochronous OUT endpoint. The host may also use the information to decide to schedule additional time for retries if it allows the alternate setting to be configured. In the case of an interface with an isochronous IN endpoint, the host may use a Data Loopback Write request to send a packet with the isochronous IN endpoint’s maximum packet size. The host may then repeatedly perform Data Loopback Read requests of the same size at a data rate the host wants to evaluate.

Alternatively, the host may consider link quality information from previous traffic to the device (other interfaces or the default control endpoint) in making admission decisions, if this information is available.

In crowded environments, the overall amount of bandwidth that a host may keep reserved under contention is limited by coexistence policies. If a host is required to expand its bandwidth reservation to more bandwidth than it is allowed to keep under contention, it may consider whether the endpoints in the alternate setting

46

Соседние файлы в папке Wireless USB Specification Revision 1.0 May 12, 2005