NAME
GENLIB_PHVIA - place a physical via in the current figure at absolute coordinates
SYNOPSYS
#include <genlib.h> void GENLIB_PHVIA(type, x, y) char type; long x, y;
PARAMETERS
- type
-
Type of the contact to be made
- x, y
-
Absolute coordinates of the via
DESCRIPTION
PHVIA adds a via in the current layout cell, at the specified coordinates. The type 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
- C_X_N
-
corner for L-shaped (and S-shaped) N transistor
- C_X_P
-
corner for L-shaped (and S-shaped) P transistor
ERRORS
"GENLIB_PHVIA 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 via inside it. you must call DEF_PHFIG before any other layout action.
"illegal addphvia : type is XX at x, y"
The type parameter does not have a legal value, but XX.
EXAMPLE
#include <genlib.h>
main()
{
/∗ Create a figure to work on ∗/
GENLIB_DEF_PHFIG("cell");
.
/∗ Put a via ∗/
GENLIB_PHVIA(CONT_VIA, 12L, 10L);
.
.
GENLIB_DEF_AB(0L, 0L, 0L, 0L);
/∗ Save that on disk ∗/
GENLIB_SAVE_PHFIG();
}
SEE ALSO
genlib(1), GENLIB_DEF_PHFIG(3), GENLIB_SAVE_PHFIG(3), GENLIB_PLACE_VIA_REF(3).