Browse > Article
http://dx.doi.org/10.9708/jksci/2012.17.10.011

The Compressed Instruction Set Architecture for the OpenRISC Processor  

Kim, Dae-Hwan (Dept. of Computer Information, Suwon Science College)
Abstract
To achieve efficient code size reduction, this paper proposes a new compressed instruction set architecture for the OpenRISC architecture. The new instructions and their corresponding formats are designed by the profiling information of the existing instruction usage. New 16-bit instructions and 32-bit instructions are proposed to compressed the existing 32-bit instructions and instruction sequences, respectively. The proposed instructions can be classified into three types. The first is the new 16-bit instructions for the frequent normal 32-bit instructions such as add, load, store, branch, and jump instructions. The second type is the new 32-bit instructions for the consecutive two load instructions, two store instructions, and 32-bit data mov instructions. Finally, two new 32-bit instructions are proposed to compress function prolog and epilog code, respectively. OpenRISC hardware decoder is extended to support the new instructions. Experiments show that the efficiency of code size reduction improves by an average of 30.4% when compared to the OR1200 instruction set architecture without loss of execution performance.
Keywords
Instruction set design; Code size; Embedded processor; OpenRISC; OR1200;
Citations & Related Records
Times Cited By KSCI : 4  (Citation Analysis)
연도 인용수 순위
1 S. Segars, K. Clarke, and L. Goudge, "Embedded control problems, Thumb, and the ARM7TDMI," IEEE Micro, Vol. 15, No. 5, pp. 22-30, Oct. 1995.   DOI   ScienceOn
2 S. Furber, "ARM system-on-chip architecture," Addison-Wesley, 2000.
3 K. Kissell, "MIPS16: High-Density MIPS for the Embedded Market," Technical report, Silicon Graphics MIPS Group, 1997.
4 LSI LOGIC, "TinyRISC LR4102 Microprocessor Technical Manual," LSI LOGIC, Milpitas, CA, 2000.
5 ST Microelectronics, "ST100 Technical Manual," ST Microelectronics, Geneva, Switzerland, 2004.
6 ARC Cores, "ARCtangent-A5 Microprocessor Technical Manual," Herts, England, 2005.
7 R. Phelan, "Improving ARM Code Density and Performance," Technical report, Advanced RISC Machines Ltd., June 2003.
8 D. Lampret, "OpenRISC 1200 IP core specification," 2001.
9 D. Lampret, C.-M. Chen, M.Mlinar, et al, "OpenRISC 1000 Architecture Manual," 2003.
10 OpenCores, http://www.opencores.org
11 C. Lee, M. Potkonjak and H. Mangione-Smith," MediaBench: A Tool for Evaluating and Synthesizing Multimedia and Communications Systems," Micro-30, pp. 330-335, November 1997.
12 M. Guthaus, J. Ringenberg, D. Ernst, T. Austin, T. Mudge, and R. Brown, "Mibench: A free, commercially representative embedded benchmark suite," In Proceedings of the 4th IEEE International Workshop on the Workload Characterization, pp. 3-14, 2001.
13 John L. Henning, "SPEC CPU 2000: Measuring CPU performance in the new millennium," IEEE Computer, Vol. 33, No. 7, pp. 28-35, July 2000.   DOI   ScienceOn
14 E.M. McCreight, "A Space-Economical Suffix Tree Construction Algorithm," Journal of the ACM, Vol. 23, No. 2, pp. 262-272, April 1976.   DOI   ScienceOn
15 J. L. Hennessy, and D. A. Patterson, "Computer Architecture - A Quantitative Approach (5. ed.)," Morgan Kaufmann, pp. B1-B.47, 2012.
16 R. Maheswari, and V. Pattabiraman, "A new technique of embedding multigrain parallel HPRC in OR1200 a soft-core processor," In Proceedings of SEPADS'12/EDUCATION'12, pp. 92-97, 2012.
17 H. Jung, and K. Ryoo, "Performance and Power Consumption Improvement of Embedded RISC Core," Journal of the Korean Institute Of Maritime information & Communication Science, Vol. 14, No. 2, pp. 453-461, 2010.   DOI   ScienceOn
18 H. Jung, X. Jin, and K. Ryoo, "Performance Improvement and Power Consumption Reduction of an Embedded RISC Core," Journal of information and communication convergence engineering, Vol. 10, No. 1, pp. 78-84, 2012.   DOI
19 V. Viswanath, J. A. Abraham, and W. A. Hunt, "Automatic insertion of low power annotations in RTL for pipelined microprocessors," In Proceedings of the conference on Design, automation and test in Europe, pp. 496-501, 2006.
20 B. Li, and R. Gupta, "Bit Section Instruction Set Extension of ARM for Embedded Applications," In Proceedings of International Conference on Compilers, Architecture, and Synthesis for Embedded Systems (CASES), Grenoble, France, pp. 69-78, October 2002.
21 H. -J. Cheng, Y. -S. Hwang, R. -G. Chang, and C. -W. Chen, "Trading Conditional Execution for More Registers on ARM Processors," In Proceedings of the 8th IEEE/IFIP International Conference on Embedded and Ubiquitous Computing (EUC), pp. 53-59, Dec. 2010.
22 S. -M. Kang, and J. -M. Kim, "Multimedia Extension Instructions and Optimal Many-core Processor Architecture Exploration for Portable Ultrasonic Image Processing," Journal of The Korea Society of Computer and Information, Vol. 17, No. 8, pp. 1-10, 2012.   DOI
23 Y. -B. Jung, Y. -M. Kim, C. -H. Kim, and J. -M. Kim, "Performance Evaluation and Verification of MMX-type Instructions on an Embedded Parallel Processor," Journal of The Korea Society of Computer and Information, Vol. 16, No. 10, pp. 11-21, 2011.   DOI