GENLIB_LOINS - add a logical instance to the current figure
#include <genlib.h>
void GENLIB_LOINS(model, instance, sig1, sig2, ..., sign, EOL);
char ∗model, ∗instance;
char ∗sig1, ∗sig2, ..., ∗sign;
See the file buster/alliance/alc_origin.1.en.gz.
- model
- Name of the model to be logically instanciated
- instance
- Name to be given to the new instance
- sig1, sig2, ...,
sign
- List of signals to be linked to the implicit connector list of the
instance
LOINS add a logical instance in the actual working figure.
LOINS uses environment variables to choose the file format and the
path to the file.
MBK_IN_LO set up the input file format, the valid ones beeing :
hns
fne
al
alx
MBK_WORK_LIB set up the output file path. Any valid unix path
is ok. LOINS look in memory and then, if not
found, on disk for the figure modelname. This is due to
the need to ensure consistency between the model and its ascociated
instances.
The instance is added with the name instance, and each of the signals are
connected to an instance connector. The connectors are implicitly matched from
the order of the signal on the list. This order is the one given in the
netlist file, hns or al, or in the sclib documentation,
for standard cell circuits.
"GENLIB_LOINS impossible : missing
GENLIB_DEF_LOFIG"
No figure has been yet specified by a call to
DEF_LOFIG. So it isn't possible to add anything. you must call
DEF_LOFIG before any other netlist call.
"GENLIB_LOINS : Bad signal bus name"
A signal, described under a bus form, has an illegal
syntax.
"Illegal addloins. Instance insname already exist in figure
figname"
An instance name must be unique in a given figure at a
given hierachy level.
"Illegal addloins. Instance model is the figure figname itself"
A figure cannot be included in itself. Be careful, the
check is only made at current hierarchy level.
"Illegal addloins. Connector number discrepancy between figure modelname
and instance insname in figure figname"
The number of connector in the model is not equal to the
number of signals describing the connectivity during the LOINS
call.
#include <genlib.h>
main()
{
/∗ Create a figure to work on ∗/
GENLIB_DEF_LOFIG("mycell");
/∗ define interface ∗/
GENLIB_LOCON("i", INPUT, "sig1");
GENLIB_LOCON("o", OUTPUT, "sig2");
/∗ Place an instance ∗/
GENLIB_LOINS("model","instance", "sig1", "sig2", EOL);
/∗ Save all that on disk ∗/
GENLIB_SAVE_LOFIG();
}