Efficient extraction of K-sigma corners from Monte Carlo simulation
Abstract
A system, method, and computer program product for efficiently finding the best Monte Carlo simulation samples for use as design corners for all design specifications to substitute for a full circuit design verification. Embodiments calculate a corner target value matching an input variation level by modeling the circuit performance with verified accuracy, estimate the corner based on a response surface model such that the corner has the highest probability density (or extrapolation from the worst sample if the model is inaccurate), and verify and/or adjust the corner by performing a small number of additional simulations. Embodiments also estimate the probability that a design already meets the design specifications at a specified variation level. Composite multimodal and non-Gaussian probability distribution functions enhance model accuracy. The extracted design corners may be of particular utility during circuit design iterations. A potential twenty-fold reduction in overall design specification verification time may be achieved.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A processor-implemented method for finding Monte Carlo simulation samples for use as corners of a design for a circuit, to facilitate the provision of a manufacturable description of the circuit, the method comprising:
generating the Monte Carlo circuit simulation samples and corresponding circuit performance measures using a circuit simulator tool;
modeling distributions of the circuit performance measures corresponding to input circuit design specifications, wherein the modeling includes fitting an extended normal distribution model for at least one generated circuit performance measure distribution;
calculating corner target values having specified variations using the modeled circuit performance measure distributions;
estimating corner values having the specified variations such that the estimated corner values match the calculated corner target values; and
tangibly outputting the estimated corner values to provide the manufacturable description of the circuit.
2. The method of claim 1 wherein the method further comprises:
verifying the estimated corner values by performing additional simulations; and
selectively adjusting the estimated corner values by performing further additional simulations and scaling from the closest estimated corner values, based on the match between the calculated corner target values and the estimated corner values.
3. The method of claim 1 wherein the method further comprises estimating the probability that the design meets all the input circuit design specifications at the specified variations by estimating the percentage of the generated Monte Carlo circuit simulation samples that perform better than the input circuit design specifications.
4. The method of claim 1 wherein the estimating uses one of an accuracy-tested response surface model and a worst one of the Monte Carlo samples.
5. The method of claim 1 wherein the modeling further comprises:
testing each generated circuit performance measure distribution for normality; and
selectively fitting one of a normal distribution model and the extended normal distribution model to each generated circuit performance measure distribution, based on the testing.
6. The method of claim 5 wherein the fitting of the extended normal distribution model further comprises:
detecting a mode of each generated circuit performance measure distribution that is closest to the corresponding input circuit design specification;
calculating a variance value and a kurtosis value from the generated circuit performance measure occurring between the mode and the corresponding input circuit design specification; and
fitting one of a Student's t-distribution and a cubic normal cumulative distribution function, based on the kurtosis value.
7. The method of claim 6 wherein the fitting of the extended normal distribution model further comprises adjusting the extended normal distribution model to have a cumulative distribution function value at the mode that is estimated from a percentile of the mode.
8. The method of claim 1 wherein the estimating further comprises, for each circuit performance measure, finding the corner value with the highest probability of occurrence by proceeding in a parameter value space from a nominal design parameter value along a circuit performance measure gradient vector scaled by a covariance matrix of parameters, until the corner target value is met.
9. The method of claim 8 wherein the estimating further comprises, for each circuit performance measure, selectively extrapolating in the parameter value space from the nominal design parameter value toward an estimated corner value based on a worst case sample parameter value among the generated Monte Carlo circuit simulation samples and a corresponding worst case generated circuit performance measure.
10. A system for finding Monte Carlo simulation samples for use as corners of a design for a circuit, to facilitate the provision of a manufacturable description of the circuit, the system comprising:
a non-transitory memory storing executable instructions; and
a processor executing instructions for:
generating the Monte Carlo circuit simulation samples and corresponding circuit performance measures using a circuit simulator tool;
modeling distributions of the circuit performance measures corresponding to input circuit design specifications, wherein the modeling includes fitting an extended normal distribution model for at least one generated circuit performance measure distribution;
calculating corner target values having specified variations using the modeled circuit performance measure distributions;
estimating corner values having the specified variations such that the estimated corner values match the calculated corner target values; and
tangibly outputting the estimated corner values to provide the manufacturable description of the circuit.
11. The system of claim 10 further comprising instructions for:
verifying the estimated corner values by performing additional simulations; and
selectively adjusting the estimated corner values by performing further additional simulations and scaling from the closest estimated corner values, based on the match between the calculated corner target values and the estimated corner values.
12. The system of claim 10 further comprising instructions for estimating the probability that the design meets all the input circuit design specifications at the specified variations by estimating the percentage of the generated Monte Carlo circuit simulation samples that perform better than the input circuit design specifications.
13. The system of claim 12 further comprising instructions for selectively estimating the probability that the design meets all the input circuit design specifications at the specified variations with a binomial distribution, based on Clopper-Pearson confidence intervals.
14. The system of claim 10 wherein the instructions for the modeling further comprise instructions for:
testing each generated circuit performance measure distribution for normality; and
selectively fitting one of a normal distribution model and the extended normal distribution model to each generated circuit performance measure distribution, based on the testing.
15. The system of claim 14 wherein the instructions for the fitting of the extended normal distribution model further comprise instructions for:
detecting a mode of each generated circuit performance measure distribution that is closest to the corresponding input circuit design specification;
calculating a variance value and a kurtosis value from the generated circuit performance measure occurring between the mode and the corresponding input circuit design specification; and
fitting one of a Student's t-distribution and a cubic normal cumulative distribution function, based on the kurtosis value.
16. The system of claim 10 wherein the estimating uses one of an accuracy-tested response surface model and a worst one of the Monte Carlo samples.
17. The system of claim 10 wherein the instructions for the estimating further comprise instructions for, for each circuit performance measure, finding the corner value with the highest probability of occurrence by proceeding in a parameter value space from a nominal design parameter value along a circuit performance measure gradient vector scaled by a covariance matrix of parameters, until the corner target value is met.
18. The system of claim 17 wherein the instructions for the estimating further comprise instructions for, for each circuit performance measure, selectively extrapolating in the parameter value space from the nominal design parameter value toward an estimated corner value based on a worst case sample parameter value among the generated Monte Carlo circuit simulation samples and a corresponding worst case generated circuit performance measure.
19. A non-transitory computer readable medium storing instructions that, when executed by a processor, perform a method for finding Monte Carlo simulation samples for use as corners of a design for a circuit, to facilitate the provision of a manufacturable description of the circuit, the method comprising:
using a processor:
generating the Monte Carlo circuit simulation samples and corresponding circuit performance measures using a circuit simulator tool;
modeling distributions of the circuit performance measures corresponding to input circuit design specifications, wherein the modeling includes fitting an extended normal distribution model for at least one generated circuit performance measure distribution;
calculating corner target values having specified variations using the modeled circuit performance measure distributions;
estimating corner values having the specified variations such that the estimated corner values match the calculated corner target values; and
tangibly outputting the estimated corner values to provide the manufacturable description of the circuit.
20. The medium of claim 19 further comprising:
verifying the estimated corner values by performing additional simulations; and
selectively adjusting the estimated corner values by performing further additional simulations and scaling from the closest estimated corner values, based on the match between the calculated corner target values and the estimated corner values.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.