Importance sampling for high speed statistical Monte-Carlo simulations

Abstract

As transistor dimensions of Static Random AccessMemory (SRAM) become smaller with each new technology generation, they become increasingly susceptible to statistical variations in their parameters. These statistical variations can result in failing memory. SRAM is used as a building block for the construction of large Integrated Circuits (IC). To ensure SRAM does not degrade the yield (fraction of functional devices) of ICs, very low failure probabilities of Pfail = 10-10 are strived for. For instance in SRAMmemory design one aims to get a 0.1% yield loss for 10Mbit memory, which means that 1 in 10 billion cells fails (Pfail = 10-10; this corresponds with an occurrence of -6.4s when dealing with a normal distribution). To simulate such probabilities, traditional Monte-Carlo simulations are not sufficient and more advanced techniques are required. Importance Sampling is a technique that is relatively easy to implement and provides sufficiently accurate results. Importance sampling is a well known technique in statistics to estimate the occurrences of rare events. Rare or extreme events can be associated with dramatic costs, like in finance or because of reasons of safety in environment (dikes, power plants). Recently this technique also received new attention in circuit design. Importance sampling tunes Monte Carlo to the area in parameter space from where the rare events are generated. By this a speed up of several orders can be achieved when compared to standard Monte Carlo methods. We describe the underlying mathematics. Experiments reveal the intrinsic power of the method. The efficiency of the method increases when the dimension of the parameter space increases. The method could be a valuable extension to the statistical capacities of any circuit simulator A Matlab implementation is included in the Appendix

    Similar works