Skip to content

Latest commit

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Dataset

This repo contains timing prediction dataset download instructions and documentation.

This dataset is made from open-source PDK skywater130 and open-source EDA flow OpenROAD. It contains 21 real-world benchmark circuits:

Benchmark#Nodes#Net Edges#Cell Edges#Endpoints
blabla5556839853356891614
usb_cdc_core740652004869630
BM643845827843253341800
salsa207848657737528953710
aes1282110451489971384575696
wbqspiflash967267986454323
cic_decimator313122322102130
aes25629095520741418926211200
des6054144478418452048
aes_cipher597774267141411660
picorv32a5867643047402081920
zipdiv439831022913181
genericfir3882728845250133811
usb336124062189344
jpeg_encoder2382161767371679604422
usbf_device6634546241422264404
aes1922342111653501529108096
xtea1021371516882423
spm1121765700129
y_huff4821633689306122391
synth_ram2591019024167822112

In our DAC22 work, the upper 14 benchmarks are used for training and the lower 7 are used for testing. (We used a modified OpenSTA to dump timing-sensitive intermediate data. Please see our paper for other details on the benchmark and settings.)

Raw Netlist Download

[New 2023/6/7] You can now download our raw design data from one of the following links: (7-zipped ~500MB)

https://disk.pku.edu.cn:443/link/90D8E40611678D1A24C214A1EFBA9630

https://drive.google.com/file/d/1QimU8q2cIADLBVL6GGFRm6tSBKbj3ZbB/view?usp=sharing

https://cloud.guozz.cn/s/x9T4

The archive contains:

  • The skywater130 PDK (in ./techlib), including liberty and lef files.
  • The gate-level Verilog, DEF, SDC, SPEF, and SDF files for all the above 21 circuits, implemented using OpenROAD.

Have fun hacking!

Graph Data Download for GNN Training & Inference

Please choose one of the links below. The 7-zipped file is about 200 MB in size.

https://disk.pku.edu.cn:443/link/A01D052FB4A134A1523AD101F7F5B511

https://drive.google.com/file/d/1kknTAi8x55bgFeHb8UVnVUpw3cCvkZMe/view?usp=sharing

https://cloud.guozz.cn/s/mOsK

Documentation

You can also refer to our code for usage.

8_rat: Full annotated timing graph dataset

This contains dumpped DGL heterogeneous graphs.

There are three kinds of edges and one kind of node. Here is an explanation to the meaning of edge types. The information included is:

net_out and net_in

net arcs.

Features:

  • 2x: relative position

cell_out

cell arcs.

Features:

  • 2*4*(1+7+7)x: [E/L]* cell_{rise, fall}, {rise, fall}_transition {is_valid, xindex, yindex}
  • 2*4*49x: [E/L]* cell_{rise, fall}, {rise, fall}_transition values
  • 4x: cell delay annotations (EL/RF)

Node

Features:

  • 1x: is primary I/O pin (1) or not (0)
  • 1x: is fanin (0) or fanout (1)
  • 4x: relative to the top/left/right/bottom of die area
  • 4x: capacitance information (EL/RF) in cell library
  • 4x: net delay annotations (EL/RF) for fanin pins
  • 4x: arrival time annotations (EL/RF)
  • 4x: slew annotations (EL/RF)
  • 1x: is timing endpoint (i.e. has constraint) (1) or not (0)
  • 4x: required arrival time annotations (EL/RF)

Usage

One can use the cell delay annotations, node slew/at/netdelay/rat annotations as tasks, and leave other features as model inputs.

4_netstat: The statistics-based net delay dataset

(To be filled here.)

7_homotest: The simple homograph dataset

(To be filled here.) This is not intended to be used.

Reference

Please cite our work if you find this dataset useful.

@inproceedings{mltimerdac22,
author = {Guo, Zizheng and Liu, Mingjie and Gu, Jiaqi and Zhang, Shuhan and Pan, David Z. and Lin, Yibo},
booktitle = {Proceedings of the 59th Annual Design Automation Conference 2022},
organization = {ACM},
title = {A Timing Engine Inspired Graph Neural Network Model for Pre-Routing Slack Prediction},
year = {2022}
}

About

Timing prediction dataset download and instructions.

Resources

Stars

19 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors