This Article 
 Bibliographic References 
 Add to: 
Parallel Algorithms for Force Directed Scheduling of Flattened and Hierarchical Signal Flow Graphs
July 1999 (vol. 48 no. 7)
pp. 762-768

Abstract—In this paper, we present some novel algorithms for scheduling hierarchical signal flow graphs in the domain of high-level synthesis. With complex chips that need to be designed in the future, it is expected that the runtimes of these scheduling algorithms will be quite large. The key contributions of this paper are as follows: First, we develop a novel extension of the sequential force-directed scheduling algorithm which naturally handles loops and conditionals by coming up with a scheme of scheduling hierarchical signal flow graphs. Second, we develop three new parallel algorithms for the scheduling problem. Our parallel algorithms are portable across a wide range of parallel platforms. We report results on a set of high-level synthesis benchmarks on 8-processor SGI Origin and a 64 processor IBM SP-2. While some parallel algorithms for VLSI CAD reported by earlier researchers have reported a loss of qualities of results, our parallel algorithms produce exactly the same results as the sequential algorithms on which they are based.

[1] P. Banerjee, Parallel Algorithms for VLSI Computer-Aided Design Applications. Englewood-Cliffs, N.J.: Prentice Hall, 1994.
[2] P.G. Paulin and J.P. Knight, "Force-Directed Scheduling for the Behavioral Synthesis of ASIC's," IEEE Trans. Computer-Aided Design, vol. 8, June 1989.
[3] P. Prabhakaran, “Improved Algorithms for High-Level Synthesis and Their Parallel Implementations,” PhD thesis, Univ. of Illinois, Urbana, 1998.
[4] R. Haupt, “A Survey of Priority-Rule Based Scheduling,” OR Spektrum, vol. 11, no. 1, pp. 3-16, 1989.
[5] M.C. McFarland, A.C. Parker, and R. Camposano, "The High-Level Synthesis of Digital Systems," Proc. IEEE, vol. 78, Feb. 1990.
[6] R.J. Cloutier and D.E. Thomas, “The Combination of Scheduling, Allocation, and Mapping in a Single Algorithm,” Carnegie Mellon Univ. Research Report CMUCAD-90-17, May 1990.
[7] T. Kim and J.W.S. Liu, C.L. Liu, “A Scheduling Algorithm for Conditional Resource Sharing,” Proc. Int'l Conf. Computer-Aided Design, pp. 84-87, Santa Clara, Calif., Nov. 1991.
[8] A. Oláh, S.H. Gerez, and S.M. Heemstra de Groot, ”Scheduling and Allocation for the High-Level Synthesis of DSP Algorithms by Exploitation of Transfer Mobility,” Proc. CompEuro, pp. 145-150, Delft, The Netherlands, 1992.
[9] WF.J. Verhaegh, P.E.R. Lippens, E.H.L. Aarts, J.H.M. Korst, J.L. van Meerbergen, and A. van der Werf, “Improved Force-Directed Scheduling in High-Throughput Digital Signal Processing” IEEE Trans. Computer-Aided Design, vol. 14, no. 8, Aug. 1995
[10] P. Prabhakaran and P. Banerjee, “Parallel Algorithms for Force-Directed Scheduling of Signal Flow Graphs” Proc. Int'l Conf. Computer Design, 1996.
[11] J. Roy, N. Kumar, R. Dutta, and R. Vemuri, “DSS: A Distributed High-Level Synthesis System” IEEE Design and Test of Computers, June 1992.
[12] K. De, J.A. Chandy, S. Roy, S. Parkes, and P. Banerjee, “Parallel Algorithms for Logic Synthesis Using the MIS Approach,” Proc. IPPS, Santa Barbara, Calif., Apr. 1995.
[13] B. Ramkumar and P. Banerjee, “ProperCAD: A Portable Object-Oriented Parallel Environment for VLSI CAD,” IEEE Trans. Computer-Aided Design, vol. 13, pp. 829-842, July 1994.
[14] S. Patil,P. Banerjee,, and J.H. Patel,“Parallel test generation for sequential circuits on general-purpose multiprocessors,” Proc. 28th ACM/IEEE Design Automation Conf., pp.155-159, 1991.
[15] P. Agrawal, V.D. Agrawal, and J. Villodo, “Sequential Circuit Test Generation on a Distributed System,” Proc. 30th Design Automation Conf. (DAC-93), June 1993.
[16] K. De, B. Ramkumar, and P. Banerjee, “ProperSYN: A Portable Parallel Algorithm for Logic Synthesis,” IEEE Trans. Computer Aided Design, Nov. 1992.
[17] B. Ramkumar and P. Banerjee, “ProperTEST: A Portable Parallel Test Generator for Sequential Circuits,” IEEE Trans. Computer-Aided Design, 1996.
[18] K.P. Belkhale and P. Banerjee, “Parallel Algorithms for VLSI Circuit Extraction,” IEEE Trans. Computer-Aided Design, vol. 10, no. 2, pp. 604-618, May 1991.
[19] J.S. Rose, W.M. Snelgrove, and Z.G. Vranesic, “Parallel Cell Placement Algorithms with Quality Equivalent to Simulated Annealing,” IEEE Trans. Computer-Aided Design, vol. 7, pp. 387-396, Mar. 1988.
[20] W. Gropp, E. Lusk, and A. Skjellum, Using MPI: Portable Parallel Programming with the Message Passing Interface. MIT Press, 1994.

Index Terms:
High-level synthesis, force-directed scheduling, hierarchical graphs, parallel algorithms, multiprocessors.
Pradeep Prabhakaran, Prithviraj Banerjee, "Parallel Algorithms for Force Directed Scheduling of Flattened and Hierarchical Signal Flow Graphs," IEEE Transactions on Computers, vol. 48, no. 7, pp. 762-768, July 1999, doi:10.1109/12.780886
Usage of this product signifies your acceptance of the Terms of Use.