5
\$\begingroup\$

The usb.org FAQ explains this limitation this way:

The cable length was limited by a cable delay spec of 26ns to allow for reflections to settle at the transmitter before the next bit was sent. Since USB uses source termination and voltage-mode drivers, this has to be the case, otherwise reflections can pile up and blow the driver.

But this explanation is clearly not valid for USB 2.0. Hi-Speed mode operates on 480 Mbit/s and it's single bit transmission time is only 2ns. In 5 meter long cable reflections would not settle at the transmitter before the next bit is sent in Hi-Speed mode.

26ns is about 38 MHz, so it is not very clear why was it introduced for 12 MHz Full-speed USB 1.0 mode too. But ok... raise time + delay + fall time, the choice may have sense, at least.

It is not an ACK delay time. Device response time was set to ~ 400ns by USB specification. It can't also be lower than 50ns for 5 meter long cables.

Where does this mysterious constant of 26ns came from and how is it relevant to the Hi-speed USB 2.0?

\$\endgroup\$
6
  • 2
    \$\begingroup\$ What's your question? \$\endgroup\$
    – Andy aka
    Dec 12, 2016 at 15:16
  • \$\begingroup\$ Where does seem to be something wrong with this explanation. USB cable length is limited by the slave ACK delay as far as I know, not by bit transmission time. \$\endgroup\$ Dec 12, 2016 at 15:41
  • \$\begingroup\$ If I remember correctly, USB 2.0 Hi-Speed mode demands an impedance at the TP transceiver that exactly matches the TP cable's characteristic impedance. This has the effect of eliminating reflections entirely. (See en.wikipedia.org/wiki/Impedance_matching#Transmission_lines) \$\endgroup\$
    – Charlie
    Dec 12, 2016 at 21:16
  • \$\begingroup\$ @Charlie so why USB 2.0 specification still has 26ns cable delay constant in it? With proper termination cable can be much longer and still match the maximum device response time criteria. \$\endgroup\$
    – ZAB
    Dec 12, 2016 at 21:34
  • \$\begingroup\$ Scope creep? It had a purpose once. \$\endgroup\$
    – user110971
    Dec 14, 2016 at 16:16

1 Answer 1

3
+50
\$\begingroup\$

The original 26ns limitation was imposed in the original USB1.1 FS (Full Speed) type of transmission (83ns UI timing). The spec cites two reasons for cable length limit, (a) Cable attenuation (sounds very funny today), and (b) "interference with transmitter". The 26ns corresponds to about 5m of cable. With source-termination there always will be a reflection, but I am not sure if the blown-up transmitter is the main reason for this limitation.

After introduction of USB2.0 and advent of HS termination scheme (on both ends), there is no reflections. The limitation of 5m now comes from:

(1) inability of industrial-quality cables (mass produced) to provide decent eye diagram at the end of 5m cable: the eye amplitude drops, and accumulated jitter becomes a problem. So the 5m limit was a good compromise between HS signal quality and FS signal legacy.

(2) The other limitation comes from the 5-tier hub architecture of USB, and includes hub repeater propagation time, device turnaround response, and cable delays across all five tiers. The USB2.0 protocol mandates a time-out for function response (ACK/NAK/...) of 1700ns worst case. The USB2.0 specifications align all these requirements into one coherent architecture.

Actually, it is not clear what comes first, cost of cables, or the protocol handshake time-out. But all these requirements are alinged, resulting in the standard cable prop delay of 26ns one-way.

If one can make a very good quality cable and use one-tier link, the cable can be of about 125m long, as this answer explains.

EDIT: If the actual question is "I connected my USB2.0 host port to some USB hub (with extra switches in data path) via a 20-m cable made of CAT7a, and it doesn't work. Why?", then the answer is:

The USB2.0 link has five elements in series: (1) Host port, (2) Device port, (3) cable, (4) host connector, and (5) device connector. All five components must perform above specifications for a 40-meter cable (100-ohms out of spec) to work.

(1) Host port must drive the HS signal at the high end of specs (440mV), and the port receiver sensitivity must be on the low end of squelch threshold (under 100mV);

(2) The device port must do the same as (1). Extra components in device path are usually not improving signal integrity, mostly due to substantial parasitic capacitance.

(3) The cable must be able to deliver at least 100mV eye opening across it, and edge jitter must keep the eye open.

(4) Interconnect on both ends must be perfect (board trace - connector - cable connector) on both ends.

If high-bandwidth test equipment (1-2 GHz scope and TDR time-domain reflectometer) with an expensive set of test fixtures is not available, it is impossible to determine which element of this link is at fault. It is likely that all five elements are contributing to inability of 20-meter link to deliver decodable signal. The specification call for 26ns prop limit across HS cable is not the limiting factor in this situation.

\$\endgroup\$
3
  • \$\begingroup\$ I've tried to connect an active hub with a 20 meters long Cat 7a cable. It didn't work well. I've estimated error rate of about 1 in 1e6 bits or so based on a number of lost isochronous transfers. And it also burned a high speed switch (TS3USB221) on the upstream port of the hub. Now I am not very confident with a good quality cable solution. I know that UTP is out of spec with its 100Ω impedance but it shouldn't have burnt anything. Something important is missed. \$\endgroup\$
    – ZAB
    Dec 15, 2016 at 1:37
  • \$\begingroup\$ @ZAB, you need to check for Eye Diagram at the end of your cable first. Second, check the value of active termination at your device: the switch might be another big factor - USB ports are usually designed for a single direct connection, so extra switches do not improve overall signal quality, and screw up termination impedance. It is also important how did you build your cable, how well the USB to UTP connectors were made. \$\endgroup\$ Dec 15, 2016 at 1:50
  • \$\begingroup\$ I don't have GHz oscilloscope, it is too expensive. So I can only check overall transmission error rate. Connection quality must be good enough. The shield was removed for just 5mm on either ends, wires were untwisted and soldered to USB connectors. The switch was a part of original HUB design, must be a protection mechanism, it was always on when ground is present. \$\endgroup\$
    – ZAB
    Dec 15, 2016 at 2:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.