Possible Duplicate:
Why wiggle nearby tracks on a PCB?

I was looking at a Raspberry Pi that a friend got today and noticed some weird traces on the board. I'm wondering why they were designed this way. Here is the best picture I could find of them.

Raspberry Pi

See a larger image.

There are a few sawtooth like traces that can be seen just above the HDMI and coming out from the IC.


2 Answers 2


Sometimes snake traces are used to ensure that parallel traces for a data bus all have the same length. This minimizes the phase difference between the signals. I can't see very clearly in the picture, but if the traces are smooth curves I'm betting this is the reason.

These are typically only used in very high speed designs where tiny signal delays and phase differences make a difference, the HDMI interface probably falls under that category. Also as mentioned below, differential signaling is another instance where phase differences between the signals can be very detrimental.

  • \$\begingroup\$ It does look like they're smooth curves and not jagged like I remembered. \$\endgroup\$
    – JDD
    Sep 9, 2012 at 2:38

HDMI interfaces, and others as well, use differential type signalling. With differential signalling one path carries a signal that is 180 degrees out of phase with the other signal. Another way to think about it is that one wire carries a signal that is the inversion of the other. These are usually routed on the PC board with parallel signal traces that are carefully designed to have the proper impedance between the two lines and to the underlying reference GND plane. For very high frequency signalling it is essential that the two differential signals on the trace pair arrive at the destination at exactly the same time. This is needed so that the receiver end can look at the differences of the two signal voltages to decode the actual signal being transmitted. If the signal edges get skewed from one another by too much it increases the uncertainty zone within which the actual output of the receiver can be known valid. The squiggly traces seen on the PC board are done to one trace of a differential pair to add some length to ensure that the the signal edges will be delayed the same amount as the differential signal progresses down the trace pair. If the trace pair travels across the PC board and makes multiple turns you may see the squiggly length adjustment applied in several places and it may alternate between the two traces of the pair based upon the directions of the turns. (The trace of a pair on the outside of a turn has a longer distance to travel and so the trace on the inside of the turn will require the length adjustment.


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