BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of...

28
BSG-Route: A Length- Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana- Champaign ICCAD 2008

Transcript of BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of...

Page 1: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

BSG-Route: A Length-Matching Router for General Topology

T. Yan and M. D. F. Wong

University of Illinois at Urbana-Champaign

ICCAD 2008

Page 2: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Outline

Introduction Backgrounds

The length-matching routing problem Problem formulation Bounded-Sliceline grid

BSG-Route Experimental Results Conclusion

Page 3: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Introduction

Length-matching routing is very important issue for PCB routing.

Length-matching constraints: all the wires in a bus are expected to be routed with specified length bounds.

Previous length-matching routers all have assumptions on the routing topology, e.g., each wire must be routed monotonically in one direction, from left to right.

Page 4: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Introduction

This paper propose a length-matching router that is capable of handling any given topology.

Regard the length-matching routing problem as an area assignment problem.

Introduce a placement structure, Bounded-Sliceline Grid (BSG), to solve the problem.

Page 5: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Backgrounds The length-matching routing problem

Bus routing for PCB has two phases: Escape routing Area routing

Escape routing is to route from the pin array inside a component to the boundary of the component.

Area routing is to complete the connections between the boundaries.

Page 6: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Backgrounds

The length-matching routing problem Escape routing must guarantee that the pin ordering

on both boundaries are matched. Area routing is to detour the wires to meet the length

bounds while maintaining the topology inherited from escape routing.

Area routing as “length-matching routing”

Page 7: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Backgrounds

Problem formulation Input:

The location and size of the components and the location of the pins on the components’ boundaries.

A planar topology of the nets connecting the pins. A rectangular domain for the routing. A separation rule ε>0 for wires. Length bounds (li, ui) for each net i. li is the lower bound, ui is t

he upper bound. li <= ui. Output:

A rectilinear routing following the given topology and satisfying the separation rule. The length of each net i satisfies li <= length(i) <= ui.

Page 8: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Backgrounds

Bounded-Sliceline Grid It uses a set of vertical and horizontal segments to par

tition the whole plane into rectangular cells. Each cell in the grid is bounded by four segments, two

vertical (V-walls) and two horizontal (H-walls). Each wall spans over two cells.

Page 9: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Backgrounds

Bounded-Sliceline Grid The size and location of a cell are determined by the p

ositions of the four walls surrounding it. By moving the wall, we can enlarge a cell (A), shrink a

cell (B), move a cell (C), make a cell vanish (D).

Page 10: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

BSG-Route

The length of a wire is the area it occupies divided by ε if the wire is a fat wire with width ε (ε is the separation rule).

Instead of how to detour the wires to meet the length bounds. Consider how to assign the area to the nets such that the

assigned area of each net matches its length bounds.

Page 11: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

BSG-Route

The flow of the router: Embed the given topology onto a BSG. Size the cells in the BSG so that the total area of the

cells occupied by a net satisfies its length bounds. Perform detail routing inside each cell to turn the

assigned area into expected length.

Page 12: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

BSG Embedding

Map the components, pins and nets onto a BSG. BSG is a structure that represents left-right,

above-below relations between objects. If a pin is above another pin, its cell should also be

above the other’s cell. Allow at least one empty cell between two nets. A component should be mapped into multiple

cells forming a rectangular area.

Page 13: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

BSG Embedding

Even though the initial embeddings are different, the shape and size of the area assigned to the net are the same after cell sizing.

Page 14: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Cell Sizing

For every V-wall v, xv represents its x coordinate. For every H-wall h, yh represents its y coordinate. For every cell i, we have four walls surrounding it. Left, right, bottom, top walls as xi,l, xi,r, yi,b and yi,t. For example, xi,r, xj,l xp,r and xq,l all refer to the same vari

able xv of wall v.

Page 15: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Cell Sizing

Basic Constraints: Every cell of the BSG must have a non-negative area. The top wall of a cell cannot be placed below the bottom

wall of the cell. The right wall of a cell cannot lie to the left of the wall of

the same cell.

Page 16: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Cell Sizing

If a cell is occupied by a net, both the width and the height of the cell should be at least ε:

So the basic constraints for a cell are either (1), (2) or (3), (4) depending on whether the cell is empty or occupied.

Page 17: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Cell Sizing

Location Constraints: Fix the walls on the four boundaries of a component. For a component m with its left-bottom corner located at

(Lm, Bm) and right-top corner located at (Rm, Tm):

Page 18: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Cell Sizing If a pin p is on the top boundary of a component. The y-coordinate of this pin is already fixed by (8). The following constraints to fix it at its x-coordinate Xp (suppose its

BSG cell is i):

Page 19: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Cell Sizing

Length Constraints: For a net k, (11) for its upper length bound uk and (12) fo

r its lower length bound lk:

Page 20: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Detail Routing

A net must enter a cell by going through a wall (entrance wall).

Exit the cell by going through another wall (exit wall). If the entrance wall and exit wall of a cell are of the same

type (both H-walls or both V-walls), we call the cell straight cell.

Otherwise, we call it corner cell. A point on its entrance wall (entrance point). A point on its exit wall (exit point).

Page 21: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Detail Routing

For a straight cell i, the minimum routing length from the entrance point to the exit point is their Manhattan distance wi+hi-ε(wi and hi denote the width and height of the cell).

Page 22: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Detail Routing

First detour horizontally as much as possible and then detour vertically as much as possible.

The routing length is at least wh/ε-4ε. Introduce a parameter δ in (12) to enlarge the area requirement.

δ=0.05

Page 23: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Detail Routing

A very skinny cell with its height less than 2ε but its width very large. Force the cell to be ε×εlarge. (15), (16) instead of (3), (4).

Page 24: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Solve The Problem

(12) is not convex. Fix the V-walls (x as constants) and solve for the H-walls

(y as variables) under all the constraints involving y. A LP which we call H-problem. Use the solution of the H-problem as constraints and

solve for the location of V-walls under the constraints involving x.

Another LP problem which call V-problem. Alternately solve the H-problems and V-problems.

Page 25: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Question

What if we get an infeasible LP problem during the iterations? Avoid this infeasibility by introducing a slack variable s>=0 into the

length constraints:

When s=0, the two constraints are the same as (11) and (12). Minimize s under the new constraints (13) and (14). Iteratively solve the H-problem and the V-problem until s=0 or s

cannot be further reduced.

Page 26: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Experimental Results

Page 27: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Experimental Results

Page 28: BSG-Route: A Length-Matching Router for General Topology T. Yan and M. D. F. Wong University of Illinois at Urbana-Champaign ICCAD 2008.

Conclusion

This paper introduced a length-matching router that handles general topology.

It is the first time that the length matching routing problem is solved without any restriction on the routing topology.