1GENLIB(1)               Alliance - genlib User's Manual              GENLIB(1)
2
3
4

NAME

6       genlib - Procedural design language based upon C.
7

DESCRIPTION

9       genlib  is a set of C functions dedicated to procedural generation pur‐
10       poses. From a user point of view, genlib  is  a  circuit's  description
11       language that allows standard C programming flow control, variable use,
12       and specialized functions in order to handle vlsi objects.
13
14       Based upon the Alliance mbk data structures, the genlib language  gives
15       the   user   the  ability  to  describe  both netlist and layout views,
16       thus allowing both standard cell and full custom approachs.
17
18   NETLIST CAPTURE
19       It is a hierachical structural description of a  circuit  in  terms  of
20       connectors (I/Os), signals (nets), and instances.
21
22       The function calls used to handle the netlist view are :
23
24       · GENLIB_DEF_LOFIG(3)
25
26       · GENLIB_SAVE_LOFIG(3)
27
28       · GENLIB_LOINS(3)
29
30       · GENLIB_LOCON(3)
31
32       · GENLIB_LOSIG(3)
33
34       · GENLIB_FLATTEN_LOFIG(3)  Some  facilities, in order to create vectors
35         are also available :
36
37       · GENLIB_BUS(3)
38
39       · GENLIB_ELM(3)
40
41   STANDARD CELL PLACEMENT
42       The following functions allows to define a placement file for  a  stan‐
43       dard  cell  design.  This  file can be used by the standard cell router
44       ocr(1) :
45
46       · GENLIB_DEF_PHSC(3)
47
48       · GENLIB_SAVE_PHSC(3)
49
50       · GENLIB_SC_PLACE(3)
51
52       · GENLIB_SC_RIGHT(3)
53
54       · GENLIB_SC_TOP(3)
55
56       · GENLIB_SC_LEFT(3)
57
58       · GENLIB_SC_BOTTOM(3)
59
60   FULL CUSTOM SYMBOLIC LAYOUT
61       Those functions are dedicated to optimized full custom procedural  lay‐
62       out.  In  order  to  provide some process independance, Alliance uses a
63       symbolic layout approach (fixed grid without compaction).
64
65       The symbolic objects are segments (wires), vias (contacts),  connectors
66       (I/Os),  references  and instances. For more information, see phseg(1),
67       phvia(1), phcon(1), phref(1), phins(1) and alc(1).
68
69       · GENLIB_DEF_PHFIG(3)
70
71       · GENLIB_SAVE_PHFIG(3)
72
73       · GENLIB_DEF_AB(3)
74
75       · GENLIB_DEF_PHINS(3)
76
77       · GENLIB_PHCON(3)
78
79       · GENLIB_COPY_UP_CON(3)
80
81       · GENLIB_COPY_UP_CON_FACE(3)
82
83       · GENLIB_COPY_UP_ALL_CON(3)
84
85       · GENLIB_PHSEG(3)
86
87       · GENLIB_COPY_UP_SEG(3)
88
89       · GENLIB_THRU_H(3)
90
91       · GENLIB_THRU_V(3)
92
93       · GENLIB_THRU_CON_H(3)
94
95       · GENLIB_THRU_CON_V(3)
96
97       · GENLIB_WIRE1(3)
98
99       · GENLIB_WIRE2(3)
100
101       · GENLIB_WIRE3(3)
102
103       · GENLIB_PHVIA(3)
104
105       · GENLIB_PLACE(3)
106
107       · GENLIB_PLACE_RIGHT(3)
108
109       · GENLIB_PLACE_TOP(3)
110
111       · GENLIB_PLACE_LEFT(3)
112
113       · GENLIB_PLACE_BOTTOM(3)
114
115       · GENLIB_PLACE_ON(3)
116
117       · GENLIB_PHREF(3)
118
119       · GENLIB_COPY_UP_REF(3)
120
121       · GENLIB_COPY_UP_ALL_REF(3)
122
123       · GENLIB_PLACE_VIA_REF(3)
124
125       · GENLIB_PLACE_CON_REF(3)
126
127       · GENLIB_PLACE_SEG_REF(3)
128
129       · GENLIB_FLATTEN_PHFIG(3)
130
131       · GENLIB_GET_REF_X(3)
132
133       · GENLIB_GET_REF_Y(3)
134
135       · GENLIB_GET_CON_X(3)
136
137       · GENLIB_GET_CON_Y(3)
138
139       · GENLIB_HEIGHT(3)
140
141       · GENLIB_WIDTH(3) In order to have  information  about  each  of  these
142         functions,  use the online documentation with man(1), as in man func‐
143         tion-name.
144
145       It is strongly recommended to read some  books  on  C  programming,  in
146       order to take full advantage of the C flow control possibilities, as it
147       may greatly reduce  the  size of a genlib source code.
148

ENVIRONMENT VARIABLES

150       · MBK_IN_LO(1), default value : al
151
152       · MBK_OUT_LO(1), default value : al
153
154       · MBK_IN_PH(1), default value : ap
155
156       · MBK_OUT_LO(1), default value : ap
157
158       · MBK_CATA_LIB(1), default value : .
159
160       · MBK_WORK_LIB(1), default value : .
161
162       · MBK_CATAL_NAME(1), default value : CATAL See the corresponding manual
163         pages for further information.
164
165       In   order to compile and execute a genlib file, one has to call genlib
166       with one argument, that is the genlib source  file.   The  source  file
167       must  have a .c extension, but the extension should not be mentioned on
168       the command line.
169
170       The names used in genlib, as arguments to genlib functions,  should  be
171       alphanumerical, including the underscore. They also are not case sensi‐
172       tive, so VDD is equivalent to vdd. Vectorized connectors or signal  can
173       be declareds using the [n:m] construct.
174

SYNOPSIS

176       genlib [         -cklmnv
177        ]  [ --no-rm-core ] [ --keep-makefile ] [ --keep-exec ] [ --keep-log ]
178       [ --no-exec ] [ --verbose ] program [ -e program_args ]
179
180
181   OPTIONS
182       · <program> : the name of the C file  containing  the  genlib  program,
183         whitout extention. Mandatory argument.
184
185       · [--no-rm-core|-c] : in case of core dump, do not remove the generated
186         core file. This option must be used with [--keep-exec|-k].
187
188       · [--keep-makefile|-m] : do not erase the generated makefile after exe‐
189         cution.
190
191       · [--keep-exec|-k]  :  keep  the  generated executable after the genlib
192         run.
193
194       · [--keep-log|-l] : do not erase the log file after a  successful  com‐
195         pletion (the log is keeped after a faulty run).
196
197       · [--no-exec|-n]  :  do  not  run the generated program. Should be used
198         with [--keep-exec|-k].
199
200       · [--no-verbose|-v] : self explanatory.
201
202       · [-e] : all the following arguments are handled to the  compiled  pro‐
203         gram.
204

EXAMPLES

206       Compile and run a file amd2901.c :
207
208       genlib -v amd2901
209
210

SEE ALSO

212       mbk(1),
213

DIAGNOSTIC

215       Many errors may occur while executing the source file,  so refer to the
216       proper genlib function manual for more. When  an  error  occur,  genlib
217       left  a  log  file  <program>.grr.   As <program>.c is a C program, all
218       syntatic C error can occurs...
219
220       All genlib functions are listed below alphabetically sorted.
221
222
223
224ASIM/LIP6                        30 July 2004                        GENLIB(1)
Impressum