I want someone to make a video series where they exceed cable lengths and show what happens.

what happens if you have a 2km USB cable? what works and what breaks?

@foone USB1/2 has strict timing requirements, so it simply won't work at all past a certain point. It's not about signal quality, the protocol just can't handle delay. I think USB3 fixed that, but sadly USB2 over USB3 is not a thing, so that only works for USB3 native devices.

Most other protocols can handle distance fine if the signal integrity is maintained (which is how you get fiber converters and such). Or you can just be LTT and chain a bunch of PCIe extenders together and it works anyway because PCIe is awesome: https://youtu.be/q5xvwPa3r7M

So how do USB3 over fiber extenders work? They use this cursed thing that converts USB2 to USB3 at the protocol level. It doesn't conform to any specification, doesn't work with all devices, and literally makes software see USB2 devices as USB3 devices: https://www.via-labs.com/product_show.php?id=96

How many PCIe Extensions is TOO MANY??

YouTube

@lina @foone literally two days ago looked at what's inside a USB3.2 over fiber extender. Wasn't very surprised to see a direct connection of USB SS lanes to an SFP+ cage with a 10k bidirectional optical transceiver, only caps an ESD protection chip in-between.

Many SoCs share a single SerDes for high speed interfaces like sata/usb3/xfi/pcie so why not?

Want to see a PCIe riser over fiber next. Just need so send reference clock somehow 😁

@trixie @lina @foone A single SerDes for multiple ports??? I want to hear more!

@robot @trixie @foone Not multiple ports, one port that can be configured to multiple modes. For example, Apple's Type C controllers support USB3 Gen1 & Gen2, USB4/TB3/4, and DisplayPort modes with the same serdes/PHY.

It's actually a standard: https://cdrdv2-public.intel.com/643108/PIPE7_0_releasecandidate_2024July11-1.pdf