CPlace: A Constructive Placer for Synchronous and Asynchronous Circuits

Despite the potential benefits of asynchronous circuits compared to synchronous circuits, only small advances have been made in the adaptation of asynchronous methodologies by the electronics industry. One of the most important reasons for that, is the lack of asynchronous Electronic Design Automation (EDA) tools and the fact that existing EDA tools are not suitable for asynchronous implementations. Moreover, physical EDA tools, like placement algorithms, involve methodologies which are not applicable to asynchronous circuits, such as static timing analysis (STA) which cannot be performed in a cyclic circuit. In this work, we present C Place, a constructive placement algorithm which can efficiently handle asynchronous circuits. We use timing separation of events for timing analysis and maintain the quasi-delay insensitive (QDI) properties by bounding the relative delays of wires in isochronic forks. We employ absolute timing constraints for performance and relative timing constraints for QDI which are handled by an ILP formulation. Experimental results show the effectiveness of C Place in respecting QDI constraints against a synchronous, state-of-the-art industrial placer and a well-known academic placer.

[1]  Luciano Lavagno,et al.  Petrify: A Tool for Manipulating Concurrent Specifications and Synthesis of Asynchronous Controllers (Special Issue on Asynchronous Circuit and System Design) , 1997 .

[2]  C. Y. Roger Chen,et al.  Timing driven placement using physical net constraints , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[3]  Majid Sarrafzadeh,et al.  Timing-driven placement using design hierarchy guided constraint generation , 2002, IEEE/ACM International Conference on Computer Aided Design, 2002. ICCAD 2002..

[4]  Ravi Nair,et al.  Generation of performance constraints for layout , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[5]  Andrew B. Kahng,et al.  A faster implementation of APlace , 2006, ISPD '06.

[6]  Ulf Schlichtmann,et al.  Kraftwerk2—A Fast Force-Directed Quadratic Placement Approach Using an Accurate Net Model , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[7]  Chong-Min Kyung,et al.  Adaptive cluster growth (ACG); a new algorithm for circuit packing in rectilinear region , 1990, Proceedings of the European Design Automation Conference, 1990., EDAC..

[8]  Srinivas Katkoori,et al.  Net Clustering Based Constructive and Iterative Improvement Approaches for Macro-Cell Placement , 2004, J. VLSI Signal Process..

[9]  Christos P. Sotiriou,et al.  SCPlace: A statistical slack-assignment based constructive placer , 2011, 2011 12th International Symposium on Quality Electronic Design.

[10]  Gaetano Borriello,et al.  An Algorithm for Exact Bounds on the Time Separation of Events in Concurrent Systems , 1995, IEEE Trans. Computers.

[11]  Chris C. N. Chu,et al.  FastPlace 3.0: A Fast Multilevel Quadratic Placement Algorithm with Placement Congestion Control , 2007, 2007 Asia and South Pacific Design Automation Conference.

[12]  Jarrod A. Roy,et al.  Capo: robust and scalable open-source min-cut floorplacer , 2005, ISPD '05.

[13]  Taraneh Taghavi,et al.  Dragon2005: large-scale mixed-size placement tool , 2005, ISPD '05.

[14]  Joseph R. Shinnerl,et al.  mPL6: enhanced multilevel mixed-size placement , 2006, ISPD '06.

[15]  Yao-Wen Chang,et al.  NTUplace3: An Analytical Placer for Large-Scale Mixed-Size Designs With Preplaced Blocks and Density Constraints , 2008, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[16]  Alberto L. Sangiovanni-Vincentelli,et al.  The best of both worlds: the efficient asynchronous implementation of synchronous specifications , 2004, Proceedings. 41st Design Automation Conference, 2004..

[17]  Majid Sarrafzadeh,et al.  A delay budgeting algorithm ensuring maximum flexibility in placement , 1997, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[18]  Dongjin Lee,et al.  SimPL: An effective placement algorithm , 2010, 2010 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[19]  Luciano Lavagno,et al.  A concurrent model for de-synchronization , 2003 .