ISPD 2008 Global Routing Contest


[News and Announcements]. [Introduction]. [Schedule]. [Input/Output Format]. [Router Evaluation and Ranking]. [Evaluation Script]. [Benchmarks]. [Join the Contest]. [Terms and Conditions]

News and Announcements


Introduction

Continuing the tradition of spirited competition, the ISPD 2008 Steering Committee is pleased to announce a global routing contest, sponsored by SRC and IEEE-CEDA. Like the prior placement contests, a set of benchmarks will be released; teams are invited to produce global routing solutions, with the best results winning fame, recognition, and a grand prize. There will be an additional prize awarded by the IEEE Council of EDA (CEDA) for the best results by a router openly available to all research groups. If the best results overall are obtained by an openly available router, it will win both the prizes.

Schedule


Input/Output Format

All benchmarks have multiple metal layers (three-dimensional), with additional congestion information. The input file format is a variation on the Labyrinth format. The files will be ordinary ASCII text, specifying the size and shape of the global routing graph, the capacity on edges of the graph, the number of signal nets, and the number of pins and their positions within each net. The file format has been designed to make parsing easy.
The output file format will be a variation of the BoxRouter format.
The choice of input/output format is intended to make it possible for many academic tools to participate in the contest, while writing a global router which uses this format is not exceptionally difficult.

Details of file formats

The input file format for the global routing contest is illustrated, with comments in italics (these will not be in actual input files). This example illustrates a problem with five routing layers (note the number of # marks on the vertical and horizontal capacity lines).
grid # # # (x grids, y grids, number of layers)
vertical capacity # # # # # (vertical capacity by default on each layer)
horizontal capacity # # # # #
minimum width # # # # #
minimum spacing # # # # #
via spacing # # # # #
lower_left_x lower_left_y tile_width tile_height

num net #
netname id_# number_of_pins minimum_width
x y layer
x y layer
...
[repeat for the appropriate number of nets]


# capacity adjustments (to model congestion)
column row layer column row layer reduced_capacity_level
[repeat for the number of capacity adjustments]

There are a number of changes from the original Labyrinth format: Calculation of capacity is more complex than is done in typical academic global routing tools; our objective is to raise the bar slightly. Each global routing tile will have a capacity; this is a measure of the available space, not the number of global routing tracks. If the minimum wire width is 20, the minimum spacing 10, and the capacity of a tile is given as 450, this corresponds to 15 minimum width tracks (15 * (20 + 10)) . The capacity specified as the default value may be different than the width or height of a tile. In general, it is desirable to have routing utilization of a tile be below the capacity, as higher utilization can be more difficult for detail routers to complete.

Small sample input/output files

Here are a sample input file and a sample output routing file of a simple two layer routing problem, with illustrations. [Input] [Output] [Description(pdf)].

Router Evaluation and Ranking

The global routing solutions will be evaluated on the following metrics: Remarks regarding CPU runtime:

Evaluation Script



Benchmarks

ISPD08 Routing Contest will use 16 benchmarks from industrial ASIC designs to evaluate all the contest submissions. All benchmarks consist of multi-metal layers (i.e., multiple horizontal/vertical layers). Note that 8 of the 16 benchmarks are from ISPD 2007 Global Routing Contest ("the 3D benchmarks"). If your router can generate solutions successfully on these benchmarks, it should work well on new benchmarks too. On March 8, 2008, additional 8 benchmarks will be released.


Join the Contest

If you are interested in participating in the contest, or even if you have any question, please feel free to send an email to Dr. Cliff Sze (csze@us.ibm.com). To ensure prompt response, please start with "2008ISPD-RC" in the subject of your email.

For beginners, here are some suggestions.

CONTESTANTS
ID Team Name Affiliation Contact Author Other Authors
1 FastRoute 3.0 Iowa State University VLSI CAD LAB Yanheng Zhang Yue Xu
2 FGR Univ of Michigan Jarrod Roy
3 NTUGR National Taiwan University Huang-Yu Chen Chin-Hsiung Hsu
4 NCTU NCTU, Taiwan Wen-Hao Liu GKe-Ren Dai
5 BoxRouter Univ of Texas Minsik Cho
6 NTHU-Route National Tsing Hua University, Taiwan Yen-Jung Chang Yu-Ting Lee, Tsung-Hsien Lee
7 IMS GlObal Router (IGOR) Institute of Microelectronic Systems(IMS), Hannover, Germany Artur Quiring Philipp Panitz, Ole Ohlendorf
8 USC University of Southern California Zhiyang Ong
9 HSR (heuristically statistical router) Dept of EE, National Chiao Tung University, Hsinchu, Taiwan Hung-Ming Chen Sean Liu, Jerry Lee,Po-Cheng Pan, Ching-Yu Chin, Yi-Hung Chen
10 HKPU Dept of Electronic&Information Engineering, Polytechnic University of Hong Kong Jingwei Lu
11 CUHK Chinese University of Hong Kong Zaichen Qian

Submission Guideline

Final submission time is set to (Mar 31) 11:59pm CST with daylight saving, which is in different time zone as,
You can send me an http-link such that I can download your binary (or source files) and routing result files from the link. Please zipped or gtar all files.
Since I will be running all the router by myself, if you don't have enough time to generate all routing results files, you can submit just a couple of them. I just want to make sure my execution of your binary generates exactly the same as your execution.
You can ask me to use a non-open-source but faster solver (e.g. ILP, SAT) to run with your router for contest ranking. However, we have to make sure I can run it in my Linux machine. When you release your source code for "Openly Available Tools", you can switch to an open-source solver.

Terms and Conditions

Openly Available Tools

What does "openly available for research" mean? In this case, the intent is to foster an academic infrastructure where all the necessary pieces are easily available to those who wish to do research on EDA algorithms and flows. So by openly available we mean (a) the source code is freely available, along with make files and some examples with known results, all capable of running on a stock Linux system, and (b) the licensing terms, if any, are appropriate for research.
Note that (b) applies not only to the global router itself, but any code it requires. For example, if your global router needs a SAT solver from another group, the SAT solver must in turn be easily available for research for your entry to qualify. IEEE/CEDA will test (a) and be the final judge of (b) before awarding the prize.

Sponsors