Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/1878921.1878937acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
research-article

Implementing dynamic implied addressing mode for multi-output instructions

Published: 24 October 2010 Publication History

Abstract

The ever-increasing demand for faster execution time, smaller resource usage and lower energy consumption has compelled architects of embedded processors to adopt more specialized hardware features with irregular data paths and heterogeneous registers that are customized to the needs of their target applications. These processors consequently provide a rich set of specialized instructions in order to enable programmers to access these features. Such an instruction is typically a multi-output instruction (MOI), which outputs multiple results parallely in order to exploit inherent underlying hardware parallelism. Earlier study has exhibited that MOIs help to enhance performance in aspect of instruction counts and code size. However, as MOIs require more operands, they tend to increase not only the size of the instruction set but also the size of individual instructions. This can be a serious setback for embedded processors, which are mostly subject to strong resource limitations (particularly in this case, limited instruction encoding space). For this reason, these processors are often allowed to include only a very small subset of the total desired MOIs in their instruction sets, despite there can be sufficient silicon real estate to accommodate these specialized MOIs. To attack this problem, we introduce a novel instruction encoding scheme based on the dynamic implied addressing mode (DIAM). In this paper, we will discuss how we have overcome the encoding space problem for our target embedded processor whose instruction set has been augmented with a variety of MOIs. Our DIAM-based encoding scheme employs a small on-chip buffer to supplement extra encoding information for MOIs at run time. The empirical results are promising: the scheme allows us to encode many more MOIs for our processor; thereby helping us to achieve considerable reduction of code size as well as running time after the DIAM is additively implemented in the original architecture.

References

[1]
H. Scharwaechter, D. Kammler, A. Wieferink, M. Hohenauer, J. Zeng, K. Karuri, R. Leupers, G. Ascheid, and H. Meyr. ASIP Architecture Exploration for Efficient IPSec Encryption: A Case Study. ACM Transactions on Embedded Computing Systems (TECS), 6(2), Mai 2007.
[2]
A. V. Aho, M. Ganapathi, and S. W. K. Tjiang. Code Generation Using Tree Pattern Matching and Dynamic Programing. ACM Transactions on Programming Languages and Systems., 11(4):491--516, Oct. 1989.
[3]
R. Leupers and P. Marwedel. Instruction Selection for Embedded DSPs with Complex Instructions. In Proc. of the European Conference on Design Automation (EDAC), Sept 1996.
[4]
H. Scharwaechter, J. M. Youn, R. Leupers, Y. Paek, G. Ascheid and H. Meyr. A code-generator generator for multi-output instructions. In Proc. of the 5th IEEE/ACM international conference on Hardware/software codesign and system synthesis(CODES+ISSS), Sep 2007.
[5]
Minwook Ahn, Jonghee M. Youn, Youngkyu Choi, Doosan Cho, Yunheung Paek, "Iterative Algorithm for Compound Instruction Selection with Register Coalescing," dsd, pp.513--520, 2009 12th Euromicro Conference on Digital System Design, Architectures, Methods and Tools, August 2009
[6]
C. W. Fraser, D. R. Hanson, and T. A. Proebsting. Engineering Efficient Code Generators Using Tree Matching and Dynamic Programming. Technical Report TR-386-92, 1992.
[7]
C. W. Fraser, R. R. Henry, and T. A. Proebsting. BURG-fast optimal instruction selection and tree parsing. Technical Report CS-TR-1991-1066, 1991.
[8]
S. W. K. Tjiang. An Olive Twig. Technical report, Synopsys Inc., 1993
[9]
S. Sakai, M.Togasaki, and K. Yamazaki. A Note on Greedy Algorithms for the Maximum Weighted Independent Set Problem. Discrete Applied Mathematics, 126:313--322, 2003.
[10]
F. H. McMahon. Livermore C kernels: A computer test of numerical performance range. Technical Report UCRL-53745, Lawrence Livermore National Laboratory, Livermore, CA, December 1986.
[11]
SGS-Thomson Microelectronics, "D950-CORE Specification", January 1995.
[12]
Analog Devices, Inc, Blackfin Processor Programming Reference, http://www.analog.com, Sep. 2008.
[13]
S. Hines, J. Green, G. Tyson, and D. Whalley, "Improving Program Efficiency by Packing Instructions into Registers", In proceedings of the 32nd International Symposium on Computer Architecture, 2005
[14]
Jonghee M. Youn, Minwook Ahn, Yunheung Paek, Jongwung Kim, Jeonghun Cho, Two versions of architectures for dynamic implied addressing mode, Journal of Systems Architecture, Volume 56, Issue 8, Special Issue on HW/SW Co-Design: Tools and Applications, Pages 368--383, August 2010.
[15]
Allen Cheng and Gary Tyson, An Energy Efficient Instruction Set Synthesis Framework for Low Power Embedded System Designs, IEEE Transactions on Computers, v.54 n.6, p.698--713, June 2005
[16]
Ahmad Zmily and Christos Kozyrakis, Block-Aware Instruction Set Architecture. ACM Transactions on Architecture and Code Optimization, 3(3):327--357, September 2006
[17]
CoWare INC. http://www.coware.com
[18]
S. Pees, A. Hoffmann, V. Zivojnovic, and H. Meyr., LISA -- Machine Description Language for Cycle-Accurate Models of Programmable DSP Architectures, In Proc. of the Design Automation Conference (DAC), New Orleans, June 1999.
[19]
Oliver Schliebusch, Andreas Hoffmann, Achim Nohl, Gunnar Braun and Heinrich Meyr, Architecture Implementation Using the Machine Description Language LISA, Design Automation Conference, 2002. Proceedings of 7th Asia and South Pacific and the 15th International Conference on VLSI Design. Proceedings. (ASP-DAC 2002)
[20]
Synopsys Inc. http://www.synonpsys.com
[21]
D. Patterson, J. Hennessy, Computer Organization and Design -- The Hardware/Software Interface, Morgan Kaufmann Publishers, 2005

Cited By

View all
  • (2014)Improving performance of loops on DIAM-based VLIW architecturesACM SIGPLAN Notices10.1145/2666357.259782549:5(135-144)Online publication date: 12-Jun-2014
  • (2014)Improving performance of loops on DIAM-based VLIW architecturesProceedings of the 2014 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems10.1145/2597809.2597825(135-144)Online publication date: 12-Jun-2014

Index Terms

  1. Implementing dynamic implied addressing mode for multi-output instructions

      Recommendations

      Comments

      Please enable JavaScript to view thecomments powered by Disqus.

      Information & Contributors

      Information

      Published In

      cover image ACM Conferences
      CASES '10: Proceedings of the 2010 international conference on Compilers, architectures and synthesis for embedded systems
      October 2010
      276 pages
      ISBN:9781605589039
      DOI:10.1145/1878921
      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Sponsors

      In-Cooperation

      • CEDA
      • IEEE CAS
      • IEEE CS

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      Published: 24 October 2010

      Permissions

      Request permissions for this article.

      Check for updates

      Author Tags

      1. compiler
      2. embedded processor
      3. optimization

      Qualifiers

      • Research-article

      Conference

      ESWeek '10
      ESWeek '10: Sixth Embedded Systems Week
      October 24 - 29, 2010
      Arizona, Scottsdale, USA

      Acceptance Rates

      Overall Acceptance Rate 52 of 230 submissions, 23%

      Contributors

      Other Metrics

      Bibliometrics & Citations

      Bibliometrics

      Article Metrics

      • Downloads (Last 12 months)2
      • Downloads (Last 6 weeks)0
      Reflects downloads up to 26 Nov 2024

      Other Metrics

      Citations

      Cited By

      View all
      • (2014)Improving performance of loops on DIAM-based VLIW architecturesACM SIGPLAN Notices10.1145/2666357.259782549:5(135-144)Online publication date: 12-Jun-2014
      • (2014)Improving performance of loops on DIAM-based VLIW architecturesProceedings of the 2014 SIGPLAN/SIGBED conference on Languages, compilers and tools for embedded systems10.1145/2597809.2597825(135-144)Online publication date: 12-Jun-2014

      View Options

      Login options

      View options

      PDF

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader

      Media

      Figures

      Other

      Tables

      Share

      Share

      Share this Publication link

      Share on social media