Browse Prior Art Database

Processing Nets with Multiple Cluster Points

IP.com Disclosure Number: IPCOM000115329D
Original Publication Date: 1995-Apr-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 6 page(s) / 168K

Publishing Venue

IBM

Related People

Relis, Y: AUTHOR

Abstract

Electrical and physical models of nets are different. The physical model of the net contains every wire segment. These wire segments can end at arbitrary points. In some instances these arbitrary points can have more than two wire segments connected to them. The electrical model represents the net as a set of edges each of whose endpoints is a pin. This simplified electrical model is used to quickly generate delays using curve fitted delay coefficients, rather than having to do time consuming ASTAP analysis on each net. As part of the design process it is necessary to map the physical representation of the net into the electrical representation.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 25% of the total text.

Processing Nets with Multiple Cluster Points

      Electrical and physical models of nets are different.  The
physical model of the net contains every wire segment.  These wire
segments can end at arbitrary points.  In some instances these
arbitrary points can have more than two wire segments connected to
them.  The electrical model represents the net as a set of edges each
of whose endpoints is a pin.  This simplified electrical model is
used to quickly generate delays using curve fitted delay
coefficients, rather than having to do time consuming ASTAP analysis
on each net.  As part of the design process it is necessary to map
the physical representation of the net into the electrical
representation.  A disclosure [*]  discussed an efficient algorithm
for discussed an efficient algorithm for accomplishing this when the
electrical representation contains only one cluster point (i.e., pin
with more than two edges connected to it).  However, for many designs
(e.g., array logic) it is necessary to have multiple cluster points
to insure that timing and wiring constraints are met.  This
disclosure describes how the prior disclosure can be generalized to
nets with multiple cluster points.

      Mapping of the physical representation of the net to the
electrical representation generally requires collapsing some of the
edges in the physical representation and treating these edges as
capacitance associated with one or more of the pins of the net.  It
assumes that a preprocessing step has determined which edges of the
physical net have common endpoints and has also correlated pins and
endpoints which have the same coordinates.  The prior disclosure
described how this collapsing should be done for nets with one
cluster point.  The algorithm follows:
  For each physical net;
  Points associated with the driver/receivers
   are initially marked with a '0';
  If the driver/receiver associated with a point marked '0'
   is a cluster point in the electrical model then
    mark that point '1';
   For each pin p  marked '0' do;
   if p has physical degree 2 then both edges connected
    to it are transmission line (as well as all the edges
    on paths from these two edges up to points of degree >2)
   else (p has physical degree 1 (shouldn't be more)) do;
    If the driver/receiver associated with p has
     degree one in the electrical model then do;
    path of edges connected to p  up to a point
     of degree >2 is transmission line
     end /* electrical degree 1 */
    else do; ( driver/receiver has degree 2 (shouldn't be
    more))
     (p is connected to only one edge)
     path of edges between p and point p' of
      degree > 2 is drop off;
     other edges connected to p' are
      transmission line;
     end; /* else electrical degree is 2*/
    end; /* physical degree 1 */
   end; /*each pin marked '0'*/
 (A) All remaining edges are drop off ass...