1

First, let me say that I'm no electrical engineer, I'm just a curious student.

Here's a photo of a Raspberry Pi A+.

RPi A+

I (as one completely ignorant of PCB design) would expect the electrical paths to be as simple as possible, which normally implies using the shortest path from the source to destination. Here, the printer can clearly print straight diagonal paths, but some other nearby paths are stair-stepped, or even take bizarre roundabout paths to their destinations.

I've seen this on a variety of PCBs, including other models of the Raspberry Pi, some Arduinos, computer motherboards...

Can you explain, in layman's terms, why these more complex paths are chosen?

PythonNut
  • 113
  • 5

2 Answers2

4

These "complex paths" are simply a way to make the paths longer. This allows you to match the length of two or more tracks on the PCB. This is important for high-speed (MHz) signals, where the time taken for the signal to travel along the tracks on the PCB (an electrical signal travels at around two-thirds of the speed of light in copper) is comparible to the signaling rate. If the lengths were not matched, then the bits on one line in a parallel bus (such as the GMII link between and Ethernet PHY and MAC) would arrive before the others. This could mean that the value on the bus is read between the first and last bit arriving, giving an incorrect or invalid value.

In the example you provided, you'll see that the top-right pair of tracks has the least distance to go in a straight line between the IC and CAMERA connector, so it has the most extra length added to the tracks.

Xcodo
  • 771
  • 4
  • 18
  • 3
    "electrons travel at around two-thirds of the speed of light in copper" This is plainly wrong! You are confusing the speed of the electromagnetic signal (EM wave inside the conductor) with the speed of the electrons, i.e. [drift velocity](http://en.wikipedia.org/wiki/Drift_velocity). Electrons move in the conductor **much more slowly** than the associated EM wave. – LorenzoDonati4Ukraine-OnStrike May 26 '15 at 19:47
  • Yes, @LorenzoDonati, you're right! – Xcodo May 26 '15 at 19:49
1

The speed a signal travels along a trace is finite and constant and dependent on the trace characteristics. If multiple signals need to be in sync then they need to travel the same distance along the same trace size. Having traces wind like this is a way to make sure that all signals in a bus arrive at the same time.

Ignacio Vazquez-Abrams
  • 48,282
  • 4
  • 73
  • 102