MISRA C-Unterstützung in MATLAB und Simulink

Die Motor Industry Software Reliability Association (MISRA) hat im Jahr 1998 Richtlinien für die Verwendung von C-Code in elektronischen Steuergeräten von Fahr- und Flugzeugen eingeführt, den sogenannten MISRA-C:1998 Standard. Hierbei wurden eine eingeschränkte Teilmenge der Programmiersprache C identifiziert welche den Sicherheitsanforderungen in den Stufen SIL 2 und höher gerecht wird, sowie Metriken zur Bewertung der Qualität von eingebetteter Software definiert.

Nachfolgend gab es mehrere Aktualisierungen des Standards, darunter MISRA C:2004, den MISRA AC AGC-Standard im Rahmen der automatischen Code-Generierung, MISRA C++:2008 für C++ und den MISRA C:2012-Standard.

Weitere Informationen zu MISRA-C finden Sie unter misra.org.uk

Simulink, Stateflow und Embedded Coder sind weit verbreitet um eingebettete Software nach MISRA-C® zu entwickeln und Code zu generieren. Die Verifikationsprodukte Polyspace® dienen nachfolgend zur Analyse von (handgeschriebenen oder generiertem) Code, unter anderem zur Überprüfung der Einhaltung des MISRA-C Standards. Polyspace Bug Finder unterstützt dabei die Überprüfung von Programmierrichtlinien gemäß MISRA-C: 2004, MISRA-C++:2008, MISRA C:2012 und MISRA AC AGC.

Modelle oder Subsysteme können mit Hilfe des Code Generation Advisor so konfiguriert und überarbeitet werden, dass der Code-Generator möglichst MISRA-C:2012-konformen Code erzeugt. Jener Code kann anschließend im Detail mit Polyspace auf MISRA-Konformität überprüft werden, wobei sich potentielle Funde bis ins Modell zurückverfolgen lassen, wo die Möglichkeit besteht gerechtfertigte oder notwendige Abweichungen zu dokumentieren.

Weitere Informationen zur Code-Generierung gemäß MISRA-C Standards finden Sie hier:

Um die Nutzeraufwand zur Einhaltung von MISRA-C weiter zu reduzieren, stellt MathWorks die MISRA Support Table bereit, die Embedded Coder mit Simulink- und Stateflow-Modellen verwendet.

Das MISRA-C-Analysepaket enthält Folgendes:

  • Dokumentation mit Zusammenfassung aller Programmierrichtlinien sowie detaillierten Beispielen
  • Simulink-Modelle

Schlüsselprodukte für die Entwicklung von MISRA C-Applikationen: