[Arm-netbook] HDMI High-Frequency Layout: Recommendations
Richard Wilbur
richard.wilbur at gmail.com
Thu Aug 10 23:40:40 BST 2017
> On Aug 9, 2017, at 03:34, Luke Kenneth Casson Leighton <lkcl at lkcl.net> wrote:
>
>
> okaay, so this is what i've managed for the outgoing vias (layer 1),
> the two lengths are equal (to each other and including across all four
> pairs) and the relative positions of each via are identical.
Very nicely done--especially considering how tight that space is. I like the way you snuck some extra length on the traces from the closer pins and with 45 degree bends no less.
> for layer 6.... faak it's tight on space down the bottom, so i simply
> can't get anything but "turns" in. it'll have to go dead-straight
> until the other end of the board, after the PMIC, where i'll then be
> able to correct the length differences between the CLK pair and the
> other pairs.
Since the digital portion of the receivers is built to specifically correlate up to 5 (out of 10) bit times of inter-pair skew (arrival time difference between differential pairs) for every pixel clock, you could think of building in some inter-pair skew as similar to spread-spectrum techniques which have been employed in communications to drop the energy peak on the carrier frequency and more recently on motherboard chipsets. The clock period for 340MHz is
T(Pixel) = 1/(pixel clock) = 1/(340MHz) = 2.94ns
wavelength = velocity * period = 150um/ps * 2940ps = 441mm = 17400mil
So half that period = 1470ps, which at the speed of propagation is ~ 220mm ~ 8700mil. So there is our inter-pair skew budget for the whole path: differential driver, IC lead wire, pin, PCB (the part we have design control of presently), connector, HDMI cable, connector, receiver PCB, pin, IC lead wire, receiver. I believe that if we reserve one-tenth of that inter-pair skew for our transmitter PCB, we should not be unduly stressing the budget and that amounts to ~ 22mm ~ 870mils. Interestingly this is Toradex' suggested limit for skew between clock and data. The HDMI standard restricts transmitters to
T(inter-pair skew) = 0.2 * T(pixel) = 2 * T(bit) = 588ps
=> Δl < v * Δt = 88.2mm ~= 3470mil
> richard you said that the difference between all pairs should be no
> more than 100mil, right? but that clock should be a leetle bit
> longer.
I did suggest we might work towards that as a goal based on Chrontel's recommendation, but now I'm giving the spread-spectrum idea more thought and thinking we might design some inter-pair skew into the system on purpose to reduce the amplitude of EM from the constructive interference of all those (painstakingly) phase-aligned transitions. So here is one strategy to implement what I was thinking (predicated on the spread between shortest and longest data pairs being less than 0.5 * L(bit)):
1. Shortest pair becomes our reference length.
2. Other two data pairs are routed different fractions of T(bit) longer than the reference pair.
3. Clock pair is routed a larger fraction of T(bit) longer.
Hence:
L(reference) = L(shortest data pair without inter-pair skew compensation)
T(bit) = 294ps
=> L(bit) = v * T(bit) = 150um/ps * 294ps = 44.1mm ~ 1740mil
Suppose we select fractions: 0.2, 0.3, 0.5(clock)
then we would make L(longer data pair) = L(reference) + 0.2 * L(bit)
L(longest data pair) = L(reference) + 0.3 * L(bit)
L(clock pair) = L(reference) + 0.5 * L(bit) = L(reference) + 22mm
I guess I should first ask what are the differential pair lengths before inter-pair skew corrections?
> CLK-pairs are 57.245 (i got them to within a thousandth of a mm!
> 57.245 and 57.24518 how jammy is that!!)
Now that is some great length matching! And intra-pair where it looks like it matters the most!
> HX2N/P are 49.something - a hell of a big difference. luckily that
> one's on the outside edge so i can "wiggle" it a lot :)
The clock data difference is ~8mm ~ 310mil.
That's around an order of magnitude (factor of 10) smaller than the limit the HDMI standard imposes on transmitters and more than a factor of 2 smaller than Toradex' recommended limit.
> oh... i had another go at the USB pairs, after reading all that you
> recommended i wasn't happy that there was skew (which i never noticed
> before). the USB lines worked but there would have been quite a bit
> of EM.
I must confess I hadn't looked at the USB traces but it sounds like a good thing. Which level of support are you providing?
More information about the arm-netbook
mailing list