Suchen

Projekt WEMUCS Integrierte Tool-Kette optimiert Software für Multicore-Systeme

| Redakteur: Franz Graser

Auf dem ESE-Kongress in Sindelfingen sind unter anderem die Ergebnisse des Forschungsprojekts WEMUCS zu sehen. Ziel des Projekts von elf Partnern war es, den Softwareentwicklungsprozess für eingebettete Systeme, vor allem im Hinblick auf Multicore-Plattformen, zu vereinfachen.

Firmen zum Thema

Softwarewerkzeuge für Mehrkern-Prozessoren (hier ein Multicore-Wafer von Intel) sind schwer auf die jeweilige Hardware zu optimieren. Im Projekt WEMUCS wurde eine integrierte Tool-Kette entwickelt, die die Softwareentwicklung für Multicore-Systeme optimieren soll.
Softwarewerkzeuge für Mehrkern-Prozessoren (hier ein Multicore-Wafer von Intel) sind schwer auf die jeweilige Hardware zu optimieren. Im Projekt WEMUCS wurde eine integrierte Tool-Kette entwickelt, die die Softwareentwicklung für Multicore-Systeme optimieren soll.
(Bild: Intel )

In modernen eingebetteten Systemen erhöhen der wachsende Umfang von Softwarefunktionen zusammen mit verschiedenen Anforderungen wie Safety und Security, Zeitlimits und niedriger Stromverbrauch die Komplexität des Entwicklungsprozesses von Software. An diesem Punkt setzt das Projekt WEMUCS an. Es verfolgt das Ziel, den Softwareentwicklungsprozess für eingebettete Systeme, vor allem im Hinblick auf Multicore-Plattformen, zu vereinfachen. Gleichzeitig soll die Qualität der entwickelten Software verbessert werden.

Das klingt einfacher als es ist: Gegenwärtig sind die verfügbaren Werkzeuge, die Entwicklung, Optimierung und Testen von eingebetteten Systemen unterstützen, nicht nahtlos integriert. Teilweise berücksichtigen sie auch die speziellen Eigenschaften von eingebetteten Systemen nicht. Die Folge: Beim Werkzeugwechsel können sich Fehler einschleichen, außerdem droht höherer Arbeitsaufwand bei der Dokumentation. Diese Fehler werden dann erst spät im Entwicklungszyklus erkannt, dadurch steigen die Kosten.

Auf diese Herausforderung hat WEMUCS eine Antwort gefunden. Werkzeuge aus Modellierung, Test, Optimierung und Tracing wurden weiterentwickelt und so miteinander verzahnt, dass sich die Anforderungen an das System schon frühzeitig und entlang des Entwicklungsprozesses überprüfen lassen. So kann das System insgesamt optimiert werden. Möglich machen dies spezielle Schnittstellen und gemeinsame Austauschformate, die die Projektpartner zusammen entwickelt haben. Außerdem wurden Methoden für den erfolgreichen Einsatz dieser Schnittstellen und Austauschformate erarbeitet.

Zusätzlich wurden neue Verfahren entwickelt: So ist es gelungen, Steuerprogramme automatisch zu parallelisieren. Das betrifft sowohl die Modell-Ebene, also ein frühes Entwicklungsstadium, als auch bereits bestehende Programme aus der Automatisierung. Parallelisierung heißt: Die Prozesse innerhalb einer Software können nebeneinander und gleichzeitig ablaufen. Angesichts der steigenden Verbreitung von Mehrkern-Prozessoren schafft Parallelisierung von Software die Voraussetzung dafür, diese Prozessoren optimal zu nutzen.

Ein Beispiel für ein im Projekt erweitertes Austauschformat ist das im Automotive-Bereich gebräuchliche und offen verfügbare Dateiformat OT1. Es wird zum Beispiel verwendet, um Systembeschreibungen zwischen verschiedenen Werkzeugen auszutauschen oder die Task-Verteilung zu optimieren. Ein weiterer Einsatzbereich ist die Absicherung des Zeitverhaltens von Software im Fahrzeug. Anhand eines ABS-Reglers (Antiblockiersystem für Bremsvorgänge im Auto) konnte im Rahmen des WEMUCS-Projekts veranschaulicht werden, wie sich der Softwareentwicklungsprozess durch die integrierte Tool-Kette optimieren lässt. Dieses Beispiel ist ab Dienstag, dem 2. Dezember, auf dem ESE-Kongress in Sindelfingen zu sehen.

Nicht im Fokus des Messeauftritts, aber nicht weniger interessant ist ein Anwendungsbeispiel aus der Automatisierung: Eine Gepäckförderanlage wird durch Sensoren und Aktoren unabhängig voneinander und parallel gesteuert. Im Rahmen von WEMUCS haben die Forscher die Wechselwirkungen paralleler Abläufe in der Software getestet und dabei Testkriterien für parallele Software formalisiert. Dafür sind in einem ersten Schritt die Voraussetzungen dafür zu schaffen, dass das Test-System die vorhandene Parallelität erkennt. Im weiteren Testverlauf geht es darum, einen Ablaufplan und entsprechende Testfälle abzuleiten.

Das Projekt WEMUCS wurde im November nach einer Laufzeit von zwei Jahren erfolgreich zum Abschluss gebracht. Partner sind unter Projektkoordination des Fraunhofer-Instituts für Eingebettete Systeme und Kommunikationstechnik ESK die Friedrich-Alexander Universität Erlangen-Nürnberg, die Universität Augsburg, die Unternehmen GLIWA, Infineon Technologies, Lantiq Deutschland, Lauterbach, sepp.med, Siemens, Timing-Architects Embedded Systems sowie TWT. WEMUCS wird gefördert vom Bayerischen Staatsministerium für Wirtschaft und Medien, Energie und Technologie.

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de (ID: 43101195)