Skip site navigation (1)Skip section navigation (2)

  
 
  

home | help
GENLIB_PLACE_SEG_REF.3(October 1, 1997)  GENLIB_PLACE_SEG_REF.3(October 1, 1997)

NAME
     GENLIB_PLACE_SEG_REF  -  put a segment on a reference belonging an instance
     in the current figure

SYNOPSIS
     #include <genlib.h>
     void GENLIB_PLACE_SEG_REF(insname, refname, layer, width, face)
     char  *insname, *refname;
     char layer, face;
     long width;

PARAMETERS
     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 segment place-
			 ment

     layer		 Physical layer of the segment

     width		 Width of the segment

     face		 Face of the figure on which the segment is to be placed

DESCRIPTION
     PLACE_SEG_REF  places  a  segment	regarding the position of the reference,
     refname, in the instance called insname.  The segment coordinates are  com-
     puted 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
			 the  segment  is not added, since it would have zero as
			 length

     the reference is anywhere else
			 A segment is drawn between the reference and the  abut-
			 ment  box,   and is given layer and width as attributs.
			 One of its endpoint is given by the  reference  coordi-
			 nates, the other one comes from the face.  The face ar-
			 gument  is  meant  in the placed instance, and can take
			 any of the following values:

     NORTH		 the other endpoint has, for absissa, the  x  coordinate
			 of the top of the abutment box of the cell, and for or-
			 dinate, the y coordinate of the reference.

     SOUTH		 the  other  endpoint has, for absissa, the x coordinate
			 of the bottom of the abutment box of the cell, and  for
			 ordinate, the y coordinate of the reference.

     EAST		 the  other  endpoint has, for absissa, the x coordinate
			 of the reference and for ordinate, the y coordinate  of
			 the right of the abutment box of the cell.

     WEST		 the  other  endpoint has, for absissa, the x coordinate
			 of the reference and for ordinate, the y coordinate  of
			 the left of the abutment box of the cell.

ERRORS
     "GENLIB_PLACE_SEG_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_SEG_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_SEG_REF impossible : no abutment box"
	    The  current figure does not have an abutment box. Use DEF_AB(3) be-
	    fore this function.
     "illegal GENLIB_PLACE_SEG_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  in-
	    sname.

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_SEG_REF("r1", "a_0", ALU2, 2, NORTH);
	  /* Save that on disk */
	  GENLIB_SAVE_PHFIG();
     }

SEE ALSO
     genlib(1), GENLIB_DEF_PHFIG(3), GENLIB_SAVE_PHFIG(3), GENLIB_PHREF(3), GEN-
     LIB_PHSEG(3),    GENLIB_COPY_UP_REF(3),   GENLIB_COPY_UP_ALL_REF(3),   GEN-
     LIB_PLACE_SEG_REF(3), GENLIB_PLACE_SEG_REF(3), GENLIB_PLACE_SEG_REF(3).

PROCEDURAL GENERATION LANGUAGE	    ASIM/GENLIB_PLACE_SEG_REF.3(October 1, 1997)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=GENLIB_PLACE_SEG_REF&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help