1 / 26

Y. Kohira and A. Takahashi School of Computer Science and Engineering

CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles. Y. Kohira and A. Takahashi School of Computer Science and Engineering The University of Aizu, Japan. ASPDAC 2010. Outline. Introduction Problem Formulation Preliminaries CAFE Router

deanne
Télécharger la présentation

Y. Kohira and A. Takahashi School of Computer Science and Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CAFE router: A Fast Connectivity Aware Multiple Nets Routing Algorithm for Routing Grid with Obstacles Y. Kohira and A. Takahashi School of Computer Science and Engineering The University of Aizu, Japan ASPDAC 2010

  2. Outline • Introduction • Problem Formulation • Preliminaries • CAFE Router • R-Flip • Wall • Experimental Results • Conclusion

  3. Introduction • In the routing design of PCB, the controllability of wire length is often focused on. • If a routing method has the higher controllability on wire length, the routing delay would be controlled with higher accuracy. • Specification of signal propagation delay: target length. • Each net must be routed so that target length is satisfied.

  4. Introduction • PCB routing is divided into two parts: • Escape routing • River routing (Area routing)

  5. Problem Formulation • Length-matching routing problem for multiple nets with obstacles: • Input: routing grid with obstacles (single layer), two terminals for each net, target length for each net • Output: a set of feasible routes • Pass each non-obstacle grid at most once • The obtained routes of nets must not intersect each other • Objective: Minimize the sum of the absolute length errors of nets • Length error: the difference between actual wire length and target length

  6. Preliminaries • A routing area is represented by a routing grid consisting of unit squares. • Black square: off-square • White or gray square: on-square • The length of a net is defined by the number of edges of the route in the grid graph.

  7. Preliminaries • Trunk routing problem • This paper handle the trunk routing problem which is a sub-problem of the river routing problem. • Instance satisfies the trunk routing topology condition: • All terminals are put on the boundary of the routing area. • The boundary terminal sequence can be divided into the source terminal sequence S and the sink terminal sequence T.

  8. Preliminaries • A flow graph corresponding to the instance • The vertex set corresponds to on-square • The capacity of each vertex is set to 1 • If two grids are adjacent, two vertices are connected by two directed edges

  9. Preliminaries • If an instance satisfies the trunk routing topology condition • Each unit flow in a maximum flow corresponds to a feasible route of a net when: • The amount of a max flow = the number of nets • When the amount of a max flow is less than the number of nets, no feasible route of a net exists

  10. CAFE Router • This paper propose a fast heuristic algorithm CAFE (Connectivity Aware Frontier Exploration) router. • The route of a net is fixed by the movement of the frontier of the net from the source to the sink. • The route of a net is divided into two parts: the fixed part and the unfixed part • The routed from the source to the on-square just before the frontier is the fixed part fixed part frontier

  11. CAFE Router • An on-square which is passed by the fixed part of a net is called passed. • An on-square which has the frontier of a net is called occupied. • An on-square which is neither passed nor occupied is called free. free passed occupied

  12. CAFE Router • Step 1: Choose a focused net whose frontier is moved. • A net with the max remained length is chosen as the focused net • The remained length is the difference between the target length and the length of the fixed part of the net Target length Remained length T 6 7 6 6 - 2 = 4 7 - 2 = 5 6 - 2 = 4 S

  13. CAFE Router • Step 2: Check whether the connectivity is kept for each adjacent free on-square. • Max flow = # nets: can be connected • Max flow < # nets: cannot be connected • The flow graph is modified as follows: passed on-squares are regarded as off-squares, and occupied squares are set to source. infeasible on-square

  14. CAFE Router • Step 2: Check whether the connectivity is kept for each adjacent free on-square. • Max flow = # nets: can be connected • Max flow < # nets: cannot be connected • The flow graph is modified as follows: passed on-squares are regarded as off-squares, and occupied squares are set to source. feasible on-square

  15. CAFE Router • Step 2: Check whether the connectivity is kept for each adjacent free on-square. • Max flow = # nets: can be connected • Max flow < # nets: cannot be connected • The flow graph is modified as follows: passed on-squares are regarded as off-squares, and occupied squares are set to source. feasible on-square

  16. CAFE Router • Step 3: Select a square among feasible on-squares to which the frontier is moved. • Estimated length = fixed part length + shortest path length from frontier to sink • Frontier is moved to the adjacent grid so that estimated length approaches to target length

  17. The overall flow of CAFE Router Choose a focused net whose frontier is moved Repeat until all nets are connected Check the connectivity for each adjacent grid Move the frontier to an adjacent grid

  18. R-Flip • The routes are modified greedily in order to reduce errors of lengths of nets in a post processing. • If the net has positive error (long), find a 2x2 rectangle and replace it by a partial route of length 1. • If the net has negative error (short), find a 2x2 rectangle and replace it by a partial route of length 3. • R-Flip is applied to the nets whose errors are not equal to 0, until the routes of all nets cannot be improved.

  19. Wall • If terminals are placed inside the routing area, a flow in the max flow in the flow graph might connect between the terminals of different nets • The max flow might not correspond to a feasible route in the grid graph • An edge set in the grid graph which is removed from the grid graph is referred to walls With wall Without wall

  20. Experimental Results

  21. Experimental Results • Average error: average absolute errors of all nets • Worst error: error of the net whose absolute value is maximum data1

  22. Experimental Results data2 data3

  23. Experimental Results data1

  24. Experimental Results data2 (target length: 50)

  25. Experimental Results data3

  26. Conclusion • This paper proposes a fast heuristic algorithm CAFE router in order to obtain the route with small errors between lengths of routes and target lengths. • Errors are improved by applying R-Flip as the post processing.

More Related