Cycle-static dataflow

We present cycle-static dataflow (CSDF), which is a new model for the specification and implementation of digital signal processing algorithms. The CSDF paradigm is an extension of synchronous dataflow that still allows for static scheduling and, thus, a very efficient implementation of an application. In comparison with synchronous dataflow, it is more versatile because it also supports algorithms with a cyclically changing, but predefined, behavior. Our examples show that this capability results in a higher degree of parallelism and, hence, a higher throughput, shorter delays, and less buffer memory. Moreover, they indicate that CSDF is essential for modelling prescheduled components, like application-specific integrated circuits. Besides introducing the CSDF paradigm, we also derive necessary and sufficient conditions for the schedulability of a CSDF graph. We present and compare two methods for checking the liveness of a graph. The first one checks the liveness of loops, and the second one constructs a single-processor schedule for one iteration of the graph. Once the schedulability is tested, a makespan optimal schedule on a multiprocessor can be constructed. We also introduce the heuristic scheduling method of our graphical rapid prototyping environment (GRAPE).

[1]  Amir Pnueli,et al.  Marked Directed Graphs , 1971, J. Comput. Syst. Sci..

[2]  Rudy Lauwereins,et al.  Development of a static load balancing tool , 1993 .

[3]  James E. Rumbaugh,et al.  A Data Flow Multiprocessor , 1977, IEEE Transactions on Computers.

[4]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[5]  Rudy Lauwereins,et al.  Static scheduling of multi-rate and cyclo-static DSP-applications , 1994, Proceedings of 1994 IEEE Workshop on VLSI Signal Processing.

[6]  Rudy Lauwereins,et al.  GRAPE-II: a tool for the rapid prototyping of multi-rate asynchronous DSP applications on heterogeneous multiprocessors , 1992, [1992 Proceedings] The Third International Workshop on Rapid System Prototyping.

[7]  Donald B. Johnson,et al.  Finding All the Elementary Circuits of a Directed Graph , 1975, SIAM J. Comput..

[8]  Edward A. Lee,et al.  Static Scheduling of Synchronous Data Flow Programs for Digital Signal Processing , 1989, IEEE Transactions on Computers.

[9]  M. Engels,et al.  Grape-II: A System-Level Prototyping Environment for DSP Applications , 1995, Computer.

[10]  Rudy Lauwereins,et al.  Grape-11: A System=Level Prototyping Environment , 1995 .

[11]  Edward A. Lee,et al.  Software synthesis for DSP using ptolemy , 1995, J. VLSI Signal Process..

[12]  Jack B. Dennis,et al.  Data Flow Supercomputers , 1980, Computer.

[13]  Edward A. Lee,et al.  Scheduling dynamic dataflow graphs with bounded memory using the token flow model , 1993, 1993 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[14]  R. Karp,et al.  Properties of a model for parallel computations: determinacy , 1966 .

[15]  Edward A. Lee,et al.  Dataflow process networks , 1995, Proc. IEEE.

[16]  Rudy Lauwereins,et al.  Cyclo-dynamic dataflow , 1996, Proceedings of 4th Euromicro Workshop on Parallel and Distributed Processing.

[17]  Guang R. Gao,et al.  Well-behaved dataflow programs for DSP computation , 1992, [Proceedings] ICASSP-92: 1992 IEEE International Conference on Acoustics, Speech, and Signal Processing.