Skip to main content

A Dynamic Instruction Scratchpad Memory for Embedded Processors Managed by Hardware

  • Conference paper
Architecture of Computing Systems - ARCS 2011 (ARCS 2011)

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

Included in the following conference series:

Abstract

This paper proposes a hardware managed instruction scratchpad on the granularity of functions which is designed for real-time systems. It guarantees that every instruction will be fetched from the local, fast and timing predictable scratchpad memory. Thus, a predictable behavior is reached that eases a precise timing analysis of the system. We estimate the hardware resources required to implement the dynamic instruction scratchpad for an FPGA. An evaluation quantifies the impact of our scratchpad on average case performance. It shows that the dynamic instruction scratchpad compared to standard instruction memories has a reasonable performance - while providing predictable behavior and easing timing analysis.

This work has been supported by the EC Grant Agreement n° 216415 (MERASA).

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 39.99
Price excludes VAT (USA)
  • Available as 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P.: The Worst-Case Execution-Time Problem - Overview of Methods and Survey of Tools. ACM Trans. Embed. Comput. Syst. 7(3), 1–53 (2008)

    Article  Google Scholar 

  2. Reineke, J., Grund, D., Berg, C., Wilhelm, R.: Timing Predictability of Cache Replacement Policies. Real-Time Systems 37(2), 99–122 (2007)

    Article  MATH  Google Scholar 

  3. Banakar, R., Steinke, S., Lee, B.S., Balakrishnan, M., Marwedel, P.: Scratchpad memory: design alternative for cache on-chip memory in embedded systems. In: Proc. of the 10th Int. Symp. on Hardware/software Codesign, pp. 73–78. ACM, New York (2002)

    Google Scholar 

  4. Wehmeyer, L., Marwedel, P.: Influence of Onchip Scratchpad Memories on WCET Prediction. In: Proc. of the 4th Int. Workshop on WCET Analysis (2004)

    Google Scholar 

  5. Falk, H., Kleinsorge, J.: Optimal static WCET-aware scratchpad allocation of program code. In: Proc. of the 46th Design Automation Conf., pp. 732–737 (2009)

    Google Scholar 

  6. Udayakumaran, S., Dominguez, A., Barua, R.: Dynamic allocation for scratch-pad memory using compile-time decisions. ACM Trans. Embed. Comput. Syst. 5(2), 472–511 (2006)

    Article  Google Scholar 

  7. Ravindran, R.A., Nagarkar, P.D., Dasika, G.S., Marsman, E.D., Senger, R.M., Mahlke, S.A., Brown, R.B.: Compiler managed dynamic instruction placement in a low-power code cache. In: Proc. of the Int. Symp. on Code Generation and Optimization, pp. 179–190. IEEE, Los Alamitos (2005)

    Chapter  Google Scholar 

  8. Egger, B., Kim, C., Jang, C., Nam, Y., Lee, J., Min, S.L.: A Dynamic Code Placement Technique for Scratchpad Memory Using Postpass Optimization. In: Conf. Compilers, Architecture, and Synthesis for Embedded Systems (2006)

    Google Scholar 

  9. Janapsatya, A., Ignjatović, A., Parameswaran, S.: A novel instruction scratchpad memory optimization method based on concomitance metric. In: Asia and South Pacific Conf. on Design Automation, pp. 612–617. IEEE, Los Alamitos (2006)

    Google Scholar 

  10. Puaut, I., Pais, C.: Scratchpad Memories vs Locked Caches in Hard Real-Time Systems: a Quantitative Comparison. In: Proc. of the Conf. on Design, Automation and Test in Europe, pp. 1484–1489 (2007)

    Google Scholar 

  11. Plazar, S., Lokuciejewski, P., Marwedel, P.: WCET-driven Cache-aware Memory Content Selection. In: Proc. of the 13th IEEE Int. Symp. on Object/Comp-onent/Service-Oriented Real-Time Distributed Computing, pp. 107–114 (2010)

    Google Scholar 

  12. Schoeberl, M.: A Time Predictable Instruction Cache for a Java Processor. In: Workshop on Java Technologies for Real-Time and Embedded Systems, pp. 371–382 (2004)

    Google Scholar 

  13. Kirner, R., Schoeberl, M.: Modeling the Function Cache for Worst-Case Execution Time Analysis. In: Proc. of the 44th Design Automation Conf., pp. 471–476 (2007)

    Google Scholar 

  14. Preußer, T., Zabel, M., Spallek, R.: Bump-pointer method caching for embedded Java processors. In: Proc. of the 5th Int. Workshop on Java Technologies for Real-time and Embedded Systems, p. 210. ACM, New York (2007)

    Google Scholar 

  15. Metzlaff, S., Uhrig, S., Mische, J., Ungerer, T.: Predictable dynamic instruction scratchpad for simultaneous multithreaded processors. In: Proc. of the 9th Workshop on Memory Performance, pp. 38–45. ACM, New York (2008)

    Google Scholar 

  16. Mische, J., Guliashvili, I., Uhrig, S., Ungerer, T.: How to Enhance a Superscalar Processor to Provide Hard Real-Time Capable in-Order SMT. In: Müller-Schloer, C., Karl, W., Yehia, S. (eds.) ARCS 2010. LNCS, vol. 5974, pp. 2–14. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  17. Ungerer, T., Cazorla, F., Sainrat, P., Bernat, G., Petrov, Z., Rochange, C., Quinones, E., Gerdes, M., Paolieri, M., Wolf, J., Casse, H., Uhrig, S., Guliashvili, I., Houston, M., Kluge, F., Metzlaff, S., Mische, J.: Merasa: Multicore execution of hard real-time applications supporting analyzability. IEEE Micro. 30, 66–75 (2010)

    Article  Google Scholar 

  18. Mälardalen Real-Time Research Center (MRTC): WCET Benchmark Suite, http://www.mrtc.mdh.se/projects/wcet/benchmarks.html

  19. Guthaus, M., Ringenberg, J., Ernst, D., Austin, T., Mudge, T., Brown, R.: MiBench: A free, commercially representative embedded benchmark suite. In: 2001 IEEE Int. Workshop on Workload Characterization, pp. 3–14 (2001)

    Google Scholar 

  20. Embedded Microprocessor Benchmark Consortium: AutoBench1.1 software benchmark data book, http://www.eembc.org/techlit/datasheets/autobench_db.pdf

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Metzlaff, S., Guliashvili, I., Uhrig, S., Ungerer, T. (2011). A Dynamic Instruction Scratchpad Memory for Embedded Processors Managed by Hardware. In: Berekovic, M., Fornaciari, W., Brinkschulte, U., Silvano, C. (eds) Architecture of Computing Systems - ARCS 2011. ARCS 2011. Lecture Notes in Computer Science, vol 6566. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-19137-4_11

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-19137-4_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-19136-7

  • Online ISBN: 978-3-642-19137-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics