The command, and its associated commands findlower and findupper, can be used to find the operating margins of one or two circuit parameters.
findrange [-n1 name1] [-n2 name2] [[pstr1] val1] [[pstr2] val2]
This utilizes the infrastructure developed for Operating Range analysis in 5.1, but can be used in scripts for finer control of the process. The depth used in the binary search can be given in the checkiterate variable as for standard range analysis, or defaults to 6 if not set.
These commands can be running only when a range analysis has been initiated with the check command (see 4.6.6), generally by giving the ``-b'' option. Any number of the findrange commands or the variants can be given, as well as other commands such as mctrial. When finished the check command should be given with the ``-c'' option to terminate the mode and free internal memory.
A usage example can be found in the examples: JJexamples/nor_op.cir.
By default, the lower and upper range values will be saved in vectors named opmin1, opmin2, opmax1, and opmax2, which are created if necessary. If given following ``-n1'' or ``-n2'' respectively, name1 and name2 tokens will serve as a base for new names that replace vector names opmin1, opmin2, opmax1, opmax2 for range results. For example,
-n1 foowill save output in vectors named foo_min, foo_max.
There is a subtlety in the syntax: a double-quoted name, e.g., -n1 "pname", is accepted and the quotes will be stripped before use. The quotes prevent parameter substitution, so this allows use of a name that has also been defined as a parameter (with .param directive or otherwise).
Each of the three functions can take parameter definitions and range parameters, in the same syntax as supplied to the check and sweep commands, however only the starting parameter value is needed. The simulation must run correctly at the starting value. The command line may include one or two specifications. Each specification consists of an optional parameter specification string, followed by the starting value. The numbers will override the checkVAL1, and checkVAL2 vectors that may be in effect.
The optional pstr1 and pstr2 strings take the same format and significance as in the sweep command. See the description of that command for a description of the format. If a parameter specifier is given, the specified device parameters will be altered directly, and the variables and vectors normally used to pass values will not be set. If two parameters are being set, either both must be set using the syntax above, or neither, the two methods can't be mixed.