lec16-timing1

download lec16-timing1

of 13

Transcript of lec16-timing1

  • 7/27/2019 lec16-timing1

    1/13

  • 7/27/2019 lec16-timing1

    2/13

  • 7/27/2019 lec16-timing1

    3/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Limitations on Clock Rate

    1 Logic Gate Delay 2 Delays in flip-flops

    What must happen in one clock cycle for correct operation? All signals connected to FF (or memory) inputs must be

    ready and setup before rising edge of clock. For now we assume perfect clock distribution (all flip-flops

    see the clock at the same time).5

    What are typical delay values?Both times contribute tolimiting the clock period.

    Spring 2013 EECS150 - Lec16-timing1 Page

    ExampleParallel to serialconverter circuit

    T time(clk Q) + time(mux) + time(setup)

    T clk Q + mux + setupa

    b

    clk

    6

  • 7/27/2019 lec16-timing1

    4/13

  • 7/27/2019 lec16-timing1

    5/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Transistors as Conductors Improved Transistor Model:

    nFET We refer to transistor "strength" asthe amount of current that flows for a given Vds and Vgs.

    The strength is linearly proportionalto the ratio of W/L.

    pFET

    9

    Spring 2013 EECS150 - Lec16-timing1 Page

    Gate Delay is the Result of Cascading Cascaded gates:

    transfer curve for inverter.

    10

  • 7/27/2019 lec16-timing1

    6/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Delay in Flip-flops Setup time results from delay

    through first latch.

    clk

    clk

    clk

    clk

    clk

    clk

    clk

    clk

    11

    Clock to Q delay results fromdelay through second latch.

    Spring 2013 EECS150 - Lec16-timing1 Page

    Wire Delay Ideally, wires behave as

    transmission lines: signal wave-front moves close

    to the speed of light ~1ft/ns

    Time from source todestination is called thetransit time.

    In ICs most wires are short,and the transit times arerelatively short compared tothe clock period and can beignored.

    Not so on PC boards.

    12

  • 7/27/2019 lec16-timing1

    7/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Wire Delay Even in those cases where the

    transmission line effect isnegligible: Wires posses distributed

    resistance and capacitance

    Time constant associated withdistributed RC is proportionalto the square of the length

    For short wires on ICs,resistance is insignificant(relative to effective R of transistors), but C is important. Typically around half of C of

    gate load is in the wires. For long wires on ICs:

    busses, clock lines, globalcontrol signal, etc.

    Resistance is significant,therefore distributed RC effectdominates.

    signals are typically rebufferedto reduce delay:

    v1 v2 v3 v4

    13

    v1

    v4v3

    v2

    time

    Spring 2013 EECS150 - Lec16-timing1 Page

    Delay and Fan-out

    The delay of a gate is proportional to its output capacitance.Connecting the output of gate to more than one other gate increasesits output capacitance. It takes increasingly longer for the output ofa gate to reach the switching threshold of the gates it drives as weadd more output connections.

    Driving wires also contributes to fan-out delay. What can be done to remedy this problem in large fan-out situations?

    1

    3

    2

    14

  • 7/27/2019 lec16-timing1

    8/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Critical Path

    Critical Path: the path in the entire design with the maximumdelay. This could be from state element to state element, or from

    input to state element, or state element to output, or from inputto output (unregistered paths).

    For example, what is the critical path in this circuit?

    Why do we care about the critical path?

    15

    Spring 2013 EECS150 - Lec16-timing1 Page

    Components of Path Delay

    1. # of levels of logic2. Internal cell delay3. wire delay4. cell input capacitance5. cell fanout6. cell output drive strength

    16

  • 7/27/2019 lec16-timing1

    9/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Who controls the delay?

    17

    Siliconfoundaryengineer

    Cell LibraryDeveloper, FPGA-chip designer

    CAD Tools(logic synthesis,place and route

    Designer (you)

    1. # of levels synthesis RTL

    2. Internal celldelay

    physicalparameters

    cell topology, trans sizing

    cell selection

    3. Wire delay physicalparameters

    place & route layoutgenerator

    4. Cell inputcapacitance

    physicalparameters

    cell topology, trans sizing

    cell selection

    5. Cell fanout synthesis RTL

    6. Cell drivestrength

    physicalparameters

    transistor sizing cell selection instantiation(ASIC)

    Spring 2013 EECS150 - Lec16-timing1 Page

    Searching for processor critical pathMust consider all connected register pairs,paths from input to register, register tooutput. Dont forget the controller.

    ?

    18

    Design tools help in the search. Synthesis tools report delays on paths, Special static timing analyzers accept

    a design netlist and report path delays, and, of course, simulators can be used

    to determine timing performance.

    Tools that are expected to do something about the timing behavior (such assynthesizers), also include provisions forspecifying input arrival times (relative to theclock), and output requirements (set-uptimes of next stage).

  • 7/27/2019 lec16-timing1

    10/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Real Stuff: Timing Analysis

    From The circuit and physical design of the POWER4 microprocessor, IBM J Res and Dev, 46:1, Jan 2002, J.D. Warnock et al.

    40 20 0 20 40 60 80 100 120 140 160 180 200 220 240 260 280

    Timing slack (ps)

    L a t e - m o

    d e t i m

    i n g c h e c

    k s

    ( t h o u

    s a n

    d s )

    0

    50

    100

    150

    200

    Most paths have hundreds ofpicoseconds to spare.

    The critical path

    19

    Spring 2013 EECS150 - Lec16-timing1 Page

    Clock Skew

    Unequal delay in distribution of the clock signal to various parts ofa circuit: if not accounted for, can lead to erroneous behavior. Comes about if:

    clock wires have different delay, circuit is designed with a different number of clock buffers from

    the clock source to the various clock loads, or buffers have unequal delay.

    All synchronous circuits experience some clock skew: more of an issue for high-performance designs operating with very

    little extra time per clock cycle.

    clock skew, delay in distribution

    20

  • 7/27/2019 lec16-timing1

    11/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Clock Skew (cont.)

    If clock period T = T CL+T setup +T clk Q, circuit will fail.

    Therefore:1. Control clock skew

    a) Careful clock distribution. Equalize path delay from clock source toall clock loads by controlling wires delay and buffer delay.b) dont gate clocks in a non-uniform way.

    2. T T CL+T setup +T clk Q + worst case skew.

    Most modern large high-performance chips (microprocessors)control end to end clock skew to a small fraction of the clock period.

    clock skew, delay in distribution

    CL

    CLKCLK

    CLK

    CLK

    21

    Spring 2013 EECS150 - Lec16-timing1 Page

    Clock Skew (cont.)

    Note reversed buffer. In this case, clock skew actually provides extra time (adds to

    the effective clock period). This effect has been used to help run circuits as higher

    clock rates. Risky business!

    CL

    CLKCLK

    clock skew, delay in distribution

    CLK

    CLK

    22

  • 7/27/2019 lec16-timing1

    12/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    Real Stuff: Floorplanning Intel XScale 80200

    23

    Spring 2013 EECS150 - Lec16-timing1 Page

    D e l a y

    Grid

    Tuned sector trees

    Sector

    buffers

    Buffer level 2

    Buffer level 1

    y

    x

    Clock TreeDelays,

    IBM PowerCPU

    D e l a y

    24

  • 7/27/2019 lec16-timing1

    13/13

    Spring 2013 EECS150 - Lec16-timing1 Page

    D e

    l a y Multiple-

    fingered transmissiline

    x Clock Tree Delays, IBM Power

    1.5

    1.0

    0.5

    0.0

    0 500 1000 1500 2000 2500

    20 ps skew V o

    l t s

    ( V )

    Time (ps)

    25