Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
GENLIB(1)		 Alliance - genlib User's Manual	       GENLIB(1)

NAME
     genlib - Procedural design language based upon C.

DESCRIPTION
     genlib is a set of C functions dedicated to procedural generation purposes.
     From a user point of view, genlib is a circuit's description  language that
     allows  standard  C programming flow control, variable use, and specialized
     functions in order to handle vlsi objects.

     Based upon the Alliance mbk data structures, the genlib language gives  the
     user   the   ability  to  describe  both netlist and layout views, thus al-
     lowing both standard cell and full custom approachs.

   NETLIST CAPTURE
     It is a hierachical structural description of a circuit in terms of connec-
     tors (I/Os), signals (nets), and instances.

     The function calls used to handle the netlist view are :

     *
       GENLIB_DEF_LOFIG(3)

     *
       GENLIB_SAVE_LOFIG(3)

     *
       GENLIB_LOINS(3)

     *
       GENLIB_LOCON(3)

     *
       GENLIB_LOSIG(3)

     *
       GENLIB_FLATTEN_LOFIG(3) Some facilities, in order to create  vectors  are
       also available :

     *
       GENLIB_BUS(3)

     *
       GENLIB_ELM(3)

   STANDARD CELL PLACEMENT
     The  following  functions	allows to define a placement file for a standard
     cell design. This file can be used by the standard cell router ocr(1) :

     *
       GENLIB_DEF_PHSC(3)

     *
       GENLIB_SAVE_PHSC(3)

     *
       GENLIB_SC_PLACE(3)

     *
       GENLIB_SC_RIGHT(3)

     *
       GENLIB_SC_TOP(3)

     *
       GENLIB_SC_LEFT(3)

     *
       GENLIB_SC_BOTTOM(3)

   FULL CUSTOM SYMBOLIC LAYOUT
     Those functions are dedicated to optimized full custom  procedural  layout.
     In  order	to  provide  some process independance, Alliance uses a symbolic
     layout approach (fixed grid without compaction).

     The symbolic objects are  segments  (wires),  vias  (contacts),  connectors
     (I/Os),  references  and  instances.  For	more  information, see phseg(1),
     phvia(1), phcon(1), phref(1), phins(1) and alc(1).

     *
       GENLIB_DEF_PHFIG(3)

     *
       GENLIB_SAVE_PHFIG(3)

     *
       GENLIB_DEF_AB(3)

     *
       GENLIB_DEF_PHINS(3)

     *
       GENLIB_PHCON(3)

     *
       GENLIB_COPY_UP_CON(3)

     *
       GENLIB_COPY_UP_CON_FACE(3)

     *
       GENLIB_COPY_UP_ALL_CON(3)

     *
       GENLIB_PHSEG(3)

     *
       GENLIB_COPY_UP_SEG(3)

     *
       GENLIB_THRU_H(3)

     *
       GENLIB_THRU_V(3)

     *
       GENLIB_THRU_CON_H(3)

     *
       GENLIB_THRU_CON_V(3)

     *
       GENLIB_WIRE1(3)

     *
       GENLIB_WIRE2(3)

     *
       GENLIB_WIRE3(3)

     *
       GENLIB_PHVIA(3)

     *
       GENLIB_PLACE(3)

     *
       GENLIB_PLACE_RIGHT(3)

     *
       GENLIB_PLACE_TOP(3)

     *
       GENLIB_PLACE_LEFT(3)

     *
       GENLIB_PLACE_BOTTOM(3)

     *
       GENLIB_PLACE_ON(3)

     *
       GENLIB_PHREF(3)

     *
       GENLIB_COPY_UP_REF(3)

     *
       GENLIB_COPY_UP_ALL_REF(3)

     *
       GENLIB_PLACE_VIA_REF(3)

     *
       GENLIB_PLACE_CON_REF(3)

     *
       GENLIB_PLACE_SEG_REF(3)

     *
       GENLIB_FLATTEN_PHFIG(3)

     *
       GENLIB_GET_REF_X(3)

     *
       GENLIB_GET_REF_Y(3)

     *
       GENLIB_GET_CON_X(3)

     *
       GENLIB_GET_CON_Y(3)

     *
       GENLIB_HEIGHT(3)

     *
       GENLIB_WIDTH(3) In order to have information about each	of  these  func-
       tions, use the online documentation with man(1), as in man function-name.

     It is strongly recommended to read some books on C programming, in order to
     take  full advantage of the C flow control possibilities, as it may greatly
     reduce  the  size of a genlib source code.

ENVIRONMENT VARIABLES
     *
       MBK_IN_LO(1), default value : al

     *
       MBK_OUT_LO(1), default value : al

     *
       MBK_IN_PH(1), default value : ap

     *
       MBK_OUT_LO(1), default value : ap

     *
       MBK_CATA_LIB(1), default value : .

     *
       MBK_WORK_LIB(1), default value : .

     *
       MBK_CATAL_NAME(1), default value : CATAL  See  the  corresponding  manual
       pages for further information.

     In  order to compile and execute a genlib file, one has to call genlib with
     one  argument, that is the genlib source file.  The source file must have a
     .c extension, but the extension should not  be  mentioned	on  the  command
     line.

     The  names  used in genlib, as arguments to genlib functions, should be al-
     phanumerical, including the underscore. They also are not	case  sensitive,
     so  VDD  is  equivalent  to vdd. Vectorized connectors or signal can be de-
     clareds using the [n:m] construct.

SYNOPSIS
     genlib [	      -cklmnv
      ] [ --no-rm-core ] [ --keep-makefile ] [ --keep-exec ] [	--keep-log  ]  [
     --no-exec ] [ --verbose ] program [ -e program_args ]

   OPTIONS
     *
       <program> : the name of the C file containing the genlib program, whitout
       extention. Mandatory argument.

     *
       [--no-rm-core|-c]  :  in  case  of core dump, do not remove the generated
       core file. This option must be used with [--keep-exec|-k].

     *
       [--keep-makefile|-m] : do not erase the generated makefile  after  execu-
       tion.

     *
       [--keep-exec|-k] : keep the generated executable after the genlib run.

     *
       [--keep-log|-l] : do not erase the log file after a successful completion
       (the log is keeped after a faulty run).

     *
       [--no-exec|-n]  :  do  not run the generated program. Should be used with
       [--keep-exec|-k].

     *
       [--no-verbose|-v] : self explanatory.

     *
       [-e] : all the following arguments are handled to the compiled program.

EXAMPLES
     Compile and run a file amd2901.c :

     genlib -v amd2901

SEE ALSO
     mbk(1),

DIAGNOSTIC
     Many errors may occur while executing the source file,   so  refer  to  the
     proper  genlib function manual for more. When an error occur, genlib left a
     log file <program>.grr.  As <program>.c is a C program, all syntatic C  er-
     ror can occurs...

     All genlib functions are listed below alphabetically sorted.

ASIM/LIP6			  30 July 2004			       GENLIB(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=genlib&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help