Scheduling synchronous dataflow graphs for efficient looping
- 79 Downloads
Synchronous dataflow (SDF) has been used to synthesize code for programmable DSPs to implement multirate and block oriented signal processing systems. However, with large block sizes, or significant sample rate changes, program memory consumption becomes a critical problem. This article develops a compile-time algorithm for scheduling SDF graphs to exploit opportunities for looping—the successive reoccurrence of identical firing patterns. Because SDF graphs allow actors to produce or consume an arbitrary number of tokens on each input or output, complicated control flow may result. Yet in static scheduling, it is desirable to execute sections of the target code within loop constructs, such as “do-while,” to reduce program-memory requirements. To do this, the SDF graph is hierarchically clustered, carefully avoiding deadlock while exposing looping opportunities. Results of applying these loop-extraction algorithms show orders of magnitude of compaction for target program code space on programmable DSPs compared to in-line code.
KeywordsAdjacent Node Nest Loop Base Node Candidate Cluster Reachability Matrix
Unable to display preview. Download preview PDF.
- 1.E.A. Lee and David G. Messerschmitt, “Synchronous dataflow,” Proceedings of the IEEE, September 1987.Google Scholar
- 3.H. Printz,Automatic Mapping of Large Signal Processing Systems to a Parallel Machine, Memorandum CMU-CS-91-101, School of Computer Science, Carnegie Mellon University, May 15, 1991. PhD Thesis.Google Scholar
- 4.P.N. Hilfinger,Silage References Manual, Draft Release 2.0, Computer Science Division, EECS Dept., University of California at Berkeley, July 8, 1989.Google Scholar
- 5.J.B. Dennis, “First version of a dataflow procedure language,”MIT/LCS/TM-61. Laboratory for Computer Science, MIT, 545 Technology Square, Cambridge, MA 02139.Google Scholar
- 8.S. How, “Code Generation for Multirate DSP Systems in GABRIEL,” Master's Degree Report, U.C. Berkeley, May, 1990.Google Scholar
- 9.W.-H. Ho, Edward A. Lee, and D.G. Messerschmitt, “High level dataflow programming for digital signal processing,”VLSI Signal Processing III, IEEE Press, 1988.Google Scholar
- 10.W.-H. Ho, “Code Generation for Digital Signal Processors Using Synchronous Dataflow,” Master's Degree Report, U.C. Berkeley, May, 1988.Google Scholar
- 11.S.S. Bhattacharyya, “Clustering Formalism For Synchronous Dataflow,” Technical Report UCB/ERL M92/30, U.C. Berkeley, Berkeley, CA 94720, April, 1992.Google Scholar
- 13.S. Ha, J. Buck, E.A. Lee, and D.G. Messerschmitt, “PTOLEMY: A Platform for Heterogeneous Simulation and Prototyping,” European Simulation Conference, June, 1991.Google Scholar