Retiming synchronous data-flow graphs to reduce execution time

Many common iterative or recursive DSP applications be can represented by synchronous data-flow graphs (SDFGs). A great deal of research has been done attempting to optimize such applications through retiming. However, despite its proven effectiveness in transforming single-rate data-flow graphs to equivalent DFGs with smaller clock periods, the use of retiming for attempting to reduce the execution time of synchronous DFGs has never been explored. In this paper, we do just this. We develop the basic definitions and results necessary to express and study SDFGs. We review the problems faced when attempting to retime an SDFG in order to minimize clock period and then present algorithms for doing this. Finally, we demonstrate the effectiveness of our methods on several examples.

[1]  Rainer Schoenen,et al.  On retiming of multirate DSP algorithms , 1996, 1996 IEEE International Conference on Acoustics, Speech, and Signal Processing Conference Proceedings.

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

[3]  Gilbert Christopher Sih,et al.  Multiprocessor scheduling to account for interprocessor communication , 1992 .

[4]  Edward Ashford Lee A coupled hardware and software architecture for programmable digital signal processors (synchronous data flow) , 1986 .

[5]  Markku Renfors,et al.  The maximum sampling rate of digital filters under hardware speed constraints , 1981 .

[6]  Jan M. Rabaey,et al.  Scheduling of DSP programs onto multiprocessors for maximum throughput , 1993, IEEE Trans. Signal Process..

[7]  José Parera Bermudez,et al.  Programming DSP systems on multiprocessor architectures , 1990, International Conference on Acoustics, Speech, and Signal Processing.

[8]  Keshab K. Parhi,et al.  Algorithm transformation techniques for concurrent processors , 1989, Proc. IEEE.

[9]  Charles E. Leiserson,et al.  Optimizing synchronous systems , 1981, 22nd Annual Symposium on Foundations of Computer Science (sfcs 1981).

[10]  Liang-Fang Chao,et al.  Scheduling and behavioral transformation for parallel systems , 1993 .

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

[12]  M. Engels,et al.  GRAPE: a CASE tool for digital signal parallel processing , 1990, IEEE ASSP Magazine.

[13]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[14]  Heinrich Meyr,et al.  High-Level Software Synthesis for the Design of Communication Systems , 1993, IEEE J. Sel. Areas Commun..

[15]  Edwin Hsing-Mean Sha,et al.  Static scheduling for synthesis of DSP algorithms on various models , 1995, J. VLSI Signal Process..

[16]  Heinrich Meyr,et al.  Retiming of DSP programs for optimum vectorization , 1994, Proceedings of ICASSP '94. IEEE International Conference on Acoustics, Speech and Signal Processing.

[17]  Edwin Hsing-Mean Sha,et al.  Retiming and Unfolding Data-Flow Graphs , 1992, ICPP.

[18]  E. Sha,et al.  Retiming Synchronous Data-Flow Graphs to Minimize Execution Time , 2000 .

[19]  Edward A. Lee,et al.  Gabriel: a design environment for DSP , 1989, IEEE Trans. Acoust. Speech Signal Process..

[20]  Heinrich Meyr,et al.  Optimum vectorization of scalable synchronous dataflow graphs , 1993, Proceedings of International Conference on Application Specific Array Processors (ASAP '93).

[21]  Edwin Hsing-Mean Sha,et al.  Scheduling Data-Flow Graphs via Retiming and Unfolding , 1997, IEEE Trans. Parallel Distributed Syst..

[22]  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.

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

[24]  Jean A. Peperstraete,et al.  Cycle-static dataflow , 1996, IEEE Trans. Signal Process..

[25]  Edward A. Lee,et al.  Software Synthesis from Dataflow Graphs , 1996 .

[26]  Edward A. Lee,et al.  Pipeline interleaved programmable DSP's: Synchronous data flow programming , 1987, IEEE Trans. Acoust. Speech Signal Process..

[27]  Heinrich Meyr,et al.  An upper bound of the throughput of multirate multiprocessor schedules , 1997, 1997 IEEE International Conference on Acoustics, Speech, and Signal Processing.

[28]  E.A. Lee,et al.  Synchronous data flow , 1987, Proceedings of the IEEE.