ee241b : advanced digital circuitsinst.eecs.berkeley.edu/~ee241/sp20/lectures/lecture9... ·...

28
inst.eecs.berkeley.edu/~ee241b Borivoje Nikolić EE241B : Advanced Digital Circuits Lecture 9 – Timing February 14, 2020, EETimes: Five Chip Companies Hold 53% of Global Wafer Capacity An increasing percentage of the world’s capacity is getting concentrated in the hands of the largest producers. 1 EECS241B L09 FLIP-FLOP TIMING

Upload: others

Post on 16-Jul-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

inst.eecs.berkeley.edu/~ee241b

Borivoje Nikolić

EE241B : Advanced Digital Circuits

Lecture 9 – Timing

February 14, 2020, EETimes: Five Chip

Companies Hold 53% of Global Wafer Capacity

An increasing percentage of

the world’s capacity is getting

concentrated in the hands of

the largest producers.

1EECS241B L09 FLIP-FLOP TIMING

Page 2: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Announcements

• Project abstracts due today, by e-mail• Teams of 2

• Title

• One paragraph

• 5 relevant references

• Can also combine with CS252 or EE290 projects

• Quiz 1 on Tuesday, Feb 25, in class

• Office hour moved to 11am on Monday

2EECS241B L09 FLIP-FLOP TIMING

Page 3: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Outline

• ISSCC recap

• Module 2• Technology variability

• Module 3• Flip-flop timing

3EECS241B L09 FLIP-FLOP TIMING

Page 4: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

2.P Design VariabilitySome Random Effects

17EECS241B L09 FLIP-FLOP TIMING

Page 5: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Negative Bias Temperature Instability

• PFET VTh’s shift in time, at high negative bias and elevated temperatures

• The mechanism is thought to be the breaking of hydrogen-silicon bonds at the Si/SiO2 interface, creating surface traps and injecting positive hydrogen-related species into the oxide.

• Also other charge trapping and hot-carrier defect generation

• Systematic + random shifts

Tsujikawa, IRPS’2003EECS241B L09 FLIP-FLOP TIMING 18

Page 6: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Random Telegraph Signal (RTS)

• Trapping of a carrier in oxide traps modulates Vth or Ids

• τe and τc are random and follow exponential distributions

Single Hole Trap Multiple Hole Trap

N. Tega et al, IRPS 2008.

τcτe

Capture

Emit

EECS241B L09 FLIP-FLOP TIMING 19

Page 7: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

-4-3-2-101234

1 10 100

CD

F (σ

)∆Vth (mV)

RTSRDF

RTS and Technology Scaling

• RTS exceeds RDF at 3 sigma with 20nm gates

Tega et. al, VLSI Tech. 09 

L/W = 20/45nm

WL1

ΔVth, RTS~

WL1

ΔVth, RDF~

EECS241B L09 FLIP-FLOP TIMING 20

Page 8: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

3. Design for Performance

3.A Flip-Flop Timing

21EECS241B L09 FLIP-FLOP TIMING

Page 9: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Flip-Flop Parameters

D

Clk

Q

D

Q

Clk

TCQ

TH

PWm

TSU

Delays can be different for rising and falling data transitions

EECS241B L09 FLIP-FLOP TIMING 22

Page 10: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Latch Parameters

D

Clk

Q

D

Q

Clk

TCQ

TH

PWm TSU

TDQ

Delays can be different for rising and falling data transitions

Unger and TanTrans. on Comp.10/86

EECS241B L09 FLIP-FLOP TIMING 23

Page 11: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

EXAMPLE CLOCK SYSTEM

Courtesy of IEEE Press, New York. 2000

EECS241B L09 FLIP-FLOP TIMING 24

Page 12: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Clock Nonidealities

• Clock skew• Spatial variation in temporally equivalent clock edges; deterministic + random, tSK

• Clock jitter• Temporal variations in consecutive edges of the clock signal; modulation + random noise

• Cycle-to-cycle (short-term) - tJS• Long-term - tJL

• Variation of the pulse width • for level-sensitive clocking

EECS241B L09 FLIP-FLOP TIMING 25

Page 13: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Clock Skew and Jitter

• Both skew and jitter affect the effective cycle time

• Only skew affects the race margin, if jitter is from the source• Distribution-induced jitter affects both

Clk1

Clk2

tSK

tJS

EECS241B L09 FLIP-FLOP TIMING 26

Page 14: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Clock Uncertainties

2

43

Power Supply

Interconnect

5 Temperature

6 Capacitive Load

7 Coupling to Adjacent Lines

1 Clock Generation

Devices

Sources of clock uncertainty

EECS241B L09 FLIP-FLOP TIMING 27

Page 15: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Clock Constraints in Edge-Triggered Systems

Courtesy of IEEE Press, New York. 2000EECS241B L09 FLIP-FLOP TIMING 28

Page 16: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

3.B Timing with Uncertainty/Variations

29EECS241B L09 FLIP-FLOP TIMING

Page 17: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Pictorial View of Setup and Hold Tests

0 or moreswitching(s)allowed

Latest clock arrival time Earliest clock arrival time(next cycle)

Data must be stable

Hold time

Early RAT

Data must be stable

Setup time

Late RAT

Actual early AT Actual late AT

Earlyslack

Lateslack

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 30

Page 18: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

LF CF

Hold test

Handling of Across-Chip Variation

• Each gate has a range of delay: [lb, ub]• The lower bound is used for early timing• The upper bound is used for late timing

• This is called an early/late split

• Static timing obtains bounds on timing slacks• Timing is performed as one forward pass and one backward pass

LF CF

Setup test

Capturing early path

Launching late path

Capturing late path

Launching early path

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 31

Page 19: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

How is the Early/Late Split Computed?

• The best way is to take known effects into account during characterization of library cells• History effect, simultaneous switching, pre-charging of internal nodes, etc.• This drives separate characterization for early and late; this is the most accurate method

• Failing that, the most common method is derating factors• Example: Late delay = library delay * 1.05

Early delay = library delay * 0.95• The IBM way of achieving derating is LCD factors (Linear Combination of Delay) (FC=fast

chip, SC=slow chip, see next page)• Late delay = L * FC_delay + L * NOM_delay + L * SC_delay

Early delay = E * FC_delay + E * NOM_delay + E * SC_delay• Across-chip variation is therefore assumed to be a fixed proportion of chip-to-chip

variation for each cell type

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 32

Page 20: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

IBM Delay Modeling*

Intrinsic:Chip means

SystematicACV

RandomACV

Early Late Early Late

*P. S. Zuchowski, ICCAD’04

At a given cornerlate delay = intrinsic + systematic + randomearly delay = intrinsic – systematic – random

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 33

Page 21: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Traditional Timing Corners

Fast

chi

p ea

rly

Fast

chi

p la

te

Intra-chip variation

Slow

chi

p ea

rly

Slow

chi

p la

te

Intra-chip variation

Chip-to-chip variation

Fast chip Slow chip

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 34

Page 22: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

The Problem with an Early/Late Split

• The early/late split is very useful• Allows bounds during delay modeling• Any unknown or hard-to-model effect can be swept under the rug of an

early/late split• But, it has problems

• Additional pessimism (which may be desirable)• Unnecessary pessimism (which is never desirable)

LF CF

Setup test

Capturing early path

Launching late path

This physically commonportion can’t be both fastand slow at the same time

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 35

Page 23: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

How to Have Less Pessimism?

• Common path pessimism removal

• Account for correlations

• Credit for statistical averaging of random

EECS241B L09 FLIP-FLOP TIMING 36

Page 24: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Statistical Timing

• Deterministic

• Statistical

a

b

c++ MAX

b

a

c++ MAX

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 37

Page 25: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Statistical Max Operation

*C. E. Clark, “The greatest of a finite set of random variables,” OR Journal, March-April 1961, pp. 145—162**M. Cain, “The moment-generating function of the minimum of bivariate normal random variables,” American Statistician, May ’94, 48(2)

EECS241B L09 FLIP-FLOP TIMING 38

Page 26: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Unified View of Correlations

Independentlyrandom part

Spatially correlated part:within-chip distance-related correlation

Globally correlated part: chip-to-chip, wafer-to-wafer, batch-to-batch variation

1

0 Distance

Correlation Coefficient

Rrii XaXaaD 0

ICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 39

Page 27: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Spatial Correlation vs. Early/Late Split

LF1 LF2 CFLF3

early clock

0

1

2

3

4 6

7

8

9

10

5 11

12

13

14

15

16

17 19

20

21

22

23

18 24

25

26

27

28

29

30 32

33

34

35

36

31 37

38

39

40

41

42

43 45

46

47

48

49

44 50

51

52

53

54

55

56 58

59

60

61

62

57 63

64

65

66

67

68

69 71

72

73

74

75

70 76

77

7879

8081

82 84

85

86

87

88

83 89

90

Dependence on common virtual variables cancels out at the timing testICCAD '07 Tutorial Chandu VisweswariahEECS241B L09 FLIP-FLOP TIMING 40

Page 28: EE241B : Advanced Digital Circuitsinst.eecs.berkeley.edu/~ee241/sp20/Lectures/Lecture9... · 2020-02-20 · Clk Q D Q Clk T CQ T H PW m T SU T DQ ... Hold time Early RAT Data must

Next Lecture

• Latch-based timing

• Flip-flops

EECS241B L09 FLIP-FLOP TIMING 41