What’s Scaled-Sigma Sampling? Scaled-Sigma Sampling (SSS) is an efficient algorithm to solve the high yield estimation problem, which happens when your circuit needs to have really low failure rate, like one in a million or one in a billion. This can be because you are designing a high repetitive circuit like memory cell or flip-flop, or you are an automotive or medical designer who just wants to be very conservative. The problem is well known for its difficulty – millions or billions of Monte Carlo samples traditionally need to be simulated to get a meaningful number of failures to estimate the yield. SSS is motivated by a simple observation: if the variation of all variables is scaled up by a factor of s , we would observe much more failures to easily estimate the yield. It is further proved that under very general assumptions on the failure region, the failure rate P can be modeled by this simple yet elegant equation: So we only need to perform Monte Carlo sampling at a few larger scaling factors, which is efficiently handled within our spectre simulator. Once we compute the model coefficients ( α , β , γ ) from the simulation results, the model will give us a yield estimate and provide a confidence interval for that estimate. Why use Scaled-Sigma Sampling? So there’s some cool math here, but there are so many high yield estimation tools, why do I want to use SSS? It turns out SSS is able to efficiently solve many difficult problems that most other tools are having trouble to handle: High dimensionality: If your circuit size is large, there could be many underlying variables used to model variation. Most other algorithms perform much more simulations in that case, but SSS does not. Dimension information in SSS is encoded into the three model coefficients. High Nonlinearity: It doesn’t matter if you have a strongly non-Gaussian distribution, or you have multiple failure regions. SSS can solve them all! Large Number of Specs: If you have many specification targets and want to estimate the yield for all of them, most other algorithms perform much more simulations to sequentially work on one spec at a time, but SSS does not. The yield of all specs are simultaneously estimated in parallel. Very High Yield: Many other algorithms have difficulties when yield is very large (>= 6sigma). SSS has no difficulty handling any large yield. How to use Scaled-Sigma Sampling within the Cadence environment It’s really simple to run the SSS algorithm when you have the Virtuoso Variation Option. From either the Virtuoso ADE Explorer or Assembler, open the Monte Carlo setup form. Then just select “Create statistical corners” as the task, specify your yield target for your design (at least 4 sigma, or one in 32K), then click OK and run. That’s it! If you are an advanced user, here are a few more things you can consider: SSS can be run by choosing the task as either “Verify the yield (sign-off)” or “Create statistical corners”. The difference is that the latter will automatically create corners according to your yield requirement at the end of the run. These corners can be used for you to efficiently perform design iterations without having to repeatedly run SSS. The corner creation process does not run extra simulations so the overhead is typically not significant. 2. The default number of samples for SSS is 7000, which is an empirical number we found to be adequate for most designs. You can modify this number depending on your simulation budget and/or accuracy requirement. After SSS finishes, ADE will show the yield both in sigma and percentage. If some specs have extremely high yield, it will show a yield lower bound: More information can be found in the run log, including the confidence interval and functional yield estimation. Functional yield means the yield if only errors are counted as failures. This is useful for some circuits for which we want to know whether it works but there’s no hard threshold on performance. Final Words Scaled-Sigma Sampling within the Cadence environment is very simple and reliable. Just push a few buttons and it will get the job done. You don’t have to worry whether your problem is too hard. You don’t have to worry if it will take forever to finish, because you know in advance it’s just a few thousand simulations and it’s highly parallelizable. If you haven’t tried it yet, try it now! More Information Scaled-Sigma Sampling Paper High Sigma Statistical Analysis Virtuoso Variation Option Rapid Adoption Kit For more details on how Virtuoso Variation Option can efficiently help you create a variation-aware design, take a look at our white paper: Accelerating Monte Carlo Analysis at Advanced Nodes
↧