Presentation is loading. Please wait.

Presentation is loading. Please wait.

Penn ESE535 Spring 2008 -- DeHon 1 ESE535: Electronic Design Automation Day 14: March 19, 2008 Statistical Static Timing Analysis.

Similar presentations


Presentation on theme: "Penn ESE535 Spring 2008 -- DeHon 1 ESE535: Electronic Design Automation Day 14: March 19, 2008 Statistical Static Timing Analysis."— Presentation transcript:

1 Penn ESE535 Spring 2008 -- DeHon 1 ESE535: Electronic Design Automation Day 14: March 19, 2008 Statistical Static Timing Analysis

2 Penn ESE535 Spring 2008 -- DeHon 2 Today Sources of Variation Limits of Worst Case Optimization for Parametric Yield Statistical Analysis Difficulties

3 Penn ESE535 Spring 2008 -- DeHon 3 Central Problem As our devices approach the atomic scale, we must deal with statistical effects governing the placement and behavior of individual atoms and electrons. 10 100 1000 10000 1000500250130653216 Technology Node (nm) Mean Number of Dopant Atoms Transistor critical dimensions Atomic discreteness Subwavelength litho Etch/polish rates Focus Number of dopants Dopant Placement

4 Penn ESE535 Spring 2008 -- DeHon 4 Parameter Variation Parameters will vary from device-to- device on the die –Include transistor threshold (V th ) Sverdlov et al. TRED v50n9p1926 2003

5 Penn ESE535 Spring 2008 -- DeHon 5 ITRS 2005 Variation

6 Penn ESE535 Spring 2008 -- DeHon 6 Source: Noel Menezes, Intel ISPD2007

7 Penn ESE535 Spring 2008 -- DeHon 7 Source: Noel Menezes, Intel ISPD2007

8 Penn ESE535 Spring 2008 -- DeHon 8 Margins growing due to increasing variation Delay=Mean+3  > older technology? Worst Case Probability Distribution Delay New Old

9 Penn ESE535 Spring 2008 -- DeHon 9 Sequential Paths T path = t 0 +t 1 +t 2 +t 3 +…t (d-1) T i – iid random variables –Mean  –Variance  Tpath –Mean d×  –Variance  d  × 

10 Penn ESE535 Spring 2008 -- DeHon 10 Sequential Paths T path = t 0 +t 1 +t 2 +t 3 +…t (d-1) T path –Mean d×  –Variance  d  ×  3 sigma delay on path: d×  d  ×  –Worst case per component would be: d×(  –Overestimate d vs.  d

11 Penn ESE535 Spring 2008 -- DeHon 11 Parallel Paths T cycle = max(T p0,T p1,T p2,…T p(n-1) ) P(T cycle <T 0 ) = P(T p0 <T 0 )×P(T p1 <T 0 )… = [P(T p <T 0 )] n 0.5 = [P(T p <T 50 )] n P(T p <T 50 ) = (0.5) (1/n)

12 Penn ESE535 Spring 2008 -- DeHon 12 System Delay P(T p <T 50 ) = (0.5) (1/n) –N=10 8  0.999999993 1-7×10 -9 –N=10 10  0.99999999993 1-7×10 -11 For 50% yield want –6 to 7  –T 50 =T mean +7  path Probability Distribution Delay

13 Penn ESE535 Spring 2008 -- DeHon 13 System Delay

14 Penn ESE535 Spring 2008 -- DeHon 14 Source: Noel Menezes, Intel ISPD2007

15 Penn ESE535 Spring 2008 -- DeHon 15 But does it mislead? STA with worst-case says these are equivalent:

16 Penn ESE535 Spring 2008 -- DeHon 16 What do we need to do? Ideal: –compute PDF for delay at each gate –Compute delay of a gate as a PDF from: PDF of inputs PDF of gate delay

17 Penn ESE535 Spring 2008 -- DeHon 17 Delay Calculation AND rules Day 7

18 Penn ESE535 Spring 2008 -- DeHon 18 What do we need to do? Ideal: –compute PDF for delay at each gate –Compute delay of a gate as a PDF from: PDF of inputs PDF of gate delay –Need to compute for distributions SUM MAX (maybe min)

19 Penn ESE535 Spring 2008 -- DeHon 19 Dealing with PDFs Simple model assume all PDFs are Gaussian –Model with mean,  –Imperfect Not all phenomena are Gaussian Sum of Gaussians is Gaussian Max of Gaussians…is not…

20 Penn ESE535 Spring 2008 -- DeHon 20 Sum of Gaussians Two Guassians –A,  A and B,  B –SUM = (A+B), –If identical SUM = 2A,  A  2

21 Penn ESE535 Spring 2008 -- DeHon 21 MAX of Two Identical Gaussians Given two identical Gaussians A and B with  and  Plug into equations E[MAX(A,B)] =  +  /(  ) 1/2 VAR[MAX(A,B)] =  2 –  /  [Source: Nikil Mehta]

22 Penn ESE535 Spring 2008 -- DeHon 22 SSTA Example Represent delay and arrival time statistically ( ,  ) Picking large variance (10) for all delays t=(1,10) 1 2 3 4 6 7 5S (3,10) (4,10) (1,10) (2,10) t=(4,10) t=(2,10) t=(3,10) (6,10) (3,10) (0,0) (3,10) (2,10) (5,10) (12,10) [Source: Nikil Mehta]

23 Penn ESE535 Spring 2008 -- DeHon 23 SSTA Example Perform statistical SUM’s Once we get to node 5, calculate tightness probabilities of input edges –Will allow us to perform statistical MAX –MAX is computed pairwise t=(1,10) 1 2 3 4 6 7 5S (3,10) (6,10) (4,10) (1,10) (6,10) (3,10) (0,0) (2,10) (3,10) (2,10) (5,10) (12,10) t=(4,10) t=(2,10) t=(3,10) t=(16,14) t=(14,14) (12,10) t=(13,14) (12,10) 0.35 0.43 0.22 t=(9,14) t=(32,14) [Source: Nikil Mehta]

24 Penn ESE535 Spring 2008 -- DeHon 24 SSTA Example Finish forward pass –Now, have statistical delay pdf of circuit –Normal distribution with  =51 and  =15 t=(1,10) 1 2 3 4 6 7 5S (3,10) (6,10) (4,10) (1,10) (6,10) (3,10) (0,0) (2,10) (3,10) (2,10) (5,10) (12,10) t=(4,10) t=(2,10) t=(3,10) t=(16,14) t=(14,14) t=(9,14) t=(32,14) t=(38,17) t=(35,17) (12,10) t=(13,14) (12,10) 0.35 0.43 0.22 0.03 0.97 1.00 0.36 0.64 t=(44,17) t=(37,20) t=(51,15) t=(37,20) t=(44,17) [Source: Nikil Mehta]

25 Penn ESE535 Spring 2008 -- DeHon 25 SSTA Example Also have statistical criticality of all paths –Criticality ´ Product of tightness probabilities along path –SSTA outputs list of paths in order of criticality On backward pass can calculate –Statistical slack –Statistical node/edge criticality 1 2 3 4 6 7 5S 0.35 0.43 0.22 0.03 0.97 1.00 0.36 0.64 Printing critical paths (7/7) … [crit=0.27](node3->sink) [crit=0.21](node2->sink) [crit=0.15](node3->sink) [crit=0.13](node4->sink) [crit=0.12](node2->sink) [crit=0.07](node4->sink) [crit=0.02](node1->sink) [Source: Nikil Mehta]

26 Penn ESE535 Spring 2008 -- DeHon 26 Probability of Path Being Critical [Source: Intel DAC 2005]

27 Penn ESE535 Spring 2008 -- DeHon 27 More Technicalities Correlation –Physical on die –In path (reconvergent fanout) Makes result conservative –Gives upper bound –Can compute lower 2 3 14 Graphics from: Noel Menezes (top) and Nikil Mehta (bottom)

28 Penn ESE535 Spring 2008 -- DeHon 28 SSTA vs. Corner Models STA with corners predicts 225ps SSTA predicts 162ps at 3  SSTA reduces pessimism by 28% Source: IBM, TRCAD 2006 [Slide composed by Nikil Mehta]

29 Penn ESE535 Spring 2008 -- DeHon 29 SSTA vs. Monte Carlo Verification Time Instead people report SSTA vs Monte Carlo –Monte Carlo obviously way slower than just simulating corners –However, corners don’t cover all cases Source: IBM, TRCAD 2006 [Slide composed by Nikil Mehta]

30 Penn ESE535 Spring 2008 -- DeHon 30 Using SSTA in FPGA CAD Kia –FPGA2007 –Route with SSTA Le Hei –FPGA2007 –SSTA Synthesis, Place, Route [Slide composed by Nikil Mehta]

31 Penn ESE535 Spring 2008 -- DeHon 31 Summary Nanoscale fabrication is a statistical process Delays are PDFs Assuming each device is worst-case delay is too pessimistic –Wrong prediction about timing –Leads optimization in wrong direction Reformulate timing analysis as statistical calculation Estimate the PDF of circuit delays

32 Penn ESE535 Spring 2008 -- DeHon 32 Admin Reading for Monday Homework due Monday

33 Penn ESE535 Spring 2008 -- DeHon 33 Big Ideas: Coping with uncertainty Statistical Reasoning and Calculation


Download ppt "Penn ESE535 Spring 2008 -- DeHon 1 ESE535: Electronic Design Automation Day 14: March 19, 2008 Statistical Static Timing Analysis."

Similar presentations


Ads by Google