USB-IF Compliance Updates

Number of Updates: 12

Table of Contents
ID Updated Subject Reason Mandate Effective Date
61 March, 2009 ECN: Host Controllers must Assure SOFs are in Phase -Lock Enables isochronous peripherals to take advantage of aggressive power management Required December, 2008

59 March, 2009 ECN: Minimum Capacitance Required on VBus Enables Attach Detection without VBus present Required December, 2008

41 February, 2009 USBET, version 2.22 published Announcement of update to the USB Electrical Analysis Tool, USBET Required January, 2008

4 May, 2008 Engineering Change Notice: Maximum Suspend Current Relaxation of suspend current requirements for USB peripherals Required April, 2008

45 January, 2008 Inrush Current Test Update New USBET Algorithm for Analyzing Inrush Current Required January, 2008

43 October, 2007 EL_22 - Interpacket Delay for Hosts with Embedded Hubs Defines Interpacket Timing for hosts with embedded hubs Informational n/a

7 August, 2007 Rise and fall time measurements for USB compliance Change in measurement Required August, 2007

34 July, 2007 Peripherals may support both bus-power and self-power modes Clarification on how to declare and use both bus-power and self-power modes Informational n/a

8 June, 2007 "Near-end" and "Far-end" explained Clarification Informational

5 February, 2007 High-speed Devices: Average current is to be measured at both HS and FS Test Procedure Clarification Required Now

6 June, 2006 Disconnect Test no longer a compliance requirement for downstream ports Test Change to the Compliance Program Informational June, 2006

3 February, 2005 Receiver Sensitivity (EL_17) and Squelch (EL_16) Clarify squelch and receiver sensitivity parameters Required February, 2005

Receiver Sensitivity (EL_17) and Squelch (EL_16)
Mandate: Required
Effective Date: February, 2005
There is confusion in how to apply the automatic waiver relating to EL_16 and EL_17.  As a result, devices are being incorrectly designed.  Hopefully, the following will clarify the rules for EL_16 and EL_17.

The waiver is derived like this:

Receiver Sensitivity and Squelch measurements are supposed to be made at the upstream port pins as defined in Table 7-3 and Figure 7-12 of the USB 2.0 Specification.  However, the test fixture used at USB-IF workshops and test facilities does not permit measurement at the upstream port pins.  Because the voltage at the measurement point is higher than at the upstream port, the USB-IF provides a 50mV allowance for the voltage drop between the two points.  Again, the voltage at the measurement point is higher than at the upstream port pins, so the 50mV allowance has to be added to the spec requirement -- not subtracted.

Voltage is differential, so there is a positive and negative voltage level.  The text of the waiver was meant to add 50 to the positive voltage and add -50 to the negative voltage.

EL_16

The USB 2.0 specification in Section 7.1.7.2 requiressquelch (EL_16) to occur below 100mV magnitude.  So no packets must be acknowledged between -100mV and +100mV.  This has always been the requirement. Full squelch may occur at higher voltages, but it is mandatory between -100mV and +100mV.

The USB-IF applies the specification requirement (100mV) to measurements made at the test fixture instead of the upstream port.  So the voltage drop acts like a built-in waiver for test procedure EL_16.  Thus, THERE IS NO 50mV WAIVER FOR EL_16.  The HS Test Procedure is incorrect for stating a waiver for EL_16.

EL_17

Receiver sensitivity requires all packets to be reliably received down to 150mV magnitude.  Packets may be received at lower voltages, but it is mandatory at levels above 150mV magnitude.  Again, this measurement is to be made at the upstream pins but the test fixture does not allow this.  So the USB-IF grants a generous 50mV waiver to compensate for the voltage drop away from the upstream pins.  Thus, the USB-IF requires packets to be reliably received at levels above 200mV for EL_17.  Packets can, but do not need to be, received between -200mV and +200mV.

So looking at EL_16 and EL_17 together with the waiver, the graph looks like this:

Please note that it is the combination of EL_16 and EL_17 that validates the "transmission detection envelope" defined in section 7.1.4.2 of the USB 2.0 Specification.

Examples

Example 1:
A device exhibits full squelch below 300mV magnitude.

  • EL_16 is a pass because full squelch occurs below 100mV magnitude.
  • EL_17 fails because packets are not reliably received above 200mV with the waiver
Example 2:
A device exhibits full squelch below 110mV magnitude and receives packets above 120mV magnitude
  • EL_16 is a pass because squelch occurs below 100mV magnitude
  • EL_17 is a pass because packets are reliably received above 150mV magnitude
Example 3:
A device exhibits full squelch below 90mV and receives packets above 120mV magnitude
  • EL_16 is a fail because packets are received below 100mV magnitude
  • EL_17 is a pass because packets are reliably received above 150mV magnitude
Example 4:
A device exhibits full squelch below 160mV and receives packets above 190mV magnitude
  • EL_16 is a pass because squelch occurs below 100mV magnitude
  • EL_17 is a waiver because packets are reliably received within 50mV of 150mV magnitude
Example 5:
A device exhibits full squelch below 180mV and receives packets above 210mV magnitude
  • EL_16 is a pass because squelch occurs below 100mV magnitude
  • EL_17 is a fail because packets are not reliably received within 50mV of 150mV magnitude
Top
Peripherals may support both bus-power and self-power modes
Mandate: Informational
Effective Date: n/a
A peripheral that draws less than 100mA from USB may report itself as either bus-powered or self-powered in the bmAttributes field of the active configuration descriptor. Regardless of the power source, the average current drawn from the bus must never exceed the value declared in the bMaxPower field of the active configuration descriptor. Also, the GetStatus(DEVICE) call must accurately reflect whether the peripheral is operating under bus-power or self-power.

A device that is actively drawing more than 100mA from USB must report itself as bus-powered in the GetStatus(DEVICE) call. Peripherals that return "Self-powered" in the GetStatus(DEVICE) call are prohibited from drawing more than 100mA at any time.

A peripheral is allowed to support both bus and self-powered modes in a configuration. To support both bus and self-powered operation, the bMaxPower field is to report the worse case current demand when operating under bus-power and the self-powered bit of the bmAttributes is marked for self-power. In all cases, the GetStatus(DEVICE) call must accurately report whether the device is currently operating on self- or bus-power. Please see section 9.6.3 of the USB 2.0 Specification.

A self-powered peripheral that experiences a loss of power is not allowed to switch to a high-power, bus-powered mode without forcing a re-enumeration. The USB 2.0 Specification Section 7.2.1.2 defines this requirement for self-powered hubs that also support bus-powered operation. Thus, the USB-IF enforces this requirement on standard peripherals that support both bus- and self-powered modes as well.

The reason for requiring re-enumeration is that the peripheral will go from a low-current draw to a high-current draw. The operating system must be allowed to manage the unexpected power change of the peripheral from a low-power requirement to a high-power requirement.
Top
Engineering Change Notice: Maximum Suspend Current
Mandate: Required
Effective Date: April, 2008

An Engineering Change Notice to the USB 2.0 Specification named "Suspend Current Limit Changes" has been issued in April 2008. This ECN changes the maximum ICCSL value to 2.5mA.

The purpose of this ECN is to allow any USB peripheral to consume up to 2.5mA during suspend. It does not matter whether the peripheral is low-power or high-power, and it does not matter whether remote wakeup is enabled. 

Please note, however, that the InterChip suspend current requirements does not change and remains at 150uA.

The "Suspend Current Limit Changes" ECN is included with the download of the USB 2.0 Specification.

Top
USBET, version 2.22 published
Mandate: Required
Effective Date: January, 2008

An update to the USB Electrical Analysis Tool, USBET, is available for download. USBET, version 2.22, is the only official electrical analysis tool of the USB-IF.  Please see the USB Tools webpage for download information.

This version of USBET includes the rise and fall time analysis as described in the Rise and fall time measurements for USB compliance update.

This version of USBET includes a new algorithm for analyzing Inrush current.  Please see Inrush Current Test Update for details.

The following table lists recommended sampling rates to be used by the oscilloscope for the different USB signal rates.  The recommended sample rate will ensure that electrical data is captured within the crossover region of the transitions.

Signal Rate

Minimum Sample Rate

High-speed

8 GS/s

Full-speed

4 GS/s

Low-speed

100 MS/s

As edge rates get faster, the ability to capture data during transitions decreases.  The minimum sample rate assures that data will be captured during transitions so that crossover points can be verified.  Without valid crossover points, signal rate calculations and jitter calculations are not reliable.  If no data exists within a transition, an error message will be displayed stating that the sample rate needs to be increased. 

 

Top
EL_22 - Interpacket Delay for Hosts with Embedded Hubs
Mandate: Informational
Effective Date: n/a

EL_22 - Interpacket Delay for Hosts with Embedded Hubs

Hosts are permitted to embed a high-speed hub and expose the hub's downstream ports.  Because the embedded hub must relay the data of the host, the interpacket gap timing is affected when transmitting after receiving a packet.

Section 7.1.19.2 of the USB 2.0 Specification identifies high-speed delay times for cables and hubs. With a max propagation of 26ns for a cable and a max hub repeater delay of 36 bits +4ns (Test Spec EL_48), there is sufficient information for determining what the maximum response time to a device packet behind one tier of hubs should be.

Max delay from downstream port of hub to the downstream port of the host is:

26ns
 4ns + 36 bits
30ns + 36 bits

Multiplied by two since it is a "round trip" yields:

60ns + 72 bits

Add in the max turnaround time for the host, 192bits

60ns + 72 bits
     + 192 bits
60ns + 264 bits

So the maximum interpacket delay of a host's response to a device is <= 264 bit times + 60ns, which equates to 610ns or 292 bit times.

Top
Inrush Current Test Update
Mandate: Required
Effective Date: January, 2008

Inrush Current Analysis

The USB-IF requires an Inrush Current Test for all upstream USB ports. The purpose of the test is to ensure that the current consumed due to bulk capacitance and peripheral startup does not cause the voltage to drop below valid levels. A newly attached device with excessive inrush current can cause devices that are connected on adjacent ports to disconnect due to low VBus voltage. Bus powered hubs are most susceptible to voltage brownout from large inrush events.

The USB-IF Electrical Analysis Tool, USBET, revision 2.22 implements a new algorithm for assessing inrush current.  The new inrush algorithm is being enforced now.  Studies of this implementation show that it is easier for devices to pass the inrush test using this new algorithm.  The following describes the algorithm and requirements for inrush testing.

Measurement Method

Inrush current is measured for a minimum of 100 milliseconds after attach. Attach is defined as voltage rising to a valid level on the peripheral's USB power line. Any current exceeding 100 mA during the 100 ms interval is considered part of the inrush current event. The inrush current is divided into regions. A region is an interval where the current exceeds 100 mA until the time the current falls below 100 mA for at least 100 µs. There can be multiple inrush regions during the 100 ms period. Pass/fail is determined by the region having the highest charge.

Multiple Regions

A region starts when the current rises above 100 mA and ends when the current is below 100 mA for at least 100 µs. There may be multiple regions during the 100 mS period. The analysis tool calculates the charge above 100 mA in each region. The charge of each region is listed in the report.  Pass or fail is based on the region with the largest charge.  The regions are shown on the plot by vertical yellow lines marking the start and end of each region.

Minimum Sample Rate

A minimum sample rate of 1 megasamples per second is required for proper analysis. If the sample rate is below this value, the program still performs the analysis but will record an error indicating that the sample rate is too low.

Record Length

A record length of 100 milliseconds or more after the first inrush event is required for the measurement. If the data record is less than 100ms, the result will be a failure because of insufficient measurement time.

If the oscilloscope does not have sufficient memory to capture 100ms of data, then the inrush test will need to be divided into 30ms segments.  Each time the inrush test is performed, the trigger should be delayed to capture the next segment.  Use USBET to analyze each inrush segment.  Repeat until all segments covering at least 100ms of inrush data is examined.  Each and every individual inrush segment must pass.  A failure in one of the inrush segments consitutes an overall failure.

No Inrush Event Found

If there is no inrush event found, i.e. the current never rises above 100 mA, the result is considered a Pass. However, the inrush current test should be repeated several times to ensure an accurate measurement. 

Top
High-speed Devices: Average current is to be measured at both HS and FS
Mandate: Required
Effective Date: Now
For high-speed devices, average current draw is to be measured at both high-speed and full-speed. Current draw at high-speed tends to be larger than at full-speed, but this is not always true.
Top
ECN: Minimum Capacitance Required on VBus
Mandate: Required
Effective Date: December, 2008

Revision 2.0 of the USB On-The-Go Supplement defines an Attach Detection Protocol (ADP) for hosts and peripherals. This protocol enables peripherals and hosts to detect when a device attach occurs when VBus is turned off. In order for ADP to work from a host's perspective, peripherals are required to have a minimum of 1uF (CRPB) capacitance on their VBus pin.

This ECN is part of the download of the USB 2.0 Specification and should be reviewed for specific details.

Top
Disconnect Test no longer a compliance requirement for downstream ports
Mandate: Informational
Effective Date: June, 2006
The disconnect test is no longer required for certification of downstream ports. Vendors are encouraged to verify disconnect voltage thresholds on their own.

The Host Disconnect Test was performed on all downstream ports (hosts and hubs). When a HS device removes its HS terminations or is detached, the voltage on the data lines increases. An increased voltage level indicates a disconnect and the port is required to signal a disconnect.
Top
ECN: Host Controllers must Assure SOFs are in Phase -Lock
Mandate: Required
Effective Date: December, 2008
Host controllers are to issue SOF tokens that are in phase-lock across selective suspend or level 1 (L1) power management events. Phased-locked SOFs are not required across global suspend conditions.

This ECN is part of the download of the USB 2.0 Specification. Please see the ECN for specific details.
Top
Rise and fall time measurements for USB compliance
Mandate: Required
Effective Date: August, 2007

There has always been a problem accurately measuring rise and fall times, especially on high speed devices. The measurement of interest is the edge rate, or slew rate, during the state change time.

Major contributors to the inaccuracies in these measurements are the shape of the edge, noise on the signal and the method of calculating the 10% and 90% points as defined in Sections 7.1.2.1 and 7.1.2.2 of the USB 2.0 Specification.

A waveform with slow corners (see sample eye diagram below) will result in a measured rise time that is slower than the actual edge rate would indicate. Also a small change in the position of the 10% and 90% points due to noise on the signal, etc., can cause a relatively large change in the measured rise time.

 

In order to optimize the repeatability of this measurement a slew rate, or edge rate, will be used. The results are expressed in terms of volts per micro-second ( V/us ).

The conversion from rise time to edge rate uses the specified rise time over 80% of the nominal peak to peak signal amplitudes for each of the signaling rates.

High Speed:
Edge Rate(max) = (0.8V * 0.8)/500e-12 = 1280V/us (Volts per micro-second)

Full Speed:
Edge Rate(min) = (3.3V * 0.8)/20e-9 = 130V/us
Edge Rate(max) = (3.3V * 0.8)/4e-9 = 660V/us

Low Speed:
Edge Rate(min) = (3.3V * 0.8)/300e-9 = 8.8V/us
Edge Rate(max) = (3.3V * 0.8)/75e-9 = 35.2V/us

The actual edge rates are measured within the limits of the inner vertical eye of the far-end template for each test type.

This method eliminates the variable location of the vertical measurement points of the 10/90 method since a fixed voltage range is used. Including this measurement in the Matlab scripts provides a common measurement method and should result in more consistent results between test equipment manufacturers, test facilities and USB-IF compliance workshops.

This measurement is informational for FS and LS. However, this measurement is required for HS.

The current revision 2.21 of the USBET tool converts the slew rate into an equivalent rise and fall time. 

 

Top
"Near-end" and "Far-end" explained
Mandate: Informational
Effective Date:
High-speed electrical tests are performed either near-end or far-end depending on the configuration of the product. The terms "near-end" and "far-end" are based on which end of the cable the test fixture is attached in relation to the device being tested. The point where measurements are made dictates what eye template is used. (Please see Section 7.1.2.2 of the USB 2.0 Specification) The measurement is made either "near" the device or "far" from the device being tested.

All HS peripherals with a B-receptacle are tested near-end (at the peripheral's receptacle). HS devices that have a captive cable are tested far-end (at the end of the captive cable). Unlike full-speed electrical tests, which are always performed far-end, the length of the cable used in HS electrical tests is not important.

High-speed electrical tests of downstream ports on hosts and hubs are always performed near-end.

Upstream ports that have a captive cable are always tested far-end. Peripherals with permanently attached standard A-plugs, such as "thumb" or "key" drives, are considered to be captive (like a mouse or keyboard). The captive cable for thumb drives is, simply, very short. Thus, far-end electrical tests are performed on these products.
Top

Site sponsored by USB Implementers Forum, Inc., creators of USB technology. VTM Association Management
About Us | Privacy Statement