Provided by: alliance_5.0-20120515-6_amd64 bug

NAME

       phfig - mbk physical figure

DESCRIPTION

       The  phfig is used to describe a hierarchical level of a symbolic layout and may contain any of the legal
       physical objects needed for a layout but a phfig.  All coordinates are symbolic and  therefor  put  on  a
       virtual grid in booth x and y directions.

       The declarations needed to work on phfig are available in the header file "/labo/include/mph402.h", where
       '402' is the actual mbk version.

       The following C structure supports the description of the layout view :
              typedef struct phfig {
                 struct phfig     ∗NEXT;
                 struct chain     ∗MODELCHAIN;
                 struct phseg     ∗PHSEG;
                 struct phvia     ∗PHVIA;
                 struct phref     ∗PHREF;
                 struct phins     ∗PHINS;
                 struct phcon     ∗PHCON;
                 char             ∗NAME;
                 char             MODE;
                 long             XAB1, YAB1, XAB2, YAB2;
                 struct ptype     ∗USER;
              } phfig_list;

       NEXT                Pointer to the next phfig present in ram.

       NAME                Name of the figure. It identifies a figure (or model), so  it  should  be  unique  in
                           order   to  warranty  consistency  of  cells  libraries.  In  order  to  ensure  this
                           consistency, the NAME field must be filled with the disk file name while parsing, and
                           must be used as file name for driving.

       PHINS               Pointer  to  the  head of the list of instances being used for the model description.
                           See phins(3) for details.

       PHCON               Pointer to the head of the list of connectors (terminals) of the model.  See phcon(3)
                           for details.

       PHSEG               Pointer  to  the head of the list of segments (wires) of the model.  See phseg(3) for
                           details.

       PHVIA               Pointer to the head of the list of contacs and vias of the model.  See  phvia(3)  for
                           details.

       PHREF               Pointer  to  the  head  of  the  list  of  references of the model.  See phref(3) for
                           details.

       XAB1, YAB1, XAB2, YAB2
                           Coordinates of the bottom left corner of the abutment box of the figure. The abutment
                           box  of  a model represents the external visibility of a figure and is what reference
                           is made to when instanciating the model.  One should well  distinguish  the  abutment
                           box  from  the  bounding  box, which is the smallest rectangle that includes all cell
                           descriptors.  The size and position of the abutment box is a  designer  concern,  and
                           cannot be computed.

       MODE                Caracter  indicating  the  status  of  the  figure in memory. This field can take two
                           values :

                           ´A´       all the cell is loaded in ram.

                           ´P´       only information concerning the model  interface  is  present,  that  means
                                     connectors and the abutment box. All other lists are empty.

       MODELCHAIN          Pointer  to  a chain list, see chain(3) for details, of names. These are the names of
                           the models that are at least instanciated once in the figure.

       USER                Pointer to a ptype list, see ptype(3) for details, that is a general purpose  pointer
                           used to share informations on the model.

       Remark :            mbk's  physical  view of a cell is releted to it's logical view by means of connector
                           names, that must be identical.

SEE ALSO

       mbk(1), addphfig(3), getphfig(3), delphfig(3), loadphfig(3), savephfig(3), phins(3), phvia(3),  phcon(3),
       phseg(3), phref(3), ptype(3), lofig(3).