Task scheduling for exploiting parallelism and hierarchy in VLSI CAD algorithms

Two approaches to handling the computational requirements of computer-aided design problems are considered. One approach is to take advantage of the hierarchical nature of circuit design and develop hierarchical CAD algorithms. Another involves the use of parallel processing and development of parallel CAD algorithms. How these two approaches can be combined to speed up various CAD applications is discussed. Toward this goal, two general problems in scheduling are solved: parallelizable independent task scheduling (PITS) and parallelizable dependent task scheduling (PDTS). The PITS scheduling theory is applied to a parallel hierarchical circuit extractor, and the PDTS scheduling theory is applied to a parallel hierarchical global router. Both implementations show speedups of about six on eight processors of a shared-memory multiprocessor. >

[1]  Michael Burstein,et al.  Hierarchical Wire Routing , 1983, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[2]  R. W. Hon,et al.  HEXT: a hierarchical circuit extractor , 1983 .

[3]  Srinivas Patil,et al.  A parallel branch and bound algorithm for test generation , 1990, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[5]  E. Polak Introduction to linear and nonlinear programming , 1973 .

[6]  Arvind M. Patel,et al.  Placement of Variable Size Circuits on LSI Masterslices , 1981, 18th Design Automation Conference.

[7]  Carl Sechen,et al.  A new global router for row-based layout , 1988, [1988] IEEE International Conference on Computer-Aided Design (ICCAD-89) Digest of Technical Papers.

[8]  Alberto L. Sangiovanni-Vincentelli,et al.  A Parallel Simulated Annealing Algorithm for the Placement of Macro-Cells , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[9]  Prithviraj Banerjee,et al.  Parallel Algorithms for Geometric Connected Component Labeling on a Hypercube Multiprocessor , 1992, IEEE Trans. Computers.

[10]  Srinivas Patil,et al.  Performance trade-offs in a parallel test generation/fault simulation environment , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[11]  Prithviraj Banerjee,et al.  PHIGURE: a parallel hierarchical global router , 1990, 27th ACM/IEEE Design Automation Conference.

[12]  Jonathan Rose LocusRoute: a parallel global router for standard cells , 1988, 25th ACM/IEEE, Design Automation Conference.Proceedings 1988..

[13]  Prithviraj Banerjee,et al.  Parallel Simulated Annealing Algorithms for Cell Placement on Hypercube Multiprocessors , 1990, IEEE Trans. Parallel Distributed Syst..

[14]  C. L. Liu,et al.  On a Class of Scheduling Algorithms for Multiprocessors Computing Systems , 1974, Sagamore Computer Conference.

[15]  E.L. Lawler,et al.  Optimization and Approximation in Deterministic Sequencing and Scheduling: a Survey , 1977 .

[16]  Gary M. Tarolli,et al.  Hierarchical Circuit Extraction with Detailed Parasitic Capacitance , 1983, 20th Design Automation Conference Proceedings.

[17]  Ricardo Reis,et al.  Hierarchical circuit extractor , 1990, Other Conferences.

[18]  William M. van Cleemput,et al.  Automated Partitioning of Hierarchically Specified Digital Systems , 1982, 19th Design Automation Conference.

[19]  Prithviraj Banerjee,et al.  PACE2: an improved parallel VLSI extractor with parameter extraction , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[20]  Prithviraj Banerjee,et al.  An Approximate Algorithm for the Partitionable Independent Task Scheduling Problem , 1990, ICPP.

[21]  Prithviraj Banerjee,et al.  A parallel algorithm for hierarchical circuit extraction , 1990, 1990 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

[22]  Andrew R. Pleszkun,et al.  An Algorithm for Design Rule Checking on a Multiprocessor , 1985, DAC 1985.

[23]  Ronald L. Graham,et al.  Bounds on Multiprocessing Timing Anomalies , 1969, SIAM Journal of Applied Mathematics.

[24]  Prithviraj Banerjee,et al.  Parallel algorithms for VLSI circuit extraction , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[25]  Donald T. Tang,et al.  Hierarchical Global Wiring for Custom Chip Design , 1986, DAC 1986.

[26]  Timothy N. Trick,et al.  HPEX: A Hierarchical Parasitic Circuit Extractor , 1987, 24th ACM/IEEE Design Automation Conference.

[27]  Eugene L. Lawler,et al.  Sequencing and scheduling: algorithms and complexity , 1989 .

[28]  Rob A. Rutenbar,et al.  Placement by Simulated Annealing on a Multiprocessor , 1987, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.