Provided by: alliance_5.0-20110203-4_i386 bug

NAME

       spi - Alliance parser and driver for Spice netlist.

FILES

       The  description  of a netlist foo must be contained  in a .SUBCKT of a
       file named foo.spi. This description can include  others  .SUBCKT  that
       must be in the same file or files included with the command .INCLUDE in
       the source file.

       Recognized elements are :

              Resistances

              Capacitances

              Instances

              MOS  transistors.

       Others elements are not considered.

       Nodes can be either numbered or nameed. It's possible to assign a  name
       to a node which is designated by a number with the directive

       * NET number = name

       in  the  .SUBCKT.  The  word  NET  can  be  replaced by positioning the
       environment variable MBK_SPI_NETNAME.  Names  are  used  to  named  the
       signals and the connectors in the LOFIG.

       On  the  .SUBCKT interface, nodes of the same name followed by a period
       and a number are considered to be on the net, even if no  connected  in
       the circuit. For example :

               .SUBCKT nand2 in out out.1 out.2 vss vdd out.3

       The  nodes  out,  out.1,  out.2 and out.3 are considered to be the same
       signal of the Alliance LOFIG. This feature can be  turned  off  if  the
       environment  variable  MBK_SPI_MERGE  is  set,  and  the  period can be
       replaced  by  another   character   with   the   environment   variable
       MBK_SPI_SEPAR.

       No  particular  information  is needed to build a LOFIG from a .SUBCKT,
       the parser rebuild all signals, even they contains many resistances and
       capacitances. If names are not provided, the parser will create then in
       order to provide a valid lofig.

DRIVER

       The driver creates a Spice netlist of the LOFIG passed as a  parameter.
       The  file contain a single .SUBCKT representing the figure and commands
       .INCLUDE with name of instances contained  in  the  LOFIG.   Nodes  are
       number  named  with  the  directive  *  NET,  or  strings, depending on
       MBK_SPI_NAMEDNODES. A comment at the beginning of the  file  represents
       the interface of the LOFIG. This comment is not used by the parser.

       Environment variable considered are

              MBK_SPI_MODEL

              MBK_SPI_NETNAME

              MBK_SPI_NAMEDNODES

PARSER

       The  parser  load  all  .SUBCKT in memory, even those in files included
       with the command .INCLUDE until the required LOFIG is loaded. For  each
       .SUBCKT  loaded, the parser build the equipotentials with both nodes of
       resistances  on  the  same  net  and  both  nodes  of  capacitances  on
       differents  net  unless  more  information is given. The RCN library is
       used to handle resistances and capacitances.

       As the LOWIRE can contain a resistance and a  capacitance,  the  parser
       groups  a  resistance  and  two  capacitances in a single LOWIRE if the
       following conditions are met :

              The resistance is named 'name'  and  the  two  capacitances  are
              named 'name1' and 'name2'

              The two capacitances must have the same value

              The  two  capacitances must be between the net of the resistance
              and VSS.

       The driver supports this feature.

       Environment variable considered are

              MBK_SPI_MODEL

              MBK_SPI_NETNAME

              MBK_SPI_SEPAR

              MBK_SPI_MERGE

              MBK_SPI_FILE

              MBK_SPI_VERBOSE

              MBK_SPI_ONE_NODE_NORC

              MBK_SPI_NO_AFF_UNK

ENVIRONMENT VARIABLES

       MBK_SPI_MODEL

       File name where transistors models are described. Syntax for file is :
              MODELNAME N|P [FAST] [HVIO]
       Blank lines are allowed, and line comment begin with a '#'.

       MBK_SPI_NETNAME

       Comment used to name the nodes. Default is NET.

       MBK_SPI_SEPAR

       Character used to separate a name from a node number on  the  interface
       of  the  .SUBCKT.  The parser considers nodes of the same name to be on
       the same equipotential. Default is '.'.

       MBK_SPI_NOMERGE

       If this variable is set, the parser does not merge interface  nodes  of
       the same name, but different number, on the same equipotential.

       MBK_SPI_FILE

       If  this variable is set, the name of the files opened are displayed on
       the error output.

       MBK_SPI_VERBOSE

       If this variable is set, display debug various information on the error
       output.

       MBK_SPI_ONE_NODE_NORC

       If  this  variable  is  set,  an  RCN  view  is  not  created for a net
       containing only one node.

       MBK_SPI_NO_AFF_UNK

       Default behaviour of Spice parser is to display an error  message  when
       an  unknown  element  is  read in the input file. Setting this variable
       prevent this display. Usefull  when  file  contain  command  for  Spice
       simulator.

       MBK_SPI_NAMEDNODES

       When  this environment variable is set, spice netlist's nodes are named
       using one of the following convention, if signal name is set or no,  or
       if signal has an RCN view :

              "SIGNAL NAME" $MBK_SEPAR "RCN NODE"

              "SIGNAL NAME"

              SIG "SIGNAL INDEX" $MBK_SEPAR "RCN NODE"

              SIG "SIGNAL INDEX"

       $MBK_SEPAR is a single character defined by a environment variable with
       the same name.

EXAMPLE

       This is an example of a file generated by the Spice driver.

        * Spice description of gxor
        * Spice driver version 700
        * Date ( dd/mm/yyyy hh:mm:ss ): 29/03/1999 at 17:43:53

        * INTERF a b s vdd vdd vdd vdd vss vss vss vss

        .INCLUDE mx2_y.spi
        .INCLUDE ndrvp_y.spi

        .subckt gxor 24 42 49 52 53 61 54 63 64 71 72
        * NET 1 = implicit
        * NET 4 = auxsc1
        * NET 13 = auxsc3
        * NET 26 = a
        * NET 40 = b
        * NET 49 = s
        * NET 52 = vdd
        * NET 65 = vss
        xauxsc1 64 65 53 55 33 35 2 8 ndrvp_y
        xs 66 70 56 60 48 50 11 21 5 9 34 36 38 45 mx2_y
        xauxsc3 70 71 60 61 41 46 18 22 ndrvp_y
        R2_1 4 7 6
        C2_11 4 63 6.9e-15
        C2_12 7 63 6.9e-15
        R2_2 3 2 0.15
        C2_21 3 63 7.2e-16

       [----- CUT -----]

        C4_51 69 63 6.525e-15
        C4_52 72 63 6.525e-15
        R4_6 68 69 0.001
        R4_7 68 67 0.001
        .ends gxor

SEE ALSO

       Alliance(1) MBK(1) Al(1) RCN(1) MBK_SEPAR(1)

AUTHOR

       Gregoire AVOT.  Gregoire.AVOT@lip6.fr