0707070124062000521006440006700000000000010000000500250475400004200000000157spice3c1/lib/helpdir/helpfile.fdl FILE ORGANIZATION SEQUENTIAL RECORD CARRIAGE_CONTROL NONE FORMAT STREAM_LF 0707070124062000531006440006700000000000010000000500250475600004000000044310spice3c1/lib/helpdir/nutmeg.idxmainargumentsdashdashndashodashrdasht bugs caveatsacommands$alias)alter+9asciiplot,6break0bug2cd3Wcdump4Ocompose5=continue9 cross;define=deftypeAdestroyGBdiffJdisplayMdowhileSdumpUechoVeditWelseYendZoforeach[fourier]jgotoa|hardcopychelphhistorycommpuifrjobsslabeltletulinearizewwload{oldhelp}plotcombplotlingridlinplot9loglognogrid\nointerpWpointplotpolarsamepsmithtitlexcompressxdeltaxindicesxlabelxlimitxlogydeltaylabelhylimitBylogprintquitrehashrepeatrusageacceptelapsedBfaultsloadtimelutime(rejectedsolvetime^spacetimetotaltimetotitertraniterWtranpointstransolvetimentrantimesetsetplotzsettypeYshellshiftshowsourcestatestatusstep-stoprstrcmpȓunaliasundefine4unlet`unsetversion|whileIwrite7cshstuffaliasesccomglobhistorysubio(quotingsemiunixcomcomm4variablesub-expressionsconstantsboltzcFeecharge@falsei H_f_i_l_e. The TEXT: H variables Gwidth, height, Hand Gnobreak Hdetermine the TEXT: H width and height of the plot, and whether there are TEXT: H page breaks, respectively. Note that you will have TEXT: H problems if you try to Gasciiplot Hsomething with an X- TEXT: H scale that isn't monotonic (i.e, something like TEXT: H _s_i_n(_T_I_M_E) ), because Gasciiplot Huses a simple-minded TEXT: H sort of linear interpolation. Also, most of the key- TEXT: H words that Gplot Hrecognises aren't used by GasciiplotH. TEXT: H TEXT: SEEALSO: nutmeg:plot SEEALSO: nutmeg:hardcopy SEEALSO: nutmeg:width SEEALSO: nutmeg:height SEEALSO: nutmeg:noasciiplotvalue SEEALSO: nutmeg:nobreak SEEALSO: nutmeg:expressions SUBJECT: break TITLE: break TEXT: TEXT: Gbreak H[ _n_u_m_b_e_r ] TEXT: H If there is a Gwhile, dowhile, Hor Gforeach Hblock enclos- TEXT: H ing this statement, control passes out of the block. TEXT: H Otherwise an error results. If a _n_u_m_b_e_r is given, that TEXT: H number of enclosing blocks are exited. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: bug TITLE: bug TEXT: TEXT: Gbug HThis sends a bug report to the maintainer of SPICE3, if TEXT: H it has been compiled with the BUGADDR option. TEXT: H TEXT: SUBJECT: cd TITLE: cd TEXT: TEXT: Gcd H[ _d_i_r_e_c_t_o_r_y ] TEXT: H Change the current working directory to _d_i_r_e_c_t_o_r_y, or TEXT: H the user's home directory if none is given. TEXT: H TEXT: SUBJECT: cdump TITLE: cdump TEXT: TEXT: Gcdump TEXT: H HThis is a debugging command for printing out the con- TEXT: H tents of the currently active control structures. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: compose TITLE: compose TEXT: TEXT: Gcompose H_v_e_c_n_a_m_e [ _p_a_r_a_m = _v_a_l_u_e ] ... TEXT: H or TEXT: H TEXT: Gcompose H_v_e_c_n_a_m_e Gvalues H_v_a_l_u_e ... TEXT: H Both forms of this command create a new vector called TEXT: H _v_e_c_n_a_m_e. In the first form, the values in the vector TEXT: H are determined by the parameters given. In the second TEXT: H form, the given values are used to form the vector. TEXT: H TEXT: The first form of this command is currently unimple- TEXT: H mented. Currently, in order to get any desired vector TEXT: H one may use the Glet Hcommand with various functions such TEXT: H as Gvector(), rnd(), Hand so on. GCompose His intended to TEXT: H be a more convenient method of constructing such vec- TEXT: H tors. TEXT: H TEXT: SEEALSO: nutmeg:let SUBJECT: continue TITLE: continue TEXT: TEXT: Gcontinue H[ _n_u_m_b_e_r ] TEXT: H If there is a Gwhile, dowhile, Hor Gforeach Hblock enclos- TEXT: H ing this statement, control returns to the beginning of TEXT: H that block. If there is no such enclosing block, an TEXT: H error results. If a _n_u_m_b_e_r is given, control is passed TEXT: H to the beginning of the _n_u_m_b_e_r'th enclosing block. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: cross TITLE: cross TEXT: TEXT: Gcross H_v_e_c_n_a_m_e _n_u_m_b_e_r [ _s_o_u_r_c_e ] ... TEXT: H A new vector is constructed, with name _v_e_c_n_a_m_e and TEXT: H values consisting of the _n_u_m_b_e_r'th element of each of TEXT: H the _s_o_u_r_c_e vectors. This is a rather awkward way to TEXT: H deal with multi-dimensional data - a more general TEXT: H method is being developed. TEXT: H TEXT: SUBJECT: define TITLE: define TEXT: TEXT: Gdefine H_f_u_n_c_t_i_o_n(_a_r_g, ...) _e_x_p_r_e_s_s_i_o_n TEXT: H Define the macro with the name _f_u_n_c_t_i_o_n and arguments TEXT: H _a_r_g, ... to be _e_x_p_r_e_s_s_i_o_n, which may involve the argu- TEXT: H ments. When the function is later used, the arguments TEXT: H it is given are substituted for the formal arguments TEXT: H when it is parsed. If _e_x_p_r_e_s_s_i_o_n is not present, any TEXT: H definitions for _f_u_n_c_t_i_o_n are printed, and if there are TEXT: H no arguments to _d_e_f_i_n_e then all currently active defin- TEXT: H itions are printed. Note that you may have different TEXT: H functions defined with the same name but different ari- TEXT: H ties. Some useful definitions (which are part of the TEXT: H default environment) are: TEXT: H TEXT: Gdefine maxH(x,y) (x > y) * x + (x <= y) * y TEXT: H Gdefine minH(x,y) (x < y) * x + (x >= y) * y TEXT: H TEXT: SEEALSO: nutmeg:undefine SEEALSO: nutmeg:expressions SUBJECT: deftype TITLE: deftype TEXT: TEXT: Gdeftype v H_t_y_p_e_n_a_m_e [ _a_b_b_r_e_v ] TEXT: H or TEXT: H TEXT: Gdeftype p H_p_l_o_t_t_y_p_e [ _p_a_t_t_e_r_n ] ... TEXT: H This command is intended to make Gnutmeg Heasier to use TEXT: H with simulators other than SPICE3. It is only a tem- TEXT: H porary facility, however. The first form defines a new TEXT: H type for vectors. The _t_y_p_e_n_a_m_e may then be used as a TEXT: H vector type specification in a rawfile, and will be TEXT: H used for the Gdisplay Hcommand to indicate the type. If TEXT: H an _a_b_b_r_e_v is given, values of that type can be named TEXT: H _a_b_b_r_e_v(_s_o_m_e_t_h_i_n_g) where _s_o_m_e_t_h_i_n_g is the name given in TEXT: H the rawfile (and _s_o_m_e_t_h_i_n_g doesn't contain TEXT: H parentheses). The second form defines a plot type. TEXT: H The (one word) name for a plot with any of the _p_a_t_t_e_r_ns TEXT: H present in its plot type name as given in the raw file TEXT: H will be _p_l_o_t_t_y_p_e<_n_u_m>, where <_n_u_m> is a positive TEXT: H integer incremented every time a rawfile is read or a TEXT: H new plot is defined. TEXT: H TEXT: SUBJECT: destroy TITLE: destroy TEXT: destroy [ _p_l_o_t_n_a_m_e ... ] [ all ] TEXT: Throw away the data in the named plot and reclaim the TEXT: storage space. This can be necessary if a lot of large TEXT: simulations are being done. spice should warn the user TEXT: if the size of the program is approaching the maximum TEXT: allowable size (within about 90%), but it is advisable TEXT: to run the rusage command occasionally if running out TEXT: of space is a possibility. If the argument to destroy TEXT: is all, all plots except the constant plot will be TEXT: thrown away. It is not possible to destroy the con- TEXT: stant plot. If no argument is given the current plot TEXT: is destroyed. TEXT: SEEALSO: nutmeg:setplot SEEALSO: nutmeg:rusage SUBJECT: diff TITLE: diff TEXT: TEXT: Gdiff H_p_l_o_t_1 _p_l_o_t_2 [ _v_e_c_n_a_m_e ] ... TEXT: H Compare the vectors in the named _p_l_o_ts and print out TEXT: H any values which differ significantly in corresponding TEXT: H vectors in the two plots. If no _v_e_c_n_a_m_es are men- TEXT: H tioned, all vectors in the plots are compared, and if TEXT: H one or more names are given only those vectors are com- TEXT: H pared. The variables GabstolH, GreltolH, and Gvntol Hare TEXT: H used to determine if two values are "significantly" TEXT: H different. (See the SPICE3 User's Guide for details of TEXT: H these variables.) TEXT: H TEXT: SEEALSO: nutmeg:abstol SEEALSO: nutmeg:vntol SEEALSO: nutmeg:reltol SUBJECT: display TITLE: display TEXT: TEXT: Gdisplay H[ _v_e_c_n_a_m_e ] ... TEXT: H List the names, types and lengths of the vectors TEXT: H defined in the current plot, and whether the vector is TEXT: H real or complex. If one or more _v_e_c_a_m_es are given the TEXT: H list is restricted to those vectors. Additional infor- TEXT: H mation is also given: if there is a minimum or maximum TEXT: H value for the vector defined, this is listed (see the TEXT: H manual page for Gsconvert Hfor a definition of the TEXT: H rawfile format and the manner in which this and the TEXT: H rest of the per-vector parameters are defined), if TEXT: H there is a default grid type or a default plot type, TEXT: H they are mentioned, and if there is a default color or TEXT: H a default scale for the vector it is noted. Addition- TEXT: H ally, one vector in the plot will have the notation TEXT: H G[default scale] Happended - this vector will be used as TEXT: H the x-scale for the Gplot Hcommand if none is given or is TEXT: H the vectors named have no default scales of their own. TEXT: H A better description of these parameters is given with TEXT: H the description of the Gplot Hcommand. TEXT: H TEXT: SUBJECT: dowhile TITLE: dowhile TEXT: TEXT: Gdowhile H_c_o_n_d_i_t_i_o_n TEXT: H This line, together with a matching Gend Hstatement, TEXT: H defines a block of commands that are executed while the TEXT: H _c_o_n_d_i_t_i_o_n remains true. (The _c_o_n_d_i_t_i_o_n is an expres- TEXT: H sion which is considered true if it evaluates to a TEXT: H non-0 value.) Unlike the Gwhile Hstatement, the test is TEXT: H done at the bottom of the loop. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: dump TITLE: dump TEXT: TEXT: Gdump HThis command causes a debugging print of the internal TEXT: H data structures used by the simulator. It is not TEXT: H guaranteed to provide any useful information. (Gspice TEXT: H Honly) TEXT: H TEXT: SUBJECT: echo TITLE: echo TEXT: TEXT: Gecho H[ G-n H] [ _s_t_u_f_f ] ... TEXT: H Print the _s_t_u_f_f on the standard output. If the G-n Hflag TEXT: H is given, don't append a newline. TEXT: H TEXT: SUBJECT: edit TITLE: edit TEXT: TEXT: Gedit H[ _f_i_l_e_n_a_m_e ] TEXT: H Print the current circuit definition into a file, call TEXT: H up the editor on that file and allow the user to modify TEXT: H it, and then read it back in, replacing the original TEXT: H definition. If a Gfilename His given, then edit that file TEXT: H and Gsource Hit, making the circuit the current one. TEXT: H TEXT: SUBJECT: else TITLE: else TEXT: TEXT: Gelse HPart of an Gif-else Hblock. See the description of the TEXT: H Gif Hstatement. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: end TITLE: end TEXT: TEXT: Gend HThis statement terminates a block. It is an error for TEXT: H an Gend Hto appear without a matching Gbegin, if, while, TEXT: H repeat, foreach, Hor Gdowhile Hstatement. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: foreach TITLE: foreach TEXT: TEXT: Gforeach H_v_a_r [ _v_a_l_u_e ] ... TEXT: H This statement opens a block which will be executed TEXT: H once for each _v_a_l_u_e given. Each time through, the _v_a_r TEXT: H will be set to sucessive _v_a_l_u_es. After the loop is TEXT: H exited it will have the last value that was assigned to TEXT: H it. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: fourier TITLE: fourier TEXT: TEXT: Gfourier H_f_u_n_d_a_m_e_n_t_a_l__f_r_e_q_u_e_n_c_y [ _v_a_l_u_e ] ... TEXT: H Does a fourier analysis of each of the given values, TEXT: H using the first 10 multiples of the fundamental fre- TEXT: H quency (or the first _n_f_r_e_q_s, if that variable is set). TEXT: H The _v_a_l_u_es may be any valid expression. They are TEXT: H interpolated onto a fixed-spaced grid with the number TEXT: H of points given by the Gfourgridsize Hvariable, or 200 if TEXT: H it is not set. The interpolation will be of degree TEXT: H Gpolydegree Hif that variable is set, or 1. If Gpolyde- TEXT: H gree His 0, then no interpolation will be done. This TEXT: H command is executed when a G.four Hline is present in the TEXT: H input file and Gspice His being run in batch mode. TEXT: H TEXT: SEEALSO: nutmeg:fourgridsize SEEALSO: nutmeg:nfreqs SUBJECT: goto TITLE: goto TEXT: TEXT: Ggoto H_l_a_b_e_l TEXT: H If there is a Glabel Hstatement in an enclosing block TEXT: H defining the _l_a_b_e_l, transfer execution to the statement TEXT: H following it. Note that if Ggoto His used outside of a TEXT: H block, the label must be above the GgotoH. There is a TEXT: H Gbegin Hmacro pre-defined as _i_f _1 which may be used if TEXT: H forward label references are required outside of a loop TEXT: H construct. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: hardcopy TITLE: hardcopy TEXT: TEXT: Ghardcopy H[ _f_i_l_e_n_a_m_e ] [ _p_l_o_t _a_r_g_u_m_e_n_t_s ] TEXT: H This command has a syntax identical to that of the Gplot TEXT: H Hcommand, except for a _f_i_l_e_n_a_m_e in which to put the plot TEXT: H image. If no plot arguments are given, the user will TEXT: H be prompted to select a window which will be dumped TEXT: H into the file (if he is using a graphics system with TEXT: H windows such as X). If no _f_i_l_e_n_a_m_e is given a tem- TEXT: H porary file will be used. If the Ghcopydev Hvariable is TEXT: H defined, the file will be printed using the command TEXT: H "lpr -g -P_h_c_o_p_y_d_e_v file", and if a temporary file was TEXT: H used, it will be removed. This is likely to work only TEXT: H on a UNIX system. The format of the plot image file is TEXT: H given in the UNIX manual page for Gplot(5)H, and may be TEXT: H plotted on a terminal with the UNIX Gplot Hprogram. TEXT: H TEXT: SEEALSO: nutmeg:plot SEEALSO: nutmeg:asciiplot SEEALSO: nutmeg:hcopydev SUBJECT: help TITLE: help TEXT: help [ _t_o_p_i_c ] ... TEXT: This is an interactive graphical help browser. Its TEXT: operation should be largely self-explanatory. The user TEXT: is presented with a window (if he is using the X win- TEXT: dows system) or a screenful of information. TEXT: TEXT: In the X version, there will be a number of "buttons" TEXT: which the user can click the mouse in, each of which TEXT: correspond to a sub-topic of the topic discussed in the TEXT: window, or a "see also" topic which is related to the TEXT: current one. If the user clicks the mouse in one of TEXT: these buttons, a new window will be created overlapping TEXT: the old one, which contains the information on the TEXT: requested topic. Each window also contains buttons in TEXT: the upper right-hand corner: Delete Window will cause TEXT: the window and all others that are its "descendants" to TEXT: go away; Quit Help will cause all the windows to disap- TEXT: pear and help system to be exited; and possibly Next TEXT: Page and Prev Page, which allow the user to scroll TEXT: around the text if there is more data than will fit on TEXT: a reasonable screen. TEXT: TEXT: If X is unavailable, the information will be paged as TEXT: in the _m_o_r_e program. At the end of the text there will TEXT: be a menu of the available sub-topics and see-alsos. TEXT: TEXT: If for some reason the help directory is unavailable, TEXT: the oldhelp command will be used. TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:helpregfont SEEALSO: nutmeg:helpboldfont SEEALSO: nutmeg:helpitalicfont SEEALSO: nutmeg:helptitlefont SEEALSO: nutmeg:helpbuttonfont SEEALSO: nutmeg:helpbuttonstyle SEEALSO: nutmeg:helpinitxpos SEEALSO: nutmeg:helpinitypos SEEALSO: nutmeg:oldhelp SUBJECT: historycomm TITLE: history command TEXT: TEXT: Ghistory H[ G-r H] [ _n_u_m_b_e_r ] ... TEXT: H Print out the last _n_u_m_b_e_r commands typed by the user, TEXT: H or all the commands saved if there are no arguments. TEXT: H The number of commands saved is determined by the value TEXT: H of the Ghistory Hvariable. If the G-r Hflag is given, the TEXT: H list is printed in reverse order. TEXT: H TEXT: SEEALSO: nutmeg:historyvar SEEALSO: nutmeg:historysub SUBJECT: if TITLE: if TEXT: TEXT: Gif H_c_o_n_d_i_t_i_o_n TEXT: H This statement defines a block to be executed if the TEXT: H _c_o_n_d_i_t_i_o_n is true. See the section on the command TEXT: H language for more details. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: jobs TITLE: jobs TEXT: TEXT: Gjobs HPrint out a summary of all the simulations which have TEXT: H been started with the Gaspice Hcommand. TEXT: H TEXT: SEEALSO: spice:aspice SUBJECT: label TITLE: label TEXT: TEXT: Glabel H_l_a_b_e_l_n_a_m_e TEXT: H This defines a label which can be used as an argument TEXT: H to GgotoH. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: let TITLE: let TEXT: TEXT: Glet H_v_e_c_n_a_m_e G= H_e_x_p_r TEXT: H Create a vector with name _v_e_c_n_a_m_e and value given by TEXT: H the expression _e_x_p_r. None of the vector options such TEXT: H as default scale, color, etc that are read from the TEXT: H rawfile are preserved when a vector is created in this TEXT: H manner. TEXT: H TEXT: SEEALSO: nutmeg:expressions SEEALSO: nutmeg:compose SUBJECT: linearize TITLE: linearize TEXT: TEXT: Glinearize H[ _v_e_c_n_a_m_e ] ... TEXT: H The purpose of this command is to force data from a TEXT: H transient analysis to conform to a linear scale. Due TEXT: H to the algorithm used to determine the timesteps used, TEXT: H the time scale may not be linear. If no _v_e_c_n_a_m_es are TEXT: H given, all the vectors in the current plot are copied TEXT: H to a new plot which becomes the current plot, and their TEXT: H data is interpolated onto a linear time scale. If one TEXT: H or more vectors are named, only those vectors are TEXT: H copied. The variable Gpolydegree Hdetermines how the TEXT: H interpolation is done. Note that this command is only TEXT: H available in GspiceH, and the current plot must TEXT: H correspond to the current circuit (otherwise the wrong TEXT: H values for the start, step, and stop times may be TEXT: H used). TEXT: H TEXT: SUBJECT: load TITLE: load TEXT: TEXT: Gload H[ _f_i_l_e_n_a_m_e ] ... TEXT: H Loads the data in either binary or ascii format from TEXT: H the files named. The default filename is GrawspiceH, or TEXT: H the argument to the G-r Hcommand line option if one was TEXT: H given. The last plot in the file becomes the current TEXT: H plot. A description of the rawfile format is given in TEXT: H the manual page for GsconvertH. TEXT: H TEXT: SEEALSO: nutmeg:write SUBJECT: oldhelp TITLE: oldhelp TEXT: help [ all ] [ _c_o_m_m_a_n_d_n_a_m_e ] ... TEXT: A brief helpful message is printed, followed by one- TEXT: line descriptions of all the commands named, or all TEXT: commands if all was given. If there are no arguments TEXT: only a few useful commands are described. This command TEXT: is available in case for some reason the documentation TEXT: browser is broken. TEXT: SEEALSO: nutmeg:help SUBJECT: plot TITLE: plot TEXT: TEXT: Gplot [ _e_x_p_r ... [ Gvs H_x-_e_x_p_r ] ] H[ _o_p_t_i_o_n_s ] ... TEXT: H Plot the values of the expressions on the graphics dev- TEXT: H ice, if there is one. For each set of expressions that TEXT: H is followed by a Gvs H_x-_e_x_p_r clause, all those vectors TEXT: H are plotted with the _x-_e_x_p_r for a scale. Multiple sets TEXT: H of expressions with different x-scales may be given in TEXT: H this manner. The available options are listed below. TEXT: H Note that options must appear after expressions. TEXT: H TEXT: SUBTOPIC: nutmeg:combplot nutmeg:lingrid nutmeg:linplot SUBTOPIC: nutmeg:loglog nutmeg:nogrid nutmeg:nointerp SUBTOPIC: nutmeg:pointplot nutmeg:samep SUBTOPIC: nutmeg:title nutmeg:xcompress SUBTOPIC: nutmeg:xdelta nutmeg:xindices nutmeg:xlabel SUBTOPIC: nutmeg:xlimit nutmeg:xlog nutmeg:ydelta SUBTOPIC: nutmeg:ylabel nutmeg:ylimit nutmeg:ylog SEEALSO: nutmeg:hardcopy SEEALSO: nutmeg:asciiplot SEEALSO: nutmeg:expressions SEEALSO: nutmeg:graphics SEEALSO: nutmeg:device SEEALSO: nutmeg:term SEEALSO: nutmeg:color SEEALSO: nutmeg:geometry SEEALSO: nutmeg:dontplot SUBJECT: combplot TITLE: combplot TEXT: TEXT: Gcombplot TEXT: H HUse a comb plot instead of connected points. Each TEXT: H point is connected to the bottom of the screen by a TEXT: H line. TEXT: H TEXT: SUBJECT: lingrid TITLE: lingrid TEXT: TEXT: Glingrid TEXT: H HUse a linear grid. This is the default grid type. TEXT: H TEXT: SUBJECT: linplot TITLE: linplot TEXT: TEXT: Glinplot TEXT: H HPlot data as points connected by lines. This is the TEXT: H default. TEXT: H TEXT: SUBJECT: loglog TITLE: loglog TEXT: TEXT: Gloglog TEXT: H HUse a log-log grid. TEXT: H TEXT: SUBJECT: nogrid TITLE: nogrid TEXT: nogrid TEXT: Don't plot a grid. The data will be plotted on a TEXT: linear scale and only the border lines at the bottom TEXT: and left sides of the screen will be drawn. TEXT: SUBJECT: nointerp TITLE: nointerp TEXT: nointerp TEXT: Normally asciiplot interpolates data onto a linear TEXT: scale before plotting it. If this option is given this TEXT: won't be done - each line will correspond to one data TEXT: point as generated by the simulation. TEXT: SEEALSO: nutmeg:asciiplot SUBJECT: pointplot TITLE: pointplot TEXT: TEXT: Gpointplot TEXT: H HPlot data points as unconnected points. Each sucessive TEXT: H expression is plotted with a different character to TEXT: H mark the points. The characters used may be changed by TEXT: H setting the variable GpointcharsH. TEXT: H TEXT: SUBJECT: polar TITLE: polar TEXT: TEXT: Gpolar TEXT: H HUse a polar grid instead of a rectangular grid. TEXT: H TEXT: SEEALSO: nutmeg:smith SUBJECT: samep TITLE: samep TEXT: TEXT: Gsamep TEXT: H HIf this option appears anywhere on the command line, TEXT: H all the options used in the last Gplot Hcommand are used TEXT: H for the current one, overriding options on the current TEXT: H line if they appear on both lines. TEXT: H TEXT: SUBJECT: smith TITLE: smith TEXT: TEXT: Gsmith TEXT: H HUse a smith grid instead of a rectangular or polar TEXT: H grid. There are a few problems, the major ones being TEXT: H that the grid is centered around the x-axis, and that TEXT: H too few labels are printed on the perimeter of the plot TEXT: H area. TEXT: H TEXT: SUBJECT: title TITLE: title TEXT: TEXT: Gtitle H_s_t_r_i_n_g TEXT: H The string will be used as the title printed near the TEXT: H bottom of the screen instead of the title of the plot TEXT: H that includes the first vector mentioned on the line TEXT: H that has one. TEXT: H TEXT: SUBJECT: xcompress TITLE: xcompress TEXT: TEXT: Gxcompress H_v_a_l_u_e TEXT: H Plot only one out of every _v_a_l_u_e points in each of the TEXT: H vectors. TEXT: H TEXT: SUBJECT: xdelta TITLE: xdelta TEXT: TEXT: Gxdelta H_v_a_l_u_e TEXT: H This value is used as the spacing between grid lines on TEXT: H the x-axis. TEXT: H TEXT: SUBJECT: xindices TITLE: xindices TEXT: TEXT: Gxindices H_l_o_w_e_r _u_p_p_e_r TEXT: H Only data points with indices between _l_o_w_e_r and _u_p_p_e_r TEXT: H are plotted. _u_p_p_e_r must be greater or equal to _l_o_w_e_r. TEXT: H TEXT: SUBJECT: xlabel TITLE: xlabel TEXT: TEXT: Gxlabel H_s_t_r_i_n_g TEXT: H The string is used as the label for the x-axis, instead TEXT: H of the name of the first scale used. TEXT: H TEXT: SUBJECT: xlimit TITLE: xlimit TEXT: TEXT: Gxlimit H_l_o_w_e_r _u_p_p_e_r TEXT: H The plot area in the x-direction is restricted to lie TEXT: H between _l_o_w_e_r and _u_p_p_e_r. The area actually used may be TEXT: H somewhat larger to provide nicely spaced grid lines, TEXT: H however. TEXT: H TEXT: SUBJECT: xlog TITLE: xlog TEXT: TEXT: Gxlog HUse a log scale for the x-axis and a linear scale for TEXT: H the y-axis. TEXT: H TEXT: SUBJECT: ydelta TITLE: ydelta TEXT: TEXT: Gydelta H_v_a_l_u_e TEXT: H Use the _v_a_l_u_e as the spacing between the grid lines on TEXT: H the y-axis. TEXT: H TEXT: SUBJECT: ylabel TITLE: ylabel TEXT: TEXT: Gylabel H_s_t_r_i_n_g TEXT: H Use the _s_t_r_i_n_g as the label for the y-axis. (By TEXT: H default none is printed.) TEXT: H TEXT: SUBJECT: ylimit TITLE: ylimit TEXT: TEXT: Gylimit H_l_o_w_e_r _u_p_p_e_r TEXT: H Limit the plot area in the y-direction to lie between TEXT: H _l_o_w_e_r and _u_p_p_e_r. It may be expanded slightly to allow TEXT: H for nicely spaced grid lines. TEXT: H TEXT: SUBJECT: ylog TITLE: ylog TEXT: TEXT: Gylog HUse a log scale for the y-axis and a linear scale for TEXT: H the x-axis. TEXT: H TEXT: SUBJECT: print TITLE: print TEXT: TEXT: Gprint H[ Gcol H] [ Gline H] [ _e_x_p_r ] ... TEXT: H Print the values of the given expressions to the stan- TEXT: H dard output. If Gcol His specified, print the values in TEXT: H columns, with the scale in the leftmost column on each TEXT: H page. If Gline His specified, print the value of each TEXT: H expression on one line (or more if needed). If all TEXT: H expressions have a length of 1, the default style is TEXT: H GlineH, otherwise Gcol His the default. TEXT: H TEXT: SUBJECT: quit TITLE: quit TEXT: TEXT: Gquit HExit the program. If there are circuits that are in TEXT: H the middle of a simulation, or plots that have not been TEXT: H saved in a file, the user is reminded of this and asked TEXT: H to confirm. (The variable Gnoaskquit Hdisables this.) TEXT: H TEXT: SEEALSO: nutmeg:noaskquit SUBJECT: rehash TITLE: rehash TEXT: TEXT: Grehash TEXT: H HRecalculate the internal hash tables used when looking TEXT: H up UNIX commands, and make all UNIX commands in the TEXT: H user's PATH available for command completion. This is TEXT: H a no-op unless you have the Gunixcom Hvariable set. TEXT: H TEXT: SEEALSO: nutmeg:unixcomcomm SEEALSO: nutmeg:unixcom SUBJECT: repeat TITLE: repeat TEXT: TEXT: Grepeat H[ _n_u_m_b_e_r ] TEXT: H Execute the statements in the block defined by this TEXT: H line and the corresponding Gend Hstatement _n_u_m_b_e_r times, TEXT: H or indefinitely if no _n_u_m_b_e_r is given. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: rusage TITLE: rusage TEXT: TEXT: Grusage H[ Gall H] [ _r_e_s_o_u_r_c_e ] ... TEXT: H Print out various resource usage statistics. If Gall His TEXT: H given as an argument, all the information available is TEXT: H printed. If no arguments are given, only total time TEXT: H and space usage are printed. Otherwise, information TEXT: H corresponding to each of the arguments is printed. The TEXT: H resource types recognised are given below. Note that TEXT: H many of them are available only with GspiceH, and some TEXT: H only available with UNIX. TEXT: H TEXT: SUBTOPIC: nutmeg:accept nutmeg:elapsed nutmeg:faults SUBTOPIC: nutmeg:loadtime nutmeg:lutime nutmeg:rejected SUBTOPIC: nutmeg:solvetime nutmeg:space nutmeg:time SUBTOPIC: nutmeg:totaltime nutmeg:totiter nutmeg:traniter SUBTOPIC: nutmeg:tranpoints nutmeg:transolvetime nutmeg:trantime SUBJECT: accept TITLE: accept TEXT: TEXT: Gaccept TEXT: H HThe number of accepted time points. TEXT: H TEXT: SUBJECT: elapsed TITLE: elapsed TEXT: TEXT: Gelapsed TEXT: H HThe total amount of time elapsed since the last Grusage TEXT: H elapsed Hcommand. TEXT: H TEXT: SUBJECT: faults TITLE: faults TEXT: TEXT: Gfaults TEXT: H HThe number of page faults caused by the program so far. TEXT: H TEXT: SUBJECT: loadtime TITLE: loadtime TEXT: TEXT: Gloadtime TEXT: H HThe amount of time spent loading the matrix. TEXT: H TEXT: SUBJECT: lutime TITLE: lutime TEXT: TEXT: Glutime TEXT: H HThe amount of time spent doing transient L-U decomposi- TEXT: H tion. TEXT: H TEXT: SUBJECT: rejected TITLE: rejected TEXT: TEXT: Grejected TEXT: H HThe number of rejected time points. TEXT: H TEXT: SUBJECT: solvetime TITLE: solvetime TEXT: TEXT: Gsolvetime TEXT: H HThe amount of time spent solving the matrix. TEXT: H TEXT: SUBJECT: space TITLE: space TEXT: TEXT: Gspace TEXT: H HThe amount of data space currently used by the program. TEXT: H TEXT: SUBJECT: time TITLE: time TEXT: TEXT: Gtime HThe amount of time spent so far doing the current TEXT: H analysis. TEXT: H TEXT: SUBJECT: totaltime TITLE: totaltime TEXT: TEXT: Gtotaltime TEXT: H HThe total amount of time spent by the program since it TEXT: H was started. TEXT: H TEXT: SUBJECT: totiter TITLE: totiter TEXT: TEXT: Gtotiter TEXT: H HThe total number of iterations. TEXT: H TEXT: SUBJECT: traniter TITLE: traniter TEXT: TEXT: Gtraniter TEXT: H HThe number of transient iterations. TEXT: H TEXT: SUBJECT: tranpoints TITLE: tranpoints TEXT: TEXT: Gtranpoints TEXT: H HThe number of transient time points. TEXT: H TEXT: SUBJECT: transolvetime TITLE: transolvetime TEXT: TEXT: Gtransolvetime TEXT: H HThe amount transient solve time. TEXT: H TEXT: SUBJECT: trantime TITLE: trantime TEXT: TEXT: Gtrantime TEXT: H HThe total transient time so far. TEXT: H TEXT: SUBJECT: set TITLE: set TEXT: TEXT: Gset H[ _v_a_r_n_a_m_e [ G= H_v_a_l_u_e ] ] ... TEXT: H The Gset Hcommand allows the user to examine and set TEXT: H variables. In the first form, the names and values of TEXT: H all the variables are printed. Some may be prefixed TEXT: H with a '*', which means that they are associated with TEXT: H the current plot, and will change when the current plot TEXT: H changes. Others may be prefixed by a '+', which means TEXT: H that they are associated with the current circuit. If TEXT: H a variable is defined which has the same name as one TEXT: H associated with the current plot or circuit, it takes TEXT: H precedence for printing with the Gset Hcommand and $ TEXT: H expansion, but it will not change the value used by the TEXT: H circuit. Some variables are read-only and may not be TEXT: H changed by the user. This is not indicated by the Gset TEXT: H Hcommand, however. TEXT: H TEXT: In the second form, where a _v_a_r_n_a_m_e is given, that TEXT: H variable is either set (with a 'true' boolean value), TEXT: H or given the _v_a_l_u_e specified. A value may be a number, TEXT: H a string, or a list of values. A string is anything TEXT: H which isn't a list or parsable as a number, and a list TEXT: H is surrounded by parentheses. The variables which have TEXT: H any meaning to Gnutmeg Hor Gspice Hare listed in the GVARI- TEXT: H ABLES Hsection of the manual. TEXT: H TEXT: SEEALSO: nutmeg:unset SEEALSO: nutmeg:variables SEEALSO: nutmeg:variablesub SUBJECT: setplot TITLE: setplot TEXT: TEXT: Gsetplot H[ _p_l_o_t_n_a_m_e ] TEXT: H Set the current plot to the plot with the given name, TEXT: H or if no name is given, prompt the user with a menu. TEXT: H Note that Gsetplot His a command script - it is possible TEXT: H to change the current plot by setting the variable Gcur- TEXT: H plotH. TEXT: H TEXT: SEEALSO: nutmeg:curplot SEEALSO: nutmeg:plotvars SUBJECT: settype TITLE: settype TEXT: TEXT: Gsettype H_t_y_p_e [ _v_e_c_t_o_r ] ... TEXT: H Change the type of the named vectors to _t_y_p_e. Type TEXT: H names can be found in the manual page for GsconvertH, or TEXT: H they may be defined with the Gdeftype Hcommand. TEXT: H TEXT: SUBJECT: shell TITLE: shell TEXT: TEXT: Gshell H[ _c_o_m_m_a_n_d ] ... TEXT: H Fork a shell, or execute the arguments as a command to TEXT: H the shell. This command works with both UNIX and VMS. TEXT: H TEXT: SEEALSO: nutmeg:unixcom SUBJECT: shift TITLE: shift TEXT: TEXT: Gshift H[ _v_a_r_n_a_m_e ] [ _n_u_m_b_e_r ] TEXT: H If _v_a_r_n_a_m_e is the name of a list variable, it is TEXT: H shifted to the left by _n_u_m_b_e_r elements. (I.e, the TEXT: H _n_u_m_b_e_r leftmost elements are removed.) The default TEXT: H _v_a_r_n_a_m_e is GargvH, and the default _n_u_m_b_e_r is 1. TEXT: H TEXT: SEEALSO: nutmeg:variables SUBJECT: show TITLE: show TEXT: TEXT: Gshow H[ _d_e_v_n_a_m_e ] ... G: H[ _p_a_r_m_n_a_m_e ] ... TEXT: H Print the named device parameters of the requested dev- TEXT: H ices. Either the device name list or the parameter TEXT: H name list may be GallH, and the device names may contain TEXT: H the G*, ?, Hand G[] Hwildcard characters. For lists of the TEXT: H parameters that the various devices recognise, see the TEXT: H SPICE3 User's Guide. TEXT: H TEXT: SEEALSO: nutmeg:alter SUBJECT: source TITLE: source TEXT: TEXT: Gsource H_f_i_l_e_n_a_m_e ... TEXT: H The Gsource Hcommand has two functions - it loads a cir- TEXT: H cuit description from a file or set of files, and it TEXT: H reads commands to be executed from a file. Since com- TEXT: H mands may be imbedded in circuit files, the two are TEXT: H treated in the same manner. Command lines must be sur- TEXT: H rounded by the lines G.control Hand G.endc Hin the file, or TEXT: H prefixed by G*# Hin order to be recognised as commands. TEXT: H (The exception to this rule is the file G.spiceinitH, TEXT: H which is known to contain only commands.) In either TEXT: H case, the first line in the file is ignored, so a com- TEXT: H mand script must begin with a blank line and then a TEXT: H G.control Hline. TEXT: H TEXT: SEEALSO: nutmeg:sourcepath SUBJECT: state TITLE: state TEXT: TEXT: Gstate TEXT: H HIt's not clear what this command should do. Currently TEXT: H it prints the name and status of the current curcuit. TEXT: H TEXT: SUBJECT: status TITLE: status TEXT: TEXT: Gstatus TEXT: H HPrint out a summary of all the Gtrace, stop, save, Hand TEXT: H Giplot Hcommands that are active. The numbers given may TEXT: H be used with the Gdelete Hcommand to de-activate the TEXT: H trace. TEXT: H TEXT: SEEALSO: spice:delete SEEALSO: spice:step SEEALSO: spice:iplot SEEALSO: spice:stop SUBJECT: step TITLE: step TEXT: TEXT: Gstep H[ _n_u_m_b_e_r ] TEXT: H Single-step the simulation, or let it run for _n_u_m_b_e_r TEXT: H time steps if a _n_u_m_b_e_r is given. TEXT: H TEXT: SEEALSO: spice:iplot SEEALSO: spice:stop SEEALSO: nutmeg:status SEEALSO: spice:delete SUBJECT: stop TITLE: stop TEXT: TEXT: Gstop H[ Gafter H_n_u_m ] [ Gwhen H_v_a_l_1 _o_p _v_a_l_2 ] ... TEXT: H Create a breakpoint. If an Gafter Hclause is given, the TEXT: H simulation will stop after _n_u_m points. If a Gwhen TEXT: H Hclause is included, at each point, the _v_a_l_1 _o_p _v_a_l_2 TEXT: H condition will be checked, and if it is true, the simu- TEXT: H lation will stop. If more than one Gwhen Hor Gafter TEXT: H Hclause is put on one line, the conjunction of the con- TEXT: H ditions is checked. The _v_a_ls may be either constants TEXT: H or node names. The possible _o_ps are: TEXT: H Geq Hor G= H(equal to) TEXT: H Gne Hor G<> H(not equal to) TEXT: H Ggt Hor G> H(greater than) TEXT: H Glt Hor G< H(less than) TEXT: H Gge Hor G>= H(greater than or equal to) TEXT: H Gle Hor G<= H(less than or equal to) TEXT: H TEXT: Note that for this command, < and > do not denote IO TEXT: H redirection. TEXT: H TEXT: SEEALSO: spice:step SEEALSO: spice:iplot SEEALSO: spice:delete SEEALSO: nutmeg:status SUBJECT: strcmp TITLE: strcmp TEXT: TEXT: Gstrcmp H_v_a_r_n_a_m_e _s_t_r_i_n_g_1 _s_t_r_i_n_g_2 TEXT: H The value of _v_a_r_n_a_m_e is set to a number that is greater TEXT: H than, equal to, or less than 0 according as _s_t_r_i_n_g_1 is TEXT: H lexically before, equal to, or after _s_t_r_i_n_g_2. This TEXT: H command is a very bad thing, but there seems to be no TEXT: H other way to do string comparisons given the restric- TEXT: H tions of the Gnutmeg Hcommand language. TEXT: H TEXT: SUBJECT: unalias TITLE: unalias TEXT: TEXT: Gunalias H[ _w_o_r_d ] ... TEXT: H Removes any aliases associated with all the _w_o_r_ds. The TEXT: H argument may be "*", in which case all aliases are TEXT: H deleted. TEXT: H TEXT: SEEALSO: nutmeg:alias SEEALSO: nutmeg:aliases SUBJECT: undefine TITLE: undefine TEXT: TEXT: Gundefine H[ _w_o_r_d ] ... TEXT: H Remove all the macro functions defined for the _w_o_r_ds. TEXT: H If the argument is "*", then all macro functions are TEXT: H deleted. Note that all functions with the given names TEXT: H are removed, so there is no way to delete a function TEXT: H with a particular arity without deleting all functions TEXT: H with that name. TEXT: H TEXT: SEEALSO: nutmeg:define SEEALSO: nutmeg:expressions SUBJECT: unlet TITLE: unlet TEXT: TEXT: Gunlet H[ _v_e_c_n_a_m_e ] ... TEXT: H All the named vectors are removed from the current TEXT: H plot. If you Gunlet Ha vector which is the default scale TEXT: H (e.g. GTIMEH), a random remaining vector will become the TEXT: H default scale. TEXT: H TEXT: SEEALSO: nutmeg:let SUBJECT: unset TITLE: unset TEXT: TEXT: Gunset H[ _v_a_r_n_a_m_e ] ... TEXT: H All the named variables are unset. The argument may be TEXT: H "*", in which case all variables are unset (although TEXT: H this is usually not something that you would want to TEXT: H do). TEXT: H TEXT: SEEALSO: nutmeg:set SEEALSO: nutmeg:variablesub SEEALSO: nutmeg:variables SUBJECT: version TITLE: version TEXT: TEXT: Gversion H[ _v_e_r_s_i_o_n _n_a_m_e ] TEXT: H With no arguments, this command prints out the current TEXT: H version of GspiceH. If there are arguments, it compares TEXT: H the current version with the given version and prints a TEXT: H warning if they differ. A Gversion Hcommand is usually TEXT: H included in the rawfile. TEXT: H TEXT: SUBJECT: while TITLE: while TEXT: TEXT: Gwhile H_c_o_n_d_i_t_i_o_n TEXT: H This command defines a block which is executed while TEXT: H the condition is true. TEXT: H TEXT: SEEALSO: nutmeg:proglang SUBJECT: write TITLE: write TEXT: TEXT: Gwrite H[ _f_i_l_e [ _e_x_p_r ] ... ] TEXT: H Writes out the _e_x_p_rs to the file. First vectors are TEXT: H grouped together by plots, and written out as such. TEXT: H (E.g, if the expression list contained three vectors TEXT: H from one plot and two from another, then two plots will TEXT: H be written, one with three vectors and one with two.) TEXT: H Additionally, if the scale for a vector isn't present, TEXT: H it is automatically written out as well. The default TEXT: H format is GasciiH, but this may be changed with Gset file- TEXT: H typeH. The default filename is GrawspiceH, or the argu- TEXT: H ment to the G-r Hflag on the command line, if there was TEXT: H one, and the default expression list is GallH. TEXT: H TEXT: SEEALSO: nutmeg:load SEEALSO: nutmeg:expressions SUBJECT: cshstuff TITLE: C-shell Like Features TEXT: TEXT: Various features are available in the Gnutmeg Hparser which TEXT: H are derived from the user interface of the C-Shell. These TEXT: H include IO redirection, history substitution, aliases, glo- TEXT: H bal substitution, and command completion. TEXT: H TEXT: SUBTOPIC: nutmeg:aliases nutmeg:ccom nutmeg:glob SUBTOPIC: nutmeg:historysub nutmeg:io nutmeg:quoting SUBTOPIC: nutmeg:semi nutmeg:unixcomcomm nutmeg:variablesub SUBJECT: aliases TITLE: Aliases TEXT: TEXT: After history expansion, if the first word on the command TEXT: H line has been defined as an alias, the text for which it is TEXT: H an alias for is substituted. The alias may contain refer- TEXT: H ences to the arguments provided on the command line, in TEXT: H which case the appropriate arguments are substituted in. If TEXT: H there are no such references, any arguments given are TEXT: H appended to the end of the alias text. TEXT: H TEXT: In the body if the alias text, any strings of the form TEXT: H G!:H_n_u_m_b_e_r are replaced with the _n_u_m_b_e_r'th argument of the TEXT: H actual command line. Note that when the alias is defined TEXT: H with the Galias Hcommand, these strings must be quoted to TEXT: H prevent history substitution from replacing the G!H's before TEXT: H the Galias Hcommand can get to them. TEXT: H TEXT: Thus the command TEXT: H TEXT: Galias Hfoo Gecho H'!:2' '!:1' TEXT: H TEXT: Causes "foo bar baz" to be replaced with "echo baz bar". TEXT: H Other G! Hmodifiers as described in the section on history TEXT: H substitution may also be used, always refering to the actual TEXT: H command line arguments given. TEXT: H TEXT: If a command line starts with a backslash (`\') any alias TEXT: H substitution is inhibited. TEXT: H TEXT: SEEALSO: nutmeg:alias SEEALSO: nutmeg:unalias SUBJECT: ccom TITLE: Command Completion TEXT: TEXT: With BSD UNIX, Tenex-style command completion is available. TEXT: H If GEOF H(control-D) is typed after the first character on the TEXT: H line, a list of the commands or possible arguments is TEXT: H printed. (If a control-D is typed as the first character on TEXT: H a line it will exit the program.) If an escape is typed, TEXT: H then the program will try to complete the word being typed TEXT: H based on the choices available, or if there is more than one TEXT: H posibility, it will complete as much as it can. Command TEXT: H completion knows about commands, most keywords, variable and TEXT: H vector names, file names, and several other types of argu- TEXT: H ments. TEXT: H TEXT: SEEALSO: spice:dashq SUBJECT: glob TITLE: Global Substitution TEXT: TEXT: The characters `~', `{', and `}' have the same effects as TEXT: H they do in the C-Shell, i.e., home directory and alternative TEXT: H expansion. The string ~_u_s_e_r at the beginning of a word is TEXT: H replaced by the given user's home directory, or if the first TEXT: H component of the pathname is simply ~, the current user's TEXT: H directory is used. The string TEXT: H _S_t_u_f_fG{H_S_t_r_i_n_g_1,_S_t_r_i_n_g_2,..._S_t_r_i_n_g_NG}H_M_o_r_e_s_t_u_f_f is replaced by TEXT: H the list of words _S_t_u_f_f_S_t_r_i_n_g_1_M_o_r_e_s_t_u_f_f TEXT: H _S_t_u_f_f_S_t_r_i_n_g_2_M_o_r_e_s_t_u_f_f ... _S_t_u_f_f_S_t_r_i_n_g_N_M_o_r_e_s_t_u_f_f. Curly TEXT: H braces may be nested. It is possible to use the wildcard TEXT: H characters G`*'H, G`?'H, G`['H, and G`]' Hto match filenames, where TEXT: H G`*' Hdenotes 0 or more characters, G`?' Hdenotes one character, TEXT: H and G[] Hdenotes a range of characters, but only if you Gunset TEXT: H noglob Hfirst. This makes them rather useless for typing TEXT: H algebraic expressions, so you should Gset noglob Hagain after TEXT: H you are done with wildcard expansion. Note that the pattern TEXT: H G[^abc] Hwill match all characters _e_x_c_e_p_t G`a', `b', Hand G`c'. TEXT: H HIdeally the parser should know which commands require TEXT: H filename arguments in which positions, and so glob expansion TEXT: H for those words only. TEXT: H TEXT: SEEALSO: nutmeg:noglob SUBJECT: historysub TITLE: History Substitution TEXT: TEXT: History substitutions are prefixed by the character G!H, or at TEXT: H the beginning of a line, the character G^H. Briefly, the TEXT: H string G!! His replaced by the previous command, the string TEXT: H G!H_p_r_e_f_i_x is replaced by the last command with that prefix, TEXT: H the string G!?H_p_a_t_t_e_r_n is replaced by the last command con- TEXT: H taining that pattern, the string G!H_n_u_m_b_e_r is replaced by the TEXT: H event with that number, and G^H_o_l_d_p_a_t_t_e_r_nG^H_n_e_w_p_a_t_t_e_r_n is TEXT: H replaced by the previous command with _n_e_w_p_a_t_t_e_r_n substituted TEXT: H for _o_l_d_p_a_t_t_e_r_n. TEXT: H TEXT: Additionally, a G!H_s_t_r_i_n_g sequence may be followed by a modif- TEXT: H ier prefixed with a G:H. This modifier may select one or more TEXT: H words from the event - :_1 selects the first word, :_2-_5 TEXT: H selects the second through the fifth word, :$ selects the TEXT: H last word, and :$-_0 selects all of the words but reverses TEXT: H their order. TEXT: H TEXT: Two other G: Hmodifiers are supported: :_p will cause the com- TEXT: H mand to be printed but not executed, and :_s^_o_l_d^_n_e_w will TEXT: H replace the pattern _o_l_d with the pattern _n_e_w. (The sequence TEXT: H ^_o_l_d^_n_e_w is synonymous with !!:_s^_o_l_d^_n_e_w.) TEXT: H TEXT: All the commands typed by the user are saved on the _h_i_s_t_o_r_y TEXT: H _l_i_s_t. This may be examined with the Ghistory Hcommand, and TEXT: H its maximum length changed by changing the value of the Ghis- TEXT: H tory Hvariable. TEXT: H TEXT: SEEALSO: nutmeg:historyvar SUBJECT: io TITLE: I/O Redirection TEXT: TEXT: The input to or output from commands may be changed from the TEXT: H terminal to a file by including an IO redirection on the TEXT: H command line. The possible redirections are: TEXT: H TEXT: > _f_i_l_e TEXT: H Sends the output of the command into the _f_i_l_e. TEXT: H TEXT: >> _f_i_l_e TEXT: H Appends output to the _f_i_l_e or creates it if it doesn't TEXT: H exist. TEXT: H TEXT: >& _f_i_l_e TEXT: H Sends both the output and the error messages to the TEXT: H _f_i_l_e. TEXT: H TEXT: >>& _f_i_l_e TEXT: H Appends both the output and the error messages to the TEXT: H _f_i_l_e. TEXT: H TEXT: < _f_i_l_e TEXT: H Reads input from the _f_i_l_e. TEXT: H TEXT: Both an input redirection and an output redirection may be TEXT: H present on a command line. More than one of each may not be TEXT: H present, however. IO redirections must be at the end of the TEXT: H command line. TEXT: H TEXT: SUBJECT: quoting TITLE: Quoting TEXT: TEXT: Words may be quoted with the characters " (double quote), ' TEXT: H (single quote), and ` (back quote). A word enclosed by any TEXT: H of these quotes may contain white space. A string enclosed TEXT: H by double quotes may have further special-character substi- TEXT: H tutions done on it, but it will be considered one word by TEXT: H the program. A number so quoted is considered a string. A TEXT: H string enclosed by single quotes also has all its special TEXT: H characters protected. Thus no glob expansion (*, ?, etc), TEXT: H variable expansion ($), or history substitution (^, !) will TEXT: H be done. Numbers are still considered numbers though. A TEXT: H string enclosed by backquotes is considered a command to the TEXT: H shell and is executed, and the output of the command TEXT: H repalaces the text. Obviously the command should not gen- TEXT: H erate too much output. This only works on UNIX systems. TEXT: H TEXT: SUBJECT: semi TITLE: Multiple Commands TEXT: TEXT: More than one command may be put on one line, seperated by TEXT: H semicolins (;). The semicolins must be isolated by white TEXT: H space, however. Thus a multi-command alias might be written TEXT: H _a_l_i_a_s _w_o_r_d '_c_o_m_m_a_n_d_1 ; _c_o_m_m_a_n_d_2 ; ...'. TEXT: H TEXT: SUBJECT: unixcomcomm TITLE: UNIX Commands TEXT: TEXT: If the variable Gunixcom His set and the operating system is TEXT: H BSD UNIX, commands which are not built-ins are considered TEXT: H UNIX commands and executed as if the program were a shell. TEXT: H However, using this option increases the start-up time of TEXT: H the program a lot. Probably Gspice Hshould not be used as a TEXT: H login shell. TEXT: H TEXT: SEEALSO: nutmeg:unixcom SEEALSO: nutmeg:commands SUBJECT: variablesub TITLE: Variable Substitution TEXT: TEXT: The values of variables may be used in commands by writing TEXT: H G$varname Hwhere the value of the variable is to appear. The TEXT: H special variables $$ and $< refer to the process ID of the TEXT: H program and a line of input which is read from the terminal TEXT: H when the variable is evaluated, respectively. If a variable TEXT: H has a name of the form $&_w_o_r_d, then _w_o_r_d is considered a TEXT: H vector, and its value is taken to be the value of the vari- TEXT: H able. If $_f_o_o is a valid variable, and is of type GlistH, TEXT: H then the expression $_f_o_o[_l_o_w-_h_i_g_h] represents a range of TEXT: H elements. Either the upper index or the lower may be left TEXT: H out, and the reverse of a list may be obtained with TEXT: H $_f_o_o[_l_e_n-_0]. Also, the notation $?_f_o_o evaluates to 1 if the TEXT: H variable _f_o_o is defined, 0 otherwise, and $#_f_o_o evaluates to TEXT: H the number of elements in _f_o_o if it is a list, 1 if it is a TEXT: H number or string, and 0 if it is a boolean variable. TEXT: H TEXT: SUBJECT: expressions TITLE: Expressions TEXT: TEXT: An expression is an algebraic combination of already defined TEXT: H vectors, constants, operations, and functions. The func- TEXT: H tions may be pre-defined functions or user-defined macros. TEXT: H TEXT: A vector must either be defined in the Gcurrent plot Hor be TEXT: H defined in the Gconstant plotH, a set of constants which are TEXT: H described below. A Gplot His a group of vectors that come TEXT: H from the same simulation or otherwise belong together. The TEXT: H current plot can be changed by the Gsetplot Hcommand, and is TEXT: H generally the results of the last simulation run or the con- TEXT: H tents of the last Grawfile Hloaded in. If no other plots are TEXT: H defined, the current plot is the constant plot. TEXT: H TEXT: The case of alphabetic characters in a vector name is not TEXT: H significant. TEXT: H TEXT: To reference vectors in a plot that is not the _c_u_r_r_e_n_t _p_l_o_t TEXT: H (see the Gsetplot Hcommand, below), the notation TEXT: H Gplotname.vecname Hcan be used. Either a plotname or a vector TEXT: H name may be the wildcard GallH. If the plotname is GallH, TEXT: H matching vectors from all plots are specified, and if the TEXT: H vector name is GallH, all vectors in the specified plots are TEXT: H referenced. (The Gconstant plot His never matched by a plot TEXT: H wildcard, however.) Note that you may not use binary opera- TEXT: H tions on expressions involving wildcards - it is not obvious TEXT: H what Gall + all Hshould denote, for instance. TEXT: H TEXT: In GspiceH, a vector name beginning with the `@' symbol is TEXT: H considered a reference to an internal device or model param- TEXT: H eter, or a circuit parameter. If the vector name is of the TEXT: H form G@H_n_a_m_eG[H_p_a_r_a_mG]H, this denotes the parameter _p_a_r_a_m of the TEXT: H device or model named _n_a_m_e. Of course, there must be a dev- TEXT: H ice or model with that name defined for the current circuit TEXT: H and _p_a_r_a_m must be a valid parameter name for that device or TEXT: H model type. See the SPICE3 User's Guide for a listing of TEXT: H the parameters available. If the vector name is of the form TEXT: H G@H_p_a_r_a_m, this refers to a parameter of the circuit with the TEXT: H name _p_a_r_a_m. Currently, the only parameters available are TEXT: H the resource variables described under the Grusage Hcommand. TEXT: H These vectors may be used as arguments to Gtrace, save, Hand TEXT: H Giplot Hin addition to GprintH. TEXT: H TEXT: A detailed description of the format a number may be written TEXT: H in can be found in the SPICE3 User's Guide - examples are TEXT: H G14.6MEG Hand G-1.231E-4H. Note that you can either use scien- TEXT: H tific notation or one of the abbreviations like _M_E_G or _G, TEXT: H but not both. A number may have trailing alphabetic charac- TEXT: H ters after it. TEXT: H TEXT: Vector names may be of the form _s_t_r_i_n_g(_s_o_m_e_t_h_i_n_g), if the TEXT: H _s_t_r_i_n_g is not the name of a built-in or user-defined func- TEXT: H tion. TEXT: H TEXT: Some examples of expressions are: TEXT: H TEXT: GcosH(TIME) + GdbH(v(3)) TEXT: H TEXT: GsinH(GcosH(GlogH(10))) TEXT: H TEXT: TIME * GrndH(v(9)) - 15 * GcosH(vin#branch) ^ 7.9e5 TEXT: H TEXT: Gnot H((ac3.FREQ[32] G& Htran1.TIME[10]) Ggt H3) TEXT: H TEXT: SUBTOPIC: nutmeg:constants nutmeg:functions nutmeg:operators SEEALSO: nutmeg:plot SEEALSO: nutmeg:print SUBJECT: constants TITLE: Constants TEXT: TEXT: The following values are defined in a plot called the Gcon- TEXT: H stant Hplot. This is the default plot if no rawfile has been TEXT: H loaded and no simulation has been run. Note that these con- TEXT: H stants are visible no matter what the current plot is, but TEXT: H they are overridden by a vector with the same name in the TEXT: H current plot. These values are in MKS units. TEXT: H TEXT: SUBTOPIC: nutmeg:boltz nutmeg:c nutmeg:e SUBTOPIC: nutmeg:echarge nutmeg:false nutmeg:i SUBTOPIC: nutmeg:kelvin nutmeg:no nutmeg:pi SUBTOPIC: nutmeg:planck nutmeg:true nutmeg:yes SUBJECT: boltz TITLE: boltz TEXT: TEXT: Gboltz TEXT: H HBoltzman's constant (1.38062e-23 joules/degree kelvin). TEXT: H TEXT: SUBJECT: c TITLE: c TEXT: TEXT: Gc HThe speed of light (2.997925e8 meters/second). TEXT: H TEXT: SUBJECT: e TITLE: e TEXT: TEXT: Ge HThe base of natural logarithms TEXT: H (2.71828182844590452353). TEXT: H TEXT: SUBJECT: echarge TITLE: echarge TEXT: TEXT: Gecharge TEXT: H HThe charge on an electron (1.60219e-19 coulombs). TEXT: H TEXT: SUBJECT: false TITLE: false TEXT: TEXT: Gfalse TEXT: H HDefined as 0. TEXT: H TEXT: SUBJECT: i TITLE: i TEXT: TEXT: Gi HThe square root of -1. In our expression syntax, this TEXT: H may also be written as G(0,1)H. TEXT: H TEXT: SUBJECT: kelvin TITLE: kelvin TEXT: TEXT: Gkelvin TEXT: H HAbsolute zero in centagrade (-273.15 degrees). TEXT: H TEXT: SUBJECT: no TITLE: no TEXT: TEXT: Gno HDefined as 0. TEXT: H TEXT: SUBJECT: pi TITLE: pi TEXT: TEXT: Gpi HPi (3.14159265358979323846). TEXT: H TEXT: SUBJECT: planck TITLE: planck TEXT: TEXT: Gplanck TEXT: H HPlanck's constant (6.62620e-34 joule-seconds). TEXT: H TEXT: SUBJECT: true TITLE: true TEXT: TEXT: Gtrue HDefined as 1. TEXT: H TEXT: SUBJECT: yes TITLE: yes TEXT: TEXT: Gyes HDefined as 1. TEXT: H TEXT: SUBJECT: functions TITLE: Functions TEXT: TEXT: The pre-defined functions available are listed below. In TEXT: H general, all operations and functions will work on either TEXT: H real or complex values. Operations such as the logarithm of TEXT: H a negative number will yield errors, however. TEXT: H TEXT: Note that all functions and operations operate pointwise on TEXT: H their arguments unless otherwise described. TEXT: H TEXT: SUBTOPIC: nutmeg:abs nutmeg:atan nutmeg:cos SUBTOPIC: nutmeg:db nutmeg:exp nutmeg:im SUBTOPIC: nutmeg:interpolate nutmeg:j nutmeg:length SUBTOPIC: nutmeg:ln nutmeg:log nutmeg:mag SUBTOPIC: nutmeg:mean nutmeg:norm nutmeg:ph SUBTOPIC: nutmeg:pos nutmeg:re nutmeg:rnd SUBTOPIC: nutmeg:sin nutmeg:sqrt nutmeg:tan SUBTOPIC: nutmeg:unitvec nutmeg:vector SUBJECT: abs TITLE: abs TEXT: TEXT: Gabs HAbsolute value. This is actually the same function as TEXT: H GmagH. TEXT: H TEXT: SUBJECT: atan TITLE: atan TEXT: TEXT: Gatan HArc tangent. This function (and all the trig func- TEXT: H tions) treat their arguments as radians unless the TEXT: H Gunits Hvariable is set to GdegreesH. TEXT: H TEXT: SUBJECT: cos TITLE: cos TEXT: TEXT: Gcos HThe cosine of the argument. TEXT: H TEXT: SUBJECT: db TITLE: db TEXT: TEXT: Gdb HDecibels (20.0 * log base 10 of the argument). TEXT: H TEXT: SUBJECT: exp TITLE: exp TEXT: TEXT: Gexp HE to the power of the argument. TEXT: H TEXT: SUBJECT: im TITLE: im TEXT: TEXT: Gim HThe imaginary part of the argument. TEXT: H TEXT: SUBJECT: interpolate TITLE: interpolate TEXT: TEXT: Ginterpolate TEXT: H HThis function takes its data and interpolates it onto a TEXT: H grid which is determined by the scale of the currently TEXT: H active plot. The degree is determined by the Gpolyde- TEXT: H gree Hvariable. This is especially useful if the argu- TEXT: H ment belongs to a plot which is not the current one. TEXT: H Some restrictions are that the current scale, the old TEXT: H scale, and the argument must be real, and that either TEXT: H both scales must be strictly increasing or strictly TEXT: H decreasing. TEXT: H TEXT: SUBJECT: j TITLE: j TEXT: TEXT: Gj HThe argument multiplied by the square root of -1. TEXT: H TEXT: SUBJECT: length TITLE: length TEXT: TEXT: Glength TEXT: H HThe length of the argument. TEXT: H TEXT: SUBJECT: ln TITLE: ln TEXT: TEXT: Gln HThe natural logarithm of the argument. TEXT: H TEXT: SUBJECT: log TITLE: log TEXT: TEXT: Glog HThe logarithm base 10 of the argument. TEXT: H TEXT: SUBJECT: mag TITLE: mag TEXT: TEXT: Gmag HThe magnitude of the argument. TEXT: H TEXT: SUBJECT: mean TITLE: mean TEXT: TEXT: Gmean HThe mean value of the elements in the argument. This TEXT: H returns a vector of length 1. TEXT: H TEXT: SUBJECT: norm TITLE: norm TEXT: TEXT: Gnorm HThe elements of the argument are all multiplied by the TEXT: H magnitude of the inverse of the largest argument. TEXT: H TEXT: SUBJECT: ph TITLE: ph TEXT: TEXT: Gph HThe phase of the argument (expressed in radians). TEXT: H TEXT: SUBJECT: pos TITLE: pos TEXT: TEXT: Gpos HThis function returns a vector which is 1 if the TEXT: H corresponding element of the argument has a non-0 real TEXT: H part, and 0 otherwise. TEXT: H TEXT: SUBJECT: re TITLE: re TEXT: TEXT: Gre HThe real part of the argument. TEXT: H TEXT: SUBJECT: rnd TITLE: rnd TEXT: TEXT: Grnd HThis function returns a vector which contains random TEXT: H values between 0 and the corresponding element of the TEXT: H argument. If the argument is complex then the random TEXT: H value is also complex. TEXT: H TEXT: SUBJECT: sin TITLE: sin TEXT: TEXT: Gsin HThe sine of the argument. TEXT: H TEXT: SUBJECT: sqrt TITLE: sqrt TEXT: TEXT: Gsqrt HThe square root of the argument. TEXT: H TEXT: SUBJECT: tan TITLE: tan TEXT: TEXT: Gtan HThe tangent of the argument. TEXT: H TEXT: SUBJECT: unitvec TITLE: unitvec TEXT: TEXT: Gunitvec TEXT: H HThis function returns a vector consisting of all 1's, TEXT: H with length equal to the magnitute of its argument. TEXT: H TEXT: SUBJECT: vector TITLE: vector TEXT: TEXT: Gvector TEXT: H HThis function returns a vector consisting of the TEXT: H integers from 0 up to the magnitude of its argument. TEXT: H This function and the Gunitvec Hfunction both examine TEXT: H only the first element of their arguments. TEXT: H TEXT: SUBJECT: operators TITLE: Operators TEXT: TEXT: The operations available are described below. They all take TEXT: H two operands, except for unary minus and unary negation (G~H). TEXT: H TEXT: SUBTOPIC: nutmeg:and nutmeg:comma nutmeg:divide SUBTOPIC: nutmeg:eq nutmeg:ge nutmeg:gt SUBTOPIC: nutmeg:ind nutmeg:le nutmeg:lt SUBTOPIC: nutmeg:minus nutmeg:mod nutmeg:ne SUBTOPIC: nutmeg:not nutmeg:or nutmeg:plus SUBTOPIC: nutmeg:power nutmeg:ran nutmeg:times SUBJECT: and TITLE: and TEXT: TEXT: Gand Hor G& TEXT: H H1 if both operands are non-zero, 0 otherwise. TEXT: H TEXT: SUBJECT: comma TITLE: comma TEXT: TEXT: G, H(comma) TEXT: H The notation _a G, H_b refers to the complex number with TEXT: H real part _a and imaginary part _b. Such a construction TEXT: H may not be used in the argument list to a macro func- TEXT: H tion, however, since commas are used to seperate the TEXT: H arguments and parentheses may be ignored. The expres- TEXT: H sion _a G+ j(H_bG) His equivalent. TEXT: H TEXT: SUBJECT: divide TITLE: divide TEXT: TEXT: G/ HThe first operand divided by the second. TEXT: H TEXT: SUBJECT: eq TITLE: eq TEXT: TEXT: Geq Hor G= TEXT: H H1 if both operands are equal, 0 otherwise. TEXT: H TEXT: SUBJECT: ge TITLE: ge TEXT: TEXT: Gge Hor G>= TEXT: H H1 if the first operand is greater than or equal to the TEXT: H second, 0 otherwise. TEXT: H TEXT: SUBJECT: gt TITLE: gt TEXT: TEXT: Ggt Hor G> TEXT: H H1 if the first operand is greater than the second, 0 TEXT: H otherwise. TEXT: H TEXT: SUBJECT: ind TITLE: ind TEXT: TEXT: _v_a_l_u_eG[H_i_n_d_e_xG] Hor _v_a_l_u_eG[H_l_o_w, _h_i_g_hG] TEXT: H HThe first notation refers to the _i_n_d_e_x'th element of TEXT: H _v_a_l_u_e. The second notation refers to all of the ele- TEXT: H ments of _v_a_l_u_e which fall between the _h_i_g_h'th and the TEXT: H _l_o_w'th element, inclusive. If _h_i_g_h is less than _l_o_w, TEXT: H the order of the elements in the result is reversed. TEXT: H Note that a complex _i_n_d_e_x will have the same effect as TEXT: H using the real part for the lower value and the ima- TEXT: H ginary part for the upper, since this is the way the TEXT: H parser reads this expression. TEXT: H TEXT: SUBJECT: le TITLE: le TEXT: TEXT: Gle Hor G<= TEXT: H H1 if the first argument is less than or equal to the TEXT: H second, 0 otherwise. TEXT: H TEXT: SUBJECT: lt TITLE: lt TEXT: TEXT: Glt Hor G< TEXT: H H1 if the first argument is less than the second, 0 oth- TEXT: H erwise. TEXT: H TEXT: SUBJECT: minus TITLE: minus TEXT: TEXT: G- HThe first argument minus the second. Also may be used TEXT: H as unary minus. TEXT: H TEXT: SUBJECT: mod TITLE: mod TEXT: TEXT: G% HThe modulo operation. The result is the remainder when TEXT: H the first number is divided by the second. Note that TEXT: H both arguments are rounded down to the nearest integer TEXT: H before the operation is performed. TEXT: H TEXT: SUBJECT: ne TITLE: ne TEXT: TEXT: Gne Hor G<> TEXT: H H1 if the two operands are not equal, 0 otherwise. TEXT: H TEXT: SUBJECT: not TITLE: not TEXT: TEXT: Gnot Hor G~ TEXT: H H1 if the operand is 0, 0 otherwise. TEXT: H TEXT: SUBJECT: or TITLE: or TEXT: TEXT: Gor Hor G| TEXT: H H1 if either of the two operands is 1, 0 otherwise. TEXT: H TEXT: SUBJECT: plus TITLE: plus TEXT: TEXT: G+ HThe plus operation. TEXT: H TEXT: SUBJECT: power TITLE: power TEXT: TEXT: G^ HThe first operand raised to the power of the second. TEXT: H Note that if the base is less than 0, the exponent must TEXT: H be an integer. TEXT: H TEXT: SUBJECT: ran TITLE: ran TEXT: TEXT: _v_a_l_u_e_1G[[H_v_a_l_u_e_2G]] Hor _v_a_l_u_eG[[H_l_o_w, _h_i_g_hG]] TEXT: H HThe first notation refers to all the elements of _v_a_l_u_e_1 TEXT: H for which the element of the corresponding scale equals TEXT: H _v_a_l_u_e_2. The second notation refers to all of the ele- TEXT: H ments of _v_a_l_u_e for which the corresponding elements of TEXT: H the scale fall between _h_i_g_h and _l_o_w, inclusive. If TEXT: H _h_i_g_h is less than _l_o_w, the order of the elements in the TEXT: H result is reversed. TEXT: H TEXT: SUBJECT: times TITLE: times TEXT: TEXT: G* HThe multiplication operation. TEXT: H TEXT: SUBJECT: graphics TITLE: Graphics TEXT: TEXT: GNutmeg Hcan make use of a number of graphics systems to TEXT: H display data for the Gplot Hand Ghardcopy Hcommands. Currently TEXT: H the X graphics system is the best supported and prefered TEXT: H interface, and MFB (Model Frame Buffer) is used for graphics TEXT: H terminals. The file format used by the Ghardcopy Hcommand is TEXT: H the UNIX _p_l_o_t(_5) format. TEXT: H TEXT: If the UNIX environment variable GDISPLAY His defined, it is TEXT: H assumed that an X workstation is available. Also, if the TEXT: H variable Gdisplay His set the value will be used as the name TEXT: H of the display to try to open. If neither of these is set, TEXT: H or if the program was not compiled with X, MFB is used for TEXT: H graphics. TEXT: H TEXT: SUBTOPIC: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: X TITLE: X TEXT: TEXT: When a plot is requested and X is available, a plot window TEXT: H is opened. If the variable Gmaxwins His set and there are TEXT: H already that many plot windows available, the oldest one is TEXT: H re-used. If the window being opened is the _nth window, and TEXT: H the variable GgeometryH_n is defined, then this string is used TEXT: H as the window's geometry (see the X documentation for a TEXT: H description of geometry specifications). Otherwise the user TEXT: H is prompted for the window's size and position: as usual, TEXT: H the left button will create the window with the default size TEXT: H and position, the middle button allows the user to drag the TEXT: H window open, and the right button allows the user to create TEXT: H a window of the default size at any location. The defaults TEXT: H are such that the window will be 1/3 the height and width of TEXT: H the screen, positioned in the center. TEXT: H TEXT: After the window is created and the data is plotted, the TEXT: H buttons have various functions. The left button causes a TEXT: H new plot command to be issued, with the limits on the x- and TEXT: H y-axis roughly 4 times the size of those in the first window TEXT: H (i.e, zoom out). The middle button causes the window to TEXT: H disappear. The right button allows the user to drag open a TEXT: H box (or circle), and then creates a new window which zooms TEXT: H in on this area. TEXT: H TEXT: If the cursor is positioned in a plot window and characters TEXT: H are typed on the keyboard, they will appear as text in the TEXT: H window in the same font as the other text. The cursor will TEXT: H move to the right as text is added, but due to the way X TEXT: H windows are handled by GnutmegH, text must be typed slowly so TEXT: H the cursor can keep up with it. This allows one to add text TEXT: H to a window or remove it with spaces before sending it to a TEXT: H printer with a window-dump program. TEXT: H TEXT: If a Ghardcopy Hcommand with no expressions is given, the user TEXT: H will be prompted to select a window which will be dumped TEXT: H into the file. TEXT: H TEXT: If a Ghelp Hwindow is also on the screen, all updates TEXT: H (refreshes, etc) in plot windows will be delayed until the TEXT: H help window is exited. TEXT: H TEXT: SEEALSO: nutmeg:help SUBJECT: hpux TITLE: HP-UX Notes TEXT: TEXT: GNutmeg Hruns on the HP series 9000 computers. TEXT: H TEXT: SUBJECT: input TITLE: Circuit Input Format TEXT: TEXT: The input format for SPICE is of the free format type. TEXT: H Fields on a line are separated by one or more blanks, a TEXT: H comma, an equal (=) sign, or a left or right parenthesis; TEXT: H extra spaces are ignored. A line may be continued by enter- TEXT: H ing a + (plus) in column 1 of the following line; SPICE con- TEXT: H tinues reading beginning with column 2. TEXT: H TEXT: A name field must begin with a letter (A through Z) and TEXT: H cannot contain any delimiters. SPICE is not case-sensitive. TEXT: H TEXT: A number field may be an integer field (12, -44), a TEXT: H floating point field (3.14159), either an integer or float- TEXT: H ing point number followed by an integer exponent (1E-14, TEXT: H 2.65E3), or either an integer or a floating point number TEXT: H followed by one of the following scale factors: TEXT: H TEXT: T = 1E12 G = 1E9 MEG = 1E6 K = 1E3 MIL = 25.4E-6 TEXT: H M = 1E-3 U = 1E-6 N = 1E-9 P = 1E-12 F = 1E-15 TEXT: H TEXT: TEXT: Letters immediately following a number that are not TEXT: H scale factors are ignored, and letters immediately following TEXT: H a scale factor are ignored. Hence, 10, 10V, 10VOLTS, and TEXT: H 10HZ all represent the same number, and M, MA, MSEC, and TEXT: H MMHOS all represent the same scale factor. Thus 1000, TEXT: H 1000.0, 1000HZ, 1E3, 1.0E3, 1KHZ, and 1K all represent the TEXT: H same number. TEXT: H TEXT: The circuit to be analyzed is described to SPICE by a TEXT: H set of _e_l_e_m_e_n_t _l_i_n_e_s, which define the circuit topology and TEXT: H element values, and a set of control lines, which define the TEXT: H model parameters and the run controls. The first line in TEXT: H the input file must be a title line, and the last line must TEXT: H be a G.END Hline. The order of the remaining lines is arbi- TEXT: H trary (except, of course, that continuation lines must TEXT: H immediately follow the line being continued, and element TEXT: H lines belonging to a subcircuit must be between the G.SUBCKT TEXT: H Hand G.ENDS Hlines for that subcircuit). TEXT: H TEXT: Each element in the circuit is specified by an element TEXT: H line that contains the element name, the circuit nodes to TEXT: H which the element is connected, and the values of the param- TEXT: H eters that determine the electrical characteristics of the TEXT: H element. The first letter of the element name specifies the TEXT: H element type. The format for the SPICE element types is TEXT: H given in what follows. The strings XXXXXXX, YYYYYYY, and TEXT: H ZZZZZZZ denote arbitrary alphanumeric strings. For example, TEXT: H a resistor name must begin with the letter `R' and can con- TEXT: H tain one or more characters. Hence, R, R1, RSE, ROUT, and TEXT: H R3AC2ZY are valid resistor names. TEXT: H TEXT: TEXT: Data fields that are enclosed in less than and greater TEXT: H than signs '< >' are optional. All indicated punctuation TEXT: H (parentheses, equal signs, etc.) is optional and merely TEXT: H indicate the presence of any delimiter. A consistent style TEXT: H such as that shown here will make the input easier to under- TEXT: H stand. With respect to branch voltages and currents, SPICE TEXT: H uniformly uses the associated reference convention (current TEXT: H flows in the direction of voltage drop). TEXT: H TEXT: Nodes names may be arbitrary character strings. The TEXT: H datum (ground) node must be named '0'. The circuit cannot TEXT: H contain a loop of voltage sources and/or inductors and can- TEXT: H not contain a cutset of current sources and/or capacitors. TEXT: H Each node in the circuit must have a dc path to ground. TEXT: H Every node must have at least two connections except for TEXT: H transmission line nodes (to permit unterminated transmission TEXT: H lines) and MOSFET substrate nodes (which have two internal TEXT: H connections anyway). TEXT: H TEXT: SUBTOPIC: nutmeg:comment nutmeg:endcard nutmeg:ic SUBTOPIC: nutmeg:include nutmeg:nodeset nutmeg:option SUBTOPIC: nutmeg:subckts nutmeg:titlecard SEEALSO: nutmeg:source SUBJECT: comment TITLE: Comment Lines TEXT: TEXT: An asterisk in the first column indicates that this TEXT: H line is a comment line. Comment lines may be placed any- TEXT: H where in the circuit description. TEXT: H TEXT: GGeneral Form: TEXT: H TEXT: * H_a_r_b_i_t_r_a_r_y _t_e_x_t TEXT: H TEXT: GExamples: TEXT: H TEXT: * HRF=1K GAIN SHOULD BE 100 TEXT: H G* HMAY THE FORCE BE WITH MY CIRCUIT TEXT: H TEXT: SUBJECT: endcard TITLE: End Line TEXT: TEXT: This line must always be the last line in the input TEXT: H file. Note that the period is an integral part of the name. TEXT: H TEXT: GExamples: TEXT: H TEXT: H.GEND TEXT: H TEXT: SUBJECT: ic TITLE: IC Line TEXT: TEXT: GGeneral form: TEXT: H TEXT: .IC HV(_N_O_D_N_U_M)=_V_A_L V(_N_O_D_N_U_M)=_V_A_L ... TEXT: H TEXT: GExamples: TEXT: H TEXT: .IC HV(11)=5 V(4)=-5 V(2)=2.2 TEXT: H TEXT: TEXT: This line is for setting transient initial conditions. TEXT: H It has two different interpretations, depending on whether TEXT: H the GUIC Hparameter is specified on the G.TRAN Hline. Also, one TEXT: H should not confuse this line with the G.NODESET Hline. The TEXT: H G.NODESET Hline is only to help dc convergence, and does not TEXT: H affect final bias solution (except for multi-stable cir- TEXT: H cuits). The two interpretations of this line are as fol- TEXT: H lows: TEXT: H TEXT: 1. When the GUIC Hparameter is specified on the G.TRAN Hline, TEXT: H then the node voltages specified on the G.IC Hline are TEXT: H used to compute the capacitor, diode, BJT, JFET, and TEXT: H MOSFET initial conditions. This is equivalent to TEXT: H specifying the GICH=... parameter on each device line, TEXT: H but is much more convenient. The GICH=... parameter can TEXT: H still be specified and will take precedence over the TEXT: H G.IC Hvalues. Since no dc bias (initial transient) solu- TEXT: H tion is computed before the transient analysis, one TEXT: H should take care to specify all dc source voltages on TEXT: H the G.IC Hline if they are to be used to compute device TEXT: H initial conditions. TEXT: H TEXT: 2. When the GUIC Hparameter is not specified on the G.TRAN TEXT: H Hline, the dc bias (initial transient) solution will be TEXT: H computed before the transient analysis. In this case, TEXT: H the node voltages specified on the Gbias solution. Dur- TEXT: H ing transient analysis, the constraint on these node TEXT: H voltages is removed. TEXT: H TEXT: SUBJECT: include TITLE: INCLUDE Line TEXT: TEXT: GGeneral form: TEXT: H TEXT: .INCLUDE H_F_I_L_E_N_A_M_E TEXT: H TEXT: GExamples: TEXT: H TEXT: .INCLUDE HMODELS.DEF TEXT: H TEXT: TEXT: This line causes the named file to be interpolated into TEXT: H the circuit at the point it appears. Included files may be TEXT: H nested arbitrarily. Comments are inserted into the circuit TEXT: H at the beginning and end of the included segments. TEXT: H TEXT: SUBJECT: nodeset TITLE: Nodeset Line TEXT: TEXT: GGeneral form: TEXT: H TEXT: .NODESET HV(_N_O_D_N_U_M)=_V_A_L V(_N_O_D_N_U_M)=_V_A_L ... TEXT: H TEXT: GExamples: TEXT: H TEXT: .NODESET HV(12)=4.5 V(4)=2.23 TEXT: H TEXT: TEXT: This line helps the program find the dc or initial TEXT: H transient solution by making a preliminary pass with the TEXT: H specified nodes held to the given voltages. The restriction TEXT: H is then released and the iteration continues to the true TEXT: H solution. A G.NODESET Hline may be necessary for convergence TEXT: H on bistable or astable circuits. In general, this line TEXT: H should not be necessary. TEXT: H TEXT: SUBJECT: option TITLE: Option Line TEXT: TEXT: GGeneral form: TEXT: H TEXT: .OPTIONS H_O_P_T_1 _O_P_T_2 ... (or _O_P_T=_O_P_T_V_A_L ...) TEXT: H TEXT: GExamples: TEXT: H TEXT: .OPTIONS HRELTOL=.005 TRTOL=8 TEXT: H TEXT: TEXT: This line allows the user to reset program control and TEXT: H user options for specific simulation purposes. TEXT: H TEXT: SEEALSO: nutmeg:set SUBJECT: pc TITLE: MS-DOS Notes TEXT: TEXT: GNutmeg Hruns on the IBM PC. TEXT: H TEXT: SUBJECT: proglang TITLE: The Command Language TEXT: TEXT: Gnutmeg Hcommands include constructs for looping, conditional TEXT: H execution, etc. Thus simple programs may be written and exe- TEXT: H cuted as scripts. As a programming language it is quite TEXT: H simple, however, and line oriented (all blocks must begin TEXT: H with some sort of control statement, like _i_f, and end with TEXT: H the _e_n_d statement). Because of GnutmegH's numeric orienta- TEXT: H tion, string variables are only minimally supported and are TEXT: H quite awkward to deal with. (See the Gstrcmp Hcommand.) TEXT: H TEXT: The following control structures are available: TEXT: H TEXT: TEXT: H Gwhile H_c_o_n_d_i_t_i_o_n TEXT: H _s_t_a_t_e_m_e_n_t TEXT: H ... TEXT: H Gend TEXT: H TEXT: HWhile _c_o_n_d_i_t_i_o_n, an arbitrary algebraic expression, is true, TEXT: H execute the _s_t_a_t_e_m_e_n_ts. TEXT: H TEXT: TEXT: H Grepeat H[_n_u_m_b_e_r] TEXT: H _s_t_a_t_e_m_e_n_t TEXT: H ... TEXT: H Gend TEXT: H TEXT: HExecute the _s_t_a_t_e_m_e_n_ts _n_u_m_b_e_r times, or forever if no argu- TEXT: H ment is given. TEXT: H TEXT: TEXT: H Gdowhile H_c_o_n_d_i_t_i_o_n TEXT: H _s_t_a_t_e_m_e_n_t TEXT: H ... TEXT: H Gend TEXT: H TEXT: HThe same as GwhileH, except that the _c_o_n_d_i_t_i_o_n is tested after TEXT: H the _s_t_a_t_e_m_e_n_ts are executed. TEXT: H TEXT: TEXT: H Gforeach H_v_a_r _v_a_l_u_e ... TEXT: H _s_t_a_t_e_m_e_n_t TEXT: H ... TEXT: H Gend TEXT: H TEXT: HThe _s_t_a_t_e_m_e_n_ts are executed once for each of the _v_a_l_u_es, TEXT: H each time with the variable _v_a_r set to the current one. TEXT: H (_v_a_r can be accessed by the $_v_a_r notation - see below). TEXT: H TEXT: TEXT: H Gif H_c_o_n_d_i_t_i_o_n TEXT: H _s_t_a_t_e_m_e_n_t TEXT: H ... TEXT: H Gelse TEXT: H H_s_t_a_t_e_m_e_n_t TEXT: H ... TEXT: H Gend TEXT: H TEXT: HIf the _c_o_n_d_i_t_i_o_n is non-zero then the first set of _s_t_a_t_e_- TEXT: H _m_e_n_ts are executed, otherwise the second set. The Gelse Hand TEXT: H the second set of _s_t_a_t_e_m_e_n_ts may be omitted. TEXT: H TEXT: Glabel H_w_o_r_d TEXT: H TEXT: If a _s_t_a_t_e_m_e_n_t of the form Ggoto H_w_o_r_d is encountered, control TEXT: H is transfered to this point, otherwise this is a no-op. TEXT: H TEXT: Ggoto H_w_o_r_d TEXT: H TEXT: If a statement of the form Glabel H_w_o_r_d is present in the TEXT: H block or an enclosing block, control is transfered there. TEXT: H Note that if the label is at the top level, it _m_u_s_t be TEXT: H before the Ggoto Hstatement (i.e, a forward Ggoto Hmay occur TEXT: H only within a block). TEXT: H TEXT: Gcontinue H[ _n_u_m_b_e_r ] TEXT: H TEXT: If there is a Gwhile, dowhile, Hor Gforeach Hblock enclosing TEXT: H this statement, control passes to the test, or in the case TEXT: H of GforeachH, the next value is taken. Otherwise an error TEXT: H results. If a _n_u_m_b_e_r is given, that many surrounding blocks TEXT: H are continued. If there are not that many blocks, an error TEXT: H results. TEXT: H TEXT: Gbreak H[ _n_u_m_b_e_r ] TEXT: H TEXT: If there is a Gwhile, dowhile, Hor Gforeach Hblock enclosing TEXT: H this statement, control passes out of the block. Otherwise TEXT: H an error results. If a _n_u_m_b_e_r is given, that many surround- TEXT: H ing blocks are continued. If there are not that many TEXT: H blocks, an error results. TEXT: H TEXT: Control structures may be nested. When a block is entered TEXT: H and the input is the terminal, the prompt becomes a number TEXT: H of >'s equalling the number of blocks the user has entered. TEXT: H The current control structures may be examined with the TEXT: H debugging command GcdumpH. TEXT: H TEXT: There are predefined aliases Gendif, endwhileH, and so on for TEXT: H all the above control statements if you prefer them over TEXT: H GendH. TEXT: H TEXT: If a word is typed as a command, and there is no built-in TEXT: H command with that name, the directories in the _s_o_u_r_c_e_p_a_t_h TEXT: H list are searched in order for the file. If it is found, it TEXT: H is read in as a command file (as if it were GsourceH'd). TEXT: H Before it is read, however, the variables _a_r_g_c and _a_r_g_v are TEXT: H set to the number of words following the filename on the TEXT: H command line, and a list of those words respectively. After TEXT: H the file is finished, these variables are GunsetH. Note that TEXT: H if one command file calls another, it must save its _a_r_g_v and TEXT: H _a_r_g_c since they will be altered. Also, command files should TEXT: H not be re-entrant since there are no local variables. (Of TEXT: H course, the procedures may explicitly manipulate a global TEXT: H stack.) This way one can write scripts analogous to shell TEXT: H scripts for Gnutmeg Hand Gspice HNote that for the script to TEXT: H work with GspiceH, it must begin with a blank line (or what- TEXT: H ever you like, since it will be thrown away) and then a line TEXT: H with G.control Hon it. This is an unfortunate result of the TEXT: H Gsource Hcommand being used for both circuit input and command TEXT: H file execution. Note also that this allows the user to TEXT: H merely type the name of a circuit file as a command, and it TEXT: H will be automatically loaded. TEXT: H TEXT: For examples of Gnutmeg H"programs", check the scripts pro- TEXT: H vided in the _s_c_r_i_p_t_s directory in the SPICE3 library. (This TEXT: H may be found in ~_c_a_d/_l_i_b/_s_p_i_c_e_3 on Berkeley machines.) TEXT: H Currently only the Gsetplot Hcommand is implemented as a TEXT: H script. TEXT: H TEXT: SEEALSO: nutmeg:commands SEEALSO: nutmeg:unixcomcomm SUBJECT: refs TITLE: References TEXT: TEXT: [1] A. Vladimirescu and S. Liu, "The Simulation of MOS TEXT: H Integrated Circuits Using SPICE2", ERL Memo No. ERL M80/7, TEXT: H Electronics Research Laboratory, University of California, TEXT: H Berkeley, Oct. 1980. TEXT: H TEXT: [2] B. J. Sheu, D. L. Scharfetter, and P. K. Ko, "SPICE2 TEXT: H Implementation of BSIM" ERL Memo No. ERL M85/42, Electronics TEXT: H Research Laboratory, University of California, Berkeley, May TEXT: H 1985. TEXT: H TEXT: [3] J. R. Pierret, "A MOS Parameter Extraction Program for TEXT: H the BSIM Model" ERL Memo Nos. ERL M84/99 and M84/100, Elec- TEXT: H tronics Research Laboratory, University of California, TEXT: H Berkeley, Nov. 1984. TEXT: H TEXT: [4] H.Statz et al.,"GaAs FET Device and Circuit Simulation TEXT: H in SPICE", Internal memorandum, Raytheon Research Division, TEXT: H Lexington, Mass. ,1985. TEXT: H TEXT: SUBJECT: sconvert TITLE: sconvert TEXT: TEXT: GNAME TEXT: H Hsconvert - convert spice formats TEXT: H TEXT: GSYNOPSIS TEXT: H sconvert fromtype fromfile totype tofile TEXT: H sconvert fromtype totype TEXT: H sconvert TEXT: H TEXT: DESCRIPTION TEXT: H Sconvert Htranslates spice output files among three formats: TEXT: H the old binary format, a new binary format, and a new ascii TEXT: H format. The formats are specified by the Gfromtype Hand TEXT: H Gtotype Harguments: `o' for the old format, `b' for the new TEXT: H binary format, and `a' for the new ascii format. GFromtype TEXT: H Hspecifies the format to be read, and Gtotype Hspecifies the TEXT: H format to be written. If Gfromfile Hand Gtofile Hare given, TEXT: H then they are used as the input and output, otherwise stan- TEXT: H dard input and output are used. (Note that this second TEXT: H option is only available on UNIX systems - on VMS and other TEXT: H systems you must supply the filenames.) If no arguments are TEXT: H given, the parameters are prompted for. TEXT: H TEXT: Binary format is the preferred format for general use, as it TEXT: H is the most economical in terms of space and speed of TEXT: H access, and ascii is provided to make it easy to modify data TEXT: H files and transfer them between machines with different TEXT: H floating-point formats. The old format is provided only for TEXT: H backward compatibility. TEXT: H TEXT: The ascii format consists of lines or sets of lines intro- TEXT: H duced by a keyword. The GTitle Hand GDate Hlines should be the TEXT: H first in the file and should occus only once. There may be TEXT: H any number of _p_l_o_t_s in the file, each one beginning with the TEXT: H GPlotnameH, GFlagsH, GNo. VariablesH, GNo. PointsH, GVariablesH, and TEXT: H GValues Hlines. GCommand Hand GOption Hlines are optional and may TEXT: H occur anywhere between the GPlotname Hand GValues Hlines. Note TEXT: H that after the GVariables Hkeyword there must be _n_u_m_v_a_r_s TEXT: H "declarations" of outputs, and after the GValues Hkeyword, TEXT: H there must be _n_u_m_p_o_i_n_t_s lines, each consisting of _n_u_m_v_a_r_s TEXT: H values. (If this is confusing just create an ascii rawfile TEXT: H with Gnutmeg Hand look at it...) TEXT: H GLine name Description TEXT: H HTitle An arbitrary string describing the circuit TEXT: H Date A free-format date string TEXT: H Plotname A string describing the analysis type - TEXT: H see the description for the Gdeftype TEXT: H nutmeg Hcommand TEXT: H Flags Currently, either Gcomplex Hor Greal TEXT: H HNo. Variables The number of variables (_n_u_m_v_a_r_s) TEXT: H No. Points The number of points (_n_u_m_p_o_i_n_t_s) TEXT: H Command An arbitrary nutmeg command TEXT: H Option Gnutmeg Hvariables TEXT: H Variables A number of variable lines (see below) TEXT: H Values A number of data lines (see below) TEXT: H TEXT: Any text on a GCommand Hline is executed when the file is TEXT: H loaded as if it were typed as a command. By default, Gspice TEXT: H Hputs a Gversion Hcommand into every rawfile it creates. TEXT: H TEXT: Text on a GOption Hline is parsed as if it were the arguments TEXT: H to a Gnutmeg set Hcommand. The variables set are then avail- TEXT: H able normally, except that they are read only and are asso- TEXT: H ciated with the plot (see the Gnutmeg Hdocumentation). TEXT: H TEXT: A variable line looks like _n_u_m_b_e_r _n_a_m_e _t_y_p_e_n_a_m_e [ _p_a_r_m=_v_a_l_u_e TEXT: H ] .... The _n_u_m_b_e_rs are irrelevant, the _n_a_m_e is the name by TEXT: H which this quantity will be refered to by GnutmegH, the TEXT: H Gtypename Hmay either a pre-defined type or one defined with TEXT: H the Gdeftype Hcommand, and the _p_a_r_m's are listed below. TEXT: H GPredefined Types TEXT: H TEXT: H HName Description SPICE2 Numeric Code TEXT: H TEXT: H notype Dimensionless value 0 TEXT: H time Time 1 TEXT: H frequency Frequency 2 TEXT: H voltage Voltage 3 TEXT: H Current Current 4 TEXT: H output-noise SPICE2 .noise result 5 TEXT: H input-noise SPICE2 .noise result 6 TEXT: H HD2 SPICE2 .disto result 7 TEXT: H HD3 SPICE2 .disto result 8 TEXT: H DIM2 SPICE2 .disto result 9 TEXT: H SIM2 SPICE2 .disto result 10 TEXT: H DIM3 SPICE2 .disto result 11 TEXT: H pole SPICE3 pz result 12 TEXT: H zero SPICE3 pz result 13 TEXT: H GParameters TEXT: H TEXT: H HName Description TEXT: H TEXT: H min Minimum significant value for this output TEXT: H max Maximum significant value for this output TEXT: H color The name of a color to use for this value TEXT: H scale The name of another output to use as the scale for this one TEXT: H grid The type of grid to use - numeric codes are: TEXT: H 0 Linear grid TEXT: H 1 Log-log grid TEXT: H 2 X-log/Y-linear grid TEXT: H 3 X-linear/Y-log grid TEXT: H 4 Polar grid TEXT: H 5 Smith grid TEXT: H plot The plotting style to use - numeric codes are: TEXT: H 0 Connected points TEXT: H 1 "Comb" style TEXT: H 2 Unconnected points TEXT: H dims The dimensions of this vector - not yet fully supported TEXT: H TEXT: If one of the flags is _c_o_m_p_l_e_x, the points look like r,i TEXT: H where r and i are floating point (in %e format). Otherwise TEXT: H they are in %e format. Only one of _r_e_a_l and _c_o_m_p_l_e_x should TEXT: H appear. TEXT: H TEXT: The lines are guaranteed to be less than 80 columns wide TEXT: H (unless the plot title or variable names are very long, or a TEXT: H large number of variable options are given), so this format TEXT: H is safe to mail between systems that enforce 80 character TEXT: H lines. TEXT: H TEXT: The binary format is similar to the ascii format in organi- TEXT: H zation, except that it is not readable (strings are NULL TEXT: H terminated instead of newline terminated) and the values are TEXT: H in the machine's double precision floating point format TEXT: H instead of in ascii. This makes it much easier to read and TEXT: H write and makes the file smaller. TEXT: H TEXT: The circuit title, date, and analysis type name in that TEXT: H order are at the start of the plot, each terminated by a TEXT: H NULL byte. Then the flags field (a _s_h_o_r_t, which is 1 for TEXT: H real data and 2 for complex data), the number of outputs, TEXT: H and the number of points (both _i_n_t_e_g_e_rs) are present. Fol- TEXT: H lowing this is a list of NULL-terminated strings which are TEXT: H command lines. This list is terminated by an extra NULL TEXT: H byte. Then come the options, which consist of the name, TEXT: H followed by the type and the value in binary. The output TEXT: H "declarations" consist of the name, type code, flags, color, TEXT: H grid type, plot type, and dimension information in that TEXT: H order. Next come the values, which are either doubles or TEXT: H pairs of doubles in the case of complex data. TEXT: H TEXT: The old format (which is used by SPICE2 with the -r option) TEXT: H is as follows: TEXT: H GOld TEXT: H TEXT: H HField(s) Size in Bytes TEXT: H TEXT: H title 80 TEXT: H date 8 TEXT: H time 8 TEXT: H numoutputs 2 TEXT: H the integer 4 2 TEXT: H output names 8 for each output TEXT: H types of output 2 for each output TEXT: H node index 2 for each output TEXT: H plot title 24 TEXT: H data numpoints * numoutputs * 8 TEXT: H TEXT: The data is in the form of double-precision numbers, or TEXT: H pairs of single-precision numbers if the data is complex. TEXT: H TEXT: The values recognised for the "types of output" fields are TEXT: H described in the GPredefined Values Htable above. TEXT: H TEXT: GSEE ALSO TEXT: H Hnutmeg(1), spice(1), writedata(3) TEXT: H TEXT: GAUTHOR TEXT: H HWayne Christopher (faustus@cad.berkeley.edu) TEXT: H TEXT: GBUGS TEXT: H HIf variable names and the title and plotname strings have TEXT: H trailing blanks in them they will be stripped off when the TEXT: H file is read, if it is in ascii format. TEXT: H TEXT: If a plot title begins with "Title:" Gnutmeg Hwill be fooled TEXT: H into thinking that this is an ascii format file. GSconvert TEXT: H Halways requires the type to be specified, however. TEXT: H TEXT: The binary format is not well-designed and may be changed in TEXT: H the future. TEXT: H TEXT: SUBJECT: variables TITLE: Variables TEXT: TEXT: There are many variables that have special meaning to the TEXT: H program. (Note the difference between a _v_a_r_i_a_b_l_e and a _v_e_c_- TEXT: H _t_o_r - a _v_a_r_i_a_b_l_e is manipulated with the commands _s_e_t and TEXT: H _u_n_s_e_t, and may be substituted in a command line with the $ TEXT: H notation. A _v_e_c_t_o_r is a datum which can be plotted, manipu- TEXT: H lated algebraicly, and so forth.) TEXT: H TEXT: A variable may also be set with the G.option Hline in the TEXT: H input file. A variable set in this manner is not specific TEXT: H to the circuit it appears in, however. TEXT: H TEXT: While any variable may be GsetH, only the following ones will TEXT: H have any significance to Gnutmeg Hor the simulator. In addi- TEXT: H tion to those described here, all circuit variables TEXT: H described in the GOptions Hsection of the SPICE3 User's Guide TEXT: H may be set in this manner. TEXT: H TEXT: SUBTOPIC: nutmeg:booleans nutmeg:lists nutmeg:numerics SUBTOPIC: nutmeg:plotvars nutmeg:strings SEEALSO: nutmeg:set SEEALSO: nutmeg:unset SEEALSO: nutmeg:variablesub SEEALSO: nutmeg:options SUBJECT: booleans TITLE: Booleans TEXT: TEXT: The following variables take boolean values (either are set TEXT: H or aren't). TEXT: H TEXT: SUBTOPIC: nutmeg:acct nutmeg:appendwrite nutmeg:cpdebug SUBTOPIC: nutmeg:dontplot nutmeg:ignoreeof nutmeg:list SUBTOPIC: nutmeg:noasciiplotvalue nutmeg:noaskquit nutmeg:nobjthack SUBTOPIC: nutmeg:nobreak nutmeg:noclobber nutmeg:node SUBTOPIC: nutmeg:noglob nutmeg:nogridvar nutmeg:nomoremode SUBTOPIC: nutmeg:nonomatch nutmeg:nopage nutmeg:noparse SUBTOPIC: nutmeg:noprintscale nutmeg:nosort nutmeg:nosubckt SUBTOPIC: nutmeg:opts nutmeg:renumber nutmeg:slowplot SUBTOPIC: nutmeg:strictnumparse nutmeg:ticmarks nutmeg:unixcom SUBJECT: acct TITLE: acct TEXT: TEXT: Gacct HWhen Gspice His run in batch mode, print out accounting TEXT: H information at the end of the run. TEXT: H TEXT: SEEALSO: nutmeg:rusage SUBJECT: appendwrite TITLE: appendwrite TEXT: TEXT: Gappendwrite TEXT: H HAppend to the file when a Gwrite Hcommand is issued, if TEXT: H the file already exists. TEXT: H TEXT: SEEALSO: nutmeg:write SUBJECT: cpdebug TITLE: cpdebug TEXT: TEXT: Gcpdebug TEXT: H HTurn on debugging in the C-shell parser. TEXT: H TEXT: SUBJECT: dontplot TITLE: dontplot TEXT: TEXT: Gdontplot TEXT: H HWhen a Gplot Hcommand is given, don't actually do any TEXT: H graphics operations. This is useful for debugging plot TEXT: H routines with a MFB device. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: ignoreeof TITLE: ignoreeof TEXT: TEXT: Gignoreeof TEXT: H HDon't exit the program when an EOF (control-D) is typed TEXT: H at the beginning of a line. TEXT: H TEXT: SUBJECT: list TITLE: list TEXT: TEXT: Glist HWhen Gspice His run in batch mode, list the circuit TEXT: H before running the simulation. This may be set with TEXT: H G.option list Hin the input file. TEXT: H TEXT: SEEALSO: spice:listing SUBJECT: noasciiplotvalue TITLE: noasciiplotvalue TEXT: TEXT: Gnoasciiplotvalue TEXT: H HDon't print the value of the first variable plotted TEXT: H with Gasciiplot Hon the left side of the graph. TEXT: H TEXT: SEEALSO: nutmeg:asciiplot SUBJECT: noaskquit TITLE: noaskquit TEXT: TEXT: Gnoaskquit TEXT: H HDon't ask the user if he really wants to quit when he TEXT: H has simulations in progress or unsaved data. TEXT: H TEXT: SEEALSO: nutmeg:quit SUBJECT: nobjthack TITLE: nobjthack TEXT: TEXT: Gnobjthack TEXT: H HDon't allow BJT's with only 3 nodes. (This only TEXT: H affects subcircuit expansion.) TEXT: H TEXT: SUBJECT: nobreak TITLE: nobreak TEXT: TEXT: Gnobreak TEXT: H HDon't add page breaks when doing an Gasciiplot Hor a TEXT: H Gprint colH. TEXT: H TEXT: SEEALSO: nutmeg:asciiplot SEEALSO: nutmeg:print SUBJECT: noclobber TITLE: noclobber TEXT: TEXT: Gnoclobber TEXT: H HWhen output is redirected with >, etc, don't overwrite TEXT: H an existing file. TEXT: H TEXT: SEEALSO: nutmeg:io SUBJECT: node TITLE: node TEXT: TEXT: Gnode HCauses the node table to be printed when Gspice His run TEXT: H in batch mode. This is currently unimplemented. TEXT: H TEXT: SUBJECT: noglob TITLE: noglob TEXT: TEXT: Gnoglob TEXT: H HDon't expand the characters G*H, G?H, G[H, and G] Hin an input TEXT: H line to match filenames. This is generally a good idea TEXT: H if you want to use G* Hfor arithmetic expressions. TEXT: H TEXT: SEEALSO: nutmeg:glob SUBJECT: nogridvar TITLE: nogrid TEXT: TEXT: Gnogrid TEXT: H HDon't print a grid when plotting data. This should be TEXT: H a keyword for the Gplot Hcommand. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: nomoremode TITLE: nomoremode TEXT: nomoremode TEXT: When more output is generated by a single command than TEXT: will fit on the screen, pause and wait for the user to TEXT: type a carriage return. The following commands are TEXT: also recognised: TEXT: TEXT: q Discard the rest of the output. TEXT: c Print the rest of the output without pausing. TEXT: ? Print a help message. TEXT: TEXT: Note that setting this variable will turn off _m_o_r_e TEXT: _m_o_d_e, _a_n_d _a_l_l _o_u_t_p_u_t _w_i_l_l _b_e _p_r_i_n_t_e_d _w_i_t_h_o_u_t _a_n_y TEXT: _p_a_u_s_e_s. TEXT: SUBJECT: nonomatch TITLE: nonomatch TEXT: TEXT: Gnonomatch TEXT: H HDon't complain when a glob expression (one containing TEXT: H G*H, G?H, G[H, or G]H) doesn't match anything. The unexpanded TEXT: H expression is left unchanged. TEXT: H TEXT: SEEALSO: nutmeg:glob SUBJECT: nopage TITLE: nopage TEXT: TEXT: Gnopage TEXT: H HThis is the same as the Gnobreak Hoption. TEXT: H TEXT: SEEALSO: nutmeg:nobreak SUBJECT: noparse TITLE: noparse TEXT: TEXT: Gnoparse TEXT: H HDon't parse a circuit when loading it. The circuit TEXT: H cannot be simulated if it isn't parsed. TEXT: H TEXT: SEEALSO: nutmeg:source SUBJECT: noprintscale TITLE: noprintscale TEXT: TEXT: Gnoprintscale TEXT: H HWhen doing a Gprint colH, don't print the scale in the TEXT: H leftmost column of each page. TEXT: H TEXT: SEEALSO: nutmeg:print SUBJECT: nosort TITLE: nosort TEXT: TEXT: Gnosort TEXT: H HDon't sort alphabetically when doing a Gdisplay Hcommand. TEXT: H TEXT: SEEALSO: nutmeg:display SUBJECT: nosubckt TITLE: nosubckt TEXT: TEXT: Gnosubckt TEXT: H HDon't expand subcircuits. A circuit with subcircuits TEXT: H cannot be parsed if this is set. TEXT: H TEXT: SUBJECT: opts TITLE: opts TEXT: TEXT: Gopts HWhen Gspice His run in batch mode, print out all the TEXT: H variables set and their values. TEXT: H TEXT: SEEALSO: nutmeg:set SEEALSO: nutmeg:variables SEEALSO: nutmeg:batchmode SUBJECT: renumber TITLE: renumber TEXT: TEXT: Grenumber TEXT: H HAfter expanding subcircuits, renumber all the lines TEXT: H sequentially. TEXT: H TEXT: SEEALSO: spice:listing SUBJECT: slowplot TITLE: slowplot TEXT: TEXT: Gslowplot TEXT: H HPause after plotting each value and wait for the user TEXT: H to type a carriage return. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: strictnumparse TITLE: strictnumparse TEXT: TEXT: Gstrictnumparse TEXT: H HDon't allow trailing characters after a number, unless TEXT: H they are seperated from the number with an underscore TEXT: H (`_'). This may prevent some errors like writing TEXT: H G1meter Hand expecting it to have a value of 1. TEXT: H TEXT: SEEALSO: nutmeg:expressions SUBJECT: ticmarks TITLE: ticmarks TEXT: TEXT: Gticmarks TEXT: H HPrint an 'x' every ten points for each curve plotted. TEXT: H This variable may also be set to a number, which is the TEXT: H number of points between each tic mark. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: unixcom TITLE: unixcom TEXT: TEXT: Gunixcom TEXT: H HIf a command is given which is not a built-in command, TEXT: H try to execute it as a UNIX command. Setting this TEXT: H option increases the start-up time of the program a TEXT: H great deal, since all commands in the user's path are TEXT: H added to the command completion data structures, which TEXT: H are rather slow to update. TEXT: H TEXT: SEEALSO: nutmeg:unixcomcomm SUBJECT: lists TITLE: Lists TEXT: TEXT: The following variables take on lists as values. A list is TEXT: H surrounded by parentheses, and may contain any variable TEXT: H types as elements. TEXT: H TEXT: SUBTOPIC: nutmeg:debug nutmeg:plots nutmeg:sourcepath SUBJECT: debug TITLE: debug TEXT: TEXT: Gdebug TEXT: H HThis variable may be a boolean, in which case all TEXT: H debugging is turned on, a string, in which case the TEXT: H string specifies which part of the program for which to TEXT: H turn on debugging, or a list of these strings, which TEXT: H turns on any combination of debuggings. The possible TEXT: H values are: TEXT: H TEXT: Gsiminterface HThe interface to the simulator. TEXT: H Gcshpar HThe C-shell pre-processor and parser. TEXT: H Gparser HThe parser for expressions. TEXT: H Geval HThe expression evaluation routines. TEXT: H Gvecdb HThe vector database. TEXT: H Ggraf HThe plotting routines. TEXT: H Gginterface HGraphics package interface routines. TEXT: H Gcontrol HThe control structure code. TEXT: H Gasync HThe Gaspice Hand Grspice Hcode. TEXT: H TEXT: SUBJECT: plots TITLE: plots TEXT: TEXT: Gplots TEXT: H HThis variable is read-only, and contains the names of TEXT: H the plots available. The variable Gcurplot Hmay be set TEXT: H to any of these, or the word GnewH, in which case it TEXT: H creates a new, empty plot. TEXT: H TEXT: SEEALSO: nutmeg:curplot SUBJECT: sourcepath TITLE: sourcepath TEXT: TEXT: Gsourcepath TEXT: H HThe set of directories that will be searched when a TEXT: H Gsource Hcommand or a command that may be the invocation TEXT: H of a script is given. TEXT: H TEXT: SEEALSO: nutmeg:source SUBJECT: numerics TITLE: Numerics TEXT: TEXT: The following variables take numeric values. No distinction TEXT: H is made at the user level between floating point numbers and TEXT: H integers. TEXT: H TEXT: SUBTOPIC: nutmeg:abstol nutmeg:cptime nutmeg:fourgridsize SUBTOPIC: nutmeg:gridsize nutmeg:height nutmeg:helpxpos SUBTOPIC: nutmeg:helpypos nutmeg:historyvar nutmeg:maxwins SUBTOPIC: nutmeg:nfreqs nutmeg:numdgt nutmeg:polydegree SUBTOPIC: nutmeg:polysteps nutmeg:rawfileprec nutmeg:reltol SUBTOPIC: nutmeg:vntol nutmeg:width nutmeg:xbrushheight SUBTOPIC: nutmeg:xbrushwidth SUBJECT: abstol TITLE: abstol TEXT: TEXT: Gabstol TEXT: H HThe absolute tolerance used by the Gdiff Hcommand. Also TEXT: H the Gspice Hoption described in the SPICE3 User's Guide. TEXT: H TEXT: SEEALSO: nutmeg:diff SEEALSO: nutmeg:abstol SUBJECT: cptime TITLE: cptime TEXT: TEXT: Gcptime TEXT: H HThe total amount of CPU time to allow for a simulation. TEXT: H TEXT: SUBJECT: fourgridsize TITLE: fourgridsize TEXT: TEXT: Gfourgridsize TEXT: H HWhen a Gfourier Hcommand is given, the data is first TEXT: H interpolated onto a linear grid. The size of the grid TEXT: H is given by this variable. The default is 200. TEXT: H TEXT: SEEALSO: nutmeg:fourier SUBJECT: gridsize TITLE: gridsize TEXT: TEXT: Ggridsize TEXT: H HIf this variable is set, it causes all data plotted to TEXT: H be interpolated onto a grid of this size. The degree TEXT: H of the interpolation is given by the variable Gpolyde- TEXT: H greeH. TEXT: H TEXT: SEEALSO: nutmeg:plot SEEALSO: nutmeg:polydegree SUBJECT: height TITLE: height TEXT: TEXT: Gheight TEXT: H HThe height of a page to use when printing the output of TEXT: H Gasciiplot Hor Gprint colH. The default is 60. TEXT: H TEXT: SEEALSO: nutmeg:asciiplot SEEALSO: nutmeg:print SUBJECT: helpxpos TITLE: helpxpos TEXT: helpxpos TEXT: The starting X-position of the top-level help window. TEXT: The default is with the upper left corner at (100, TEXT: 100). TEXT: SEEALSO: nutmeg:help SEEALSO: nutmeg:helpypos SUBJECT: helpypos TITLE: helpypos TEXT: helpxpos TEXT: The starting Y-position of the top-level help window. TEXT: The default is with the upper left corner at (100, TEXT: 100). TEXT: SEEALSO: nutmeg:help SEEALSO: nutmeg:helpxpos SUBJECT: historyvar TITLE: history variable TEXT: TEXT: Ghistory TEXT: H HThe number of events to save on the history list. The TEXT: H default is 1000. TEXT: H TEXT: SEEALSO: nutmeg:historycomm SEEALSO: nutmeg:historyvar SUBJECT: maxwins TITLE: maxwins TEXT: TEXT: Gmaxwins TEXT: H HThe maximum number of X windows to create. If this TEXT: H many windows are already on the screen and another is TEXT: H requested, the oldest one is re-used. TEXT: H TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: nfreqs TITLE: nfreqs TEXT: TEXT: Gnfreqs TEXT: H HHow many multiples of the fundamental frequency to TEXT: H print in the Gfourier Hcommand. The default is 10. TEXT: H TEXT: SEEALSO: nutmeg:fourier SUBJECT: numdgt TITLE: numdgt TEXT: TEXT: Gnumdgt TEXT: H HHow many significant digits to print for GfourierH, Gprint TEXT: H colH, etc output. The default is 6. TEXT: H TEXT: SEEALSO: nutmeg:print SEEALSO: nutmeg:fourier SUBJECT: polydegree TITLE: polydegree TEXT: TEXT: Gpolydegree TEXT: H HThis variable determines the degree of the polynomial TEXT: H that is fit to points when a plot is done. If it is TEXT: H not set or set to 1, then the points are connected by TEXT: H lines. If it is greater than 1, then a polynomial TEXT: H curve is fit to the points. If the value of Gpolydegree TEXT: H His _n, then for each _n + 1 adjacent points, a _nth degree TEXT: H curve is fit. If this is not possible (due to the fact TEXT: H that the points aren't monotonic), the curve is rotated TEXT: H 90 degrees and another attempt is made. If is is still TEXT: H unsucessful, _n is decreased by 1 and the process is TEXT: H repeated. Thus four points in the shape of a diamond TEXT: H may be fit with quadratics to approximate a circle. TEXT: H (Although it's not clear that this situation comes up TEXT: H often in circuit simulation.) The variable Ggridsize TEXT: H Hdetermines the size of the grid on which the curve is TEXT: H fit (if the data is monotonic). TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: polysteps TITLE: polysteps TEXT: TEXT: Gpolysteps TEXT: H HThe number of intermediate points to plot between each TEXT: H actual point used for interpolation. The default is TEXT: H 10. Note that if interpolation is used for plotting, TEXT: H the Gticmarks Hfeature is disabled. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: rawfileprec TITLE: rawfileprec TEXT: TEXT: Grawfileprec TEXT: H HThe number of digits to use in the ascii rawfile for- TEXT: H mat. The default is 15, which should be enough. TEXT: H TEXT: SEEALSO: nutmeg:write SUBJECT: reltol TITLE: reltol TEXT: TEXT: Greltol TEXT: H HThe relative tolerance used by the Gdiff Hcommand. See TEXT: H the SPICE3 User's Guide. TEXT: H TEXT: SEEALSO: nutmeg:diff SEEALSO: nutmeg:reltol SUBJECT: vntol TITLE: vntol TEXT: TEXT: Gvntol TEXT: H HThe absolute voltage tolerance used for the Gdiff Hcom- TEXT: H mand. See the SPICE3 User's Guide. TEXT: H TEXT: SEEALSO: nutmeg:diff SEEALSO: nutmeg:vntol SUBJECT: width TITLE: width TEXT: TEXT: Gwidth TEXT: H HThe width of a page to use when printing the output of TEXT: H Gasciiplot Hor Gprint colH. The default is 130. TEXT: H TEXT: SEEALSO: nutmeg:print SEEALSO: nutmeg:asciiplot SUBJECT: xbrushheight TITLE: xbrushheight TEXT: TEXT: Gxbrushheight TEXT: H HThe height of the "brush" used by X to plot data. The TEXT: H default is 1. TEXT: H TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: xbrushwidth TITLE: xbrushwidth TEXT: TEXT: Gxbrushwidth TEXT: H HThe width of the "brush" used by X to plot data. The TEXT: H default is 1. TEXT: H TEXT: SEEALSO: nutmeg:plot SEEALSO: nutmeg:X SUBJECT: plotvars TITLE: Plot-specific Variables TEXT: TEXT: The following variables are specific to each plot. When the TEXT: H current plot changes, these variables take on new values, TEXT: H and they cannot be altered by the user. In addition to TEXT: H these variables, any variables defined in the rawfile on a TEXT: H GOption: Hline are associated with the plot and are read-only, TEXT: H but variables defined by a GCommand: set ... Hline are not. TEXT: H TEXT: SUBTOPIC: nutmeg:curplot nutmeg:curplotdate nutmeg:curplotname SUBTOPIC: nutmeg:curplottitle SUBJECT: curplot TITLE: curplot TEXT: TEXT: Gcurplot TEXT: H HThe name of the currently active plot. TEXT: H TEXT: SEEALSO: nutmeg:plots SEEALSO: nutmeg:setplot SUBJECT: curplotdate TITLE: curplotdate TEXT: TEXT: Gcurplotdate TEXT: H HThe date associated with the currently active plot. TEXT: H This is generally the date of the simulation. TEXT: H TEXT: SUBJECT: curplotname TITLE: curplotname TEXT: TEXT: Gcurplotname TEXT: H HThe type name of the currently active plot. Note that TEXT: H this is Gnot Hthe name used by GsetplotH, but rather an TEXT: H English description of the type of simulation done. TEXT: H TEXT: SUBJECT: curplottitle TITLE: curplottitle TEXT: TEXT: Gcurplottitle TEXT: H HThe title of the circuit associated with the currently TEXT: H active plot. TEXT: H TEXT: SUBJECT: strings TITLE: Strings TEXT: TEXT: These variables take on strings as values. TEXT: H TEXT: SUBTOPIC: nutmeg:color nutmeg:device nutmeg:xdisplay SUBTOPIC: spice:editor nutmeg:filetype nutmeg:geometry SUBTOPIC: nutmeg:gridstyle nutmeg:hbfont nutmeg:hbstyle SUBTOPIC: nutmeg:hcopydev nutmeg:helpboldfont nutmeg:helpitalicfont SUBTOPIC: nutmeg:helpregfont nutmeg:helptitlefont nutmeg:modelcard SUBTOPIC: nutmeg:plotstyle nutmeg:pointchars nutmeg:program SUBTOPIC: nutmeg:prompt nutmeg:rawfile nutmeg:rhost SUBTOPIC: nutmeg:rprogram nutmeg:spicepath nutmeg:subend SUBTOPIC: nutmeg:subinvoke nutmeg:substart nutmeg:term SUBTOPIC: nutmeg:units nutmeg:xfont SUBJECT: color TITLE: color TEXT: TEXT: GcolorH_n_u_m_b_e_r TEXT: H If a variable with the name GcolorH_n_u_m_b_e_r is set to the TEXT: H name of a color recognised by X (see the file TEXT: H G/usr/lib/rgb.txt Hfor a list of such colors), the TEXT: H _n_u_m_b_e_r'th value plotted in a window will have this TEXT: H color. Gcolor0 Hdenotes the background color and Gcolor1 TEXT: H Hdenotes the grid and text color. TEXT: H TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: device TITLE: device TEXT: TEXT: Gdevice TEXT: H HThe path name of the graphics device for MFB to use for TEXT: H plotting, or the display name for X to use. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: xdisplay TITLE: display TEXT: TEXT: Gdisplay TEXT: H HThe display name for X to use for plotting, generally TEXT: H of the form _h_o_s_t:_n_u_m_b_e_r. TEXT: H TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: filetype TITLE: filetype TEXT: TEXT: Gfiletype TEXT: H HThe type of rawfile that the Gwrite Hcommand should TEXT: H create. Currently the only types supported are Gascii TEXT: H Hand GbinaryH. TEXT: H TEXT: SEEALSO: nutmeg:write SUBJECT: geometry TITLE: geometry TEXT: TEXT: Ggeometry TEXT: H HThe X geometry specification to use for creating win- TEXT: H dows. This is of the form TEXT: H G=H_h_e_i_g_h_tGxH_w_i_d_t_hG+H_x_o_f_f_s_e_tG+H_y_o_f_f_s_e_t. Note that the G= Hmust be TEXT: H included in the string. Also, variables of the form TEXT: H GgeometryH_n_u_m_b_e_r may be set, which determine the geometry TEXT: H to use for the _n_u_m_b_e_rth window created. TEXT: H TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: gridstyle TITLE: gridstyle TEXT: gridstyle TEXT: This variable is used to determine the style of grid TEXT: used by the commands plot, hardcopy, and asciiplot, if TEXT: no grid style keywords are given on the command line. TEXT: Possible values are: TEXT: lingrid Use a linear grid TEXT: loglog Use a log scales for both axes TEXT: xlog Use a log scale for the X axis TEXT: ylog Use a log scale for the Y axis TEXT: nogrid Don't draw any grid (but draw the data on a linear scale) TEXT: SEEALSO: nutmeg:plot SUBJECT: hbfont TITLE: helpbuttonfont TEXT: helpbuttonfont TEXT: The name of the X font to use for the labels in the TEXT: buttons in the help system. The default is "6x10". TEXT: SUBJECT: hbstyle TITLE: helpbuttonstyle TEXT: helpbuttonstyle TEXT: This option controls the style of layout that the help TEXT: system will use for formatting sub-topic and see-also TEXT: buttons. If it is left, buttons in a column will be TEXT: aligned on their left sides. If it is center, columns TEXT: of buttons will be centered around their midlines. If TEXT: it is unif, buttons in a column will all be the same TEXT: size and the text will be centered within each button. TEXT: The default is left. TEXT: SEEALSO: nutmeg:help SUBJECT: hcopydev TITLE: hcopydev TEXT: TEXT: Ghcopydev TEXT: H HIf this variable is set to the name of a printer (the TEXT: H name used in the G-P Hoption to GlprH), it directs the TEXT: H Ghardcopy Hcommand to immediately send the raster file to TEXT: H this printer. This works only on UNIX. TEXT: H TEXT: SEEALSO: nutmeg:hardcopy SUBJECT: helpboldfont TITLE: helpboldfont TEXT: helpboldfont TEXT: The name of the X font to use for bold characters in TEXT: the help system. The default is "timrom12b". Note TEXT: that this font should have the same height as the regu- TEXT: lar and italic fonts. TEXT: SUBJECT: helpitalicfont TITLE: helpitalicfont TEXT: helpitalicfont TEXT: The name of the X font to use for italic characters in TEXT: the help system. The default is "timrom12i". Note TEXT: that this font should have the same height as the regu- TEXT: lar and bold fonts. TEXT: SUBJECT: helpregfont TITLE: helpregfont TEXT: helpregfont TEXT: The name of the X font to use for regular characters in TEXT: the help system. The default is "timrom12". Note TEXT: that this font should have the same height as the bold TEXT: and italic fonts. TEXT: SUBJECT: helptitlefont TITLE: helptitlefont TEXT: helptitlefont TEXT: The name of the X font to use for titles in the help TEXT: system. The default is "accordb". TEXT: SUBJECT: modelcard TITLE: modelcard TEXT: TEXT: Gmodelcard TEXT: H HThe name of the line used to introduce a model, gen- TEXT: H erally G.modelH. TEXT: H TEXT: SUBJECT: plotstyle TITLE: plotstyle TEXT: plotstyle TEXT: This variable is used to determine the plot style if no TEXT: plotstyle keyword is given on the command line for the TEXT: commands plot, hardcopy, and asciiplot. Its value may TEXT: be one of: TEXT: linplot Connect points with line segments TEXT: combplot Connect each point to the X-axis TEXT: pointplot Plot each point as a discrete character TEXT: SEEALSO: nutmeg:plot SUBJECT: pointchars TITLE: pointchars TEXT: TEXT: Gpointchars TEXT: H HThe characters in this string are used to plot suces- TEXT: H sive data values if the Gpointplot Hkeyword is given in a TEXT: H Gplot Hcommand. The default is TEXT: H "oxabcdefhgijklmnpqrstuvwyz". TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: program TITLE: program TEXT: TEXT: Gprogram TEXT: H HThe full path name of the current program. TEXT: H TEXT: SUBJECT: prompt TITLE: prompt TEXT: TEXT: Gprompt TEXT: H HThe prompt that the command interpreter should use. In TEXT: H this string, the character `!' is replaced by the TEXT: H current command number. If the program is reading TEXT: H lines which form a part of a control block, the prompt TEXT: H becomes a set of `>' characters, one for each level of TEXT: H control structure. The default prompt is "G$H_p_r_o_g_r_a_m G! TEXT: H -> H". TEXT: H TEXT: SUBJECT: rawfile TITLE: rawfile TEXT: TEXT: Grawfile TEXT: H HThe name of the rawfile to use as a default for the TEXT: H Gwrite Hcommand, or for batch mode. TEXT: H TEXT: SEEALSO: nutmeg:write SEEALSO: nutmeg:load SUBJECT: rhost TITLE: rhost TEXT: TEXT: Grhost TEXT: H HThe name of the machine to run remote simulations on. TEXT: H This machine must have a spice daemon running. TEXT: H TEXT: SEEALSO: spice:rspice SUBJECT: rprogram TITLE: rprogram TEXT: TEXT: Grprogram TEXT: H HThe name of the program to run when an Grspice Hcommand TEXT: H is given. TEXT: H TEXT: SEEALSO: spice:rspice SUBJECT: spicepath TITLE: spicepath TEXT: TEXT: Gspicepath TEXT: H HThe filename to execute when an Gaspice Hcommand is TEXT: H given. TEXT: H TEXT: SEEALSO: spice:aspice SUBJECT: subend TITLE: subend TEXT: TEXT: Gsubend TEXT: H HThe name of the subcircuit-ending line, generally TEXT: H G.endsH. TEXT: H TEXT: SUBJECT: subinvoke TITLE: subinvoke TEXT: TEXT: Gsubinvoke TEXT: H HThe prefix used to call up an instance of a subcircuit, TEXT: H generally "GxH". TEXT: H TEXT: SUBJECT: substart TITLE: substart TEXT: TEXT: Gsubstart TEXT: H HThe name of the line used to start a subcircuit defini- TEXT: H tion, generally TEXT: H TEXT: SUBJECT: term TITLE: term TEXT: TEXT: Gterm HThe name of the terminal type for MFB. Note that these TEXT: H names are often not the same as the ones that _t_e_r_m_c_a_p TEXT: H recognises, so the value of the environment variable TEXT: H TERM may not work (but it will be used if this variable TEXT: H is not set). See the beginning of the file TEXT: H "spice3/lib/mfbcap" for descriptions of the terminals TEXT: H supported. TEXT: H TEXT: SEEALSO: nutmeg:plot SUBJECT: units TITLE: units TEXT: TEXT: Gunits TEXT: H HIf this variable is set to GdegreesH, all trig functions TEXT: H will use degrees instead of radians for the units of TEXT: H their arguments. TEXT: H TEXT: SEEALSO: nutmeg:sin SEEALSO: nutmeg:cos SEEALSO: nutmeg:tan SUBJECT: xfont TITLE: xfont TEXT: TEXT: Gxfont TEXT: H HThe name of the font to use in an X window. This may TEXT: H be a proportional font. TEXT: H TEXT: SEEALSO: nutmeg:X SEEALSO: nutmeg:plot SUBJECT: vms TITLE: VAX-VMS Notes TEXT: TEXT: GNutmeg Hcan be run under VAX/VMS. Some features like command, TEXT: H etc completion, expansion of `*', `?', and [], backquote TEXT: H substitution, the shell command, and so forth do not work. TEXT: H TEXT: GNutmeg Hwill look for start-up commands in the file _s_p_i_c_e._r_c TEXT: H in the current directory. TEXT: H TEXT: The standard suffix for rawspice files in VMS is ".raw". TEXT: H TEXT: You will have to respond to the -_m_o_r_e- prompt during Gplot TEXT: H Hwith a carriage return instead of any key as you can do with TEXT: H UNIX. TEXT: H TEXT: 0707070124062000551006440006700000000000010000000500250476400003700000014054spice3c1/lib/helpdir/spice.idxdashbdashiEdashqspiceMaspice Wrspice~resetresume[runbdeleteiplotlistingteditor dashs!trace#`tran$save%trananalysis(\op3analyses5acanalysis6Adcanalysis?JopanalysisHepzanalysisKpzXsetcircYac[dc\subckts]titlecardmmodelso.bjtvcdjfetmesfetmosfetrmodelswmodelurc optionsabstolAbypasschgtoldefadidefas>defldefwgminitl1itl2Hitl5 pivrel!pivtol#lreltol$Ztnom%;trtol&vntol'`convergence(=elements.&cl/$depsource45VCVS6sf8g;h>ivAExponentialNfmSpulseVpwl\sin_Gkc'semicondfCapacitorstjuncdzjj~0mqruzsw3texamplesex1ex2^ex3"ex4ex5Ƽbatchmodeʥ0707070124062000561006440006700000000000010000000500250477000003700000346601spice3c1/lib/helpdir/spice.txtSUBJECT: dashb TITLE: -b TEXT: TEXT: G-b HRun in batch mode. Instead of prompting the user TEXT: H interactively, Gspice Hwill execute the source files TEXT: H given on the line, or if there are none, it will read TEXT: H from the standard input. (Gspice Honly) TEXT: H TEXT: SUBJECT: dashi TITLE: -i TEXT: TEXT: G-i HRun in interactive (as opposed to batch) mode. This is TEXT: H the default. (Gspice Honly) TEXT: H TEXT: SUBJECT: dashq TITLE: -q TEXT: TEXT: G-b HRun in batch mode. Instead of prompting the user TEXT: H interactively, Gspice Hwill execute the source files TEXT: H given on the line, or if there are none, it will read TEXT: H from the standard input. (Gspice Honly) TEXT: H TEXT: SEEALSO: nutmeg:ccom SUBJECT: spice TITLE: SPICE3 Summary TEXT: TEXT: SPICE is a general-purpose circuit simulation program TEXT: H for nonlinear dc, nonlinear transient, and linear ac ana- TEXT: H lyses. Circuits may contain resistors, capacitors, induc- TEXT: H tors, mutual inductors, independent voltage and current TEXT: H sources, four types of dependent sources, transmission TEXT: H lines, switches, and the five most common semiconductor dev- TEXT: H ices: diodes, BJTs, JFETs, MESFETs, and MOSFETs. TEXT: H TEXT: The SPICE3 version is based directly on SPICE 2G.6. TEXT: H While SPICE3 is being developed to include new features, it TEXT: H will continue to support those capabilities and models which TEXT: H remain in extensive use in the SPICE2 program. TEXT: H TEXT: SPICE has built-in models for the semiconductor dev- TEXT: H ices, and the user need specify only the pertinent model TEXT: H parameter values. The model for the BJT is based on the TEXT: H integral charge model of Gummel and Poon; however, if the TEXT: H Gummel- Poon parameters are not specified, the model reduces TEXT: H to the simpler Ebers-Moll model. In either case, charge TEXT: H storage effects, ohmic resistances, and a current-dependent TEXT: H output conductance may be included. The diode model can be TEXT: H used for either junction diodes or Schottky barrier diodes. TEXT: H The JFET model is based on the FET model of Shichman and TEXT: H Hodges. Four MOSFET models are implemented: MOS1 is TEXT: H described by a square-law I-V characteristic, MOS2[1] is an TEXT: H analytical model, while MOS3[1] is a semi-empirical model, TEXT: H and MOS4[2,3] is the new BSIM (Berkeley Short-channel IGFET TEXT: H Model). MOS2, MOS3, and MOS4 include second-order effects TEXT: H such as channel length modulation, subthreshold conduction, TEXT: H scattering limited velocity saturation, small-size effects, TEXT: H and charge-controlled capacitances. TEXT: H TEXT: SUBJECT: aspice TITLE: aspice TEXT: TEXT: Gaspice H_i_n_f_i_l_e [ _o_u_t_f_i_l_e ] TEXT: H Run SPICE3 asynchronously with _i_n_f_i_l_e as an input cir- TEXT: H cuit. If _o_u_t_f_i_l_e is given, the output is saved in this TEXT: H file. After this command is issued, the job is started TEXT: H in the background, and you may continue using the TEXT: H invoking program interactively. When the job is fin- TEXT: H ished, the rawfile is loaded and becomes the current TEXT: H plot, and the output generated is printed. You may TEXT: H specify the pathname of the program to be run with the TEXT: H Gspicepath Hvariable. TEXT: H TEXT: SEEALSO: nutmeg:jobs SEEALSO: spice:rspice SUBJECT: rspice TITLE: rspice TEXT: TEXT: Grspice H[ _i_n_p_u_t_f_i_l_e ] ... TEXT: H Runs a Gspice Hjob remotely, using the _i_n_p_u_t_f_i_l_es as TEXT: H input, or the current circuit if no argument is given. TEXT: H The program waits for the job to complete, and passes TEXT: H output from the remote job to the user's standard out- TEXT: H put. When the job is finished the data is loaded in as TEXT: H with GaspiceH. If the variable Grhost His set, Grspice Hwill TEXT: H connect to this host instead of the default remote TEXT: H server machine. If the variable Grprogram His set, then TEXT: H Grspice Hwill use this as the pathname to the program to TEXT: H run. Note that this command will work only if your TEXT: H system administrator has set up a Gspice Hdaemon on one TEXT: H of your machines. (See the README file in the distri- TEXT: H bution directory for details on how to do this.) If the TEXT: H daemon thinks the remote machine is too loaded already, TEXT: H it may tell the user to try another machine or to try TEXT: H again later. TEXT: H TEXT: SEEALSO: spice:aspice SEEALSO: nutmeg:rhost SEEALSO: nutmeg:rprogram SUBJECT: reset TITLE: reset TEXT: TEXT: Greset TEXT: H HThrow away the internal data structures associated with TEXT: H the current circuit and re-parse the input listing. TEXT: H This command should be obsolete, since this is done TEXT: H automatically by the Grun Hcommand and the other simula- TEXT: H tion commands. TEXT: H TEXT: SEEALSO: spice:run SUBJECT: resume TITLE: resume TEXT: TEXT: Gresume TEXT: H HIf the current circuit is in the middle of a simula- TEXT: H tion, restart the simulation from the point it was left TEXT: H off. TEXT: H TEXT: SEEALSO: spice:run SUBJECT: run TITLE: run TEXT: TEXT: Grun H[ _r_a_w_f_i_l_e ] TEXT: H Run all the analyses given in the current circuit (the TEXT: H default is an operating point analysis). If a _r_a_w_f_i_l_e TEXT: H is given, the output is saved in this file. Otherwise TEXT: H it is made available as the current plot. TEXT: H TEXT: SEEALSO: spice:resume SUBJECT: delete TITLE: delete TEXT: TEXT: Gdelete H[ _n_u_m_b_e_r ] ... TEXT: H Remove the traces or breakpoints with the specified TEXT: H _n_u_m_b_e_rs. The Gstatus Hcommand may be used to obtain TEXT: H these numbers. (Gspice Honly) TEXT: H TEXT: SEEALSO: nutmeg:status SEEALSO: spice:stop SEEALSO: spice:iplot SEEALSO: spice:step SUBJECT: iplot TITLE: iplot TEXT: TEXT: Giplot H[ _n_a_m_e ] ... TEXT: H Incrementally plot the values of all the _n_a_m_es given as TEXT: H the simulation runs. The values which are being traced TEXT: H in this manner can be examined and removed using the TEXT: H Gstatus Hand Gdelete Hcommands. (Gspice Honly) TEXT: H TEXT: SEEALSO: nutmeg:status SEEALSO: spice:delete SEEALSO: spice:step SEEALSO: spice:stop SEEALSO: nutmeg:plot SUBJECT: listing TITLE: listing TEXT: TEXT: Glisting H[ Glogical H] [ Gphysical H] [ Gdeck H] [ Gexpand H] TEXT: H Print a listing of the current circuit to the standard TEXT: H output. The arguments control the format of the list- TEXT: H ing. A Glogical Hlisting is one in which comments are TEXT: H removed and continuation lines are appended to the end TEXT: H of the continued line. A Gphysical Hlisting is one in TEXT: H which comments and continuation lines are preserved. A TEXT: H Gdeck Hlisting is one without line numbers (so as to be TEXT: H acceptible to the circuit parser). The last option, TEXT: H GexpandH, is orthagonal to the previous three - it TEXT: H requests that the circuit be printed after subcircuit TEXT: H expansion. Note that only in an expanded listing are TEXT: H error messages associated with particular lines visi- TEXT: H ble. (Gspice Honly) TEXT: H TEXT: SEEALSO: nutmeg:source SUBJECT: editor TITLE: editor TEXT: TEXT: Geditor TEXT: H HThe name for the editor to use for the Gedit Hcommand. TEXT: H The default is GviH. (Gspice Honly) TEXT: H TEXT: SEEALSO: nutmeg:edit SUBJECT: dashs TITLE: -s TEXT: TEXT: G-s HRun in server mode. This is like batch mode, and it TEXT: H used by the Gspice daemonH. GSpice Hwill read from the TEXT: H standard input up to an GEOFH, and then after it is fin- TEXT: H ished it will send a line consisting of one `@' and TEXT: H then the contents of the rawfile to the standard out- TEXT: H put. (Gspice Honly) TEXT: H TEXT: SUBJECT: trace TITLE: trace TEXT: TEXT: Gtrace H[ _n_o_d_e ] ... TEXT: H Each time point, the value of the named nodes will be TEXT: H printed to the standard output. TEXT: H TEXT: SEEALSO: spice:step SEEALSO: spice:stop SEEALSO: spice:delete SEEALSO: nutmeg:status SEEALSO: spice:iplot SUBJECT: tran TITLE: tran TEXT: TEXT: Gtran H._t_r_a_n _a_r_g_u_m_e_n_t_s TEXT: H Run a transient analysis. See the SPICE3 User's Guide TEXT: H for details. Only available in GspiceH. TEXT: H TEXT: SEEALSO: spice:trananalysis SUBJECT: save TITLE: save TEXT: TEXT: Gsave H[ Gall H] [ _n_o_d_e_n_a_m_e ] ... TEXT: H Save a set of outputs, discarding the rest. If a node TEXT: H has been mentioned in a Gsave Hcommand, it will appear in TEXT: H the working plot after a run has completed, or in the TEXT: H rawfile if spice is run in batch mode (in this case, TEXT: H the command can be given in the input file as G.save TEXT: H ...H). If a node is traced or plotted it will also be TEXT: H saved. If no Gsave Hcommands are given, all nodes will TEXT: H be saved. TEXT: H TEXT: SEEALSO: nutmeg:status SUBJECT: trananalysis TITLE: Transient Analysis TEXT: TEXT: The transient analysis portion of SPICE computes the TEXT: H transient output variables as a function of time over a TEXT: H user-specified time interval. The initial conditions are TEXT: H automatically determined by a dc analysis. All sources TEXT: H which are not time dependent (for example, power supplies) TEXT: H are set to their dc value. The transient time interval is TEXT: H specified on a G.TRAN Hcontrol line. TEXT: H TEXT: GGeneral form: TEXT: H TEXT: .TRAN H_T_S_T_E_P _T_S_T_O_P <_T_S_T_A_R_T <_T_M_A_X>> <_U_I_C> TEXT: H TEXT: GExamples: TEXT: H TEXT: .TRAN 1NS 100NS TEXT: H .TRAN 1NS 1000NS 500NS TEXT: H .TRAN 10NS 1US UIC TEXT: H TEXT: TEXT: H_T_S_T_E_P is the printing or plotting increment for line- TEXT: H printer output. For use with the post-processor, _T_S_T_E_P is TEXT: H the suggested computing increment. _T_S_T_O_P is the final time, TEXT: H and _T_S_T_A_R_T is the initial time. If _T_S_T_A_R_T is omitted, it is TEXT: H assumed to be zero. The transient analysis always begins at TEXT: H time zero. In the interval , the circuit is TEXT: H analyzed (to reach a steady state), but no outputs are TEXT: H stored. In the interval <_T_S_T_A_R_T, _T_S_T_O_P>, the circuit is TEXT: H analyzed and outputs are stored. _T_M_A_X is the maximum step- TEXT: H size that SPICE will use (by default the program chooses TEXT: H either _T_S_T_E_P or (_T_S_T_O_P-_T_S_T_A_R_T)/50.0, whichever is smaller. TEXT: H _T_M_A_X is useful when one wishes to guarantee a computing TEXT: H interval which is smaller than the printer increment, _T_S_T_E_P. TEXT: H TEXT: GUIC H(use initial conditions) is an optional keyword TEXT: H which indicates that the user does not want SPICE to solve TEXT: H for the quiescent operating point before beginning the tran- TEXT: H sient analysis. If this keyword is specified, SPICE uses TEXT: H the values specified using GICH=... on the various elements as TEXT: H the initial transient condition and proceeds with the TEXT: H analysis. If an G.IC Hline has been given, then the node vol- TEXT: H tages on the G.IC Hline are used to compute the intitial con- TEXT: H ditions for the devices. Look at the description on the TEXT: H IC line for its interpretation when UIC is not specified. TEXT: SEEALSO: spice:tran SUBJECT: op TITLE: op TEXT: TEXT: Gop H._o_p _c_a_r_d _a_r_g_u_m_e_n_t_s TEXT: H Perform an operating point analysis on the current cir- TEXT: H cuit. See the SPICE3 User's Guide for details. Only TEXT: H available in GspiceH. TEXT: H TEXT: SEEALSO: spice:opanalysis SUBJECT: analyses TITLE: Analysis Types TEXT: TEXT: The following analyses are currently available in TEXT: H SPICE3. TEXT: H TEXT: SUBTOPIC: spice:acanalysis spice:dcanalysis spice:opanalysis SUBTOPIC: spice:pzanalysis spice:trananalysis SEEALSO: spice:run SUBJECT: acanalysis TITLE: AC Small-Signal Analysis TEXT: TEXT: The ac small-signal portion of SPICE computes the ac TEXT: H output variables as a function of frequency. The program TEXT: H first computes the dc operating point of the circuit and TEXT: H determines linearized, small-signal models for all of the TEXT: H nonlinear devices in the circuit. The resultant linear cir- TEXT: H cuit is then analyzed over a user-specified range of fre- TEXT: H quencies. The desired output of an ac small-signal analysis TEXT: H is usually a transfer function (voltage gain, transim- TEXT: H pedance, etc). If the circuit has only one ac input, it is TEXT: H convenient to set that input to unity and zero phase, so TEXT: H that output variables have the same value as the transfer TEXT: H function of the output variable with respect to the input. TEXT: H TEXT: GGeneral form: TEXT: H TEXT: .AC DEC H_N_D _F_S_T_A_R_T _F_S_T_O_P TEXT: H G.AC OCT H_N_O _F_S_T_A_R_T _F_S_T_O_P TEXT: H G.AC LIN H_N_P _F_S_T_A_R_T _F_S_T_O_P TEXT: H TEXT: GExamples: TEXT: H TEXT: .AC DEC H10 1 10K TEXT: H G.AC DEC H10 1K 100MEG TEXT: H G.AC LIN H100 1 100HZ TEXT: H TEXT: TEXT: GDEC Hstands for decade variation, and _N_D is the number TEXT: H of points per decade. GOCT Hstands for octave variation, and TEXT: H _N_O is the number of points per octave. GLIN Hstands for TEXT: H linear variation, and _N_P is the number of points. _F_S_T_A_R_T is TEXT: H the starting frequency, and _F_S_T_O_P is the final frequency. TEXT: H If this line is included in the circuit file, SPICE will TEXT: H perform an ac analysis of the circuit over the specified TEXT: H frequency range. Note that in order for this analysis to be TEXT: H meaningful, at least one independent source must have been TEXT: H specified with an ac value. TEXT: H TEXT: SEEALSO: spice:ac SUBJECT: dcanalysis TITLE: DC Analysis TEXT: TEXT: The dc analysis portion of SPICE determines the dc TEXT: H operating point of the circuit with inductors shorted and TEXT: H capacitors opened. A dc analysis is automatically performed TEXT: H prior to a transient analysis to determine the transient TEXT: H initial conditions, and prior to an ac small-signal analysis TEXT: H to determine the linearized, small-signal models for non- TEXT: H linear devices. The dc analysis can also be used to gen- TEXT: H erate dc transfer curves: a specified independent voltage TEXT: H or current source is stepped over a user-specified range and TEXT: H the dc output variables are stored for each sequential TEXT: H source value. TEXT: H TEXT: GGeneral form: TEXT: H TEXT: .DC H_S_R_C_N_A_M _V_S_T_A_R_T _V_S_T_O_P _V_I_N_C_R <_S_R_C_2 _S_T_A_R_T_2 _S_T_O_P_2 _I_N_C_R_2> TEXT: H TEXT: GExamples: TEXT: H TEXT: .DC HVIN 0.25 5.0 0.25 TEXT: H G.DC HVDS 0 10 .5 VGS 0 5 1 TEXT: H G.DC HVCE 0 10 .25 IB 0 10U 1U TEXT: H TEXT: TEXT: This line defines the dc transfer curve source and TEXT: H sweep limits. _S_R_C_N_A_M is the name of an independent voltage TEXT: H or current source. _V_S_T_A_R_T, _V_S_T_O_P, and _V_I_N_C_R are the start- TEXT: H ing, final, and incrementing values respectively. The first TEXT: H example will cause the value of the voltage source _V_I_N to be TEXT: H swept from 0.25 Volts to 5.0 Volts in increments of 0.25 TEXT: H Volts. A second source (_S_R_C_2) may optionally be specified TEXT: H with associated sweep parameters. In this case, the first TEXT: H source will be swept over its range for each value of the TEXT: H second source. This option can be useful for obtaining sem- TEXT: H iconductor device output characteristics. See the second TEXT: H example circuit in the GExamples Hsection of the guide. TEXT: H TEXT: SEEALSO: spice:dc SUBJECT: opanalysis TITLE: Operating Point TEXT: TEXT: GGeneral form: TEXT: H TEXT: .OP TEXT: H TEXT: TEXT: HThe inclusion of this line in an input file will force TEXT: H SPICE to determine the dc operating point of the circuit TEXT: H with inductors shorted and capacitors opened. Note: a dc TEXT: H analysis is automatically performed prior to a transient TEXT: H analysis to determine the transient initial conditions, and TEXT: H prior to an ac small-signal analysis to determine the TEXT: H linearized, small-signal models for nonlinear devices. TEXT: H TEXT: SPICE performs a dc operating point analysis if no TEXT: H other analyses are requested. TEXT: H TEXT: SEEALSO: spice:op SUBJECT: pzanalysis TITLE: Pole-Zero Analysis TEXT: TEXT: The pole-zero analysis portion of SPICE computes the TEXT: H poles and/or zeros in the small-signal ac transfer function. TEXT: H The program first computes the dc operating point and then TEXT: H determines the linearized, small-signal models for all the TEXT: H nonlinear devices in the circuit. This circuit is then used TEXT: H to find the poles and zeros. TEXT: H TEXT: Two types of transfer functions are allowed: one of the TEXT: H form (output voltage)/(input voltage) and the other of the TEXT: H form (output voltage)/(input current). These two types of TEXT: H transfer functions cover all the cases and one can find the TEXT: H poles/zeros of functions like input/output impedance and TEXT: H voltage gain. The input and output ports are specified as TEXT: H two pairs of nodes. TEXT: H TEXT: The pole-zero analysis works with resistors, capaci- TEXT: H tors, inductors, linear-controlled sources, independent TEXT: H sources, BJTs, MOSFETs, JFETs and diodes. Transmission TEXT: H lines are not supported. TEXT: H TEXT: GGeneral forms: TEXT: H TEXT: .PZ H_N_O_D_E_1 _N_O_D_E_2 _N_O_D_E_3 _N_O_D_E_4 _C_U_R _P_O_L TEXT: H G.PZ H_N_O_D_E_1 _N_O_D_E_2 _N_O_D_E_3 _N_O_D_E_4 _C_U_R _Z_E_R TEXT: H G.PZ H_N_O_D_E_1 _N_O_D_E_2 _N_O_D_E_3 _N_O_D_E_4 _C_U_R _P_Z TEXT: H G.PZ H_N_O_D_E_1 _N_O_D_E_2 _N_O_D_E_3 _N_O_D_E_4 _V_O_L _P_O_L TEXT: H G.PZ H_N_O_D_E_1 _N_O_D_E_2 _N_O_D_E_3 _N_O_D_E_4 _V_O_L _Z_E_R TEXT: H G.PZ H_N_O_D_E_1 _N_O_D_E_2 _N_O_D_E_3 _N_O_D_E_4 _V_O_L _P_Z TEXT: H TEXT: GExamples: TEXT: H TEXT: .PZ 1 0 3 0 CUR POL TEXT: H .PZ 2 3 5 0 VOL ZER TEXT: H .PZ 4 1 4 1 CUR PZ TEXT: H TEXT: TEXT: HCUR stands for a transfer function of the type (output TEXT: H voltage)/(input current) while VOL stands for a transfer TEXT: H function of the type (output voltage)/(input voltage). POL TEXT: H stands for pole analysis only, ZER for zero analysis only TEXT: H and PZ for both. This feature is provided mainly because if TEXT: H there is a nonconvergence in finding poles or zeros, then, TEXT: H at least the other can be found. Finally, NODE1 and NODE2 TEXT: H are the two input nodes and NODE3 and NODE4 are the two out- TEXT: H put nodes. Thus, there is complete freedom regarding the TEXT: H output and input ports and the type of transfer function. TEXT: H TEXT: In interactive mode, the command syntax is the same TEXT: H except that the first field is PZ instead of .PZ. To print TEXT: H the results, one should use the command 'print all'. TEXT: H TEXT: SEEALSO: spice:pz SUBJECT: pz TITLE: pz TEXT: TEXT: Gpz H._p_z _c_a_r_d _o_p_t_i_o_n_s TEXT: H Run a pole-zero analysis. See the SPICE3 User's Guide TEXT: H for details. This command is only available in GspiceH. TEXT: H TEXT: SEEALSO: spice:pzanalysis SUBJECT: setcirc TITLE: setcirc TEXT: TEXT: Gsetcirc H[ _c_i_r_c_u_i_t_n_a_m_e ] TEXT: H Change the current circuit. The current circuit is the TEXT: H one that is used for the simulation commands. When a TEXT: H circuit is loaded with the Gsource Hcommand, it becomes TEXT: H the current circuit. If Gsetcirc His given no arguments, TEXT: H it prints a menu of the available circuits. TEXT: H TEXT: SUBJECT: ac TITLE: ac TEXT: TEXT: Gac H._a_c _c_a_r_d _a_r_g_u_m_e_n_t_s TEXT: H Do an ac analysis of the current circuit. See the TEXT: H SPICE3 User's Guide for details. Only available in TEXT: H GspiceH. TEXT: H TEXT: SEEALSO: spice:acanalysis SUBJECT: dc TITLE: dc TEXT: TEXT: Gdc H._d_c _c_a_r_d _a_r_g_u_m_e_n_t_s TEXT: H Calculate the dc transfer curve of the current circuit. TEXT: H See the SPICE3 User's Guide for details. Only avail- TEXT: H able in GspiceH. TEXT: H TEXT: SEEALSO: spice:dcanalysis SUBJECT: subckts TITLE: Subcircuits TEXT: TEXT: A subcircuit that consists of SPICE elements can be TEXT: H defined and referenced in a fashion similar to device TEXT: H models. The subcircuit is defined in the input file by a TEXT: H grouping of element lines; the program then automatically TEXT: H inserts the group of elements wherever the subcircuit is TEXT: H referenced. There is no limit on the size or complexity of TEXT: H subcircuits, and subcircuits may contain other subcircuits. TEXT: H An example of subcircuit usage is given in Appendix A. TEXT: H TEXT: _1._1. ._S_U_B_C_K_T _C_a_r_d TEXT: H TEXT: GGeneral form: TEXT: H TEXT: .SUBCKT H_s_u_b_n_a_m _N_1 <_N_2 _N_3 ...> TEXT: H TEXT: GExamples: TEXT: H TEXT: H.GSUBCKT HOPAMP 1 2 3 4 TEXT: H TEXT: TEXT: A circuit definition is begun with a G.SUBCKT Hline. TEXT: H _S_U_B_N_A_M is the subcircuit name, and _N_1, _N_2, ... are the TEXT: H external nodes, which cannot be zero. The group of element TEXT: H lines which immediately follow the G.SUBCKT Hline define the TEXT: H subcircuit. The last line in a subcircuit definition is the TEXT: H G.ENDS Hline (see below). Control lines may not appear within TEXT: H a subcircuit definition; however, subcircuit definitions TEXT: H may contain anything else, including other subcircuit defin- TEXT: H itions, device models, and subcircuit calls (see below). TEXT: H Note that any device models or subcircuit definitions TEXT: H included as part of a subcircuit definition are strictly TEXT: H local (i.e., such models and definitions are not known out- TEXT: H side the subcircuit definition). Also, any element nodes TEXT: H not included on the G.SUBCKT Hline are strictly local, with TEXT: H the exception of 0 (ground) which is always global. TEXT: H TEXT: _1._2. ._E_N_D_S _C_a_r_d TEXT: H TEXT: GGeneral form: TEXT: H TEXT: .ENDS H<_S_U_B_N_A_M> TEXT: H TEXT: GExamples: TEXT: H TEXT: .ENDS HOPAMP TEXT: H TEXT: TEXT: This line must be the last one for any subcircuit TEXT: H definition. The subcircuit name, if included, indicates TEXT: H which subcircuit definition is being terminated; if omit- TEXT: H ted, all subcircuits being defined are terminated. The name TEXT: H is needed only when nested subcircuit definitions are being TEXT: H made. TEXT: H TEXT: TEXT: _1._3. _S_u_b_c_i_r_c_u_i_t _C_a_l_l_s TEXT: H TEXT: GGeneral form: TEXT: H TEXT: XH_X_Y_Y_Y_Y_Y_Y_Y _N_1 <_N_2 _N_3 ...> _S_U_B_N_A_M TEXT: H TEXT: GExamples: TEXT: H TEXT: XH1 2 4 17 3 1 MULTI TEXT: H TEXT: TEXT: Subcircuits are used in SPICE by specifying pseudo- TEXT: H elements beginning with the letter `X', followed by the cir- TEXT: H cuit nodes to be used in expanding the subcircuit. TEXT: H TEXT: Note that when a circuit is parsed, all devices and TEXT: H local nodes in subcircuits are renamed as TEXT: H _d_e_v_i_c_e_t_y_p_eG:H_s_u_b_c_k_t_n_a_m_eG:H_d_e_v_i_c_e_n_a_m_e. Nested subcircuit TEXT: H instances will have multiple colon-seperated qualifiers. TEXT: H GNutmeg Hwill also accept subcircuit names with components TEXT: H seperated by periods, so long as the names do not clash with TEXT: H names specifiable as _p_l_o_t_n_a_m_eG.H_v_a_l_u_e. TEXT: H TEXT: SUBJECT: titlecard TITLE: Title Line TEXT: TEXT: This line must be the first line in the input file. It TEXT: H is printed at the top of each page of output. TEXT: H TEXT: GExamples: TEXT: H TEXT: HPOWER AMPLIFIER CIRCUIT TEXT: H TEST OF CAM CELL TEXT: H TEXT: SUBJECT: models TITLE: Device Models TEXT: TEXT: GGeneral form: TEXT: H TEXT: .MODEL H_M_N_A_M_E _T_Y_P_E(_P_N_A_M_E_1=_P_V_A_L_1 _P_N_A_M_E_2=_P_V_A_L_2 ... ) TEXT: H TEXT: GExamples: TEXT: H TEXT: .MODEL HMOD1 NPN (BF=50 IS=1E-13 VBF=50) TEXT: H TEXT: TEXT: The G.MODEL Hline specifies a set of model parameters TEXT: H that will be used by one or more devices. _M_N_A_M_E is the TEXT: H model name, and type is one of the following ten types: TEXT: H TEXT: GR Hresistor model TEXT: H GC Hcapacitor model TEXT: H GURC HUniform Distributed RC model TEXT: H GD Hdiode model TEXT: H GNPN HNPN BJT model TEXT: H GPNP HPNP BJT model TEXT: H GNJF HN-channel JFET model TEXT: H GPJF HP-channel JFET model TEXT: H GNMOS HN-channel MOSFET model TEXT: H GPMOS HP-channel MOSFET model TEXT: H GNMF HN-channel MESFET model TEXT: H GPMF HP-channel MESFET model TEXT: H GSW Hvoltage controlled switch TEXT: H GCSW Hcurrent controlled switch TEXT: H TEXT: TEXT: Parameter values are defined by appending the parameter TEXT: H name, as given below for each model type, followed by an TEXT: H equal sign and the parameter value. Model parameters that TEXT: H are not given a value are assigned the default values given TEXT: H below for each model type. TEXT: H TEXT: SUBTOPIC: spice:bjt spice:c spice:d SUBTOPIC: spice:jfet spice:mesfet spice:mosfet SUBTOPIC: spice:rmodel spice:swmodel spice:urc SUBJECT: bjt TITLE: BJT Models TEXT: TEXT: The bipolar junction transistor model in SPICE is an TEXT: H adaptation of the integral charge control model of Gummel TEXT: H and Poon. This modified Gummel-Poon model extends the ori- TEXT: H ginal model to include several effects at high bias levels. TEXT: H The model will automatically simplify to the simpler Ebers- TEXT: H Moll model when certain parameters are not specified. The TEXT: H parameter names used in the modified Gummel-Poon model have TEXT: H been chosen to be more easily understood by the program TEXT: H user, and to reflect better both physical and circuit design TEXT: H thinking. TEXT: H TEXT: The dc model is defined by the parameters GIS, BF, NF, TEXT: H ISE, IKFH, and GNE Hwhich determine the forward current gain TEXT: H characteristics, GIS, BR, NR, ISC, IKRH, and GNC Hwhich deter- TEXT: H mine the reverse current gain characteristics, and GVAF Hand TEXT: H GVAR Hwhich determine the output conductance for forward and TEXT: H reverse regions. Three ohmic resistances GRB, RCH, and GRE Hare TEXT: H included, where GRB Hcan be high current dependent. Base TEXT: H charge storage is modeled by forward and reverse transit TEXT: H times, GTF Hand GTRH, the forward transit time TF being bias TEXT: H dependent if desired, and nonlinear depletion layer capaci- TEXT: H tances which are determined by GCJE, VJEH, and GMJE Hfor the B-E TEXT: H junction , GCJC, VJCH, and GMJC Hfor the B-C junction and GCJS, TEXT: H VJSH, and GMJS Hfor the C-S (Collector-Substrate) junction. TEXT: H The temperature dependence of the saturation current, GISH, is TEXT: H determined by the energy-gap, GEGH, and the saturation current TEXT: H temperature exponent, GXTIH. Additionally base current tem- TEXT: H perature dependence is modeled by the beta temperature TEXT: H exponent GXTB Hin the new model. TEXT: H TEXT: The BJT parameters used in the modified Gummel-Poon TEXT: H model are listed below. The parameter names used in earlier TEXT: H versions of SPICE2 are still accepted. TEXT: H TEXT: Modified Gummel-Poon BJT Parameters. TEXT: H name parameter units default example area TEXT: H TEXT: H 1 GIS Htransport saturation current A 1.0E-16 1.0E-15 * TEXT: H 2 GBF Hideal maximum forward beta - 100 100 TEXT: H 3 GNF Hforward current emission coefficient - 1.0 1 TEXT: H 4 GVAF Hforward Early voltage V infinite 200 TEXT: H 5 GIKF Hcorner for forward beta TEXT: H high current roll-off A infinite 0.01 * TEXT: H 6 GISE HB-E leakage saturation current A 0 1.0E-13 * TEXT: H 7 GNE HB-E leakage emission coefficient - 1.5 2 TEXT: H 8 GBR Hideal maximum reverse beta - 1 0.1 TEXT: H 9 GNR Hreverse current emission coefficient - 1 1 TEXT: H 10 GVAR Hreverse Early voltage V infinite 200 TEXT: H 11 GIKR Hcorner for reverse beta TEXT: H high current roll-off A infinite 0.01 * TEXT: H 12 GISC HB-C leakage saturation current A 0 1.0E-13 * TEXT: H TEXT: TEXT: 13 GNC HB-C leakage emission coefficient - 2 1.5 TEXT: H 14 GRB Hzero bias base resistance Ohms 0 100 * TEXT: H 15 GIRB Hcurrent where base resistance TEXT: H falls halfway to its min value A infinite 0.1 * TEXT: H 16 GRBM Hminimum base resistance TEXT: H at high currents Ohms RB 10 * TEXT: H 17 GRE Hemitter resistance Ohms 0 1 * TEXT: H 18 GRC Hcollector resistance Ohms 0 10 * TEXT: H 19 GCJE HB-E zero-bias depletion capacitance F 0 2PF * TEXT: H 20 GVJE HB-E built-in potential V 0.75 0.6 TEXT: H 21 GMJE HB-E junction exponential factor - 0.33 0.33 TEXT: H 22 GTF Hideal forward transit time sec 0 0.1Ns TEXT: H 23 GXTF Hcoefficient for bias dependence of TF - 0 TEXT: H 24 GVTF Hvoltage describing VBC TEXT: H dependence of TF V infinite TEXT: H 25 GITF Hhigh-current parameter TEXT: H for effect on TF A 0 * TEXT: H 26 GPTF Hexcess phase at freq=1.0/(TF*2PI) Hz deg 0 TEXT: H 27 GCJC HB-C zero-bias depletion capacitance F 0 2PF * TEXT: H 28 GVJC HB-C built-in potential V 0.75 0.5 TEXT: H 29 GMJC HB-C junction exponential factor - 0.33 0.5 TEXT: H 30 GXCJC Hfraction of B-C depletion capacitance - 1 TEXT: H connected to internal base node TEXT: H 31 GTR Hideal reverse transit time sec 0 10Ns TEXT: H 32 GCJS Hzero-bias collector-substrate TEXT: H capacitance F 0 2PF * TEXT: H 33 GVJS Hsubstrate junction built-in potential V 0.75 TEXT: H 34 GMJS Hsubstrate junction exponential factor - 0 0.5 TEXT: H 35 GXTB Hforward and reverse beta TEXT: H temperature exponent - 0 TEXT: H 36 GEG Henergy gap for temperature TEXT: H effect on IS eV 1.11 TEXT: H 37 GXTI Htemperature exponent for effect on IS - 3 TEXT: H 38 GKF Hflicker-noise coefficient - 0 TEXT: H 39 GAF Hflicker-noise exponent - 1 TEXT: H 40 GFC Hcoefficient for forward-bias TEXT: H depletion capacitance formula - 0.5 TEXT: H TEXT: SEEALSO: spice:q SUBJECT: c TITLE: Capacitor Models TEXT: TEXT: The capacitor model contains process information that TEXT: H may be used to compute the capacitance from strictly TEXT: H geometric information. TEXT: H TEXT: Gname Hparameter units default example TEXT: H TEXT: H GCJ Hjunction bottom capacitance F/meters2 - 5e-5 TEXT: H GCJSW Hjunction sidewall capacitance F/meters - 2e-11 TEXT: H GDEFW Hdefault device width meters 1e-6 2e-6 TEXT: H GNARROW Hnarrowing due to side etching meters 0.0 1e-7 TEXT: H TEXT: TEXT: The capacitor has a capacitance computed as TEXT: H TEXT: CAP=CJx(LENGTH-NARROW)x(WIDTH-NARROW)+2xCJSWx(LENGTH+WIDTH-2*NARROW) TEXT: H TEXT: SEEALSO: spice:c SUBJECT: d TITLE: Diode Models TEXT: TEXT: The dc characteristics of the diode are determined by TEXT: H the parameters GIS Hand GNH. An ohmic resistance, GRSH, is TEXT: H included. Charge storage effects are modeled by a transit TEXT: H time, GTTH, and a nonlinear depletion layer capacitance which TEXT: H is determined by the parameters GCJO, VJH, and GMH. The tem- TEXT: H perature dependence of the saturation current is defined by TEXT: H the parameters GEGH, the energy and GXTIH, the saturation TEXT: H current temperature exponent. Reverse breakdown is modeled TEXT: H by an exponential increase in the reverse diode current and TEXT: H is determined by the parameters GBV Hand GIBV H(both of which TEXT: H are positive numbers). TEXT: H TEXT: Gname Hparameter units default example area TEXT: H TEXT: H 1 GIS Hsaturation current A 1.0E-14 1.0E-14 * TEXT: H 2 GRS Hohmic resistance Ohm 0 10 * TEXT: H 3 GN Hemission coefficient - 1 1.0 TEXT: H 4 GTT Htransit-time sec 0 0.1Ns TEXT: H 5 GCJO Hzero-bias junction capacitance F 0 2PF * TEXT: H 6 GVJ Hjunction potential V 1 0.6 TEXT: H 7 GM Hgrading coefficient - 0.5 0.5 TEXT: H 8 GEG Hactivation energy eV 1.11 1.11 Si TEXT: H 0.69 Sbd TEXT: H 0.67 Ge TEXT: H 9 GXTI Hsaturation-current temp. exp - 3.0 3.0 jn TEXT: H 2.0 Sbd TEXT: H 10 GKF Hflicker noise coefficient - 0 TEXT: H 11 GAF Hflicker noise exponent - 1 TEXT: H 12 GFC Hcoefficient for forward-bias - 0.5 TEXT: H depletion capacitance formula TEXT: H 13 GBV Hreverse breakdown voltage V infinite 40.0 TEXT: H 14 GIBV Hcurrent at breakdown voltage A 1.0E-3 TEXT: H TEXT: SEEALSO: spice:juncd SUBJECT: jfet TITLE: JFET Models TEXT: TEXT: The JFET model is derived from the FET model of Shich- TEXT: H man and Hodges. The DC characteristics are defined by the TEXT: H parameters GVTO Hand GBETAH, which determine the variation of TEXT: H drain current with gate voltage, GLAMBDAH, which determines TEXT: H the output conductance, and GISH, the saturation current of TEXT: H the two gate junctions. Two ohmic resistances, GRD Hand GRSH, TEXT: H are included. Charge storage is modeled by nonlinear deple- TEXT: H tion layer capacitances for both gate junctions which vary TEXT: H as the -1/2 power of junction voltage and are defined by the TEXT: H parameters GCGS, CGD, Hand GPBH. TEXT: H TEXT: name parameter units default example area TEXT: H TEXT: H 1 GVTO Hthreshold voltage V -2.0 -2.0 TEXT: H 2 GBETA Htransconductance parameter A/V**2 1.0E-4 1.0E-3 * TEXT: H 3 GLAMBDA Hchannel length modulation TEXT: H parameter 1/V 0 1.0E-4 TEXT: H 4 GRD Hdrain ohmic resistance Ohm 0 100 * TEXT: H 5 GRS Hsource ohmic resistance Ohm 0 100 * TEXT: H 6 GCGS Hzero-bias G-S junction capacitance F 0 5PF * TEXT: H 7 GCGD Hzero-bias G-D junction capacitance F 0 1PF * TEXT: H 8 GPB Hgate junction potential V 1 0.6 TEXT: H 9 GIS Hgate junction saturation current A 1.0E-14 1.0E-14 * TEXT: H 10 GKF Hflicker noise coefficient - 0 TEXT: H 11 GAF Hflicker noise exponent - 1 TEXT: H 12 GFC Hcoefficient for forward-bias - 0.5 TEXT: H depletion capacitance formula TEXT: H TEXT: SEEALSO: spice:j SUBJECT: mesfet TITLE: MESFET Models TEXT: TEXT: The MESFET model is derived from the GaAs FET model of TEXT: H Statz et al. as described in [4]. The dc characteristics TEXT: H are defined by the parameters GVTOH, GBH, and GBETAH, which deter- TEXT: H mine the variation of drain current with gate voltage, TEXT: H GALPHAH, which determines saturation voltage, and GLAMBDAH, TEXT: H which determines the output conductance. The formula are TEXT: H given by TEXT: H TEXT: TEXT: Id = 1 + b(Vgs - VT) TEXT: 8| (Vgs-VT)2_______________ TEXT: | TEXT: | TEXT: | TEXT: | TEXT: 1 - TEXT: | TEXT: | TEXT: | TEXT: 1-o( 3 TEXT: Vds___ TEXT: | TEXT: | TEXT: | TEXT: TEXT: 3| TEXT: | TEXT: | TEXT: | TEXT: (1 + ,\ Vds) for 0o( TEXT: 3_ TEXT: H TEXT: Two ohmic resistances, GRD Hand GRSH, are included. Charge TEXT: H storage is modeled by total gate charge as a function of TEXT: H gate-drain and gate-source voltages and is defined by the TEXT: H parameters GCGS, CGD, Hand GPBH. TEXT: H TEXT: name parameter units default example area TEXT: H TEXT: H 1 GVTO Hpinch-off voltage V -2.0 -2.0 TEXT: H 2 GBETA Htransconductance parameter A/V**2 1.0E-4 1.0E-3 * TEXT: H 3 GB Hdoping tail extending parameter 1/V 0.3 0.3 * TEXT: H 4 GALPHA Hsaturation voltage parameter 1/V 2 2 * TEXT: H 5 GLAMBDA Hchannel length modulation TEXT: H parameter 1/V 0 1.0E-4 TEXT: H 6 GRD Hdrain ohmic resistance Ohm 0 100 * TEXT: H 7 GRS Hsource ohmic resistance Ohm 0 100 * TEXT: H 8 GCGS Hzero-bias G-S junction capacitance F 0 5PF * TEXT: H 9 GCGD Hzero-bias G-D junction capacitance F 0 1PF * TEXT: H 10 GPB Hgate junction potential V 1 0.6 TEXT: H 11 GKF Hflicker noise coefficient - 0 TEXT: H 12 GAF Hflicker noise exponent - 1 TEXT: H 13 GFC Hcoefficient for forward-bias - 0.5 TEXT: H depletion capacitance formula TEXT: H TEXT: SEEALSO: spice:z SUBJECT: mosfet TITLE: MOSFET Models TEXT: TEXT: SPICE provides four MOSFET device models, which differ TEXT: H in the formulation of the I-V characteristic. The variable TEXT: H GLEVEL Hspecifies the model to be used: TEXT: H TEXT: LEVEL = 1 -> Shichman-Hodges TEXT: H LEVEL = 2 -> MOS2 (as described in [1]) TEXT: H LEVEL = 3 -> MOS3, a semi-empirical model (see [1]) TEXT: H LEVEL = 4 -> BSIM (as described in [2]) TEXT: H TEXT: TEXT: The dc characteristics of the level 1 through level 3 TEXT: H MOSFETs are defined by the device parameters GVTO, KP, TEXT: H LAMBDA, PHI Hand GGAMMAH. These parameters are computed by TEXT: H SPICE if process parameters (GNSUB, TOXH, ...) are given, but TEXT: H user-specified values always override. GVTO His positive TEXT: H (negative) for enhancement mode and negative (positive) for TEXT: H depletion mode N-channel (P-channel) devices. Charge storage TEXT: H is modeled by three constant capacitors, GCGSO, CGDO, Hand TEXT: H GCGBO Hwhich represent overlap capacitances, by the nonlinear TEXT: H thin-oxide capacitance which is distributed among the gate, TEXT: H source, drain, and bulk regions, and by the nonlinear TEXT: H depletion-layer capacitances for both substrate junctions TEXT: H divided into bottom and periphery, which vary as the GMJ Hand TEXT: H GMJSW Hpower of junction voltage respectively, and are deter- TEXT: H mined by the parameters GCBD, CBS, CJ, CJSW, MJ, MJSW Hand GPBH. TEXT: H Charge storage effects are modeled by the piecewise linear TEXT: H voltags-dependent capacitance model proposed by Meyer. The TEXT: H thin-oxide charge storage effects are treated slightly dif- TEXT: H ferent for the LEVEL = 1 model. These voltage-dependent TEXT: H capacitances are included only if GTOX His specified in the TEXT: H input description and they are represented using Meyer's TEXT: H formulation. TEXT: H TEXT: There is some overlap among the parameters describing TEXT: H the junctions, e.g. the reverse current can be input either TEXT: H as GIS H(in A) or as GJS H(in A/m**2). Whereas the first is an TEXT: H absolute value the second is multiplied by GAD Hand GAS Hto give TEXT: H the reverse current of the drain and source junctions TEXT: H respectively. This methodology has been chosen since there TEXT: H is no sense in relating always junction characteristics with TEXT: H GAD Hand GAS Hentered on the device line; the areas can be TEXT: H defaulted. The same idea applies also to the zero-bias TEXT: H junction capacitances GCBD Hand GCBS H(in F) on one hand, and GCJ TEXT: H H(in F/m**2) on the other. The parasitic drain and source TEXT: H series resistance can be expressed as either GRD Hand GRS H(in TEXT: H ohms) or GRSH H(in ohms/sq.), the latter being multiplied by TEXT: H the number of squares GNRD Hand GNRS Hinput on the device line. TEXT: H TEXT: SPICE level 1 to level 3 parameters. TEXT: H name parameter units default example TEXT: H TEXT: H TEXT: TEXT: 1 GLEVEL Hmodel index - 1 TEXT: H 2 GVTO Hzero-bias threshold voltage V 0.0 1.0 TEXT: H 3 GKP Htransconductance parameter A/V**2 2.0E-5 3.1E-5 TEXT: H 4 GGAMMA Hbulk threshold parameter V**0.5 0.0 0.37 TEXT: H 5 GPHI Hsurface potential V 0.6 0.65 TEXT: H 6 GLAMBDA Hchannel-length modulation TEXT: H (MOS1 and MOS2 only) 1/V 0.0 0.02 TEXT: H 7 GRD Hdrain ohmic resistance Ohm 0.0 1.0 TEXT: H 8 GRS Hsource ohmic resistance Ohm 0.0 1.0 TEXT: H 9 GCBD Hzero-bias B-D junction capacitance F 0.0 20FF TEXT: H 10 GCBS Hzero-bias B-S junction capacitance F 0.0 20FF TEXT: H 11 GIS Hbulk junction saturation current A 1.0E-14 1.0E-15 TEXT: H 12 GPB Hbulk junction potential V 0.8 0.87 TEXT: H 13 GCGSO Hgate-source overlap capacitance TEXT: H per meter channel width F/m 0.0 4.0E-11 TEXT: H 14 GCGDO Hgate-drain overlap capacitance TEXT: H per meter channel width F/m 0.0 4.0E-11 TEXT: H 15 GCGBO Hgate-bulk overlap capacitance TEXT: H per meter channel length F/m 0.0 2.0E-10 TEXT: H 16 GRSH Hdrain and source diffusion TEXT: H sheet resistance Ohm/sq. 0.0 10.0 TEXT: H 17 GCJ Hzero-bias bulk junction bottom cap. TEXT: H per sq-meter of junction area F/m**2 0.0 2.0E-4 TEXT: H 18 GMJ Hbulk junction bottom grading coef. - 0.5 0.5 TEXT: H 19 GCJSW Hzero-bias bulk junction sidewall cap. TEXT: H per meter of junction perimeter F/m 0.0 1.0E-9 TEXT: H 20 GMJSW Hbulk junction sidewall grading coef. - 0.50(level1) TEXT: H 0.33(level2,3) TEXT: H 21 GJS Hbulk junction saturation current TEXT: H per sq-meter of junction area A/m**2 1.0E-8 TEXT: H 22 GTOX Hoxide thickness meter 1.0E-7 1.0E-7 TEXT: H 23 GNSUB Hsubstrate doping 1/cm**3 0.0 4.0E15 TEXT: H 24 GNSS Hsurface state density 1/cm**2 0.0 1.0E10 TEXT: H 25 GNFS Hfast surface state density 1/cm**2 0.0 1.0E10 TEXT: H 26 GTPG Htype of gate material: - 1.0 TEXT: H +1 opp. to substrate TEXT: H -1 same as substrate TEXT: H 0 Al gate TEXT: H 27 GXJ Hmetallurgical junction depth meter 0.0 1U TEXT: H 28 GLD Hlateral diffusion meter 0.0 0.8U TEXT: H 29 GUO Hsurface mobility cm**2/V-s 600 700 TEXT: H 30 GUCRIT Hcritical field for mobility TEXT: H degradation (MOS2 only) V/cm 1.0E4 1.0E4 TEXT: H 31 GUEXP Hcritical field exponent in TEXT: H mobility degradation (MOS2 only) - 0.0 0.1 TEXT: H 32 GUTRA Htransverse field coef (mobility) TEXT: H (deleted for MOS2) - 0.0 0.3 TEXT: H 33 GVMAX Hmaximum drift velocity of carriers m/s 0.0 5.0E4 TEXT: H 34 GNEFF Htotal channel charge (fixed and TEXT: H mobile) coefficient (MOS2 only) - 1.0 5.0 TEXT: H 35 GKF Hflicker noise coefficient - 0.0 1.0E-26 TEXT: H 36 GAF Hflicker noise exponent - 1.0 1.2 TEXT: H 37 GFC Hcoefficient for forward-bias TEXT: H TEXT: TEXT: depletion capacitance formula - 0.5 TEXT: H 38 GDELTA Hwidth effect on threshold voltage TEXT: H (MOS2 and MOS3) - 0.0 1.0 TEXT: H 39 GTHETA Hmobility modulation (MOS3 only) 1/V 0.0 0.1 TEXT: H 40 GETA Hstatic feedback (MOS3 only) - 0.0 1.0 TEXT: H 41 GKAPPA Hsaturation field factor (MOS3 only) - 0.2 0.5 TEXT: H TEXT: TEXT: The level 4 parameters are all values obtained from TEXT: H process characterization, and can be generated automati- TEXT: H cally. J. Pierret [3] describes a means of generating a TEXT: H 'process' file, and the program GProc2Mod Hprovided with TEXT: H SPICE3 will convert this file into a sequence of G.MODEL TEXT: H Hlines suitable for inclusion in a SPICE circuit file. TEXT: H Parameters marked below with an * in the l/w column also TEXT: H have corresponding parameters with a length and width depen- TEXT: H dency. For example, GVFB His the basic parameter with units TEXT: H of Volts, and GLVFB Hand GWVFB Halso exist and have units of TEXT: H Volt-umeter The formula TEXT: H TEXT: P=P0+Leffective TEXT: PL__________+Weffective TEXT: PW__________ TEXT: H TEXT: is used to evaluate the parameter for the actual device TEXT: H specified with TEXT: H TEXT: Leffective=Linput-DL TEXT: H TEXT: and TEXT: H TEXT: Weffective=Winput-DW TEXT: H TEXT: TEXT: Note that unlike the other models in SPICE, the BSIM TEXT: H model is designed for use with a process characterization TEXT: H system that provides all the parameters, thus there are no TEXT: H defaults for the parameters, and leaving one out is con- TEXT: H sidered an error. For an example set of parameters and the TEXT: H format of a process file, see the SPICE2 implementation TEXT: H notes[2]. TEXT: H TEXT: SPICE BSIM (level 4) parameters. TEXT: H name parameter units l/w TEXT: H TEXT: H GVFB Hflat-band voltage V * TEXT: H GPHI Hsurface inversion potential V * TEXT: H GK1 Hbody effect coefficient V1/2 * TEXT: H GK2 Hdrain/source depletion charge sharing coefficient - * TEXT: H GETA Hzero-bias drain-induced barrier lowering coefficient - * TEXT: H GMUZ Hzero-bias mobility cm2/V-s TEXT: H GDL Hshortening of channel um TEXT: H GDW Hnarrowing of channel um TEXT: H TEXT: TEXT: GU0 Hzero-bias transverse-field mobility degradation coefficient V-1 * TEXT: H GU1 Hzero-bias velocity saturation coefficient um/V * TEXT: H GX2MZ Hsens. of mobility to substrate bias at vds=0 cm2/V2-s * TEXT: H GX2E Hsens. of drain-induced barrier lowering effect to substrate bias V-1 * TEXT: H GX3E Hsens. of drain-induced barrier lowering effect to drain bias at Vds=Vdd V-1 * TEXT: H GX2U0 Hsens. of transverse field mobility degradation effect to substrate bias V-2 * TEXT: H GX2U1 Hsens. of velocity saturation effect to substrate bias umV-2 * TEXT: H GMUS Hmobility at zero substrate bias and at Vds=Vdd cm2/V2-s TEXT: H GX2MS Hsens. of mobility to substrate bias at Vds=Vdd cm2/V2-s * TEXT: H GX3MS Hsens. of mobility to drain bias at Vds=Vdd cm2/V2-s * TEXT: H GX3U1 Hsens. of velocity saturation effect on drain bias at Vds=Vdd umV-2 * TEXT: H GTOX Hgate oxide thickness um TEXT: H GTEMP Htemperature at which parameters were measured C TEXT: H GVDD Hmeasurement bias range V TEXT: H GCGDO Hgate-drain overlap capacitance per meter channel width F/m TEXT: H GCGSO Hgate-source overlap capacitance per meter channel width F/m TEXT: H GCGBO Hgate-bulk overlap capacitance per meter channel length F/m TEXT: H GXPART Hgate-oxide capacitance charge model flag - TEXT: H GN0 Hzero-bias subthreshold slope coefficient - * TEXT: H GNB Hsens. of subthreshold slope to substrate bias - * TEXT: H GND Hsens. of subthreshold slope to drain bias - * TEXT: H GRSH Hdrain and source diffusion sheet resistance O_/[] TEXT: H GJS Hsource drain junction current density A/m2 TEXT: H GPB Hbuilt in potential of source drain junction V TEXT: H GMJ HGrading coefficient of source drain junction - TEXT: H GPBSW Hbuilt in potential of source,drain juntion sidewall V TEXT: H GMJSW Hgrading coefficient of source drain junction sidewall - TEXT: H GCJ HSource drain junction capacitance per unit area F/m2 TEXT: H GCJSW Hsource drain junction sidewall capacitance per unit length F/m TEXT: H GWDF Hsource drain junction default width m TEXT: H GDELL HSource drain junction length reduction m TEXT: H TEXT: TEXT: GXPART H= 0 selects a 40/60 drain/source charge partition TEXT: H in saturation, while GXPART H= 1 selects a 0/100 drain/source TEXT: H charge partition. TEXT: H TEXT: SEEALSO: spice:m SUBJECT: rmodel TITLE: Resistor Models TEXT: TEXT: The resistor model consists of process-related device TEXT: H data that allow the resistance to be calculated from TEXT: H geometric information and to be corrected for temperature. TEXT: H The parameters available are: TEXT: H TEXT: Gname Hparameter units default example TEXT: H TEXT: H GTC1 Hfirst order temperature coeff. O_/C 0.0 - TEXT: H GTC2 Hsecond order temperature coeff. O_/C2 0.0 - TEXT: H GRSH Hsheet resistance O_/[] - 50 TEXT: H GDEFW Hdefault width meters 1e-6 2e-6 TEXT: H GNARROW Hnarrowing due to side etching meters 0.0 1e-7 TEXT: H TEXT: TEXT: The sheet resistance is used with the narrowing parame- TEXT: H ter and _L and _W from the resistor line to determine the nom- TEXT: H inal resistance by the formula TEXT: H TEXT: R=RSHxW-NARROW TEXT: L-NARROW________ TEXT: H TEXT: _D_E_F_W is used to supply a default value for _W if one is not TEXT: H specified on the device line. If either _R_S_H or _L is not TEXT: H specified, then the standard default resistance value of 1k TEXT: H O_ is used. After the nominal resistance is calculated, it TEXT: H is adjusted for temperature by the formula: TEXT: H TEXT: RES(temp)=RES(tnom)x(1+TC1x(temp-tnom)+TC2*(temp-tnom)2) TEXT: H TEXT: SEEALSO: spice:r SUBJECT: swmodel TITLE: Switch Models TEXT: TEXT: The switch model allows an almost ideal switch to be TEXT: H described in SPICE. The switch is not quite ideal, in that TEXT: H the resistance can not change from 0 to infinity, but must TEXT: H always have a finite positive value. By proper selection of TEXT: H the on and off resistances, they can be effectively zero and TEXT: H infinity in comparison to other circuit elements. The TEXT: H parameters available are: TEXT: H TEXT: name parameter units default switch TEXT: H TEXT: H GVT Hthreshold voltage Volts 0.0 S TEXT: H GIT Hthreshold current Amps 0.0 W TEXT: H GVH Hhysteresis voltage Volts 0.0 S TEXT: H GIH Hhysteresis current Amps 0.0 W TEXT: H GRON Hon resistance O_ 1.0 both TEXT: H GROFF Hoff resistance O_ 1/GMIN* both TEXT: H TEXT: TEXT: *(See the description of the G.OPTIONS Hline for a TEXT: H description of GGMINH, its default value results is a off TEXT: H resistance of 1.0e+12 ohms.) TEXT: H TEXT: The use of an ideal element that is highly non-linear TEXT: H such as a switch can cause large discontinuities to occur in TEXT: H the circuit node voltages. A rapid change such as that TEXT: H associated with a switch changing state can cause numerical TEXT: H roundoff or tolerance problems leading to erroneous results TEXT: H or timestep difficulties. The user of switches can improve TEXT: H the situation by taking the following steps: TEXT: H TEXT: First of all it is wise to set ideal switch impedences TEXT: H only high and low enough to be negligible with respect to TEXT: H other circuit elements. Using switch impedences that are TEXT: H close to "ideal" in all cases will aggravate the problem of TEXT: H discontinuities mentioned above. Of course, when modeling TEXT: H real devices such as MOSFETS, the on resistance should be TEXT: H adjusted to a realistic level depending on the size of the TEXT: H device being modelled. TEXT: H TEXT: If a wide range of ON to OFF resistance must be used in TEXT: H the switches (ROFF/RON >1e+12), then the tolerance on errors TEXT: H allowed during transient analysis should be decreased by TEXT: H using the G.OPTIONS Hline and specifying GTRTOL Hto be less than TEXT: H the default value of 7.0. When switches are placed around TEXT: H capacitors, then the option GCHGTOL Hshould also be reduced. TEXT: H Suggested values for these two options are 1.0 and 1e-16 TEXT: H respectively. These changes inform SPICE3 to be more care- TEXT: H ful around the switch points so that no errors are made due TEXT: H to the rapid change in the circuit. TEXT: H TEXT: SEEALSO: spice:sw SUBJECT: urc TITLE: URC Models TEXT: TEXT: The URC model is derived from a model proposed by L. TEXT: H Gertzberrg in 1974. The model is accomplished by a subcir- TEXT: H cuit type expansion of the URC line into a network of lumped TEXT: H RC segments with internally generated nodes. The RC seg- TEXT: H ments are in a geometric progression, increasing toward the TEXT: H middle of the URC line, with K as a proportionality con- TEXT: H stant. The number of lumped segments used, if not specified TEXT: H on the URC line, is determined by the following formula: TEXT: H TEXT: TEXT: N= logK TEXT: TEXT: log TEXT: | TEXT: | TEXT: | TEXT: FmaxxL TEXT: R_xL TEXT: C_x2xi~i~xl2x| TEXT: | K TEXT: (K-1)_____| TEXT: |2 TEXT: | TEXT: | TEXT: |______________________________ TEXT: H TEXT: TEXT: The URC line will be made up strictly of resistor and TEXT: H capacitor segments unless the GISPERL Hparameter is given a TEXT: H non-zero value, in which case the capacitors are replaced TEXT: H with reverse biased diodes with a zero-bias junction capaci- TEXT: H tance equivalent to the capacitance replaced, and with a TEXT: H saturation current of GISPERL Hamps per meter of transmission TEXT: H line and an optional series resistance equivalent to GRSPERL TEXT: H Hohms per meter. TEXT: H TEXT: name parameter units default example area TEXT: H TEXT: H 1 GK HPropagation Constant - 2.0 1.2 - TEXT: H 2 GFMAX HMaximum Frequency of interest Hz 1.0G 6.5MEG - TEXT: H 3 GRPERL HResistance per unit length Ohm/m 1000 10 - TEXT: H 4 GCPERL HCapacitance per unit length F/m 1.0E-15 1PF - TEXT: H 5 GISPERL HSaturation Current per unit length Amp/m 0 - - TEXT: H 6 GRSPERL HDiode Resistance per unit length Ohm/m 0 - - TEXT: H TEXT: SEEALSO: spice:u SUBJECT: options TITLE: Circuit Options TEXT: TEXT: The following options are recognised by SPICE3. Not TEXT: H included are options recognised by the front-end and options TEXT: H supported for backward compatibility with SPICE2. TEXT: H TEXT: SUBTOPIC: spice:abstol spice:bypass spice:chgtol SUBTOPIC: spice:defad spice:defas spice:defl SUBTOPIC: spice:defw spice:gmin spice:itl1 SUBTOPIC: spice:itl2 spice:itl5 spice:pivrel SUBTOPIC: spice:pivtol spice:reltol spice:tnom SUBTOPIC: spice:trtol spice:vntol SEEALSO: nutmeg:set SEEALSO: spice:option SUBJECT: abstol TITLE: abstol TEXT: TEXT: ABSTOL = x TEXT: H Resets the absolute current error tolerance of the pro- TEXT: H gram. The default value is 1 picoamp. TEXT: H TEXT: SUBJECT: bypass TITLE: bypass TEXT: TEXT: BYPASS TEXT: H The bypass option... TEXT: H TEXT: SUBJECT: chgtol TITLE: chgtol TEXT: TEXT: CHGTOL = x TEXT: H Resets the charge tolerance of the program. The TEXT: H default value is 1.0E-14. TEXT: H TEXT: SUBJECT: defad TITLE: defad TEXT: TEXT: DEFAD = x TEXT: H Resets the value for MOS drain diffusion area; the TEXT: H default is 0.0. TEXT: H TEXT: SEEALSO: spice:m SUBJECT: defas TITLE: defas TEXT: TEXT: DEFAS = x TEXT: H Resets the value for MOS source diffusion area; the TEXT: H default is 0.0. TEXT: H TEXT: SEEALSO: spice:m SUBJECT: defl TITLE: defl TEXT: TEXT: DEFL = x TEXT: H Resets the value for MOS channel length; the default is TEXT: H 100.0 micrometer. TEXT: H TEXT: SEEALSO: spice:m SUBJECT: defw TITLE: defw TEXT: TEXT: DEFW = x TEXT: H Resets the value for MOS channel width; the default is TEXT: H 100.0 micrometer. TEXT: H TEXT: SEEALSO: spice:m SUBJECT: gmin TITLE: gmin TEXT: TEXT: GMIN = x TEXT: H Resets the value of GMIN, the minimum conductance TEXT: H allowed by the program. The default value is 1.0E-12. TEXT: H TEXT: SUBJECT: itl1 TITLE: itl1 TEXT: TEXT: ITL1 = x TEXT: Resets the dc iteration limit. The default is 100. TEXT: SEEALSO: spice:dcanalysis SUBJECT: itl2 TITLE: itl2 TEXT: TEXT: ITL2 = x TEXT: Resets the dc transfer curve iteration limit. The TEXT: default is 50. TEXT: SEEALSO: spice:dcanalysis SUBJECT: itl5 TITLE: itl5 TEXT: TEXT: ITL5 = x TEXT: H Resets the transient analysis total iteration limit. TEXT: H The default is 5000. Set ITL5=0 to omit this test. TEXT: H TEXT: SEEALSO: spice:trananalysis SUBJECT: pivrel TITLE: pivrel TEXT: TEXT: PIVREL = x TEXT: H Resets the relative ratio between the largest column TEXT: H entry and an acceptable pivot value. The default value TEXT: H is 1.0E-3. In the numerical pivoting algorithm the TEXT: H allowed minimum pivot value is determined by TEXT: H EPSREL=AMAX1(PIVREL*MAXVAL,PIVTOL) where MAXVAL is the TEXT: H maximum element in the column where a pivot is sought TEXT: H (partial pivoting). TEXT: H TEXT: SUBJECT: pivtol TITLE: pivtol TEXT: TEXT: PIVTOL = x TEXT: H Resets the absolute minimum value for a matrix entry to TEXT: H be accepted as a pivot. The default value is 1.0E-13. TEXT: H TEXT: SUBJECT: reltol TITLE: reltol TEXT: TEXT: RELTOL = x TEXT: H Resets the relative error tolerance of the program. TEXT: H The default value is 0.001 (0.1 percent). TEXT: H TEXT: SUBJECT: tnom TITLE: tnom TEXT: TEXT: TNOM = x TEXT: H Resets the nominal temperature. The default value is TEXT: H 27 deg C (300 deg K). TEXT: H TEXT: SUBJECT: trtol TITLE: trtol TEXT: TEXT: TRTOL = x TEXT: H Resets the transient error tolerance. The default TEXT: H value is 7.0. This parameter is an estimate of the TEXT: H factor by which SPICE overestimates the actual trunca- TEXT: H tion error. TEXT: H TEXT: SUBJECT: vntol TITLE: vntol TEXT: TEXT: VNTOL = x TEXT: H Resets the absolute voltage error tolerance of the pro- TEXT: H gram. The default value is 1 microvolt. TEXT: H TEXT: SUBJECT: convergence TITLE: Convergence TEXT: TEXT: Both dc and transient solutions are obtained by an TEXT: H iterative process which is terminated when both of the fol- TEXT: H lowing conditions hold: TEXT: H TEXT: 1) The nonlinear branch currents converge to within a TEXT: H tolerance of 0.1 percent or 1 picoamp (1.0E-12 Amp), TEXT: H whichever is larger. TEXT: H TEXT: 2) The node voltages converge to within a tolerance of 0.1 TEXT: H percent or 1 microvolt (1.0E-6 Volt), whichever is TEXT: H larger. TEXT: H TEXT: Although the algorithm used in SPICE has been found to TEXT: H be very reliable, in some cases it will fail to converge to TEXT: H a solution. When this failure occurs, the program will ter- TEXT: H minate the job. TEXT: H TEXT: Failure to converge in dc analysis is usually due to an TEXT: H error in specifying circuit connections, element values, or TEXT: H model parameter values. Regenerative switching circuits or TEXT: H circuits with positive feedback probably will not converge TEXT: H in the dc analysis unless the GOFF Hoption is used for some of TEXT: H the devices in the feedback path, or the G.NODESET Hline is TEXT: H used to force the circuit to converge to the desired state. TEXT: H TEXT: SUBJECT: elements TITLE: Circuit Elements TEXT: TEXT: The following circuit elements are available in SPICE. TEXT: H TEXT: SUBTOPIC: spice:cl spice:depsource spice:iv SUBTOPIC: spice:k spice:r spice:semicond SUBTOPIC: spice:sw spice:t SUBJECT: cl TITLE: Capacitors and Inductors TEXT: TEXT: GGeneral form: TEXT: H TEXT: CH_X_X_X_X_X_X_X _N+ _N- _V_A_L_U_E <GICH=_I_N_C_O_N_D> TEXT: H LYYYYYYY N+ N- VALUE <GICH=_I_N_C_O_N_D> TEXT: H TEXT: GExamples: TEXT: H TEXT: CHBYP 13 0 1UF TEXT: H GCHOSC 17 23 10U IC=3V TEXT: H GLHLINK 42 69 1UH TEXT: H GLHSHUNT 23 51 10U IC=15.7MA TEXT: H TEXT: TEXT: _N+ and _N- are the positive and negative element nodes, TEXT: H respectively. _V_A_L_U_E is the capacitance in Farads or the TEXT: H inductance in Henries. TEXT: H TEXT: For the capacitor, the (optional) initial condition is TEXT: H the initial (time-zero) value of capacitor voltage (in TEXT: H Volts). For the inductor, the (optional) initial condition TEXT: H is the initial (time-zero) value of inductor current (in TEXT: H Amps) that flows from _N+, through the inductor, to _N-. Note TEXT: H that the initial conditions (if any) apply only if the GUIC TEXT: H Hoption is specified on the G.TRAN Hline. TEXT: H TEXT: SEEALSO: spice:c SUBJECT: depsource TITLE: Linear Dependent Sources TEXT: TEXT: SPICE allows circuits to contain linear dependent TEXT: H sources characterized by any of the four equations TEXT: H TEXT: i = _g * v v = _e * v i = _f * i v = _h * i TEXT: H TEXT: where _g, _e, _f, and _h are constants representing TEXT: H transconductance,voltage gain, current gain, and transresis- TEXT: H tance, respectively. TEXT: H TEXT: SUBTOPIC: spice:VCVS spice:f spice:g SUBTOPIC: spice:h SUBJECT: VCVS TITLE: Voltage-Controlled Voltage Sources TEXT: TEXT: GGeneral form: TEXT: H TEXT: EH_X_X_X_X_X_X_X _N+ _N- _N_C+ _N_C- _V_A_L_U_E TEXT: H TEXT: GExamples: TEXT: H TEXT: EH1 2 3 14 1 2.0 TEXT: H TEXT: TEXT: _N+ is the positive node, and _N- is the negative node. TEXT: H _N_C+ and _N_C- are the positive and negative controlling nodes, TEXT: H respectively. _V_A_L_U_E is the voltage gain. TEXT: H TEXT: SUBJECT: f TITLE: Current-Controlled Current Sources TEXT: TEXT: GGeneral form: TEXT: H TEXT: FH_X_X_X_X_X_X_X _N+ _N- _V_N_A_M _V_A_L_U_E TEXT: H TEXT: GExamples: TEXT: H TEXT: FH1 13 5 VSENS 5 TEXT: H TEXT: TEXT: _N+ and _N- are the positive and negative nodes, respec- TEXT: H tively. Current flow is from the positive node, through the TEXT: H source, to the negative node. _V_N_A_M is the name of a voltage TEXT: H source through which the controlling current flows. The TEXT: H direction of positive controlling current flow is from the TEXT: H positive node, through the source, to the negative node of TEXT: H _V_N_A_M. _V_A_L_U_E is the current gain. TEXT: H TEXT: SUBJECT: g TITLE: Voltage Controlled Current Sources TEXT: TEXT: GGeneral form: TEXT: H TEXT: GH_X_X_X_X_X_X_X _N+ _N- _N_C+ _N_C- _V_A_L_U_E TEXT: H TEXT: GExamples: TEXT: H TEXT: GH1 2 0 5 0 0.1MMHO TEXT: H TEXT: TEXT: _N+ and _N- are the positive and negative nodes, respec- TEXT: H tively. Current flow is from the positive node, through the TEXT: H source, to the negative node. _N_C+ and _N_C- are the positive TEXT: H and negative controlling nodes, respectively. _V_A_L_U_E is the TEXT: H transconductance (in mhos). TEXT: H TEXT: SUBJECT: h TITLE: Current-Controlled Voltage Sources TEXT: TEXT: GGeneral form: TEXT: H TEXT: HH_X_X_X_X_X_X_X _N+ _N- _V_N_A_M _V_A_L_U_E TEXT: H TEXT: GExamples: TEXT: H TEXT: HHX 5 17 VZ 0.5K TEXT: H TEXT: TEXT: _N+ and _N- are the positive and negative nodes, respec- TEXT: H tively. _V_N_A_M is the name of a voltage source through which TEXT: H the controlling current flows. The direction of positive TEXT: H controlling current flow is from the positive node, through TEXT: H the source, to the negative node of _V_N_A_M. _V_A_L_U_E is the TEXT: H transresistance (in ohms). TEXT: H TEXT: SUBJECT: iv TITLE: Independent Sources TEXT: TEXT: GGeneral form: TEXT: H TEXT: VH_X_X_X_X_X_X_X _N+ _N- <<_D_C> _D_C/_T_R_A_N _V_A_L_U_E> <_A_C <_A_C_M_A_G <_A_C_P_H_A_S_E>>> TEXT: H GIH_Y_Y_Y_Y_Y_Y_Y _N+ _N- <<_D_C> _D_C/_T_R_A_N _V_A_L_U_E> <_A_C <_A_C_M_A_G <_A_C_P_H_A_S_E>>> TEXT: H TEXT: GExamples: TEXT: H TEXT: VHCC 10 0 GDC H6 TEXT: H GVHIN 13 2 0.001 GAC H1 GSINH(0 1 1MEG) TEXT: H GIHSRC 23 21 GAC H0.333 45.0 GSFFMH(0 1 10K 5 1K) TEXT: H GVHMEAS 12 9 TEXT: H TEXT: TEXT: _N+ and _N- are the positive and negative nodes, respec- TEXT: H tively. Note that voltage sources need not be grounded. TEXT: H Positive current is assumed to flow from the positive node, TEXT: H through the source, to the negative node. A current source TEXT: H of positive value, will force current to flow out of the _N+ TEXT: H node, through the source, and into the _N- node. Voltage TEXT: H sources, in addition to being used for circuit excitation, TEXT: H are the 'ammeters' for SPICE, that is, zero valued voltage TEXT: H sources may be inserted into the circuit for the purpose of TEXT: H measuring current. They will, of course, have no effect on TEXT: H circuit operation since they represent short-circuits. TEXT: H TEXT: _D_C/_T_R_A_N is the dc and transient analysis value of the TEXT: H source. If the source value is zero both for dc and tran- TEXT: H sient analyses, this value may be omitted. If the source TEXT: H value is time-invariant (e.g., a power supply), then he TEXT: H value may optionally be preceded by the letters DC. TEXT: H TEXT: _A_C_M_A_G is the ac magnitude and _A_C_P_H_A_S_E is the ac phase. TEXT: H The source is set to this value in the ac analysis. If TEXT: H _A_C_M_A_G is omitted following the keyword GACH, a value of unity TEXT: H is assumed. If _A_C_P_H_A_S_E is omitted, a value of zero is TEXT: H assumed. If the source is not an ac small-signal input, the TEXT: H keyword GAC Hand the ac values are omitted. TEXT: H TEXT: Any independent source can be assigned a time-dependent TEXT: H value for transient analysis. If a source is assigned a TEXT: H time-dependent value, the time-zero value is used for dc TEXT: H analysis. There are five independent source functions: TEXT: H pulse, exponential, sinusoidal, piece-wise linear, and TEXT: H single-frequency FM. If parameters other than source values TEXT: H are omitted or set to zero, the default values shown will be TEXT: H assumed. (_T_S_T_E_P is the printing increment and _T_S_T_O_P is the TEXT: H final time (see the G.TRAN Hline for explanation)). TEXT: H TEXT: SUBTOPIC: spice:Exponential spice:fm spice:pulse SUBTOPIC: spice:pwl spice:sin SUBJECT: Exponential TITLE: Exponential TEXT: TEXT: GEXPH(_V_1 _V_2 _T_D_1 _T_A_U_1 _T_D_2 _T_A_U_2) TEXT: H TEXT: GExamples: TEXT: H TEXT: VHIN 3 0 GEXPH(-4 -1 2NS 30NS 60NS 40NS) TEXT: H TEXT: TEXT: Gparameters default values units TEXT: H TEXT: H V1 (initial value) HVolts or Amps TEXT: H GV2 (pulsed value) HVolts or Amps TEXT: H GTD1 (rise delay time) H0.0 seconds TEXT: H GTAU1 (rise time constant) HTSTEP seconds TEXT: H GTD2 (fall delay time) HTD1+TSTEP seconds TEXT: H GTAU2 (fall time constant) HTSTEP seconds TEXT: H TEXT: TEXT: The shape of the waveform is described by the following TEXT: H table: TEXT: H TEXT: time value TEXT: H TEXT: H 0 to TD1 V1 TEXT: H TD1 to TD2 V1+(V2-V1)*(1-exp(-(time-TD1)/TAU1)) TEXT: H TD2 to TSTOP V1+(V2-V1)*(1-exp(-(time-TD1)/TAU1)) TEXT: H +(V1-V2)*(1-exp(-(time-TD2)/TAU2)) TEXT: H TEXT: SUBJECT: fm TITLE: Single-Frequency FM TEXT: TEXT: GSFFMH(_V_O _V_A _F_C _M_D_I _F_S) TEXT: H TEXT: GExamples: TEXT: H TEXT: VH1 12 0 GSFFMH(0 1M 20K 5 1K) TEXT: H TEXT: TEXT: Gparameters default values units TEXT: H TEXT: H VO (offset) HVolts or Amps TEXT: H GVA (amplitude) HVolts or Amps TEXT: H GFC (carrier frequency) H1/TSTOP Hz TEXT: H GMDI (modulation index) TEXT: H FS (signal frequency) H1/TSTOP Hz TEXT: H TEXT: TEXT: The shape of the waveform is described by the following TEXT: H equation: TEXT: H TEXT: value = VO + VA*sine((twopi*FC*time) + MDI*sine(twopi*FS*time)) TEXT: H TEXT: SUBJECT: pulse TITLE: Pulse TEXT: TEXT: GPULSEH(_V_1 _V_2 _T_D _T_R _T_F _P_W _P_E_R) TEXT: H TEXT: GExamples: TEXT: H TEXT: VHIN 3 0 GPULSEH(-1 1 2NS 2NS 2NS 50NS 100NS) TEXT: H TEXT: TEXT: Gparameters Hdefault values units TEXT: H TEXT: H GV1 (initial value) HVolts or Amps TEXT: H GV2 (pulsed value) HVolts or Amps TEXT: H GTD (delay time) H0.0 seconds TEXT: H GTR (rise time) HTSTEP seconds TEXT: H GTF (fall time) HTSTEP seconds TEXT: H GPW (pulse width) HTSTOP seconds TEXT: H GPER(period) HTSTOP seconds TEXT: H TEXT: TEXT: A single pulse so specified is described by the follow- TEXT: H ing table: TEXT: H TEXT: time value TEXT: H TEXT: H 0 V1 TEXT: H TD V1 TEXT: H TD+TR V2 TEXT: H TD+TR+PW V2 TEXT: H TD+TR+PW+TF V1 TEXT: H TSTOP V1 TEXT: H TEXT: TEXT: Intermediate points are determined by linear interpolation. TEXT: H TEXT: SUBJECT: pwl TITLE: Piece-Wise Linear TEXT: TEXT: GPWLH(_T_1 _V_1 <_T_2 _V_2 _T_3 _V_3 _T_4 _V_4 ...>) TEXT: H TEXT: GExamples: TEXT: H TEXT: VHCLOCK 7 5 GPWLH(0 -7 10NS -7 11NS -3 17NS -3 18NS -7 50NS -7) TEXT: H TEXT: TEXT: Each pair of values (_T_i, _V_i) specifies that the value TEXT: H of the source is _V_i (in Volts or Amps) at time = _T_i. The TEXT: H value of the source at intermediate values of time is deter- TEXT: H mined by using linear interpolation on the input values. TEXT: H TEXT: SUBJECT: sin TITLE: Sinusoidal TEXT: TEXT: GSINH(_V_O _V_A _F_R_E_Q _T_D _T_H_E_T_A) TEXT: H TEXT: GExamples: TEXT: H TEXT: VHIN 3 0 GSINH(0 1 100MEG 1NS 1E10) TEXT: H TEXT: TEXT: Gparameters default value units TEXT: H TEXT: H VO (offset) Volts or Amps TEXT: H VA (amplitude) Volts or Amps TEXT: H FREQ (frequency) 1/TSTOP Hz TEXT: H TD (delay) 0.0 seconds TEXT: H THETA (damping factor) 0.0 1/seconds TEXT: H TEXT: TEXT: HThe shape of the waveform is described by the following TEXT: H table: TEXT: H TEXT: time value TEXT: H TEXT: H 0 to TD VO TEXT: H TD to TSTOP VO + VA*exp(-(time-TD)*THETA)* TEXT: H sine(twopi*FREQ*(time+TD)) TEXT: H TEXT: SUBJECT: k TITLE: Coupled (Mutual) Inductors TEXT: TEXT: GGeneral form: TEXT: H TEXT: KHXXXXXXX GLH_Y_Y_Y_Y_Y_Y_Y GLH_Z_Z_Z_Z_Z_Z_Z _V_A_L_U_E TEXT: H TEXT: GExamples: TEXT: H TEXT: KH43 GLHAA GLHBB 0.999 TEXT: H GKHXFRMR GLH1 GLH2 0.87 TEXT: H TEXT: TEXT: GLH_Y_Y_Y_Y_Y_Y_Y _a_n_d GLH_Z_Z_Z_Z_Z_Z_Z _a_r_e _t_h_e _n_a_m_e_s _o_f _t_h_e _t_w_o _c_o_u_p_l_e_d TEXT: H _i_n_d_u_c_t_o_r_s, _a_n_d _V_A_L_U_E is the coefficient of coupling, K, TEXT: H which must be greater than 0 and less than or equal to 1. TEXT: H Using the 'dot' convention, place a 'dot' on the first node TEXT: H of each inductor. TEXT: H TEXT: SEEALSO: spice:cl SUBJECT: semicond TITLE: Semiconductor Devices TEXT: TEXT: The elements described to this point typically require TEXT: H only a few parameter values. However, the models for the TEXT: H semiconductor devices that are included in the SPICE program TEXT: H require many parameter values. Often, many devices in a TEXT: H circuit are defined by the same set of device model parame- TEXT: H ters. For these reasons, a set of device model parameters TEXT: H is defined on a separate G.MODEL Hline and assigned a unique TEXT: H model name. The device element lines in SPICE then refer to TEXT: H the model name. This scheme alleviates the need to specify TEXT: H all of the model parameters on each device element line. TEXT: H TEXT: Each device element line contains the device name, the TEXT: H nodes to which the device is connected, and the device model TEXT: H name. In addition, other optional parameters may be speci- TEXT: H fied for some devices: geometric factors and an initial TEXT: H condition. TEXT: H TEXT: The area factor used on the diode, BJT, JFET, and MES- TEXT: H FET device lines determines the number of equivalent paral- TEXT: H lel devices of a specified model. The affected parameters TEXT: H are marked with an asterisk under the heading 'area' in the TEXT: H model descriptions below. Several geometric factors associ- TEXT: H ated with the channel and the drain and source diffusions TEXT: H can be specified on the MOSFET device line. TEXT: H TEXT: Two different forms of initial conditions may be speci- TEXT: H fied for some devices. The first form is included to TEXT: H improve the dc convergence for circuits that contain more TEXT: H than one stable state. If a device is specified GOFFH, the dc TEXT: H operating point is determined with the terminal voltages for TEXT: H that device set to zero. After convergence is obtained, the TEXT: H program continues to iterate to obtain the exact value for TEXT: H the terminal voltages. If a circuit has more than one dc TEXT: H stable state, the GOFF Hoption can be used to force the solu- TEXT: H tion to correspond to a desired state. If a device is TEXT: H specified GOFF Hwhen in reality the device is conducting, the TEXT: H program will still obtain the correct solution (assuming the TEXT: H solutions converge) but more iterations will be required TEXT: H since the program must independently converge to two TEXT: H separate solutions. The G.NODESET Hline serves a similar pur- TEXT: H pose as the OFF option. The G.NODESET Hoption is easier to TEXT: H apply and is the preferred means to aid convergence. TEXT: H TEXT: The second form of initial conditions are specified for TEXT: H use with the transient analysis. These are true 'initial TEXT: H conditions' as opposed to the convergence aids above. See TEXT: H the description of the G.IC Hline and the G.TRAN Hline for a TEXT: H detailed explanation of initial conditions. TEXT: H TEXT: SUBTOPIC: spice:Capacitors spice:juncd spice:j SUBTOPIC: spice:m spice:q spice:r SUBTOPIC: spice:u spice:z SUBJECT: Capacitors TITLE: Capacitors TEXT: TEXT: GGeneral form: TEXT: H TEXT: CH_X_X_X_X_X_X_X _N_1 _N_2 <_V_A_L_U_E> <_M_N_A_M_E> <_L=_L_E_N_G_T_H> <_W=_W_I_D_T_H> <_I_C=_V_A_L> TEXT: H TEXT: GExamples: TEXT: H TEXT: CHLOAD 2 10 10P TEXT: H GCHMOD 3 7 CMODEL L=10u W=1u TEXT: H TEXT: TEXT: This is the more general form of the capacitor TEXT: H presented in section 6.2, and allows for the calculation of TEXT: H the actual capacitance value from strictly geometric infor- TEXT: H mation and the specifications of the process. If _V_A_L_U_E is TEXT: H specified, it defines the capacitance. If _M_N_A_M_E is speci- TEXT: H fied, then the capacitance is calculated from the process TEXT: H information in the model _M_N_A_M_E and the given _L_E_N_G_T_H and TEXT: H _W_I_D_T_H. If _V_A_L_U_E is not specified, then _M_N_A_M_E and _L_E_N_G_T_H TEXT: H Gmust Hbe specified. If _W_I_D_T_H is not specified, then it will TEXT: H be taken from the default width given in the model. Either TEXT: H _V_A_L_U_E or _M_N_A_M_E, _L_E_N_G_T_H, and _W_I_D_T_H may be specified, but not TEXT: H both sets. TEXT: H TEXT: SEEALSO: spice:cl SUBJECT: juncd TITLE: Junction Diodes TEXT: TEXT: GGeneral form: TEXT: H TEXT: DH_X_X_X_X_X_X_X _N+ _N- _M_N_A_M_E <_A_R_E_A> <GOFFH> TEXT: H TEXT: GExamples: TEXT: H TEXT: DHBRIDGE 2 10 DIODE1 TEXT: H GDHCLMP 3 7 DMOD 3.0 IC=0.2 TEXT: H TEXT: TEXT: _N+ and _N- are the positive and negative nodes, respec- TEXT: H tively. _M_N_A_M_E is the model name, _A_R_E_A is the area factor, TEXT: H and GOFF Hindicates an (optional) starting condition on the TEXT: H device for dc analysis. If the area factor is omitted, a TEXT: H value of 1.0 is assumed. The (optional) initial condition TEXT: H specification using GICH=_V_D is intended for use with the GUIC TEXT: H Hoption on the Gother than the quiescent operating point. TEXT: H TEXT: SEEALSO: spice:d SUBJECT: j TITLE: Junction Field-Effect Transistors TEXT: TEXT: GGeneral form: TEXT: H TEXT: JH_X_X_X_X_X_X_X _N_D _N_G _N_S _M_N_A_M_E <_A_R_E_A> <GOFFH> <_I_C=_V_D_S,_V_G_S> TEXT: H TEXT: GExamples: TEXT: H TEXT: JH1 7 2 3 JM1 GOFF TEXT: H TEXT: TEXT: H_N_D, _N_G, and _N_S are the drain, gate, and source nodes, TEXT: H respectively. _M_N_A_M_E is the model name, _A_R_E_A is the area TEXT: H factor, and GOFF Hindicates an (optional) initial condition on TEXT: H the device for dc analysis. If the area factor is omitted, TEXT: H a value of 1.0 is assumed. The (optional) initial condition TEXT: H specificaion using GICH=_V_D_S,_V_G_S is intended for use with the TEXT: H GUIC Hoption on the G.TRAN Hline, when a transient analysis is TEXT: H desired starting from other than the quiescent operating TEXT: H point. See the description of the G.IC Hline for a better way TEXT: H to set initial conditions. TEXT: H TEXT: SEEALSO: spice:jfet SUBJECT: m TITLE: MOSFET's TEXT: TEXT: GGeneral form: TEXT: H TEXT: MH_X_X_X_X_X_X_X _N_D _N_G _N_S _N_B _M_N_A_M_E <_L=_V_A_L> <_W=_V_A_L> <_A_D=_V_A_L> <_A_S=_V_A_L> TEXT: H + <_P_D=_V_A_L> <_P_S=_V_A_L> <_N_R_D=_V_A_L> <_N_R_S=_V_A_L> <GOFFH> <_I_C=_V_D_S,_V_G_S,_V_B_S> TEXT: H TEXT: GExamples: TEXT: H TEXT: MH1 24 2 0 20 TYPE1 TEXT: H GMH31 2 17 6 10 MODM L=5U W=2U TEXT: H GMH1 2 9 3 0 MOD1 L=10U W=5U AD=100P AS=100P PD=40U PS=40U TEXT: H TEXT: TEXT: _N_D, _N_G, _N_S, and _N_B are the drain, gate, source, and TEXT: H bulk (substrate) nodes, respectively. _M_N_A_M_E is the model TEXT: H name. _L and _W are the channel length and width, in meters. TEXT: H _A_D and _A_S are the areas of the drain and source diffusions, TEXT: H in sq-meters. Note that the suffix `U' specifies microns TEXT: H (1E-6 m) and P sq-microns (1E-12 sq-m). If any of _L, _W, _A_D, TEXT: H or _A_S are not specified, default values are used. The use TEXT: H of defaults simplifies input file preparation, as well as TEXT: H the editing required if device geometries are to be changed. TEXT: H _P_D and _P_S are the perimeters of the drain and source junc- TEXT: H tions, in meters. _N_R_D and _N_R_S designate the equivalent TEXT: H number of squares of the drain and source diffusions; these TEXT: H values multiply the sheet resistance _R_S_H specified on the TEXT: H G.MODEL Hline for an accurate representation of the parasitic TEXT: H series drain and source resistance of each transistor. _P_D TEXT: H and _P_S default to 0.0 while _N_R_D and _N_R_S to 1.0. GOFF Hindi- TEXT: H cates an (optional) initial condition on the device for dc TEXT: H analysis. The (optional) initial condition specification TEXT: H using GICH=_V_D_S,_V_G_S,_V_B_S is intended for use with the GUIC Hoption TEXT: H on the G.TRAN Hline, when a transient analysis is desired TEXT: H starting from other than the quiescent operating point. See TEXT: H the description of the G.IC Hline for a better and more con- TEXT: H venient way to specify transient initial conditions. TEXT: H TEXT: SEEALSO: spice:mosfet SUBJECT: q TITLE: Bipolar Junction Transistors TEXT: TEXT: GGeneral form: TEXT: H TEXT: QH_X_X_X_X_X_X_X _N_C _N_B _N_E <_N_S> _M_N_A_M_E <_A_R_E_A> <GOFFH> <_I_C=_V_B_E,_V_C_E> TEXT: H TEXT: GExamples: TEXT: H TEXT: QH23 10 24 13 QMOD IC=0.6,5.0 TEXT: H GQH50A 11 26 4 20 MOD1 TEXT: H TEXT: TEXT: _N_C, _N_B, and _N_E are the collector, base, and emitter TEXT: H nodes, respectively. _N_S is the (optional) substrate node. TEXT: H If unspecified, ground is used. _M_N_A_M_E is the model name, TEXT: H _A_R_E_A is the area factor, and GOFF Hindicates an (optional) TEXT: H initial condition on the device for the dc analysis. If the TEXT: H area factor is omitted, a value of 1.0 is assumed. The TEXT: H (optional) initial condition specification using GICH=_V_B_E,_V_C_E TEXT: H is intended for use with the GUIC Hoption on the G.TRAN Hline, TEXT: H when a transient analysis is desired starting from other TEXT: H than the quiescent operating point. See the G.IC Hline TEXT: H description for a better way to set transient initial condi- TEXT: H tions. TEXT: H TEXT: SEEALSO: spice:bjt SUBJECT: r TITLE: Resistors TEXT: TEXT: GGeneral form: TEXT: H TEXT: RH_X_X_X_X_X_X_X _N_1 _N_2 <_V_A_L_U_E> <_M_N_A_M_E> <_L=_L_E_N_G_T_H> <_W=_W_I_D_T_H> TEXT: H TEXT: GExamples: TEXT: H TEXT: RHLOAD 2 10 10K TEXT: H GRHMOD 3 7 RMODEL L=10u W=1u TEXT: H TEXT: TEXT: This is the more general form of the resistor presented TEXT: H in section 6.1, and allows the modeling of temperature TEXT: H effects and for the calculation of the actual resistance TEXT: H value from strictly geometric information and the specifica- TEXT: H tions of the process. If _V_A_L_U_E is specified, it overrides TEXT: H the geometric information and defines the resistance. If TEXT: H _M_N_A_M_E is specified, then the resistance may be calculated TEXT: H from the process information in the model _M_N_A_M_E and the TEXT: H given _L_E_N_G_T_H and _W_I_D_T_H. If _V_A_L_U_E is not specified, then TEXT: H _M_N_A_M_E and _L_E_N_G_T_H Gmust Hbe specified. If _W_I_D_T_H is not speci- TEXT: H fied, then it will be taken from the default width given in TEXT: H the model. TEXT: H TEXT: SEEALSO: spice:rmodel SUBJECT: u TITLE: URC's (Lossy) TEXT: TEXT: GGeneral form: TEXT: H TEXT: UH_X_X_X_X_X_X_X _N_1 _N_2 _N_3 _M_N_A_M_E _L=_L_E_N <_N=_L_U_M_P_S> TEXT: H TEXT: GExamples: TEXT: H TEXT: UH1 1 2 0 URCMOD L=50U TEXT: H GUHRC2 1 12 2 UMODL l=1MIL N=6 TEXT: H TEXT: TEXT: _N_1 and _N_2 are the two element nodes the RC line con- TEXT: H nects, while _N_3 is the node to which the capacitances are TEXT: H connected. _M_N_A_M_E is the model name, _L_E_N is the length of TEXT: H the RC line in meters. _L_U_M_P_S, if specified, is the number TEXT: H of lumped segments to use in modeling the RC line (see the TEXT: H model description for the action taken if this parameter is TEXT: H omitted). TEXT: H TEXT: SEEALSO: spice:t SUBJECT: z TITLE: MESFET's TEXT: TEXT: GGeneral form: TEXT: H TEXT: ZH_X_X_X_X_X_X_X _N_D _N_G _N_S _M_N_A_M_E <_A_R_E_A> <GOFFH> <_I_C=_V_D_S,_V_G_S> TEXT: H TEXT: GExamples: TEXT: H TEXT: ZH1 7 2 3 ZM1 GOFF TEXT: H TEXT: TEXT: H_N_D, _N_G, and _N_S are the drain, gate, and source nodes, TEXT: H respectively. _M_N_A_M_E is the model name, _A_R_E_A is the area TEXT: H factor, and GOFF Hindicates an (optional) initial condition on TEXT: H the device for dc analysis. If the area factor is omitted, TEXT: H a value of 1.0 is assumed. The (optional) initial condition TEXT: H specification, using GICH=_V_D_S,_V_G_S is intended for use with the TEXT: H GUIC Hoption on the G.TRAN Hline, when a transient analysis is TEXT: H desired starting from other than the quiescent operating TEXT: H point. See the description of the G.IC Hline for a better way TEXT: H to set initial conditions. TEXT: H TEXT: SEEALSO: spice:mesfet SUBJECT: sw TITLE: Switches TEXT: TEXT: GGeneral form: TEXT: H TEXT: SH_X_X_X_X_X_X_X _N+ _N- _N_C+ _N_C- _M_O_D_E_L G TEXT: H WH_Y_Y_Y_Y_Y_Y_Y _N+ _N- _V_N_A_M _M_O_D_E_L G TEXT: H TEXT: Examples: TEXT: H TEXT: SH1 1 2 3 4 SWITCH1 GON TEXT: H SH2 5 6 3 0 SM2 GOFF TEXT: H SHWITCH1 1 2 10 0 SMODEL1 TEXT: H GWH1 1 2 VCLOCK SWITCHMOD1 TEXT: H GWH2 3 0 VRAMP SM1 GON TEXT: H WHRESET 5 6 VCLCK LOSSYSWITCH GOFF TEXT: H TEXT: TEXT: HNodes _N+ and _N- are the nodes between which the switch TEXT: H terminals are connected. The model name is mandatory while TEXT: H the initial conditions are optional. For the voltage con- TEXT: H trolled switch, nodes _N_C+ and _N_C- are the positive and nega- TEXT: H tive controlling nodes respectively. For the current con- TEXT: H trolled switch, the controlling current is that through the TEXT: H specified voltage source. The direction of positive con- TEXT: H trolling current flow is from the positive node, through the TEXT: H source, to the negative node. TEXT: H TEXT: SEEALSO: spice:swmodel SUBJECT: t TITLE: Transmission Lines (Lossless) TEXT: TEXT: GGeneral form: TEXT: H TEXT: TH_X_X_X_X_X_X_X _N_1 _N_2 _N_3 _N_4 GZ0H=_V_A_L_U_E <GTDH=_V_A_L_U_E> TEXT: H + <GF=H_F_R_E_Q <GNLH=_N_R_M_L_E_N>> <GICH=_V_1,_I_1,_V_2,_I_2> TEXT: H TEXT: GExamples: TEXT: H TEXT: TH1 1 0 2 0 Z0=50 GTDH=10NS TEXT: H TEXT: TEXT: _N_1 and _N_2 are the nodes at port 1; _N_3 and _N_4 are the TEXT: H nodes at port 2. _Z_0 is the characteristic impedance. The TEXT: H length of the line may be expressed in either of two forms. TEXT: H The transmission delay, _T_D, may be specified directly (as TEXT: H GTDH=10ns, for example). Alternatively, a frequency GF Hmay be TEXT: H given, together with GNLH, the normalized electrical length of TEXT: H the transmission line with respect to the wavelength in the TEXT: H line at the frequency GFH. If a frequency is specified but GNL TEXT: H His omitted, 0.25 is assumed (that is, the frequency is TEXT: H assumed to be the quarter-wave frequency). Note that TEXT: H although both forms for expressing the line length are indi- TEXT: H cated as optional, one of the two must be specified. TEXT: H TEXT: Note that this element models only one propagating TEXT: H mode. If all four nodes are distinct in the actual circuit, TEXT: H then two modes may be excited. To simulate such a situa- TEXT: H tion, two transmission-line elements are required. (see the TEXT: H example in Appendix A for further clarification.) TEXT: H TEXT: The (optional) initial condition specification consists TEXT: H of the voltage and current at each of the transmission line TEXT: H ports. Note that the initial conditions (if any) apply only TEXT: H if the GUIC Hoption is specified on the G.TRAN Hline. TEXT: H TEXT: SUBJECT: examples TITLE: Circuit Examples TEXT: TEXT: The following circuits are examples. TEXT: H TEXT: SUBTOPIC: spice:ex1 spice:ex2 spice:ex3 SUBTOPIC: spice:ex4 spice:ex5 SUBJECT: ex1 TITLE: Example 1 TEXT: TEXT: The following circuit determines the dc operating point TEXT: H of a simple differential pair. In addition, the ac small- TEXT: H signal response is computed over the frequency range 1Hz to TEXT: H 100MEGHz. TEXT: H TEXT: SIMPLE DIFFERENTIAL PAIR TEXT: H GVHCC 7 0 12 TEXT: H GVHEE 8 0 -12 TEXT: H GVHIN 1 0 AC 1 TEXT: H GRHS1 1 2 1K TEXT: H GRHS2 6 0 1K TEXT: H GQH1 3 2 4 MOD1 TEXT: H GQH2 5 6 4 MOD1 TEXT: H GRHC1 7 3 10K TEXT: H GRHC2 7 5 10K TEXT: H GRHE 4 8 10K TEXT: H G.MODEL HMOD1 NPN BF=50 VAF=50 IS=1.E-12 RB=100 CJC=.5PF TF=.6NS TEXT: H G.AC DEC H10 1 100MEG TEXT: H G.END TEXT: H TEXT: SUBJECT: ex2 TITLE: Example 2 TEXT: TEXT: The following file computes the output characteristics TEXT: H of a MOSFET device over the range 0-10V for VDS and 0-5V for TEXT: H VGS. TEXT: H TEXT: MOS OUTPUT CHARACTERISTICS TEXT: H GVHDS 3 0 TEXT: H GVHGS 2 0 TEXT: H GMH1 1 2 0 0 MOD1 L=4U W=6U AD=10P AS=10P TEXT: H G.MODEL HMOD1 NMOS VTO=-2 NSUB=1.0E15 UO=550 TEXT: H * VIDS MEASURES ID, WE COULD HAVE USED VDS, BUT ID WOULD BE NEGATIVE TEXT: H GVHIDS 3 1 TEXT: H G.DC HVDS 0 10 .5 VGS 0 5 1 TEXT: H G.END TEXT: H TEXT: SUBJECT: ex3 TITLE: Example 3 TEXT: TEXT: The following file determines the dc transfer curve and TEXT: H the transient pulse response of a simple RTL inverter. The TEXT: H input is a pulse from 0 to 5 Volts with delay, rise, and TEXT: H fall times of 2ns and a pulse width of 30ns. The transient TEXT: H interval is 0 to 100ns, with printing to be done every TEXT: H nanosecond. TEXT: H TEXT: SIMPLE RTL INVERTER TEXT: H GVHCC 4 0 5 TEXT: H GVHIN 1 0 PULSE 0 5 2NS 2NS 2NS 30NS TEXT: H GRHB 1 2 10K TEXT: H GQH1 3 2 0 Q1 TEXT: H GRHC 3 4 1K TEXT: H G.MODEL HQ1 NPN BF 20 RB 100 TF .1NS CJC 2PF TEXT: H G.DC HVIN 0 5 0.1 TEXT: H G.TRAN H1NS 100NS TEXT: H G.END TEXT: H TEXT: SUBJECT: ex4 TITLE: Example 4 TEXT: TEXT: The following file simulates a four-bit binary adder, TEXT: H using several subcircuits to describe various pieces of the TEXT: H overall circuit. TEXT: H TEXT: ADDER - 4 BIT ALL-NAND-GATE BINARY ADDER TEXT: H *** SUBCIRCUIT DEFINITIONS TEXT: H G.SUBCKT HNAND 1 2 3 4 TEXT: H * NODES: INPUT(2), OUTPUT, VCC TEXT: H GQH1 9 5 1 QMOD TEXT: H GDH1CLAMP 0 1 DMOD TEXT: H GQH2 9 5 2 QMOD TEXT: H GDH2CLAMP 0 2 DMOD TEXT: H GRHB 4 5 4K TEXT: H GRH1 4 6 1.6K TEXT: H GQH3 6 9 8 QMOD TEXT: H GRH2 8 0 1K TEXT: H GRHC 4 7 130 TEXT: H GQH4 7 6 10 QMOD TEXT: H GDHVBEDROP 10 3 DMOD TEXT: H GQH5 3 8 0 QMOD TEXT: H G.ENDS HNAND TEXT: H G.SUBCKT HONEBIT 1 2 3 4 5 6 TEXT: H * NODES: INPUT(2), CARRY-IN, OUTPUT, CARRY-OUT, VCC TEXT: H GXH1 1 2 7 6 NAND TEXT: H GXH2 1 7 8 6 NAND TEXT: H GXH3 2 7 9 6 NAND TEXT: H GXH4 8 9 10 6 NAND TEXT: H GXH5 3 10 11 6 NAND TEXT: H GXH6 3 11 12 6 NAND TEXT: H GXH7 10 11 13 6 NAND TEXT: H GXH8 12 13 4 6 NAND TEXT: H GXH9 11 7 5 6 NAND TEXT: H G.ENDS HONEBIT TEXT: H .SUBCKT TWOBIT 1 2 3 4 5 6 7 8 9 TEXT: H * NODES: INPUT - BIT0(2) / BIT1(2), OUTPUT - BIT0 / BIT1, TEXT: H * CARRY-IN, CARRY-OUT, VCC TEXT: H GXH1 1 2 7 5 10 9 ONEBIT TEXT: H GXH2 3 4 10 6 8 9 ONEBIT TEXT: H G.ENDS HTWOBIT TEXT: H .SUBCKT FOURBIT 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 TEXT: H * NODES: INPUT - BIT0(2) / BIT1(2) / BIT2(2) / BIT3(2), TEXT: H * OUTPUT - BIT0 / BIT1 / BIT2 / BIT3, CARRY-IN, CARRY-OUT, TEXT: H GVHCC TEXT: H GXH1 1 2 3 4 9 10 13 16 15 TWOBIT TEXT: H GXH2 5 6 7 8 11 12 16 14 15 TWOBIT TEXT: H .ENDS FOURBIT TEXT: H *** DEFINE NOMINAL CIRCUIT TEXT: H G.MODEL HDMOD D TEXT: H G.MODEL HQMOD NPN(BF=75 RB=100 CJE=1PF CJC=3PF) TEXT: H GVHCC 99 0 DC 5V TEXT: H GVHIN1A 1 0 PULSE(0 3 0 10NS 10NS 10NS 50NS) TEXT: H GVHIN1B 2 0 PULSE(0 3 0 10NS 10NS 20NS 100NS) TEXT: H GVHIN2A 3 0 PULSE(0 3 0 10NS 10NS 40NS 200NS) TEXT: H TEXT: TEXT: GVHIN2B 4 0 PULSE(0 3 0 10NS 10NS 80NS 400NS) TEXT: H GVHIN3A 5 0 PULSE(0 3 0 10NS 10NS 160NS 800NS) TEXT: H GVHIN3B 6 0 PULSE(0 3 0 10NS 10NS 320NS 1600NS) TEXT: H GVHIN4A 7 0 PULSE(0 3 0 10NS 10NS 640NS 3200NS) TEXT: H GVHIN4B 8 0 PULSE(0 3 0 10NS 10NS 1280NS 6400NS) TEXT: H GXH1 1 2 3 4 5 6 7 8 9 10 11 12 0 13 99 FOURBIT TEXT: H GRHBIT0 9 0 1K TEXT: H GRHBIT1 10 0 1K TEXT: H GRHBIT2 11 0 1K TEXT: H GRHBIT3 12 0 1K TEXT: H GRHCOUT 13 0 1K TEXT: H *** (FOR THOSE WITH MONEY (AND MEMORY) TO BURN) TEXT: H G.TRAN H1NS 6400NS TEXT: H G.END TEXT: H TEXT: SUBJECT: ex5 TITLE: Example 5 TEXT: TEXT: The following file simulates a transmission-line TEXT: H inverter. Two transmission-line elements are required since TEXT: H two propagation modes are excited. In the case of a coaxial TEXT: H line, the first line (T1) models the inner conductor with TEXT: H respect to the shield, and the second line (T2) models the TEXT: H shield with respect to the outside world. TEXT: H TEXT: TRANSMISSION-LINE INVERTER TEXT: H GVH1 1 0 PULSE(0 1 0 0.1N) TEXT: H GRH1 1 2 50 TEXT: H GXH1 2 0 0 4 TLINE TEXT: H GRH2 4 0 50 TEXT: H G.SUBCKT HTLINE 1 2 3 4 TEXT: H GTH1 1 2 3 4 Z0=50 TD=1.5NS TEXT: H GTH2 2 0 4 0 Z0=100 TD=1NS TEXT: H G.ENDS HTLINE TEXT: H G.TRAN H0.1NS 20NS TEXT: H G.END TEXT: H TEXT: SUBJECT: batchmode TITLE: Batch Mode TEXT: TEXT: If Gspice His given a circuit file as the standard input, or TEXT: H if it is run with the G-b Hflag, it will process the circuit TEXT: H in batch mode, similar to that of SPICE2. Most of the con- TEXT: H trol lines recognised by SPICE2 will be handled, including TEXT: H G.plotH, G.printH, and G.fourH. The format of the output is some- TEXT: H what different, however, and much less information is avail- TEXT: H able from an operating point analysis. Some SPICE2 options TEXT: H are not supported, and only the analysis types Gtran, op, ac, TEXT: H dc, Hand Gpz Hare recognised. TEXT: H TEXT: SEEALSO: spice:dashb 0707070124062000510407550006700000000000021777770500302427700002500000000000spice3c1/lib/helpdir0707070124062000510407550006700000000000021777770500302427700001300000000000TRAILER!!!1777770500302427700002500000000000spice3c1/lib/helpdir0707070124062000510407550006700000000000021777770500302427700001300000000000TRAILER!!!1777770500302427700002500000000000spice3c1/lib/helpdir0707070124062000510407550006700000000000021777770500302427700001300000000000TRAILER!!!1777770500302427700002500000000000spice3c1/lib/helpdir0707070124062000510407550006700