Rsyn: An Extensible Physical Synthesis Framework

Due to the advanced stage of development on EDA science, it has been increasingly difficult to implement realistic software infrastructures in academia so that new problems and solutions are tested in a meaningful and consistent way. In this paper we present Rsyn, a free and open-source C++ framework for physical synthesis research and development comprising an elegant netlist data model, analysis tools (e.g. timing analysis, congestion), optimization methods (e.g. placement, sizing, buffering) and a graphical user interface. It is designed to be very modular and incrementally extensible. New components can be easily integrated making Rsyn increasingly valuable as a framework to leverage research in physical design. Standard and third party components can be mixed together via code or script language to create a comprehensive design flow, which can be used to better assess the quality of results of the research being conducted. The netlist data model uses the new features of C++11 providing a simple but efficient way to traverse and modify the netlist. Attributes can be seamlessly added to objects and a notification system alerts components about changes in the netlist. The flexibility of the netlist inspired the name Rsyn, which comes from the word resynthesis. Rsyn is created to allow researchers to focus on what is really important to their research spending less time on the infrastructure development. Allowing the sharing and reusability of common components is also one of the main contributions of the Rsyn framework. In this paper, the key concepts of Rsyn are presented. Examples of use are drawn, the important standard components (e.g. physical layer, timing) are detailed and some case studies based on recent Electronic Design Automation (EDA) contests are analyzed. Rsyn is available at http://rsyn.design.

[1]  Gi-Joon Nam,et al.  Ispd2009 clock network synthesis contest , 2009, ISPD '09.

[2]  Jin Hu,et al.  ICCAD-2015 CAD contest in incremental timing-driven placement and benchmark suite , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[3]  Gi-Joon Nam,et al.  ISPD 2006 Placement Contest: Benchmark Suite and Results , 2006, ISPD '06.

[4]  W. C. Elmore The Transient Response of Damped Linear Networks with Particular Regard to Wideband Amplifiers , 1948 .

[5]  Yih-Lang Li,et al.  Multi-threaded collision-aware global routing with bounded-length maze routing , 2010, Design Automation Conference.

[6]  Mateus Fogaça,et al.  Quadratic timing objectives for incremental timing-driven placement optimization , 2016, 2016 IEEE International Conference on Electronics, Circuits and Systems (ICECS).

[7]  Ieee Standards Board IEEE standard verilog hardware description language , 2001 .

[8]  Jia Wang,et al.  TAU 2013 variation aware timing analysis contest , 2013, ISPD '13.

[9]  Tsung-Wei Huang,et al.  OpenTimer: A High-Performance Timing Analysis Tool Special Session Paper: Incremental Timing and CPPR Analysis , 2015 .

[10]  Ismail Bustany,et al.  POLAR: Placement based on novel rough legalization and refinement , 2013, 2013 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[11]  Mateus Fogaça,et al.  Routing-Aware Incremental Timing-Driven Placement , 2016, 2016 IEEE Computer Society Annual Symposium on VLSI (ISVLSI).

[12]  Chris C. N. Chu,et al.  FastPlace: efficient analytical placement using cell shifting, iterative local refinement, and a hybrid net model , 2005, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[13]  Bernhard M. Riess,et al.  SPEED: fast and efficient timing driven placement , 1995, Proceedings of ISCAS'95 - International Symposium on Circuits and Systems.

[14]  Chris C. N. Chu,et al.  FLUTE: Fast Lookup Table Based Rectilinear Steiner Minimal Tree Algorithm for VLSI Design , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[15]  Fabrizio Valpreda,et al.  GNU General Public License , 2012 .

[16]  Steven M. Burns,et al.  An improved benchmark suite for the ISPD-2013 discrete cell sizing contest , 2013, ISPD '13.

[17]  Jin Hu,et al.  TAU 2014 contest on removing common path pessimism during timing analysis: Special session paper: Common path pessimism removal (CPPR) , 2014, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[18]  Ulf Schlichtmann,et al.  Abacus: fast legalization of standard cell circuits with minimal movement , 2008, ISPD '08.

[19]  Yih-Lang Li,et al.  NCTU-GR 2.0: Multithreaded Collision-Aware Global Routing With Bounded-Length Maze Routing , 2013, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[20]  Natarajan Viswanathan,et al.  ICCAD-2012 CAD contest in design hierarchy aware routability-driven placement and benchmark suite , 2012, 2012 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[21]  Guilherme Flach,et al.  Jezz: An effective legalization algorithm for minimum displacement , 2015, 2015 28th Symposium on Integrated Circuits and Systems Design (SBCCI).

[22]  References , 1971 .

[23]  Stephan Held,et al.  Local search algorithms for timing-driven placement under arbitrary delay models , 2015, 2015 52nd ACM/EDAC/IEEE Design Automation Conference (DAC).

[24]  Chris C. N. Chu,et al.  FastPlace: efficient analytical placement using cell shifting, iterative local refinement,and a hybrid net model , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[25]  Christopher Negus,et al.  GNU General Public License , 2015 .

[26]  Mateus Fogaça,et al.  Drive Strength Aware Cell Movement Techniques for Timing Driven Placement , 2016, ISPD.

[27]  Martin D. F. Wong,et al.  OpenTimer: A high-performance timing analysis tool , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[28]  Dieter Fuhrmann,et al.  Logical Effort Designing Fast Cmos Circuits , 2016 .

[29]  Jarrod A. Roy,et al.  ITOP: integrating timing optimization within placement , 2010, ISPD '10.

[30]  Jin Hu,et al.  TAU 2015 contest on incremental timing analysis , 2015, 2015 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).