Skip to main content

Advertisement

Log in

Survey of Low-Energy Techniques for Instruction Memory Organisations in Embedded Systems

  • Published:
Journal of Signal Processing Systems Aims and scope Submit manuscript

Abstract

Instruction memory organisations have been pointed out as one of the major sources of energy consumption in embedded systems. As embedded systems are characterised by restrictive resources and a low-energy budget, any enhancement that is introduced into this component of the system will allow embedded designers not only to decrease the total energy consumption, but also to have a better distribution of the energy budget throughout the whole system. The work that is presented in this paper provides a synthesis on the low-energy techniques that are used in instruction memory organisations, outlining their comparative advantages, drawbacks, and trade-offs. Apart from giving the reader a first grasp on the fundamental characteristics and design constraints of various types of instruction memory organisations, the architectural classification that is presented in this paper has the advantage of clearly exhibiting lesser explored techniques, and hence providing hints for future research on instructions memory organisations that are used in embedded systems.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

References

  1. Van der Aa, T., Jayapala, M., Barat, F., Corporaal, H., Catthoor, F., Deconinck G. (2003). Software transformations to reduce instruction memory power consumption using a loop buffer. In Proceedings of code generation and optimization (pp. 1–3).

  2. Acevedo, O. (2002). A Survey of software optimization techniques for low-power consumption. In Proceedings of computing research conference. University of Puerto Rico.

  3. Bajwa, R.S., Hiraki, M., Kojima, H., Gorny, D.J., Nitta, K., Shridhar, A., et al. (1997). Instruction buffering to reduce power in processors for signal processing. Journal of IEEE Transactions on VLSI Systems, 5(4), 417–424.

    Article  Google Scholar 

  4. Bellas, N., Hajj, I., Polychronopoulos, C., Stamoulis, G. (1999). Energy and performance improvements in microprocessor design using a loop cache. In Proceedings of international conference on computer design (pp. 378–383).

  5. Benini, L., Macii, A., Poncino, M. (2003). Energy-aware design of embedded memories: a survey of technologies, architectures, and optimization techniques. Journal of ACM Transactions of Embedded Computing System, 2(1), 5–32.

    Article  Google Scholar 

  6. Black-Schaffer, D., Balfour, J., Dally, W., Parikh, V., Park. J. (2008). Hierarchical instruction register organization. In Proceedings of the computer architecture letters (pp. 41–44).

  7. Catthoor, F., Raghavan, P., Lambrechts, A., Jayapala, M., Kritikakou, A., Absar, J. (2010). Ultra-low energy domain-specific instruction-set processors. Berlin: Springer.

    Book  Google Scholar 

  8. Chalasani, S., & Conrad, J.M. (2008). A survey of energy harvesting sources for embedded systems. In Proceedings of IEEE southeast conference (pp. 442–447).

  9. Chedid, W., & Yu, C. (2002). Survey on power management techniques for energy efficient computer systems. CSU-ECE-TR-02-01. Cleveland: Cleveland State University.

    Google Scholar 

  10. De Angel, E., & Swartzlander, E.E. (1997). Survey of low power techniques for ROMs. In Proceedings of international symposium on low power electronics and design (pp. 7–11).

  11. Ge, Z., Lim, H.B., Wong, W.F. (2004). Memory hierarchy hardware-software co-design in embedded systems. Journal of Computer Science, 1, 1–9.

    Google Scholar 

  12. Gomez, J.I., Marchal, P., Verdoorlaege, S., Pinuel, L., Catthoor, F. (2004). Optimizing the memory bandwidth with loop morphing. In Proceedings of the 15th IEEE international conference on application-specific systems, architectures, and processors (pp. 213–223).

  13. Hennessy, J.L., & Patterson, D.A. (2007). Computer architecture—A quantitative approach. In Denise E. M. Penrose. Morgan Kaufmann.

  14. Inoue, K., Moshnyaga, V.G., Murakarni, K. (2002). A history-based I-cache for low-energy multimedia applications. In Proceedings of international symposium on low power electronics and design (pp. 148–153).

  15. Intel Website (2012). http://www.intel.eu/content/www/eu/en/homepage.html. Accessed 18 Sept 2012.

  16. Ishihara, T., & Yasuura, H. (2000). A power reduction technique with object code merging for application specific embedded processors. In Proceedings of the conference on design, automation and test in Europe (pp. 617–623).

  17. Jayapala, M., Barat, F., Op De Beeck, P., Lauwereins, R., Catthoor, F., Deconinck G. (2001). Low energy clustered instruction fetch and split loop cache architecture for long instruction word processors. In Proceedings of the workshop on compilers and operating systems for low power (pp. 1–8).

  18. Jouppi, N.P. (1990). Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffers. In Proceedings of international symposium on computer architecture (pp. 364–373).

  19. Kin, J., Gupta M., Mangione-Smith, W.H. (1997). The filter cache: an energy efficient memory structure. In Proceedings of international symposium on microarchitecture (pp. 184–193).

  20. Liveris, N., Zervas, N., Soudris, D., Goutis, C. (2002). A code transformation-based methodology for improving I-cache performance of DSP applications. In Proceedings of the conference on design, automation and test in Europe (pp. 977–983).

  21. Marculescu, D. (2000). Profile-driven code execution for low power dissipation. In Proceedings of the international symposium on low power electronics and design (pp. 253–255).

  22. Marin, I., Arceredillo, E., Zuloaga, A., Arias, J. (2005). Wireless sensor networks: a survey on ultra-low power-aware design. Journal of Transactions on Engineering, Computing and Technology, 8, 44–49.

    Google Scholar 

  23. Panda, P.R., Catthoor, F., Dutt, N.D., Danckaert, K., Brockmeyer, E., Kulkarni, C., et al. (2001). Data and memory optimization techniques for embedded systems. Journal of ACM Transactions on Design, Automotation of Electronics Systems, 6(2), 149–206.

    Article  Google Scholar 

  24. Pedram, M., & Vaishnav, H. (1997). Power optimization in VLSI layout: a survey. Journal of VLSI Signal Processing Systems, 3(15), 221–232.

    Google Scholar 

  25. Pettis, K., & Hansen, R.C. (1990). Profile guided code positioning. Journal of SIGPLAN Notices, 25(6), 16–27.

    Article  Google Scholar 

  26. Raghavan, P., Lambrechts, A., Jayapala, M., Catthoor, F., Verkest, D. (2006). Distributed loop controller architecture for multi-threading in uni-threaded VLIW processors. In Proceedings of the design, automation, and test in Europe (pp. 1–6).

  27. Salhieh, A., Weinmann, J., Kochhal, M., Schwiebert, L. (2001). Power efficient topologies for wireless sensor networks. In Proceedings of parallel processing (pp. 156–163).

  28. Scheible, J.P. (2002). A survey of storage options. Journal of Computer, 35(12), 42–46.

    Article  Google Scholar 

  29. Schwiebert, L., Gupta, S.K.S., Weinmann, J. (2001). Research challenges in wireless networks of biomedical sensors. In Proceedings of the international conference on mobile computing and networking (pp. 151–165).

  30. Tang, W., Gupta, R., Nicolau, A. (2002). Power savings in embedded processors through decode filter cache. In Proceedings of the design, automation and test in Europe (pp. 443–448).

  31. Verma, M,. & Marwedel, P. (2007). Advanced memory optimization techniques for low-power embedded processors. Berlin: Springer.

    MATH  Google Scholar 

  32. Villarreal, J., Lysecky, R., Cotterell, S., Vahid, F. (2001). A study on the loop behavior of embedded programs. UCR-CSE-01-03. Riverside: University of California.

    Google Scholar 

  33. Virage Memories in Synopsys Website (2012). http://www.synopsys.com/IP/Pages/default.aspx. Accessed 18 Sept 2012.

  34. Vivekanandarajah, K., Srikanthan, T., Bhattacharyya, S. (2004). Dynamic filter cache for low power instruction memory hierarchy. In Proceedings of the Euromicro symposium on digital system design (pp. 607–610).

  35. Warneke, B., Last, M., Liebowitz, B., Pister, K.S.J. (2001). Smart dust: communicating with a cubic-millimeter computer. Journal of Computer, 34(1), 44–51.

    Article  Google Scholar 

  36. Welch, G.F. (1995). A survey of power management techniques in mobile computing operating systems. Journal of SIGOPS Operating Systems Review, 29(4), 47–56.

    Article  Google Scholar 

  37. Wolf, W., & Kandemir, M. (2003). Memory system optimization of embedded software. Proceedings of the IEEE, 91(1), 165–182.

    Article  Google Scholar 

  38. Yassin, Y.H., Kjeldsberg, P.G., Hulzink, J., Romero, I., Huisken, J. (2009). Ultra low power application specific instruction-set processor design for a cardiac beat detector algorithm. In Proceedings of the NORCHIP (pp. 1–4).

  39. Zhong, H., Fan, K., Mahlke, S., Schlansker, M. (2005). A distributed control path architecture for VLIW processors. In Proceedings of the international conference on parallel architectures and compilation techniques (pp. 197–206).

  40. Zhong, H., Lieberman, S.A., Mahlke, S.A. (2007). Extending multicore architectures to exploit hybrid parallelism in single-thread applications. In Proceedings of the international symposium on high performance computer architecture (pp. 25–36).

  41. Zhou, Q., Xiong, H., Lin, H. (2007). Real-time performance analysis for wireless sensor networks. In Proceedings of network and parallel computing (pp. 337–342).

Download references

Acknowledgements

This work is supported by the Spanish Ministry of Science and Innovation, under grant BES-2009-023681, and by the Spanish Ministry of Economy and Competitiveness, under the project TEC2012-33892. The authors would also like to thank J.I. Gomez of Complutense University of Madrid, who reviewed the manuscript and provided valuable comments and suggestions.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Antonio Artes.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Artes, A., Ayala, J.L., Huisken, J. et al. Survey of Low-Energy Techniques for Instruction Memory Organisations in Embedded Systems. J Sign Process Syst 70, 1–19 (2013). https://doi.org/10.1007/s11265-012-0694-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11265-012-0694-2

Keywords

Navigation