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

FreeBSD Manual Pages

  
 
  

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 in-
       stance in the current figure

SYNOPSYS
       #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
			   placement

       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
       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
			   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
			   abutment  box,  and is given	layer and width	as at-
			   tributs.  One of its	endpoint is given by the  ref-
			   erence  coordinates,	 the  other one	comes from the
			   face.  The face argument is meant in	the placed in-
			   stance, and can take	any of the following values:

       NORTH		   the	other endpoint has, for	absissa, the x coordi-
			   nate	of the top of the abutment box	of  the	 cell,
			   and	for  ordinate,	the y coordinate of the	refer-
			   ence.

       SOUTH		   the other endpoint has, for absissa,	the x  coordi-
			   nate	of the bottom of the abutment box of the cell,
			   and for ordinate, the y coordinate  of  the	refer-
			   ence.

       EAST		   the	other endpoint has, for	absissa, the x coordi-
			   nate	of the reference and for ordinate, the y coor-
			   dinate  of  the  right  of  the abutment box	of the
			   cell.

       WEST		   the other endpoint has, for absissa,	the x  coordi-
			   nate	of the reference and for ordinate, the y coor-
			   dinate 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)
	      before 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
	      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_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),
       GENLIB_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	   ASIMGENLIB_PLACE_SEG_REF.3(October 1, 1997)

NAME | SYNOPSYS | PARAMETERS | DESCRIPTION | ERRORS | EXAMPLE | SEE ALSO

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

home | help