Abstract
This paper presents novel techniques for computing the minimum number of memory locations in statically scheduled digital signal processing (DSP) programs. Two related problems are considered. In the first problem, we compute the minimum number of memory locations required for a scheduled program assuming that no circuit transformations (such as pipelining and retiming) are to be performed after scheduling. For this problem, we consider memory minimization for theoperation-constrained, processor-constrained andunconstrained memory models which represent various restrictions on how data can be allocated to memory. Then we consider the second problem, where memory minimization for a scheduled program is considered simultaneously with retiming using a variation of the retiming problem referred to as theminimum physical storage location (MPSL) retiming. While both problems consider memory minimization for scheduled programs, the second problem minimizes memory using retiming whereas the first problem performs no retiming. The scheduling results obtained from the MARS design system are used to compare memory requirements in the context of both of these problems. Our experiments show that MARS performs an optimal retiming for the schedule it generates. These memory requirements are then compared with an integer linear programming solution to the scheduling problem which is optimal under the unconstrained memory model. It is concluded that the schedule obtained by the MARS system achieves optimality or near-optimality with respect to register minimization.
Similar content being viewed by others
References
M.C. McFarland, A.C. Parker, and R. Composano, “The highlevel synthesis of digital systems,”Proceedings of the IEEE, pp. 301–318, 1990.
M. Potkonjak and J. Rabaey, “Pipelining: Just another transformation,” inProceedings of 1994 IEEE International Conference on Application-Specific Array Processors, Oakland, CA, August 1992, pp. 163–177.
M. Potkonjak and J. Rabaey, “Fast implementation of recursive programs using transformations,” inProc. of IEEE Int. Conf. on Acoustics, Speech, and Signal Processing, San Francisco, CA, 1992, Vol. V., pp. 569–572.
M. Potkonjak and J. Rabaey, “Retiming for scheduling,” inVLSI Signal Processing IV, pp. 23–32, Nov. 1990.
T.-F. Lee et al., “An effective methodology for functional pipelining,”Proceedings of the Int. Conf. on Computer Aided Design, pp. 230–233, Nov. 1992.
L.-F. Chao, A. LaPaugh, and E.H. Sha, “Rotation scheduling: A loop pipelining algorithm,” inProceedings of the 30th Design Automation Conference, pp. 566–572, June 1993.
C.H. Gebotys and M.I. Elmasry, “Optimal synthesis of high-performance architectures,”IEEE Journal of Solid-State Circuits, Vol. 27, pp. 389–397, 1992.
C.H. Gebotys, “Synthesizing embedded speed optimized architectures,”IEEE Journal of Solid-State Circuits, Vol. 28, pp. 242–252, 1993.
S.M. Heemstra de Groot, S.H. Gerez, and O.E. Herrmann, “Range chart guided iterative data-flow graph scheduling,”IEEE Transactions on Circuits and Systems-I: Fundamental Theory and Applications, Vol. 39, pp. 351–364, 1992.
C.-T. Hwang, J.-H. Lee, and Y.-C. Hsu, “A formal approach to the scheduling problem in high-level synthesis,”IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 10, pp. 464–475, 1991.
C.-Y. Wang and K.K. Parhi, “High-level DSP synthesis using concurrent transformations, scheduling, and allocation,”IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 14, pp. 274–295, 1995.
P. Lippens et al., “PHIDEO: A silicon compiler for high speed algorithms,” inProceedings of the European Conference on Design Automation, Amsterdam, Feb. 1991, pp. 436–441.
H. De Man et al., “Cathedral II: A silicon compiler for digital signal processing,”IEEE Design and Test Magazine, pp. 13–25, 1986.
H. De Man et al., “Architecture driven synthesis techniques for VLSI implementation of DSP algorithms,”Proceedings of the IEEE, pp. 319–335, Feb. 1990.
J. Vanhoof, K. Van Rompaey, I. Bolsens, G. Goossens, and H. De Man,High-Level Synthesis for Real-Time Digital Signal Processing, Kluwer Academic, 1993.
R.I. Hartley and J.R. Jasica, “Behavioral to structural translation in a bit-serial silicon compiler,”IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 7, pp. 877–886, 1988.
J. Rabaey, C. Chu, P. Hoang, and M. Potkonjak, “Fast prototyping of data-path intensive architectures,”IEEE Design and Test of Computers, pp. 40–51, 1991.
K.K. Parhi, C.-Y. Wang, and A.P. Brown, “Synthesis of control circuits in folded pipelined DSP architectures,”IEEE Journal of Solid-State Circuits, Vol. 27, pp. 29–43, 1992.
K.K. Parhi, “Systematic synthesis of DSP data format converters using life-time analysis and forward-backward register allocation,”IEEE Transactions on Circuits and Systems-II: Analog and Digital Signal Processing, Vol. 39, pp. 423–440, 1992.
L. Stok and J. Jess, “Foreground memory management in data path synthesis,”Interational Journal of Circuit Theory and Applications, Vol. 20, pp. 235–255, 1992.
J. Bae, V. Prasanna, and H. Park, “Synthesis of a class of data format converters with specified delays,” inProceedings of 1994 IEEE International Conference on Application-Specific Array Processors, San Francisco, CA, 1994, pp. 283–294. IEEE Computer Society Press.
F. Kurdahi and A. Parker, “REAL: A program for register allocation,” inProc. 24th ACM/IEEE Design Automation Conf., pp. 210–215, 1987.
K.K. Parhi, “Calculation of minimum number of registers in arbitrary life time chart,”IEEE Transactions on Circuits and Systems-II: Analog and Digital Signal Processing, Vol. 41, pp. 434–436, 1994.
C. Leiserson, F. Rose, and J. Saxe, “Optimizing synchronous circuitry by retiming,”Third Caltech Conference on VLSI, pp. 87–116, 1983.
E.A. Lee and D.G. Messerschmitt, “Static scheduling of synchronous data flow programs for digital signal processing,”IEEE Trans. Computer, Vol. C-36, pp. 24–35, 1987.
G. Gao, R. Govindarajan, and P. Panangaden, “Well-behaved dataflow programs for DSP computation,” inProceedings of IEEE ICASSP, San Francisco, CA, March 1992, Vol. V, pp. 561–564.
S.S. Bhattacharyya and E.A. Lee, “Memory management for dataflow programming of multirate signal processing algorithms,”IEEE Transactions on Signal Processing, Vol. 42, pp. 1190–1201, 1994.
R. Govindarajan, G. Gao, and P. Desai, “Minimizing memory requirements in rate-optimal schedules,” inProceedings of IEEE Int. Conf. on Application-Specific Array Processors, San Francisco, CA, Aug. 1994, pp. 75–86.
M. Renfors and Y. Neuvo, “Fast multiprocessor realizations of digital filters,” inProceedings of IEEE ICASSP, pp. 916–919, 1980.
P. Dewilde, E. Deprettere, and R. Nouta, “Parallel and pipelined VLSI implementation of signal processing algorithms,” inVLSI and Modern Signal Processing, Kung, Whitehouse, and Kailath (Eds.), Ch. 15, pp. 257–276, Prentice Hall, 1985.
M. Renfors and Y. Neuvo, “The maximum sampling rate of digital filters under hardware speed constraints,”IEEE Transactions on Circuits and Systems, Vol. CAS-28, pp. 196–202, 1981.
J.-G. Chung and K.K. Parhi, “Pipelining of lattice IIR digital filters,”IEEE Transactions on Signal Processing, Vol. 42, pp. 751–761, 1994.
K.K. Parhi and D.G. Messerschmitt, “Static rate-optimal scheduling of iterative data-flow programs via optimum unfolding,”IEEE Transactions on Computers, Vol. 40, pp. 178–195, 1991.
A. Brooke, D. Kendrick, and A. Meeraus,GAMS: A User's Guide, Release 2.25, The Scientific Press, South San Francisco, CA, 1992.
K. Ito and K.K. Parhi, “Register minimization in cost-optimal synthesis of DSP architectures,” inVLSI Signal Processing, VIII, T. Nishitani and K. Parhi (Eds.), pp. 207–216, IEEE Press, 1995.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Denk, T.C., Parhi, K.K. Lower bounds on memory requirements for statically scheduled DSP programs. J VLSI Sign Process Syst Sign Image Video Technol 12, 247–264 (1996). https://doi.org/10.1007/BF00924988
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF00924988