Efficient design space exploration for application specific systems-on-a-chip

A reduction in the time-to-market has led to widespread use of pre-designed parametric architectural solutions known as system-on-a-chip (SoC) platforms. A system designer has to configure the platform in such a way as to optimize it for the execution of a specific application. Very frequently, however, the space of possible configurations that can be mapped onto a SoC platform is huge and the computational effort needed to evaluate a single system configuration can be very costly. In this paper we propose an approach which tackles the problem of design space exploration (DSE) in both of the fronts of the reduction of the number of system configurations to be simulated and the reduction of the time required to evaluate (i.e., simulate) a system configuration. More precisely, we propose the use of Multi-objective Evolutionary Algorithms as optimization technique and Fuzzy Systems for the estimation of the performance indexes to be optimized. The proposed approach is applied on a highly parameterized SoC platform based on a parameterized VLIW processor and a parameterized memory hierarchy for the optimization of performance and power dissipation. The approach is evaluated in terms of both accuracy and efficiency and compared with several established DSE approaches. The results obtained for a set of multimedia applications show an improvement in both accuracy and exploration time.

[1]  Andrew B. Kahng,et al.  Recent directions in netlist partitioning: a survey , 1995, Integr..

[2]  Vincenzo Catania,et al.  A GA-based design space exploration framework for parameterized system-on-a-chip platforms , 2004, IEEE Transactions on Evolutionary Computation.

[3]  Tomoyuki Hiroyasu,et al.  SPEA2+: Improving the Performance of the Strength Pareto Evolutionary Algorithm 2 , 2004, PPSN.

[4]  Stijn Eyerman,et al.  Efficient Design Space Exploration of High Performance Embedded Out-of-Order Processors , 2006, Proceedings of the Design Automation & Test in Europe Conference.

[5]  Andrew B. Kahng,et al.  A hybrid multilevel/genetic approach for circuit partitioning , 1996, Proceedings of APCCAS'96 - Asia Pacific Conference on Circuits and Systems.

[6]  Pinaki Mazumder,et al.  A genetic approach to standard cell placement using meta-genetic parameter optimization , 1990, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[7]  Vincenzo Catania,et al.  EPIC-Explorer: A Parameterized VLIW-based Platform Framework for Design Space Exploration , 2003, ESTImedia.

[8]  Vincenzo Catania,et al.  Parameterised system design based on genetic algorithms , 2001, CODES '01.

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

[10]  Irith Pomeranz,et al.  GAFPGA: Genetic algorithm for FPGA technology mapping , 1993, Proceedings of EURO-DAC 93 and EURO-VHDL 93- European Design Automation Conference.

[11]  Krzysztof Kuchcinski,et al.  Time-energy design space exploration for multi-layer memory architectures , 2004, Proceedings Design, Automation and Test in Europe Conference and Exhibition.

[12]  B. Ramakrishna Rau,et al.  Fast Design Space Exploration Through Validity and Quality Filtering of Subsystem Designs , 2000 .

[13]  Jens Lienig,et al.  A Genetic Algorithm for Channel Routing in VLSI Circuits , 1993, Evolutionary Computation.

[14]  G. Ascia,et al.  Parameterised system design based on genetic algorithms , 2001, Ninth International Symposium on Hardware/Software Codesign. CODES 2001 (IEEE Cat. No.01TH8571).

[15]  T. Givargis,et al.  Cache optimization for embedded processor cores: an analytical approach , 2003, ICCAD-2003. International Conference on Computer Aided Design (IEEE Cat. No.03CH37486).

[16]  Jörg Henkel,et al.  System-level exploration for Pareto-optimal configurations in parameterized systems-on-a-chip , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[17]  Andrew B. Kahng,et al.  Recent developments in netlist partitioning: a survey , 1995 .

[18]  G. D. La Hei,et al.  TriMedia CPU64 design space exploration , 1999, Proceedings 1999 IEEE International Conference on Computer Design: VLSI in Computers and Processors (Cat. No.99CB37040).

[19]  Jorg Henkel,et al.  System-level exploration for pareto-optimal configurations in parameterized systems-on-a-chip , 2001, ICCAD 2001.

[20]  Frank Vahid,et al.  Platform Tuning for Embedded Systems Design , 2001, Computer.

[21]  James E. Smith,et al.  Statistical Simulation: Adding Efficiency to the Computer Designer's Toolbox , 2003, IEEE Micro.

[22]  Vincenzo Catania,et al.  Tuning Methodologies for Parameterized Systems Design , 2003 .

[23]  Xiao-Jun Zeng,et al.  Approximation Capabilities of Hierarchical Fuzzy Systems , 2005, IEEE Transactions on Fuzzy Systems.

[24]  Yi-Min Jiang,et al.  Estimation of maximum power and instantaneous current using a genetic algorithm , 1997, Proceedings of CICC 97 - Custom Integrated Circuits Conference.

[25]  Elizabeth M. Rudnick,et al.  Genetic algorithms for VLSI design, layout & test automation , 1999 .

[26]  Vincenzo Catania,et al.  A multiobjective genetic approach for system-level exploration in parameterized systems-on-a-chip , 2005, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[27]  Vittorio Zaccaria,et al.  A Sensitivity-Based Design Space Exploration Methodology for Embedded Systems , 2002, Des. Autom. Embed. Syst..

[28]  Daniel G. Saab,et al.  Automatic test vector cultivation for sequential VLSI circuits using genetic algorithms , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[29]  Joseph A. Fisher,et al.  Very Long Instruction Word architectures and the ELI-512 , 1983, ISCA '83.

[30]  Lothar Thiele,et al.  A Tutorial on the Performance Assessment of Stochastic Multiobjective Optimizers , 2006 .

[31]  Michio Sugeno,et al.  Fuzzy identification of systems and its applications to modeling and control , 1985, IEEE Transactions on Systems, Man, and Cybernetics.

[32]  Vittorio Zaccaria,et al.  A design framework to efficiently explore energy-delay tradeoffs , 2001, Ninth International Symposium on Hardware/Software Codesign. CODES 2001 (IEEE Cat. No.01TH8571).

[33]  Vincenzo Catania,et al.  Design space exploration methodologies for IP-based system-on-a-chip , 2002, 2002 IEEE International Symposium on Circuits and Systems. Proceedings (Cat. No.02CH37353).

[34]  Jerry M. Mendel,et al.  Generating fuzzy rules by learning from examples , 1991, Proceedings of the 1991 IEEE International Symposium on Intelligent Control.

[35]  Gabor Karsai,et al.  Design - Space Construction and Exploration in Platform - Based Design , 2002 .

[36]  Marco Laumanns,et al.  Performance assessment of multiobjective optimizers: an analysis and review , 2003, IEEE Trans. Evol. Comput..

[37]  Scott A. Mahlke,et al.  Trimaran: An Infrastructure for Research in Instruction-Level Parallelism , 2004, LCPC.

[38]  J. Periaux,et al.  Evolutionary Methods for Design, Optimization and Control with Applications to Industrial Problems , 2001 .

[39]  Marco Laumanns,et al.  SPEA2: Improving the strength pareto evolutionary algorithm , 2001 .