Verifikation reaktiver Systeme - Universität Kaiserslautern
Verifikation reaktiver Systeme - Universität Kaiserslautern
Verifikation reaktiver Systeme - Universität Kaiserslautern
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
43<br />
Completeness of (BMC) Property Suite<br />
Sören Burmeister<br />
Technische Universität <strong>Kaiserslautern</strong><br />
Zusammenfassung. Für die Durchführung eines formalen Korrektheitsbeweises<br />
ist es von größter Wichtigkeit, die Anforderungen an das zu prüfende<br />
System vollständig zu spezifizieren, da ansonsten Teile der Funktionalität eines<br />
Programmes nicht von der <strong>Verifikation</strong> erfasst werden. In diesem Kapitel wird<br />
das Verfahren der Coverage Measure vorgestellt, das für eine Schaltung prüft,<br />
welche Signallinien von einer erstellten Spezifikation berücksichtigt werden<br />
und welche nicht. Obgleich dieses Verfahren nicht die Vollständigkeit einer<br />
Spezifikation beweisen kann, stellt es in seinen verschiedenen Erweiterungen<br />
ein Hilfsmittel für die Entwicklung einer Spezifikation dar, da es dem<br />
Entwickler mögliche Lücken in seiner property suite aufzeigen sowie ihm<br />
einen groben Überblick über den Fortschritt seiner Arbeit geben kann.<br />
1 Einführung<br />
Im letzten Kapitel wurde erläutert, wie man mittels BMC eine gegebene<br />
Implementierung eines Designs auf ihre Korrektheit überprüfen kann. Wie auch bei<br />
anderen Methoden zur <strong>Verifikation</strong> kann die Modellprüfung mittels BMC aber nur<br />
dann zuverlässige Ergebnisse liefern, wenn die property suite alle relevanten Aspekte<br />
des Designs beinhaltet. Erfüllt die property suite diese Eigenschaft, bezeichnet man<br />
diese auch als <strong>Verifikation</strong>splan.<br />
Eine der wesentlichen Aufgaben bei der <strong>Verifikation</strong> ist also die Sicherstellung,<br />
dass es sich bei der erstellten property suite tatsächlich um einen <strong>Verifikation</strong>splan<br />
handelt. Unglücklicherweise ist es nicht möglich, aus der informellen Definition eines<br />
solchen Planes formale Eigenschaften abzuleiten, mit denen eine mathematische<br />
Überprüfung einer property suite auf ihre Vollständigkeit durchführbar wäre. Daher<br />
wird versucht, dem Erzeuger der property suite Hilfsmittel zur Verfügung zu stellen,<br />
die es ihm ermöglichen, während des Entwicklungsprozesses Lücken in der property<br />
suite zu erkennen und zu lokalisieren.<br />
Eines dieser Hilfsmittel ist die Coverage Measure. Der Ansatz dieser Methode<br />
liegt darin, dass die syntaktische Vollständigkeit der property suite untersucht wird,<br />
das heißt, es wird geprüft, ob jeder Bestandteil der untersuchten Implementierung von<br />
der property suite abgedeckt wird.<br />
Im Folgenden soll nun die Vorgehensweise bei der Coverage Measure am Beispiel<br />
des bereits im letzten Kapitel vorgestellten ATM Error Controllers (AEC) erläutert<br />
werden. Dazu werden zunächst in einem ersten Ansatz die Vorgehensweisen bei den<br />
verschiedenen Arten von Signallinien (Eingängen, Ausgängen, interne und