skip to main content
research-article

Improving SDRAM access energy efficiency for low-power embedded systems

Published:08 May 2008Publication History
Skip Abstract Section

Abstract

DRAM (dynamic random-access memory) energy consumption in low-power embedded systems can be very high, exceeding that of the data cache or even that of the processor. This paper presents and evaluates a scheme for reducing the energy consumption of SDRAM (synchronous DRAM) memory access by a combination of techniques that take advantage of SDRAM energy efficiencies in bank and row access. This is achieved by using small, cachelike structures in the memory controller to prefetch an additional cache block(s) on SDRAM reads and to combine block writes to the same SDRAM row. The results quantify the SDRAM energy consumption of MiBench applications and demonstrate significant savings in SDRAM energy consumption, 23%, on average, and reduction in the energy-delay product, 44%, on average. The approach also improves performance: the CPI is reduced by 26%, on average.

References

  1. Abali, B. and Franke, H. 2000. Operating system support for fast hardware compression of main memory contents. In Memory Wall Workshop, the 27th Annual International Symposium on Computer Architecture.Google ScholarGoogle Scholar
  2. Barr, K. and Asanovic, K. 2003. Energy aware lossless data compression. In Proceedings of the First International Conference on Mobile Systems, Applications, and Services, San Francisco, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Burger, D. and Austin, T. 1997. The simplescalar tool set, version 2.0. Technical Rep. TR-97-1342, Computer Science Department, University of Wisconsin-Madison.Google ScholarGoogle Scholar
  4. Dahlgren, F., Dubois, M., and Stenstrom, P. 1993. Fixed and adaptive sequential prefetching in shared-memory multiprocessors. In Proceedings of the International Conference on Parallel Processing. 56--63. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Ekman, M. and Stenström, P. 2005. A robust main-memory compression scheme. In Proceedings of the 32nd Annual International Symposium on Computer Architecture, Madison, Wisconsin. 74--85. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Farkas, K., Jouppi, N. P., and Chow, P. 1994. How useful are non-blocking loads, stream buffers, and speculative execution in muliple issue processors. Technical Rep. 94/8, Digital Western Research Laboratory (Dec.)Google ScholarGoogle Scholar
  7. Goossens, K., Gangwal, O. P., Röver, J., and Niranjan, A. P. 2004. Interconnect and memory organization in SoCs for advanced set-top boxes and TV — Evolution, analysis and trends. http://www.homepages.inf.ed.ac.uk/kgoossen/2004-interconnectcentric-chap15.pdf.Google ScholarGoogle Scholar
  8. Guthaus, M. R., Ringenberg, J. S., Ernst, D., Austin, T. M., Mudge, T., and Brown, R. B. 2001. Mibench: A free, commercially representative embedded benchmark suite. In Proceedings of the IEEE 4th Annual Workshop on Workload Characterization. 83--94. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Hennessy, J. and Patterson, D. 2006. Computer Architecture A Quantitative Approach. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Johnson, T. L., Merten, M. C., and Hwu, W. W. 1997. Run-time adaptive cache hierarchy management via reference analysis. In Proceedings of the 24th International Symposium on Computer Architecture, Denver, CO. 315--326. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Jouppi, N. P. 1990. Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffers. In Proceedings of the 17th Annual International Symposium on Computer Architecture, Seattle, WA. 364--373. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Jouppi, N. P. 1993. Cache write policies and performance. In Proceedings of the 20th International Symposium on Computer Architecture, San Diego, CA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Kane, G. 1988. MIPS RISC Architecture. Prentice-Hall, Englewood Cleffs, NJ. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Kim, H. S., Vijaykrishnan, N., Kandemir, M., Brockmeyer, E., Catthoor, F., and Irwin, M. J. 2003. Estimating influence of data layout optimizations on SDRAM energy consumption. In Proceedings of the 2003 International Symposium on Low Power Electronics and Design, Seoul, Korea. 40--43. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Kumar, S. and Wilkerson, C. 1998. Exploiting spatial locality in data cache using spatial footprint. In Proceedings of the International Symposium on Computer Architecture. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Lebeck, A. R., Fan, X., Zeng, H., and Ellis, C. 2000. Power aware page allocation. In Proceedings of the 9th International Conference on Architectural Support for Programming Languages and Operating Systems, Cambridge, MA. 105--116. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Micron. The Micron System-Power Calculator http://www.micron.com/products/dram/syscalc.html.Google ScholarGoogle Scholar
  18. MicronDataSheet. The Micron: Synchronous DRAM 64Mb x32 Part number: MT48LC2M32B2 http://download.micron.com/pdf/datasheets/dram/sdram/64MSDRAMx32.pdf.Google ScholarGoogle Scholar
  19. Montanaro, J., Witek, R. T., Anne, K., Black, A. J., Cooper, E. M., Dobberpuhl, D. W., Donahue, P. M., Eno, J., Hoeppner, G. W., Kruckemyer, D., Lee, T. H., Lin, P. C. M., Madden, L., Murray, D., Pearce, M. H., Santhanam, S., Snyder, K. J., Stephany, R., and Thierauf, S. C. 1996. A 160--MHz, 32--b, 0.5--W CMOS RISC microprocessor. IEEE J. Solid-State Circuits 31, 11, 1703--1714.Google ScholarGoogle ScholarCross RefCross Ref
  20. Shivakumar, P. and Jouppi, N. 1990. Cacti 3.0: An integrated cache timing, power, and area model. Tech. rep., Digital Equipment Corporation, COMPAQ Western Research Lab.Google ScholarGoogle Scholar
  21. Rixner, S., Dally, W. J., Kapasi, U. J., Mattson, P., and Owens, J. D. 2000. Memory access scheduling. In Proceedings of the 27th Annual International Symposium on Computer Architecture, Vancouver, British Columbia, Canada. 128--138. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Smith, A. J. 1979. Characterizing the storage process and its effect on the update of main memory by write through. J. ACM 26, 1, 6--27. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Smith, A. J. 1982. Cache memories. ACM Comput. Surv. 14, 3, 473--530. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Smith, A. J. 1991. Second bibliography on cache memories. SIGARCH Comput. Architecture News 19, 4, 154--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Solihin, Y., Torrellas, J., and Lee, J. 2002. Using a user-level memory thread for correlation prefetching. In Proceedings of 29th Annual International Symposium on Computer Architecture (May), Anchorage, Alaska. 171--182. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Trajkovic, J. and Veidenbaum, A. 2004. Intelligent memory controller for reducing power consumption in embedded systems. Technical Rep. ICS-TR-04-02, School of Information and Computer Science, University of California at Irvine.Google ScholarGoogle Scholar
  27. Veidenbaum, A., Tang, W., Gupta, R., Nicolau, A., and Ji, X. 1999. Adapting cache line size to application behavior. In International Conference on Supercomputing, Rhodes, Greece. 145--154. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Wattch. Wattch Version 1.02 http://www.eecs.harvard.edu/~dbrooks/sim-wattch-1.02.tar.gz.Google ScholarGoogle Scholar
  29. Wilkes, M. V. 1965. Slave memories and dynamic storage allocation. IEEE Trans. Electronic Comput. EC-14, 4, 270--271.Google ScholarGoogle ScholarCross RefCross Ref
  30. Zhang, C., Vahid, F., and Najjar, W. 2005. A highly configurable cache for low energy embedded systems. Trans. Embedded Comput. Sys. 4, 2, 363--387. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Improving SDRAM access energy efficiency for low-power embedded systems

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in

        Full Access

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader
        About Cookies On This Site

        We use cookies to ensure that we give you the best experience on our website.

        Learn more

        Got it!