System partitioning for multi-chip modules under timing and capacity constraints

The authors propose an efficient and effective algorithm for system partitioning under timing and capacity constraints. They consider the problem of assigning functional blocks into slots on multi-chip modules in high-level design to have fast feedback on the impact of high-level design decisions. A clustering step is used to ensure timing correctness, followed by packing and the K&L algorithm to satisfy capacity constraints while minimizing net crossings. The method is unique in that net crossings are minimized, while satisfying timing and capacity constraints. Test results showed that the method eliminated timing violations and obtained a comparable number of net crossings to that of the algorithm proposed by C.M. Fiduccia and R.M. Mattheyses (1982) with a similar run time. The method can be extended to use partitioning algorithms other than that of Fiduccia and Mattheyses.<<ETX>>

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

[2]  Ernest S. Kuh,et al.  Performance-driven system partitioning on multi-chip modules , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.

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

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

[5]  Robert E. Tarjan,et al.  Data structures and network algorithms , 1983, CBMS-NSF regional conference series in applied mathematics.