Skip to main content
Top
Published in: Real-Time Systems 4/2019

05-09-2019

A real-time scratchpad-centric OS with predictable inter/intra-core communication for multi-core embedded systems

Authors: Rohan Tabish, Renato Mancuso, Saud Wasly, Rodolfo Pellizzoni, Marco Caccamo

Published in: Real-Time Systems | Issue 4/2019

Log in

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Multi-core processors have replaced single-core systems in almost every segment of the industry. Unfortunately, their increased complexity often causes a loss of temporal predictability which represents a key requirement for hard real-time systems. Major sources of unpredictability are shared low level resources, such as the memory hierarchy and the I/O subsystem. In this paper, we approach the problem of shared resource arbitration at an OS-level and propose a novel scratchpad-centric OS design for multi-core platforms. In the proposed OS, the predictable usage of shared resources across multiple cores represents a central design-time goal. Hence, we show (i) how contention-free execution of real-time tasks can be achieved on scratchpad-based architectures, and (ii) how a separation of application logic and I/O operations in time domain can be enforced, and (iii) how predictable asynchronous inter/intra-core communication between tasks can be performed. To validate the proposed design, we implemented the proposed OS using commercial-off-the-shelf (MPC5777M) platform. Experimental results show that novel design delivers predictable temporal behavior to hard real-time tasks, and it provides performance gain of upto \(2.1\,\times \) compared to traditional approaches.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literature
go back to reference Bai K, Lu J, Shrivastava A, Holton B (2013) CMSM: an efficient and effective code management for software managed multicores. In: Hardware/software codesign and system synthesis (CODES+ ISSS), 2013 international conference on, IEEE, pp 1–9 Bai K, Lu J, Shrivastava A, Holton B (2013) CMSM: an efficient and effective code management for software managed multicores. In: Hardware/software codesign and system synthesis (CODES+ ISSS), 2013 international conference on, IEEE, pp 1–9
go back to reference Betti E, Bak S, Pellizzoni R, Caccamo M, Sha L (2013) Real-time I/O management system with COTS peripherals. IEEE Trans Comput 62(1):45–58MathSciNetCrossRef Betti E, Bak S, Pellizzoni R, Caccamo M, Sha L (2013) Real-time I/O management system with COTS peripherals. IEEE Trans Comput 62(1):45–58MathSciNetCrossRef
go back to reference Bui D, Lee EA, Liu I, Patel H, Reineke J (2011) Temporal isolation on multiprocessing architectures. In: Design automation conference (DAC), pp 274 – 279 Bui D, Lee EA, Liu I, Patel H, Reineke J (2011) Temporal isolation on multiprocessing architectures. In: Design automation conference (DAC), pp 274 – 279
go back to reference Buttazzo GC (2011) Hard real-time computing systems: predictable scheduling algorithms and applications, vol 24. Springer, New YorkCrossRef Buttazzo GC (2011) Hard real-time computing systems: predictable scheduling algorithms and applications, vol 24. Springer, New YorkCrossRef
go back to reference Chattopadhyay S, Roychoudhury A, Rosén J, Eles P, Peng Z (2014) Time-predictable embedded software on multi-core platforms: analysis and optimization. Found Trends Electron Des Autom 8(3–4):199–356CrossRef Chattopadhyay S, Roychoudhury A, Rosén J, Eles P, Peng Z (2014) Time-predictable embedded software on multi-core platforms: analysis and optimization. Found Trends Electron Des Autom 8(3–4):199–356CrossRef
go back to reference Deverge J-F, Puaut I (2007) WCET-directed dynamic scratchpad memory allocation of data. In: Real-time systems, 2007. ECRTS’07. 19th Euromicro Conference on, IEEE, pp 179–190 Deverge J-F, Puaut I (2007) WCET-directed dynamic scratchpad memory allocation of data. In: Real-time systems, 2007. ECRTS’07. 19th Euromicro Conference on, IEEE, pp 179–190
go back to reference Durrieu G, Faugere M, Girbal S, Perez DG, Pagetti C, Puffitsch W (2014) Predictable flight management system implementation on a multicore processor. In: ERTSS’14 Durrieu G, Faugere M, Girbal S, Perez DG, Pagetti C, Puffitsch W (2014) Predictable flight management system implementation on a multicore processor. In: ERTSS’14
go back to reference Falk H, Kleinsorge JC (2009) Optimal static WCET-aware scratchpad allocation of program code. In: Proceedings of the 46th annual design automation conference, ACM, pp 732–737 Falk H, Kleinsorge JC (2009) Optimal static WCET-aware scratchpad allocation of program code. In: Proceedings of the 46th annual design automation conference, ACM, pp 732–737
go back to reference Farshchi F, Valsan PK, Mancuso R, Yun H (2018) Deterministic memory abstraction and supporting multicore system architecture Farshchi F, Valsan PK, Mancuso R, Yun H (2018) Deterministic memory abstraction and supporting multicore system architecture
go back to reference Flodin J, Lampka K, Wang Y (2014) Dynamic budgeting for settling dram contention of co-running hard and soft real-time tasks. In: Industrial embedded systems (SIES), 2014 9th IEEE international symposium on, IEEE, pp 151–159 Flodin J, Lampka K, Wang Y (2014) Dynamic budgeting for settling dram contention of co-running hard and soft real-time tasks. In: Industrial embedded systems (SIES), 2014 9th IEEE international symposium on, IEEE, pp 151–159
go back to reference Girbal S, Jean X, Le Rhun J, Perez DG, Gatti M (2015) Deterministic platform software for hard real-time systems using multi-core COTS. In: Digital avionics systems conference (DASC), 2015 IEEE/AIAA 34th, IEEE, pp 8D4–1 Girbal S, Jean X, Le Rhun J, Perez DG, Gatti M (2015) Deterministic platform software for hard real-time systems using multi-core COTS. In: Digital avionics systems conference (DASC), 2015 IEEE/AIAA 34th, IEEE, pp 8D4–1
go back to reference Jean X, Faura D, Gatti M, Pautet L, Robert T (2012) Ensuring robust partitioning in multicore platforms for ima systems. In: Digital avionics systems conference (DASC), 2012 IEEE/AIAA 31st, IEEE, pp 7A4–1 Jean X, Faura D, Gatti M, Pautet L, Robert T (2012) Ensuring robust partitioning in multicore platforms for ima systems. In: Digital avionics systems conference (DASC), 2012 IEEE/AIAA 31st, IEEE, pp 7A4–1
go back to reference Kai L, Adam L (2016) Resolving contention for networks-on-chips: Combining time-triggered application scheduling with dynamic budgeting of memory bus use. In: International GI/ITG conference on measurement, modelling, and evaluation of computing systems and dependability and fault tolerance, Springer, pp 137–152 Kai L, Adam L (2016) Resolving contention for networks-on-chips: Combining time-triggered application scheduling with dynamic budgeting of memory bus use. In: International GI/ITG conference on measurement, modelling, and evaluation of computing systems and dependability and fault tolerance, Springer, pp 137–152
go back to reference Lampka K, Giannopoulou G, Pellizzoni R, Zheng W, Stoimenov N (2014) A formal approach to the wcrt analysis of multicore systems with memory contention under phase-structured task sets. Real Time Syst 50(5–6):736–773CrossRef Lampka K, Giannopoulou G, Pellizzoni R, Zheng W, Stoimenov N (2014) A formal approach to the wcrt analysis of multicore systems with memory contention under phase-structured task sets. Real Time Syst 50(5–6):736–773CrossRef
go back to reference Li L, Gao L, Xue J (2005) Memory coloring: a compiler approach for scratchpad memory management. In: Parallel architectures and compilation techniques, 2005. PACT 2005. 14th international conference on, IEEE, pp 329–338 Li L, Gao L, Xue J (2005) Memory coloring: a compiler approach for scratchpad memory management. In: Parallel architectures and compilation techniques, 2005. PACT 2005. 14th international conference on, IEEE, pp 329–338
go back to reference Lu J, Bai K, Shrivastava A (2013) SSDM: smart stack data management for software managed multicores (SMMs). In: Proceedings of the 50th annual design automation conference, ACM, pp 149 Lu J, Bai K, Shrivastava A (2013) SSDM: smart stack data management for software managed multicores (SMMs). In: Proceedings of the 50th annual design automation conference, ACM, pp 149
go back to reference Mancuso R, Dudko R, Betti E, Cesati M, Caccamo M, Pellizzoni R (2013) Real-time cache management framework for multi-core architectures. In: Real-time and embedded technology and applications symposium (RTAS), 2013 IEEE 19th, IEEE, pp 45–54 Mancuso R, Dudko R, Betti E, Cesati M, Caccamo M, Pellizzoni R (2013) Real-time cache management framework for multi-core architectures. In: Real-time and embedded technology and applications symposium (RTAS), 2013 IEEE 19th, IEEE, pp 45–54
go back to reference Mancuso R, Pellizzoni R, Caccamo M, Sha Lui, Yun Heechul (2015) WCET(m) estimation in multi-core systems using single core equivalence. In: Real-time systems (ECRTS), 2015 27th Euromicro conference on, pp 174–183 Mancuso R, Pellizzoni R, Caccamo M, Sha Lui, Yun Heechul (2015) WCET(m) estimation in multi-core systems using single core equivalence. In: Real-time systems (ECRTS), 2015 27th Euromicro conference on, pp 174–183
go back to reference Metzlaff S, Guliashvili I, Uhrig S, Ungerer T (2011) A dynamic instruction scratchpad memory for embedded processors managed by hardware. In: Architecture of computing systems-ARCS 2011, Springer, pp 122–134 Metzlaff S, Guliashvili I, Uhrig S, Ungerer T (2011) A dynamic instruction scratchpad memory for embedded processors managed by hardware. In: Architecture of computing systems-ARCS 2011, Springer, pp 122–134
go back to reference Pellizzoni R, Betti E, Bak S, Yao G, Criswell J, Caccamo M Kegley R (2011) A predictable execution model for COTS-based embedded systems. In: Proceedings of the 2011 17th IEEE real-time and embedded technology and applications symposium, RTAS ’11, IEEE Computer Society, Washington, DC, USA, pp 269–279 Pellizzoni R, Betti E, Bak S, Yao G, Criswell J, Caccamo M Kegley R (2011) A predictable execution model for COTS-based embedded systems. In: Proceedings of the 2011 17th IEEE real-time and embedded technology and applications symposium, RTAS ’11, IEEE Computer Society, Washington, DC, USA, pp 269–279
go back to reference Puau I, Pais C (2007) Scratchpad memories vs locked caches in hard real-time systems: a quantitative comparison. In: Design, automation & Test in Europe conference & exhibition, 2007. DATE’07, IEEE, pp 1–6 Puau I, Pais C (2007) Scratchpad memories vs locked caches in hard real-time systems: a quantitative comparison. In: Design, automation & Test in Europe conference & exhibition, 2007. DATE’07, IEEE, pp 1–6
go back to reference Schranzhofer A, Pellizzoni R, Chen Jian-Jia, Thiele L, Caccamo M (2010) Worst-case response time analysis of resource access models in multi-core systems. In: Proceedings of the 47th design automation conference, ACM, pp 332–337 Schranzhofer A, Pellizzoni R, Chen Jian-Jia, Thiele L, Caccamo M (2010) Worst-case response time analysis of resource access models in multi-core systems. In: Proceedings of the 47th design automation conference, ACM, pp 332–337
go back to reference Suhendra V, Roychoudhury A, Mitra T (2010) Scratchpad allocation for concurrent embedded software. ACM Trans Program Lang Syst 32(4):13CrossRef Suhendra V, Roychoudhury A, Mitra T (2010) Scratchpad allocation for concurrent embedded software. ACM Trans Program Lang Syst 32(4):13CrossRef
go back to reference Tabish R, Mancuso R, Wasly S, Alhammad A, Phatak SS, Pellizzoni R, Caccamo M (2016) A real-time scratchpad-centric os for multi-core embedded systems. In: Real-time and embedded technology and applications symposium (RTAS), 2016 IEEE, IEEE, pp 1–11 Tabish R, Mancuso R, Wasly S, Alhammad A, Phatak SS, Pellizzoni R, Caccamo M (2016) A real-time scratchpad-centric os for multi-core embedded systems. In: Real-time and embedded technology and applications symposium (RTAS), 2016 IEEE, IEEE, pp 1–11
go back to reference Takase H, Tomiyama H, Takada H (2010) Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems. In: Design, automation & test in Europe conference & exhibition (DATE), 2010, IEEE, pp 1124–1129 Takase H, Tomiyama H, Takada H (2010) Partitioning and allocation of scratch-pad memory for priority-based preemptive multi-task systems. In: Design, automation & test in Europe conference & exhibition (DATE), 2010, IEEE, pp 1124–1129
go back to reference 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 (2010) MERASA: multicore execution of hard real-time applications supporting analyzability. IEEE Micro 30(5):66–75CrossRef 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 (2010) MERASA: multicore execution of hard real-time applications supporting analyzability. IEEE Micro 30(5):66–75CrossRef
go back to reference Wasly S, Pellizzoni R (2013) A dynamic scratchpad memory unit for predictable real-time embedded systems. In: Real-time systems (ECRTS), 2013 25th Euromicro Conference on, IEEE, pp 183–192 Wasly S, Pellizzoni R (2013) A dynamic scratchpad memory unit for predictable real-time embedded systems. In: Real-time systems (ECRTS), 2013 25th Euromicro Conference on, IEEE, pp 183–192
go back to reference Wasly S, Pellizzoni R (2014) Hiding memory latency using fixed priority scheduling. In: Real-time and embedded technology and applications symposium (RTAS), 2014 IEEE 20th, IEEE, pp 75–86 Wasly S, Pellizzoni R (2014) Hiding memory latency using fixed priority scheduling. In: Real-time and embedded technology and applications symposium (RTAS), 2014 IEEE 20th, IEEE, pp 75–86
go back to reference Whitham J, Audsley NC (2012) Explicit reservation of local memory in a predictable, preemptive multitasking real-time system. In: Real-time and embedded technology and applications symposium (RTAS), 2012 IEEE 18th, IEEE, pp 3–12 Whitham J, Audsley NC (2012) Explicit reservation of local memory in a predictable, preemptive multitasking real-time system. In: Real-time and embedded technology and applications symposium (RTAS), 2012 IEEE 18th, IEEE, pp 3–12
go back to reference Whitham J, Davis RI, Audsley NC, Altmeyer S, Maiza C (2012) Investigation of scratchpad memory for preemptive multitasking. In: Real-time systems symposium (RTSS), 2012 IEEE 33rd, IEEE, pp 3–13 Whitham J, Davis RI, Audsley NC, Altmeyer S, Maiza C (2012) Investigation of scratchpad memory for preemptive multitasking. In: Real-time systems symposium (RTSS), 2012 IEEE 33rd, IEEE, pp 3–13
go back to reference Wilding MM, Hardin DS, Greve DA (1999) Invariant performance: a statement of task isolation useful for embedded application integration. In: dcca, IEEE, p. 287 Wilding MM, Hardin DS, Greve DA (1999) Invariant performance: a statement of task isolation useful for embedded application integration. In: dcca, IEEE, p. 287
go back to reference Wolf J, Gerdes M, Kluge F, Uhrig S, Mische J, Metzlaff S, Rochange C, Cassé H, Sainrat P, Ungerer T (2010) RTOS support for parallel execution of hard real-time applications on the MERASA multi-core processor. In: Object/component/service-oriented real-time distributed computing (ISORC), 2010 13th IEEE international symposium on, IEEE, pp 193–201 Wolf J, Gerdes M, Kluge F, Uhrig S, Mische J, Metzlaff S, Rochange C, Cassé H, Sainrat P, Ungerer T (2010) RTOS support for parallel execution of hard real-time applications on the MERASA multi-core processor. In: Object/component/service-oriented real-time distributed computing (ISORC), 2010 13th IEEE international symposium on, IEEE, pp 193–201
go back to reference Yun H, Mancuso R, Wu ZP, Pellizzoni R (2014) PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms. In: Real-time and embedded technology and applications symposium (RTAS), 2014 IEEE 20th, IEEE, pp 155–166 Yun H, Mancuso R, Wu ZP, Pellizzoni R (2014) PALLOC: DRAM bank-aware memory allocator for performance isolation on multicore platforms. In: Real-time and embedded technology and applications symposium (RTAS), 2014 IEEE 20th, IEEE, pp 155–166
go back to reference Yun H, Yao G, Pellizzoni R, Caccamo M, Sha L (2013) Memguard: memory bandwidth reservation system for efficient performance isolation in multi-core platforms. In: Real-time and embedded technology and applications symposium (RTAS), 2013 IEEE 19th, IEEE, pp 55–64 Yun H, Yao G, Pellizzoni R, Caccamo M, Sha L (2013) Memguard: memory bandwidth reservation system for efficient performance isolation in multi-core platforms. In: Real-time and embedded technology and applications symposium (RTAS), 2013 IEEE 19th, IEEE, pp 55–64
Metadata
Title
A real-time scratchpad-centric OS with predictable inter/intra-core communication for multi-core embedded systems
Authors
Rohan Tabish
Renato Mancuso
Saud Wasly
Rodolfo Pellizzoni
Marco Caccamo
Publication date
05-09-2019
Publisher
Springer US
Published in
Real-Time Systems / Issue 4/2019
Print ISSN: 0922-6443
Electronic ISSN: 1573-1383
DOI
https://doi.org/10.1007/s11241-019-09340-0

Other articles of this Issue 4/2019

Real-Time Systems 4/2019 Go to the issue

Premium Partner