Clock

22
5/25/2018 Clock-slidepdf.com http://slidepdf.com/reader/full/clock-562031be1b969 1/22 5/17/2014 1 Clock Network Synthesis Prof. Shiyan Hu [email protected] Office: EREC 731

Transcript of Clock

  • 5/25/2018 Clock

    1/22

    5/17/2014 1

    Clock Network Synthesis

    Prof. Shiyan Hu

    [email protected]

    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)