A Comparison of Synchronous and Cyclo-Static Dataflow

Thomas M. Parks, José Luis Pino and Edward A. Lee

Proceedings of the Asilomar Conference on Signals, Systems, and Computers
Pacific Grove, CA, October 29-November 1, 1995

Prepublished version
Published version

ABSTRACT

We compare synchronous dataflow (SDF) and cyclo-static dataflow (CSDF), which are each special cases of a model of computation we call dataflow process networks. In SDF, actors have static firing rules: they consume and produce a fixed number of data tokens in each firing. This model is well suited to multirate signal processing applications and lends itself to efficient, static scheduling, avoiding the run-time scheduling overhead incurred by general implementations of process networks. In CSDF, which is a generalization of SDF, actors have cyclicly changing firing rules. In some situations, the added generality of CSDF can unnecessarily complicate scheduling. We show how higher-order functions can be used to transform a CSDF graph into a SDF graph, simplifying the scheduling problem. In other situations, CSDF has a genuine advantage over SDF: sim-pler precedence constraints. We show how this makes it possible to eliminate unnecessary computations and expose additional parallelism. We use digital sample rate conversion as an example to illustrate these advantages of CSDF.