anticache

Interdisziplinäres Projekt - Echtzeitanforderungen und ARM Multicores, ein Widerspruch?

09.03.2017

Adaption und Umsetzung verschiedener Methoden zur Isolierung von Ausführungssträngen auf ARMv8 Multicore Prozessoren zur Gewährleitung von Echtzeiteigenschaften


Echtzeit und Multicore, für viele Industrieunternehmen ist das auch heute noch ein Widerspruch. Dieses IDP soll daher die Grundlagen schaffen für eine systematische Analyse der bereits heute auf Custom off-the-shelf (COTS) Multicore Hardware verwirklichbaren Echtzeiteigenschaften. Die Problematik bei der Ausführung von Echtzeitapplikationen auf COTS Multicore Systemen ist, dass es im Sinne der Worst-Case Response Time (WCRT) einer Applikation sehr viele Faktoren gibt, die einer deterministischen und vorhersagbaren Ausführung entgegensprechen. Beispiele hierfür sind zeitgleiche Zugriffe auf Ressourcen, wie Busse und Peripheriegeräte, oder geteilte Caches. Zahlreiche Veröffentlichungen [3, 4, 5] beschäftigen sich entsprechend damit, diese Faktoren auszuklammern oder ihre Auswirkungen einzuschränken. Unklar bleibt bisher jedoch, wie viel Echtzeit sich bereits mit diesen Verfahren realisieren lässt und inwiefern sich die Konzepte auf andere Architekturen übertragen lassen. Entsprechend sollen im Rahmen des IDPs, als erster Baustein für eine spätere Analyse, etablierte Konzepte zur Isolierung von Ausführungssträngen auf Multicore Systemen auf einer aktuellen ARMv8 Custom off-the-shelf (COTS) Hardware implementiert, validiert und kombiniert werden. Als Zielplattform soll dabei eines der neusten ARM Systems on a Chip (SoCs) zum Einsatz kommen, das Xilinx Zynq UltraScale+ MPSoC StarterKit [2]. Das ist eine Plattform, die ganz ähnlich so bereits heute in der Automobil-Industrie Anwendung findet.

Aufgabe des IDPs wird es sein, zunächst die aktuelle Literatur zu sichten und mit Hilfe der Prozessor-Dokumentation ein Konzept für die Umsetzung der in der Literatur beschriebenen Verfahren für die Zielplattform zu entwickeln. Die selbst entwickelten Konzepte sollen dann als Erweiterung der TAPPS-Plattform [6] implementiert werden, welche selbst auf FreeRTOS [1] aufbaut. Dabei würde nicht nur ein Xilinx Entwicklungsboard zur Verfügung gestellt, sondern auch ein Lauterbach Hardware Debugger [7], welche insbesondere in der Automobil-Branche rege Anwendung finden. Zum Abschluss des IDPs sollen die eigenen Entwicklungen mit Hilfe einer kleinen Messreihe oder einem kleinem Testprogramm validiert werden.

Das IDP würde in Zusammenarbeit mit der fortiss GmbH, einem der führenden Forschungsinstitut im Bereich der Cyber-Physical Systems (CPSs) durchgeführt. Da das IDP im Kontext des EU-Projekts TAPPS [6] stattfindet, erklärt sich die Eingliederung in ein junges internationales Team von selbst. Als begleitende Vorlesung ist die Vorlesung „Real-Time and Embedded Systems“ (EI 0667) vorgesehen.  

Ziele

  1. Entwicklung eines Konzepts für die Umsetzung des Stands der Wissenschaft im Bereich der Isolierung von Ausführungssträngen auf Multicore Systemen auf aktuellen ARMv8 Architekturen.
  2. Implementierung des erarbeiteten Konzepts unter FreeRTOS auf dem Xilinix Zynq UltraScale+ MPSoC als Erweiterung der TAPPS-Plattform.
  3. Validierung der Ergebnisse mit Hilfe einer Messreihe oder einem Testprogramm

Voraussetzungen

  • Gute Kenntnisse in der C Programmierung
  • Grundkenntnisse in den Bereichen Rechnerarchitektur, Betriebssysteme und Systemsoftware
  • Kenntnisse im Bereich Echtzeitsysteme von Vorteil, aber keine Voraussetzung
  • Erfahrungen im Umgang mit dem ARM Instruktionssatz von Vorteil, aber keine Voraussetzung

 

Ansprechpartner

      Oliver Horst

 

 


[1] FreeRTOS. www.freertos.org

[2] Xilinx Zynq UltraScale+ MPSoC ZCU102 Evaluation Kit. https://www.xilinx.com/products/boards-and-kits/ek-u1-zcu102-es2-g.html

[3] Sha, L., Caccamo, M., Mancuso, R., Kim, J. E., Yoon, M. K., Pellizzoni, R., ... & Bradford, R. (2014). Single Core Equivalent Virtual Machines for Hard Real—Time Computing on Multicore Processors.

[4] Nowotsch, J., Paulitsch, M., Bühler, D., Theiling, H., Wegener, S., & Schmidt, M. (2014, July). Multi-core interference-sensitive WCET analysis leveraging runtime resource capacity enforcement. In Real-Time Systems (ECRTS), 2014 26th Euromicro Conference on (pp. 109-118). IEEE.

[5] Giannopoulou, G., Stoimenov, N., Huang, P., Thiele, L., & de Dinechin, B. D. (2016). Mixed-criticality scheduling on cluster-based manycores with shared communication and storage resources. Real-Time Systems, 52(4), 399-449.

[6] EU Horizon 2020 Project: Trusted Apps for open CPSs (TAPPS). http://www.tapps-project.eu

[7] Lauterbach PowerDebug. http://www.lauterbach.com