Download latest version

Transcript
Chapter 7 Monte Carlo Analysis
1% tolerance with a 3 sigma distribution
multiplier
If included this must be set to 1 otherwise an error message will
be displayed and the simulation aborted. Included for
compatibility with existing model files only.
Random variables created using the above method do not behave in the same way as
regular parameters created using the native SIMetrix distribution functions. They
actually behave like function calls and return a different value each time they are used.
Random variables created using .param and a native distribution function are evaluated
just once and always return the same value. Internally, the above are implemented
using a .FUNC definition to define a function with no arguments.
For example, the following are both quite legal:
.PARAM rv1 = UNIF(10,1)
.PARAM rv2 = 'UNIF(10,1)'
The first (rv1) will provide a nominal value 10.0 +/- 1.0 with a new value calculated
each time it is used. The second (rv2) is a native SIMetrix distribution function, will
produce a value varying from -9.0 to +11.0 and will always have the same value. With
the above definitions for rv1 amd rv2, consider the following regular .PARAM
statements:
.PARAM
.PARAM
.PARAM
.PARAM
rand1
rand2
rand3
rand4
=
=
=
=
rv1
rv1
rv2
rv2
rand1 and rand2 will have different values. rand3 and rand4 will have the same values.
Enabling Hspice Distribution Functions
Hspice distribution functions need to be enabled with an option setting as follows:
.OPTIONS MCHSPICE
Important: This option also changes the way Monte Carlo operates in a fundamental
way by disabling model spawning. This is a process which gives each instance its own
separate copy of its model parameters and allows ‘dev’ (or ‘mismatch’) tolerances to
be implemented. Without model spawning dev tolerances cannot be implemented
except by giving every instance their own copy of a model.
With the Hspice method this can only be done easily by wrapping up .MODEL
statements inside a .SUBCKT definition. Each instance will then effectively get its
own .MODEL statement and mismatch parameters can be defined.
TOL, MATCH and LOT Device Parameters
These parameters may be used as a simple method of applying tolerances to simple
devices such as resistors. The TOL parameter specifies the tolerance of the device's
value. E.g.
R1 1 2 1K TOL=0.05
267