LOINSE - add a logical instance to the current figure, with explicit connections
#include <genlib.h>
void LOINSE(model, instance, couple1, couple2, ..., couplen, EOL);
char *model, *instance;
char *couple1, *couple2, ..., *couplen;
This software belongs to the ALLIANCE CAD system from the CAO-VLSI team at
ASIM/LIP6/UPMC laboratory.
LIP6/ASIM
University P. et M. Curie
4, place Jussieu
75252 PARIS Cedex 05
FRANCE
Fax : {33/0} 1.44.27.62.86
E-mail support : alliance-support@asim.lip6.fr
couple1, couple2, ..., couplen
Explicit list of connections between connectors and
signals.
LOINSE add a logical instance in the actual working figure. LOINSE 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.
LOINSE look in memory and then, if not found, on disk for the figure mod_elname.
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 connector signal link is
explicit, and described in the couples arguments. The couples arguments
are supposed to have the form:
conector => signal
or
conector[a:b] => signal[n:m]
where a - b equals, in absolute value, n - m.
LOINSE impossible : missing 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.
LOINSE : 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 LOINSE call.
#include <genlib.h>
main()
{
/* Create a figure to work on */
DEF_LOFIG("mycell");
/* define interface */
LOCON("i", INPUT, sig1");
LOCON("o", OUTPUT, sig2");
/* Place an instance */
LOINSE("model","instance", con1 => sig1", con2 => sig2", 0L);
LOINSE("stuff","shirt", i[31:0] => out[32:63]", j[2] => sig2", 0L);
/* Save all that on disk */
SAVE_LOFIG();
}
genlib(1) , DEF_LOFIG(3) , LOINS(3) , MBK_IN_LO(1) , MBK_CATA_LIB(1) , MBK_WORK_LIB(1) .
This tool is under development at the ASIM/LIP6/UPMC laboratory, cao-vlsi
research team.
We need your feedbak to improve documentation and tools.
If you find bugs, please fill-in the form at
http://asim.lip6.fr/alliance/support/bug-report/
Thanks for doing this.