# syntax for a qsim help file: # 1) a line beginning in a hash is ignored as a comment. # 2) a command name must be preceded by a '$' and be alone on that line. # 3) no other lines can begin with a '$'. # 4) the literal message to be printed follows the line with $cmdName. $ | | no operation (nop). | Acts as a nop, for use in TEST commands. $ bus BUS create a vector and constituent nodes. BUS busname[n1:n2] Creates a vector named 'busname' and creates the nodes in the vector. The index ranges 'n1' to 'n2' must be nonnegative integers. The created nodes have names 'busname[n]', where n ranges from 'n1' to 'n2' inclusive. Neither the vector name nor any of the node names can previously exist. The second index may be either larger or smaller than the first. $ capacitor CAPACITOR add capacitance to a node. CAPACITOR type node1 node2 x y cap_value Adds capacitance to the two nodes. One of them must be a VSS node. 'type' must be "nn", 'x' and 'y' are ignored, 'cap_value' is in pF. $ check CHECK (unused). CHECK (unused). $ checkpoint CHECKPOINT show fault coverage at given interval CHECKPOINT number Tells ProFault to write fault simulation results to the screen every 'number' of strobes. $ chipparms CHIPPARMS set simulation parameters for part of the circuit. CHIPPARMS CHIPPARMS . CHIPPARMS pathName parmName1 parmValue1 parmName2 parmValue2 ... Sets the SIMPARM values for a part of the circuit. The 'pathName' must be an instance name, possibly ending in a wildcard (asterisk). All instances that start with this name will be affected by the given parameters. The legal names for the name/value pairs can be found under SIMPARMS (exclude timeScale and the catch-all delayFactor). If no arguments are given, then the currently defined chipparms will be displayed. If a period is given as the first argument, then all chipparms will be disposed. $ cycle CYCLE run the simulation. CYCLE number Continues the simulation for 'number' more cycles of the primary clock. If the simulation is already midcycle then it will run one complete cycle, ending again in midcycle. If the simulation is in midphase, then completion of the current phase is counted as one entire phase. If 'number' is not given then it is assumed to be one. If 'number' is given as zero, then the simulation is run until the end of the current cycle. $ echo ECHO print a message in the transcript. ECHO (options) string Writes the message 'string' to the trace file and the transcript pane. The message will be preceded by a comment mark "#". Options: TIME writes the current simulator time before the message. $ equiv EQUIV add another name for an object. EQUIV name Makes 'name' the preferred name for the node or vector. EQUIV oldname newnames The names listed in 'newnames' become synonyms for 'oldname'. $ event EVENT list gate/model event counts EVENT Lists the number of gate/model evaluations since the last call to this command. Also lists the cumulative number of evaluations. $ exit EXIT terminate the simulation. EXIT Terminate the simulation and close down the simulator. Same as QUIT. $ join JOIN join two nodes into one. JOIN node nodelist Joins each of the nodes in 'nodelist' to 'node'. The nodes then behave as if they are wired directly to each other. The 'nodelist' names become synonyms for 'node'. JOIN vector nodelist Joins the nth node in 'nodelist' to the nth member of 'vector'. Nodelist can contain any combination of nodes, subvectors, and vectors, but the total number of nodes named must equal the size of 'vector'. JOIN nodelist1 ; nodelist2 Joins the nth node in 'nodelist1' to the nth member of 'nodelist2'. Both lists can contain any combination of nodes, subvectors, and vectors, but their total number of nodes must agree. $ load LOAD load a netlist, command file, or model instance. LOAD (options) cell LOAD (options) cell instanceName LOAD (options) cell instanceName parameterList Loads a netlist file, a simulator command file, or a single model instance. For a netlist or instance, the top level can be given the optional 'instanceName'. If the netlist or instance takes parameters, they can be passed in 'parameterList' by name/value pairs or by "@" followed by a parameter cell name. If a parameter list is desired but an instanceName isn't, use double quotes "" for the 'instanceName'. The 'cell' must be of the form "[typ]name", where 'typ' is a two or three letter celltype and 'name' is the cellname. Valid celltypes for an instance are [mds] or [mde], and for a command file are [sim], [txt], or [bsm]. Options: ECHO all subsequent commands are echoed. ONELEVELECHO only commands from this file are echoed. PARALLEL load as a parallel interface. NOPREFIX don't append instance name to global prefix. FLATTEN flatten the netlist, even if a flattened type. NOFLATTEN don't flatten, even if a hierarchical type. HNL load using the old netlist system. PIPE load a netlist via pipe, reduces memory usage. $ manager MANAGER call the cell/library manager. MANAGER Opens up a session with the VLSImanager. $ mode MODE select command language. MODE type Declares the simulator command language to be used. The two choices currently supported are VLSIsim ('type' = VLSISIM) or VLSIqsim ('type' = VLSIQSIM). $ module MODULE load a simulation driver module. MODULE (options) name MODULE (options) name arguments Loads a mainsail simulation driver module. A new user interface is created to run the driver. If 'arguments' exists, then the rest of the line is passed as given to the module. A QUIT command cannot be executed while under the control of a module. If the NEW option is not given and the module has been previously invoked, then the module will be run with all of its internal variables intact. Options: ECHO all subsequent commands are echoed. ONELEVELECHO only commands from this module are echoed. NEW reinitialize module's internal variables. $ node NODE create new nodes. NODE name Creates a new node called 'name'. $ phase PHASE run the simulation. PHASE number Continues the simulation for 'number' more phases of the primary clock. If the simulation is in midphase, then completion of the current phase is counted as one entire phase. If 'number' is not given then it is assumed to be one. $ pop POP terminate command file. POP (options) Terminates the present interface and returns control to the parent one. If the current input is from a command file, then the file is closed. This function cannot be used to exit from a simulation driver module. Options: TOP exit all non-module interfaces. PARALLEL closes a parallel command file. $ power POWER calls power calculation module. POWER (options) Calls the power calculation module. Options: COMMAND calls the command interface in the power module. $ preprocess PREPROCESS execute simulation preprocessing. PREPROCESS Immediately executes circuit preprocessing. $ quit QUIT terminate the simulation. QUIT Terminate the simulation and close down the simulator. Same as EXIT. $ rename RENAME change the name of an object. RENAME oldname newname It is preferred that a user NEVER uses this command ! Removes the name 'oldname' for a node or vector and adds the preferred synonym 'newname'. $ request REQUEST send user-request to a model instance. REQUEST instanceName arg1 arg2 Sends the two string arguments as a user request to a model 'instanceName'. The model's response is printed. The arguments are optional, the default being an empty string. If an argument is not contained in double quotes, then it is considered to end at the first blank space. $ reset RESET resets the simulation without disposing the netlist. RESET (options) Resets the simulation to the beginning without the need to reload the netlist. It returns the simulator to the state just after netlist loading. Time equals zero, all nodes are unknown, and there are no definitions for clocks, vectors, or watched nodes. Simparms and connectivity can be altered up until the next preprocessing. Options: VECTOR don't dispose vector definitions. WATCHED retain the watched node list. CLOCKS keep the existing clocks. SAVEALL use all the above options. $ restore RESTORE (not implemented). RESTORE (not implemented). $ save SAVE (not implemented). SAVE (not implemented). $ selectmodel SELECTMODEL force use of [mde] rather than [qfe] SELECTMODEL Lists the cells that have the [qfe] switching disabled. SELECTMODEL cellname Specifies that the automatic [qfe] switching should be disabled for all netlist instances of the named cell. $ set SET (type SET ?) $ show SHOW (type SHOW ?) $ step STEP run the simulation. STEP (options) number Continues the simulation for 'number' nanoseconds. Options: DEFERCLOCKS run simulation without changing clocks. $ strobe STROBE declare fault-sim strobing pins STROBE nodelist Declares which nodes will be strobed during fault simulation. $ test TEST compare a node's actual versus expected value. TEST (options) name value TEST (options) name value mask TEST (options) name value mask command Compare the logical value of the named node or vector with 'value'. If they don't match, the test fails and an error message is written. If a mask is given, then only those bits that are a "1" in 'mask' are included in the comparison. If 'command' is given, then a failed test will suppress the error message and execute 'command'. Options: NOTEQUAL test succeeds if the values are not equal. MESSAGE write the error message, even if 'command' exists. $ transistor TRANSISTOR add a transistor to the circuit. TRANSISTOR type gate source drain Creates a gate approximation for a transistor and inserts it into the circuit. Only two choices for 'type' are allowed, P for pullups, and E for pulldowns. The next three arguments are the node names for attaching the three active transistor pins. Transistors are given a default timing delay. $ translate TRANSLATE translate command file to another format. TRANSLATE type cellname Translates subsequent command input into another language and writes it to a file. The necessary translation module must be available to the simulator. The choices for 'type' are: VLSISIM translate VLSIqsim language to VLSIsim language. VLSIQSIM translate VLSIsim to VLSIqsim. BINARY translate either VLSIsim or VLSIqsim into a qsim binary format. The translations are written into "[sim]cellname" for VLSISIM and VLSIQSIM, and into "[bsm]cellname" for BINARY. TRANSLATE type . Ends the specified translation session and closes the file. $ unwatch UNWATCH remove nodes from the watched list. UNWATCH nodelist Removes the watched status from the named nodes and vectors. $ vector VECTOR group nodes under one name for easy reference. VECTOR name nodelist Creates a vector 'name' made up of the named nodes. The vector indices will be 1 to n, where n is the number of nodes named. VECTOR name[lb:rb] nodelist Creates the vector, but the indices run from 'lb' up/down to 'rb'. VECTOR name[lb:ub] Creates the vector using the nodes "name[lb]" through "name[ub]". As in all forms of the VECTOR command, the nodes must previously exist. $ view VIEW list node's current logical state. VIEW Show the logic values of all watched items. VIEW nodelist Show the values of all named nodes and vectors. $ vtitest VLSITEST (unused). $ watch WATCH automatically list all node's transitions. WATCH (options) nodelist Add the named nodes and vectors to the watched list for trace output. Options: DISPLAY display the waveform. NOSPACE suppresses spaces between tabular columns. $ show after SHOW AFTER display instances with particular node as input. SHOW AFTER nodename Displays information about the instances that have the named node as an input. $ show alias SHOW ALIAS list special command abbreviations. SHOW ALIAS Lists all presently defined aliases. $ set alias SET ALIAS define special command abbreviations. SET ALIAS name Removes the alias definition for the 'name'. SET ALIAS name string Defines 'name' as an alias for 'string'. All uses of 'name' at the beginning of a command will substitute in 'string'. Aliases may NOT be abbreviated. If 'name' already exists, the old definition will be superceded by the new. $ show before SHOW BEFORE display instances with particular node as output. SHOW BEFORE nodename Displays information about all the instances that have the named node as an output. $ show capacitance SHOW CAPACITANCE list node's capacitance. SHOW CAPACITANCE nodelist Lists the capacitances of the nodes in 'nodelist'. $ set capacitance SET CAPACITANCE set a node's capacitance to a particular value. SET CAPACITANCE number nodelist Sets the total capacitance on the listed nodes to be 'number' pF. The old capacitance cannot be reinstated. $ set charged SET CHARGED set nodes to a floating/undriven logical state. SET CHARGED value nodelist Sets the listed nodes to a floating (capacitive) state. The logical value will be either 'value' (HIGH, LOW, UNKNOWN), or the current nodal value if 'value' is "*". The new state can be overridden by the circuit. $ set chipparms SET CHIPPARMS set simulation parameters for part of the circuit. SET CHIPPARMS . SET CHIPPARMS pathName parmName1 parmValue1 parmName2 parmValue2 ... Sets the SIMPARM values for a part of the circuit. The 'pathName' must be an instance name, possibly ending in a wildcard (asterisk). All instances that start with this name will be affected by the given parameters. The legal names for the name/value pairs can be found under SIMPARMS (exclude timeScale and the catch-all delayFactor). If a period is given as the first argument, then all chipparms will be disposed. $ show chipparms SHOW CHIPPARMS show the current simulation parameters for part of the circuit. SHOW CHIPPARMS The SET CHIPPARMS command will set simulation parameters for particular branches of the netlist hierarchy. This command will display all such sets of simulation parameters. $ show clock SHOW CLOCK list a clocked node. SHOW CLOCK Lists information about all the defined clocks. $ set clock SET CLOCK define a clocked node. SET CLOCK name Removes clock definition for named node. SET CLOCK (options) name clock_spec Makes the named node into a clock. The 'clock_spec' is a sequence of entries of the form "value(time)", where 'value' is the logical value of "1" or "0" for the phase, and 'time' is the duration of the phase in nanoseconds. If "(time)" is omitted, the duration defaults to the previously given duration or 400 ns if no durations have been given so far. An initial, nonrepeating sequence can be given by seperating these entries from the rest by a semicolon. A new definition for a node will override the previous one. Until explicitly defined, all three options default onto the first clock. Options: PRIMARY for CYCLE and PHASE commands. REPORT for static trace output. PROFAULT for fault simulation strobing period. $ show diagnostics SHOW DIAGNOSITCS (unused). $ show external SHOW EXTERNAL (unused). $ set external SET EXTERNAL (unused). $ set forced SET FORCED force nodes to a particular logical state. SET FORCED value nodelist SET FORCED VECTOR vector_name vector_value see SET INPUTS. $ show gates SHOW GATES lists parameters for gate models. $ show inputs SHOW INPUTS (unused). $ set inputs SET INPUTS set nodes to a particular logical state. SET INPUTS value nodelist Sets the listed nodes to the specified logic value. 'value' must be: HIGH, LOW, or UNKNOWN. 'nodelist' can contain any combination of node names, subvectors, and wildcards. The nodes are forced to the value and cannot be overriden by any gate evaluations. SET INPUTS VECTOR vector_name vector_value Sets the named vector to the given value. The 'vector_value' must have a radix indicator followed by a value string. A radix indicator is an apostrophe and a letter: 'b = binary, 'o = octal, 'd = decimal, 'h = hex- adecimal. Only one vector can be handled per line. $ show instances SHOW INSTANCES display information about particular circuit instances. SHOW INSTANCES instanceName Displays information about the named instance. Information includes the gate/cell type, pin names, attached nodes, and pin/node logic values. $ show interfaces SHOW INTERFACES lists currently existing user interfaces. SHOW INTERFACES Lists the presently defined user interfaces. $ show linelimit SHOW LINELIMIT show limit on simulator output to the transcript. SHOW LINELIMIT Shows the linelimit parameters. The linelimit count is the maximum lines of output the simulator can spew for a command. The prompting flag deter- mines whether the user can ask for more output. $ set linelimit SET LINELIMIT set limit on simulator output to the transcript. SET LINELIMIT number Sets the linelimit count to 'number'. To set the prompting flag, see the command SET OPTIONS. $ show logiclevels SHOW LOGICLEVELS (unused). $ set logiclevels SET LOGICLEVELS (unused). $ show minmaxmode SHOW MINMAXMODE (unused). $ set minmaxmode SET MINNMAXMODE (unused). $ show mode SHOW MODE (unused). $ set mode SET MODE (unused). $ set modeloptions SET MODELOPTIONS sets options for model errors. SET MODELOPTIONS name Sets the named modeloption. To turn an option on, give the name. To turn it off, precede the name with a minus sign (-). These control model behavior in an error condition and echoing of model error messages. Legal names can be listed by SHOW MODELOPTIONS. At least one modeloption MUST be on at circuit loading if the user intends to do any error checking in a simulation. $ show modeloptions SHOW MODELOPTIONS lists the options for model errors. SHOW MODELOPTIONS Lists the names and current values of the modeloptions. These control model behavior in an error condition, and echoing of model error messages. $ show nodetypes SHOW NODETYPES (unused). $ set nodetype SET NODETYPE (unused). $ show names SHOW NAMES list existing netlist names. SHOW NAMES (options) namelist Displays the names in 'namelist' that the simulator recognizes. The list can be any combination of node names, subvectors, vectors, instance names, and wildcards. Options: EXPAND expands a vector name into its component nodes. NOSYNONYMS lists only one name per object. $ show options SHOW OPTIONS list simulator runtime options. SHOW OPTIONS Lists the options and their present value. Options are: "bidirConflict" report bidirectional conflicts. "failTestOnZ" z-state nodes will fail in TEST command. "glitchDetection" print simulation glitch messages. "literalNL" overrides automatic mde/qfe netlist switching. "noTraceHeader" turn off machine-readable header for standard trace. "parallelGateMessage" list parallel gates that are created. "proFault" perform probabilistic fault simulation. "prompting" turns on LINELIMIT feature. "rc" use RC input delays for extracted netlists. "standardTrace" use the standard tabular trace output. "tabularReportOnChange" use (reportOnChange) option for every WATCH. "translatorMessage" print all error messages from translator. $ set options SET OPTIONS set simulator runtime options. SET OPTIONS namelist Sets the named options. To turn an option on, give the name. To turn it off, precede the name with a minus sign (-). Options are: "bidirConflict" report bidirectional conflicts. "failTestOnZ" z-state nodes will fail in TEST command. "glitchDetection" print simulation glitch messages. "literalNL" overrides automatic mde/qfe netlist switching. "noTraceHeader" turn off machine-readable header for standard trace. "parallelGateMessage" list parallel gates that are created. "proFault" perform probabilistic fault simulation. "prompting" turns on LINELIMIT feature. "rc" use RC input delays for extracted netlists. "standardTrace" use the standard tabular trace output. "tabularReportOnChange" use (reportOnChange) option for every WATCH. "translatorMessage" print all error messages from translator. $ show output SHOW OUTPUT list selected file for transition (trace) output. SHOW OUTPUT Shows the present trace file name and the value of the dual display option. $ set output SET OUTPUT select file for transition (trace) output. SET OUTPUT Closes the present trace file. SET OUTPUT * option Changes the dual display option without changing the trace file. 'option' can be "dual" or "only". SET OUTPUT filename option Opens 'filename' to be the new trace file. If a trace file already exists, it is closed. Default celltype is [trc]. $ show power SHOW POWER (unused). $ set power SET POWER is equivalent to SET INPUTS. $ show prefix SHOW PREFIX list name prefixes. SHOW PREFIX Lists all defined prefixes. $ set prefix SET PREFIX set name prefixes. SET PREFIX string Redefine the global prefix. To clear a prefix, set it to "". SET PREFIX name string Define/redefine a prefix 'name' to use 'string' as its substitution. $ set prompting SET PROMPTING toggles the linelimit function. SET PROMPTING on/off Turns the linelimit prompting on or off. $ show radix SHOW RADIX list the global radix base for vector output. SHOW RADIX Show the global radix. To see a specific radix, use the VIEW command. $ set radix SET RADIX set radix base for vector output. SET RADIX number vectorList Set the radices for the listed vectors to be 'number'. The only choices for 'number' are 2, 8, 10, 16. Use the VIEW command to show a vectors current radix. $ show rc SHOW RC show rc delays for a node. SHOW RC nodename Lists all of the pins and the timing deltas due to rc's on the named node. $ show reffs SHOW REFFS (unused). $ set reffs SET REFFS (unused). $ set risefall SET RISEFALL set explicit delay time for a node. SET RISEFALL number number Sets the global default delays to the given values. These times only apply to nodes that have no other delays specified. The first argument is for rising transitions, the second for falling transitions. The 'numbers' are in nanoseconds. SET RISEFALL number number nodelist Forces the listed nodes to have delay times given by the two numbers. The new delays will override all other delay calculations. To remove the override, set both times to zero. $ show risefall SHOW RISEFALL list explicitly declared delays. SHOW RISEFALL nodelist Shows the explicit rise/fall delays for all listed nodes. $ show savedstates SHOW SAVEDSTATES list saved states for this simulation. SHOW SAVEDSTATES Lists the currently saved states. (See save/restore). $ show simparms SHOW SIMPARMS list some simulation parameters. SHOW SIMPARMS Lists the names and values for the user-setable simulation parameters. $ set simparms SET SIMPARMS set some simulation parameters. SET SIMPARMS name number Sets the named parameter to the given value. Use the SHOW SIMPARMS command to see the names and units for each entry. $ show slowestpath SHOW SLOWESTPATH (unused). $ show spiceparms SHOW SPICEPARMS (unused). $ set spiceparms SET SPICEPARMS (unused). $ show status SHOW STATUS list information about the loaded netlist. SHOW STATUS Displays information about the current circuit size. $ show switch SHOW SWITCH list the current netlist flattening switch. SHOW SWITCH Displays the current netlist switch name. $ set switch SET SWITCH set/clear a netlist flattening switch. SET SWITCH cell Sets the current netlist switch name to 'cell'. $ show synonyms SHOW SYNONYMS list all names for an object. SHOW SYNONYMS name Show all synonyms defined for 'name'. $ show technology SHOW TECHNOLOGY (unused). $ set technology SET TECHNOLOGY (unused). $ show time SHOW TIME list the current simulator time. SHOW TIME Show the current simulation time. $ show toggles SHOW TOGGLES lists toggle counts for nodes. SHOW TOGGLES (options) namelist Lists information about high/low toggle counts for nodes. If namelist isn't given, then the nodes that haven't toggled will be listed. The option TOTALS will suppress listing the node names, and will just give the number of nodes not toggled. If namelist is specified then the toggle counts for the named nodes will be listed. Each node will have two numbers, transitions to low and to high. $ set toggles SET TOGGLES clears the nodes' toggle counts. SET TOGGLES Resets all the nodal toggle counts to zero. $ show trace SHOW TRACE show format for transition (trace) output. SHOW TRACE Show trace output information. Standard trace output has the following coding: enable on 0 1 u enable unknown q r x enable off s t z $ set trace SET TRACE set format for transition (trace) output. SET TRACE MODE type headerSize pageSize clusterSize formfeed Set the output mode for trace information. 'type' can be: DYNAMIC output occurs when each item changes. STATIC output occurs at the end of each clock phase. TABULAR writes the output in tabular form. The optional arguments are used for tabular form only. HeaderSize is the number of characters written for each name in the header. PageSize is the number of lines of trace output per page, including header. ClusterSize sets the size of the column groupings in the tabular output. Formfeed, either FF or NOFF, issues a formfeed between each page of output. SET TRACE INTERVAL This command is ignored by qsim. SET TRACE SELECTION type In qsim, type can be either ALL or NONE. The later will cause the trace output to be suppressed. Standard trace output has the following coding: enable on 0 1 u enable unknown q r x enable off s t z $ show transtypes SHOW TRANSTYPES (unused). $ set transtype SET TRANSTYPE (unused). $ show traps SHOW TRAPS (unused). $ set traps SET TRAPS (unused). $ show units SHOW UNITS (unused). $ set units SET UNITS (unused). $ show unsettled SHOW UNSETTLED (unused). $ show vectors SHOW VECTOR list information about a vector. SHOW VECTORS vector_name Displays information about the named vector. $ show viewmode SHOW VIEWMODE (unused). $ set viewmode SET VIEWMODE (unused). $ show wavefile SHOW WAVEFILE list the cellname for saving waveforms. SHOW WAVEFILE Display the current cellname for saving waveforms. $ set wavefile SET WAVEFILE save transition information for graphic display later. SET WAVEFILE Close the current waveform cell. SET WAVEFILE cellname Create cells "[wfd]cellname" and "[wft]cellname" and start saving all waveform information in these cells. If a cell already is opened, it is closed and saved.