skip to main content
article

A highly configurable cache architecture for embedded systems

Published: 01 May 2003 Publication History

Abstract

Energy consumption is a major concern in many embedded computing systems. Several studies have shown that cache memories account for about 50% of the total energy consumed in these systems. The performance of a given cache architecture is largely determined by the behavior of the application using that cache. Desktop systems have to accommodate a very wide range of applications and therefore the manufacturer usually sets the cache architecture as a compromise given current applications, technology and cost. Unlike desktop systems, embedded systems are designed to run a small range of well-defined applications. In this context, a cache architecture that is tuned for that narrow range of applications can have both increased performance as well as lower energy consumption. We introduce a novel cache architecture intended for embedded microprocessor platforms. The cache can be configured by software to be direct-mapped, two-way, or four-way set associative, using a technique we call way concatenation, having very little size or performance overhead. We show that the proposed cache architecture reduces energy caused by dynamic power compared to a way-shutdown cache. Furthermore, we extend the cache architecture to also support a way shutdown method designed to reduce the energy from static power that is increasing in importance in newer CMOS technologies. Our study of 23 programs drawn from Powerstone, MediaBench and Spec2000 show that tuning the cache's configuration saves energy for every program compared to conventional four-way set-associative as well as direct mapped caches, with average savings of 40% compared to a four-way conventional cache.

References

[1]
A. Agarwal, H. Li, and K. Roy, "DRG-Cache: A Data Retention Gated-Ground Cache for Low Power," Design Automation Conf., June 2002.
[2]
D. H. Albonesi, "Selective Cache Ways: On-Demand Cache Resource Allocation," Journal of Instruction Level Parallelism, May 2000.
[3]
R. Balasubramonian, D. Albonesi, A. Buyuktosunoglu, and S. Dwarkadas, "Memory Hierarchy Reconfiguration for Energy and Performance in General-Purpose Processor Architectures," Int. Symp. on Microarchitecture, 2000.
[4]
B. Batson and T. N. Vijaykumar, "Reactive-Associative Caches," Int. Conf. on Parallel Architectures and Compilation Techniques, Sep. 2001.
[5]
D. Burger and T. M. Austin, "The SimpleScalar Tool Set, Version 2.0," Univ. of Wisconsin-Madison Computer Sciences Dept. Technical Report #1342, June 1997.
[6]
Cadence, http://www.cadence.com
[7]
B. Calder, D. Grunwall, and J. Emer, "Predictive Sequential Associative Cache," Int. Symp. on High Performance Computer Architecture, Feb. 1996.
[8]
S. Dropsho, A. Buyuktosunoglu, R. Balasubramonian, D. H. Albonesi, S. Dwarkadas, G. Semeraro, G. Magklis, and M. L. Scott, "Integrating Adaptive On-Chip Storage Structures for Reduced Dynamic Power," Int. Conf. on Parallel Architectures and Compilation Techniques, 2002.
[9]
A. Hasegawa, I. Kawasaki, K. Yamada, S. Yoshioka, S. Kawasaki, and P. Biswas, "SH3: High code density, low power," IEEE Micro, Dec. 1995.
[10]
J. L. Hennessy and D. A. Patterson, "Computer architecture Quantitative Approach," 2nd Edition, Morgan-Kaufmann Publishing Co., 1996.
[11]
M. Huang, J. Renau, S. M. Yoo, and J. Torrellas, "L1 Data Cache Decomposition for Energy Efficiency," Int. Symp. on Low Power Electronics and Design, 2001.
[12]
http://www.specbench.org/osg/cpu2000/
[13]
K. Inoue, T. Ishihara, and K. Murakami, "Way-Predictive Set-Associative Cache for High Performance and Low Energy Consumption," Int. Symp. On Low Power Electronics and Design, 1999.
[14]
H. Kim, A. K. Somani, and A. Tyagi, "A Reconfigurable Multi-function Computing Cache Architecture," IEEE Transactions on VLSI, Vol. 9, No. 4, pp. 509--523, Aug. 2001.
[15]
J. Kin, M. Gupta and W. Mangione-Smith, "The Filter Cache: An Energy Efficient Memory Structure," Int. Symp. on Microarchitecture, pp. 184--193, Dec. 1997.
[16]
C. Lee, M. Potkonjak and W. Mangione-Smith, "MediaBench: A Tool for Evaluating and Synthesizing Multimedia and Communications Systems," Int. Symp. on Microarchitecture, 1997.
[17]
K. Mai, T. Paaske, N. Jayasena, R. Ho, W. J. Dally, and M. Horowitz, "Smart Memories: A Modular Reconfigurable Architecture," ACM SIGARCH Computer Architecture News, Volume 28, Issue 2, 2000.
[18]
A. Malik, B. Moyer and D. Cermak, "A Low Power Unified Cache Architecture Providing Power and Performance Flexibility," Int. Symp. on Low Power Electronics and Design, June 2000.
[19]
The MOSIS Service, http://www.mosis.org
[20]
M. Powell, S. H. Yang, B. Falsafi, K. Roy, and T. N. Vijaykumar, "Gated-Vdd: A Circuit Technique to Reduce Leakage in Deep-Submicron Cache Memories," Int. Symp. on Low Power Electronics and Design, 2000.
[21]
M. Powell, A. Agarwal, T. N. Vijaykumar, B. Falsafi, and K. Roy, "Reducing Set-Associative Cache Energy via Way-Prediction and Selective Direct-Mapping," Int. Symp. on Microarchitecture, 2001.
[22]
P. Ranganathan, S. Adve, and N. P. Jouppi, "Reconfigurable Caches and their Application to Media Processing," Int. Symp. on Computer Architecture, 2000.
[23]
Glen Reinman and N. P. Jouppi. CACTI2.0: An Integrated Cache Timing and Power Model, 1999. COMPAQ Western Research Lab.
[24]
Semiconductor Industry Association. Int. Technology Roadmap for Semiconductors: 1999 edition. Austin, TX: Int. SEMATECH, 1999.
[25]
S. Segars, "Low power design techniques for microprocessors," Int. Solid-State Circuits Conf. Tutorial, 2001.
[26]
J. Yang and R. Gupta, "Energy Efficient Frequent Value Data Cache Design," Int. Symp. on Microarchitecture, Nov. 2002.
[27]
C. Zhang, F. Vahid, and W. Najjar, "Energy Benefits of a Configurable Line Size Cache for Embedded Systems," Int. Symp. on VLSI Design, 2003.
[28]
C. Zhang and F. Vahid, "Cache Configuration Exploration on Prototyping Platforms," IEEE Int. Workshop on Rapid System Prototyping, June 2003.
[29]
M. Zhang and K. Asanović, "Highly-Associative Caches for Low-Power Prossrors," Kool Chips Workshop, in conjunction with Int. Symp. On Microarchitecture, Dec. 2000.

Cited By

View all
  1. A highly configurable cache architecture for embedded systems

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM SIGARCH Computer Architecture News
    ACM SIGARCH Computer Architecture News  Volume 31, Issue 2
    ISCA 2003
    May 2003
    422 pages
    ISSN:0163-5964
    DOI:10.1145/871656
    Issue’s Table of Contents
    • cover image ACM Conferences
      ISCA '03: Proceedings of the 30th annual international symposium on Computer architecture
      June 2003
      432 pages
      ISBN:0769519458
      DOI:10.1145/859618
      • Conference Chair:
      • Allan Gottlieb,
      • Program Chair:
      • Kai Li

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 01 May 2003
    Published in SIGARCH Volume 31, Issue 2

    Check for updates

    Author Tags

    1. architecture tuning
    2. cache
    3. configurable
    4. embedded systems
    5. low energy
    6. low power
    7. microprocessor

    Qualifiers

    • Article

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)29
    • Downloads (Last 6 weeks)3
    Reflects downloads up to 26 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all

    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