genlib_losig(3) - Linux man page

Name

GENLIB_LOSIG - declare an internal logical signal, or a vector of internal logical signals

Synopsys

#include <genlib.h>
void GENLIB_LOSIG(name)
char ∗name;

Parameters

name

Name of a signal to be declared

Description

LOSIG creates the internal signal, or the set of internal signals coresponding to a vector description, represented by name. See BUS(3) and ELM(3) for more details on vectors.
The need for declaring signal is mostly felt when one wants to create a consistent vector declaration, for file formats that do not allow partial or multiple declarations, like vhdl. This way, a user can create a vector and access its member the way he wants, but still having an internal consistent form.

Warning

If a signal is declared with LOSIG, but not used, the resulting file will have an internal node floating. This is not an error from a genlib point of view, so the user must be aware of it.

Example

#include <genlib.h>
main()
{
/∗ Create a figure to work on ∗/

GENLIB_DEF_LOFIG("cell");

/∗ Define interface ∗

GENLIB_LOCON(...

/∗ declare buses ∗/

GENLIB_LOSIG("grum[23:0]");

GENLIB_LOSIG("iconection[0:7]");

/∗ Place an instance ∗/

GENLIB_LOINS("no2_y" ,"no3" ,"grum[12]" ,"a9_s" ,"new_no3_s" ,"vdd" ,"vss" ,0);

GENLIB_LOINS("no2_y" ,"no4" ,"a12_s" ,"grum[6]" ,"no4_s" ,"vdd" ,"vss" ,0);

GENLIB_LOINS("a2_y" ,"a22" ,"no3_s" ,"grum[15]" ,"a22_s" ,"vdd" ,"vss" ,0);

/∗ Save all that on disk ∗/

GENLIB_SAVE_LOFIG();

}

See Also

genlib(1), genlib_loins(3), genlib_locon(3), genlib_bus(3), genlib_elm(3).