Top Banner
Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer No-dogleg Routing
50

Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Multi-Layer Channel RoutingComplexity and Algorithm

- Rajat K. Pal

Md. Jawaherul Alam#040805062P

Presented by

Section 5.3: NP-completeness ofMulti-Layer No-dogleg Routing

Page 2: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Channel

C

EA D

B

F

VLSI Layout

Channel

Page 3: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

A D

Channelnets: set of terminals to be connected

terminalsChannel

routing

Page 4: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Channel

Area minimization requires number of track minimization

The channel routing problem is the problem ofcomputing a feasible route for the nets so that

the number of tracks required is minimized

Channel Routing Problem

Page 5: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Channel Routing

2 3 3

3 20

1

1

Manhattan routing

Page 6: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

2 3 3

3 20

1

1

Channel Routing

VH routing

Page 7: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

2 3 3

3 20

1

1

Channel Routing

Page 8: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Channel Routing2 3 3

3 20

1

1

2

02 3 3

3 20

1

1

2

0

Dogleg routing

No-dogleg routing

Page 9: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

1 4 0 6 0 3 3 9 7 0 3 2 0 0 5 0 0 0 5

4 0 6 0 4 1 8 2 0 9 0 0 8 3 0 0 7 0 5

I4 I8

I9

I2

I1

I3

I7I5

I6

Parameters in No-dogleg Routing

Page 10: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

1 4 0 6 0 3 3 9 7 0 3 2 0 0 5 0 0 0 5

4 0 6 0 4 1 8 2 0 9 0 0 8 3 0 0 7 0 5

I4 I8

I9

I2

I1

I3

I7I5

I6

Parameters in No-dogleg Routing

Column density =3

Column density =5

More horizontal layers: HVH routing

dmax = maximum

column density

Lower bound on #

tracks

Page 11: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

2 3 3

3 20

1

1

Parameters in No-dogleg Routing

2 3 3

3 20

1

1

Page 12: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

2 3 3

3 20

1

1

Parameters in No-dogleg Routing

2

3

1

VCG

vmax = longest path

length + 1

Lower bound on # tracksMore vertical

layers: VHV routing

Page 13: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Parameters in No-dogleg Routing

2

3

1VCG

2 1 3

3 20

2

1

Not possible in no-dogleg VH routing

Possible in no-dogleg VHV

routing

Page 14: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

VHVH Routing

2 1 3

3 20

2

1

V1

V2

H2H1

Page 15: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

VHVH Routing

2 1 3

3 20

2

1

V1

V2

H2H1

Tracks on H1 layer has VHV routing

Tracks on H2 layer has VH routing

Page 16: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

NP-completeness of Multi-Layer No-dogleg Channel

Routing

Page 17: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

NP completeness

A decision problem X is NP-complete if

X NP, i.e. for any yes instance I of X, there is a polynomial (in I ) sized certificate,

which can be verified in polynomial ( in I ) time.

A polynomial-time solution of X implies a polynomial-time solution of any problem X’

NP.

Polynomial-time

reducibility

Page 18: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Polynomial-time Reducibility from X’ to X

Any instance I’ of X’

An instance I of X

Size of I is in polynomial of

I’

Polynomial-time

A solution of I

Polynomial-timeA solution of

I’

Solution of X

Any instance I’ of X’

Polynomial-tim

e

A solution of I’

Page 19: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

3-SAT problem

U= { a, b, c, d } : a set of literals

F = ( b + c + d )( d + b + a )( a + b + c ) : Logical AND of q number of 3-element clauses,

each element in U

Is there a truth assignment of U that satisfies F ?

a

b

c

d

F

Is there a truth

assignment of a,b,c,d

that makes F=1 ?NP-complete

Page 20: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

IS3 problem

A undirected graph G = ( V, E ) with n vertices

Is there an independent set of size n/3 ?

Page 21: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

IS2 problem

A undirected graph G = ( V, E ) with n vertices

Is there an independent set of size n/2 ?

Page 22: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

ISi problem; i ≥ 4

A undirected graph G = ( V, E ) with n vertices

Is there an independent set of size n/i ?

Page 23: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNVHVH problem

Channel specification of multi-terminal net

Is there a four layer VHVH routing solution for the given instance using

dmax/2 tracks?

Multi-terminal no-dogleg VHVH channel routing

Page 24: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNVHVHk problem

Channel specification of multi-terminal net

Is there a four layer VHVH routing solution for the given instance using k

tracks?

Page 25: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNVHVHVH ( MNVHVHVHk ) problem

Channel specification of multi-terminal net

Is there a four layer VHVHVH routing solution for the given instance using

dmax/3 ( k ) tracks?

Page 26: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNViHi ( MNViHik ) problem

Channel specification of multi-terminal net

Is there a four layer ViHi routing

solution for the given instance using dmax/i ( k ) tracks?

Page 27: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNViHi+1 ( MNViHi+1k ) problem

Channel specification of multi-terminal net

Is there a four layer ViHi+1 routing

solution for the given instance using dmax/(i+1) ( k ) tracks?

Page 28: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

3-SAT

MNViHi+1

MNViHi+1k

MNViHi

MNViHik

MNVHVH

MNVHVHk

MNVHVHVH

MNVHVHVHk

ISiIS2 IS3

Page 29: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

IS3 is NP-complete

• IS3 NP : trivialGiven a guess of n/3 vertices,

check whether they are independent

A undirected graph G with n

verticesIs there an

independent set of size n/3 ?

• IS3 is NP-completeReduction from 3-SAT problem

Page 30: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

IS3 is NP-complete

b

d

!c

!d

!ba

c

b !a

G(F)

F is satisfiable if and only if G(F) has an independent size

of size q

q clauses

3q vertices

Page 31: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

IS3 is NP-complete

b

d

!c

!d

!ba

c

b !a

G(F)

q clauses

3q vertices

F is satisfiable if and only if G(F) has an independent size

of size qa=0, b=1, c=0, d=0F= 1

Page 32: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

IS3 is NP-complete

b

d

!c

!d

!ba

c

b !a

G(F)

q clauses

3q vertices

a=0, b=1, c=0, d=0F= 1

b, !d, !a

Page 33: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

IS3 is NP-complete

b

d

!c

!d

!ba

c

b !a

G(F)

q clauses

3q vertices

a=1, c=1, d=1

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

Page 34: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

3-SAT

MNViHi+1

MNViHi+1k

MNViHi

MNViHik

MNVHVH

MNVHVHk

MNVHVHVH

MNVHVHVHk

ISiIS2 IS3

Page 35: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

IS2 is NP-complete

b

d

!c

!d

!ba

c

b !a

G(F)

F is satisfiable if and only if G(F)

has an independent size

of size 2q

q clauses

3q vertices

q vertices

4q vertices

Page 36: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

3-SAT

MNViHi+1

MNViHi+1k

MNViHi

MNViHik

MNVHVH

MNVHVHk

MNVHVHVH

MNVHVHVHk

ISiIS2 IS3

Page 37: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

U= { a, b, c, d }F = ( b + c + d )( d + b + a )( a + b + c )

ISi is NP-complete

b

d

!c

!d

!ba

c

b !a

G(F)

q clauses

3q vertices

K(i-3)q+i

iq+i vertices

F is satisfiable if and only if G(F) has an independent size

of size q+1

Page 38: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNViHi+1

MNViHi+1k

MNViHi

MNViHik

MNVHVH

MNVHVHk

MNVHVHVH

MNVHVHVHk

ISiIS2 IS3

3-SAT

Page 39: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

• MNVHVH NP Given a guess of a feasible routing

solution of an instance of MNVHVH, verify whether the guess is a valid solution

• MNVHVH is NP-completeReduction from IS2 problem

MNVHVH is NP-complete

Page 40: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

34

21

G

MNVHVH is NP-complete

0 0 0 0 1 2 3 1 1 4 3 4 2 4 1 2 3 4

1 2 3 4 2 1 1 3 4 1 4 3 4 2 0 0 0 0

I2

I1

I3

I4

L RM

dmax = nVCG

34

21

G has an independent set of size n/2 if and only if the net has a

VHVH routing with n/2 tracks

Page 41: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

34

21

G

MNVHVH is NP-complete

0 0 0 0 1 2 3 1 1 4 3 4 2 4 1 2 3 4

1 2 3 4 2 1 1 3 4 1 4 3 4 2 0 0 0 0

I2

I1

I3

I4

L RM

dmax = nVCG

4

1

G has an independent set of size n/2 if and only if the net has a

VHVH routing with n/2 tracks

3

2

Page 42: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

34

21

G

MNVHVH is NP-complete

0 0 0 0 1 2 3 1 1 4 3 4 2 4 1 2 3 4

1 2 3 4 2 1 1 3 4 1 4 3 4 2 0 0 0 0

I2

I1

I3

I4

L RM

dmax = nVCG

4

1

3

2

2 3

3 2

Page 43: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

34

21

G

MNVHVH is NP-complete

0 0 0 0 1 2 3 1 1 4 3 4 2 4 1 2 3 4

1 2 3 4 2 1 1 3 4 1 4 3 4 2 0 0 0 0

I2

I1

I3

I4

L RM

dmax = nVCG

4

1

3

2

2 3

3 2

Page 44: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

34

21

G

MNVHVH is NP-complete

0 0 0 0 1 2 3 1 1 4 3 4 2 4 1 2 3 4

1 2 3 4 2 1 1 3 4 1 4 3 4 2 0 0 0 0

I2

I3

L RM

dmax = nVCG

4

1

3

2

2 3

3 2

Page 45: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNViHi+1

MNViHi+1k

MNViHi

MNViHik

MNVHVH

MNVHVHk

MNVHVHVH

MNVHVHVHk

ISiIS2 IS3

3-SAT

Page 46: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNVHVHk is NP-complete

Trivial

MNVHVH is a special case of MNVHVHk where k = dmax/2

Page 47: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

MNViHi+1

MNViHi+1k

MNViHi

MNViHik

MNVHVH

MNVHVHk

MNVHVHVH

MNVHVHVHk

ISiIS2 IS3

3-SAT

Page 48: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

Thank You

Page 49: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

a

b

c

d

F

Is there a truth

assignment of a,b,c,d

that makes F=1 ?

Page 50: Multi-Layer Channel Routing Complexity and Algorithm - Rajat K. Pal Md. Jawaherul Alam #040805062P Presented by Section 5.3: NP-completeness of Multi-Layer.

3-SAT problem

U= { a, b, c, d } : a set of literals

F = ( b + c + d )( d + b + a )( a + b + c ) : Logical AND of q number of 3-element clauses,

each element in U

Is there a truth assignment of U that satisfies F ?

NP-complete