Professional Documents
Culture Documents
Clock
Clock
Reference Signal in Sequential Elements.
o o o
Most critical signal in synchronous designs Reference for all the timing measurements Single clock signal serves multiple flops/latches
Clock Insertion Delay = Tdly1, Tdly2 Clock Skew = Tdly2 Tdly1 For a successful signal launch and capture :i) ii)
Tck-qff1 + Tdly3 <= T + Skew Tsetupff2 Tck-qff1 + Tdly3 >= Skew + Tholdff2
H-Tree Mesh
Clock
Can insert clock gating at multiple levels in clock tree Can shut off entire subtree if all gating conditions are satisfied Idle condition Clock Gated clock
Clock Tree Synthesis :i) Achieve Insertion Delay number ii) Achieve Skew Targets iii) Maintain Transition limits iv) Limit Power Numbers
IP Core or Module Global Clock Net Core Internal Clock Net Core Internal Clock Driver/PLL: Buffer Freq. Multiply Align
SoC
External clock
PLL
Example: H-Tree
Clock Distribution
PLL
Ref clk in Ref clk out
Bypass
3 PLL out
2 1
Feedback
Reference clock
vcont VCO
Local clock
Divide by N
System Clock
clock
IP 4 IP 5 IP 6 IP 7 IP 8 IP 9 clock
IP 5 IP 6 IP 7 IP 8 IP 9
clock delay
clock delay
Clock Tree synthesis is needed for nets which have high fanout:
Clocks
Asynchronous resets
Minimal skew . Minimal insertion delay . DRC (Design Rule Constraints) max transition, max capacitance
Large insertion delay increase power but also results with increased skew cause of On-Chip-Variation (OCV) .
Total skew
Timing Violation
All flops of a symmetric clock tree , traced back from the clock tree root are passing the same number of levels and the same cell references at each level. The clock tree is balanced at a specific corner which should fit all corners . Asymmetric tree results with increased skew variations at different corners .
Asymmetric Clock Tree is used for non clock signals such as asynchronous resets & DFT signals.
Requires max delay & max transition. Relaxed constraints for skew.
clk
Under real conditions, the clock signal can have both spatial (clock skew) and temporal (clock jitter) variations
skew is constant from cycle to cycle (by definition); skew can be positive (clock and data flowing in the same direction) or negative (clock and data flowing in opposite directions) jitter causes T to change on a cycle-by-cycle basis
clock 1 generation
PLL
2 clock drivers
coupling
5 temperature
Skew
manufacturing device variations in clock drivers interconnect variations environmental variations (power supply and temperature)
Jitter
clock generation capacitive loading and coupling environmental variations (power supply and temperature)
D Q tclk2
T+ >0
2
+ thold
T: thold :
T + tc-q + tplogic + tsu so T tc-q + tplogic + tsu - thold + tcdlogic + tcdreg so thold tcdlogic + tcdreg -
meet. If thold is not met (race conditions), the circuit malfunctions independent of the clock period!
<0
T: thold :
T + tc-q + tplogic + tsu so T tc-q + tplogic + tsu - thold + tcdlogic + tcdreg so thold tcdlogic + tcdreg -
Clock Jitter
Jitter causes T to vary on a cycle-bycycle basis
R1 In clk tclk
T
Combinational logic
-tjitter
+tjitter
-tjitter
Clock grids
- Typically used in the final stage of the clock distribution network - Minimizes absolute delay (not relative delay)