.\" $Id: GENLIB_BUS.3,v 1.1 2002/03/08 14:08:09 fred Exp $ .\" @(#)GENLIB_BUS.3 2.11 91/08/22; Labo Cao-vlsi; Author : Frederic Petrot .if t \{\ .XS \n% .ti 0.2i GENLIB_BUS .XE \} .TH GENLIB_BUS.3 "October 1, 1997" "ASIM/LIP6" "PROCEDURAL GENERATION LANGUAGE" .SH NAME GENLIB_BUS \- Creates a bus name for netlist .SH SYNOPSYS .nf .if n \{\ .ft B \} .if t \{\ .ft CR \} #include char \(**GENLIB_BUS(busname, from, to); char \(**busname; long from, to; .ft R .fi .so jessie/alliance/alc_origin.1.en.gz .SH PARAMETERS .TP 20 \fIbusname\fP Common signal name for a bus .TP \fIfrom\fP Starting index of the set of signal, \fIfrom\fP included .TP \fIto\fP Ending index of the set of signal, \fIto\fP included .SH DESCRIPTION \fIGENLIB_BUS\fP Creates a set of names, based upon a common name, valid for the genlib netlist functions that manipulate the signal, and/or connector, concept. They are: .RS \fBLOINS\fP(3) .br \fBLOCON\fP(3) .RE The \fIfrom, to\fP arguments give the boundaries of the bus to be created, both of them beeing included in the set. The function allows increasing or decreasing order busses, as one could expect. .br This function has a constant equivalent, it means that if the \fIfrom, to\fP values are known at compilation time, one should better use, for readability purposes, the "[n:m]" construct. .SH EXAMPLE .nf .if n \{\ .ft B \} .if t \{\ .ft CR \} #include main() { int b = 0; int e = 12; /\(** Create a figure to work on \(**/ GENLIB_DEF_LOFIG("mycell"); /\(** define interface \(**/ GENLIB_LOCON(GENLIB_BUS("i", b, e), INPUT, GENLIB_BUS("sig", b, e); GENLIB_LOCON("o[2:0]", OUTPUT, "sigout[4:6]"); /\(** Place an instance \(**/ GENLIB_LOINS("model","instance", GENLIB_BUS("sig", e/2), "sigout[6]", EOL); /\(** Save all that on disk \(**/ GENLIB_SAVE_LOFIG(); } .ft R .fi .SH SEE ALSO .BR genlib (1), .BR GENLIB_ELM (3). .so jessie/alliance/alc_bug_report.1.en.gz