12
\$\begingroup\$

I am routing a PCB that uses a USB connection. The differential pair traces are 10 mil distant from each other, and they are about 1mm different in length. Is it going to be a problem? What is the recommended maximum difference in length and the minimum distance between them?

\$\endgroup\$
  • 1
    \$\begingroup\$ What speed(s) do you need to support? \$\endgroup\$ – Dave Tweed Jan 3 '13 at 19:56
  • 1
    \$\begingroup\$ I've posted this before, but can't find it. In this blog post you can find a downloadable nano second (in vacuum): blog.jgc.org/2012/10/a-downloadable-nanosecond.html . One nanosecond implies 1GHz. \$\endgroup\$ – jippie Jan 3 '13 at 21:20
  • \$\begingroup\$ USB 2.0 Full Speed or High Speed? \$\endgroup\$ – Turbo J Jan 5 '13 at 4:42
  • \$\begingroup\$ @TurboJ USB 2.0 Full Speed \$\endgroup\$ – mFeinstein Jan 5 '13 at 23:52
  • \$\begingroup\$ How long are the traces? If very short then you really don't need to worry about impedance or matching anything. A good rule of thumb is if the wavelength (period) of the bits is 12x longer than your trace then no need to worry about anything. \$\endgroup\$ – Michael Fox Oct 26 '14 at 18:24
20
\$\begingroup\$

While the length and impedance are both important, 1mm of length differential will not affect your system's performance in any way, even for usb-2.0 high-speed.

From the USB spec:

7.1.3 Cable Skew
The maximum skew introduced by the cable between the differential signaling pair (i.e., D+ and D- (TSKEW)) must be less than 100 ps and is measured as described in Section 6.7.

Assuming a perfect propagation velocity (i.e. C, the speed of light), a differential length of ~2.99 cm would produce a skew of 100 ps. As such, your 1 mm of trace length differential will not be a problem.

Added: On a real PCB, your signals travel slower than speed of light. For a stripline (inner layer) you divide the speed of light in vacuum by the square root of the relative dielectric constant (e_r). So about half speed. This means the 100ps is more like 15mm. For the outer layers, the speed is slightly higher (about 10%).

\$\endgroup\$
  • \$\begingroup\$ Added a bit about propagation speed on a real PCB. \$\endgroup\$ – Rolf Ostergaard Oct 26 '14 at 17:15
  • 1
    \$\begingroup\$ @RolfOstergaard - that really should be your own answer, not an edit. \$\endgroup\$ – Chris Stratton Oct 28 '14 at 15:02
  • \$\begingroup\$ @ChrisStratton Well... ConnorWolf beat me to it when he provided a decent answer that was already accepted. So the best I could do was to make it a bit more useful for those of us not living in vacuum :-) Hope that is okay? \$\endgroup\$ – Rolf Ostergaard Oct 28 '14 at 17:13
  • 1
    \$\begingroup\$ No, it's not. You don't get to use an edit to insert your own distinct ideas into someone else's already accepted, highly upvoted answer. If you want to point out a problem with an answer, you do it in a comment. Or you post your own alternative which gets separately evaluated with its own voting. \$\endgroup\$ – Chris Stratton Oct 28 '14 at 17:16
  • \$\begingroup\$ To be honest, it didn't bother me that much, but then I guess I'm the one benefiting the most out of it. I probably should have done the lookups for real PCB propagation velocities in my original answer. \$\endgroup\$ – Connor Wolf Oct 29 '14 at 1:59
5
\$\begingroup\$

It isn't the distance, per se, that matters. It is the impedance of the strip line or microstrip that matters. Use any calculator in your CAD software or online to get 90 ohm differential. The impedance depends on the spacing of the traces and their height above the ground plane. An sample calculator is on eeweb.

1 mm difference in is fine unless you are doing SuperSpeed USB 3.0.

\$\endgroup\$
  • \$\begingroup\$ Do you know how to do it in Altium? \$\endgroup\$ – mFeinstein Jan 4 '13 at 3:28
  • 1
    \$\begingroup\$ @mFeinstein - specify the D+/D- pair as differential lines in the schematic, and in the PCB editor set the rules for differential pairs. You can specify maximum uncoupled distance, nominal impedance, and maximum length differential. \$\endgroup\$ – Connor Wolf Jan 7 '13 at 6:06
  • 1
    \$\begingroup\$ @mFeinstein - Altium documentation on routing diff pairs: wiki.altium.com/display/ADOH/… \$\endgroup\$ – Connor Wolf Jan 7 '13 at 6:08
3
\$\begingroup\$

The most important factor in the routing of the diff pair in USB is the impedance. This is not related to the length but to the geometry of the traces wih respect to each other and the board.

A good reference on this for USB is done by Intel:

High Speed USB Design Guidelines

Excerpt:

3.4 High Speed USB Trace Length Matching

Use the following trace length matching guidelines.

High-speed USB signal pair traces should be trace-length matched. Max trace-length mismatch between High-speed USB signal pairs (such as , DM1 and DP1) should be no greater than 150 mils.

\$\endgroup\$
2
\$\begingroup\$

From previous experience, USB 2.0 Full speed (12Mbps) can survive a 1mm difference (it's kind of neccesary for the USB-B connector footprint, as I recall).

2.0 High Speed and 3.0 may/will be different/more tempermental.

\$\endgroup\$

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