Power-efficient Instruction Encoding Optimization for Various Architecture Classes

A huge application domain, in particular, wireless and handheld devices strongly requires flexible and power-efficient hardware with high performance. This can only be achieved with Application Specific Instruction-Set Processors (ASIPs). A key problem is to determine the instruction encoding of the processors for achieving minimum power consumption in the instruction bus and in the instruction memory. In this paper, a framework for determining power-efficient instruction encoding in RISC and VLIW architectures is presented. We have integrated existing and novel techniques in this framework and propose novel heuristic approaches. The framework accepts an existing processor’s instruction-set and a set of implementations of various applications. The output, which is an optimized instruction encoding under the constraint of a well-defined cost model, minimizes the power consumption of the instruction bus and the instruction memory. This results in strong reduction of the overall power consumption. Case studies with commercial embedded processors show the effectiveness of this framework.

[1]  Kevin Skadron,et al.  Odd/even bus invert with two-phase transfer for buses with coupling , 2002, ISLPED '02.

[2]  Rainer Leupers,et al.  Algorithms for address assignment in DSP code generation , 1996, Proceedings of International Conference on Computer Aided Design.

[3]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[4]  Trevor N. Mudge,et al.  Power: A First-Class Architectural Design Constraint , 2001, Computer.

[5]  Anantha Chandrakasan,et al.  Bus energy minimization by transition pattern coding (TPC) in deep sub-micron technologies , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[6]  Gary S. Tyson,et al.  An energy efficient instruction set synthesis framework for low power embedded system designs , 2005, IEEE Transactions on Computers.

[7]  Rainer Leupers,et al.  Algorithms for address assignment in DSP code generation , 1996, ICCAD 1996.

[8]  Rainer Leupers,et al.  Architecture exploration for embedded processors with LISA , 2002 .

[9]  Enrico Macii,et al.  Low-energy encoding for deep-submicron address buses , 2001, ISLPED'01: Proceedings of the 2001 International Symposium on Low Power Electronics and Design (IEEE Cat. No.01TH8581).

[10]  Luca Benini,et al.  Reducing power consumption of dedicated processors through instruction set encoding , 1998, Proceedings of the 8th Great Lakes Symposium on VLSI (Cat. No.98TB100222).

[11]  Heinrich Meyr,et al.  Design of Energy-Efficient Application-Specific Instruction Set Processors , 2004 .

[12]  Alexandru Nicolau,et al.  EXPRESSION: An ADL for system level design exploration , 1998 .

[13]  Rainer Leupers,et al.  A universal technique for fast and flexible instruction-set architecture simulation , 2004, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[14]  Mary Jane Irwin,et al.  Power-Area Trade-Offs in Divided Word Line Memory Arrays , 1997, J. Circuits Syst. Comput..

[15]  Luca Fanucci,et al.  Application-Specific Instruction-Set Processor for Retinex-Like Image and Video Processing , 2007, IEEE Transactions on Circuits and Systems II: Express Briefs.

[16]  Krishna C. Saraswat,et al.  Scaling trends for the on chip power dissipation , 2002, Proceedings of the IEEE 2002 International Interconnect Technology Conference (Cat. No.02EX519).

[17]  Peter Petrov,et al.  Transforming binary code for low-power embedded processors , 2004, IEEE Micro.

[18]  Peter Petrov,et al.  Low-power instruction bus encoding for embedded processors , 2004, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[19]  Takayasu Sakurai,et al.  Coupling-driven bus design for low-power application-specific systems , 2001, DAC '01.

[20]  Enrico Macii,et al.  Combining wire swapping and spacing for low-power deep-submicron buses , 2003, GLSVLSI '03.

[21]  Rainer Leupers,et al.  A universal technique for fast and flexible instruction-set architecture simulation , 2002, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.