Skip to main content

Optimizing Code Size for Embedded Real-Time Applications

  • Conference paper
Book cover Embedded and Ubiquitous Computing (EUC 2006)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 4096))

Included in the following conference series:

  • 712 Accesses

Abstract

This paper presents an efficient technique for code compression. In our work, a sequence of instructions that occurs repeatedly in an application will be compressed to reduce its code size. During compression, each instruction is first divided into the operation part and the register part, and then only the operation part is compressed. For reducing the run-time overhead, we propose an instruction prefetching mechanism to speed the decompression. Moreover, we devise some optimization techniques to improve the code size reduction and the performance, and show their impacts. The experimental results show that our work can achieve a code size reduction of 33% on average and a low overhead in the process of decompression at run time for these benchmarks.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. ARM: ARM7TDMI (Rev4) Technical Reference Manual. Advanced RISC Machines Ltd. (May 15, 2003)

    Google Scholar 

  2. ARM: An Introduction to Thumb. Advanced RISC Machines Ltd. (March 1995)

    Google Scholar 

  3. Bell, T., Cleary, J., Witten, I.: Text Compression. Prentice-Hall, Englewood Cliffs (1990)

    Google Scholar 

  4. Debray, S., Evans, W.: Profile-Guided Code Compression. In: Proceedings of the 2002 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (2002)

    Google Scholar 

  5. Ernst, J., Evans, W., Fraser, C.W., Luco, S., Proebsting, T.A.: Code Compression. In: Proceedings of the 1997 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (1997)

    Google Scholar 

  6. Evans, W.S., Fraser, C.W.: Bytecode Compression via Profiled Grammar Rewriting. In: Proceedings of the 2001 International Conference on Programming Language Design and Implementation (PLDI) (2001)

    Google Scholar 

  7. Fano, R.M.: Transmission of Information. MIT Press, Cambridge (1961)

    Google Scholar 

  8. Fraser, W., Proebsting, T.A.: Custom Instruction Sets for Code Compression. Unpublished (October 1995), Available at http://www.cs.arizona.edu/people/todd/papers/pldi2.ps

  9. IBM. CodePack PowerPC Code Compression Utility User’s Manually Version 3.0 (1998)

    Google Scholar 

  10. Keith, D.C., McIntosh, N.: Enhanced Code Compression for Embedded RISC Processors. In: Proceedings of the 1999 International Conference on Programming Language Design and Implementation (PLDI) (1999)

    Google Scholar 

  11. Kissell, K.: MIPS16: High-Density MIPS for the Embedded Market. Silicon Graphics MIPS Group (1997)

    Google Scholar 

  12. Lefurgy, C., Bird, P., Chen, I.-C., Mudge, T.: Improving Code Density Using Compression Techniques. In: Proceedings of the 30th Annual International Symposium on Microarchitecture (December 1997)

    Google Scholar 

  13. Liao, S., Devadas, S., Keutzer, K.: Code Density Optimization for Embedded DSP Processors Using Data Compression Techniques. In: Proceeding of the 15th Conference on Advanced Research in VLSI (March 1995)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wang, SY., Chen, CY., Chang, RG. (2006). Optimizing Code Size for Embedded Real-Time Applications. In: Sha, E., Han, SK., Xu, CZ., Kim, MH., Yang, L.T., Xiao, B. (eds) Embedded and Ubiquitous Computing. EUC 2006. Lecture Notes in Computer Science, vol 4096. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11802167_31

Download citation

  • DOI: https://doi.org/10.1007/11802167_31

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-36679-9

  • Online ISBN: 978-3-540-36681-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics