Date post: | 26-Dec-2015 |
Category: |
Documents |
Upload: | caitlin-burke |
View: | 221 times |
Download: | 4 times |
Authors: Jia-Wei Fang,Chin-Hsiung Hsu,and Yao-Wen Chang
DAC 2007
speaker: sheng yi
An Integer Linear Programming Based Routing Algorithm for Flip-Chip Design
Introduction
3
The increasing complexity and decreasing feature size of VLSI designs make the demand of more I/O pads a significant problem to package technologies.
An advanced packaging technology, the flip-chip (FC) package[Fig.1.(a)] is created for higher integration density and larger I/O counts.
However, in recent IC designs, the I/O pads are still placed along the boundary of a die. This placement does not suit for the flip-chip package well. As a result, the top metal or an extra metal layer, called a Re-Distribution Layer (RDL)[Fig.1.(b)] is used to redistribute the wire-bonding pads to the bump pads without changing the placement of the I/O pads
Introduction
5
There are two kinds of the RDL routing problems for flip-chip design.
1.free-assignment routing
:a router has the freedom to assign a wire-bonding pad to
bump pads during routing.
2.pre-assignment routing
:the mapping among wire-bonding pads and bump pads are
defined before routing and can not be changed.
ps: pre-assignment problem is more popular in practice since
the functions of wire-bonding and bump pads are
typically pre-defined by IC and packaging designers.
Problem formulation
6
}p,...,p,{p pads bonding- wirel ofset a of consists :r
package. theofboundary
at the rings pad bonding- wireg ofset a :}r,...,r,{rR
}b,...,b,{b pads bump q ofset a of consists :r
package. theof
center in the rings pad bump f ofset a :}r,...,r,{rR
pads. bump ofset the:B
pads. bonding- wireofset the:P
:notations
jl
j2
j1
pj
pg
p2
p1p
iq
i2
i1
bi
bf
b2
b1b
Problem formulation
7
segments.adjacent twoof middle in the line a :linecut
pads. bump and pads bonding
-reconnect wi topoints passing hese through tpass :Nets
points.
passingor pads connectsnet which a ofpart a :segment
]connected. be should that pad bump
a and pads) bonding- wireofset pad(a bonding
- wireaby defined is Nin n net pin)-pin(multi-2each :[ps
routing.for
nets)pin -multior pin -2 be nets(could ofset the:N
:notations
Problem formulation
8
design]
chip-flip eperformanc-high ain routing for the considered be also
shouldnets, obetween twgth in wirelen difference theskew, signal [the
path.turn - Uno with
route a is routing monotonic a ,informally :routing monotonic
.]r ring same in the
pads bonding-ireadjacent w obetween twsegment or pads
bumpadjacent obetween twsegment thebe Uu interval[an
intervals. ofset a :U
pj
:notations
interval.an through pass net to afor point the:point passing
Problem formulation
11
Problem 1 :The single-layer pre-assignment routing problem in the flip-chip design is to connect a set P of wire-bonding pads and a set B of bump pads according to pre- defined netlist with wire width and signal skew constrains so that no wire crosses each other, no signal skew constrain is violated, and the total wirelength is minimized under the 100% routability
guarantee.
RDL routing algorithm
13
Notations and construct the routing network G:
E)B,D(PGnetwork routing a
rings.) pad (bump)
bonding-ireadjacent w obetween tw ))b,b,b,((b
)p,p,p,(p rectangle a represents M m(each
tiles.ofset a :M
ring.) pad bonding
- wireain )b,(p intervalan or pads bumpadjacent two
between ))b,((b )b,(b intervalan through pass
net to a of node candidate a represents node ILP(each
nodes. ILPh ofset a :}dd{dD
B
1i1z'
1iz'
i1z
iz
1j1y'
1jy'
j1y
jy
j1y
jy
1iz
iz
i1z
iz
,...,,h21
[global routing : ILP Formulation]
RDL routing algorithm
14
Notations:
E: a set of edges which are the candidate segments of the
global routing paths of nets.
There are four types of edges:
1.the directed edge from a wire-bonding pad to a bump pad.
2.the directed edge from a wire-bonding pad to an ILP node.
3.the directed edge from an ILP node to a bump pad.
4.the directed edge from an ILP node to another ILP node.
[global routing : ILP Formulation]
RDL routing algorithm
17 [global routing : ILP Formulation]
.0)e,C(e
otherwise,;1)e,C(e ,e crosses e If .e
and ebetween crossing thedenoteshat function t :)e,C(e
.nnet of width wire thedenoteshat function t:)W(e
.e oflength thedenoteshat function t:)L(e
.n ofpath routing
-global theof jsegment candidate a denotes that edge:e
otherwise.,0xchosen; is jsegment the
if 1 x.nnet ofpath routing-global in thechosen is j
segment candidate a if denotes that riableinteger va 1-0 :x
:follows as aren formulatio ILP in the used notations The
qp,ji,
qp,ji,qp,ji,qp,
ji,qp,ji,
iji,
ji,ji,
i
ji,
ji,
ji,i
ji,
RDL routing algorithm Constraint (1): avoids the crossing Constraint (2): is used to avoid the congestion overflow of a
tile . Constraint (3): avoids the congestion overflow of an interval
between two pads.(for the edges passing through
the same interval.) Constraint (4): formulates the signal-skew constraint between
two nets. Constraint (5): guarantees that at least one edge of the wire-
bonding pad pi of net ni be chosen.
Constraint (6): flow conservation.
21 [global routing : ILP Formulation]
RDL routing algorithm Two ILP reduction techniques to reduce the size of network G
and the number of variables and constraints in the ILP:
(1).Constraint Graph Based Pruning
(2).ILP Node Merging
22 [global routing:ILP reduction]
RDL routing algorithm
23[ 出處 :2006 IEEE Monotonic Parallel and Orthogonal Routing for single-layer Ball Grid Array Package]
A single netlist is monotonic if and only if nets on each row are in increasing order.
RDL routing algorithm Passing point assignment
:passing points are transformed from ILP nodes in order to distribute nets pass through the same interval, according to their wire widths and further signal-skew constraints.
Net-Ordering Determination
29[Detail routing:passing point and Net-order Determination]
Experimental results
31
#Nets: the number of nets#Skew pairs: the number of matched nets with skew constrains#Wire widths: the number of variable wire widths#Rp: the number of wire-bonding rings#p: the number of the wire-bonding pad#Rb: the number of bump pad rings#b: the number of bump pads
Experimental results
32
Imp. Of CG(%):the reduction rate of the variables by using constrain graph pruning.Imp. Of NM(%):the reduction rate over the results listed in the Column “Imp. Of CG(%)” by using the ILP node merging.Total: the final resulting number of variables (constraints)