genlib - Online in the Cloud

This is the command genlib that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

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 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 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 informations, 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 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
informations.

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 mentionned 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 sensitive, 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 execution.

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

· [--keep-log|-l] : do not erase the log file after a successfull 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

Use genlib online using onworks.net services



Latest Linux & Windows online programs