Home Up Screen Shots Pricing Download About




Worst Case Analysis

Monte Carlo


Worst case simulation analysis is a method that is used in order to predict whether or not a design will satisfy requirements over all component variations. It is a method usually more applicable then Monte Carlo for electronic simulation.

A fundamental advantage of Worst Case analysis to Monte Carlo analysis is that is is far more likely to be able to determine circuits that will fail within the constraints of a reasonable number of simulation runs. To obtain a satisfactory estimate of all conditions in a random Monte Carlo requires quite a large number of runs, which in general, takes significant time. Indeed, Monte Carlo can be summed up by, if one hasn't any clue at all what to do, suck it and see.

Unlike some free software such as Linear Technologie's LTSpice, Worst Case (WC) and Monte Carlo (MC) is immediate and direct, with no modifications being required on the schematics. By default, sensible values of standard deviations and matching are implemented. Additionally, these values may be modified with minimal effort to reflect specific processes. 

What is it?

Worst case analysis is a systematic set of simulation runs where all relevant parameters are sequentially set either to their nominal, maximum and minimum values, and  nominal, maximum and minimum temperatures. These 3 run types are named:

1 Weak/Slow, usually named either weak or slow.
2 Nominal/Normal, usually named either nominal or normal.
3 Strong/Fast, usually named either strong or fast. A weak/slow model sets all parameters such that the expected slowest and lowest gain results.

A nominal/normal model sets all parameters such that the expected slowest and lowest gain results.
A strong/fast model sets all parameters such that the expected fastest and largest gain results.

Examples: A weak/slow model will usually have all R, C, L, mosfet Vth, set high, bipolar "is" set low (Vbe high).
A strong/fast model will usually have all R, C, L, mosfet Vth, set low, bipolar "is" set high (Vbe low). 


The goal of worst case analysis is to predict design failure by predicting the worst case signal waveforms. In principle, worst case signals are not identical to signal sets of worst case component runs. It is possible for signals to have their maximum variation at intermediate component values. However, experience shows that it is a very good approximation in most cases. 

One argument presented against worst case, is that it is usually too pessimistic, resulting in an "over engineered" product. This is because the probability of all errors conspiring against should be low. In practice, this view is somewhat misguided. For example, it should be appreciated that it is not possible to make the models themselves exact. A worst case model is only an engineering approximation to say, the real 3,4,5... sigma variations. It is far safer to error on the conservative side, than make a prediction based on an inevitable compromised model. If a worst case analysis indicates a failed specification, which appears unsolvable, a more detailed analysis can be performed at that point to determine if the design is still satisfactory.


Models are first partitioned into their main types, that is NPN, PNP, NMOS, PMOS, NJFET, PJFET, R, L, C. All possible combinations of these types are then run. However, in practice, in order to reduce the number of simulation runs R and C are grouped together. 

For example, if a design contained NMOS and PMOS, the following sets would be run: 

1 weak nmos,  weak pmos, weak temp.
2 weak nmos,  nominal pmos, weak temp.
3 weak nmos,  strong pmos, weak temp.
4 nominal nmos,  weak pmos, nominal temp.
5 nominal nmos,  nominal pmos, nominal temp.
6 nominal nmos,  strong pmos, nominal temp.
7 strong nmos,  weak pmos, high temp.
8 strong nmos,  nominal pmos, high temp.
9 strong nmos,  strong pmos, high temp.

A total of 9 runs. If R/C was included, the number of runs would increase to 27.

Method Evaluation

Consider the Monte Carlo case. This method varies the components randomly. Say, 1.2% for component A, -0.5% for component B, etc, with no guarantee that the maximum or minimum will be included at all. The probability that, say 20 components from 100 will all be within the same band greater than some less than 3 sigma is relatively low, where as in reality, the mechanisms of batch1 supplies, make this event quite likely. That is, batch supply make it more likely for errors to conspire together against the design objective, which Monte Carlo can only predict if a large enough number of runs is performed.

Industry Practice

In I.C. design, a mask set may be $100k or more for deep sub-micron processes, with a fab turnaround time of several months. What manufacture will not do a worst case set of runs prior to ordering the masks ? :-)

Monte Carlo

Monte Carlo statistical runs are also supported.  Set the number of runs, select a worst case corner for the variations to be centered around, select MC, and run.


1 Batch supplies. Components are usually supplied, on reels, from batch manufacturing runs. This results in all components being value grouped somewhere between their published maximum and minimums.


Copyright AnaSoft Ltd 1996 - 2017

This web site was last updated: 01/01/2017