On Critical Path Selection Based Upon Statistical Timing Models -- Theory and Practice

Similar documents
Performance Sensitivity Analysis Using Statistical Methods and Its Applications to Delay Testing

Generation of High Quality Non-Robust Tests for Path Delay Faults

Advanced Testing. EE5375 ADD II Prof. MacDonald

PARADE: PARAmetric Delay Evaluation Under Process Variation * (Revised Version)

PARADE: PARAmetric Delay Evaluation Under Process Variation *

Longest Path Selection for Delay Test under Process Variation

Delay Variation Tolerance for Domino Circuits

Algorithms. NP -Complete Problems. Dong Kyue Kim Hanyang University

Umans Complexity Theory Lectures

Pre and post-silicon techniques to deal with large-scale process variations

Test Generation for Designs with Multiple Clocks

CSE241 VLSI Digital Circuits Winter Lecture 07: Timing II

Yield Modeling and Analysis of Bundled Data and Ring-Oscillator Based Designs

Computing Clock Skew Schedules Under Normal Process Variation

Knapsack. Bag/knapsack of integer capacity B n items item i has size s i and profit/weight w i

Unit 1A: Computational Complexity

Lecture 8: Sequential Networks and Finite State Machines

Predicting IC Defect Level using Diagnosis

Lesson 3-7: Absolute Value Equations Name:

Statistical Timing Analysis with Path Reconvergence and Spatial Correlations

Delay Testing from the Ivory Tower to Tools in the Workshop

Fast Buffer Insertion Considering Process Variation

or 0101 Machine

1 Submodular functions

Sequential Logic (3.1 and is a long difficult section you really should read!)

Timing Analysis. Andreas Kuehlmann. A k = max{a 1 +D k1, A 2 +D k2,a 3 +D k3 } S k. S j. Required times: S ki. given required times on primary outputs

Clocked Synchronous State-machine Analysis

Skew Management of NBTI Impacted Gated Clock Trees

Energy-Efficient Real-Time Task Scheduling in Multiprocessor DVS Systems

Time stealing: An adventure in tropical land

A Temperature-aware Synthesis Approach for Simultaneous Delay and Leakage Optimization

The Separation Problem for Binary Decision Diagrams

Timing-Aware Decoupling Capacitance Allocation in Power Distribution Networks

Latch/Register Scheduling For Process Variation

NP Completeness and Approximation Algorithms

EE382 Processor Design Winter 1999 Chapter 2 Lectures Clocking and Pipelining

Shift Register Counters

EEE2135 Digital Logic Design

More Approximation Algorithms

Micro-architecture Pipelining Optimization with Throughput- Aware Floorplanning

Logic Synthesis and Verification

Problem Set 9 Solutions

Dynamic Adaptation for Resilient Integrated Circuits and Systems

Branch-and-Bound. Leo Liberti. LIX, École Polytechnique, France. INF , Lecture p. 1

A Robustness Optimization of SRAM Dynamic Stability by Sensitivity-based Reachability Analysis

SAT-Solving: From Davis- Putnam to Zchaff and Beyond Day 3: Recent Developments. Lintao Zhang

Efficient Reluctance Extraction for Large-Scale Power Grid with High- Frequency Consideration

Computer Systems on the CERN LHC: How do we measure how well they re doing?

Static Timing Analysis Considering Power Supply Variations

Thermal-reliable 3D Clock-tree Synthesis Considering Nonlinear Electrical-thermal-coupled TSV Model

Segment-Fixed Priority Scheduling for Self-Suspending Real-Time Tasks

P,NP, NP-Hard and NP-Complete

Fault Modeling. 李昆忠 Kuen-Jong Lee. Dept. of Electrical Engineering National Cheng-Kung University Tainan, Taiwan. VLSI Testing Class

VIII. NP-completeness

APTAS for Bin Packing

Models for representing sequential circuits

EECS 141: SPRING 09 MIDTERM 2

DKDT: A Performance Aware Dual Dielectric Assignment for Tunneling Current Reduction

On Greedy Algorithms and Approximate Matroids

The P versus NP Problem. Ker-I Ko. Stony Brook, New York

A An Overview of Complexity Theory for the Algorithm Designer

Interconnect Power and Delay Optimization by Dynamic Programming in Gridded Design Rules

ECS122A Handout on NP-Completeness March 12, 2018

Buffered Clock Tree Sizing for Skew Minimization under Power and Thermal Budgets

Switching Activity Estimation Based on Conditional Independence

THE UNIVERSITY OF MICHIGAN. Faster Static Timing Analysis via Bus Compression

Introduction to Digital Logic

Statistical Timing Analysis using Kernel Smoothing

Inferring positional homologs with common intervals of sequences

Aside: Golden Ratio. Golden Ratio: A universal law. Golden ratio φ = lim n = 1+ b n = a n 1. a n+1 = a n + b n, a n+b n a n

Introduction to VLSI Testing

Some Algebra Problems (Algorithmic) CSE 417 Introduction to Algorithms Winter Some Problems. A Brief History of Ideas

Lecture Note: Rounding From pseudo-polynomial to FPTAS

Digital electronics form a class of circuitry where the ability of the electronics to process data is the primary focus.

quantum information technology Tad Hogg HP Labs

NP-Completeness. Until now we have been designing algorithms for specific problems

Econ Slides from Lecture 10

4. How to prove a problem is NPC

Outline Fault Simulation

Where Does Power Go in CMOS?

EE371 - Advanced VLSI Circuit Design

CS151 Complexity Theory. Lecture 1 April 3, 2017

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Probabilistic Databases

Limitations of Algorithm Power

Computer Sciences Department

/633 Introduction to Algorithms Lecturer: Michael Dinitz Topic: Matroids and Greedy Algorithms Date: 10/31/16

Variation-Resistant Dynamic Power Optimization for VLSI Circuits

Design for Manufacturability and Power Estimation. Physical issues verification (DSM)

Nanolithography and Design- Technology Co-optimization Beyond 22nm

Q520: Answers to the Homework on Hopfield Networks. 1. For each of the following, answer true or false with an explanation:

Reduction of Detected Acceptable Faults for Yield Improvement via Error-Tolerance

Computational Complexity and Intractability: An Introduction to the Theory of NP. Chapter 9

Definition: A "system" of equations is a set or collection of equations that you deal with all together at once.

This means that we can assume each list ) is

Mark A. Horowitz, Metha Jeeradit, Frances Lau, Sabrina Liao, ByongChan Lim, James Mao Electrical Engineering, Stanford University.

Introduction to Algorithms

Improved Direct Product Theorems for Randomized Query Complexity

Structural Delay Testing Under Restricted Scan of Latch-based Pipelines with Time Borrowing

A Geometric Programming-based Worst-Case Gate Sizing Method Incorporating Spatial Correlation

Transcription:

On Critical Path Selection Based Upon Statistical Timing Models -- Theory and Practice Jing-Jia Liou, Angela Krstic, Li-C. Wang, and Kwang-Ting Cheng University of California - Santa Barbara

Problem Find a small set of paths for explicit testing Because we can t afford testing of all paths Important for Optimization Timing validation Speed test and binning Delay defect diagnosis

Why Path Selection Again? Traditional definition of a critical path A timing long path Defined under worst-case or nominal delay models Delays are discrete values In the DSM domain, the problem is different DSM process variation and defect effects can better be captured with statistical timings What if we change the delays with the statistical timing models?

Consider This Example a 15/1 e Most critical? b 13/2 10/1 g c 14/2 9/3 d 12/3 f Most critical? The most critical path can be different based upon which delay model you have in mind!

Statistical Simulation a b c 15/1 e 13/2 14/2 10/1 9/3 g P1: a, e, g P2: b, e, g P3: c, f, g P4: d, f, g d 12/3 f Suppose 10000 chip instances are produced: P1 P2 P3 P4 43.6% 19.1% 23.6% 13.7%

In the DSM Domain The most critical path in different chip instances can be different Statistical simulation can captures that variation But, How can we re-define the concept of a critical path?

Statistical Definition of Being Critical Critical Prob. Critical Not critical How critical a path is can be defined as the probability of exceeding the clock period T

Statistical Timing Analysis Framework Cell/interconnect delays (random variables) Cell-based netlist (Static analyzer) False-path-aware statistical timing analysis framework (DAC 2002) 1. True circuit delay distributions 2. A set of sensitizable, timing true and critical paths

1. Path Filtering & 2. Path Selection Logic and timing false paths or Non-critical paths U S: tested Suppose we have U, a set of critical and true paths which are ranked by their critical probabilities (p 1 >p 2 >p 3 > >p n ) How to select k paths as the critical paths? The critical path set S = {p 1,,p k } for a given k?

Critical Path Set In traditional delay test A critical path set contains the k longest paths Where k is the affordable # of tests Under the statistical models Pick a clock period T Select those k paths with the largest critical probabilities Does that really give us a good path set? This paper says No! And explains why

Consider This Example overlap B A C 24/3 25/3 22/2 After A is selected, should we select B or C?

Change of A distribution Path Correlation clk Return by testing A clk It is unclear whether B or C is a better choice after A Return by testing B Need to calculate the correlation pdf for B given that A is tested

Not Forget Another Important Thing Topological Coverage Captured Not captured

Problem Formulation (ICCAD02) Maximizing P capture = P obj1 * P obj2 Prob. that defects fall on the selected paths (locations and sizes are independent Prob. that defects can be random variables) detected by testing those paths Maximizing individual objective is NP-hard Approximate the optimal solution is NP-hard A heuristic maximizing one may not maximizing the other

Find A Well-Studied Problem Given an edge-weighted graph G and a number k Find a set of k vertices to cover the maximum weights Max-Weight-Vertex-Cover (MWVC) Problem Finding (1-ε)-approximation is NP-hard This is also true if G is a hypergraph (M-C) MWVC Log-Reduction Max-Coverage Log-Reduction Maximizing P obj1

Maximizing P obj2 Maximizing P obj2 is similar But it is harder because the weights corresponds to prob. Correlations Need a different analysis (ICCAD 02)

Main Results (ICCAD 02) Identify the best known heuristic to maximize P obj1 Identify the best known heuristic to maximize P obj2 Can we identify a unique answer for both problems? (P capture = P obj1 * P obj2 ) Answer with proof: The best heuristic to maximize P obj2 is also a good heuristic to maximize P obj1 (implicitly can maximize P obj1 as well ICCAD 02)

Path Selection Heuristics H-timing: Select the most critical k paths H-segment: best heuristic to maximize P obj1 first H-Opt: maximizing P obj2 1. Select the most critical un-selected path 2. Find all paths correlated to the path 3. Update their critical probabilities according to the path correlations For comparison, we also consider Traditional Select the most critical k paths Use 3σ bound worst-case delays

Statistical Evaluation of S (ASP-DAC 03) A chip instance (w/ defect injected) Is any path in S exceeding clk? no Is any path in U - S exceeding clk? yes yes Covered NotCovered Missing P = NotCovered Covered + NotCovered

Traditional Vs. H-Opt No defect injection Simulate process variation Small Defect (single size) Large Defect (single size)

Missing Prob. P 70 60 50 40 30 20 10 0 Defect Free Traditional H-Opt 5 10 20 30 40 # of Selected Paths

Small Size Defect 90 80 70 Traditional H-Opt Missing Prob. P 60 50 40 30 20 10 0 5 10 20 30 40 50 60 70 80 # of Selected Paths

Missing Prob. P 90 80 70 60 50 40 30 20 10 0 Large Size Defect Traditional H-Opt 5 10 20 30 40 50 60 70 80 # of Selected Paths

Comparison of The Three Heuristics Small Defects: exponential distribution between 0 and 40 units Larger Defects: exponential distribution between 0 and 100 units

Small Defects (Statistical Simulation I) 0.9 0.8 0.7 Miss Prob. 0.6 0.5 0.4 0.3 0.2 0.1 0 5 10 20 30 40 50 60 70 80 90 100 150 200 250 # of Paths Selected H-Timing H-Segment H-Opt

Small Defects (Statistical Simulation II) 0.9 0.8 0.7 Miss Prob. 0.6 0.5 0.4 0.3 0.2 0.1 0 5 10 20 30 40 50 60 70 80 90 100 150 200 250 # of Paths Selected H-Timing H-Segment H-Opt

Larger Defects (Statistical Simulation I) 0.9 0.8 0.7 0.6 Miss Prob. 0.5 0.4 0.3 0.2 0.1 0 5 10 20 30 40 50 60 70 80 90 100 150 200 250 Defect Size H-Timing H-Segment H-Opt

Larger Defects (Statistical Simulation II) Miss Prob. 1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 5 10 20 30 40 50 60 70 80 90 # of Paths Selected H-Timing H-Segment H-Opt 100 150 200 250

More Results (Traditional Vs. H-Opt) Results of selecting 10 critical paths: Circuit U Size Traditional H-Opt Memory Time S5378 1238 48.5% 12.9% 6.8M 3M 11.8 0.29 S9234 842 0.0 0.0% 5.4M 4M 8.8 1.37 S15850 1728 4.3% 0.0% 11M 6M 96.9 5.23 S35932 4702 26.6% 0.0% 39.5M 20M 207 11.7 S38417 3972 80.9% 47.4% 50M 24M 181 6.95 s38584 136 0.0% 0.0% 41M 12M 102 0.26 Statistical path analysis (Path filtering step) Quality evaluation

Conclusion Considering statistical timing is better than using traditional delay models Considering path correlation is crucial for critical path selection in the statistical domain Our path selection consists of 2 phases: Path filtering (DAC 2002) Critical path selection (ICCAD 02, ASP-DAC 03) Experimental results confirms our theoretical analysis H-Opt is the most feasible heuristic for path selection in the statistical domain