chapter 11 timing issues in digital systems boonchuay supmonchai integrated design application...

23
Chapter 11 Chapter 11 Timing Issues in Digital Systems Timing Issues in Digital Systems Boonchuay Supmonchai Integrated Design Application Research ( IDAR) Laboratory August 20, 2004; Revised - July 5, 2005

Upload: mae-wilkinson

Post on 18-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

Chapter 11Chapter 11

Timing Issues in Digital SystemsTiming Issues in Digital Systems

Boonchuay SupmonchaiIntegrated Design Application Research (IDAR) Laboratory

August 20, 2004; Revised - July 5, 2005

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

2

B.SupmonchaiB.Supmonchai

Goals of This ChapterGoals of This Chapter Introduction to timing issues in digital design

Classification of Digital systems

Impact on performance and functionality Clock SkewClock Skew

Clock JitterClock Jitter

Clock-Distribution Techniques

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

3

B.SupmonchaiB.Supmonchai

Timing ClassificationsTiming Classifications Synchronous systems

All memory elements in the system are simultaneously updated using a globally distributed periodic synchronization signal (i.e., a global clock signal)

Functionality is ensure by strict constraints on the clock signal generation and distribution to minimize Clock skewClock skew (spatial variations in clock edges)

Clock jitterClock jitter (temporal variations in clock edges)

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

4

B.SupmonchaiB.Supmonchai

Timing Classifications IITiming Classifications II Asynchronous systems

Self-timed (controlled) systemsSelf-timed (controlled) systems

No need for a globally distributed clock, but have asynchronous circuit overheads (handshaking logic, etc.)

Hybrid systems Mesochronous and Plesiochronous Systems

SynchronizationSynchronization between different clock domains

Interfacing between asynchronous and synchronous domains

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

5

B.SupmonchaiB.Supmonchai

Synchronous System Timing BasicsSynchronous System Timing Basics

Under ideal conditions (i.e., when ttclk1clk1 = = ttclk2clk2)

TT ttc-qc-q + + ttplogicplogic + + ttsusu

ttholdhold ≤ ≤ ttcdlogiccdlogic + + ttcdregcdreg

ttc-qc-q, t, tsusu,,

ttholdhold, t, tcdregcdreg

clkclk ttclk1clk1 ttclk2clk2

D Q

R1R1CombinationalCombinational

LogicLogic D Q

R2R2

InIn

ttc-qc-q, t, tsusu,,

ttholdhold, t, tcdregcdreg

Maximum Clock Period, TMaximum Clock Period, T

ttplogicplogic, t, tcdlogiccdlogic

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

6

B.SupmonchaiB.Supmonchai

Clock UncertaintiesClock Uncertainties

PLLPLL

11clock clock generationgeneration

22 clock driversclock drivers

44 power supplypower supply

33 interconnectinterconnect66 capacitive loadcapacitive load

77 capacitive capacitive couplingcoupling

55 temperaturetemperature

Under real conditions, clock signal can have both spatialspatial and temporaltemporal variations Systematic (Deterministic)Systematic (Deterministic) - easy to model and correct for at

design time

RandomRandom - difficult to model and eliminate

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

7

B.SupmonchaiB.Supmonchai

Clock NonidealitiesClock Nonidealities Clock skew, ttSKSK (Pink Pink + + OrangeOrange)

Spatial variation in temporally equivalent clock edges

Can be either deterministic or random or both

Clock jitter (BlueBlue + OrangeOrange) Temporal variations in consecutive edges of the clock signal

Modulation and random additive noise

Short term (cycle-to-cycle) ttJSJS and long term ttJLJL

Variation of the pulse width Important for level sensitive clocking

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

8

B.SupmonchaiB.Supmonchai

ClkClk

ClkClk

ttSKSK

ttJSJS

Clock Skew and JitterClock Skew and Jitter

Both clock skew and jitter affect the effective cycle time

Only clock skew affects the race margin

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

9

B.SupmonchaiB.Supmonchai

Distribution of Clock SkewDistribution of Clock Skew

Earliest occurrenceEarliest occurrenceof of ClkClk edge edgeNominal – Nominal – /2/2

# of registers# of registers

Clk delayClk delayInsertion delayInsertion delay

Latest occurrenceLatest occurrenceof of ClkClk edge edge

Nominal + Nominal + /2/2

Max Max ClkClk skew skew

NegativeNegative PositivePositive

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

10

B.SupmonchaiB.Supmonchai

Positive Clock SkewPositive Clock Skew

clkclk ttclk1clk1 ttclk2clk2

delaydelayTT

>> 00

+ t+ tholdhold

T + T + t tc-qc-q + t + tplogic plogic + t+ tsusu so T T t tc-qc-q + t + tplogic plogic + t+ tsu su - - ttholdhold + + ≤ t≤ tcdlogiccdlogic + t + tcdregcdreg so ttholdhold ≤ t≤ tcdlogiccdlogic + t + tcdreg cdreg - -

Clock and data flow in the same direction

D Q

R1R1CombinationalCombinational

LogicLogic D Q

R2R2

InIn

T + T + 1

2

3

4

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

11

B.SupmonchaiB.Supmonchai

Negative Clock SkewNegative Clock Skew

D Q

R1R1CombinationalCombinational

LogicLogic D Q

R2R2

InIn

clkclkttclk1clk1 ttclk2clk2

delaydelay

TT

<< 0 0

T + T + t tc-qc-q + t + tplogic plogic + t+ tsusu so T T t tc-qc-q + t + tplogic plogic + t+ tsu su - - ttholdhold + + ≤ t≤ tcdlogiccdlogic + t + tcdregcdreg so ttholdhold ≤ t≤ tcdlogiccdlogic + t + tcdreg cdreg - -

2

1 3

4

T + T +

Clock and data flow in opposite direction

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

12

B.SupmonchaiB.Supmonchai

T - 2tT - 2tjitterjitter t tc-qc-q + t + tplogic plogic + t+ tsu su so so T T t tc-qc-q + t + tplogic plogic + t+ tsu su + 2t+ 2tjitterjitter

Jitter directly reduces the performance of a sequential circuitJitter directly reduces the performance of a sequential circuit

Clock JitterClock Jitter Jitter causes TT

to vary on a cycle-by-cycle basis

clkclk ttclkclk

D Q

R1R1CombinationalCombinational

LogicLogicInIn

TT

-t-tjitterjitter +t+tjitterjitter

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

13

B.SupmonchaiB.Supmonchai

ttclk1clk1 ttclk2clk2

> > 00

-t-tjitterjitter

T T t tc-qc-q + t + tplogic plogic + t+ tsu su - - + 2t + 2tjitterjitter tthold hold ≤ t≤ tcdlogiccdlogic + t + tcdreg cdreg – – – 2t – 2tjitterjitter

Combined Impact of Skew and JitterCombined Impact of Skew and Jitter Constraints on the minimum clock period ( > 0)

D Q

R1R1CombinationalCombinational

LogicLogic D Q

R2R2

InIn

1

6 12

TTT + T +

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

14

B.SupmonchaiB.Supmonchai

Note on Clock SkewNote on Clock Skew ForFor Positive Clock skewPositive Clock skew: > 0 improvesimproves

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

For Negative Clock skewFor Negative Clock skew: < 0 degradesdegrades performance, but ttholdhold is easier to meet (eliminating race conditions)

For Skew with JitterFor Skew with Jitter: > 0 with jitter degrades performance, and makes ttholdhold even harderharder to meet. (The acceptable skew is reduced by jitter.)

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

15

B.SupmonchaiB.Supmonchai

Clock Distribution NetworksClock 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)

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

16

B.SupmonchaiB.Supmonchai

Clock Distribution Factors Clock Distribution Factors Things to consider

Interconnect material used for routing clock

Shape of network

Clock drivers and buffers used

Load on clock lines

Rise and fall time of clock (may have to consider transmission line effects as well!!)

Skew specifications

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

17

B.SupmonchaiB.Supmonchai

Clock Distribution TechniquesClock Distribution Techniques Balanced paths (H-treeH-tree network, matched RCmatched 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)

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

18

B.SupmonchaiB.Supmonchai

ClockClock

Clock

Idlecondition

Gatedclock

Insert clock gating atInsert clock gating atmultiple levels in clock multiple levels in clock treetree

Shut off entire subtreeShut off entire subtreeif all gating conditions if all gating conditions are satisfiedare satisfied

If the paths are perfectlyperfectly balanced, clock skew is zero

H-Tree Clock NetworkH-Tree Clock Network

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

19

B.SupmonchaiB.Supmonchai

DEC Alpha 21164 (EV5)DEC Alpha 21164 (EV5) 300 MHz clock (9.3 million transistors on a 16.5x18.1

mm die in 0.5 micron CMOS technology) single phase clock

3.75 nF total clock load Extensive use of dynamic logic

20 W (out of 50W) or 40% in clock distribution network

Two level clock distribution Single 6 stage driver at the center of the chip

Secondary buffers drive the left and right sides of the clock grid in m3 and m4

Total equivalent driver size of 58 cm !!

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

20

B.SupmonchaiB.Supmonchai

Clock Drivers

DEC Alpha 21164DEC Alpha 21164

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

21

B.SupmonchaiB.Supmonchai

Clock Skew in Alpha ProcessorClock Skew in Alpha Processor Absolute

skew smaller than 90 ps

The critical instruction and execution units all see the clock within 65 psThe critical instruction and execution units all see the clock within 65 ps

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

22

B.SupmonchaiB.Supmonchai

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

matched-treematched-tree 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.

2102-545 Digital ICs2102-545 Digital ICs Timing Issues in Digital Systems

23

B.SupmonchaiB.Supmonchai

Dealing with Clock Skew and Jitter IIDealing with Clock Skew and Jitter II 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 Power supply noise fundamentally limits the performance of clock fundamentally limits the performance of clock networks.networks.