New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and...

58
New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo, Ontario [email protected] November 2, 2004

Transcript of New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and...

Page 1: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

New Modeling Techniques for the Global

Routing Problem

Anthony VannelliDepartment of Electrical and Computer EngineeringUniversity of WaterlooWaterloo, [email protected]

November 2, 2004

Page 2: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Outline

Introduction

Optimization Techniques

Modeling Techniques

Global Routing

Summary and Conclusions

2

Page 3: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Major Contributions

• Development of route construction techniques based on congestion.

• Development of congestion estimation techniques.

• Development of flexible and powerful multi-objective formulations.

• Enhancement of numerical techniques to solve the global routing problem.

41

Page 4: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Introduction• Today’s ICs contain millions of transistors.• VLSI: “Very Large Scale Integration” .

• Performance criteria: Delay Power Size

• Routing is one of the most important factors in VLSI design.

3

Page 5: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Intel Microprocessors

microprocessor Date of introduction

Number of transistors

Feature size(microns)

80286 1982 134,000 1.5

80386 1985 275,000 1.5

80486 1989 1,200,000 1.0

Pentium 1993 3,100,000 0.8

Pentium Pro 1995 5,500,000 0.6

Pentium 4 2000 46,000,000 0.18

Why Is Routing Important?

4

Page 6: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

VLSI Design

Architectural design

Logic design

Circuit design

Physical design

Fabrication

Inp

ut-

Outp

ut

Memory

Data Path

ControlUnit

5

Page 7: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

VLSI Design

Architectural design

Logic design

Circuit design

Physical design

Fabrication

5

Page 8: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

VLSI Design

AA

B B

CC

Sum Sum

ACC

B

CoutCout

B

A

A

A A

Architectural design

Logic design

Circuit design

Physical design

Fabrication

5

Page 9: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

VLSI Design

Architectural design

Logic design

Circuit design

Physical design

Fabrication

5

Page 10: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

VLSI Design

Architectural design

Logic design

Circuit design

Physical design

Fabrication

5

Page 11: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Places the modules. Runs the wires that

connect them.

L

L B

H

E

J

A

E

T

H

A

6

Page 12: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Places the modules. Runs the wires that

connect them.

LL HEA

B JE H A T

L

L B

H

E

J

A

E

T

H

A

6

Page 13: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Places the modules. Runs the wires that

connect them.

Typical Objectives: Minimize the wire length Minimize the delay Minimize the power

LL HEA

B JE H A T

L

L B

H

E

J

A

E

T

H

A

6

Page 14: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Normally divided into steps

Partitioning

Placement

Routing

7

Page 15: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Normally divided into steps

Partitioning

Placement

Routing

8

Page 16: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Normally divided into steps

Partitioning

Placement

Routing

8

Page 17: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Normally divided into steps

Partitioning

Placement

Routing

8

Global Routing

Page 18: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Circuit Layout

Normally divided into steps

Partitioning

Placement

Routing

8

Detailed Routing

Page 19: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Global Routing

• Global routing is used to find an approximate path for the wires connecting the modules.

• NP-hard problem (i.e. difficult to solve for large problems).

• Solution quality can effect the performance of the circuit.

9

Page 20: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Illustrative Example

Net 1 terminals:

Objective: Minimize the total wire length

Net 2 terminals:

10

Page 21: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Illustrative Example

Net 1 terminals:

Objective: Minimize the total wire length

Net 2 terminals:

10

Total wire length= 8

Page 22: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Global Routing Techniques

Two main techniques:

Sequential Routing technique: Nets are routed sequentially.

Mathematical Programming technique:

All nets are routed at the same time.

11

Page 23: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Sequential Routing

Nets are ordered according to importance. Each net is routed separately.

1. Net 1 2. Net 2

Priority List

12

Page 24: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Sequential Routing

Nets are ordered according to importance. Each net is routed separately.

1. Net 1 2. Net 2

Length of net 1 = 4

Priority List

12

Page 25: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Sequential Routing

Nets are ordered according to importance. Each net is routed separately.

1. Net 1 2. Net 2

Length of net 1 = 4Length of net 2 = 5

Priority List

12

Page 26: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Sequential Routing

Total wire length:9

The solution is dependent on net ordering

Drawback:

13

Page 27: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Mathematical Programming

A set of routes is made for each net. Each route is assigned a binary variable.

Route 2

Route 1

Route 3

Route 1: Y1

Route 2: Y2

Route 3: Y3

Net 1 Routes:

Y =1 - Route selected0 - Otherwise{

14

Page 28: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Mathematical Programming

An Integer Linear Programming (ILP) problem is written:

min L yi

Subject to:

• For each net only one route can be chosen.

• Number of routes passing through a channel can not exceed the maximum channel capacity.

• Binary constraints on routes.

15

Page 29: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Drawbacks

The total number of possible routes can be very large.

Each route is a binary variable in the optimization problem.

Optimization problem becomes very large and hard to solve.

Example: MCNC Fract Test Circuit

147 nets more than 28,000 possible routes

16

Page 30: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Modeling Techniques

Develop congestion estimation techniques to construct an optimal set of routes:

• Least number of routes possible.• Least amount of congestion.

Develop multi-objective modeling techniques.

17

Page 31: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Route Construction

Initial approach: Limit the number of routes considered by making only

minimum-length minimum-bend routes.

Can result in sub-optimal and infeasible solutions.

18

Page 32: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Route Construction

Proposed enhancement: Use congestion techniques to estimate

where additional possible routes should be generated.

Limits the size of the problems. Gives feasible and optimal

solutions.

19

Page 33: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Congestion

Definition:

In the final solution, there are toomany routes in a given channel.

Congested areas can cause: Infeasibility Hotspots

20

Page 34: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Example: MCNC BIO Test Circuit

Vertical Channels

Hori

zonta

l C

han

nels

21

Page 35: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Example: MCNC BIO Test Circuit

Vertical Channels

Hori

zonta

l C

han

nels

21

Page 36: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Congestion Estimation Model

Data: Number of routes produced for each

net. Which edge each route passes through.

Objective: To estimate the number of routes that

might pass through each edge.

22

Page 37: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Routing Demand

Definition:

• The probability of each route to be chosen:

• Routing Demand, r(e), of each edge is the sum of the probabilities of the routes that pass through the edge.

net ain routes ofnumber

1)( Yp

23

Page 38: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Proposed Approach

Calculated routing demands are used to identify congested areas;

1. Generate additional routes for the nets in the areas where congestion is most likely to occur.

2. Construct additional routes through areas where congestion is less likely to occur.

24

Page 39: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Set of Possible Routes

25

Set of all possible routes

Produced based on congestion

Minimum length routes

Page 40: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Proposed Route Construction

Congestion Based Route Construction

Construct minimum length routes

Estimate congestion

Construct additional routes for congested nets

26

Page 41: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Illustrative Example

Net 1: Route Y1 p(Y1) = 1

Net 2:Route Y2, p(Y2) = 1/2

Route Y3, p(Y3) = 1/2

e1

e3

e2

27

Page 42: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Illustrative Example

Routing Demands:

r(e1) = p(Y2)=1/2

r(e2) = p(Y1)+p(Y3) = 3/2

r(e3) = 0

27

e1

e3

e2

Page 43: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Illustrative Example

Additional Trees:

For net 1 Y4 p(Y4)

p(Y1) = 1/2p(Y4) = 1/2

27

e1

e3

e2

Page 44: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Illustrative Example

27

e1

e3

e2

Routing Demands:

r(e1) = p(Y2)=1/2

r(e2) = p(Y1)+p(Y3) = 1/2+1/2=1

r(e3) = p(Y4) = 1/2

Page 45: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Test Circuits

28

Name # nets Grid sizes

Case 1 bio 5742 46x46

Case 2 ind1 2478 27x27

Case 3 ind2 13419 71x71

Case 4 ind3 21938 54x54

Case 5 avq.small 22124 66x66

Case 6 avq.large 25384 66x66

Page 46: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Numerical Results

0

5000

10000

15000

20000

25000

30000

35000

40000

45000

50000

Num

ber o

f Rou

tes

1 2 3 4 5 6

Case Number

Original Number ofRoutesAdditional Routes for allnetsAdditional Routes basedon Congestion

29

Page 47: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Numerical Results

0

5

10

15

20

25

30

35

40

45

50

Max

imum

Rou

ting

Dem

and

1 2 3 4 5 6

Case Number

Original Routes

Additional Routes for allnetsAdditional RoutesBased on Congestion

30

Page 48: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Numerical Results

31

Before constructing additional trees

After constructing additional trees

Routi

ng d

em

and

Routi

ng d

em

and

Page 49: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Modeling Formulations

Traditional Approaches: Consider only wire length

Proposed Multi-Objective Approaches: Wire length Congestion Number of bends Channel Capacity

32

Page 50: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Numerical Results

0

10

20

30

40

50

60

Max

imum

Cha

nnel

Cap

acity

1 2 3 4 5 6

Case Number

Wire Length Appoach

Combined Approach

33

Page 51: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Numerical Results

0

5

10

15

20

25

30

35

40

Wire

Len

gth

(m)

1 2 3 4 5 6

Case Number

Wire Length Approach

Combined Approach

34

Page 52: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Optimization Techniques

Global routing problem is formulated as a Linear Programming (LP) problem.

Number of constraints is very high.

35

min wTxSubject to: A x b 0 x

Page 53: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Interior Point Methods

•Interior Point methods are used to solve the global routing LP problem.

36

•One step in the Newton direction is taken at each iteration.

•The bottleneck of the IP method is in solving the Newton step.

Feasible region

Central pathInitial solution

Optimal solution

Page 54: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Matrix Re-ordering

Objective:

Find a faster solution to the Newton equations by reordering the constraint matrix of the LP problem.

Proposed Approach:

Apply an eigenvalue based reordering technique to the constraint matrix.

Constraint matrix is only reordered atthe start of the Interior Point solution.

37

Page 55: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Matrix Re-ordering

38Before reordering After reordering

The constraint matrix of the global routing problem is a 0/1 matrix.

Page 56: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Programs Developed• C Program to convert placement results to

routing grid model.• C++ program to produce routes.• C++ program to estimate congestion.• C++ program to produce objective function

and constraint matrix of the global routing problem.

• Matlab program to perform matrix reordering.

• Matlab program to for rounding.• Matlab program for visual illustration of

channel capacities.40

Page 57: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Numerical Results

0

1000

2000

3000

4000

5000

6000

7000

Tim

e to

Sol

ve L

P (s

)

1 2 3 4 5 6

Case Number

Without reodering

With reordering

Reordering time

39

Page 58: New Modeling Techniques for the Global Routing Problem Anthony Vannelli Department of Electrical and Computer Engineering University of Waterloo Waterloo,

Conclusions and Summary

• Incorporating congestion in global routing leads to compact problems that give high quality solutions.

• Results obtained from benchmarks show the multi-objective formulation results in less congestion and reduces the wire length.

• Matrix reordering is effective in reducing the solution time of the LP problem.

40