With spectre, assuming that you still have it in "interactive" mode (and haven't switched via the spectre.envOpts controlMode cdsenv to "batch" mode), ADE starts spectre and runs a simulation but does not exit at the end. It's then able to talk to spectre to tell it to change the value of a parameter and re-simulate. There's then no need to restart the simulator, re-checkout the license, re-read the netlist, and so on. So ADE's parametric analysis can do a:
- start simulator
- read netlist
- checkout license
- set parameter X to first value
- run sim
- set parameter X to next value
- jump to step 5 all the time there are next values
The same thing should happen if you do:
foreach(val '(1k 2k 3k 4k)
desVar("rload" val)
run()
)
however, if you're changing certain other things, that may force the simulator to exit each time. So it depends if you do anything inside your loop which requires spectre to exit to change (e.g. changing the resultsDir, or altering an analysis would probably do it).
Andrew.