On Using Tabu Search for Design Automation of VLSI Systems

Tabu search is a meta-heuristic problem solving technique that, when applied carefully, provides near optimal solutions in a very short time. In this paper, we have described the use of tabu search for solving problems related to very large scale integrated (VLSI) circuit design automation. Specifically, we have demonstrated the use for VLSI circuit partitioning and placement. We present a tabu search based circuit bi-partitioning technique that partitions circuits with the goal of minimizing the size of the cutset between the partitions. Then, we use tabu search techniques along with force directed placement techniques to accomplish the physical placement of VLSI circuits on regular two-dimensional arrays with the goal of minimizing the placement time. We use empirical data from partitioning and placement of benchmark circuits to test our techniques. Our methods show improvement when compared to partitioning techniques from the literature and commercially available placement tools. Relative to the literature, our tabu search bi-partitioning technique improves on the best known minimum cuts for several benchmark circuits. Relative to commercially available computer aided design tools, our tabu search based placement approach shows dramatic (20×) speedup in execution time without negative impact on the quality of the solution.

[1]  Dinesh Bhatia,et al.  A methodology for fast FPGA floorplanning , 1999, FPGA '99.

[2]  Celso C. Ribeiro,et al.  A graph partitioning heuristic for the parallel pseudo-exhaustive logical test of VLSI combinational circuits , 1994, Ann. Oper. Res..

[3]  Yeow Meng Chee,et al.  Performance driven placement with global routing for macro cells , 1992, [1992] Proceedings of the Second Great Lakes Symposium on VLSI.

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

[5]  Nozomu Togawa,et al.  Maple-opt: a performance-oriented simultaneous technology mapping, placement, and global routing algorithm for FPGAs , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[6]  Shantanu Dutt,et al.  VLSI circuit partitioning by cluster-removal using iterative improvement techniques , 1996, Proceedings of International Conference on Computer Aided Design.

[7]  Takashi Kambe,et al.  Hybrid floorplanning based on partial clustering and module restructuring , 1996, ICCAD 1996.

[8]  Dennis J.-H. Huang,et al.  Multilevel Circuit Partitioning , 1997, Proceedings of the 34th Design Automation Conference.

[9]  Sadiq M. Sait,et al.  Vlsi physical design automation , 1995 .

[10]  Gabriele Saucier,et al.  Synthesis and floorplanning for large hierarchical FPGAs , 1997, FPGA '97.

[11]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[12]  Shantanu Dutt,et al.  VLSI circuit partitioning by cluster-removal using iterative improvement techniques , 1996, ICCAD 1996.

[13]  C. L. Liu,et al.  Re-engineering of timing constrained placements for regular architectures , 1995, ICCAD.

[14]  John Wawrzynek,et al.  Fast module mapping and placement for datapaths in FPGAs , 1998, FPGA '98.

[15]  Andrew B. Kahng,et al.  Fast spectral methods for ratio cut partitioning and clustering , 1991, 1991 IEEE International Conference on Computer-Aided Design Digest of Technical Papers.

[16]  Dinesh Bhatia,et al.  Tabu Search: Ultra-Fast Placement for FPGAs , 1999, FPL.

[17]  Dinesh Bhatia,et al.  Fast timing driven placement using tabu search , 1999, ISCAS'99. Proceedings of the 1999 IEEE International Symposium on Circuits and Systems VLSI (Cat. No.99CH36349).

[18]  Charles J. Alpert,et al.  Spectral Partitioning: The More Eigenvectors, The Better , 1995, 32nd Design Automation Conference.

[19]  Sadiq M. Sait,et al.  VLSI Physical Design Automation - Theory and Practice , 1995, Lecture Notes Series on Computing.

[20]  Anmol Mathur,et al.  Re-engineering of timing constrained placements for regular architectures , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[21]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[22]  I H Osman,et al.  Meta-Heuristics Theory and Applications , 2011 .

[23]  S.,et al.  An Efficient Heuristic Procedure for Partitioning Graphs , 2022 .

[24]  Dinesh Bhatia,et al.  Bipartitioning circuits using TABU search , 1998, Proceedings Eleventh Annual IEEE International ASIC Conference (Cat. No.98TH8372).

[25]  Konrad Doll,et al.  Partitioning Very Large Circuits Using Analytical Placement Techniques , 1994, 31st Design Automation Conference.

[26]  A. Vannelli,et al.  A VLSI placement method using Tabu search , 1992 .

[27]  Andrew B. Kahng,et al.  A hybrid multilevel/genetic approach for circuit partitioning , 1996, Proceedings of APCCAS'96 - Asia Pacific Conference on Circuits and Systems.

[28]  Dinesh Bhatia,et al.  Performance driven floorplanning for FPGA based designs , 1997, FPGA '97.

[29]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[30]  Andrew Lim,et al.  Performance driven placement using tabu search , 2014 .