Modellbasierter Software-Entwurf für echtzeit-kritische Systeme

Wie genau darf’s denn sein?

22. Januar 2007, 11:15 Uhr | Dr. Elof Frank und Martin Schnieringer
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 3

Architektur-orientiertes, VSP-basiertes Design

Um den Anforderungen heutiger Systeme hinsichtlich der Architektur und Implementierung gerecht zu werden, sind bei der Entwicklung die folgenden wichtigsten Punkte zu berücksichtigen:

  • Die Software ist der kritische Faktor. Es kann nicht mehr erst auf die Verfügbarkeit der Hardware gewartet werden, ehe mit der Software-Entwicklung begonnen wird.
  • Sowohl Software als auch Hardware wachsen rapide an, was die Komplexität der jeweils nächsten Generation angeht. Die Softwarekomplexität wächst jedoch überproportional.
  • Qualität ist das Topkriterium, damit ein Produkt ausgeliefert werden kann. Die Qualitätsstandards müssen jedoch unbedingt zu minimalen Kosten eingehalten werden.
  • Um Kosten zu minimieren und gleichzeitig die Qualität zu erhalten, revolutioniert die Automobilelektronik-Industrie die herkömmlichen Architekturkonzepte der Fahrzeuge. Hierzu gehören der Abschied von der einzelnen ECU mit nur einer Funktion und der Übergang zur Integration von Software verschiedener Funktionen in einer Steuerungseinheit [7].

Schriftliche Spezifikationen umfassen Tausende von Seiten, und es dauert Monate, diese zu schreiben. Die hierzu notwendige Methode ist langwierig, ungenau und fehleranfällig. Außerdem sind schriftliche Spezifikationsdokumente unzureichend, wenn es darum geht, die Anforderungen für komplexe Entwicklungen mit kurzen Designzyklen eindeutig zu formulieren und zu kommunizieren.

Eine Lösung ist die Verwendung eines Virtuellen Systemprototypen (VSP), also eines funktions- und zyklengenauen Softwaremodells des Systems. Um vernünftiges Arbeiten mit einem VSP zu ermöglichen, muss die Simulationsgeschwindigkeit des gesamten Systems im MIPS-Bereich liegen. Das hat dann aber zur Folge, dass die einzelnen Komponenten, aus denen das Simulationsmodell besteht, auch schnell sein müssen. Das trifft besonders auf die im System verwendeten Prozessoren oder „Cores“ zu, die zyklengenau und schnell simulieren müssen. Eine VSP-basierte Simulation mit einem einzelnen Prozessor jedenfalls kann Simulationsgeschwindigkeiten zwischen 20 und 200 MIPS erreichen. Systeme mit mehreren Prozessoren, die gemeinsame Speicherstrukturen verwenden, und mehreren Busebenen indes können – je nach Konfiguration – mit Durchsatzraten von10 bis 100 MIPS pro Prozessor simuliert werden. Es ist selbstredend, dass es von Vorteil ist, wenn man nur ein (Prozessor-)Modell benötigt, das sowohl schnell als auch zyklengenau ist. Damit erspart man sich das lästige Verwalten vieler Modelle mit unterschiedlichen Genauigkeiten, und man muss die Modelle im VSP nicht austauschen. Zudem erspart man sich den Aufwand, die funktionale Korrektheit der Modelle auf den unterschiedlichen Abstraktionsebenen zu überprüfen.

Das eben beschriebene Maß an Genauigkeit und Performance bedeutet, dass der Entwickler mit Hilfe von VSPs sehr schnell Architekturentscheidungen treffen kann. Wichtig dabei ist, dass sich die Systeme taktgenau verhalten und schnell simulieren, um die Systemarchitektur mit realen Datenmengen und Softwarelasten – z.B. Betriebssystemen, Applikationen etc. – zu „füttern“. Nur dann kann der Systemarchitekt auch die richtige Entscheidung treffen und die Hard- und Software schon von Anfang an aufeinander abstimmen.


  1. Wie genau darf’s denn sein?
  2. Anwendbarkeit auf eine verteilte Automobilsteuerungsplattform mit mehreren Controllern
  3. Mosaiksteine, die den Weg bereiten“
  4. Architektur-orientiertes, VSP-basiertes Design

Jetzt kostenfreie Newsletter bestellen!