This Article 
 Bibliographic References 
 Add to: 
An Energy Efficient Instruction Set Synthesis Framework for Low Power Embedded System Designs
June 2005 (vol. 54 no. 6)
pp. 698-713
Energy efficiency, performance, area, and cost are critical concerns in designing microprocessors for embedded systems such as portable handheld computing and personal telecommunication devices. This work introduces the concept of framework-based instruction set synthesis (FITS), which is a new instruction synthesis paradigm that falls between a general-purpose embedded processor and a synthesized application specific processor (ASP). FITS processors reduce code size and energy consumption by tailoring the instruction set to the requirement of a target application. This is achieved by replacing the fixed instruction and register decoding of a general purpose embedded processor with programmable decoders that can achieve ASP performance, low energy consumption, and smaller code size with the fabrication advantages of a mass produced single chip solution. Experimental results show that our synthesized instruction sets result in significant power reduction in the level one instruction cache compared to ARM instructions. The instruction cache is one of the most predominant sources of power dissipation on the processor. For instance, in Intel's StrongARM processor, 27 percent of total chip power loss goes into the instruction cache. For 21 MiBench benchmarks, our simulation results indicate, on average, a 49.4 percent saving for switching power, a 43.9 percent saving for internal power, a 14.9 percent saving for leakage power, a 46.6 percent saving for total instruction cache power with up to 60.3 percent saving for peak power.

[1] T. Mudge, “Power: A First-Class Architectural Design Constraint,” Computer, vol. 34, no. 4, pp. 52-58, Apr. 2001.
[2] J. Montanaro et al., “A 160-MHz, 32-b, 0.5-W CMOS RISC Microprocessor,” IEEE J. Solid-State Circuits, vol. 31, Nov. 1996.
[3] L. Wu, C. Weaver, and T. Austin, “CryptoManiac: A Fast Flexible Architecture for Secure Communication,” Proc. 28th Int'l Symp. Computer Architecture, June 2001.
[4] N. Clark, H. Zhong, and S. Mahlke, “Processor Acceleration through Automated Instruction Set Customization,” Proc. 36th Int'l Symp. Microarchitecture (MICRO), pp. 129-140, Dec. 2003.
[5] L. Benini, A. Macii, E. Macii, and M. Poncino, “Selective Instruction Compression for Memory Energy Reduction in Embedded Systems,” Proc. Int'l Symp. Low-Power Electronics and Design (ISLPED), pp. 206-211, Aug. 1999.
[6] H. Lekatsas, J. Henkel, and W. Wolf, “Code Compression for Low Power Embedded System Design,” Proc. 37th Design Automation Conf. (DAC), June 2000.
[7] N. Kadri, S. Niar, and A.R. Baba-Ali, “Impact of Code Compression on the Power Consumption in Embedded Systems,” Proc. Int'l Conf. Embedded Systems and Applications, June 2003.
[8] IBM, “CodePack PowerPc Code Compression Utility User's Manual 3.0,” IBM Corp., 1998.
[9] IBM, “PowerPC Microprocessor Family: The Programming Environments for 32-Bit Microprocessors,” Software Reference Manual, Pub. G522-0290-01, IBM Corp., 2000.
[10] R.E. Gonzalez, “Xtensa: A Configurable and Extensible Processor,” IEEE Micro, vol. 20, no. 2, pp. 60-70, Mar.-Apr. 2000.
[11] P. Faraboschi, G. Brown, J.A. Fisher, G. Desoli, and F. Homewood, “Lx: A Technology Platform for Customizable VLIW Embedded Processing,” Proc. 27th Int'l Symp. Computer Architecture (ISCA), pp. 203-213, June 2000.
[12] ARM7TDMI Technical Manual. ARM Ltd., http:/, 2001.
[13] ARMThumb-2 Core Technology, ARM Ltd., http://www.arm. com/armtechThumb-2, 2003.
[14] K.D. Kissell, “MIPS16: High-Density MIPS for the Embedded Market,” Proc. Real Time Systems '97 (RTS97), 1997.
[15] ST100 Technical Manual, STMicroelectronics, http:/ com, 2003.
[16] ARCtangent-A5 Microprocessor Technical Manual, ARC Cores, http:/, 2003.
[17] M. Guthaus et al., “MiBench: A Free, Commercially Representative Embedded Benchmark Suite,” Proc. IEEE Fourth Ann. Workshop Workload Characterization, Dec. 2001.
[18] GNU Compiler Collection, http:/, 2004.
[19] MIRV Compiler Group, http://www.eecs.umich.edumirv, 2001.
[20] A. Church, “An Unsolvable Problem of Elementary Number Theory,” Am. J. Math., vol. 58, pp 345-363, 1936.
[21] A. Turing, “On Computable Numbers, with an Application to the Entscheidungs Problem,” Proc. London Math. Soc., series 2, vol. 42, pp 230-265, 1936.
[22] C. Lefurgy, E. Piccininni, and T. Mudge, “Reducing Code Size with Run-Time Decompression,” Proc. Sixth Int'l Symp. High-Performance Computer Architecture (HPCA), pp. 218-227, Jan. 2000.
[23] T. Austin et al., “SimpleScalar: An Infrastructure for Computer System Modeling,” Computer, vol. 35, no. 2, pp. 59-67, Feb. 2002.
[24] A. Allan et al., “2001 Technology Roadmap for Semiconductors,” Computer, vol. 35, no. 1, pp. 42-53, Jan. 2002.
[25] N.S. Kim et al., “Leakage Current— Moore's Law Meets Static Power,” Computer, vol. 36, no. 12, pp. 68-75, Dec. 2003.
[26] N.S. Kim, T. Austin, T. Mudge, and D. Grunwald, Challenges for Architectural Level Power Modeling in Power Aware Computing, R. Melhem and R. Graybill, eds. Boston: Kluwer Academic, 2001.
[27] SimpleScalar-ARM Power Modeling Project, http://www.eecs., 2004.
[28] Intel Corp., “SA-110 Microprocessor Technical Reference Manual,” ftp:/, 2000.

Index Terms:
Low-power design, energy-aware systems, instruction set design, real-time and embedded systems, reconfigurable hardware.
Allen C. Cheng, Gary S. Tyson, "An Energy Efficient Instruction Set Synthesis Framework for Low Power Embedded System Designs," IEEE Transactions on Computers, vol. 54, no. 6, pp. 698-713, June 2005, doi:10.1109/TC.2005.89
Usage of this product signifies your acceptance of the Terms of Use.