Redundant-Via-Aware ECO Routing

advertisement
Redundant-Via-Aware ECO Routing
Hsi-An Chien
Ting-Chi Wang
ASPDAC2014
Outline





INTRODUCTION
PROBLEM DEFINITION
THE PROPOSED APPROACH
EXPERIMENTAL RESULTS
CONCLUSIONS
INTRODUCTION

With the advent of the manufacturing strategy that
requires redundant via insertion (RVI) for tackling
single via failure to enhance the chip reliability and
yield.
INTRODUCTION

Unfortunately, due to the large number of inserted
redundant vias, a design could become too
congested for engineering change order (ECO)
routing to succeed.
INTRODUCTION
INTRODUCTION

By using a traditional ECO routing method, it is easy
to get a feasible routing path that utilizes four vias, v6,
v7, v8, and v9.
INTRODUCTION

But only redundant vias rv6 and rv8 can be inserted
next to v6 and v8 while v7 and v9 become dead vias.
INTRODUCTION

If rv2 is removed, a shorter routing path that has two
vias, v6 and v7, and one inserted redundant via rv6 for
the ECO net can be found, as shown in Figure (c).
INTRODUCTION

To further reduce the amount of dead vias, we can
replace rv1 and rv3 with rv’1 and rv’3,
PROBLEM DEFINITION

It’s a ECO routing problem where redundant vias are
present in the given layout but can be considered for
replacement or removal to increase the routability
and improve the routing quality.
PROBLEM DEFINITION

The goal is to find a routing path with routing cost as
small as possible.

The cost considers several routing factors, including
wirelength, vias, dead vias.
THE PROPOSED APPROACH


For an easy presentation, each routing layer is
virtually superimposed with a grid to form the 3D
routing.
Each gridpoint is a square on a metal layer, whose
width is the minimum wire width on that layer.
THE PROPOSED APPROACH

To efficiently find the routing path to connect s and t,
we exploit A* search.
THE PROPOSED APPROACH

Given a feasible gridpoint g on Metal1 as shown in
Figure (a).
THE PROPOSED APPROACH

Figure(b) shows the construction of the query region
for g, which expands g by ws along each side to form
the query region qrg.
THE PROPOSED APPROACH

If the existing objects of Metal1 do not intersect with
the query region , the gridpoint is feasible.
THE PROPOSED APPROACH

We can see that qrg overlaps with qrrg so it is not
necessary to query the overlapped region between
qrg and qrrg again.
1
1
THE PROPOSED APPROACH

The reduced query region rqrrg shown in Figure(d) is
used to lower the search effort when examining
whether rg1 is a feasible gridpoint.
1
THE PROPOSED APPROACH

the rqrtg intersects with an existing wire segment on
the same layer , and therefore tg1 is not a feasible
gridpoint
1
THE PROPOSED APPROACH

Since existing redundant vias can be replaced or
removed, they will be ignored in any query region
THE PROPOSED APPROACH

It’s allowed to be replaced with rv1 (Figure (g)) or
removed out of rqrrg (Figure (h)), so rg2 is treated as
a feasible neighboring gridpoint for rg1.
2
THE PROPOSED APPROACH


To check the upper neighboring gridpoint ug on
Metal2 of the gridpoint g.
We can also deal with different wire widths and
spacings on adjacent layers.
THE PROPOSED APPROACH

We pick the nearest upper neighbor ug and locate
the via connecting g and ug at the intersection point v
THE PROPOSED APPROACH

Our path finding A* search algorithm uses the
following cost function:

g(n) : the actual routing cost from the source node s
to the current node n
h(n) : the Manhattan distance between n and t.

THE PROPOSED APPROACH


g(n) is the cumulative cost of the best path p from s
to n
g(n) = G(n) + αV (n) + βI(n) + γR(n)
THE PROPOSED APPROACH

G(n) =Pd +2*Nd

Pd: number of gridpoints along preferred routing
directions

Nd: the number of gridpoints along non-preferred
routing directions.
THE PROPOSED APPROACH

V (n): amount of vias on the path p

I(n): total number of “illegal redundant via insertions”
among these new

R(n): total number of “illegal redundant via
replacements”
THE PROPOSED APPROACH


To enhance the efficiency, our algorithm will search a
certain amount of consecutive gridpoints along a
preferred routing direction as a whole.
and return the maximum number of consecutive
feasible gridpoints
THE PROPOSED APPROACH

And return the maximum number of consecutive
feasible gridpoints.
EXPERIMENTAL RESULTS

All experiments were conducted on a Linux
workstation with an 2.2 GHz AMD CPU and 8G
memory.
EXPERIMENTAL RESULTS
CONCLUSIONS

An ECO routing approach that considers redundant
via replacement, removal, and insertion.

Successfully increased the routing completion rate
and improved the routing quality.
Download