Top Banner
MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1
27

MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

Dec 25, 2015

Download

Documents

Easter Lang
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

1

MGR: Multi-Level Global RouterYue Xu and Chris ChuDepartment of Electrical and Computer EngineeringIowa State University

ICCAD 2011

Page 2: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

2

Outline Introduction Preliminary Multi-level global rerouting framework Experimental result

Page 3: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

3

Introduction Due to the increasing size of modern circuits,

together with complex demands, every major physical design automation problem faces an exploding size and intricate tradeoff to balance.

Global Router Generate a “loose” route for each net. Assigns a list of routing regions to each net

without specifying the actual layout of wires.

Page 4: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

4

Introduction Global Router

Type Approach Command

2D Rip-up and rerouting (NTHU-R, NTUgr)

Append traditional single- layer global routers with layer assignment techniques

3D 3D Maze routing(FGR)

Directly work on the metal layers in the layout

Page 5: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

5

Introduction Multi-Level Framework Global Router

Multi-level framework is a quite mature concept in physical design, commonly used to speed up partitioning and placement tools.

This paper propose the first academic multi-level global router and name it Multi-Level Global Router(MGR).

Page 6: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

6

Introduction Multi-Level Global Router(MGR)

A multi-level 3D global rerouting framework to efficiently generate high quality solutions.

An adaptive resource reservation technique in coarsening process.

A new 3-terminal maze routing algorithm to optimally connect 3 separate terminals for a net.

A network flow based solution propagation technique in uncoarsening stage.

Page 7: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

7

Preliminary Global Routing Grid Graph Flow of MGR

Page 8: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

8

Global Routing Grid Graph

In global routing, the die is partitioned into 3D global cells.

Every cell is modeled as a node, and every boundary is modeled as a edge with capacity and usage of cross-cell nets.

Cell structure Grid graph

Page 9: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

9

Global Routing Grid Graph The capacity of a grid edge is defined

as the maximum number of nets that can use the grid edge.

The usage is the actual number of nets that use the grid edge.

Overflow is defined as .

Page 10: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

10

Global Routing Grid Graph The original cell structure and grid graph with

finest structure is denoted as level-1. The top level is denoted as level-t. One level-(i+1) grid edge corresponds to two

level-i grid edges.

Page 11: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

11

Global Routing Grid Graph 4 neighboring cells are merged into one The hierarchy is built up until each layer in the

top level grid graph becomes smaller than or equal to the size of 8-by-8.

Page 12: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

12

Flow of MGR

Page 13: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

17

MGR framework Coarsening Process 3D Maze Routing Routing Propagation to Lower Level

Page 14: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

18

Coarsening Process

MGR contracts , , , and intoa level- grid graph node.

Page 15: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

19

Coarsening Process

Assigns a node adjustment value which is + + + , the sum of overflow of the level-i grid edges it includes.

Page 16: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

20

Coarsening Process

Convert the node adjustment value to edgecapacity adjustment on the same level by distributing the node adjustment value to the capacity of grid edges connecting to the node.

Page 17: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

21

3D Maze Routing Instead of ripping-up a 2-pin edge, MGR rip-ups

three 2-pin edges that connect to a shared Steiner node, generating 3 separate terminals waiting to be connected.

Then MGR starts the maze wavefront propagation for each terminal until it meets any one of the other two terminals.

After the propagations, we find the least cost Steiner node wavefront by checking the region visited by all three wavefront propagation procedure.

Page 18: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

22

3D Maze Routing The problem size is small during the high level

grid graphs so it can afford running more maze routing.

MGR rips-up and reroutes every net using 3D maze routing for the top 2 levels to get better solutions.

On lower levels, MGR only use 3D maze routing to reroute congested nets, just like the behavior of traditional 2D sequential routers.

Page 19: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

23

Routing Propagation

Page 20: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

24

Routing Propagation Slice : a slice is defined as the grid

nodes on all metal layers of same row or column index together with all the grid edges among the nodes.

Page 21: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

25

Routing Propagation

The grid graph edges are assigned a cost depending on the initial routing solutions and current routing solutions.

Page 22: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

26

Routing Propagation Initially, the backbone has the capacity

estimated during the coarsening process. Add fixed usage that represents the propagated

routing solution by level-i propagation subproblems finished earlier, if any.

For each level-i nets not propagated yet but will use the vertical grid edges in the backbone, we add 0.5 usage on each of the two possible grid edges.

Page 23: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

27

Routing Propagation

If the maximum flow equals to the number of paths that has demands on the slice, the uncoarsening process for this slice is successful.

Page 24: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

28

Routing Propagation All the slices are sorted by how congested they

are.

The higher congestion one slice has, the earlier its network flow propagation would be solved

Page 25: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

29

Experimental result

Page 26: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

30

Experimental result

Page 27: MGR: Multi-Level Global Router Yue Xu and Chris Chu Department of Electrical and Computer Engineering Iowa State University ICCAD 2011 1.

31

Thank you