ESE 535 Electronic Design Automation Day 14 March
- Slides: 33
ESE 535: Electronic Design Automation Day 14: March 19, 2008 Statistical Static Timing Analysis 1 Penn ESE 535 Spring 2008 -- De. Hon
Today • • • Sources of Variation Limits of Worst Case Optimization for Parametric Yield Statistical Analysis Difficulties 2 Penn ESE 535 Spring 2008 -- De. Hon
Central Problem Mean Number of Dopant Atoms • As our devices approach the atomic scale, we must deal with statistical effects governing the placement and behavior of individual atoms and electrons. 10000 100 10 1000 500 250 130 65 32 Technology Node (nm) Penn ESE 535 Spring 2008 -- De. Hon 16 • Transistor critical dimensions • Atomic discreteness • Subwavelength litho • Etch/polish rates • Focus • Number of dopants 3 • Dopant Placement
Parameter Variation • Parameters will vary from device-todevice on the die – Include transistor threshold (Vth) 4 Penn ESE 535 Spring 2008 -- De. Hon Sverdlov et al. TRED v 50 n 9 p 1926 2003
ITRS 2005 Variation 5 Penn ESE 535 Spring 2008 -- De. Hon
Source: Noel Menezes, Intel ISPD 2007 6 Penn ESE 535 Spring 2008 -- De. Hon
Source: Noel Menezes, Intel ISPD 2007 7 Penn ESE 535 Spring 2008 -- De. Hon
• Margins growing due to increasing variation Probability Distribution Worst Case Old New Delay • Delay=Mean+3 > older technology? 8 Penn ESE 535 Spring 2008 -- De. Hon
Sequential Paths • Tpath = t 0+t 1+t 2+t 3+…t(d-1) • Ti – iid random variables – Mean t – Variance • Tpath – Mean d×t – Variance = d × 9 Penn ESE 535 Spring 2008 -- De. Hon
Sequential Paths • Tpath = t 0+t 1+t 2+t 3+…t(d-1) • Tpath – Mean d×t – Variance = d × • 3 sigma delay on path: d×t + 3 d × – Worst case per component would be: d×(t+3 ) – Overestimate d vs. d 10 Penn ESE 535 Spring 2008 -- De. Hon
Parallel Paths • • • Tcycle = max(Tp 0, Tp 1, Tp 2, …Tp(n-1)) P(Tcycle<T 0) = P(Tp 0<T 0)×P(Tp 1<T 0)… = [P(Tp<T 0)]n 0. 5 = [P(Tp<T 50)]n P(Tp<T 50) = (0. 5)(1/n) 11 Penn ESE 535 Spring 2008 -- De. Hon
• P(Tp<T 50) = (0. 5)(1/n) Probability Distribution System Delay – N=108 0. 99993 • 1 -7× 10 -9 – N=1010 0. 999993 • 1 -7× 10 -11 • For 50% yield want – 6 to 7 – T 50=Tmean+7 path 12 Penn ESE 535 Spring 2008 -- De. Hon
System Delay 13 Penn ESE 535 Spring 2008 -- De. Hon
Source: Noel Menezes, Intel ISPD 2007 14 Penn ESE 535 Spring 2008 -- De. Hon
But does it mislead? • STA with worst-case says these are equivalent: 15 Penn ESE 535 Spring 2008 -- De. Hon
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 16 Penn ESE 535 Spring 2008 -- De. Hon
Delay Calculation Day 7 AND rules 17 Penn ESE 535 Spring 2008 -- De. Hon
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) 18 Penn ESE 535 Spring 2008 -- De. Hon
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… 19 Penn ESE 535 Spring 2008 -- De. Hon
Sum of Gaussians • Two Guassians – A, A and B, B – SUM = (A+B), – If identical • SUM = 2 A, A 2 20 Penn ESE 535 Spring 2008 -- De. Hon
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] 21 Penn ESE 535 Spring 2008 -- De. Hon
[Source: Nikil Mehta] SSTA Example • Represent delay and arrival time statistically ( , ) • Picking large variance (10) for all delays (3, 10) 1 t=(3, 10) (2, 10) 2 (12, 10) t=(2, 10) (4, 10) (12, 10) 3 t=(4, 10) (12, 10) 4 Penn ESE 535 t=(1, 10) Spring 2008 -- De. Hon (6, 10) (3, 10) 6 (6, 10) (0, 0) (5, 10) 5 (3, 10) (0, 0) S (2, 10) 7 22
[Source: Nikil Mehta] 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 (3, 10) 1 (6, 10) (3, 10) t=(9, 14) 6 (2, 10) (6, 10) 2 (12, 10) t=(14, 14) 0. 35 (5, 10) (4, 10) (12, 10) 0. 43 3 5 t=(16, 14) t=(4, 10) 0. 22 t=(32, 14) (3, 10) (2, 10) (12, 10) t=(13, 14) 4 7 Penn ESE 535 t=(1, 10) Spring 2008 -- De. Hon (0, 0) S 23
[Source: Nikil Mehta] SSTA Example • Finish forward pass – Now, have statistical delay pdf of circuit – Normal distribution with =51 and =15 (3, 10) 1 t=(3, 10) (6, 10) 0. 03 (3, 10) t=(9, 14) 6 (6, 10) 0. 97 t=(44, 17) (2, 10) (0, 0) 2 (12, 10) t=(14, 14) 0. 64 0. 35 (5, 10) t=(44, 17) t=(38, 17) (4, 10) (12, 10) 0. 43 3 5 S t=(16, 14) (0, 0) t=(4, 10) t=(51, 15) 0. 22 t=(32, 14) (3, 10) 0. 36 (2, 10) (12, 10) t=(35, 17) t=(13, 14) t=(37, 20) 4 1. 00 7 24 t=(1, 10) Penn ESE 535 Spring 2008 -- De. Hon t=(37, 20)
[Source: Nikil Mehta] 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 0. 03 6 2 0. 97 0. 35 3 0. 43 Printing critical paths (7/7) … [crit=0. 27](node 3 ->sink) [crit=0. 21](node 2 ->sink) [crit=0. 15](node 3 ->sink) [crit=0. 13](node 4 ->sink) [crit=0. 12](node 2 ->sink) [crit=0. 07](node 4 ->sink) [crit=0. 02](node 1 ->sink) 0. 64 5 S 0. 22 4 Penn ESE 535 Spring 2008 -- De. Hon 0. 36 1. 00 7 25
Probability of Path Being Critical [Source: Intel DAC 2005] 26 Penn ESE 535 Spring 2008 -- De. Hon
More Technicalities • Correlation – Physical on die – In path (reconvergent fanout) • Makes result conservative – Gives upper bound – Can compute lower 2 1 4 3 Graphics from: Noel Menezes (top) and Nikil Mehta (bottom) 27 Penn ESE 535 Spring 2008 -- De. Hon
SSTA vs. Corner Models • STA with corners predicts 225 ps • SSTA predicts 162 ps at 3 • SSTA reduces pessimism by 28% [Slide composed by Nikil Mehta] Penn ESE 535 Spring 2008 -- De. Hon 28 Source: IBM, TRCAD 2006
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 [Slide composed by Nikil Mehta] 29 Penn ESE 535 Spring 2008 -- De. Hon Source: IBM, TRCAD 2006
Using SSTA in FPGA CAD [Slide composed by Nikil Mehta] • Le Hei – FPGA 2007 – SSTA Synthesis, Place, Route • Kia – FPGA 2007 – Route with SSTA 30 Penn ESE 535 Spring 2008 -- De. Hon
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 31 Penn ESE 535 Spring 2008 -- De. Hon
Admin • Reading for Monday • Homework due Monday 32 Penn ESE 535 Spring 2008 -- De. Hon
Big Ideas: • Coping with uncertainty • Statistical Reasoning and Calculation 33 Penn ESE 535 Spring 2008 -- De. Hon
- 535 before 14 march
- Day 1 day 2 day 3 day 4
- Poland national anthem lyrics
- Electronic design automation course
- Day 1 day 2 day 817
- 535 before 7 february
- 535 days before 23 april
- Adw535
- Loi 30 juin 1975
- Ufc 3-535-01
- Ssd 535-2
- Bekendtgørelse 535
- Mgt 535
- Astronomy picture of the day march 29 2006
- March 23 world meteorological day
- Is the electronic exchange of money or scrip
- Electronic field production examples
- Design automation for embedded systems
- Optima design automation
- Vlsi physical design automation
- Jasper design automation
- Electrical design automation
- Property specification language
- Schoolmax gradebook
- Ocean apart day after day
- Day to day maintenance
- As your room gets messier day by day, entropy is
- I don't know about tomorrow
- Romeo and juliet week timeline
- Growing day by day
- Seed germination inhibitors examples
- Seed germination conclusion
- Observation of plant growth day by day
- I live for jesus day after day