IP Library Granted Patent US 9,483,602
Granted Patent B2
US 9,483,602 · App. 13/881,866 · Granted Nov 1, 2016

Method and system for identifying rare-event failure rates

Inventors: Trent Lorne McConaghy (Vancouver, CA); Joel Cooper (Saskatoon, CA); Jeffrey Dyck (Saskatoon, CA); Kyle Fisher (Saskatoon, CA)
Assignee: SOLIDO DESIGN AUTOMATION INC.
G06F17/5081G06F17/5009G06F17/5022G06F17/5036G06F2217/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,483,602
App. No.
13/881,866
Granted
Nov 1, 2016
Kind
B2
Abstract

A method and system to estimate failure rates in designs. N Monte Carlo samples are drawn from the random distribution that describes process variation in the design. A subset of these samples is selected, and that subset of N init samples are simulated (with a circuit simulator) to measure a performance value for each sample. A model is constructed, using the values of the N init process points as training inputs, and the corresponding N init performance values as training outputs. The candidate Monte Carlo samples are from the N Monte Carlo samples that have not yet been simulated. Each candidate is simulated on the model to get predicted performance values, and the samples are ordered in ascending (or descending) order of the predicted performance values. Simulation of candidates samples is then begun, in that order. The sampling and simulation will stops once there is sufficient confidence that all failures are found.

Claims (59)

1. A non-transitory, tangible computer-readable medium having recorded thereon instructions for execution by a computer to carry out a method to identify rare-event failures of an electrical circuit design (ECD), the ECD having associated thereto process variables and performance metrics, the performance metrics being dependent on the process variables, the process variables having a probability distribution, the method comprising:

generating a set of points from the probability distribution of the process variables;

selecting a subset of points from the set of points;

simulating the ECD for each point of the subset of points, to obtain simulation data;

in accordance with the simulation data, calculating a value of a performance metric for each point of the subset of points, to obtain a set of performance metric values, the performance metric having associated thereto a target value;

in accordance with the set of performance metric values and with the values of the process variables for each point of the subset of points, building a model of the performance metric as a function of the process variables;

in accordance with the model, obtaining, for remaining points of the set of points, respective modeled performance metric values and, ordering the remaining points as a function of their respective modeled performance metric values, to obtain a set of ordered remaining points; and

displaying a count of a number of ECD failures, to obtain a displayed count of ECD failures by, starting with a selected ordered remaining point from the set of ordered remaining points, iteratively repeating the following actions a-e until a stop condition is met:

(a) simulating the selected ordered remaining point to obtain simulation data of the selected ordered remaining point;

(b) calculating, in accordance with the simulation data of the selected ordered remaining point, a value of the performance metric of the selected ordered remaining point;

(c) comparing the value of the performance metric of the selected ordered remaining point to the target value;

(d) if the value of the performance metric of the selected ordered remaining point does not meet the target value, augmenting the displayed count of ECD failures; and,

(e) in the next iteration of actions a-e, using the next ordered remaining point in the set of ordered remaining points as the selected ordered remaining point.

2. The non-transitory, tangible computer-readable medium of claim 1 wherein the remaining points are distinct from points of the subset of points.

3. The non-transitory, tangible computer-readable medium of claim 1 wherein a total number of points of the set of points is determined in accordance with a target yield of the ECD.

4. The non-transitory, tangible computer-readable medium of claim 1 wherein a failure rate of the ECD or a yield of the ECD is estimated in accordance with the number of ECD failures, and a total number of points of the set of points.

5. The non-transitory, tangible computer-readable medium of claim 4 wherein the method further comprises automatically determining if all ECD failures have been found.

6. The non-transitory, tangible computer-readable medium of claim 4 wherein the method further comprises determining a confidence interval for the failure rate of the ECD or the yield of the ECD.

7. The non-transitory, tangible computer-readable medium of claim 1 wherein the model is a regression model that includes at least one of a linear model, a polynomial model, a spline model, a Gaussian process model, a neural network, a Multivariate Adaptive Regression Spline model, and an Fast Function Extraction model.

8. The non-transitory, tangible computer-readable medium of claim 1 wherein, subsequent an iteration of actions a-d, rebuilding of the model is effected based on all simulated points, to obtain a rebuilt model and, the points that have yet to be simulated are reordered in accordance with the rebuilt model.

9. The non-transitory, tangible computer-readable medium of claim 1 further comprising displaying a plot, the plot including a curve showing the values of the performance metric for simulated points as a function of an order in which the points were simulated.

10. The non-transitory, tangible computer-readable medium of claim 1 wherein the method further comprises displaying a plot, the plot including a curve of a probability distribution of the performance metric.

11. The non-transitory, tangible computer-readable medium of claim 10 wherein the curve shows at least one extreme portion of a probability distribution of the performance metric.

12. The non-transitory, tangible computer-readable medium of claim 1 wherein the method further comprises obtaining additional points in a space defined by the process variables, the additional points being outside the set of points.

13. The non-transitory, tangible computer-readable medium of claim 12 wherein the method further comprises:

simulating the ECD at the additional points to obtain additional simulation data;

in accordance with the additional simulation data, calculating additional performance metric values; and,

modifying the model in accordance with the additional performance metric values.

14. The non-transitory, tangible computer-readable medium of claim 12 wherein the method further comprises:

estimating an error or uncertainty of the model, to obtain an estimated error or uncertainty; and

obtaining the additional points in accordance with the estimated error or uncertainty.

15. The non-transitory, tangible computer-readable medium of claim 1 wherein displaying the count of the number of ECD failures includes displaying in a plot the count of the number of ECD failures.

16. The non-transitory, tangible computer-readable medium of claim 1 wherein generating the set of points from the probability distribution of the process variables includes sampling the probability distribution of the process variables.

17. A non-transitory, tangible computer-readable medium having recorded thereon instructions for execution by a computer to carry out a method to identify rare-event occurrences of an electrical circuit design (ECD), the ECD having associated thereto process variables and performance metrics, the performance metrics being dependent on the process variables, the process variables having a probability distribution, the method comprising:

generating a set of points from the probability distribution of the process variables;

selecting a subset of points from the set of points;

simulating the ECD for each point of the subset of points, to obtain simulation data;

in accordance with the simulation data, calculating a value of a performance metric for each point of the subset of points, to obtain a set of performance metric values;

in accordance with the set of performance metric values and with the values of the process variables for each point of the subset of points, building a model of the performance metric as a function of the process variables;

in accordance with the model, obtaining, for remaining points of the set of points, respective modeled performance metric values and, ordering the remaining points as a function of their respective modeled performance metric values, to obtain a set of ordered remaining points; and

displaying a plot of a distribution of the values of the performance metric, to obtain a displayed plot by, starting with a selected ordered remaining point from the set of ordered remaining point, iteratively repeating the following actions a-d until a stop condition is met:

(a) simulating the selected ordered remaining point to obtain simulation data of the selected ordered remaining point;

(b) calculating a value of the performance metric of the selected ordered remaining point in accordance with the simulation data of the selected ordered remaining point;

(c) incorporating the value of the performance metric of the selected ordered remaining point into the plot of the distribution of the values of the performance metric; and

(d) in the next iteration of actions a-d, using the next ordered remaining point in the set of ordered remaining points as the selected ordered remaining point.

18. A non-transitory, tangible computer-readable medium having recorded thereon instructions for execution by a computer to carry out a method to identify rare-event failures of an electrical circuit design (ECD), the ECD having associated thereto process variables and performance metrics, the performance metrics being dependent on the process variables, the process variables having a probability distribution, the method comprising:

generating a set of points from the probability distribution of the process variables;

selecting a subset of points from the set of points;

simulating the ECD for each point of the subset of points, to obtain simulation data;

in accordance with the simulation data, for at least two of the performance metrics of the ECD, calculating a value of each of the at least two performance metrics for each point of the subset of points, to obtain at least two sets of performance metric values, each set of performance metric values corresponding to a respective one of the at least two performance metrics;

in accordance with the at least two sets of performance metric values and with the values of the process variables for each point of the subset of points, building a model for each of the at least two performance metrics as a function of the process variables, each of the at least two performance metrics having associated thereto at least one target value;

for each target value of each performance metric, in accordance with the model of each of the at least two performance metrics, obtaining, for remaining points of the set of points, respective modeled performance metric values and, ordering the remaining points as a function of their respective modeled performance metric values to obtain sets of ordered remaining points, a number of sets of ordered remaining points being equal to a number of the target values, an order of each set of ordered remaining points being set in accordance with its related target value;

interleaving the sets of ordered remaining points to obtain a set of interleaved ordered remaining points;

displaying a count of a number of ECD failures, to obtain a displayed count of ECD failures by, starting with a selected interleaved ordered remaining point of the set of interleaved ordered remaining points, iteratively repeating the following actions a-e until a stop condition is met:

(a) simulating the selected interleaved ordered remaining point to obtain simulation data of the selected interleaved ordered remaining point;

(b) calculating, in accordance with the simulation data of the selected interleaved ordered remaining point, a calculated value for each the at least two performance metrics;

(c) comparing each target value to the calculated value of its associated performance metric;

(d) for each target value, if the target value is not met by the calculated value of its associated performance metric, augmenting the displayed count of the ECD failures; and

(e) in the next iteration of actions a-e, using the next interleaved ordered remaining point in the set of interleaved ordered remaining points as the selected interleaved ordered remaining point.

Assignments (6)
MERGER AND CHANGE OF NAME Recorded Jun 24, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 056647/0440 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2019
From: MENTOR GRAPHICS (CANADA) ULC
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 047992/0327 →
CHANGE OF NAME Recorded Jan 14, 2019
From: MENTOR GRAPHICS (CANADA) LIMITED
To: MENTOR GRAPHICS (CANADA) ULC
Reel/Frame 048071/0691 →
MERGER AND CHANGE OF NAME Recorded May 7, 2018
From: SOLIDO DESIGN AUTOMATION INC.; MENTOR GRAPHICS (CANADA) LIMITED
To: MENTOR GRAPHICS (CANADA) LIMITED
Reel/Frame 045730/0583 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2013
From: MCCONAGHY, TRENT LORNE
To: SOLIDO DESIGN AUTOMATION INC.
Reel/Frame 030788/0470 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2013
From: COOPER, JOEL; DYCK, JEFFREY; FISHER, KYLE
To: SOLIDO DESIGN AUTOMATION INC.
Reel/Frame 030788/0537 →
Continuity (2)
Provisional Application 61407230 · Oct 27, 2010
Related Publication 20130226544A1 · Aug 29, 2013