An analytical placer for heterogeneous FPGAs via rough-placed packing

Packing and placement are two crucial stages for FPGA realization. In the design flow, the basic logic units, such as look-up-tables (LUTs) and flip-flops (FFs), have to be merged into configurable logic blocks (CLBs) before placement. How the basic logic blocks are clustered in the packing stage has a great impact on the placement quality. This work presents an analytical placement framework for heterogeneous FPGAs through a rough-placed packing algorithm. In the packing stage, we first perform a fast wirelength-driven placement for the basic logic units. With the physical information from the initial placement, we implement an affinity-based clustering algorithm while taking the control signal constraints into consideration. In the placement stage, a quadratic global placer is implemented with the techniques of handling the heterogeneity, routing congestion estimation and cell inflation. An incremental placer is performed after the global placement for closing the gap between the global placement and legalization, and a detailed placer is adopted to legalize the blocks and reduce the wirelength. Experimental results show that the proposed methodologies can effectively improve the placement solutions.

[1]  Jason Luu,et al.  Architecture description and packing for logic blocks with hierarchy, modes and complex interconnect , 2011, FPGA '11.

[2]  Marcel Gort,et al.  Analytical placement for heterogeneous FPGAs , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).

[3]  Kia Bazargan,et al.  Timing-driven partitioning-based placement for island style FPGAs , 2005, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  Andrew A. Kennings,et al.  Improving Timing-Driven FPGA Packing with Physical Information , 2007, 2007 International Conference on Field Programmable Logic and Applications.

[5]  Ali Akoglu,et al.  MO-Pack: Many-objective clustering for FPGA CAD , 2011, 2011 48th ACM/EDAC/IEEE Design Automation Conference (DAC).

[6]  Vaughn Betz,et al.  Using cluster-based logic blocks and timing-driven packing to improve FPGA speed and density , 1999, FPGA '99.

[7]  Andrew B. Kahng,et al.  A semi-persistent clustering technique for VLSI circuit placement , 2005, ISPD '05.

[8]  Hung-Ming Chen,et al.  Closing the Gap between Global and Detailed Placement: Techniques for Improving Routability , 2015, ISPD.

[9]  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.

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

[11]  Majid Sarrafzadeh,et al.  RPack: routability-driven packing for cluster-based FPGAs , 2001, ASP-DAC '01.

[12]  Chris C. N. Chu,et al.  An efficient and effective detailed placement algorithm , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[13]  Wenyi Feng K-way partitioning based packing for FPGA logic blocks without input bandwidth constraint , 2012, 2012 International Conference on Field-Programmable Technology.

[14]  Vaughn Betz,et al.  VPR: A new packing, placement and routing tool for FPGA research , 1997, FPL.

[15]  Zied Marrakchi,et al.  Hierarchical FPGA clustering based on multilevel partitioning approach to improve routability and reduce power dissipation , 2005, 2005 International Conference on Reconfigurable Computing and FPGAs (ReConFig'05).

[16]  Yao-Wen Chang,et al.  Efficient and effective packing and analytical placement for large-scale heterogeneous FPGAs , 2014, 2014 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

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