Efficient architecture/compiler co-exploration for ASIPs

In this paper, we present an efficient exploration algorithm for architecture/compiler co-designs of application-specific instruction-set processors. The huge design space is spanned by processor architecture parameters as well as different compiler optimization strategies. The objective space is multi-dimensional including conflicting objectives such as hardware cost, execution time and code size. The goal of the presented exploration algorithm is to determine the set of Pareto-optimal designs and compiler settings for a given benchmark program.In a case study, while exploring Pareto-optimal designs for a given DSP benchmark program, we show that for a realistic architecture family, the huge search space may be reduced dramatically using proper techniques to prune search spaces that may not contain Pareto-optimal solutions. Finally, we analyse and present solutions on what is the best architecture for a mixture of benchmark programs, i.e., what are the best architecture/compiler co-designs to execute the DSPstone benchmark.

[1]  Jürgen Teich,et al.  A joined architecture/compiler design environment for ASIPs , 2000, CASES '00.

[2]  Jürgen Teich,et al.  Design space characterization for architecture/compiler co-exploration , 2001, CASES '01.

[3]  Nikil D. Dutt,et al.  EXPRESSION: a language for architecture exploration through compiler/simulator retargetability , 1999, Design, Automation and Test in Europe Conference and Exhibition, 1999. Proceedings (Cat. No. PR00078).

[4]  Markus Freericks,et al.  Describing instruction set processors using nML , 1995, Proceedings the European Design and Test Conference. ED&TC 1995.

[5]  G. Goossens,et al.  PROGRAMMABLE CHIPS IN CONSUMER ELECTRONICS AND TELECOMMUNICATIONS , 1996 .

[6]  Gert Goossens,et al.  Chess: retargetable code generation for embedded DSP processors , 1994, Code Generation for Embedded Processors.

[7]  Jürgen Teich,et al.  Description and Simulation of Microprocessor Instruction Sets Using ASMs , 2000, Abstract State Machines.

[8]  Alfonso Pierantonio,et al.  Formal aspects of and development environments for Montages , 1997 .

[9]  Heinrich Meyr,et al.  Retargeting of compiled simulators for digital signal processors using a machine description language , 2000, DATE '00.

[10]  Yuri Gurevich,et al.  Evolving algebras 1993: Lipari guide , 1995, Specification and validation methods.

[11]  Andreas Fauth Beyond tool-specific machine descriptions , 1994, Code Generation for Embedded Processors.

[12]  Pierre G. Paulin,et al.  Flexware: A flexible firmware development environment for embedded systems , 1994, Code Generation for Embedded Processors.