Validierung des Systems mittels Ereignisspektralanalyse
Für die Validierung des Echtzeit-Verhaltens wird das Timing-Modell durchchronVAL mit Hilfe mathematischer Algorithmen untersucht. Aus allen möglichen Betriebssituationen werden die Fälle ermittelt, in denen die Ausführungszeiten und Anregungen des Systems zu best- und schlechtestmöglichen Antwortzeiten führen. Mathematisch gesehen ist diese Analyse eine Faltung, ähnlich der Fourier-Analyse. Die im Zeitablauf beschriebenen Stimuli des Systems werden zu Ereignisspektren umgerechnet und die Antwortzeiten der Software-Prozesse und Wirkketten daraus ermittelt (Bild 4).
Die Ereignisspektralanalyse stellt den Ressourcen-Bedarf der Prozesse über Zeitintervalle dar. Aus den Diagrammen kann abgelesen werden, in welchen Zeitintervallen beispielsweise der Prozessor oder der Bus von einem Prozess angefordert wird. Durch Überlagerung der Prozesse wird deutlich, ob in einem Intervall noch Ressourcen frei bleiben oder ob die Prozesse das System vollständig auslasten. Nur den Worst- und Best-Case aufzulisten, ohne die Aussage über die Zeitintervalle darzustellen, gäbe dem Entwickler wenig Möglichkeiten zu verstehen, wie diese Fälle zu vermeiden wären.
Mit einfachen Eingaben in der Benutzeroberfläche kann eine Sensitivitätsanalyse zeigen, wie sich eine geänderte Anregung, beispielsweise eine Absenkung der Task-Ausführungshäufigkeit von alle 5 ms auf alle 10 ms, auf die Gesamtleistung und einzelne Antwortzeiten auswirkt. Für den Systemarchitekten bedeutet dies, er kann das Abbilden der Funktionen auf Ressourcen und der Runnables auf Tasks hinsichtlich ihrer Auswirkung auf die Systemleistung schnell untersuchen und optimieren.
Simulation und Validierung können sich ergänzen
Die Simulation ist prinzipiell, genauso wie Tests, optimistisch, da nur die Fälle untersucht werden, die in der Simulation auch angeregt wurden. Eine Validierung hingegen ermittelt die Extremfälle des Systemverhaltens, wird aber aus den Annahmen im Modell das System pessimistisch überschätzen und Fälle aufzeigen, die in der Realität nicht vorkommen.
Daher ist es vorteilhaft, ein System mit beiden Mitteln zu untersuchen. Mit Hilfe der Validierung werden alle Extremsituationen berücksichtigt. Diese pessimistische Analyse kann garantieren, dass das System geforderte Antwortzeiten einhalten wird. Werkzeuge wie chronVAL können helfen, das System auszulegen und später abzusichern. In der Simulation mit chron-SIM werden die Abläufe im System nachvollziehbar. Es kann genau beobachtet werden, welche Situationen das System zu einem bestimmten Verhalten gebracht haben. Über Monte-Carlo-Simulationsläufe bekommt der Entwickler auch die Information, mit welcher Wahrscheinlichkeit bestimmte Situationen eintreten werden.
Beispielsweise führen bei vielen Echtzeit-Systemen Mehrfachaktivierungen von Tasks – häufig sind das Schwebungseffekte zyklischer Prozesse – zu Problemen. Die Validierung zeigt zuverlässig auf, ob diese vorkommen können. Mit Hilfe der Simulation sind die Ursachen für die Mehrfachaktivierung leicht nachvollziehbar. In der Kombination beider Verfahren können daher Extremsituationen sicher erfasst und auf ihre Relevanz für das System untersucht werden.
Betrachtet man die aktuellen Trends der Elektrik/Elektronik der Automobilindustrie, wird schnell deutlich, dass es immer anspruchsvoller wird, ein Steuergerät zu entwickeln. Durch die Konzentration von immer mehr Funktionen auf wenigen Domänen-Controllern sowie stärkere Vernetzung und Verteilung der Funktionen, sind die Systeme und ihr Echtzeit-Verhalten immer schwieriger zu beherrschen.
Timing-Modelle und deren Analyse mit geeigneten, leistungsfähigen Werkzeugen ermöglichen es, die Echtzeit-Probleme der Systeme frühzeitig im Entwicklungsprozess zu adressieren. Wirft man einen Blick in Richtung AUTOSAR mit seinen wiederverwendbaren Software-Modulen verschiedener Zulieferer, wird es unumgänglich, das Zeitverhalten mittels Timing-Modellen zu spezifizieren. sj
Autor: | |
![]() | Dipl.-Ing. Tapio Kramer kramer@inchron.com |