Skip to main content

Runtime Adaptive Cache for the LEON3 Processor

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10824))

Abstract

Cache memories are a key component of computing systems because they minimize latency between the processor and the main memory. However, they require a large amount of the total energy consumption of the system. This energy demand depends on the application’s behavior. Thus, reconfiguring the cache to fit to every application’s memory requirements with the minimum resources would save a significant amount of energy. This paper presents an architecture that enables the reconfiguration of the cache associativity during runtime, in order to fit the cache to the executing application. The architecture combines the cache ways using a small amount of logic, maintaining the cache entire capacity. We implemented our architecture in a LEON3 processor model and evaluated it using a Xilinx ZC702 FPGA. Our experiments show that the proposed architecture improves upon a way-shutdown approach in terms of energy savings and execution time.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

References

  1. Mittal, S.: A survey of architectural techniques for improving cache power efficiency. Sustain. Comput. Inf. Syst. 4(1), 33–43 (2014)

    Google Scholar 

  2. Hennessy, J.L., Patterson, D.A.: Computer Architecture: A Quantitative Approach. Elsevier, Amsterdam (2011)

    MATH  Google Scholar 

  3. Silva, B.A., Cuminato, L.A., Bonato, V., Diniz, P.C.: Run-time cache configuration for the LEON-3 embedded processor. In: Proceedings of the 28th Symposium on Integrated Circuits and Systems Design, SBCCI 2015, pp. 42:1–42:6. ACM, New York (2015). https://doi.org/10.1145/2800986.2801026

  4. LEON3’s download webpage. grlib-gpl-2017.2-b4164.tar.gz, August 2017. http://www.gaisler.com/index.php/downloads/leongrlib

  5. Albonesi, D.H.: Selective cache ways: on-demand cache resource allocation. In: 1999 Proceedings of 32nd Annual International Symposium on Microarchitecture, MICRO-32, pp. 248–259. IEEE (1999)

    Google Scholar 

  6. Zhang, C., Vahid, F., Najjar, W.: A highly configurable cache architecture for embedded systems. In: 2003 Proceedings of 30th Annual International Symposium on Computer Architecture, pp. 136–146. IEEE (2003)

    Google Scholar 

  7. Gupta, S., Gao, H., Zhou, H.: Adaptive cache bypassing for inclusive last levelcaches. In: 2013 IEEE 27th International Symposium on Parallel and Distributed Processing (IPDPS), pp. 1243–1253. IEEE (2013)

    Google Scholar 

  8. Mittal, S., Cao, Y., Zhang, Z.: Master: a multicore cache energy-saving technique using dynamic cache reconfiguration. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 22(8), 1653–1665 (2014)

    Article  Google Scholar 

  9. Gordon-Ross, A., Vahid, F., Dutt, N.D.: Fast configurable-cache tuning with a unified second-level cache. IEEE Trans. Very Large Scale Integr. (VLSI) Syst. 17(1), 80–91 (2009)

    Article  Google Scholar 

  10. Wang, W., Mishra, P., Gordon-Ross, A.: Dynamic cache reconfiguration for soft real-time systems. ACM Trans. Embed. Comput. Syst. (TECS) 11(2), 28 (2012)

    Google Scholar 

  11. Navarro, O., Hübner, M.: An adaptive victim cache scheme. In: 2014 International Conference on ReConFigurable Computing and FPGAs (ReConFig), pp. 1–4. IEEE (2014)

    Google Scholar 

  12. Navarro, O., Leiding, T., Hübner, M.: Configurable cache tuning with a victim cache. In: 2015 10th International Symposium on Reconfigurable Communication-centric Systems-on-Chip (ReCoSoC), pp. 1–6. IEEE (2015)

    Google Scholar 

  13. Navarro, O., Leiding, T., Hübner, M.: A dynamic cache reconfiguration platform for soft real-time systems. In: 2016 IEEE International Conference on Electronics, Circuits and Systems (ICECS), pp. 388–391. IEEE (2016)

    Google Scholar 

  14. Navarro, O., Mori, J., Hoffmann, J., Stuckmann, F., Hübner, M.: A machine learning methodology for cache recommendation. In: Wong, S., Beck, A.C., Bertels, K., Carro, L. (eds.) ARC 2017. LNCS, vol. 10216, pp. 311–322. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-56258-2_27

    Chapter  Google Scholar 

  15. Gianelli, S., Adegbija, T.: PACT: priority-aware phase-based cache tuning for embedded systems. In: 2017 IEEE Computer Society Annual Symposium on VLSI (ISVLSI), pp. 403–408. IEEE (2017)

    Google Scholar 

  16. Kaseridis, D., Iqbal, M.F., John, L.K.: Cache friendliness-aware managementof shared last-level caches for highperformance multi-core systems. IEEE Trans. Comput. 63(4), 874–887 (2014)

    Article  MathSciNet  Google Scholar 

  17. Zhang, C., Vahid, F., Lysecky, R.: A self-tuning cache architecture for embedded systems. ACM Trans. Embed. Comput. Syst. (TECS) 3(2), 407–425 (2004)

    Article  Google Scholar 

  18. Xilinx zynq-7000 all programmable soc zc702 evaluation kit’s webpage, August 2017. https://www.xilinx.com/products/boards-and-kits/ek-z7-zc702-g.html

  19. GRMON2’s webpage, August 2017. http://www.gaisler.com/index.php/downloads/debug-tools

  20. Fusion digital power designer’s webpage, August 2017. http://www.ti.com/tool/fusion_digital_power_designer

  21. Mibench benchmark suite’s webpage, August 2017. http://vhosts.eecs.umich.edu/mibench//

  22. Baseline source files (2017). https://www.dropbox.com/sh/2a73k3j5cxzavxw/IBz513-Gk6

Download references

Acknowledgment

The authors of this paper would like to thank CONACyT (grant number 359472) for its support.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Osvaldo Navarro .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer International Publishing AG, part of Springer Nature

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Navarro, O., Huebner, M. (2018). Runtime Adaptive Cache for the LEON3 Processor. In: Voros, N., Huebner, M., Keramidas, G., Goehringer, D., Antonopoulos, C., Diniz, P. (eds) Applied Reconfigurable Computing. Architectures, Tools, and Applications. ARC 2018. Lecture Notes in Computer Science(), vol 10824. Springer, Cham. https://doi.org/10.1007/978-3-319-78890-6_28

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-78890-6_28

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-78889-0

  • Online ISBN: 978-3-319-78890-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics