25.11.2014 Aufrufe

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

Verifikation reaktiver Systeme - Universität Kaiserslautern

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

106<br />

und Loveland mit BCP (siehe Abschnitt 4.3) umgangen.<br />

A = {(x 1 , 0), (x 2 , 1)} (2)<br />

ϕ = ω 1 · ...· ω n (3)<br />

ω i =(x 1 + ¬x 2 + x k ) (4)<br />

ω j =(x 1 + ¬x 2 + ¬x k ) (5)<br />

Das Davis-Logemann-Loveland-Verfahren kann schlimmstenfalls exponentiell<br />

viel Zeit benötigen. Durch zahlreiche Varianten ist es die Basis für viele moderne<br />

SAT-Solver geworden.<br />

Funktionale Repräsentation Die funktionale<br />

Repräsentation in Form von gerichteten azyklischen<br />

Graphen (directed acyclic graphs, DAG) wurde von<br />

Bryant [8] eingeführt. Die Schwierigkeit bei dieser<br />

Repräsentation ist der Aufbau des Graphen, da die<br />

Größe des Graphen abhängig von der Konstruktionsreihenfolge<br />

ist.<br />

Ein Beispiel für einen DAG ist in Abbildung 4<br />

dargestellt. Die repräsentierte Gleichung ist ϕ =<br />

(x 1 +x 3 )·(x 2 +x 3 ). Gesucht ist ein Pfad vom Startknoten<br />

(im Beispiel x 1 ) zum Wahrheitswert 1. An<br />

jedem Knoten wird entschieden, ob die entsprechende<br />

Variable mit 0 oder 1 belegt wird.<br />

Eine SAT-Gleichung ist erfüllbar, wenn es einen<br />

Pfad vom Startknoten (im Beispiel x 1 ) zum Wahrheitswert<br />

1 gibt.<br />

x 1<br />

1<br />

0<br />

x 2<br />

x 3 0<br />

1<br />

0 1<br />

0 1<br />

Abb. 4. Beispiel für einen<br />

gerichteten, azyklischen<br />

Graphen.<br />

3 ATPG – Automatic Test Pattern Generation<br />

Automatic Test Pattern Generation (ATPG) beschäftigt sich mit der Erstellung<br />

von Testfällen zum Validieren von digitalen Schaltungen. Dabei werden Eingangsbelegungen<br />

gesucht, die auf Herstellungsfehler im Inneren der Schaltung<br />

schließen lassen. Die Eingangsbelegungen ”<br />

provozieren” einen Fehler, wodurch<br />

eine andere Ausgangsbelegung zu erzeugt wird, als sie eine fehlerfreie Schaltung<br />

erzeugen würde.<br />

Eine Einführung zu dem Thema findet sich in [9].<br />

3.1 Boolesches Netzwerk & Gatter<br />

Zur Simulation wird die Schaltung in einen Graphen, ein boolesches Netzwerk,<br />

überführt. Dabei repräsentieren die Knoten einfache Gatter, die gerichteten Kanten<br />

die Verbindungen zwischen den Gatternsignalen. Die Gatter implementieren<br />

einfache logische Operationen (AND, OR, . . . ) und können somit auch als SAT-

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!