A Self-Adaptive Extensible Embedded Processor

Extensible embedded processors allow the designer to adapt the instruction set to a certain application profile. It is either done during design time or at run time. In the latter case it is fixed when which part of the instruction set is used. The processor is then configured according to a predefined schedule. Our approach goes a step further: our extensible processor is self-adaptive. That means, during run time the processor analyzes the usage of special instructions and self-adapts when and how these are used and configured. We show that this kind of self-adaptation leads to a high efficiency (e.g. performance per chip area, etc.) and is superior to state-of-the-art extensible processors. In this paper we present the main techniques of our novel self-adaptive approach. We evaluate by means of an H.264 video encoder.

[1]  Richard S. Sutton,et al.  Learning to predict by the methods of temporal differences , 1988, Machine Learning.

[2]  Rudy Lauwereins,et al.  Reconfigurable instruction set processors: a survey , 2000, Proceedings 11th International Workshop on Rapid System Prototyping. RSP 2000. Shortening the Path from Specification to Prototype (Cat. No.PR00668).

[3]  Heinrich Meyr,et al.  A novel methodology for the design of application-specificinstruction-set processors (ASIPs) using a machine description language , 2001, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[4]  Stamatis Vassiliadis,et al.  The MOLEN polymorphic processor , 2004, IEEE Transactions on Computers.

[5]  Muhammad Shafique,et al.  RISPP: Rotating Instruction Set Processing Platform , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[6]  Jörg Henkel,et al.  Rapid Configuration & Instruction Selection for an ASIP: A Case Study , 2003, Embedded Software for SoC.

[7]  Paul Chow,et al.  The effect of reconfigurable units in superscalar processors , 2001, FPGA.

[8]  Jörg Henkel,et al.  Closing the SoC Design Gap , 2003, Computer.

[9]  Paolo Ienne,et al.  Automatic application-specific instruction-set extensions under microarchitectural constraints , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[10]  Richard S. Sutton,et al.  Reinforcement Learning: An Introduction , 1998, IEEE Trans. Neural Networks.

[11]  Scott Hauck,et al.  Reconfigurable computing: a survey of systems and software , 2002, CSUR.

[12]  Brad Calder,et al.  Phase tracking and prediction , 2003, ISCA '03.

[13]  Srivaths Ravi,et al.  A Scalable Application-Specific Processor Synthesis Methodology , 2003, ICCAD 2003.