Advertisement

MESI-Based Cache Coherence for Hard Real-Time Multicore Systems

  • Sascha UhrigEmail author
  • Lillian Tadros
  • Arthur Pyka
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9017)

Abstract

Demands on computing performance are steadily increasing, also in the domain of embedded hard real-time applications. Accordingly, multicore processors have already entered the hard real-time domain, mainly for execution of multiple applications. Further performance improvements can be gained by executing multithreaded applications on multicores. Since such applications share data between multiple cores, coherent accesses to that data must be guaranteed. To be applied in hard real-time domains, the complete system, including the cache hierarchy, needs to provide a predictable timing behaviour that allows a static estimate of the worst case execution time.

This paper presents an analysis of the well-known MESI (Modified, Exclusive, Shared, Invalid) technique and its drawbacks concerning time predictability. Moreover, we show ways how to implement a MESI technique suitable for hard real-time systems.

Keywords

Hard real-time systems Timing predictability Cache coherence Multicore 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    AUTOSAR: AUTomotive open system architecture. http://www.autosar.org/
  2. 2.
    Akesson, B., Goossens, K., Ringhofer, M.: Predator: A predictable sdram memory controller. In: Proceedings of the 5th IEEE/ACM International Conference on Hardware/Software Codesign and System Synthesis, CODES+ISSS 2007, pp. 251–256. ACM, New York (2007). http://doi.acm.org/10.1145/1289816.1289877
  3. 3.
    Bost, E.: Hardware support for robust partitioning in freescale qoriq multicore socs (p4080 and derivatives) p. 35, May 2013. http://cache.freescale.com/files/32bit/doc/white_paper/QORIQHSRPWP.pdf
  4. 4.
    Harnisch, J.: Predictable hardware: The aurix microcontroller family. In: Workshop on Worst-Case Execution Time Analysis, WCET 2013, Paris, France, July 2013. http://wcet2013.imag.fr/program.php
  5. 5.
    Hennessy, J., Patterson, D.: Computer Architecture - A Quantitative Approach. Morgan Kaufmann (2003)Google Scholar
  6. 6.
    Lewis, J., Rierson, L.: Certification concerns with integrated modular avionics (ima) projects. In: The 22nd Digital Avionics Systems Conference, DASC 2003, vol. 1, pp. 1.A.3–1.1-9, October 2003Google Scholar
  7. 7.
    Liu, Y., Zhang, W.: Exploiting stack distance to estimate worst-case data cache performance. In: Shin, S.Y., Ossowski, S. (eds.) Proceedings of the 2009 ACM Symposium on Applied Computing (SAC), Honolulu, Hawaii, USA, March 9–12, 2009, pp. 1979–1983. ACM (2009)Google Scholar
  8. 8.
    Nowotsch, J., Paulitsch, M.: Leveraging multi-core computing architectures in avionics. In: 2012 Ninth European Dependable Computing Conference (EDCC), pp. 132–143, May 2012Google Scholar
  9. 9.
    Paolieri, M., Quiñones, E., Cazorla, F., Wolf, J., Ungerer, T., Uhrig, S., Petrov, Z.: A software-pipelined approach to multicore execution of timing predictable multi-threaded hard real-time tasks. In: 2011 14th IEEE International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC), pp. 233–240 (2011)Google Scholar
  10. 10.
    Paolieri, M., Quiñones, E., Cazorla, F.J., Bernat, G., Valero, M.: Hardware support for wcet analysis of hard real-time multicore systems. In: Proceedings of the 36th Annual International Symposium on Computer Architecture, ISCA 2009, pp. 57–68. ACM, New York (2009). http://doi.acm.org/10.1145/1555754.1555764
  11. 11.
    Paolieri, M., Quiñones, E., Cazorla, F.J., Valero, M.: An Analyzable Memory Controller for Hard Real-Time CMPs. IEEE Embedded Systems Letters 1(4), 86–90 (2009)CrossRefGoogle Scholar
  12. 12.
    parMERASA - Multi-Core Execution of Parallelised Hard Real-Time Applications Supporting Analysability, EU FP7 Project. http://www.parmerasa.eu/
  13. 13.
    Prisaznuk, P.: Integrated modular avionics. In: Proceedings of the IEEE 1992 National Aerospace and Electronics Conference, NAECON 1992, vol. 1, pp. 39–45, May 1992Google Scholar
  14. 14.
    Prisaznuk, P.: Arinc 653 role in integrated modular avionics (ima). In: IEEE/AIAA 27th Digital Avionics Systems Conference, DASC 2008, pp. 1.E.5-1–1.E.5-10, October 2008Google Scholar
  15. 15.
    Pyka, A., Rohde, M., Uhrig, S.: Performance evaluation of the time analysable on-demand coherent cache. In: TrustCom/ISPA/IUCC, pp. 1887–1892 (2013)Google Scholar
  16. 16.
    Pyka, A., Rohde, M., Uhrig, S.: A real-time capable coherent data cache for multicores. Concurrency and Computation: Practice and Experience 26(6), 1342–1354 (2014). http://dx.doi.org/10.1002/cpe.3172 CrossRefGoogle Scholar
  17. 17.
    Ramaprasad, H., Mueller, F.: Bounding worst-case data cache behavior by analytically deriving cache reference patterns. In: Proceedings of the 11th IEEE Real Time on Embedded Technology and Applications Symposium, RTAS 2005, pp. 148–157. IEEE Computer Society, Washington, DC (2005). http://dx.doi.org/10.1109/RTAS.2005.12
  18. 18.
    Reineke, J., Liu, I., Patel, H.D., Kim, S., Lee, E.A.: PRET DRAM controller: bank privatization for predictability and temporal isolation. In: CODES+ISSS 2011: Proceedings of the Seventh IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis, pp. 99–108. ACM, October 2011Google Scholar
  19. 19.
    Schliecker, S., Ivers, M., Ernst, R.: Integrated analysis of communicating tasks in mpsocs. In: Proceedings of the 4th International Conference on Hardware/Software Codesign and System Synthesis, CODES+ISSS 2006, pp. 288–293. ACM, New York (2006). http://doi.acm.org/10.1145/1176254.1176325
  20. 20.
    Sen, R., Srikant, Y.N.: Wcet estimation for executables in the presence of data caches. In: Kirsch, C.M., Wilhelm, R. (eds.) Proceedings of the 7th ACM & IEEE International Conference on Embedded Software, EMSOFT 2007, Salzburg, Austria, September 30 - October 3, 2007, pp. 203–212. ACM (2007)Google Scholar
  21. 21.
    Wilhelm, R., Grund, D., Reineke, J., Schlickling, M., Pister, M., Ferdinand, C.: Memory hierarchies, pipelines, and buses for future architectures in time-critical embedded systems. Trans. Comp. Aided Des. Integ. Cir. Sys. 28(7), 966–978 (2009)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  1. 1.Technical University of DortmundDortmundGermany

Personalised recommendations