mahmudul_hasan_0409052042

VLSI LAYOUT DESIGN
PRESENTATION
Md. Mahmudul Hasan
Std No.: 0409052042
Presented Book Chapter

Multi-Layer Channel Routing
Complexity and Algorithm
-Rajat K. Paul
-
Chapter 5.4
Page 171-176
Topic

NP-Completeness of Multi-Layer
Restricted Dogleg Routing
Problem Formulation

Channel Routing Problem
 It
is the problem of computing a feasible route for
the nets so that the number of tracks required is
minimized.
 Minimizing the number of tracks also the minimize
the channel area.
Problem Formulation
Column
3
1
3
0
0
5
6
0
3
0
0
8 Track
6
0
6
3
4
5
8
1
2
0
Interval
2
4
7
2
4
1
5
7
8
7
dmax
 dmax
is the maximum local density which is the lower
bound on the number of tracks required.
3
1
3
0
0
5
6
0
3
0
0
8
6
0
6
3
4
1
5
8
2
0
2
4
7
2
4
dmax = 4
1
5
7
8
7
Horizontal Constraint Graph (HCG)



Horizontal constraint graph can be represented
using an HCG, HC = (V, E), where a vertex
corresponds to interval Ii of the net ni in the channel.
An undirected edge
, if the intervals Ii
and Ij, corresponding to the nets ni and nj , intersects
at a column.
An edge
in HCG indicates that the
corresponding intervals Ii and Ij are horizontally
constrained and are not assignable to the same
track.
Horizontal Constraint Graph (HCG)
2
1
5
4
3
6
8
7
Vertical Constraint Graph (VCG)



The VCG, VC = (V, E) is constructed to represented
the vertical constraint.
Here a vertex
corresponds to the interval Ii
of the net ni in the channel.
The directed edge
in the VCG indicates
that the net ni has to connect a top terminal and the
net nj has to connect a bottom terminal at the same
column position.
Vertical Constraint Graph (VCG)
3
4
6
8
5
1
vmax is the longest path in the VCG,
which is the another lower bound on the
number of tracks. Here vmax= 4.
2
7
Horizontal Non-Constraint Graph (HNCG)


The Complement of the horizontal constraint graph
is denoted as the horizontal non-constraint graph
(HNCG).
Defined as
, Where is the set of
vertices corresponding to the intervals and
.
Horizontal Non-Constraint Graph (HNCG)
2
1
2
1
5
5
4
3
6
4
8
7
7
6
8
Complement
3
Horizontal Non-Constraint Graph (HNCG)

Clique
A
set of vertices of a graph such that each pair of
vertices in the set have an edge between them.

A Clique of HNCG correspond to a set of nonoverlapping intervals that may safely be assigned
to the same track in a routing solution.
Reduced Vertical Constraint Graph (RVCG)


The RVCG, RVC = (CC, A’) is defined with any
clique cover CC of HNCG as its vertex set. The set
A’ of edges of the RVCG is defined as follows.
A directed edge is introduced in RVC = (CC, A’)
from clique Ci to clique Cj, if there are nets
and
such that there is a directed
edge from vg to vh in the VCG, VC = (V, A).
Reduced Vertical Constraint Graph (RVCG)
2
1
Clique Cover is {{3}, {1,6}, {2,7},
{4,8,5}}
5
3
4
7
6
8
4,8,5
3
3
6
1,6
HNCG
4
VCG
8
5
1
2
7
2,7
Dogleg





It is the vertical connection between two horizontal
segments of a net in a non-terminal position.
In dogleg routing horizontal wire segment of a net
is split into two parts and assigned to different
tracks.
In no-dogleg routing, a net is allowed to have only
one horizontal segment.
Dogleg routing helps us to minimize the number of
tracks.
But it increase the number of via hole. That is costly.
Dogleg
1
0
2
1
2
0
3
3
3
2
1
2
2
3
3
0
1
0
3
2
Dogleg
NP-Completeness

Following methods should be applied to prove a
problem NP complete
At first we have to prove the problem Y is belongs to
NP.
1.


NP is defined as those set of problem that can be verified
in polynomial time.
It means that if we are somehow given a certificate of a
solution then we could verify that the certificate is correct
in time polynomial in the size of the input to the problem
NP-Completeness
a
b
c
d

To prove 3SAT is NP
 Suppose
we are given a
certificate (a=0, b=1, c=1,
d=0) of the solution.
 We can easily verify the
solution is correct in
polynomial time.
F
NP-Completeness
2.
3.
4.
We have to select a known NP-Complete Problem,
say X.
Then we have to describe a polynomial time
algorithm that computes a function ƒ that map every
instance of x of X to an instance ƒ(x) of Y.
We have to prove that the function ƒ satisfies x
belongs to X if and only if ƒ(x) belongs to Y for all
x.
Two Terminal No-Dogleg VHVH Channel Routing


Instance: Channel specification of two-terminal nets.
Is there a four-layer VHVH routing solution for the
given instance using
tracks.
Two Terminal No-Dogleg VHVH Channel Routing
3SAT
IS2
TNVHVH
TNVHVH is NP-Complete
• TNVHVH  NP
Given a guess of a feasible routing solution
of an instance of TNVHVH, verify whether
the guess is a valid solution
• TNVHVH is NP-complete
Reduction from IS2 problem
Reducing IS2 to TNVHVH

Given an instance of 3SAT problem we first construct a graph G
= (V, E) with n = 4q vertices.
U= { a, b, c, d }
F = ( b + c + d )( d + b + a )( a + b + c )
!c
!a
b
d
!d
!b
Reducing IS2 to TNVHVH


Let the graph G = (V, E) has e number of edges
and n vertices.
We construct a channel specification I of density
for TNVHVH with 3e + n two-terminal nets
and 4e + 2n columns such that I has a VHVH routing
solution with
tracks if and only
if G has an independent set of size
.
Reducing IS2 to TNVHVH


The whole channel
is divided into
three block.
Left (L), Right (R)
and Middle (M)
block.
L
M
R
Reducing IS2 to TNVHVH


The instance I is constructed in such a way that it has
local density
at each column position of the
middle block M.
A unique minimum clique cover CC = {C1, C2 … ,
Cdmax} for its HNCG.
Reducing IS2 to TNVHVH




For each edge (vi, vj) in G.
We construct intervals in I so that the cliques Ci and
Cj of CC corresponding to vertex vi and vj in G from
a cycle in the RVCG, RVC = (CC, A’). This cycle is
realized by a set of intervals {I1i, j, I2i, j} in clique Ci
and a set of intervals {I1j, i, I2j,i ,I3j, i} in clique Cj.
This set of five intervals is called, a component.
Each component requires for consecutive columns.
Reducing IS2 to TNVHVH
n1i, j n2j, i
Ci
I1i, j
I1j, i
I2i, j
I2j, i
Cj
n2j, i n2i, j
I3j, i
Reducing IS2 to TNVHVH

Lemma : The HNCG of the constructed instance I has
a unique minimum clique cover of size dmax.
 Because
we do not permit any other interval to start or
end in the four columns realizing the component.
 All other cliques are made to contain an interval
spanning the four columns of a component.
Reducing IS2 to TNVHVH

For all other edge incident on vertex vi in G.
 Consider
the edge (vi, vk). The required cycle formed
by (Ci, Ck) and (Ck, Ci) in RVC = (CC, A’) can be
realized either to the left or to the right of the
component realizing the cycle formed by (Ci, Cj) and
(Cj, Ci).
Reducing IS2 to TNVHVH
Net of Ci
involved in two
cycle
Ci
Cj
Ck
I1i, j
I1j, i
I2i, j
I2j, i
I1i, k
I2i, k
I3j, i
I1k, i
I2k, i
I3k, i
Reducing IS2 to TNVHVH

Total number of column
An interval of I can have both ends involved in components.
 An interval whose left (right) end is not involved in a
component is simply tied up at the left (right) end of the
channel in the block L (R).
 This ensure local density dmax = n.
 Each of the e components require 4 columns.
 Leftmost and rightmost interval of each clique in CC require
2 columns.
 So total columns = 4e + 2n.

Reducing IS2 to TNVHVH

Total intervals
 Each
clique of CC has at least one interval each track.
So there are n intervals
 Introduction of each of the e components require three
additional three intervals
 Total intervals = 3e + n.
Reducing IS2 to TNVHVH (An example)
1
3
2



4
Component
c1
c2
c3
c4
Component
Total columns = 4*5+2*4 = 28
Total intervals = 3*5+4 = 19
CC = { {1}, {2}, {3}, {4} }
Component
Component
Component
Reducing IS2 to TNVHVH (An example)

Reduced vertical constraint graph RVCG, RVC =
(CC, A’) of the example graph.
C1
1
3
2
4
C2
C3
C4
TNVHVH is NP-Complete

Now we show that following three statements are
equivalent:
1.
2.
3.

F is satisfiable
G = (V, E) has an independent set of size
I has a VHVH routing solution using
.
tracks.
Proof of (1) and (2) is described in previous presentation.
TNVHVH is NP-Complete

Proof of if part

Suppose G = (V, E) has and independent set S of
size
.
1
3
2
4
In this graph we have independent set of
size 2. independent set is {2, 3}
TNVHVH is NP-Complete
C1
C2
C3
C4
RVC{2, 3}
C3
C2
RVC{2, 3} has no edge and is, therefore cycle free. So
we can assign these
intervals to H2 and
obtain a feasible VHVH routing solution for I with
tracks. This proves the if part.
TNVHVH is NP-Complete
c1
c2
c3
c4
TNVHVH is NP-Complete

Proof of only if part
 Suppose
I has a four-layer routing solution using
tracks.
 So we can assign a set of mutually non overlapping
intervals of I to a total of dmax tracks of the two
horizontal layers.
 This assignment gives us a minimum clique cover CC =
{C1, C2 … , Cdmax}.
 Let CCH2 be the cliques assigned to H2.
 So RVCCCH2 must be cycle free and then has no edges.
TNVHVH is NP-Complete
Comp
onent
Comp
onent
Comp
onent
Comp
onent
C1
Comp
onent
c1
c2
c3
C2
C3
c4
C4
This instance I gives us a four layer routing solution using
tracks and here there is no cycle between C1 and C2 .
Those cliques must be assigned to H2. RVC{2, 3} has no edge and
therefore {2,3} is the independent set of size 2. This proves the
only if part
Some Problems




Problem: TNVHVHVH
Instance: Channel specification of two-terminal nets.
Question: Is there a six-layer VHVHVH routing
solution for the given instance using
tracks.
This problem is NP-Complete. This can be proved
using a reduction from 3SAT as in the previous
problem.
Some Problems




Problem: TNViHi, 4 <= i < dmax
Instance: Channel specification of two-terminal nets.
Question: Is there a 2i-layer ViHi routing solution for
the given instance using
tracks.
This problem is NP-Complete. This can be proved
using a reduction from 3SAT as in the previous
problem.