A probability-based approach to VLSI circuit partitioning

Iterative-improvement 2-way min-cut partitioning is an important phase in most circuit partitioning tools. Most iterative improvement techniques for circuit netlists like the Fidducia-Mattheyses (FM) method compute the gains of nodes using local netlist information that is only concerned with the immediate improvement in the cutset. This can lead to misleading gain calculations. Krishnamurthy suggested a lookahead (LA) gain calculation method to ameliorate this situation; however, as we show, it leaves considerable room for improvement. We present here a probabilistic gain computation approach called PROP that is capable of capturing the global and future implications of moving a node at the current time. Experimental results show that for the same number of runs, PROP performs much better than FM (by about 30%) and LA (by about 27%), and is also better than many recent state-of-the-art clustering-based partitioners like EIG1, WINDOW, MELO and PARABOLI by 15% to 57%. We also show that the space and time complexities of PROP are very reasonable. Our empirical timing results reveal that it is appreciably faster than the above clustering-based techniques, and only a little slower than FM and LA, both of which are very fast.

[1]  Arvind Srinivasan,et al.  A fast algorithm for performance-driven placement , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[2]  Henry Stark,et al.  Probability, Random Processes, and Estimation Theory for Engineers , 1995 .

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

[4]  Chung-Kuan Cheng,et al.  Linear decomposition algorithm for VLSI design applications , 1995, Proceedings of IEEE International Conference on Computer Aided Design (ICCAD).

[5]  Krzysztof Kozminski,et al.  Cost Minimization of Partitions into Multiple Devices , 1993, 30th ACM/IEEE Design Automation Conference.

[6]  Carl Sechen,et al.  An improved objective function for mincut circuit partitioning , 1988, [1988] IEEE International Conference on Computer-Aided Design (ICCAD-89) Digest of Technical Papers.

[7]  Andrew B. Kahng,et al.  A general framework for vertex orderings with applications to circuit clustering , 1996, IEEE Trans. Very Large Scale Integr. Syst..

[8]  Chung-Kuan Cheng,et al.  An improved two-way partitioning algorithm with stable performance [VLSI] , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Andrew B. Kahng,et al.  Multilevel circuit partitioning , 1997, DAC.

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

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

[12]  Malgorzata Marek-Sadowska Issues in Timing Driven Layout , 1993, Algorithmic Aspects of VLSI Layout.

[13]  Shashi Shekhar,et al.  Multilevel hypergraph partitioning: application in VLSI domain , 1997, DAC.

[14]  Andrew B. Kahng,et al.  A General Framework For Vertex Orderings, With Applications To Netlist Clustering , 1994, IEEE/ACM International Conference on Computer-Aided Design.

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

[16]  Kurt Keutzer,et al.  Logic Synthesis , 1994 .

[17]  Hans Jürgen Prömel,et al.  Finding clusters in VLSI circuits , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[18]  Chung-Kuan Cheng,et al.  A two-level two-way partitioning algorithm , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[19]  Brian W. Kernighan,et al.  A proper model for the partitioning of electrical circuits , 1972, DAC '72.

[20]  S. Dutt,et al.  Partitioning around roadblocks: tackling constraints with intermediate relaxations , 1997, ICCAD 1997.

[21]  S. Dutt,et al.  A probability-based approach to VLSI circuit partitioning , 1996, 33rd Design Automation Conference Proceedings, 1996.

[22]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[23]  Andrew B. Kahng,et al.  Recent directions in netlist partitioning: a survey , 1995, Integr..

[24]  Brian W. Kernighan,et al.  An efficient heuristic procedure for partitioning graphs , 1970, Bell Syst. Tech. J..

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

[26]  Youssef Saab,et al.  A Fast and Robust Network Bisection Algorithm , 1995, IEEE Trans. Computers.

[27]  Shantanu Dutt New faster Kernighan-Lin-type graph-partitioning algorithms , 1993, ICCAD.

[28]  Jason Cong,et al.  Large scale circuit partitioning with loose/stable net removal and signal flow based clustering , 1997, ICCAD 1997.

[29]  R. M. Mattheyses,et al.  A Linear-Time Heuristic for Improving Network Partitions , 1982, 19th Design Automation Conference.

[30]  Carl Sechen,et al.  VLSI Placement and Global Routing Using Simulated Annealing , 1988 .

[31]  Balakrishnan Krishnamurthy,et al.  An Improved Min-Cut Algonthm for Partitioning VLSI Networks , 1984, IEEE Transactions on Computers.

[32]  Chung-Kuan Cheng,et al.  Towards efficient hierarchical designs by ratio cut partitioning , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.