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

FreeBSD Manual Pages

  
 
  

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 pur-
       poses. 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 allowing both standard cell	and full custom	approachs.

   NETLIST CAPTURE
       It  is  a  hierachical  structural description of a circuit in terms of
       connectors (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 stan-
       dard 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 lay-
       out. 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
	 functions, use	the online documentation with man(1), as in man	 func-
	 tion-name.

       It  is strongly recommended to read some	books on C programming,	in or-
       der 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
       alphanumerical, including the underscore. They also are not case	sensi-
       tive,  so VDD is	equivalent to vdd. Vectorized connectors or signal can
       be declareds 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 exe-
	 cution.

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

        [--keep-log|-l]  :  do	not erase the log file after a successful com-
	 pletion (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 pro-
	 gram.

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 error	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.0>

home | help