Simulink Design Verifier

Fehlererkennung mithilfe formaler Methoden

Im Gegensatz zur semantischen Prüfung oder Analyse bei der Simulation können die in Simulink Design Verifier verwendeten formalen Methoden feststellen, ob und unter welchen Umständen spezifische dynamische Ausführungsszenarien eintreten können. Mithilfe dieser Informationen können dann entweder der Entwurf und seine Anforderungen verbessert werden, oder sie werden zur Simulation für Debugging und Validierung herangezogen. Simulink Design Verifier erfasst folgende häufige Entwurfsfehler: Integerüberlauf, Teilen durch Null, fehlerhafte Logik und Assertion-Verletzungen.

Erkennen von Integerüberlauf und Teilen durch Null

Mithilfe des Entwurfsfehlererkennungs-Modus in Simulink Design Verifier können Sie Integerüberlauf und Teilen durch Null feststellen. Die Analyse erfolgt automatisch und erfordert keinerlei zusätzliche Anwendereingriffe. Die zulässigen Bereiche für alle Signale in allen Blöcken helfen Ihnen dabei, die Ursache des Problems zu ermitteln. Am Ende der Analyse können Sie die Ergebnisse direkt im Modell oder in einem HTML-Bericht überprüfen.

Im Modell sind Blöcke grün, gelb oder rot markiert. Bei grünen Blöcken wurde bestätigt, dass sie keinen Integerüberlauf oder kein Teilen durch Null verursachen können. Gelbe Blöcke kommen vor, wenn die Analyse kein eindeutiges Ergebnis ergibt oder das Zeitlimit für die Analyse überschritten wurde. Wird im Modellausführungspfad ein Fehler festgestellt, werden alle nachfolgenden Blöcke im Pfad, die einen Integerüberlauf oder ein Teilen durch Null enthalten können, gelb markiert.

Rote Blöcke weisen Entwurfsfehler auf. Für rote Blöcke generiert Simulink Design Verifier einen Testfall, mit dem das Problem während der Simulation oder Tests reproduziert werden kann. Sie können den Testfall direkt in Simulink aufrufen und eine Simulation ausführen.

Erkennen fehlerhafter Logik

Mithilfe des Testgenerierungsmodus in Simulink Design Verifier können Sie fehlerhafte Logik erfassen, also Modellobjekte, die entweder veraltet sind oder bei denen bestätigt wurde, dass sie während der Ausführung inaktiv bleiben. Fehlerhafte Logik wird oft durch einen Entwurfs- oder Anforderungsfehler verursacht. Bei der Codegenerierung führt fehlerhafte Logik zu totem Code. Fehlerhafte Logik ist allein durch Simulationstests schwierig zu erkennen, weil es selbst nach Ausführung vieler Simulationsläufe schwierig sein kann, zu bestätigen, dass ein bestimmtes Verhalten nicht aktiviert werden kann.

Am Ende Ihrer Testgenerierungsanalyse ist das Modell den Testgenerierungskriterien entsprechend farblich gekennzeichnet. Modellobjekte, die Logik enthalten, die in der Simulation nicht aktiviert werden kann, sind rot markiert, Modellobjekte mit Logik, die vollständig in der Simulation aktiviert werden kann, werden grün gekennzeichnet. Simulink Design Verifier generiert einen Testfall, mit dem die fehlerhafte Logik bei der Simulation reproduziert werden kann.

Dead logic in a Stateflow chart detected by Simulink Design Verifier.
Von Simulink Design Verifier rot markierter Übergang in einem Stateflow-Diagramm. Dieser Übergang enthält fehlerhafte Logik, weil die Bedingung „press < zero_thresh“ nie „false“ lauten kann.

Erkennen von Assertion-Verletzungen

Mit der Verletzungserkennungs-Einstellung des Eigenschaftsbestätigungsmodus in Simulink Design Verifier können Sie Assertion-Verletzungen erkennen. Simulink Design Verifier verifiziert, ob gültige Szenarien Assertions während der Simulation innerhalb der in den Analyseeinstellungen festgelegten Anzahl von Zeitschritten auslösen können. Sie können z. B. eine Assertion erstellen, die ausgelöst wird, wenn ein Schubumkehr-Stellglied aktiviert ist und ein Flugstatus-Indikator den Wert „true“ hat. Assertions, die in gültigen Szenarien verletzt werden können, werden rot hervorgehoben, und es wird ein Testvektor erstellt, der die Assertion auslöst. Zusätzlich zu den in Simulink verfügbaren Assertions bietet Simulink Design Verifier weitere Blöcke für die Definition von Beschränkungen für die Analyse, wodurch Sie das Verhalten umfassend analysieren und Entwurfsfehler vor der Ausführung einer Simulation finden können.

Weiter: Verifizierung von Entwürfen in Bezug auf die Anforderungen

Probieren Sie Simulink Design Verifier

Testsoftware anfordern

Sicher ist sicher! Standardkonforme Absicherung von High-Integrity Systemen im Model-Based Design

Webinar anzeigen