Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Embedded-Multicore mit AMALTHEA

Autor: Harald Mackamul, Robert Bosch GmbH

Beitrag - Embedded Software Engineering Kongress 2015

 

AMALTHEA ist eine Open Source Plattform für die Entwicklung von eingebetteten Multi- und Many-Core Softwaresystemen. Die Plattform ermöglicht den Aufbau einer Werkzeugkette, z.B. für Timing Simulation und Validierung, die auf einer gemeinsamen Systembeschreibung aufsetzt. Als eine offene und freie Plattform, die  bei Bosch und verschiedenen Partnern im Automobilbereich bereits erfolgreich eingesetzt wird, verbessert sie die Interoperabilität und erlaubt den einfacheren Datenaustausch zwischen verschiedenen Organisationen. Mit AMALTHEA wird es für Hersteller von Entwicklungswerkzeugen, Zulieferer und Dienstleister einfacher, ihre Produkte in den Entwicklungsablauf zu integrieren und spezifische Lösungen zu erstellen.

Motivation

Mit der stetig zunehmenden Zahl von Komfort-, Fahr- und Fahrerassistenzsystemen in modernen Autos ist ein zunehmender Bedarf an Rechenleistung in den Fahrzeugen verbunden. Immer komplexer werdende Systeme zur Verringerung der Umweltbelastung und zur Verbesserung des Insassenschutzes tragen ebenfalls dazu bei, dass die Zahl der Steuergeräte (ECUs), der Sensoren und die Vernetzung in modernen Fahrzeugen weiter zunehmen (siehe auch Abbildung 1, PDF).

Zugleich sollen ECUs aber kostengünstiger, energieeffizienter und leistungsstärker werden. Da im Bereich der Single-Core-Prozessoren die Grenzen bezüglich der Rechenleistung erreicht sind, werden im Automotive-Sektor zunehmend Multi-Core-Systeme in Steuergeräten eingesetzt. Dies ermöglicht einerseits eine geringere Anzahl an ECUs in einem Auto, erfordert andererseits aber eine Anpassung oder Neuentwicklung der Anwendungen. Hierzu wird entsprechender Tool-Support benötigt, der die Ausnutzung der verfügbaren Hardware optimiert und die Einhaltung kritischer Anforderungen sicherstellt.

Europäische Förderprojekte AMALTHEA und AMALTHEA4public

Die Grundlagen für eine besonders effiziente Nutzung moderner leistungsfähiger Hardware schafft aktuell ein internationales Forschungsteam unter der Leitung von Bosch: Am Projekt AMALTHEA4public arbeiten 20 Partner aus Deutschland, Schweden, Spanien und der Türkei. Die deutschen Projektpartner konzentrieren sich dabei vorrangig auf die Anforderungen der Automobilindustrie. AMALTHEA4public wurde im September 2014 gestartet und läuft bis August 2017.

Die Forscher knüpfen an das Vorgängerprojekt AMALTHEA an, in dem bereits eine Softwareplattform für Multi-Core-Systeme erarbeitet und veröffentlicht wurde. Diese Plattform wollen sie so erweitern, dass sie auch Many-Core-Systeme unterstützt und Unternehmen ihre gesamten Entwicklungswerkzeuge darin einbinden können. Für ihre Arbeit nutzen die Forscher die Ergebnisse verschiedener öffentlich geförderter Projekte. Die Plattform basiert auf der quelloffenen Entwicklungsumgebung Eclipse und steht jedem Anwender frei zur Verfügung. Zudem will das Konsortium ein Eclipse-Projekt und eine Community aufbauen, welche die Entwickler auch nach Ende des Forschungsprojekts verbindet und unterstützt. Auf diese Weise soll es gelingen, die Ergebnisse von AMALTHEA4public einem breiten Kreis zugänglich zu machen und als Standard für die Entwicklung eingebetteter Multi- und Many-Core Systeme zu etablieren.

Kooperation aus Wirtschaft und Wissenschaft

Das deutsche Konsortium deckt fast die ganze Wertschöpfungskette in der Automobilbranche ab. Außer Bosch und Behr-Hella-Thermocontrol (BHTC) beteiligen sich die Werkzeughersteller itemis und Timing-Architects, das Unternehmen TWT, die europäische Tochtergesellschaft der Eclipse Foundation, das OFFIS-Institut für Informatik, das Institut für Automation und Kommunikation (ifak), die Projektgruppe Entwurfstechnik Mechatronik des Fraunhofer-Instituts für Produktionstechnologie (IPT-EM), die Fachhochschule Dortmund, die Ostbayerische Technische Hochschule (OTH) Regensburg und die Universität Paderborn. Das Bundesministerium für Bildung und Forschung fördert die Arbeit der deutschen Projektpartner innerhalb des Zukunftsprojektes Industrie 4.0 mit rund 3,3 Millionen Euro.

Das AMALTHEA Systemmodell

Um das (zeitliche) Verhalten von Systemen in einem Multi-/Many-Core-Kontext untersuchen zu können, muss eine geeignet abstrahierte Beschreibung der Einflussfaktoren vorliegen. Das AMALTHEA Systemmodell (siehe Abbildung 2, PDF) kombiniert dazu verschiedene Teilmodelle, die zusammengenommen alle benötigten Informationen enthalten, die für Simulation, Analyse und Optimierung des (Zeit-)Verhaltens eines Systems notwendig sind. Dies sind zum Beispiel die Hardware-Eigenschaften, die Struktur der Software, Ausführungszeiten und vorgegebene Anforderungen. Die Beschreibung kann in Abstraktionsgrad und Details variieren, je nachdem, in welcher Phase der Entwicklung oder mit welchem Ziel das System untersucht werden soll. Ausführungszeiten können beispielsweise zu Beginn geschätzt sein und später durch Messungen im realen Steuergerät ersetzt werden.

Im Entwicklungsprozess von Steuergeräten kommt eine Vielzahl von Werkzeugen zum Einsatz, die teils eine spezifische Sicht auf ein System bieten, teils verschiedene Entwicklungsschritte unterstützen. In beiden Fällen werden Informationen über das System nicht nur verwendet, sondern auch im Rahmen der Entwicklung verändert und ergänzt. Diese modifizierten Daten bilden dann die Basis für folgende Entwicklungsschritte, sodass eine Kette von Werkzeugen entsteht. Da verschiedene Werkzeuge oft unterschiedliche Dateiformate verwenden, benötigt man eine Plattform, die einen kontinuierlichen Entwicklungsfluss ermöglicht und Daten bzw. Modelle einmalig erzeugt. Diese können schließlich mit den verschiedenen Werkzeugen visualisiert und bearbeitet werden (siehe Abbildung 3, PDF).

Die AMALTHEA Plattform

Ziel des Projekts ist die Aufwandsminderung für den Datenaustausch. Hierzu entwickelte das Projektkonsortium eine konsistente, offene und erweiterbare Plattform für eingebettete Multi- und Many-Core-Systeme. Der modellbasierte Ansatz der AMALTHEA-Plattform erlaubt dabei nicht nur die Modellierung von Software und Hardware, sondern bietet auch elementare Werkzeuge zur Visualisierung und Bearbeitung dieser Modelle. Durch das einheitliche Datenmodell, das alle notwendigen Informationen für einen vollständigen Entwicklungsprozess enthält, können Daten zentriert erstellt und gehalten werden. Die Daten enthalten dabei sowohl Software- als auch Hardwarebeschreibungen, die um Multi-Core-relevante Attribute erweitert worden sind.

Ein Fokus bei der Plattformentwicklung liegt auf offenen Schnittstellen, um eine Vielzahl von Werkzeugen – egal ob Open Source, kommerziell oder proprietär – integrieren zu können. Gemeinsam mit dem Datenmodell entsteht hierdurch ein effizienter Datenaustausch, sowohl zwischen kooperierenden Unternehmen als auch zwischen verschiedenen Werkzeugen innerhalb eines Unternehmens. Weiterhin sollten Anwender selbstdefinierte Werkzeugketten zusammenstellen können, die spezielle Anforderungen durch die Verwendung entsprechender Werkzeuge erfüllen. Als Basis für die Entwicklungsplattform wurde Eclipse gewählt, da es durch seinen Plugin-Mechanismus eine einfache Möglichkeit zur Integration weiterer Werkzeuge bietet (siehe Abbildung 4, PDF).

Open Source

Damit die AMALTHEA-Ergebnisse frei verfügbar sind, wird die Plattform unter der Eclipse-Public-License (EPL) veröffentlicht. Hierdurch ist diese nicht nur frei verwendbar, sondern auch der Quellcode zugänglich und Software-Anbieter können ihre Werkzeuge mit geringem Aufwand in die AMALTHEA-Plattform integrieren.

Eine erste Version der Entwicklungsumgebung wurde bereits im Oktober 2013 als Preview auf der Homepage der Eclipse Automotive Industry Working Group (Eclipse Auto-IWG) veröffentlicht. Danach folgten die offiziellen Versionen, die auf der zentralen Website des Projekts bereitgestellt werden:

  • Release 1.0.3 im Juni 2014
  • Release 1.1.0 im August 2015
  • Release 1.1.1 im Oktober 2015

 

Als Download stehen komplette Eclipse-Distributionen für Windows (32 Bit, 64 Bit), Linux (64 Bit) und Apple OSX (64 Bit) zur Verfügung. Voraussetzung ist lediglich eine Java 8 Laufzeitumgebung. Durch Beispiele, Tutorials und die Beschreibungen in der integrierten Eclipse-Hilfe kann die Plattform einfach evaluiert werden.

Der professionelle Einsatz findet bereits im Automobilbereich statt. Bosch nutzt AMALTHEA Systembeschreibungen sowohl intern als auch im Austausch mit OEMs. Erste kommerzielle Werkzeuge unterstützen bereits das AMALTHEA Austauschformat, wobei die Tool-Suite von Timing Architects derzeit mit Import und Export die umfangreichsten Möglichkeiten bietet (siehe Abbildung 5, PDF).

Aktueller Stand und nächste Schritte

Durch Mitglieder des AMALTHEA4public Projekts wurde ein offizielles Eclipse Projekt "APP4MC" (Application Platform Project for Multi-/Many-Core) vorgeschlagen, das von der Eclipse Foundation angenommen wurde. Im diesem Rahmen soll die freie Verfügbarkeit, die Weiterentwicklung und die Pflege der AMALTHEA Plattform langfristig sichergestellt werden.

Der nächste Schritt ist nun die Bereitstellung der Plattform in der neuen Eclipse-Umgebung. Nach Abschluss der technischen Arbeiten und rechtlichen Prüfungen wird das neue Release von AMALTHEA im Rahmen des Eclipse-Projekts APP4MC veröffentlicht werden.

Hintergrund im Internet

 

Beitrag als PDF downloaden

 


Open Source - unsere Trainings & Coachings

Wollen Sie sich auf den aktuellen Stand der Technik bringen?

Dann informieren Sie sich hier zu Schulungen/ Seminaren/ Trainings/ Workshops und individuellen Coachings von MircoConsult zum Thema Open Source / Embedded Software Engineering.

 

Training & Coaching zu den weiteren Themen unseren Portfolios finden Sie hier.


Open Source - Fachwissen

Wertvolles Fachwissen zum Thema Open Source / Embedded Software Engineering steht hier für Sie zum kostenfreien Download bereit.

Zu den Fachinformationen

 
Fachwissen zu weiteren Themen unseren Portfolios finden Sie hier.