huang-yu chen † , mei-fang chiang † , yao-wen chang † lumdo chen ‡ , and brian han ‡

44
Huang-Yu Chen , Mei-Fang Chiang , Yao-Wen Chang Lumdo Chen , and Brian Han Novel Full-Chip Gridless Routing Considering Double- Via Insertion The Electronic Design Automation Laboratory Graduate Institute of Electronics Engineering Department of Electrical Engineering National Taiwan University Taiwan UMC, Taiwan

Upload: charla

Post on 08-Feb-2016

49 views

Category:

Documents


2 download

DESCRIPTION

Novel Full-Chip Gridless Routing Considering Double-Via Insertion. Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡. † The Electronic Design Automation Laboratory Graduate Institute of Electronics Engineering Department of Electrical Engineering - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

Huang-Yu Chen†, Mei-Fang Chiang†, Yao-Wen Chang†

Lumdo Chen‡, and Brian Han‡

Novel Full-Chip Gridless Routing Considering Double-Via Insertion

†The Electronic Design Automation LaboratoryGraduate Institute of Electronics Engineering

Department of Electrical EngineeringNational Taiwan University

Taiwan

‡UMC, Taiwan

Page 2: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

2

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm Experimental Result Conclusion

Page 3: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

3

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm Experimental Result Conclusion

Page 4: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

4

Redundant-Via Insertion Via-open defectsVia-open defects are one of the dominant failures due

to the low-k, copper metal process in the nanometer era Redundant-via insertionRedundant-via insertion is highly recommended

by foundries to improve via yield and reliability Double vias have 10X 100X smaller failure rates than single vias

90nm copper interconnect(source: TSMC)

double-via insertion

metal 1metal 2

viaredundant via

Page 5: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

5

Dead, Alive, and Critical Vias For a via, a redundant-via candidateredundant-via candidate is its adjacent

position where a redundant via can be inserted Via categories:

Dead via:Dead via: the via with no redundant-via candidate Alive via: Alive via: the via with at least one redundant-via candidate Critical via:Critical via: the via with exactly one redundant-via candidate

critical via

dead viaalive vias

metal 1metal 2

viaredundant-via candidate

Page 6: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

6

SS

TT

SS

TT

Redundant-Via Aware Routing Traditionally, double-via insertion is focused on the

post-layout stage Minimizing dead and critical vias during routingMinimizing dead and critical vias during routing can

increase the post-layout double-via insertion rate by 15 25%

Dead vias cannot be paired with redundant vias Critical vias may not be paired due to competition with others

SS

TT

a bad path a better pathdead via alive via

a routing instance

Page 7: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

7

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm Experimental Result Conclusion

Page 8: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

8

Multilevel Routing Billions of transistors may be fabricated in a single chip Multilevel routingMultilevel routing has demonstrated the superior

capability of handling large-scale designs

Already-routed netTo-be-routed net

coarsening uncoarsening

‧global routing ‧detailed routing

‧failed nets rerouting‧refinement

Page 9: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

9

Observations In the coarsening stage, global and detailed routing global and detailed routing

are intertwined with each otherare intertwined with each other at each level Advantage:

Routing resource estimation is accurate Information of previously routed nets is exactly

known Disadvantage:

Optimization freedom is limited Refinement takes a lot of efforts and the solution

easily falls into local optima

Need more flexibility to address Need more flexibility to address nanometer electrical effectsnanometer electrical effects

Page 10: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

10

SeparateSeparate global routing and detailed routing Effectively perform global and detailed routing optimization

Pre-analyzePre-analyze congestion congestion to assist resource estimation

Apply bottom-upbottom-up routing approaches to handle local circuit effects

Better for routability, congestion, and via minimization Redundant-via planning is a local effect

Maximize the optimization freedom

Ideas for Improvements

Page 11: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

11

Our Two-Pass, Bottom-Up Routing FrameworkTo-be-routed net Already-routed net

G0

G1

G2

coarsening

First Pass StageFirst Pass Stage Second Pass StageSecond Pass StagePrerouting StagePrerouting Stage

high

low

coarsening

G0

G1

G2

coarsening

coarsening

Apply global routingglobal routing for local nets and iteratively refine the solution

Use detailed routingdetailed routing for local nets, reroute failed nets, and estimate resources level by level

Identify congestion congestion hot spotshot spots based on the routing topology of each net

Page 12: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

12

Redundant-Via Aware Routing

Congestion-Prediction PreroutingCongestion-Prediction Prerouting

Via-Minimization Global RoutingVia-Minimization Global Routing

Redundant-Via Aware Detailed RoutingRedundant-Via Aware Detailed Routing

Page 13: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

13

congestion-predictionprerouting

Congestion-Prediction Prerouting Predict congestion hot spots to guide the following routing

for better congestion minimization Help to reduce detours and thus the via count

Alleviate post-layout double-via insertion efforts

global tilecongestion-minimization

global routingrouting

topology

Page 14: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

14

SS

TT

Probabilistic Congestion Model Predict congestions based on the probabilistic distribution

of 1- and 2-bend global routes

probabilistic congestions

SS

TT+3/5

+1/5

+1/5

+2/5

+1/5

+2/5

+1/5

+1/5

+3/5

+1/5 +1/5 +1/5+2/5

+1/5 +1/5 +2/5+1/5

five 1- and 2-bend global routes

may become congestion hot spot

Page 15: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

15

Via-Minimization Global Routing Apply congestion-driven global pattern routingpattern routing

[TCAD’02] to reduce via counts Uses L-shaped (1-bend) and Z-shaped (2-bend) connections

to route nets Has lower time complexity than maze routing

L-shaped (1-bend) connection Z-shaped (2-bend) connection

Page 16: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

16

The objective is to minimize dead and critical vias Router should select a path that passes through the

fewest redundant-via candidates in the routing graph It may incur more detours and thus more vias

Must consider (1) redundant-via planning and (2) via minimization simultaneously

Take the via countvia count and redundant-via related penaltyredundant-via related penalty as the cost to guide the detailed maze routing

Redundant-Via Aware Detailed Routing

Cost function for a net n: Vn: #via, Pn: redundant-via related penalty.

n n V P

Page 17: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

17

Redundant-Via Related Penalty Degree of Freedom of via v (DoFv):

# of redundant-via candidates of v Set the cost of redundant-via candidate r as

S

T

1/3

1/3

1/3

1/4

1/4

1/4

1/4

1/2

1/2

metal 1 metal 2 via redundant-via candidate

S

T

penalty = 5/6

penalty = 1/4

?

?

1iv

DoF{ max{ } | vi is the via that shares r }

Page 18: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

18

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm Experimental Result Conclusion

Page 19: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

19

Post-Layout Double-Via Insertion Problem Given a post-routing layout, pair each via with one

redundant via as many as possible without incurring any design-rule violation

Different approaches may affect the insertion result

2 vias are paired 3 vias are paired

metal 1metal 2

viaredundant via

Better Yield

Page 20: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

20

Previous Work Yao et al. [GLSVLSI’05] mentioned that post-layout

double-via insertion can be solved by maximum bipartite matching

Lee and Wang [ASPDAC’06] showed that maximum maximum bipartite matching formulation is incorrect for some bipartite matching formulation is incorrect for some casescases

Lee and Wang used maximum independent set (MIS)maximum independent set (MIS) to solve the problem and applied heuristics to speed up

MIS is NP-complete, MIS is NP-complete, high time complexityhigh time complexity

Page 21: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

21

A Troublesome Example

v2 v3

v1v1

v2 v3

V2 and V3 cannot be paired simultaneously

(horizontal design-rule conflict)

v2 v3

v1

v1

r2

v2

v3v2 v3

v1

v1r1v2

v3

V1 and V3 cannot be paired simultaneously

(vertical design-rule conflict)

routing layout cross-section view

metal 1metal 2

via12

redundant-via candidate

metal 3

via13

Page 22: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

22

Bipartite Graph Formulation Problem

V2 and V3 cannot be paired simultaneously

v1

r2

v2

v3

v1r1v2

v3

V1 and V3 cannot be paired simultaneously

v1r1

r2

v2

v3

a bipartite formulation

v2 v3

v1

v2 v3

v1

v2 v3

v1

v1

r1,2v2

v3

another bipartite formulation

v1r1v2

v3

v1

r2

v2

v3

InfeasibleLack

optimality

best result ?

Page 23: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

23

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm

Optimal Algorithm for up to 3 Routing LayersOptimal Algorithm for up to 3 Routing Layers On-Track/Stack Redundant-Via Enhancement Two-Stage Double-Via Insertion (TDVI) Algorithm

Experimental Result Conclusion

Page 24: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

24

Our Bipartite Formulation If stack via is treated as one unit viastack via is treated as one unit via, the double-via

insertion for designs with up to 3 layersup to 3 layers can be optimally solved by maximum bipartite matchingmaximum bipartite matching A polynomial-time optimal algorithm for the restricted case

The troublesome example can be accurately formulated

v1 v2

routing layout redundant-via candidate

metal 1metal 2

via12metal 3

via13

r2

v2

v3r

v1

v2

v1v2

cross-section view

v2

v1r2

v2

v3r

v1

v2 v2

v1

v2 is pairedv1 is paired

Page 25: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

25

r4,5

v1

v2

r1

r2

r3

r6

Alive Vias

Redundant-ViaCandidates

v3 r9

r7,8

final bipartite graph

Optimal Algorithm for up to 3 Layers

metal 3metal 1 metal 2 via23 redundant-via candidatevia12

v1

v2

r1

r2

r3

r4

r5

r6

Alive Vias

Redundant-ViaCandidates

v3

r7

r8

r9

v1v2r1 r6

v3

r8

r2r3

r4 r7

r9

r5

r8

v2r7

v3

design-rule conflict between r7 and r8

routing layout

initial bipartite graph

Page 26: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

26

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm

Optimal Algorithm for up to 3 Routing Layers On-Track/Stack Redundant-Via EnhancementOn-Track/Stack Redundant-Via Enhancement Two-Stage Double-Via Insertion (TDVI) Algorithm

Experimental Result Conclusion

Page 27: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

27

Preference for On-Track/Stack Redundant Via Redundant vias can be placed on-track or off-track.

If a redundant via is placed on the wire segment of its corresponding via, it is on-track; otherwise, it is off-track

Prefer on-track on-track and stack stack redundant vias for double-via insertion

On-track redundant vias consume fewer routing resources Better to protect stack vias which have lower yield than

single vias

r1

r2r3

r4

r6

r5

v1

v2

on-track

metal 1metal 2

via12

redundant-via candidate

metal 3

via23

routing layout

off-track

Page 28: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

28

On-Track/Stack Redundant-Via Enhancement Construct the weighted bipartite graphweighted bipartite graph and use

minimum weighted bipartite matching minimum weighted bipartite matching to solve For via v and its redundant-via candidate r, define

weight w(v, r) as follows:

stack redundant via preference

on-track redundant via preference

w(v,r) =tr/N, if v is a stack via containing N single vias;

tr, if v is a single via.{

tr =1, if r is on-track;2, if r is off-track.{

Page 29: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

29

Double-Via Insertion with Preference

routing layout

r1

r2

r3

r4,5

r6

r7,8

r9

1

2

2

1/2

1

1/2

1

22

v1

v2

v3

weighted bipartite graph

redundant via

r4

v1v2r1

r2r3

r6

r7

v3

r9

r8

r5

metal 3metal 1metal 2

redundant-via candidatevia23via12 via24

metal 4

insertion resultwith preference

v1v2

v3

r1 r6

r9

Page 30: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

30

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm

Optimal Algorithm for up to 3 Routing Layers On-Track/Stack Redundant-Via Enhancement Two-Stage Double-Via Insertion (TDVI) AlgorithmTwo-Stage Double-Via Insertion (TDVI) Algorithm

Experimental Result Conclusion

Page 31: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

31

Lb

Lt

Two-Stage Double-Via Insertion Algorithm1. Partition the layout into sublayouts with at most 3 layers,

s.t. # of design-rule conflicts between sublayouts is minimized

v1 v2

v3

v4

r3 r7

v6

r4

r8

metal 1 metal 2metal 3 metal 4

viaredundant-via candidate

r1 r2

r6r5

v5

conflict

Page 32: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

32

criticality = 2

criticality = 0

Two-Stage Double-Via Insertion Algorithm2. Decide the priority of each sublayout by criticalitycriticality

For redundant-via candidate r that has design-rule conflicts with the different sublayout, criticality cr = # of induced dead vias after inserting r; otherwise, cr = 0

Criticality of sublayout L = Σ cr, where r is inside L

v1 r1

r4

v5

v2

v3

v4

r7

r5 v6r8

metal 1 metal 2metal 3 metal 4

viaredundant-via candidate

Criticality: 0r2

r3

r6

conflict

Criticality: 2Lb

Lt

Page 33: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

33

Two-Stage Double-Via Insertion Algorithm3. Solve sublayouts in the non-decreasing order of criticality

If one sublayout is solved, update its adjacent sublayouts by removing the infeasible redundant-via candidates

v1 r1

r4

v3

r3

r6r5

metal 1 metal 2metal 3 metal 4

viaredundant-via candidate

Criticality: 0

Criticality: 2Lb

r1

r2

v1

v2

v3

v4

v5

v6

r7,8

r4,5

r3

v5

conflict

Lt

v2

v4

r7

v6r8

r2

Page 34: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

34

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm Experimental Result Conclusion

Page 35: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

35

Experimental Setting Platforms

Routing system: 1.2 GHz Sun Blade 2000 Double-via insertion algorithm: 3.2 GHz Intel Pentium 4

DRC verification: Cadence SoC Encounter MCNC benchmark:

Circuit Size (um2) #Layer #Net #Pin

Mcc1 45000 × 39000 4 1693 3101

Mcc2 152400 × 152400 4 7541 2502

4

Struct 4903 × 4904 3 3551 5471

Primary1 7522 × 4988 3 2037 2941

Primary2 10438 × 6488 3 8197 1122

6

S5378 435 × 239 3 3124 4818

S9234 404 × 225 3 2774 4260

S13207 660 × 365 3 6995 10776

S15850 705 × 389 3 8321 12793

S38417 1144 × 619 3 21035

32344

S38584 1295 × 672 3 28177

42931

Page 36: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

36

1 100%1 1.4 100%1.24 2.6 100%7.2 100%1.20 Comp.

148.5 100%54483191.6 100%74054170.9 100%688.6 100%67026S38584

43.7 100%4065555.9 100%5279892.0 100%362.8 100%50304S38417

16.4 100%1663320.0 100%2340539.3 100%326.0 100%19875S15850

11.6 100%1376715.7 100%1826331.2 100%122.6 100%17127S13207

2.9 100%53503.4 100%66908.4 100%22.6 100%6833S9234

4.0 100%67844.6 100%852011.0 100%41.0 100%8296S5378

17.7 100%2236523.7 100%2497759.7 100%42.0 100%25955Primary2

2.7 100%53474.2 100%616912.3 100%4.6 100%6374Primary1

2.8 100%72483.5 100%996911.6 100%5.9 100%10055Struct

783.0 100%331531149.1 100%34387702.9 100%3339.9 100%33093Mcc2

25.7 100%568751.5 100%576538.8 100%171.2 100%5791Mcc1

(s)RateVia(s)RateVia(s)Rate(s)RateVia

TimeCmp.#SingleTimeCmp.#SingleTimeCmp.TimeCmp.#Single

TBR (Ours)VMGR (ASPDAC'06)MARS (TCAD'05)MGR (ASPDAC'05)

Circuit

1 100%1 1.4 100%1.24 2.6 100%7.2 100%1.20 Comp.

148.5 100%54483191.6 100%74054170.9 100%688.6 100%67026S38584

43.7 100%4065555.9 100%5279892.0 100%362.8 100%50304S38417

16.4 100%1663320.0 100%2340539.3 100%326.0 100%19875S15850

11.6 100%1376715.7 100%1826331.2 100%122.6 100%17127S13207

2.9 100%53503.4 100%66908.4 100%22.6 100%6833S9234

4.0 100%67844.6 100%852011.0 100%41.0 100%8296S5378

17.7 100%2236523.7 100%2497759.7 100%42.0 100%25955Primary2

2.7 100%53474.2 100%616912.3 100%4.6 100%6374Primary1

2.8 100%72483.5 100%996911.6 100%5.9 100%10055Struct

783.0 100%331531149.1 100%34387702.9 100%3339.9 100%33093Mcc2

25.7 100%568751.5 100%576538.8 100%171.2 100%5791Mcc1

(s)RateVia(s)RateVia(s)Rate(s)RateVia

TimeCmp.#SingleTimeCmp.#SingleTimeCmp.TimeCmp.#Single

TBR (Ours)VMGR (ASPDAC'06)MARS (TCAD'05)MGR (ASPDAC'05)

Circuit

Gridless Routing Comparison Compared with the gridless router

Reduce the via count 20% over MGR [ASPDAC’05] Reduce the via count 24% over VMGR [ASPDAC’06]

Page 37: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

37

Redundant-Via Aware Detailed Routing Consider redundant vias during detailed routing

1.4X fewer dead vias and 1.1X fewer critical vias 2% slight increase in the via count

1 1 1 1 100%0.84 1.14 1.41 0.98 100%Comp.

175.3 12185333053057100%148.5 13358450952295100%S38584

53.0 8804247739489100%43.7 9702328739289100%S38417

20.6 3695107716179100%16.4 3950139615969100%S15850

14.2 291378613443100%11.6 3248103713263100%S13207

3.4 11403385158100%2.9 12844345144100%S9234

5.0 14984456411100%4.0 16566196448100%S5378

20.0 378943522338100%17.7 429858621788100%Primary2

3.0 800635325100%2.7 9501005176100%Primary1

3.1 531427097100%2.8 664586763100%Struct

997.3 7518261732153100%783.0 8741417931237100%Mcc2

29.8 13133885508100%25.7 15466165385100%Mcc1

(s)ViaViaViaRate(s)ViaViaViaRate

Time#Critical#Dead#TotalComp.Time#Critical#Dead#TotalComp.

With Redundant Via ConsiderationWithout Redundant Via Consideration

Circuit

1 1 1 1 100%0.84 1.14 1.41 0.98 100%Comp.

175.3 12185333053057100%148.5 13358450952295100%S38584

53.0 8804247739489100%43.7 9702328739289100%S38417

20.6 3695107716179100%16.4 3950139615969100%S15850

14.2 291378613443100%11.6 3248103713263100%S13207

3.4 11403385158100%2.9 12844345144100%S9234

5.0 14984456411100%4.0 16566196448100%S5378

20.0 378943522338100%17.7 429858621788100%Primary2

3.0 800635325100%2.7 9501005176100%Primary1

3.1 531427097100%2.8 664586763100%Struct

997.3 7518261732153100%783.0 8741417931237100%Mcc2

29.8 13133885508100%25.7 15466165385100%Mcc1

(s)ViaViaViaRate(s)ViaViaViaRate

Time#Critical#Dead#TotalComp.Time#Critical#Dead#TotalComp.

With Redundant Via ConsiderationWithout Redundant Via Consideration

Circuit

Page 38: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

38179.2%-98.6%0.98 70.8 76.2%-96.0%0.98 Comp.

2.02 78.8%3832297.8%4863228.8 77.6%3631494.1%468174972753057S38584

1.41 79.5%2885898.1%363198.4 78.7%2762194.8%350913701239489S38417

0.53 78.5%1159497.8%1477326.2 77.9%1107294.1%142141510216179S15850

0.44 79.6%987898.0%1240312.5 77.5%925894.4%119441265713443S13207

0.15 79.1%374998.4%474132.2 70.8%322894.6%455948205158S9234

0.20 76.9%448597.7%58301.6 75.0%418193.4%557159666411S5378

0.76 81.5%1783199.9%2187232.8 80.1%1737099.0%216772190322338Primary2

0.16 82.0%430999.9%525837.8 74.1%385398.8%520152625325Primary1

0.24 84.1%592999.9%705327.5 79.0%555299.6%702970557097Struct

1.80 75.7%2205698.6%2911817.9 75.7%2169897.0%286502953632153Mcc2

0.27 75.6%380298.2%502814.6 71.2%349495.9%490851205508Mcc1

RateRviaRateRvia

(s)Track Track RateRvia(s)Track Track RateRvia

TimeOn-#On-Ins.#Ins.TimeOn-#On-Ins.#Ins.

#Alive#Total

TDVI (Ours)H3K (ASPDAC'06)Via Info.

Circuit

179.2%-98.6%0.98 70.8 76.2%-96.0%0.98 Comp.

2.02 78.8%3832297.8%4863228.8 77.6%3631494.1%468174972753057S38584

1.41 79.5%2885898.1%363198.4 78.7%2762194.8%350913701239489S38417

0.53 78.5%1159497.8%1477326.2 77.9%1107294.1%142141510216179S15850

0.44 79.6%987898.0%1240312.5 77.5%925894.4%119441265713443S13207

0.15 79.1%374998.4%474132.2 70.8%322894.6%455948205158S9234

0.20 76.9%448597.7%58301.6 75.0%418193.4%557159666411S5378

0.76 81.5%1783199.9%2187232.8 80.1%1737099.0%216772190322338Primary2

0.16 82.0%430999.9%525837.8 74.1%385398.8%520152625325Primary1

0.24 84.1%592999.9%705327.5 79.0%555299.6%702970557097Struct

1.80 75.7%2205698.6%2911817.9 75.7%2169897.0%286502953632153Mcc2

0.27 75.6%380298.2%502814.6 71.2%349495.9%490851205508Mcc1

RateRviaRateRvia

(s)Track Track RateRvia(s)Track Track RateRvia

TimeOn-#On-Ins.#Ins.TimeOn-#On-Ins.#Ins.

#Alive#Total

TDVI (Ours)H3K (ASPDAC'06)Via Info.

Circuit

Post-Layout Double-Via Insertion Compared with H3K [ASPDAC’06]

71X runtime speedup A higher insertion rate (98.6%) and a higher on-track rate (79.2%)

Page 39: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

39

Double-Via Insertion of S5378

Page 40: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

40

Local View of Insertion Results

Page 41: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

41

Outline Introduction Redundant-Via Aware Two-Pass Routing System Post-Layout Double-Via Insertion Algorithm Experimental Result Conclusion

Page 42: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

42

Conclusion We have developed a redundant-via aware gridless

routing system Reduced via counts Obtained fewer dead vias and critical vias

We have proposed a post-layout double-via insertion algorithm

Resulted in a higher insertion rate Resulted in a higher on-track rate Achieved at least one-order runtime speedup

Page 43: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

43

Thank You!

Page 44: Huang-Yu Chen † , Mei-Fang Chiang † , Yao-Wen Chang † Lumdo Chen ‡ , and Brian Han ‡

44

Q & A