10 USB Hub ICs from 1 Crystal Oscillator

clockcrystaloscillatorusbusb hub

I am designing a PCB with 10 individual USB hub ICs onboard. They all require a clock input and I am wondering if it is possible to drive all the clocks from a single crystal oscillator?

The hub IC is http://www.ti.com/lit/ds/symlink/tusb4020bi.pdf

Best Answer

Yes, you can -- take a 24MHz oscillator and feed it into a clock buffer IC such as the CDCLVC1310 (http://www.ti.com/product/cdclvc1310). The buffer IC will allow you to do easy point to point links for each hub's clock. Please read the datasheet for that part in detail -- it has many clock input options as it supports single-ended, LVDS, SSTL, etc. Additionally, the datasheet for your hub says it wants a 1.8V input clock (Section 9.1.2) -- you will need a 1.8V supply (a LDO should suffice) to power the clock buffer's I/O rail (VDDO). You could even choose a single 24MHz crystal and provide it to that part to generate the ten copies of your clock.

A single oscillator has a maximum load on its output that will likely be exceeded by 10 USB Hubs. On top of that, you'd have to route the clock in a fly-by fashion with likely AC termination (since it is a clock this is easy) or Thevenin/parallel termination at the end to prevent reflections. If you imagine your single clock-source having to fan-out (which you identified in the other answer correctly), you can see why drive requirements + branching the signal can be troublesome.

Finally, my gut suggests that running 10 hubs in phase from a signal clock course may contribute to EMC issues and slightly stronger emissions, but I cannot quantify it. It would be 24MHz regardless, but this solution puts every hub in phase with the other. A solution with 10 discrete xtals would be at the same frequency, but likely out of phase with each other.