Clock
-
Upload
aamir-shaik -
Category
Documents
-
view
4 -
download
0
Transcript of Clock
-
5/25/2018 Clock
1/22
5/17/2014 1
Clock Network Synthesis
Prof. Shiyan Hu
Office: EREC 731
-
5/25/2018 Clock
2/22
25/17/2014
Outline
Introduction
H-tree
Zero skew clock
DME and its extension New trends
-
5/25/2018 Clock
3/22
35/17/2014
Introduction
For synchronized designs, data transfer between
functional elements are synchronized by clock signals
Clock signal are generated externally (e.g., by PLL)
Clock period equation
suskewd tttodclock peri td: Longest path through combinational logic
tskew: Clock skew
tsu: Setup time of the synchronizing elements
-
5/25/2018 Clock
4/22
45/17/2014
Clock Skew Clock skew is the maximum difference in the arrival
time of a clock signal at two different components.
Clock skew forces designers to use a large time period
between clock pulses. This makes the system slower.
So, in addition to other objectives, clock skew should
be minimized during clock routing.
-
5/25/2018 Clock
5/22
55/17/2014
Clock Design Problem
What are the main concerns for clock design?
Skew
No. 1 concern for clock networks
For increased clock frequency, skew may contribute over 10% ofthe system cycle time
Power very important, as clock is a major power consumer
It switches at every clock cycle
Noise
Clock is often a very strong aggressor
May need shielding Delay
Not really important
But slew rate is important (sharp transition)
-
5/25/2018 Clock
6/22
65/17/2014
The Clock Routing Problem
Given a source and nsinks.
Connect all sinks to the source by an interconnect
tree so as to minimize:
Clock Skew = maxi,j|ti- tj| Delay = maxiti
Total wirelength
Noise and coupling effect
-
5/25/2018 Clock
7/22
75/17/2014
Clock Design Considerations
Clock signal is global in nature, so clock nets areusually very long. Significant interconnect capacitance and resistance
So what are the techniques? Routing
Clock tree versus clock clock mesh (grid)
Balance skew and total wire length
Buffer insertion
Clock buffers to reduce clock skew, delay, and distortion in
waveform. Wire sizing
To further tune the clock tree/mesh
-
5/25/2018 Clock
8/22
85/17/2014
Clock trees
A path from the clock source to clock sinks
Clock Source
FF FF FF FF FFFF FF FFFF FF
-
5/25/2018 Clock
9/22
95/17/2014
Clock trees
A path from the clock source to clock sinks
Clock Source
FF FF FF FF FFFF FF FFFF FF
-
5/25/2018 Clock
10/22
105/17/2014
H-tree Algorithm
Minimize skew by making interconnections to subunits
equal in length
Regular pattern
Can be used when terminals are evenly distributed
However, this is never the case in practice
So strict (pure) H-trees are rarely used
However, still popular for top-level clock network design
Cons:too costly is used everywhere
-
5/25/2018 Clock
11/22
115/17/2014
-
5/25/2018 Clock
12/22
125/17/2014
A Zero Skew Algorithm
Use Elmore delay model to compute delay
Try to minimize wire length, but not done very well
Lots of follow up works to minimize total wire length while
maintaining zero skew
DME and its extensions
-
5/25/2018 Clock
13/22
135/17/2014
An Exact Zero Skew Algorithm [Tsay93]
-
5/25/2018 Clock
14/22
145/17/2014
A Zero Skew Algorithm [Tsay91]
This paper built the foundation for zero skew
Its principal can also be used to do prescribed skew
(just solve a slightly different delay equation with non-
zero skew)
However, its merging is kind of simple
May have too much total wire length
-
5/25/2018 Clock
15/22
155/17/2014
Deferred Merge Embedding
As its name implies, DME defers the merging as late
as possible, to make sure minimal wire length cost for
merging
Independently proposed by several groups
Edahiro, NEC Res Dev, 1991
Chao et al, DAC92
Boese and Kahng, ASIC92
DME needs an abstractrouting topologyas the input
It has a bottom-up phase followed by a top-downprocess
-
5/25/2018 Clock
16/22
165/17/2014
Bottom Up Phase
Each node v has a merging segment ms(v).
A merging segment is a Manhattan arc
Manhattan arc: has slope +/- 1 or has zero length
(could be a point). tiled rectangular region(TRR):The collection of
points within a fixed distance from a Manhattan arc.
The intersection of two TRRs is a TRR
Merging segments are always Manhattan arcs
-
5/25/2018 Clock
17/22
175/17/2014
-
5/25/2018 Clock
18/22
185/17/2014
-
5/25/2018 Clock
19/22
195/17/2014
DME is guaranteed to find the minimum wire length
with zero skew under the linear delay model
Need to have an abstract routing graph to start with
DME Wrapup[Boese and Kahng, ASIC92]
-
5/25/2018 Clock
20/22
205/17/2014
Modification: Bounded Skew
Instead of choosing merging segments as in DME,
choose merging regionof v, mr(v)
Maintains skew bound
Use boundary merging and embedding which
considers merging points lying on the nearest
boundary segments of mr(a) and mr(b)
-
5/25/2018 Clock
21/22
215/17/2014
Topology Generation
One common approach Balanced and geometry guided
Top down-partitioning that recursively divide the set of sinks,using alternating horizontal and vertical cuts
The balance bipartition heuristic generates a topology that
recursively divides the set of sinks into two subsets with equaltotal loading capacitance
Balanced tree versus unbalanced tree?
Geometric versus capacitive load?
[Chaturvedi and Hu, ICCD03] has good survey of recentworks
Abstract topology not just geometric, but also capacitive load,with prescribed skew
-
5/25/2018 Clock
22/22
225/17/2014
Trend
Clock skew scheduling together with clock treesynthesis
Schedule the timing slack of a circuit to the individual
registers for optimal performance and as a second
criteria to increase the robustness of the
implementation w.r.t. process variation. Variability is a major concern
Non-tree clock, mixed mesh/tree?
How to analyze it?
The task is to investigate a combined optimization forclock skew scheduling and clock tree synthesis such
that any unintentional clock skew is maximally
compensated by a corresponding slack at the
registers.
c
c
c
c
c
(P. Restle)