GENLIB_PLACE_VIA_REF.3alc man page

GENLIB_PLACE_VIA_REF

GENLIB_PLACE_VIA_REF — put a via on top of a reference belonging to an instance in the current figure

Synopsis

#include <genlib.h>
void GENLIB_PLACE_VIA_REF(insname, refname, viatype)
char  ∗insname, ∗refname;
char viatype;

Parameters

insname

Name of the instance in the which the reference is to be searched for

refname

Name of the reference to be used as target point

viatype

Type of via to be placed

Description

PLACE_VIA_REF places a via of type viatype on top of the specified reference, refname, in the instance called insname. This function may be used to generate many cells from a single one, in order to "program" decoders for example, or in conjunction with PLACE_SEG_REF(3) or PLACE_CON_REF(3) to translate virtual connectors into fixed ones.
The viatype argument may take the following legal values:

CONT_POLY

links POLY and ALU1

CONT_DIF_N

links NDIF and ALU1

CONT_DIF_P

links PDIF and ALU1

CONT_BODY_N

links NTIE and ALU1

CONT_BODY_P

links PTIE and ALU1

CONT_VIA

links ALU1 and ALU2

CONT_VIA2

links ALU2 and ALU3

Errors

"GENLIB_PLACE_VIA_REF impossible : missing GENLIB_DEF_PHFIG"

No figure has been yet specified by a call to DEF_PHFIG. So it isn't possible to place a reference inside it. you must call DEF_PHFIG before any other layout action.

"illegal getphins : instance insname does not exist"

The instance called insname does not currently belong to the figure.

"illegal getphref : references called refname does not exist"

No reference called refname exists in the model of the instance insname.

Example

#include <genlib.h>
main()
{
	/∗ Create a figure to work on  ∗/
	GENLIB_DEF_PHFIG("cell");
	GENLIB_PLACE("gaci0_b", "r1", NOSYM, 23L, 54L);
	/∗ Put a reference ∗/
	GENLIB_PLACE_VIA_REF("a_0", "r1", CONT_VIA);
	/∗ Save that on disk ∗/
	GENLIB_SAVE_PHFIG();
}

See Also

dpr(1), genlib(1), GENLIB_DEF_PHFIG(3), GENLIB_SAVE_PHFIG(3), GENLIB_PHREF(3), GENLIB_PHVIA(3), GENLIB_COPY_UP_REF(3), GENLIB_COPY_UP_ALL_REF(3), GENLIB_PLACE_CON_REF(3), GENLIB_PLACE_SEG_REF(3), GENLIB_PLACE_VIA_REF(3).

Referenced By

genlib.1alc(1), GENLIB_COPY_UP_ALL_REF.3alc(3), GENLIB_COPY_UP_REF.3alc(3), GENLIB_PHREF.3alc(3), GENLIB_PHVIA.3alc(3).

ASIM/LIP6 PROCEDURAL GENERATION LANGUAGE