Formale Verifikation

  • Formale Verifikation
  • Simulation und formale Verifikation
  • Werkzeuge der formalen Verifikation
  • Equivalence-Checking: Problemstellung
  • Erfüllbarkeitsproblem(Satisfiability,SAT)
  • SAT1-Problem
  • SAT-Equivalence-Checker
  • Graphenisomorphie
  • Binary Decision Diagrams (BDDs)
  • Binärer Entscheidungsbaum: Beispiel
  • Zusammenfassen identischer Teilbäume
  • Entfernen überflüssiger Knoten
  • Abhängigkeit der Knotenanzahl von der Entwicklungsreihenfolge
  • Vorteile der BDDs
  • Beispiel:ALU(SN74181)
  • Model-Checking
  • Symbolic Model Checking
  • Zustandsmengen
  • Temporale Logik
  • Elemente von CTL
  • CTL-Syntax
  • AX und EX
  • AF and EF
  • AG und EG
  • Beispiel: Modulo-3-Zähler
Startseite
Beispiel: Modulo-3-Zähler   Spezifikation: Zustand [z1,z0] =[0,0]=(z1z0)wird von allen Zuständen (M=(true)) erreicht. z'1 z'0 z0 z1 & & Q D Q D 1 1 00 01 10 11 M=(true)=AF(Z=[0 0])=AF(z1z0) ! 1 1 1 1 1 0 0 0 0 0 00 01 10 11 00 01 10 11 1 0 0 1 0 1 0 0 00 01 10 11 00 01 10 11 0 1 1 0 1 0 1 0 1 1 00 01 10 11 00 01 10 11 0 0 0 0 0 1 1 1 0 1 00 01 10 11 AF(Z=[0 0])    

In diesem Beispiel wird beispielhaft eine Eigenschaft eines Modulo 3 Zählers überprüft. Zunächst muss dazu die Gatterschaltung in das Zustandsübergangsdiagramm umgewandelt werden. Dies geschieht im realen, OBDD-basierten Modelchecker jedoch nur implizit durch Aufstellen der OBDDs. Der Check-Prozess ist hier animiert dargestellt und liefert ein positives Ergebnis für die spezifizierte Eigenschaft, d.h. der Zustand [0,0] wird tatsächlich immer (d.h. von jedem anderen Zustand) erreicht.