Multidimensional Exploration of Software Implementations for DSP Algorithms

When implementing software for programmable digital signal processors (PDSPs), the design space is defined by a complex range of constraints and optimization objectives. Three implementation metrics that are crucial in many PDSP applications are the program memory requirement (code size), data memory requirement, and execution time. This paper addresses the problem of exploring the 3-dimensional space of trade-offs that is defined by these crucial metrics. Given a software library for a target PDSP, and a dataflow-based block diagram specification of a DSP application in terms of this library, our objective in this paper is to compute a full range of Pareto-optimal solutions. For solving this multi-objective optimization problem, an evolutionary algorithm based approach is applied. We illustrate our techniques by analyzing the trade-off fronts of a practical application for a number of well-known, commercial PDSPs.

[1]  Edward A. Lee,et al.  Synthesis of Embedded Software from Synchronous Dataflow Specifications , 1999, J. VLSI Signal Process..

[2]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[3]  조수원 University of Maryland at College Park의 곤충학과 소개 , 1997 .

[4]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[5]  Robert Bregovic,et al.  Multirate Systems and Filter Banks , 2002 .

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

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

[8]  Lothar Thiele,et al.  Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach , 1999, IEEE Trans. Evol. Comput..

[9]  Dan Boneh,et al.  On genetic algorithms , 1995, COLT '95.

[10]  Edward A. Lee,et al.  Optimal parenthesization of lexical orderings for DSP block diagrams , 1995, VLSI Signal Processing, VIII.

[11]  Lothar Thiele,et al.  Comparison of Multiobjective Evolutionary Algorithms: Empirical Results , 2000, Evolutionary Computation.

[12]  Hajime Kita,et al.  Multi-objective optimization by genetic algorithms: a review , 1996, Proceedings of IEEE International Conference on Evolutionary Computation.

[13]  Nostrand Reinhold,et al.  the utility of using the genetic algorithm approach on the problem of Davis, L. (1991), Handbook of Genetic Algorithms. Van Nostrand Reinhold, New York. , 1991 .

[14]  Zbigniew Michalewicz,et al.  Handbook of Evolutionary Computation , 1997 .

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

[16]  David B. Fogel,et al.  Evolutionary algorithms in theory and practice , 1997, Complex.

[17]  Peter J. Fleming,et al.  An Overview of Evolutionary Algorithms in Multiobjective Optimization , 1995, Evolutionary Computation.

[18]  Thomas Bäck,et al.  Evolutionary algorithms in theory and practice - evolution strategies, evolutionary programming, genetic algorithms , 1996 .

[19]  Edward A. Lee,et al.  Ptolemy: A Framework for Simulating and Prototyping Heterogenous Systems , 2001, Int. J. Comput. Simul..

[20]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[21]  Heinrich Meyr,et al.  High level software synthesis for signal processing systems , 1992, [1992] Proceedings of the International Conference on Application Specific Array Processors.