GENLIB_PLACE_CON_REF - put a connector on top of a reference
belonging an instance in the current figure
#include <genlib.h>
void GENLIB_PLACE_CON_REF(insname, refname, conname, layer, width, face)
char ∗insname, ∗refname, ∗conname;
char layer, face;
long width;
See the file buster/alliance/alc_origin.1.en.gz.
- insname
- Name of the instance in the which the reference is to be searched for
- refname
- Name of the reference to be used for the connector placement
- conname
- Name of the connector to be placed
- layer
- Physical layer of the connector
- width
- Width of the connector
- face
- Face of the figure on which the connector is to be placed
PLACE_CON_REF places a connector called conname
ragarding the position of the reference, refname, in the instance
called insname. The connector coordinates are computed from the
reference coordinates and the face given as argument.
Two behaviours are expected, regarding the reference coordinates:
- the reference is on the given
face of the abutment box
- a connector called conname is added on top of the reference, with
the given layer and width.
- the reference is anywhere
else
- a connector called conname is added on the given face, face,
of the abutment box, at the y coordinates of the reference if the
face is EAST or WEST, or x one if the face is
NORTH or SOUTH. Then a segment is drawn between the
reference and the connector. All drawn objects are given layer and
width as caracteristics.
The face argument is meant in the placed instance, and can take any
of the following values:
- NORTH
- for a connector placed on the top of the cell.
- SOUTH
- for a connector placed on the bottom of the cell.
- EAST
- for a connector placed on the right side of the cell.
- WEST
- for a connector placed on the left side of the cell.
"GENLIB_PLACE_CON_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.
"GENLIB_PLACE_CON_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.
"GENLIB_PLACE_CON_REF impossible : no abutment box"
The current figure does not have an abutment
box. Use DEF_AB(3) before this function.
"illegal GENLIB_PLACE_CON_REF : orientation is XX"
The face parameter does not have a legal value,
but XX.
"illegal getphins : instance called insname does not
exist"
No instance called insname exists in the current
figure
"illegal getphref : references called refname does not
exist"
No reference called refname exists in the model of
the instance insname.
#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_CON_REF("r1", "a_0", ALU2, 2, NORTH);
/∗ Save that on disk ∗/
GENLIB_SAVE_PHFIG();
}