AUTOSAR

ISO-26262-konforme Komponenten ohne Laufzeitfehler

| Autor / Redakteur: Alexander Much * / Thomas Kuther

In heutigen Autos steckt 100- bis 1000-Mal so viel Software wie vor 10 Jahren. Um diese hohe Komplexität bewältigen zu können, wurde AUTOSAR als standardisierte Softwarearchitektur für Embedded Software im Automobil geschaffen.
In heutigen Autos steckt 100- bis 1000-Mal so viel Software wie vor 10 Jahren. Um diese hohe Komplexität bewältigen zu können, wurde AUTOSAR als standardisierte Softwarearchitektur für Embedded Software im Automobil geschaffen. (Bild: Elektrobit)

Die Einhaltung der Norm ISO 26262 zur funktionalen Sicherheit ist eine große Herausforderung für Steuergeräte-Entwickler. Wir verraten Ihnen, wie sich diese Aufgabe mit Polyspace einfacher bewältigen lässt.

Die Automobilbranche stellt hohe Anforderungen an die funktionale Sicherheit von Software. Um zu garantieren, dass die Software der Norm entspricht, muss praktisch jede denkbare Variante getestet werden. AUTOSAR-Basissoftware wie EB tresos AutoCore bietet aber Tausende von möglichen Softwarekonfigurationen, die auf jeder derzeit eingesetzten Hardware verwendet werden können. Eine aktive Instrumentierung des Codes, beispielsweise um Arrayzugriffe oder ähnliche Laufzeitfehler abzusichern, ist nicht ausreichend, denn diese Methoden finden Fehler lediglich während der Ausführung von Tests. Die Konfigurationsvielfalt würde dazu aber eine unrealistisch große Anzahl an Testfällen nötig machen. Stattdessen nutzt Elektrobit das Testwerkzeug Polyspace zur Verifikation des Codes. Polyspace identifiziert Laufzeitfehler und fehlerfreie Operationen analytisch, ohne dass für diesen speziellen Zweck Testfälle entwickelt und ausgeführt werden müssen, um diese Fehler aufzudecken. Nachdem die Verifikation des Codes mit Polyspace zwei Monate lang bei Elektrobit durchgeführt wurde, ergab sich, dass 97% aller Operationen des Codes ohne Laufzeitfehler sind. So konnten sich Entwickler bei der weiteren Überprüfung der Komponenten durch Code-Inspektionen und Tests auf die verbleibenden 3% konzentrieren.

AUTOSAR ist der Nachfolger von OSEK

In vielerlei Hinsicht ist AUTOSAR der Nachfolger von OSEK, dem Echtzeitbetriebssystem, das jedes Jahr auf Millionen von Steuergeräten installiert wird. Daher muss EB tresos AutoCore mindestens so zuverlässig sein wie OSEK. Elektrobit stand vor der Herausforderung, dass EB tresos AutoCore wesentlich höheren Anforderungen genügen muss: Die Software muss die relevanten AUTOSAR-Standards und auch alle Konformitätsklassen unterstützen.

EB tresos AutoCore deckt nahezu alle AUTOSAR-Module ab

Die AUTOSAR-Architektur: Nahezu alle AUTOSAR-Module werden durch EB tresos AutoCore abgedeckt
Die AUTOSAR-Architektur: Nahezu alle AUTOSAR-Module werden durch EB tresos AutoCore abgedeckt (Bild: Elektrobit)

Das Bild zeigt die Architektur von AUTOSAR 3.x, wobei EB tresos AutoCore nahezu alle AUTOSAR-Module abdeckt. Die Basis-Software besteht aus ca. 100.000 Codezeilen. Darüber hinaus ist EB tresos AutoCore mit über 15.000 Parametern hochgradig konfigurierbar, von denen viele nicht einfache Schalter sind, sondern Wertebereiche umfassen.

Laufzeitfehler in Software mit derartig vielen Konfigurationsparametern zu identifizieren, ist aufwändig und eine schwierige Aufgabe. Dennoch ist eine Überprüfung für die Sicherheit des gesamten Systems unerlässlich. So kann beispielsweise die Dereferenzierung eines ungültigen Zeigers zum Anhalten des Steuergeräts führen und damit zu plötzlichem Beschleunigen, Abbremsen oder einem anderen unerwarteten Verhalten des Fahrzeuges.

Ehemals aufwändige Suche nach Laufzeitfehlern

Für die Suche nach Laufzeitfehlern wurden früher der Code instrumentiert sowie Modultests ausgeführt, bei denen die Embedded Software mehrere Tausend zuvor festgelegte FlexRay- oder CAN-Pakete verarbeitet hat. Selbst nach Tausenden von Tests zur Bereichsprüfung auf Dutzenden unterschiedlicher Hardwarearchitekturen war jedoch nicht garantiert, dass alle Fehler gefunden wurden. Es war einfach nicht sichergestellt, dass die gesendeten Testpakete alle möglichen Laufzeitfehler im Code hervorrufen würden. Außerdem konnte durch zu viel Instrumentierung die Ausführung des Codes verlangsamt werden – mit dem Risiko, dass die Software in Echtzeit eintreffende Pakete verpasst.

Verifikation des Codes ohne Instrumentierung

Für die Verifikation des Codes mit Polyspace ist keine Instrumentierung erforderlich. Zudem entspricht die Analyse einem vollständigen Test, und nicht nur einem, der in bestimmten Szenarien nach Laufzeitfehlern sucht. Für jede Anweisung analysiert Polyspace das Verhalten unter Berücksichtigung aller möglichen Werte unter Einbezug aller Variablen und Parameter von EB tresos AutoCore.

Ergänzendes zum Thema
 
ISO 26262 und AUTOSAR: Tools für die Standardkonforme Entwicklung in der Serie

Einhaltung der Norm ISO 26262 und weiterer Standards

Zur Einhaltung der Norm ISO 26262 zur funktionalen Sicherheit von Straßenfahrzeugen muss belegt werden, dass der Entwurf den Sicherheitsanforderungen entspricht, dass die Architektur die Sicherheitsanforderungen erfüllt, dass die Designs der Architektur entsprechen und dass die Architektur korrekt implementiert ist. Der Einsatz von Polyspace zur Code-Verifikation ist besonders in der zumeist zeitaufwändigen dritten Phase hilfreich.

Schnelle Prüfung mit Polyspace zur Code-Verifikation

Alle sicherheitsrelevanten Funktionen in EB tresos AutoCore sind in Modulen zusammengefasst, die beispielsweise Speicherschutz oder End-to-End-Protection für über den Datenbus gesendete Nachrichten bieten. Der Code jedes Moduls muss gründlich geprüft werden, um Implementierungsprobleme zu identifizieren.

Inhalt des Artikels:

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 24919320 / Embedded Boards & PCs)