Graphs on Grids: area and volume tradeoffs in circuit layouts By Dan Archdeacon University of Vermont Abstract: Finding a layout for a computer circuit can be considered as drawing a graph on an n x n grid or mesh. There are several measures of how efficient the layout is: the first strives to minimize the area, a second examines the maximum wire run, a third bounds the number of bends in the wires. Sometimes a circuit that is good in one sense is bad in another. We examine these tradeoffs and how to balance conflicting goals. We also examine what happens when we layout circuits in 3-dimensional n x n x n grids. Goal: represent a graph in the plane Assumptions: Vertices are points with integer coordinates (i,j), e.g., pixels Avoids scaling to make pictures arbitrarily small Can use approximation by rational coordinates for other drawings Typical measures: 1. 2. 3. Length of longest line (wire run) Length of shortest line Ratio max/min of lines Examples Polyline drawings (a) Straight-line drawings (b) Orthogonal drawings (c) Upward digraph drawings (d) Upward rooted trees Section 1: Straight-line drawings Want to draw vertices on integer points, edges as straight lines Must edges cross? If edges don’t have to cross, is there any advantage to having them cross? Kuratowski and Fary Theorem (K): A graph is planar if and only if it has no K5 or K3,3 as a topological subgraph Theorem (F): If a graph is planar, then it has a crossing free drawing with all edges are straight-line segments Measures of straight-line drawings Minimize area (width times height) Aspect ratio close to 1 (ratio of width verses height) Angular resolution (smallest angle between edges at a vertex) Minimum number of crossings Maximum number of symmetries Trading crossings and symmetries Picture on left has no crossings Picture on right better reveals symmetries There is no picture revealing all symmetries but without edge crossings Trading crossings and upwardness Picture on left has all arrows upward Picture on right has no crossings There is no picture with all arrows upwards but without edge crossings Minimizing crossings • Crossing # of a planar graph = minimum # crossings over all drawings. • Rectilinear crossing # = same, but only allowing straight-line drawings Drawings with small area for arbitrary graphs Theorem: There exist constants c1 and c2 such that every graph on n vertices has a straight-line drawing with c1 n < Area < c2 n log n Note edges may cross in these drawings Open problem: narrow this gap? Balancing area and aspect ratio in rooted trees Theorem: There exists constants c1 and c2 such that every rooted tree on n vertices has an upward straight-line drawing with area < c1 n log n, and aspect ratio < c2 n / log n Balancing area and angular resolution in all graphs If we require that no angles are small, the area of the layout may grow large very rapidly Theorem: If we require all angles to be of size at least r, then there are examples of graphs on n vertices where the area needed is at least c1 (c2)rn Balancing area and angular resolution in planar graphs Theorem: There are c1 and c2 such that every planar graph on n vertices with degree d has a straight-line drawing with area < c1 d3 n and angular resolution > c2 / d Open problem Consider straight-line drawings of general (nonplanar) graphs, so crossings are allowed The best known lower bound applicable to all graphs is angular resolution > c1 / d2 There are graphs for which angular resolution < c2 (log d) / d2 Which bound is the “right” answer? Section 2: Polyline drawings Now allow lines to have bends Measures of good drawings 1. 2. 3. All of the previous (area, aspect ratio, etc.) Total number of bends Maximum number of bends per edge Area of polyline drawings There are constants c1 and c2 such that any tree of order n has a polyline drawing with c1 n < area < c2 n There are constants c3 and c4 such that any graph of order n has a polyline drawing with c3 n2 < area < c4 n2 Balancing area and angular resolution in polyline drawings Theorem: There are c3 and c4 such that every graph on n vertices with degree d has a polyline non-crossing drawing with area < c3 n2 and angular resolution > c4 / d Section 3: Orthogonal drawings Now require all line segments to be horizontal or vertical. Note the maximum degree of a vertex is at most 4, or else there is no hope of such drawings Edges may cross (non-planar graphs) or not cross. If G is planar, allowing edges to cross may make a difference Area in orthogonal drawings Theorem: any planar graph with maximum degree 4 has a drawing without crossings with c1 n2 < area < c2 n2 (i.e., even if we require lines to always go horizontal or vertical, the bounds on the area remain the same) Orthogonal drawings with crossings Let G be a planar graphs, but let the orthogonal drawings have crossings. Then c_1 n log n <= area <= c_2 n (log n)^2 1. If allow crossings, area needed for planar graphs drops dramatically Gap between existential lower bound and universal upper bound 2. Aspect ratio and orthogonal drawings Theorem: Every binary tree on n vertices has an upward planar orthogonal grid with area <= c_1 n log (log n) and aspect ratio <= c_2 n log (log n) / (log n)^2 (As they say in England, mind the gap) Section 4: Planar orthogonal drawings (subdivided subgraphs of the grid) Now restrict attention to graphs whose vertices lie on the grid, and whose edges are (disjoint) paths through the grid Again, any such graph has maximum degree at most 4 Allow bends, but may bound these as part of a tradeoff Now very close to VLSI concerns The general problems are tough Theorem: It is NP-hard to determine the minimum area needed in a grid that contains G as a subdivided subgraph Theorem: It is NP-hard to determine the minimum number of bends in G represented as a subdivided subgraph of the grid Both results in J.A. Storer, Networks 14-2 (1984)181-212 Bounding the number of bends Theorem: Let G be a planar graph of order n and maximum degree at most 4. Suppose that G has at most 2 bends per edge and that crossings are allowed. Then the maximum number of bends is between n and 2n+4 Trading total number of bends and bends per edge Given an embedding of a graph, how large of a grid do we need to represent it? If 3 bends per edge 2n-2 <= total # bends <= (12/5)n + 2 If 3 bends per edge and 2-connected 2n-2 <= total # bends <= 2n + 2 If 2 bends per edge and 3-connected (4/3)(n-1)+2 <= total # bends <= (3/2)n + 4 If 1 bend per edge and cubic n/2+1 <= total # bends <= (12/5)n + 2 Finding grid subgraphs with few bends or with small area There are a lot of papers about how to find grid embeddings with a few number of bends Can find grid embedding with at most 4 bends per edge in linear time Can find grid embedding with W+H = n and aspect ratio 3/2 in linear time Graphs of larger degree If the degree of G is 5 or more, no subdivision is a subgraph of a grid. Instead allow vertices of G to be represented by large connected sets of grid vertices. Equivalent to G being a minor of a planar grid Theorem: Every planar embedding is a minor of some n x n grid Section 5: 3-dimensional Grids Application to circuit layouts The rapid rate of progress in VLSI technology suggests that multi-layered chips and packages will be commonplace in the not too distant future President of TI predicts the production of 3D chips by the end of the decade (unfortunately, quote was from 1982) More practical applications In “real life” circuits are constructed in layers Each layer contains either horizontal or vertical lines, but not both Connections between layers are through cuts called vias The number of layers is limited to about 6 or so Equivalent to finding a subdivision as a subgraph of a 3-D grid n x m x 3 Where are the processors? “one active layer” model requires all vertices to be on the bottom layer “many active layer” model allows vertices on any level Latter is more flexible, but has higher production costs “[Surprisingly…] many-active-layer layouts are little or no more efficient than one-active-layer layouts when the number of layers is relatively small” (Leighton and Rosenberg) Basics for the 3D problem Any subgraph of a 3-D grids must have maximum degree 6. Let n be the number of vertices in G. Any graph embeds in 3-space, so it is a subgraph of some 3D-grid. Minimize volume? Optimize other parameters such as bends? Existential results Any graph embeds in a 3-D grid of volume c1 n3/2 with at most 6 bends per edge (volume is known to be optimal) Volume up to n5/2 if 5 bends per edge Volume up to n3 if 4 or 3 bends per edge Volume n2 if maximum degree 4 Balancing volume and wire run Theorem: if the maximum degree of the graph G is at most 6, then there are constants c1 and c2 such that G is a minor of a 3D-grid with Volume < c1 n3/2 Max wire run < c2 n1/2 Gains over 2D layouts Suppose that we have a 2D-layout of a circuit (subgraph of a 2D-grid) with area A and maximum wire run R Theorem: There exists a 3D-layout of height H with Vol = A/H Max wire run = R/H Section 6: minors of 3D grids Theorem: Any graph on n vertices is a minor of an n x n x 2 grid (slightly more subtle argument shows (n-1) x (n-1) x 2 grid) Define the grid width of G, gw(G), as the smallest n such that G is a minor of the nxnx2 Determining the grid-width Lower bounds: show that G contains a subgraph that requires a large grid-width. Candidates are “brambles” that in a sense are highly connected. These are related to “cross-bar switches” that annoy real-life VLSI designs Upper bounds: show that G has a structure much like a tree, which allows recursive constructions of grid embeddings = layouts Future topics Determine the grid-width of classes of graph Find efficient algorithms for VLSI layouts: use bifurcation (recursive) algorithms and results from eigenspaces Relate to isoparametric properties The End
© Copyright 2026 Paperzz