By Linda Lua, Silicon Labs
What is a clock tree?
A clock tree is a clock distribution network within a system or hardware design. It includes the clocking circuitry and devices from clock source to destination.
The complexity of the clock tree and the number of clocking components used depends on the hardware design. Since systems can have several ICs with different clock performance requirements and frequencies, a “clock tree” refers to the various clocks feeding those ICs.
It’s often the case that a single reference clock will be cascaded and synthesized into many different output clocks, resulting in a diagram that looks a bit like a sideways tree trunk. The “trunk” is the reference clock and the “branches” are the various output clocks.
Clock trees can be both very complex with many timing components or very simple with a single reference and a few copies. Of course, their complexity depends on the system they support. While there are many timing component types for many different types of applications, the most common timing components are:
– Crystals – a piece of quartz or other material that resonates in a predictable pattern at a given frequency when used in conjunction with an on-chip voltage oscillator circuit;
– Crystal Oscillators (XOs) – a self-contained resonator and oscillator that outputs a given frequency and format;
– Voltage controlled oscillators (VCXOs) – a self-contained oscillator that varies its output frequency in concert with differing voltages from a voltage reference;
– Clock Generators – an integrated circuit that uses a reference clock or crystal to generate multiple output clocks at one or multiple frequencies;
– Clock Buffers – an integrated circuit that creates copies or derivatives of a reference clock; – Jitter Attenuators or Jitter Cleaners – an integrated circuit that removes jitter (noise) from a reference clock.