Statistical Static Timing Analysis: How simple can we get? Chirayu - - PowerPoint PPT Presentation

statistical static timing analysis how simple can we get
SMART_READER_LITE
LIVE PREVIEW

Statistical Static Timing Analysis: How simple can we get? Chirayu - - PowerPoint PPT Presentation

Statistical Static Timing Analysis: How simple can we get? Chirayu Amin , Noel Menezes * , Kip Killpack * , Florentin Dartu * , Umakanta Choudhury * , Nagib Hakim * , Yehea Ismail * Intel Corporation, ECE Department Northwestern


slide-1
SLIDE 1

Statistical Static Timing Analysis: How simple can we get?

Chirayu Amin†, Noel Menezes*, Kip Killpack*, Florentin Dartu*, Umakanta Choudhury*, Nagib Hakim*, Yehea Ismail†

†ECE Department

Northwestern University Evanston, IL 60208, USA

* Intel Corporation,

Hillsboro, OR 97124, USA

slide-2
SLIDE 2

2

Outline

Introduction Process Variation Model

Distributions Cell-library characterization

Methodology

Path-based Add/Max Operations

Results Conclusions

slide-3
SLIDE 3

3

Variations and their impact

  • Sources of Timing Variations
  • Channel Length
  • Dopant Atom Count
  • Oxide Thickness
  • Dielectric Thickness
  • Vcc
  • Temperature
  • Influence
  • Performance yield prediction
  • Optimization
  • Design convergence
  • Management (traditional)
  • ‘Corner’ based analysis

Sub-optimum

100 200 300 0.2 0.4 0.6 0.8 1 Path Rank ( from determ inistic tim ing analysis) 9 0 nm m icroprocessor block Probability( rank ≤ 5 0 ) Critical path # 190 will be in top 50 paths

  • n 10% of the dies!
slide-4
SLIDE 4

4

Recent solutions

Categories

Block-based pdf propagation

Non-incremental Incremental

Path-based pdf propagation Bound calculation Generic path analysis

Complexity

Non-gaussian pdf propagation Statistical MAX operation Correlations Reconvergence

slide-5
SLIDE 5

5

Factors influencing solutions

Predicting performance yield or optimizing

circuit?

Underlying process characteristics

How significant are the variation sources? How significant is each component?

Die-to-die / Within-die Channel length, Threshold voltage, etc

Architecuture and Layout

Number of stages between flip-flops Spatial arrangement of gates

slide-6
SLIDE 6

6

SSTA targets

Performance yield optimization

Die-to-die effects are more important Can be handled using a different

methodology

Design convergence

Affected primarily by within-die effects Gate’s delay w.r.t. others’ on the same die

Presented work addresses design convergence Presented work addresses design convergence

slide-7
SLIDE 7

7

Outline

Introduction Process Variation Model

Distributions Cell-library characterization

Methodology

Path-based Add/Max Operations

Results Conclusions

slide-8
SLIDE 8

8

Modeling variations

Only within-die effects considered

Variations

Channel Length (le) Threshold Voltage (vt) Uncorrelated or Random (vtr)

vt=vtnom+vtr

Correlated or Systematic (les) Uncorrelated or Random (ler)

le=lenom+les+ler

Main variations affecting delay: le and vt Main variations affecting delay: le and vt

slide-9
SLIDE 9

9

Parameter distributions

Gaussian distributions for les, ler, vtr

Characterized by σles, σler, σvtr

Systematic variation for les

Correlation is a function of distance

Die

i

j

ρij = ρ (dij)

*

d ρ (d)

1 mm *

* [16] S. Samaan, ICCAD ‘04

slide-10
SLIDE 10

10

effects of variations on delay

Cell-library characterization

Simulations similar as for deterministic STA

Plus extra simulations for measuring ∆delay

Gate tt CL

delay = delaynom(lenom,tt,CL) + ∆ delayles(les,tt,CL) + ∆ delayler(ler,tt,CL) + ∆ delayvtr(vtr,tt,CL) σ 2

delay = σ 2 delay,les(σ 2 les,tt,CL) + σ 2 delay,ler (σ2 ler,tt,CL) + σ 2 delay,vtr (σ2 vtr,tt,CL)

Overall delay variance is the sum of variances due to les, ler, and vtr Overall delay variance is the sum of variances due to les, ler, and vtr

slide-11
SLIDE 11

11

Measuring σdelay

Characterization of σdelay,les

Vary le similarly for all transistors in the cell (ρ= 1) Measure delay change for each input to output arc

Characterization of σdelay,ler and σdelay,vtr

Sample using Monte Carlo method

Each transistor sampled independently

Measure delay change for each input to output arc

slide-12
SLIDE 12

12

Outline

Introduction Process Variation Model

Distributions Cell-library characterization

Methodology

Path-based Add/ Max Operations

Results Conclusions

slide-13
SLIDE 13

13

Variation effects on a path

Systematic variations

Additive effect

(σ/µ)path-delay= (σ/µ)cell-delay

Spatial effect

Paths close together have very similar delay variation

Random variations

Cancellation effect

Variations die out as long as there are enough stages (σ/µ)path-delay= (1/sqrt(n))*(σ/µ)cell-delay ITRS projections: n~ 12 stages

slide-14
SLIDE 14

14

Paths converging on a flip-flop

Distribution of delay for each path known

From simple path-based analysis

Distribution of overall margin at flip-flop?

Statistical MAX operation!

slide-15
SLIDE 15

Statistical MAX operation

µ1 µ2 P1 P2 Non-overlapping x1 y1 x2 y2 P1 P2 Highly correlated, overlapping, com parable sigm as P1 P2 x1 µ1 x2 µ2 y2 y1 Highly correlated, overlapping, different sigm as P2 x1 µ1 y2 y1 µ2 x2 P1 Random , overlapping

MAX is non-trivial, but situations not observed on circuits MAX is trivial, and situations observed on circuits

1 2 3 4

slide-16
SLIDE 16

16

Comments about MAX

Path-delays are highly

correlated

Sigmas are similar Random components

die out due to depth

No need for a complicated MAX operation!! No need for a complicated MAX operation!!

slide-17
SLIDE 17

17

Path-based SSTA methodology

Typical path- based analysis Sampling Flop Logic Cell Logic Cell Clock sam ple path CS Clock-data path CGD Clock buffers Generating Flop clock grid

Main I dea

Calculate the timing-margin distribution, for each path ending at a flip-flop or a primary output (PO)

slide-18
SLIDE 18

18

Calculating margin distribution

Above analysis requires calculating delay variances and covariances for paths Statistical ADD operation

*includes tsetup

margin = tcs + T - t*

CGD

σ 2

margin=σ 2 CS +σ 2 CGD - 2⋅ cov(tCS,tCGD)

σCS – delay sigma for path CS σCGD – delay sigma for path CGD cov(tCS,tCGD) – covariance

between delays of CS and CGD

clock grid path CGD path CS

slide-19
SLIDE 19

19

Uncorrelated or Random Components

= −

=

n i ler i ler delay path 1 2 , 2 ,

σ σ

= −

=

n i vtr i vtr delay path 1 2 , 2 ,

σ σ

Correlated or Systematic Component

∑ ∑

= = −

=

n i n j les j ij les i les delay path 1 1 2 , 2 , 2 ,

σ ρ σ σ

Statistical ADD

Path delay variance is the sum of delay

variances due to les, ler, and vtr

σ 2

path-delay = σ 2 path-delay,les + σ 2 path-delay,ler + σ 2 path-delay,vtr

slide-20
SLIDE 20

20

Path-delay covariance

Easy to calculate based on pair-wise

covariances between individual gates

Gate i Gate j

Path 1 Path 2

∑ ∑ ∑ ∑

∈ ∈ ∈ ∈

= =

1 2 , , 1 2 2 1

) , cov( ,

p i p j j les i les ij p i p j j i p p

cell cell σ σ ρ σ

ρij

slide-21
SLIDE 21

21

Outline

Introduction Process Variation Model

Distributions Cell-library characterization

Methodology

Path-based Add/Max Operations

Results Conclusions

slide-22
SLIDE 22

22

Results

Methodology applied to a large microprocessor block

More than 100K cells 90 nm technology Fully extracted parasitics

Block-based (BFS) analysis to identify top N critical

end-nodes (flop inputs, POs)

Critical paths identified by back-tracking Path-based SSTA performed on the critical paths Comparison with Monte Carlo Analysis

slide-23
SLIDE 23

23

Monte Carlo

600 dies (profiles) for

varying les, ler, and vtr

Number depends on

correlation distance, block size, etc

Full block-based

analysis (BFS)

Not just on critical paths Deterministic STA on

each of the generated 600 dies

* *

* [16] S. Samaan, ICCAD ‘04

les ler and vtr

slide-24
SLIDE 24

24

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.1 0.2 0.3 0.4 0.5 0.6 0.7

Monte Carlo Margin Sigma Path-based Margin Sigma

(data for top 492 end-nodes)

Comparison with Monte Carlo

Good correlation with Monte Carlo Results! Good correlation with Monte Carlo Results!

slide-25
SLIDE 25

25

Analysis

Error in predicting sigma

Maximum: 0.066 FO4 delay Average: 0.19% of the path delay

Monte Carlo showed that distributions of

margins are Gaussian

No need for more complex distributions At each end-node

Only one or two paths were clearly showing up as worst

paths on 80% of Monte Carlo samples

Relative ordering of paths ending up at a node does not

change

slide-26
SLIDE 26

26

Outline

Introduction Process Variation Model

Distributions Cell-library characterization

Methodology

Path-based Add/Max Operations

Results Conclusions

slide-27
SLIDE 27

27

Conclusions

Statistical timing is important Simple path-based algorithm is

adequate

Justified based on design, variation profiles

Distributions are Gaussian Errors in estimating sigma are

acceptable

slide-28
SLIDE 28

Q & A