A parallel simulated annealing algorithm for standard cell placement on a hypercube computer

A parallel version of a simulated annealing algorithm is presented which is targeted to run on a hypercube computer. A strategy for mapping the cells in a two dimensional area of a chip onto processors in an n-dimensional hypercube is proposed such that both small and large distance moves can be applied. Two types of moves are allowed: cell exchanges and cell displacements. The computation of the cost function in parallel among all the processors in the hypercube is described along with a distributed data structure that needs to be stored in the hypercube to support parallel cost evaluation. A novel tree broadcasting strategy is used extensively in the algorithm for updating cell locations in the parallel environment. Studies on the performance of the algorithm on example industrial circuits show that it is faster and gives better final placement results than the uniprocessor simulated annealing algorithms. An improved uniprocessor algorithm is proposed which is based on the improved results obtained from parallelization of the simulated annealing algorithm.

[1]  Bruce E. Hajek,et al.  Cooling Schedules for Optimal Annealing , 1988, Math. Oper. Res..

[2]  Dirk Grunwald,et al.  Benchmarking hypercube hardware and software , 1986 .

[3]  Marshall C. Pease,et al.  The Indirect Binary n-Cube Microprocessor Array , 1977, IEEE Transactions on Computers.

[4]  Sanjoy Mitter,et al.  Analysis of simulated annealing for optimization , 1985, 1985 24th IEEE Conference on Decision and Control.

[5]  Kenneth E. Batcher STARAN parallel processor system hardware , 1974, AFIPS '74.

[6]  Charles L. Seitz,et al.  The cosmic cube , 1985, CACM.

[7]  David J. Farber The distributed computer system , 1970 .

[8]  Edward W. Felten,et al.  The Traveling Salesman Problem on a Hypercubic, MIMD Computer , 1985, ICPP.

[9]  H. F. Jordan A Special Purpose Architecture for Finite Element Analysis , 1978 .

[10]  Alberto L. Sangiovanni-Vincentelli,et al.  TimberWolf3.2: A New Standard Cell Placement and Global Routing Package , 1986, 23rd ACM/IEEE Design Automation Conference.

[11]  D. Mitra,et al.  Convergence and finite-time behavior of simulated annealing , 1985, 1985 24th IEEE Conference on Decision and Control.

[12]  A. Lopez,et al.  A dense gate matrix layout style for MOS LSI , 1980, 1980 IEEE International Solid-State Circuits Conference. Digest of Technical Papers.

[13]  Rob A. Rutenbar,et al.  LAYOUT BY ANNEALING IN A PARALLEL ENVIRONMENT. , 1986 .

[14]  A. Sangiovanni-Vincentelli,et al.  The TimberWolf placement and routing package , 1985, IEEE Journal of Solid-State Circuits.

[15]  Mark Jones,et al.  Performance of a Parallel Algorithm for Standard Cell Placement on the Intel Hypercube , 1987, 24th ACM/IEEE Design Automation Conference.

[16]  Sartaj Sahni,et al.  Experiments with Simulated Annealing , 1985, 22nd ACM/IEEE Design Automation Conference.

[17]  N. Metropolis,et al.  Equation of State Calculations by Fast Computing Machines , 1953, Resonance.

[18]  Samuel H. Fuller,et al.  The C.mmp Multiprocessor , 1978 .

[19]  Donald Geman,et al.  Stochastic Relaxation, Gibbs Distributions, and the Bayesian Restoration of Images , 1984, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[20]  Rob A. Rutenbar,et al.  Multiprocessor-Based Placement by Simulated Annealing , 1986, 23rd ACM/IEEE Design Automation Conference.

[21]  J. P. Hong,et al.  Hypercube project and a simulator for a hypercube of computers , 1985 .

[22]  B. Gidas Nonstationary Markov chains and convergence of the annealing algorithm , 1985 .

[23]  Emile H. L. Aarts,et al.  Parallel implementations of the statistical cooling algorithm , 1986, Integr..