1GENLIB_PLACE_SEG_REF.3(October 1, 1997)GENLIB_PLACE_SEG_REF.3(October 1, 1997)
2
3
4

NAME

6       GENLIB_PLACE_SEG_REF  -  put  a  segment  on  a  reference belonging an
7       instance in the current figure
8

SYNOPSIS

10       #include <genlib.h>
11       void GENLIB_PLACE_SEG_REF(insname, refname, layer, width, face)
12       char  ∗insname, ∗refname;
13       char layer, face;
14       long width;
15

PARAMETERS

17       insname             Name of the instance in the which the reference  is
18                           to be searched for
19
20       refname             Name  of  the  reference to be used for the segment
21                           placement
22
23       layer               Physical layer of the segment
24
25       width               Width of the segment
26
27       face                Face of the figure on which the segment  is  to  be
28                           placed
29

DESCRIPTION

31       PLACE_SEG_REF places a segment regarding the position of the reference,
32       refname, in the instance called insname.  The segment  coordinates  are
33       computed from the reference coordinates and the face given as argument.
34       Two behaviours are expected, regarding the reference coordinates:
35
36       the reference is on the given face of the abutment box
37                           the  segment is not added, since it would have zero
38                           as length
39
40       the reference is anywhere else
41                           A segment is drawn between the  reference  and  the
42                           abutment  box,   and  is  given  layer and width as
43                           attributs.  One of its endpoint  is  given  by  the
44                           reference coordinates, the other one comes from the
45                           face.  The face argument is  meant  in  the  placed
46                           instance, and can take any of the following values:
47
48       NORTH               the  other endpoint has, for absissa, the x coordi‐
49                           nate of the top of the abutment box  of  the  cell,
50                           and  for  ordinate,  the y coordinate of the refer‐
51                           ence.
52
53       SOUTH               the other endpoint has, for absissa, the x  coordi‐
54                           nate of the bottom of the abutment box of the cell,
55                           and for ordinate, the y coordinate  of  the  refer‐
56                           ence.
57
58       EAST                the  other endpoint has, for absissa, the x coordi‐
59                           nate of the reference and for ordinate, the y coor‐
60                           dinate  of  the  right  of  the abutment box of the
61                           cell.
62
63       WEST                the other endpoint has, for absissa, the x  coordi‐
64                           nate of the reference and for ordinate, the y coor‐
65                           dinate of the left of the abutment box of the cell.
66

ERRORS

68       "GENLIB_PLACE_SEG_REF impossible : missing GENLIB_DEF_PHFIG"
69              No figure has been yet specified by a call to DEF_PHFIG.  So  it
70              isn't  possible  to  place a reference inside it.  you must call
71              DEF_PHFIG before any other layout action.
72       "GENLIB_PLACE_SEG_REF impossible : missing GENLIB_DEF_PHFIG"
73              No figure has been yet specified by a call to DEF_PHFIG.  So  it
74              isn't  possible  to  place a reference inside it.  you must call
75              DEF_PHFIG before any other layout action.
76       "GENLIB_PLACE_SEG_REF impossible : no abutment box"
77              The current figure does not have an abutment box. Use  DEF_AB(3)
78              before this function.
79       "illegal GENLIB_PLACE_SEG_REF : orientation is XX"
80              The face parameter does not have a legal value, but XX.
81       "illegal getphins : instance called insname does not exist"
82              No instance called insname exists in the current figure
83       "illegal getphref : references called refname does not exist"
84              No  reference called refname exists in the model of the instance
85              insname.
86

EXAMPLE

88       #include <genlib.h>
89       main()
90       {
91            /∗ Create a figure to work on  ∗/
92            GENLIB_DEF_PHFIG("cell");
93            GENLIB_PLACE("gaci0_b", "r1", NOSYM, 23L, 54L);
94            /∗ Put a reference ∗/
95            GENLIB_PLACE_SEG_REF("r1", "a_0", ALU2, 2, NORTH);
96            /∗ Save that on disk ∗/
97            GENLIB_SAVE_PHFIG();
98       }
99

SEE ALSO

101       genlib(1), GENLIB_DEF_PHFIG(3), GENLIB_SAVE_PHFIG(3),  GENLIB_PHREF(3),
102       GENLIB_PHSEG(3), GENLIB_COPY_UP_REF(3), GENLIB_COPY_UP_ALL_REF(3), GEN‐
103       LIB_PLACE_SEG_REF(3), GENLIB_PLACE_SEG_REF(3), GENLIB_PLACE_SEG_REF(3).
104
105
106
107
108
109
110PROCEDURAL GENERATION LANGUAGE     ASIM/GLEINPL6IB_PLACE_SEG_REF.3(October 1, 1997)
Impressum