Introduction to Digital VLSI Design יתרפס VLSI ןונכתל...

of 29 /29
Introduction to Digital VLSI Design מבוא לתכנוןVLSI ספרתיClock Lecturer: Gil Rahav Semester B’ , EE Dept. BGU. Freescale Semiconductors Israel

Embed Size (px)

Transcript of Introduction to Digital VLSI Design יתרפס VLSI ןונכתל...

  • Introduction to Digital VLSI DesignVLSI

    Clock

    Lecturer: Gil Rahav

    Semester B , EE Dept. BGU.

    Freescale Semiconductors Israel

  • Reference Signal in Sequential Elements.

    o Most critical signal in synchronous designs

    o Reference for all the timing measurements

    o Single clock signal serves multiple flops/latches

    Clock

  • Clock tree concepts

    For a successful signal launch and capture :-

    i) Tck-qff1 + Tdly3 = Skew + Tholdff2

    Clock Insertion Delay = Tdly1, Tdly2

    Clock Skew = Tdly2 Tdly1

  • Clock Tree Concepts

    Rise Skew :- Skew calculated based on Rise edge at Clock Root

    Fall Skew :- Skew calculated based on Fall edge at Clock Root

    Triggering edge Skew :- Skew calculated based on arrival times of active signal on clock pins

    Transition time :- The time taken by signal to make a transition from 20%-80% of the full value.

  • Clock Tree Architecture

  • H-Tree Mesh

  • H-Tree Clock Network

    Clock

    Clock

    Idlecondition

    Gatedclock

    Can insert clock gating atmultiple levels in clock tree

    Can shut off entire subtreeif all gating conditions aresatisfied

    If the paths are perfectly balanced, clock skew is zero

  • Clock Tree Synthesis :-i) Achieve Insertion Delay number

    ii) Achieve Skew Targets

    iii) Maintain Transition limits

    iv) Limit Power Numbers

    Compare the three Structures .?

  • SoC Clock Distribution Network

    External clock

    IP Coreor Module

    Global Clock Net

    Core InternalClock Net

    Core InternalClock Driver/PLL: Buffer Freq. Multiply Align

    SoC

    PLL

  • Example: H-Tree

    Restle et al., The clock distribution of the Power4 microprocessor, ISSCC2002

    Ref clk in

    Ref clk out

    PLL

    ClockDistribution

    PLL out

    Feedback

    3 2

    1Bypass

  • PLL Block Diagram

    Phasedetector

    Chargepump

    Divide byN

    Loopfilter VCO

    Referenceclock

    Localclock

    SystemClock

    Up

    Down

    vcont

  • Power reduction in Clock trees Clock Gating

  • Whats the Problem ?

    Clock variation

    Difference in arrival times to flops

    Static reasons = skew:

    - Unequal wire length

    - Unequal buffer delay

    - Unequal load

    - IR drop

    - In-die process variation

    Dynamic reasons = drift and jitter:

    - Switching load supply voltage variation, IR drop, coupling

    - Temperature

  • Two Methods of Clock Distribution Networks

    clock

    clock delay0

    (a) IP 1IP 2

    IP 3

    IP 4

    IP 5

    IP 6

    IP 7

    IP 8

    IP 9

    clockdistribution

    network

    Zero skewat clock inputs to IP cores

    Zero skewat the flip-flops

    clockdistribution

    network

    0

    clock

    (b) IP 1IP 2

    IP 3

    IP 4

    IP 5

    IP 6

    IP 7

    IP 8

    IP 9

    clock delay

    Assume perfectly balanced clock tree !

  • Clock Tree Synthesis

    when?

    Clock Tree synthesis is needed for nets which have high fanout:

    Clocks

    Asynchronous resets

    Scan signals which feed all the Flip-flops in the design

  • Clock Tree Synthesis

    Why?

    Minimal skew .

    Minimal insertion delay .

    DRC (Design Rule Constraints) max transition, max capacitance

  • Clock Tree Synthesis

    Why?

    Minimum Skew Hold violation

    A C

    B

    Hold time violation when A + B < C

  • Clock Tree Synthesis

    Why?

    Minimum Skew Setup violation

    CA

    B

    Setup time violation when A + B > C + T

  • Clock Tree Synthesis

    Why?

    Minimum Insertion Delay / Buffers Stages

    Large insertion delay increase power but also results with increased skew cause of On-Chip-Variation (OCV) .

    Total skewTotal skew

    Timing Violation

    Add BuffersOn LogicPath

    Total Power& Area

  • Clock Tree Synthesis

    Symmetric Clock tree

    All flops of a symmetric clock tree , traced back from the clocktree 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 fitall corners .

    Asymmetric tree results with increased skew variations at different corners .

  • Clock Tree Synthesis

    Asymmetric Clock Tree

    Asymmetric Clock Tree is used for non clock signals such as asynchronous resets & DFT signals.

    Asymmetric clock tree features:

    Requires max delay & max transition.

    Relaxed constraints for skew.

  • Review: Synchronous Timing Basics

    Under ideal conditions (i.e., when tclk1 = tclk2)

    T tc-q + tplogic + tsuthold tcdlogic + tcdreg

    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

    D Q

    R1Combinational

    logicD Q

    R2

    clk

    In

    tclk1 tclk2tc-q, tsu,

    thold, tcdreg

    tplogic, tcdlogic

  • Sources of Clock Skew and Jitter in Clock Network

    PLL

    1

    2

    4

    3

    5

    6

    7

    clock generation

    clock drivers

    power supply

    interconnectcapacitive load

    capacitive coupling

    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)

  • Positive Clock Skew

    D Q

    R1Combinational

    logicD Q

    R2

    clk

    In

    tclk1 tclk2delay

    > 0: Improves performance, but makes thold harder to meet. If thold is not met (race conditions), the circuit malfunctions independent of the clock period!

    T

    T + > 0

    + tholdT + tc-q + tplogic + tsu so T tc-q + tplogic + tsu -

    thold + tcdlogic + tcdreg so thold tcdlogic + tcdreg -

    1

    2

    3

    4

    Clock and data flow in the same direction

    T :

    thold :

  • Negative Clock Skew

    D Q

    R1Combinational

    logicD Q

    R2

    clk

    In

    tclk1 tclk2delay

    Clock and data flow in opposite directions

    T

    T +

    < 0

    T + tc-q + tplogic + tsu so T tc-q + tplogic + tsu -

    thold + tcdlogic + tcdreg so thold tcdlogic + tcdreg -

    1

    2

    3

    4

    < 0: Degrades performance, but thold is easier to meet (eliminating race conditions)

    T :

    thold :

  • Clock Jitter Jitter causes T to

    vary on a cycle-by-cycle basis

    R1Combinational

    logic

    clk

    In

    tclk

    T

    -tjitter +tjitter

    T - 2tjitter tc-q + tplogic + tsu so T tc-q + tplogic + tsu + 2tjitter

    Jitter directly reduces the performance of a sequential circuit

    T :

  • Combined Impact of Skew and Jitter

    D Q

    R1Combinational

    logicD Q

    R2

    In

    tclk1 tclk2

    Constraints on the minimum clock period ( > 0)

    > 0 with jitter: Degrades performance, and makes tholdeven harder to meet. (The acceptable skew is reduced by jitter.)

    T

    T + > 0

    1

    6 12-tjitter

    T tc-q + tplogic + tsu - + 2tjitter thold tcdlogic + tcdreg 2tjitter

  • Clock Distribution Networks

    Clock skew and jitter can ultimately limit the performance of a digital system, so designing a clock network that minimizes both is important

    In many high-speed processors, a majority of the dynamic power is dissipated in the clock network.

    To reduce dynamic power, the clock network must support clock gating (shutting down (disabling the clock) units)

    Clock distribution techniques Balanced paths (H-tree network, matched RC trees)

    - In the ideal case, can eliminate skew

    - Could take multiple cycles for the clock signal to propagate to the leaves of the tree

    Clock grids- Typically used in the final stage of the clock distribution network

    - Minimizes absolute delay (not relative delay)

  • Dealing with Clock Skew and Jitter To minimize skew, balance clock paths using H-tree or other

    clock distribution structures.

    If possible, route data and clock in opposite directions; eliminates races at the cost of performance.

    The use of gated clocks to help with dynamic power consumption make jitter worse.

    Shield clock wires (route power lines VDD or GND next to clock lines) to minimize/eliminate coupling with neighboring signal nets.

    Use dummy fills to reduce skew by reducing variations in interconnect capacitances due to interlayer dielectric thickness variations.

    Beware of temperature and supply rail variations and their effects on skew and jitter. Power supply noise fundamentally limits the performance of clock networks.