By: Wei Zeng, Azadeh Davoodi, and Rasit Onur Topaloglu
Stage: IC Design
Summary
This is the source code for their ASPDAC ’21 paper, based on ISPD’11 benchmark parser here, and LEF/DEF parser and writer from jinwookjungs/lefdef_util.
Contact
Usage
The main execuatable main
takes the following parameters in the format of:
./main <name1> <value1> <name2> <value2> ...
-design
: an identifier of the design, could be any string (required).-layer
: the split layer. E.g. 4
for splitting between M4 and M5 (required).-maxLayer
: the highest metal layer that can be used for lifting and rerouting (required for ISCAS ’85 benchmark).-json
: path to the trained Weka Bagging model as a JSON file (required, generated by weka2json in this repository).-maxIter
: maximum number of iterations, (required, could be set to a large number for unlimited iterations).-lefFile
: path to LEF (library) file (required for ISCAS ’85 benchmark).-defFile
: path to DEF (design) file (required for ISCAS ’85 benchmark).
Dependencies
- Linux OS
- CMake >= 3.12
- Python >= 3.5
- SHAP library:
pip install shap
Toolset can be found at: https://github.com/wei-zeng/obfusx
References
ObfusX: Routing Obfuscation with Explanatory Analysis of A Machine Learning Attack Proceedings Article
In: IEEE/ACM Asia and South Pacific Design Automation Conference, 2021.
Acknowledgments
- National Science Foundation (NSF)
- Semiconductor Research Corporation (SRC)