B-Escape: A Simultaneous Escape Routing Algorithm Based on Boundary - - PowerPoint PPT Presentation

b escape a simultaneous escape routing algorithm based on
SMART_READER_LITE
LIVE PREVIEW

B-Escape: A Simultaneous Escape Routing Algorithm Based on Boundary - - PowerPoint PPT Presentation

B-Escape: A Simultaneous Escape Routing Algorithm Based on Boundary Routing Lijuan Luo 1 , Tan Yan 1 , Qiang Ma 1 Martin Wong 1 , Toshiyuki Shibuya 2 1 ECE Department, University of Illinois, Urbana-Champaign . 2 Fujitsu Laboratories of America,


slide-1
SLIDE 1

B-Escape: A Simultaneous Escape Routing Algorithm Based on Boundary Routing

Lijuan Luo1, Tan Yan1, Qiang Ma1 Martin Wong1, Toshiyuki Shibuya2

.

1 ECE Department, University of Illinois, Urbana-Champaign 2Fujitsu Laboratories of America, Inc.

.

slide-2
SLIDE 2

Outline

 Introduction  Our Algorithm (B-Escape)

 Boundary Routing  Dynamic Net Ordering

 Implementation Details  Experimental Results  Conclusion

slide-3
SLIDE 3

PCB Routing

Escape routing

slide-4
SLIDE 4

Escape Routing Problems

1 3 5 2 4 2 5 1 4 3 (a) Unordered Escape (b) Ordered Escape 1 3 5 4 2 5 1 4 3 2 1 3 5 2 4 1 3 4 2 5 (c) Simultaneous Escape

slide-5
SLIDE 5

Previous Approaches

 Manual routing

 Time Consuming

 Pattern Routing

 Limited ability to do complex escapes

 Negotiated Congestion Routing

 Difficult to resolve crossings

slide-6
SLIDE 6

Our Contributions

 Introduce a boundary routing approach  Capable of handling complicated

problems in very short time

 Solved 14 industrial benchmarks while

Cadence Allegro only solved 7.

slide-7
SLIDE 7

Focus on 1-side Escape

 Without loss of generality, we only consider 1-side Escape.

slide-8
SLIDE 8

Ordered Escape

 Use ordered escape to present our boundary routing

approach

 Foundation of our simultaneous escape

slide-9
SLIDE 9

Routing Boundary

 The boundary of the maximum routable

region for the unrouted pins

 Shrinks as we route more pins

slide-10
SLIDE 10

Boundary Routing Methodology

 Tend to leave more space for the unrouted pins

11 17 12 15 13 14 16 11 17 12 15 13 14 16

(a) Boundary routing (b) Routing based on shortest path

slide-11
SLIDE 11

Routing Modes

11 17 12 15 13 14 16 10 8 7 6 2 3 4 9 1 5

Upward Mode Downward Mode

slide-12
SLIDE 12

Example

 Upward Mode

1 2 3

slide-13
SLIDE 13

Routing Modes

 Up-down Mode

 Alternate between the up and down modes

Trapped

slide-14
SLIDE 14

Routing Modes

 Detour Modes

 Go leftward to reach the boundary

 Detour upward  Detour downward  Detour up-down

Blocked (a) Upward (b) Detour upward

slide-15
SLIDE 15

Six Routing Modes

slide-16
SLIDE 16

Optimality for Monotonic Routing

 Guarantee an escape solution for monotonically

escapable problems

Monotonic routing (a); Non-monotonic routing (b) (c)

slide-17
SLIDE 17

Dynamic Net Ordering

 Huge routability differences caused by slightly

different net orderings

 Difficult to decide the correct ordering beforehand.

slide-18
SLIDE 18

Dynamic Net Ordering

 Tentatively route each remaining net (using

boundary routing)

 Choose the “best” one as the next net

slide-19
SLIDE 19

Cost Function

 Trap cost: # Pin unroutable  Block Cost: # Pin blocked (still routable)  The overall cost takes both components into

account.

slide-20
SLIDE 20

Reordering

 Sometimes pins may get trapped  Backtrack and get a different ordering

slide-21
SLIDE 21

Detailed Modeling of Routing Grid

 Need to capture diagonal routing

slide-22
SLIDE 22

Detailed Modeling of Routing Grid

 Introduce “Switch-box” into the grid structure  The switching condition:

 No crossing  Satisfy capacity constraint

Track

slide-23
SLIDE 23

Routing Differential Pairs

 Pair constraint: If two nets belong to a differential

pair, they are required to route together.

 Solution

 Order the paired nets successively. (avoid (b))  Define a new boundary for paired nets.

slide-24
SLIDE 24

Routing Differential Pairs

slide-25
SLIDE 25

Experimental Setup

 Implemented in C+ +  Pentium 4 2.8 GHz system with 4GB memory  Benchmarks:

 14 Industrial benchmarks  Manually solved by designers for 8

hours/benchmark

 # Net (18~ 64)  Grid size (16×14 ~ 38×36)

slide-26
SLIDE 26

Experimental Results

Benchmark Allegro B-Escape Ex1 100% 100% Ex2 100% 100% Ex3 100% 100% Ex4 95% 100% Ex5 80% 100% Ex6 100% 100% Ex7 90% 100% Ex8 100% 100% Ex9 100% 100% Ex10 95% 100% Ex11 96% 100% Ex12 100% 100% Ex13 70% 100% Ex14 80% 100% # routed problem 7/14 14/14

 Routability comparison

with Cadence Allegro PCB Router:

 14/14 v.s. 7/14

 Run time:

 B-Escape: 0.2s~ 691.3s  Negotiated Congestion

Router: 55.8s~ 6189.0s

slide-27
SLIDE 27

Experimental Results

slide-28
SLIDE 28

Conclusion

 Currently escape problems are mostly

solved manually

 We have presented a boundary routing

method to solve complicated escape problems

 B-Escape outperforms the commercial

PCB router.