home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / circuit / gatesim / gatesim.doc < prev    next >
Text File  |  1988-07-02  |  24KB  |  558 lines

  1.                      GateSim(TM) - A Gate Level Simulator
  2.                          Condensed Manual  Version 1.0
  3.  
  4.  
  5. 1.  OVERVIEW:
  6.  
  7. The Tanner Research, Inc. simulator GateSim is an event-driven four-state
  8. (0,1,Z,X) digital logic simulator with the capability of running a 80286/80386
  9. processor in virtual protected mode to simulate extremely large designs.  The
  10. inner simulation loop is written in assembly language for extremely high
  11. simulation speed.  Circuit primitives include boolean gates, tri-state
  12. drivers, and/or/invert gates, D flip-flops, latches, pullups, repeatable
  13. waveform signals, and RAM/ROM models.  Each primitive supports gate-specific
  14. timing delays which may vary from instance to instance.  Times are handled as
  15. 32-bit integers, allowing extremely long simulations.  In addition to its
  16. simulation capabilities, GateSim contains extensive features to support design
  17. verification, including flexible output formatting, automatic comparison of
  18. simulation output against an "expected result" file, critical path
  19. determination, and fault simulation.
  20.  
  21.  
  22. 2.  COMMAND INPUT:
  23.  
  24. GateSim uses a simple command line interface, patterned after the SILOS
  25. simulator, but including many TopDOS-like features to facilitate command
  26. input.  Commands to the simulator are distinguished by their first two letters
  27. (not case sensitive).  Comments are allowed in all files and from the
  28. keyboard, and consist of a $ followed by any number of characters up to an end
  29. of line.  Continuation lines are allowed by placing a '+' as the first
  30. character on the succeeding line.  Commands may also be input from a file,
  31. either by placing the file name on the DOS command line when the simulator is
  32. invoked (e.g., gatesim mychip.sim) or by entering a command (e.g., "INput
  33. mychip.sim") within the simulator.  Command files may be nested up to four
  34. deep.  The default extension for command files is SIM.
  35.  
  36.  
  37. 3.  KEYBOARD EDITING:
  38.  
  39. The keyboard input lines can be edited as in TopDOS, with Epsilon-like
  40. keystrokes, plus history (^R) and recall (^P and ^N).  Arrow keys on the
  41. numeric keypad are alternatives to move the cursor.  There are also keyboard
  42. macros available (F1 through F10), which can be defined by a command of the
  43. form:
  44.      @Fn=<text>|<text>...
  45.  
  46. The | character is interpreted as a carriage return and can also be used from
  47. the command line directly to input multiple commands on one line.  You can
  48. also invoke a keyboard macro from the command line (or an input file) by a
  49. line of the form @Fn).  The macros can be displayed by typing ^V.  Filename
  50. completion is also supported, using the <Tab> key.
  51.  
  52. At any time during the execution of most commands (e.g., SIM, DISPLAY, etc.),
  53. you can press space bar or ^S to halt the display.  A message <Pause> will be
  54. displayed, and pressing any other key will allow the command to continue.  If
  55. you press ^C or a displayable character (e.g., 'A'..'Z'), the message 
  56.  <Halt> (Y/N/Q/P)?  will be displayed.  Typing ^C or 'Y' to this prompt causes
  57. the command execution to terminate, but execution of any further commands from
  58. an input file will then continue.  Typing a 'Q 'will terminate this command
  59. and return control to the keyboard, ignoring all input files.  Typing a 'P'
  60. will terminate execution of the current command and return command to the
  61. keyboard, but the pointer within the current command file will be retained so
  62. that commands execution can resume via the 'RF' command (for Resume File).
  63. Any other key (e.g, 'N') will allow execution to continue.
  64.  
  65.  
  66. 4.  INSTALLATION:
  67.  
  68. To run the simulator, you must copy the files GATESIM.COM, GATESIM.000, and
  69. GATESIM.001 from their home to a directory on your path.  The latter files
  70. contain the simulator overlay procedures.  Due to the overhead of loading the
  71. overlay files during command input, it is strongly recommended that these
  72. files reside on a RAM disk.
  73.  
  74.  
  75. 5.  GENERAL COMMAND SYNTAX:
  76.  
  77. Each command has its own syntax, but the general form is
  78.      COmmand [parameters]* [options]* 
  79. Note that only the first two letters of the command name are signficant; the
  80. others are optional and are shown in lower case to help clarify the meaning of
  81. the command.
  82.  
  83. The options for a command typically take the form '-X [parameter]' or
  84. '+X [parameter]', where X is the option letter (not case sensitive) and
  85. the parameter may or may not be required, depending on the option.
  86.  
  87. When file names are included in the command parameters, they typically must
  88. be prefaced by '<' for input or '>' for output.  These characters may not
  89. be required if the file name can be otherwise unambigously parsed, but in
  90. general it is safe to use the '<' and '>' characters.  In addition, the output
  91. can be appended to the output file by using '>>' in front of the file name.
  92.  
  93.  
  94. 6.  SIM COMMANDS:
  95.  
  96. ADdnet [<]filename
  97.     Read in more parts and add them to the network (default extension NET)
  98.  
  99.  
  100. ANybad [ON|OFF|?]
  101.     ANYBAD is a boolean variable maintained by the simulator to allow
  102.     accumulation of verify results for use in 'IF' commands.  The parameters
  103.     have the following meaning:
  104.          ON  -   ANYBAD:=TRUE
  105.          OFF -   ANYBAD:=FALSE
  106.          ?   -   ANYBAD:=ANYBAD OR BADVERIFY
  107.  
  108.  
  109. COmments [on|off|?]
  110.     Enable/disable the display of comments in the simulation results.  If
  111.     the '?' is used, the current state of the comments will be displyed.
  112.  
  113.  
  114. DIsplay [#n] [t0 [TO] t1 [STEP dt]] [>[>]dispfile] [-H] [-N]
  115.     Display RESULTFILE with given time parameters, optionally to a file of
  116.     default extension OUT.  If no file is given, the display is to the screen.
  117.     The -H option turns off the hiliting of signal changes on the screen.
  118.     The -N forces lines repeated due to a non-zero step to have all signals
  119.     forced to 'X'.
  120.     If the parameter #n is used, then the output is reformatted according
  121.     to TAB #n (see the .TAB command).
  122.  
  123.  
  124. DLay d
  125.     Wait for d milleseconds.  Useful to slow down the command stream from a
  126.     file to the point that you can read it during demos.
  127.  
  128.  
  129. DOs
  130.     Push to DOS.  Return to GateSim by typing the DOS command 'EXIT'
  131.  
  132.  
  133. DP pos show shift
  134.     This command controls formatting decimal points in the times output by 
  135.     the simulator.  The meaning of the three parameters is as follows:
  136.         Pos  - Divide the (integer) time by 10^Pos
  137.         Show - Display only this many digits to the right of the '.'
  138.         Shift- 0 ==> lose trailing digit  (digit  0)
  139.                1 ==> lose leading digit   (digit 10)
  140.     If Pos=0 (the default), no formatting is performed.  Typically, unless
  141.     extremely large times are needed, it is safe to set Shift to 1.
  142.     Here are some examples, using a time of 17234:
  143.         Pos = 0                            Output = '      17234'
  144.         Pos = 1, Show = 1, Shift = 1       Output = '     1723.4'
  145.         Pos = 1, Show = 1, Shift = 0       Output = '      1723.'
  146.         Pos = 4, Show = 3, Shift = 0       Output = '      1.723'
  147.         Pos = 4, Show = 3, Shift = 1       Output = '     1.723 '
  148.         Pos = 4, Show = 4, Shift = 1       Output = '     1.7234'
  149.  
  150.  
  151. EGa43 [on|off]
  152.     Enable or disable the EGA 43 line mode display.  Default is off
  153.  
  154.  
  155. ERrorfile >[>]filename
  156.     Open the file to make a copy of all error/warning messages.  If appending
  157.     is specified but the file does not exist, it will first be created.
  158.  
  159.  
  160. EXit
  161.     Quit the simulator
  162.  
  163.  
  164. FOrcenode [nodename|nibblename|nodespec] [[~]option] 
  165.     Force nodes, including wildcards (? and *).  The options are:
  166.         0     - force to 0
  167.         1     - force to 1
  168.         X     - force to X
  169.         .     - force to remain at current value
  170.         Z     - unforce
  171.         U     - force undetected stuck at 0 and 1
  172.         U0    - force undetected stuck at 0
  173.         U1    - force undetected stuck at 1
  174.         G     - force detected stuck at 0 and 1
  175.         G0    - force detected stuck at 0
  176.         G1    - force detected stuck at 1
  177.         M     - mark the node
  178.     A tilde (~) causes nodes to be forced to the inverse of the given state.
  179.  
  180.  
  181. FSim   [t0 [TO] t1 [STEP dt]] -C cmpfile [>[>]nodeStatFile] [-R] [-W n] [+W n]
  182.     Do fault simulation for all undetected faults in the network, comparing
  183.     against the cmpfile (default extension CMP).   The comparison file must
  184.     look like a simulator output file, lines of the form:
  185.       <time> <signals> <ret>
  186.     where a '.' in the signals is a wild card for comparison.
  187.     The -R option means to use random node ordering.  Outputting the results 
  188.     can be done to a file (default extension FLT), suitable for reading back 
  189.     in as FORCE statements.
  190.     The -W/+W options specify the time window during which the simulation
  191.     results must match the compare file.  The default window is [-0,0], so
  192.     a comparison is done only at the comparison file time.
  193.  
  194.  
  195. GAtes [gatetype|Unnn[.suffix]] [-D] [-S delta] [+S delta] [>[>]filename]
  196.     List all gates of a given type or with a given U number/suffix.  
  197.     For example,
  198.         GA AND*     gives all AND or AND-OR-INVERT gates
  199.         GA U132     gives all gates with a U number of 132
  200.     The -D option gives detailed information about all pins on each gate,
  201.     as well as delay information and a dump of memory allocated to the 
  202.     gate record (largely for debugging purposes).  
  203.     The -S/+S options are used to adjust the setup times of all matching
  204.     D flip-flops and latches by the delta time given (-S ==> decrease setup
  205.     time, +S ==> increase).  If these options are used, no display is given,
  206.     and the only allowable gate type is '*', but a U number may be specified.
  207.  
  208.  
  209. HELP or  ?
  210.     Give a help screen
  211.  
  212.  
  213. .HEX [busname=node3,node2,node1,node0]*
  214.     Define a hex nibble for output or input.  It is allowable to have
  215.     a node name of ;, which means that the bit of the nibble is ignored.
  216.  
  217.  
  218. HOriz [on|off|?]
  219.     Enable/Disable the horizontal display of simulation results.  The
  220.     default is OFF, so that results are displayed vertically, allowing
  221.     up to 80 columns of output on the screen.  If '?' is the parameter,
  222.     the current state of display will be shown
  223.  
  224.  
  225. IF [NOT] condition THEN command[|command]*
  226.     Conditions supported:
  227.         Badverify - set by all verify/compare operations
  228.         Anybad    - set via ANybad commands
  229.  
  230.  
  231. INput [<]filename
  232.     Take commands from a file (may be nested up to four deep)
  233.  
  234.  
  235. LIstnode [nodename|nibblename|nodespec] [-Q] [[~]state]* [>[>]filename]
  236.     Display the status of matching nodes, including wildcards (? and *).
  237.     All states given must match for a node to be displayed, and tilde
  238.     means the inverse of a state (e.g., ~0 ==> nodes not forced to 0).
  239.     The nodes are output in alphabetical order, unless the -Q option is
  240.     used, in which case only the totals are given.  The states are:
  241.         0     - nodes forced to 0
  242.         1     - nodes forced to 1
  243.         X     - nodes forced to X
  244.         .     - nodes forced to anything
  245.         B     - nodes forced to binary values
  246.         U     - nodes with undetected stuck at fault(s)
  247.         U0    - nodes with undetected stuck at 0 fault
  248.         U1    - nodes with undetected stuck at 1 fault
  249.         G     - nodes with no undetected stuck at fault(s)
  250.         G0    - nodes with detected stuck at 0 fault
  251.         G1    - nodes with detected stuck at 1 fault
  252.         *     - all matching nodes (default)
  253.         >n    - all nodes with greater than n transitions
  254.         <n    - all nodes with less than n transitions
  255.         =n    - all nodes with exactly n transitions
  256.         M     - all marked nodes
  257.  
  258.     Examples:
  259.         LI *    U    -- list all nodes with undetected faults
  260.         LI RES* B    -- list all nodes on the RES bus forced to binary state
  261.  
  262.  
  263. MEmory [>memFile] [<memFile]
  264.     Save/restore the state of the simulator.  This can generate very large
  265.     files and is not very robust--the simulator versions must be identical
  266.     AND the simulator must be located at exactly the same place in memory
  267.     to reload a file (default extension .MEM).  This command is illegal in
  268.     virtual protected mode.
  269.  
  270.  
  271. MOn [on|off|?]
  272.     Enable/disable display of the results during simulation. If ? is used,
  273.     the current monitor state is shown.
  274.  
  275.  
  276. NDelay sourceNodes destNodes [minDel] [maxDel] [>[>]filename] [options]
  277.     Output all paths from source to destination nodes which have 
  278.     delay >= minDelay (default=0) and <=maxDel (default=32K-1).
  279.     Options: 
  280.        -Q          : just endpoints of the path
  281.        -R          : reverse order
  282.        -S          : include setup time in PD
  283.        -L n        : only go through n Latches in any one path
  284.        -C n        : don't go through more than n DFF CLK pins/Latch G pins
  285.        -X nodeSpec : exclude all matching nodes from search
  286.        -T          : display as a tree
  287.        -M          : exclude marked nodes from path
  288.     The node specs have the form   [~][name | #n]   where #n ==> TAB #n.
  289.     Note that the node name can have a wild card.  The ~ in a nodespec
  290.     implies negation.
  291.  
  292.  
  293. NEtfile file
  294.     Read in a network file (default extension NET).  See the appendix on 
  295.     netlist format for a detailed description of the format for each gate.
  296.  
  297.     The network is in a text file and is part oriented.  The netlist format
  298.     is very much like SILOS.  Each element has the general form:
  299.          node1 .PARTNAME [time]* [node]*
  300.     Example:
  301.        OUT .NAND 10 12 IN1 IN2 IN3
  302.     Each time a comment of the form:  '$ Unn=...' is encountered at the 
  303.     beginning of the line, the value nnn is saved as an integer for the 
  304.     instance number, and that will be output along with the gate name whenever
  305.     GateSim displays information about that gate (see GAte and NOde commands).
  306.     The gate suffix is set to 0 when such a comment is encountered and
  307.     is incremented each time a new gate is encountered.  The gate suffix
  308.     can be modified by a comment of the form #sss.  The gate name is
  309.     output in the form PARTNAME [Unnn.sss].
  310.  
  311.     Memory devices have a slightly different format:
  312.        RAMname .SRAM [taccess [thiZ]] CSnode WEnode A0 A1 .. An / D0 .. Dm
  313.        ROMname .ROM  [taccess [thiZ]] CSnode        A0 A1 .. An / D0 .. Dm
  314.     The name is used for referring to the part in the memory commands.
  315.     It is also the name of the Intel HEX file loaded when the part is
  316.     intialized for simulation.
  317.  
  318.  
  319. PAttfile filename
  320.     Use the file as the vector file (default extension VEC).  The vectors
  321.     consist of .CLK statements, followed by a .PATT statement, with or without
  322.     a fixed delta time.  See the netlist format for a description of the
  323.     .CLK statements.   The PATT statement has the format:
  324.         .PATT [delta [startTime]] [signalName]*
  325.         [ [time|.time] [signalValues] <ret> ]*
  326.     If no delta is given, the time must be included on each input line.  
  327.     However, a '.' means to repeat the last vector input interval, and 
  328.     a '.n' means to skip n time units from the previous vector.   
  329.     A statement of the form 
  330.              IF node =  state THEN SKIP [+|-] n
  331.         or   IF node <> state THEN SKIP [+|-] n
  332.         or   IF node =  state THEN HALT
  333.         or   IF node <> state THEN HALT
  334.         or   IF node =  state THEN ECHO string
  335.         or   IF node <> state THEN ECHO string
  336.     does just what you think.  A skip with n=0 means NOP, while n=-1 
  337.     implies to repeat the IF, etc.
  338.     Also, if the first character of the vector (after the optional time)
  339.     is a K, you will be prompted for keyboard vector input, with the
  340.     remainder of the line made available for editing.   
  341.     A signal value of '.' means no change from the previous state
  342.  
  343.  
  344. PDelay sourceNodes destNodes [minDel] [maxDel] [>[>]filename] [options]
  345.     Identical to the NDelay command except that the only source nodes 
  346.     considered are the matching nodes which are also outputs of D flip-flops
  347.     or .CLK gates, and destination nodes must be the D pins of D flip-flops 
  348.     or latches.
  349.  
  350.  
  351. PUllup [node]*
  352.     Force certain nodes to have pullups on them, so that if the node
  353.     state goes to Z, it will instead be pulled to 1.
  354.  
  355.  
  356. QUit
  357.     Quit the simulator
  358.  
  359.  
  360. RAndomdelay n
  361.     Set the random delay on inputs from the vector file to the range 0..n.
  362.     The default is 0.
  363.  
  364.  
  365. REsult resultfile
  366.     Output simulation results to the resultfile (default extension OUT).
  367.     The contents of this file can be used to DIsplay, STore, or VErify
  368.     the simulation results.
  369.  
  370.  
  371. RF [command [|command]* ]
  372.     Resume input from a file (having typed 'P' to halt) after executing
  373.     the command(s) specified.  This command is most useful during a simulation
  374.     initiated within a command file, since you can Pause the simulation,
  375.     run any number of diagnostic commands (including pushing to DOS), then
  376.     continue the simulation by typing "RF SIM .".
  377.  
  378.  
  379. SCroll [on|off]
  380.     Enable scrolling the header display during verify/simulate/display.
  381.     Default is OFF, so the header stays on the screen
  382.  
  383.  
  384. SFights [on|off|?]
  385.     Enable/disable fight reporting (default=ON).  If ? is used, the current
  386.     state of showing fights will be displayed.
  387.  
  388.  
  389. SImulate  [t0 [TO] t1 [STEP dt]] [-C cmpfile [-W n] [+W n]] [-H] [-G] [-Y]
  390.     Simulate over the given time range.  If t0 is less than the previous
  391.     ending simulation time, you will be asked if you want to restart, unless
  392.     you override by giving the -Y option.
  393.     You can also compare against a file of default extension CMP (no output
  394.     will be generated), and the simulation will stop (and the Badverify 
  395.     flag set) if any discrepancies are found.  A '.' in the cmpfile will 
  396.     always result in a match for the given node.  If the -G option is used,
  397.     the simulation will continue even after Badverify is set.  The +W/-W
  398.     options give a comparison time window about the times for the lines
  399.     in cmpfile.  The default window is [-0,+0].
  400.     You can also do "SIM +" to continue a simulation with the same time range
  401.     (e.g., sim 0 1000 followed by "SIM +" is the same as sim 1000 2000).  
  402.     Similarly, a "SIM ." will complete a halted simulation.
  403.     The -H option turns off the hiliting of signal changes (for MOnitor ON).
  404.     
  405.  
  406. STore [#n] [t0 [TO] t1 [STEP dt]] [>[>]dispfile] [-N] [-I] [-D]
  407.     Same as DIsplay, but if no file is given, the result is stored to the
  408.     file DISPLAY.OUT.  STore options have the following meaning:
  409.        -N  ==> output in NCR format (time on right, suppress repeated 
  410.                lines due to step by changing signals to 'X')
  411.        -I  ==> used in conjunction with -N to keep the NCR format
  412.                without suppressing repeated lines
  413.     If the parameter #n is used, then the output is reformatted according
  414.     to TAB #n (see the .TAB command).
  415.  
  416.  
  417. .TAb [ [+] [#n] [node [[state]] |nibble|;]* | ? ]
  418.     Select the nodes to be output during simulation or display.  The #n
  419.     selects which table is used (TAB 1 to TAB 10); no such parameter implies 
  420.     TAB 0, which is the default used for simulation/display.  The transitions 
  421.     on nodes/nibbles in TAB 0 will be saved to a file for later display or
  422.     verification.  A semicolon leaves a space in the display.  A '+' means
  423.     append the list to the current table.  If a state (0,1,Z,X) is placed 
  424.     after a node name in brackets, that node will be displayed in a hilited
  425.     color whenever it is in that state.  
  426.     Entering a parameter of ? will force a list of all TAB statements.
  427.  
  428.  
  429. VErify [t0 [TO] t1 [STEP dt]] [<verffile] [>[>]diffile] [[+|-]O offset]
  430.     Verify RESULTFILE with given time parameters against verffile (default
  431.     extension VRF).  Optionally, store (or append) the results to diffile 
  432.     (default extension DIF).  Sets the badverify flag if a discrepancy 
  433.     is detected.  If no file is given, the discrepancies are displayed 
  434.     using various colors to distinguish them.  The +O/-O offset is used
  435.     to do a comparison with a time offset.  +O means to add the time
  436.     to the current simulation results before comparing, while -O means
  437.     to add the time to VERFFILE before comparing.
  438.  
  439.  
  440. VIewvector [on|off|?]
  441.     Enable/disable the display of vectors as comments.  If a ? is used, the
  442.     current state of vector display is shown.  The default state is ON.
  443.  
  444.  
  445. WAveform [on|off|?]
  446.     Enable/disable the display of signals as a waveform (using character
  447.     graphics) instead of characters (0,1,Z,X).   This feature is only
  448.     supported on EGA displays.  If a ? is used, the current state of waveforms
  449.     is displayed.  The default state is OFF.
  450.  
  451.  
  452. WIndow n
  453.     Set the number of lines used for comments when performing a horizontal
  454.     display or simulation.  The default is 4.  As more lines are used for
  455.     comments, obviously fewer lines are available for signal display.
  456.  
  457.  
  458.  
  459. 7.  MEMORY COMMANDS:
  460.  
  461. DUmp memName [startaddr [endaddr]] [>[>]file]
  462.     Dump the RAM/ROM of the given name (with optional address range) to a file
  463.     or the screen if no file is specified.
  464.  
  465.  
  466. VRam memName [startaddr [endaddr]] <file [>[>]difffile]
  467.     Verify the contents of memory against a hex file and display the
  468.     results to the screen or to a file.  Sets the badVerify flag if
  469.     any differences are encountered
  470.  
  471.  
  472. LOadmem memName [startaddr [endaddr]] <file
  473.     Load the contents of RAM/ROM from an INTEL HEX file.  When ROMs are
  474.     read from the netlist file, a file of the name memName.HEX is opened
  475.     and the ROM is initialized.
  476.  
  477.  
  478. POkemem memName startaddr [value]*
  479.     Modify memory with the values
  480.  
  481.  
  482. FIllmem memName startaddr endaddr value
  483.     Fill a range of memory with a value
  484.  
  485. APPENDIX A.    NETLIST FORMAT
  486.  
  487. Comments are marked by a '$' character up to the end of the line.  A
  488. '+' on the beginning of a line means that the line is a continuation
  489. of the previous line.  Each element has its own syntax and should be
  490. placed on its own line(s).  Each input node can optionally be
  491. preceded by a '-' sign to show that the input is inverted before the
  492. gate function is computed.  All delays are parsed as 16 bits integers
  493. and thus must be in range 0..32767.
  494.  
  495. Inverter:
  496.     OUT    .INV  [trise] [tfall] IN
  497.  
  498.  
  499. Boolean gates: ( up to 9 inputs)
  500.     OUT    .AND  [trise] [tfall] IN1 IN2 ... 
  501.     OUT    .NAND [trise] [tfall] IN1 IN2 ... 
  502.     OUT    .OR   [trise] [tfall] IN1 IN2 ... 
  503.     OUT    .NOR  [trise] [tfall] IN1 IN2 ... 
  504.     OUT    .XOR  [trise] [tfall] IN1 IN2 ... 
  505.     OUT    .XNOR [trise] [tfall] IN1 IN2 ... 
  506.  
  507.  
  508. Tri-State Inverter: (OE is active high)
  509.     OUT    .TINV [trise] [tfall] [tZH] [tZL] [tHZ] [tLZ]  OE  IN
  510.  
  511.  
  512. D Flip-Flop:
  513.     Q    .DFF [tRiseQ]  [tFallQ]  [tsetQ]  [tclrQ] 
  514.         +            [tRiseQB] [tfallQB] [tsetQB] [tclrQB] 
  515.         +            [tsetup] [thold] [tMinPulseWidth]
  516.         +            QBAR SETBAR CLRBAR D CLK
  517.  
  518. Latch: (transparent while G is high)
  519.     Q    .LATCH [tRiseD] [tFallD] [tRiseG] [tFallG] [tSet] [tClr] 
  520.         +            [tsetup] [thold] [tMinPulseWidth]  SETBAR CLRBAR D G
  521.  
  522. And-Or-Invert: (max of 24 terms, 8 and gates)
  523.     OUT    .AOI [tRise] [tFall] A0 A1 ... / B0 B1 .. / C0 C1 ...
  524.  
  525.  
  526. Or-And-Invert: (max of 24 terms, 8 and gates)
  527.     OUT    .OAI [tRise] [tFall] A0 A1 ... / B0 B1 .. / C0 C1 ...
  528.  
  529. CMOS Transfer Gate:
  530.     OUT    .CXFR [tRise] [tFall] EN ENBAR IN
  531.  
  532. RAM: (maximum of 14 address pins, 8 data pins )
  533.      NAME    .SRAM [tAccess] [tHiZ] [tsetupD] 
  534.         +             CSBAR WEBAR A0 A1 .. An / D0 .. Dn
  535.  
  536. ROM: (maximum of 14 address pins, 8 data pins )
  537.     NAME    .ROM  [tAccess] [tHiZ] 
  538.         +             CSBAR       A0 A1 .. An / D0 .. Dn
  539.  
  540. PULLUP:
  541.         NODE    .PULLUP
  542.  
  543. CLK: (repeatable waveform)
  544.         NODE    .CLK time state [time state]* [.REP time]
  545.  
  546.  
  547.  
  548. GateSim is a trademark of Tanner Research, Inc.  Other brand and product names
  549. are trademarks or registered trademarks of their respective holders.
  550. Copyright (c) 1988 Tanner Research, Inc.
  551.  
  552.  
  553. Tanner Research, Inc.
  554. 128 West Del Mar Boulevard
  555. Pasadena, CA  91105
  556.  
  557. (818) 795-1696
  558.