186
Test und Verl¨ asslichkeit (F3) Kapitel 3: Grundlagen der Testauswahl Prof. G. Kemnitz Institut f¨ ur Informatik, Technische Universit¨ at Clausthal 21. Juni 2012 Prof. G. Kemnitz · Institut f¨ ur Informatik, Technische Universit¨ at Clausthal 21. Juni 2012 1/180

Test und Verl asslichkeit (F3) Kapitel 3: Grundlagen der ...techTest und Verl asslichkeit (F3) Kapitel 3: Grundlagen der Testauswahl Prof. G. Kemnitz Institut f ur Informatik, Technische

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • Test und Verlässlichkeit (F3)Kapitel 3: Grundlagen der

    TestauswahlProf. G. Kemnitz

    Institut für Informatik, Technische Universität Clausthal21. Juni 2012

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 1/180

  • Inhaltsverzeichnis

    1 Fehlerausschluss nicht möglich . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

    2 Fehlermodellierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.1 Nachweisbedingungen und Modellfehler . . . . . . . . . . . . . . . . . . 142.2 Testauswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .222.3 Haftfehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.4 Weitere Fehlermodelle für digitale Schaltungen . . . . . . . . . . . 342.5 Fertigungsfehler ICs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 442.6 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

    3 Werkzeuge zur Testauswahl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.1 Fehlersimulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 603.2 D-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653.3 Sequentielle Schaltungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793.4 Prüfgerechter Entwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .833.5 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 2/180

  • Inhaltsverzeichnis

    4 Zufallstest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 894.1 Nachweiswahrscheinlichkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .914.2 Fehleranzahl und Fehlerüberdeckung . . . . . . . . . . . . . . . . . . . . . 974.3 Fehlerprofil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1194.4 Zuverlässigkeitswachstumsmodelle . . . . . . . . . . . . . . . . . . . . . . . 1514.5 Effektive Fehlanzahl und Fehlerstichproben . . . . . . . . . . . . . .1094.6 Operationsprofil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1604.7 Inspektion als Zufallstest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1724.8 Aufgaben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 3/180

  • Test

    !

    korrekte Ein- und AusgabenFehlfunktion, fehlendes, zusätz-liches oder verfälschtes ErgebnisFehler, systemeigene Ursache fürFehlfunktionen

    falsch klassifiziert!

    korrekt klassifiziertfür FehlfunktionenStörung, externe UrsacheErgebnis-

    kontrolleSystem

    !

    Testsatz

    Stichprobenhaftes Ausprobieren der Funktion

    Anlegen von BeispieleingabenKontrolle der Ausgaben auf Richtigkeit1

    Ziel: Nachweis vorhandener Fehler

    Der Test mit Beispieleingaben wird zur Abgrenzung von den�statischen Tests� (Kontrolle der Systembeschreibung) auch als�dynamischer Test� bezeichnet.

    1Als Ergebniskontrolle wird ein Soll-/Istvergleich unterstellt. BeiKontrollen mit geringerer Erkennungswahrscheinlichkeit für beobachtbareFehlfunktionen wird die Verschlechterung getrennt betrachtet.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 4/180

  • !!

    erkannter Fehlernicht erkannter FehlerPhantomfehler

    !

    !

    Test ! falsch klassifiziertkorrekt klassifiziertkorrekte EigenschaftFehler

    Klassifikation der vorhandenen Fehler in nachweisbare undnicht nachweisbare.Ein Test überprüft praktisch nie die Funktion mit allenEingaben und unter allen Bedingungen.Gütemaß Fehlerüberdeckung (fault coverage):

    FC =ϕ�√

    ϕ�

    (ϕ�√ – Anzahl der nachweisbaren Fehler; ϕ� – Anzahl der

    vorhandenen Fehler).

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 5/180

  • Eine fehlerhafte Ausgabekontrolle, z.B. ein Soll/Istvergleichfür nicht definierte oder nicht eindeutige Ausgaben kann zuPhantomfehlern2 führen.

    2Klassifikation richtiger Ausgaben als Fehlfunktion. VerursachtBeseitigungsversuche für nicht vorhandene Fehler, in denen neue Fehlerentstehen können.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 6/180

  • 1. Fehlerausschluss nicht möglich

    Fehlerausschluss nicht möglich

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 7/180

  • 1. Fehlerausschluss nicht möglich

    �Der schlimmste aller Fehler ist, sich keines solchen bewusst zusein.� (Thomas Carlyle, 1795 - 1881)

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 8/180

  • 1. Fehlerausschluss nicht möglich

    Kein Testsatz kann alle Fehler nachweisen

    Funktion ohne Gedächtnis mit n Eingabebits:

    2n mögliche Eingaben. Für jede kann die Ausgabe falschsein.Der Nachweis aller denkbaren Fehler erfordert mindestenseinen Test mit allen 2n unterschiedlichen Eingabewerten.

    4

    Anzahl Eingabewerte:

    < 106

    4,6 · 1040 Jahre(∗)

    2160

    a, b, c: 80 Bit Variablen

    a = f(b, c)

    ....

    (∗) 1030-fache Zeit der geschätzten Existenzdauer des Universums

    Testdauer:

    Tests pro Sekunde:

    > 19.000 Jahre

    < 109269

    32

    32

    ALU32

    Ergebnis

    Operand 2

    Operand 1

    Op-AuswahlÜbertrag

    Übertrag

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 9/180

  • 1. Fehlerausschluss nicht möglich

    Fehlerbedingtes Speicherverhalten

    Der Nachweis alle denkbaren Fehlverhalten dieses Typserfordert einen Test mit allen Eingabefolgen der Länge zwei,drei, ...

    x2 x1 y

    00 0

    101

    11

    1110

    56789101112

    x1x2

    56789

    Testschritt

    1234

    &

    4

    123

    y

    alle Eingabemöglichkeiten

    01 → 1110 → 0010 → 0110 → 1111 → 0011 → 0111 → 10

    01 → 1001 → 0000 → 1100 → 1000 → 01

    Testschritt x(n) → x(n+ 1)alle Eingabeänderungen

    4

    123

    alle

    ...

    ...

    1000

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 10/180

  • 1. Fehlerausschluss nicht möglich

    Für Systeme mit Speicherverhalten lassen sich Fehlerkonstruieren, die nur mit wenigen Variationen einer Folgevon Eingabewerten nachweisbar sind.

    Es es sind auch Fehler denkbar, die nur unter weiterenZusatzbedingungen

    Bereich der Temperatur,Bereich der Versorgungsspannung,...

    nachweisbar sind. Der Nachweis aller denkbaren Fehlerwürde folglich erfordern, den Test

    bei unterschiedlichen Temperaturen,mit unterschiedlichen Versorgungsspannungen undund den Variationen beider Parameter

    zu wiederholen. Vom Zeitaufwand her nicht durchführbar.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 11/180

  • 1. Fehlerausschluss nicht möglich

    Schlussfolgerungen

    Komplexe Systeme werden nur mit einer winzigenStichprobe der möglichen Eingaben, Eingabefolgen undvariierbaren Parameterwerten getestet.Selbst für einfache Zielfunktionen lassen sich für jeden Test-satz Fehlverhalten konstruieren, die nicht nachweisbar sind.Es gibt keinen Test, der garantiert jeden Fehler nachweist.Fehler die nur mit einer winzigen Teilmenge der möglichenEingaben nachweisbar sind, verursachen auch im Einsatzselten oder praktisch nie Fehlfunktionen.

    Ein Test soll hauptsächlich die Fehler finden, die

    entweder im Abstand von Stunden, Tagen, ... BetriebsdauerFehlfunktionen verursachen oderdie großen potenziellen Schaden verursachen können

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 12/180

  • 2. Fehlermodellierung

    Fehlermodellierung

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 13/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Nachweisbed. Modellfehler

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 14/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Fehlermodellierung

    Die tatsächlichen Fehler sind zum Zeitpunkt der Testauswahlunbekannt. Zur Konstruktion oder Bewertung von Testsätzenwerden

    Mengen von Nachweisbedingungen oder

    Mengen von Modellfehlern

    aufgestellt, für die

    Eingaben, die die Nachweisbedingungen befriedigen oder dieModellfehler nachweisen, gesucht oder

    der Anteil der befriedigten Bedingungen / nachweisbarenModellfehler bestimmt.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 15/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Fehlernachweisbedingungen

    Fehlfunktion (Datenverfälschung)Fehler

    Eingabemenge, mit der der

    y Eingaben zur FehleranregungEinstellen der BeobachtbarkeitBeobachtungspfad

    M1Fehler angeregt wirdEingabemenge, bei der derM2Fehlerort beobachtbar ist

    M⋄ Nachweismenge des Fehlers

    f2

    f1x0x1x2

    xn−1

    M1 M2M⋄

    Der Nachweis eines lokalen Fehlers in einem System verlangtTesteingaben, die

    den Fehler anregen3 undeinen Beobachtungspfad erzeugen, entlang dem sich dieVerfälschung zu einem beobachtbaren Ausgang fortplanzt.

    3Eingaben, bei denen der Fehler eine lokale Datenverfälschung bewirkt.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 16/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Nachweisbedingungen in einer Gatterschaltung

    Fehler (ständig 1)Fehlfunktion (Ausgabeinvertierung)

    Eingaben zur FehleranregungEinstellung der BeobachtbarkeitBeobachtungspfad

    Signalwerte für den Fehlernachweis

    0 → 11 → 0

    0 → 1 1 → 0y

    0

    x0 x1x2

    x6x5x4x3

    1 11

    1 10 0

    &

    Fehleranregung

    ≥1

    Eingaben zur

    &

    &

    des BeobachtungspfadesSignalwerte zur Sensibilisierung

    Eingabemenge Fehleranregung: M1 = {- - - - -11}Eingabemenge Beobachtbarkeit: M2 = {11001- -}Fehlernachweismenge: M1 ∩M2 = {1100111}

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 17/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Verallgemeinerung

    Der Fehlernachweis kann auch von gespeicherten Zuständenabhängen. Anregung/Beobachtung über eine Eingabefolge.Der Fehlernachweis kann weiterhin voneingabeunabhängigen Bedingungen abhängen, z.B. Bereichder Versorgungsspannung, ...

    Aufspaltung des Fehlernachweises in mehrere Einzelbedingungen:

    x ∈ (M1 ∩M2 ∩ . . . 6= ∅) ∧B1 ∧B2 ∧ . . .(Mi – Eingabemenge einer notwendigen Anregungs- oderBeobachtungsbedingung; Bi – eingabeunabhängigeNachweisbedingung).

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 18/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Modellfehler und Fehlermodelle

    Die im Testobjekt zu suchenden Fehler sind zum Zeitpunktder Testauswahl unbekannt.Ein Modellfehler ist eine geringfügige Veränderung derkorrekten Systembeschreibung.Ein Fehlermodell ist ein Algorithmus/Rezept/Regelwerk,mit dem für das Testobjekt eine Menge von Modellfehlernausgewählt wird.Modellfehler dienen entweder zur Suche geigneterTesteingaben oder zur Abschätzung der Fehlerüberdeckungfür einen gegebenen (meist zu fällig ausgewählten) Testsatz.

    Wiederhole für jeden Modellfehler Wiederhole für jeden Modellfehler

    Zählen, wenn nachweisbar.Test, ob vom Testsatz nachweisbar.Suche einen oder mehrere Tests,

    mit denen er nachweisbar ist.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 19/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    Ein denkbares Fehlermodell für Programme

    Jeder ganzzahlige Operand soll einmal um eins erhöhtund einmal um eins verringert sein.

    fehlerfreies Testobjekt:

    1: int a, b, c, d;

    2: a=b-c;

    3: if (a>2) d=c;4: else d=b;

    Modellfehler (die übrigen Anweisungen bleiben unverändert)

    M1: Veränderung Zeile 2: a=(b+1)-c;

    M2: Veränderung Zeile 2: a=(b-1)-c;

    M3: Veränderung Zeile 2: a=b-(c+1);

    M4: Veränderung Zeile 2: a=b-(c-1);

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 20/180

  • 2. Fehlermodellierung 1. Nachweisbed. Modellfehler

    M5: Veränderung Zeile 3: if ((a+1)>2) d=c;M6: Veränderung Zeile 3: if ((a-1)>2) d=c;M7: Veränderung Zeile 3: if (a>2) d=(c+1);M8: Veränderung Zeile 3: if (a>2) d=(c-1);M9: Veränderung Zeile 4: else d=(b+1);

    M10: Veränderung Zeile 4: else d=(b-1);

    Manche Modellfehler verursachen gleiche Fehlfunktionen undsind identisch nachweisbar, z.B. M1 und M4,:

    (b+ 1)− c = b− (c− 1)Identisch nachweisbare Modellfehler können zu einemModellfehler zusammengefasst werden.

    Ein Fehlermodell ist so zu wählen, dass dieModellfehlerüberdeckung, die sich bestimmen läßt, Rückschlüsseauf die tatsächliche Fehlerüberdeckung erlaubt4.

    4Das hier gewählte Beispielfehlermodell ist kein in der Praxis bewährtesModell, für das diese Zieleigenschaft in der Literatur bisher untersucht wurde.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 21/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    Arten der Testauswahl

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 22/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    Gezielte Testauswahl

    Für jeden Modellfehler wird eine oder werden mehrere Eingabengesucht, die ihn nachweisen.

    rende Nachweisbedingung erfülltEingabemenge, die eine korrespondier-

    relative Größe der Schnittmenge alsSchätzwert für die Wahrscheinlichkeit,dass ein Test aus M den Fehler nachweist

    F

    M

    Nachweismenge eines FehlersΩ

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 23/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    rende Nachweisbedingung erfülltEingabemenge, die eine korrespondier-

    relative Größe der Schnittmenge alsSchätzwert für die Wahrscheinlichkeit,dass ein Test aus M den Fehler nachweist

    F

    M

    Nachweismenge eines FehlersΩ

    Der Nachweis der unbekannten Fehler ist Zufall.Für alle Modellfehler, die sich Nachweisbedingungen miteinem Fehler teilen, impliziert jeder gefundene Test mit einerWahrscheinlichkeit den Nachweis des Fehlers.Die Nachweiswahrscheinlichkeit für tatsächliche Fehler istum so größer,

    je mehr sich die Nachweismengen der Modellfehler mit denender tatsächlichen Fehler überlagernje mehr Tests für jeden Modellfehler gesucht werden.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 24/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    Nachweismenge eines tatsächlichen Fehlers

    Nachweismenge eines Modellfehlers

    Ω Menge der Eingabewerte /Teilfolgendie einen Fehler nachweisen können

    Ein Fehlermodell erzeugt viele Modellfehler.

    Alle potenziellen Fehler sollten eine größere Nachweis-mengenüberscheidung mit mehreren Modellfehlern haben.

    Die Überschneidungen entstehen durch gleiche Anregungs-und Beobachtungsbedingungen.

    ⇒ Modellierung von Anregungs- und Beobachtungsbedingungenfür alle Signal-, Kontroll- oder Datenflusspfad

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 25/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    Für die Modellfehler des Fehlermodells

    �Jeder ganzzahlige Operand soll einmal um einserhöht und einmal um eins verringert sein.�

    berechnete Tests finden auch mit gewisser Wahrscheinlichkeit:

    Verfälschungen um Werte ungleich Eins,falsche Berechnungsvorschriften,Fehler im Kontrollfluss, ...

    Analytisch nicht fassbare Wahrscheinlichkeitsbeziehung.Quantitative Rückschlüsse von der Modellfehlerüberdeckungauf die tatsächliche Fehlerüberdeckung nur überErfahrungswerte möglich.Obwohl modellfehlerbasierte Testsatzberechnung seit 30Jahren eingesetzt wird, bisher kaum quantitative Aussagenhierzu in der Literatur.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 26/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    Zufällige Testauswahl

    renden Modellfehler nachweistNachweismenge, die eine korrespondier-F

    Nachweismenge eines Fehlers

    zufällig ausgeählter Test

    M

    Zufällige, von den Nachweismengen der Modellfehlerunabhängige Auswahl von Eingabewerten.Die Modellfehler dienen nur zur Bewertung.

    Gedankenmodell:

    Füllen des Eingaberaums solange mit Punkten, biszufällig die Menge M getroffen wird. Wenn F genausogroß ist, bekommt F mit derselben Wahrscheinlichkeitein Treffer ab.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 27/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    renden Modellfehler nachweistNachweismenge, die eine korrespondier-F

    Nachweismenge eines Fehlers

    zufällig ausgeählter Test

    M

    Die Nachweiswahrscheinlichkeiten der Modellfehler und dertatsächlichen Fehler hängen von der Anzahl der Tests undden Größen der Nachweismengen, nicht von derenÜberschneidung ab.Vorteil: Analytisch wesentlich einfacher fassbareWahrscheinlichkeitsbeziehung als für eine gezielteTestauswahl (siehe später).Nachteil: lange Testzeiten zur Erzielung hinreichenderFehlerüberdeckungen

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 28/180

  • 2. Fehlermodellierung 2. Arten der Testauswahl

    Mischformen

    Bevorzugung von Testeingaben, die auch Modellfehlernachweisen.Kombinierung eines Zufallstests, der die einfachnachweisbaren Modellfehler nachweist, mit gezieltausgewählten Tests für die restlichen Modellfehler.Intuitive Auswahl basierend auf Erfahrungen über Fehler inanderen Objekten....

    Testsatz kürzer als für Zufallstestsätze gleicherModellfehlerüberdeckungHöhere Nachweiswahrscheinlichkeit für tatsächliche Fehler,deren Nachweismengen sich nicht oder nur unerheblich mitdenen von Modellfehlern überscheiden.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 29/180

  • 2. Fehlermodellierung 3. Haftfehler

    Haftfehler

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 30/180

  • 2. Fehlermodellierung 3. Haftfehler

    Das Haftfehlermodell

    Verbreitetstes Fehlermodell in der Praxis. Digitale Schaltungen.Relativ einfache Fehlersimulation und Testberechung.

    Für jeden Gatteranschluss wird unterstellt:

    ein sa0 (stuck-at-0) Fehlerein sa1 (stuck-at-1) Fehler

    0 10 1

    0 1

    1

    0

    Nachweisimplikation

    zugehörige Eingabe ist Element der Nachweismenge

    sa0-Modellfehler

    sa1-Modellfehler

    &x1

    x2y

    x2 x1 sa0(x1)

    0

    x2 ∧ x11

    sa1(x1) sa0(x2) sa1(x2) sa0(y) sa1(y)

    1 1 1 0

    1

    1

    01

    0

    1

    1

    1

    0

    0

    1

    1

    1

    1

    0

    0

    1

    1

    1

    1

    0

    1

    0

    0

    0

    0

    1

    1

    1

    1

    Nachweisidentität (gleiche Nachweismenge)

    identisch nachweisbar

    implizit nachweisbar

    Zusammenfassung identisch nachweisbarer Fehler. OptionaleStreichung redundanter und implizit nachweisbarer Modellfehler.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 31/180

  • 2. Fehlermodellierung 3. Haftfehler

    Berechnung einer Haftfehlermenge

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    Nachweis

    durch

    9, 12

    12, 13Anzahl der nicht identisch nachweisbaren Fehler:ohne implizit nachgewiesene Fehler:

    2414

    Größe der Anfangsfehlermenge:

    10

    x2

    x1

    x3

    x4

    x5

    1

    3

    2

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    impliziert

    5, 6, 8, 11

    2, 3

    1, 9

    sa0(x1), sa0(x2),

    sa0(z2)

    sa0(z1), sa0(z1.1),

    sa0(y1)

    sa0(y2)

    sa0(x3), sa0(x4), sa1(z2)

    Mengen von identischnachweisbaren Fehlern

    sa1(z1),

    sa1(x1)

    sa1(x2)

    sa1(x3)

    sa1(x4)

    sa1(z2.1)

    sa1(z2.2)

    sa1(x5)

    sa1(z1.1)

    sa0(z2.2), sa0(x5),

    sa0(z2.1), sa1(y1)

    z1

    z2

    z2.1

    z2.2

    &

    &

    &

    &

    z1.1

    y1

    y2

    identisch nachweisbar

    implizit nachweisbarsa1(y2)

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 32/180

  • 2. Fehlermodellierung 3. Haftfehler

    Redundante Fehler

    Eine formal zusammengestellte Fehlermenge enthält oftModellfehler, die die Funktion nicht beeinträchtigen und damitnicht nachweisbar sind.

    1

    10

    10

    z1

    kann nur 0 oder 1 sein

    y

    z2

    G3

    G2

    x1

    x2

    x3

    G1

    &

    &

    &

    G1x1

    x2

    y

    x3

    z1

    z2

    G2

    G3&

    &

    Gatteranschlusses kann mit �0� (sa0 Fehler nichtnachweisbar) bzw. �1� (sa1-Fehler nicht nachweisbar)verbunden sein, ohne dass eine Fehlfunktion entstehtErlaubt Schaltungsvereinfachung.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 33/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Weitere Fehlermodelle

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 34/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Toggle-Test

    Kontrolle, dass jedes logische Signal während des Testsmindestens einmal �0� und einmal �1� ist.

    EingabewerteMenge alle

    sa0(zi) nachweisbar

    sa1(zi) nachweisbar

    zi beobachtbarzi = 0

    zi = 1

    Garantiert Steuerbarkeit für alle Haftfehler.Wahrscheinlichkeit gleichzeitiger Beobachtbarkeit gering.Die Eingabemengen, die lokale Nullen und Einsen einstellen,sind viel größer als die Nachweismengen der dabeiangeregten Haftfehler.Hohe Toggle-Überdeckung impliziert bei gezielter oder zufäl-liger Testauswahl nur eine geringe Haftfehlerüberdeckung.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 35/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Zellenfehlermodell (ROM, LUTs, ...)

    H

    H

    H

    · · ·H

    HH Pull-Up-Element

    Transistornormaler

    Treiber

    program-mierbarerTransistor

    ständig gesperrteinschaltbar

    · · ·

    x0x1x2

    H

    ODER-Matrix

    UND-Matrixy1 = p0 ∨ p2 y0 = p0 ∨ p7

    · · ·p7 = x2x1x0

    p2 = x̄2x1x̄0

    p1 = x̄2x̄1x0

    p0 = x̄2x̄1x̄0

    Einzelprogrammierfehler in einer Tabellenfunktion

    Ein Testsatz mit 100% Zellenfehlerüberdeckung weist allekombinatorischen Funktionsabweichungen der Zellen undalle Haftfehler bei beliebiger Schaltungsrealisierung nach.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 36/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Modellfehler: Alle Eingabevariationen kombiniert mit allenVariationen mit einem D am Ausgang. AA · 2AE Modellfehlerje Zelle (AE – Eingangsanzahl; AA – Ausgangsanzahl).

    x2 x1 x0 y1 y0

    0 0 0 X D

    0 0 0 D X

    0 0 1 X D

    ... ... ... ... ...

    Viele redundante (im Schaltungsverbund nichtnachweisbare) Modellfehler, für die bei derTestsatzberechnung der Beweis der Nicht-Nachweisbarkeiterbracht werden muss.Sinnvoll für programmierte LUTs, und Schaltungen, beidenen die Zellenfehleranzahl nicht erheblich größer als dieHaftfehleranzahl ist: Volladdierer, Decoder, ...Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 37/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Gatterverzögerungsfehler

    ≥1&z3

    z1z2

    Gültigkeitsdauer am PfadanfangGültigkeitsdauer am PfadendetGE

    tGA

    0

    10

    1z3

    z4

    0

    1

    1z1

    z2 0th3, td3th1, td1

    z4≥1

    th2, td2

    00

    td3td1 td2 tGE

    th2 th3tGA th1

    1

    Modellfehler: Zu kurze Haltezeit th, zu langeVerzögerungszeit td. Abtastung ungültiger Werte.2-Pattern-Test: Eine Eingabe zur Initialisierung und einezum NachweisHaftfehlertest + InitialisierungseingabeEin Testsatz mit hohe Haftfehlerüberdeckung besitzt in derRegel auch eine hohe Verzögerungsfehlerüberdeckung.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 38/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Pfadverzögerungsfehler

    Modellfehler: Für alle Pfade durch die Schaltung

    slow-to-rise-Fehler (erhöhte 01-Verzögerung)slow-to-fall-Fehler (erhöhte 10-Verzögerung)

    Robuster Test: Maskierungsausschluss fürMehrfachverzögerungsfehler

    y

    Verzögerungsfehler

    x1

    x2

    y

    nichtnachweisbar

    x2

    x1

    y

    verzögerungsfehler1100

    ≥1≥1

    a)

    nachweisbar

    einfacher

    b)

    00

    (01) (10)(01)

    (10)

    Mehrfach-

    &&

    x2x1

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 39/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Problem Pfadanzahl; Beispiel Matrixmultiplizierer

    Pfade von b0 nach p7

    (a3 · 23 + a2 · 22 + a1 · 21 + a0 · 20) · (b3 · 23 + b2 · 22 + b1 · 21 + b0 · 20) =

    a3b3 · 26 + a2b3 · 25 + a1b3 · 24 + a0b3 · 23a3b2 · 25 + a2b2 · 24 + a1b2 · 23 + a0b2 · 22

    a3b0 · 23 + a2b0 · 22 + a1b0 · 21 + a0b0 · 20a3b1 · 24 + a2b1 · 23 + a1b1 · 22 + a0b1 · 21

    p1p6 p5 p4 p3 p2 p0p7

    a0

    a1

    a2

    a3

    b0 b1 b2 b3

    p0p1

    p2

    p3

    p4

    p5

    p6

    p7

    &

    &

    &

    &

    &

    &

    &

    &

    HAs

    c

    &

    &

    &

    &

    s

    c

    s

    c

    s

    c

    VA

    VA

    VA

    HAs

    c

    &

    &

    &

    &

    s

    c

    s

    c

    s

    c

    VA

    VA

    VA

    HAs

    c

    HAs

    c

    s

    cVA

    s

    cVA

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 40/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    a

    a

    a...

    a

    e f gh i j km

    c

    d

    b

    c

    e

    f g

    e

    bc

    bcd

    d

    f

    b

    f

    fe

    f g

    g

    h

    h

    h

    h

    a-k

    ii

    i

    i

    j

    j

    j

    k

    k

    k

    ll

    l

    l

    l

    m

    mm

    m

    ...

    ...

    ......

    .........

    ...

    ...

    g

    Pfade von b0 nach p7

    die Pfadanzahl exponentiell zumit Maschen nimmtgerichteter Graphin einem

    Ausschluss verlängerter 01- und 10-Wechsels entlang allerPfade schließt überhöhte Verzögerungen aus.In Schaltungen mit rekonvergenten Auffächerungen wächstdie Pfadanzahl exponentiell mit der Schaltungsgröße.Exponenziell wachende Fehlermengen ⇒ nicht praxistauglich

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 41/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Subsumtionshierarchie von Fehlermodellen

    Subsumption bedeutet in den Beschreibungslogiken, dass einKonzept (eine eindeutig beschriebene Menge von Objekten)eine Teilmenge eines anderen Konzepts ist.Fehlermodell A subsumiert Fehlermodell B, wenn einTestsatz, der alle Modellfehler von A nachweist, garantiertauch alle Modellfehler von B nachweist.

    Toggle-Test

    Haftfehler-modell

    Gatterverzögerungs-fehlermodell

    Zellenfehler-modell

    Pfadverzögerungs-fehlermodell

    Subsumtion

    Subsumierte Fehlermodelle sind für die Auswahl überflüssig.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 42/180

  • 2. Fehlermodellierung 4. Weitere Fehlermodelle

    Je höher ein Fehlermodell in der Subsumtionshierarchie steht:

    desto geringer ist tendentiell die Modellfehlerüberdeckungfür denselben Testsatz,desto größer ist tendenziell die Fehlerüberdeckung beigleicher Modellfehlerüberdeckung,desto größer ist der Aufwand für die Testsuche,desto länger muss ein Zufallstestsatz für eine angestrebteFehlerüberdeckung sein.

    Gatterverzögerungs-fehlermodell

    Zellenfehler-modell

    Pfadverzögerungs-fehlermodell

    Subsumtion

    Toggle-Test

    Haftfehler-modell

    für die PraxisKompromiss

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 43/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Fertigungsfehler ICs

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 44/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Fertigungsfehler integrierter Schaltkreisen

    Schaltkreise werden schichtenweise hergestellt:

    Auftragen von Schichten (z.B. Fotolack oder Metall)Belichten des Fotolacks durch eine Maske, die die Geometrieder zu erzeugenden Schichtelemente festlegtEntfernen der belichteten (unbelichteten) Bereiche desFotolacksFortätzen der freiliegenden Schichten neben dem Fotolackund entfernen des Fotolacks.

    typische Herstellungsfehler:

    fehlendes (zu wenig aufgetragenes zu viel weggeätztes) undüberflüsiges (zu viel aufgetragenes, zu wenige weggeätztes)

    Leitungs- oder Isolationsmaterial in einer Schicht.Wirkung: Kurzschlüsse, Unterbrechungen, nicht richtig ein-oder ausschaltende oder zu langsam schaltende Transistoren

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 45/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    CBAB

    C

    A Metall1

    zuätzliches Metallfehlendes Metallfehlende Isolation

    Metall 2

    Metall 2

    Kurzschlüsse oder Unterbrechungen einzelner LeiterbahnenMehrfachfehler durch einzelne Fehlerfläche möglichfür die Testauswahl genügen Einzelfehler, weil Test für sieauch fast alle Mehrfachfehler erkennen

    Notwändige Nachweisbedingungen:

    Anregung: Einstellung einer 0 oder 1 am FehlerortBeobachtung: Sensibilisierung eines Beobachtungepfads vomFehlerort zu einem Ausgang

    Erweiterterungen:

    Kontrolle der Gatter- und Pfadverzögerungen.Kontrolle der Stromaufnahme während des Tests.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 46/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Kurzschlussnachweis mit einem Haftfehlertestsatz

    Zum Nachweis eines Kurzschlusses müssen auf denbeteiligten Leitungen unterschiedlicher Werte eingestellt unddas dabei verfälschte Signal beobachtet werden.Die Menge der möglichen Kurzschlüsse in einer Schaltung istviel größer als die Menge der Haftfehler. (Im ungünstigstenFall quadratische Zunahme mit der Schaltungsgröße.)Die Fehlersimulation und die Testsatzberechnung sind auchetwas aufwändiger als für Haftfehler.Für Haftfehler ausgewählte Testsätze erkennen die meistenKurzschlussmöglichkeiten, so das explizite Modellierungnicht zwingend.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 47/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Kurzschlussnachweis mit einem Haftfehlertestsatz

    Modellfehler (ständig 1)

    xF3

    F4

    F2

    F1

    y

    Nachweismenge der vier Modellfehler

    Nachweismenge des Kurzschlusses

    Schaltungvorgelagerte

    Schaltungnachfolgende

    z1

    z2

    z1.2

    z1.1

    z2.1

    z2.2Kurz-schluss

    für jeden Haftfehler wird mindestens ein Test gesuchtWie wahrscheinlich ist der tatsächliche Fehlernachweis?

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 48/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Nachweismenge der vier sa1-Modellfehler

    Nachweismenge des Kurzschlusses

    Kurzschluss ist nachweisbar

    z2 = 0 und F1 oder F2 nachweisbar oderz1 = 0 und F3 oder F4 nachweisbar

    Überschläge:

    Ein gezielt gesuchter Testsatz mit FC = 1: N ≥ 4 Versuchemit Kurzschlussnachweiswahrscheinlichkeit 50%:

    pE ≥ 1− 0,54 = 93,7%Bei zufälliger Testauswahl ist die Nachweismenge desKurzschlusses etwa der doppelte Mittelwert der Größe derNachweismengen der vier Haftfehler.Grobabschätzung: Kurzschlussüberdeckung etwaHaftfehlerüberdeckung des halben Testsatzes.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 49/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Ein Kurzschluss kann auch ein zusätzlichesSpeicherverhalten verursachen.

    Kurzschluss (1 setzt sich durch)

    Schaltung mit Kurzschluss Ersatz des Kurzschlusses durch ein ODER

    S

    R&

    &

    & &&

    &

    &

    &

    z1

    z2

    z3

    z4

    Ersatzschaltung für z1 = z2 = 1

    z4

    z3

    z3

    z4

    z4

    z3

    z1

    z2

    z5

    z6

    G1G2 G3

    G1

    G2

    G2

    G3

    G3

    z5

    z6

    z5z5

    z6

    z6

    ≥1

    Speicherverhalten → Fehlersimulation und Testberechungdeutlich schwieriger als für Haftfehler.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 50/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Zusammenfassung, Trendabschätzungen

    Kurzschlüsse können sehr vielfältige Fehlerwirkungen haben.Berücksichtigung aller Möglichkeiten in der Regel wedernotwendig, noch vom Aufwand her zu rechtfertigen.

    Gezielt berechnete Haftfehlertestsätze mit hoherFehlerüberdeckung erkennen die meisten Kurzschlüsse.Die Kurzschlussüberdeckung hängt dabei jedoch wenigervon der Haftfehlerüberdeckung, sondern mehr von derAnzahl der Tests, die je Haftfehler gesucht werden ab.

    Bei zufälliger Testauswahl ist die zu erwartendeKurzschlussüberdeckung etwa gleich der zu erwartendenHaftfehlerüberdeckung für einen kürzeren Testsatz.Dieser Zusammenhang erlaubt vertrauenswürdigereVorhersagen, als der bei gezielter Testauswahl.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 51/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Fehlerwirkung von Unterbrechungen

    andereSignalleitungenSubstrat

    Unterbrechung sa0 sa1

    Die abgetrennten Gattereingänge können dauerhaft auf nulloder eins liegen, driften oder den korrekten Wert erst nacherheblicher Verzögerung annehmen.Überwiegender Nachweis mit den Haftfehlertests für dienachfolgenden Gattereingänge.Sicherer Nachweis durch Kontrolle der Signalverzögerungen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 52/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Stuck-open-Fehler

    0 100 1 00 0 11 0 0

    a) b) c)

    x2 yx1 x2 x1 y

    (setzen)10 (rücksetzen)

    01011

    100

    (rücksetzen)0speichern

    x2

    x1

    UDD

    y

    CL

    Unterbrechung innerhalb eines Gatters, so dass dieGatterausgangskapazität für bestimmte Eingaben nicht auf- bzw.entladbar ist.

    Überwiegender Nachweis mit den Haftfehlertests.Sicherer Nachweis durch Kontrolle der Signalverzögerungen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 53/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Reale Schaltkreisfehler und Haftfehler

    Nachweismenge eines tatsächlichen Fehlers

    Nachweismenge eines Modellfehlers

    Ω Menge der Eingabewerte /Teilfolgendie einen Fehler nachweisen können

    Die möglichen Wirkungen von Schaltkreisfehlern sindwesentlich vielfältiger als gezeigt (null setzt sich beiKurzschluss durch, ...)Fast jeder logisch nachweisbare Schaltkreisfehler teilt sichmit einem oder mehreren Haftfehlern den Beobachtungspfadund einen Teil der Anregungsbedingungen.Eine hohe Haftfehlerüberdeckung impliziert auch beigezielter Testauswahl eine hohe Überdeckung fürFertigungsfehler.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 54/180

  • 2. Fehlermodellierung 5. Fertigungsfehler ICs

    Einschätzung der Güte von Schaltkreistests

    Der typische Schaltkreistest hat eine Haft- oder Verzögerungs-fehlerüberdeckung von 95% bis 100% und erkennt etwa 99,9%der Herstellungsfehler. Der Wert 99,9% ist keine publizierte Zahl,sondern über folgenden Überschlag mit typ. Werten abgeschätzt:

    Von 106 gefertigten Schaltkreisen

    sind etwa 10% bis 50% fehlerhaftwerden etwa 99,9% der defekten Schaltkreise von denFertigungstests erkannt und aussortiert.Jeder 1000ste bis 10.000ste eingesetzte Schaltkreis hat einenkaum nachweisbaren Fehler.Jeder 10te Arbeitsplatzrechner enthält einen defektenSchalt- kreis, erkennbar an abweichenden seltenen5

    Fehlfunktionen bei baugleichen Rechnern mit gleicherSoftware.

    5Fehler, die oft Fehlfunktionen verursachen, erkennt der Schaltkreistest.Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 55/180

  • 2. Fehlermodellierung 6. Aufgaben

    Aufgaben

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 56/180

  • 2. Fehlermodellierung 6. Aufgaben1 Unter welchen Bedingungen ist der nachfolgende

    Programmfehler

    1 steuerbar2 beobachtbar3 nachweisbar4 Wählen sie ein Testbeispiel.

    2 Aufstellen einer Haftfehlermenge.

    3 Wie viele unterschiedlich nachweisbare Haftfehler.Kennzeichen Sie für jeden dieser Fehler in der nachfolgendenTabelle, bei welchen Eingaben er am Gatterausgangnachweisbar ist.

    4 Wie viele Zellenfehler ergeben Sie für das Gatter und wiesind diese nachweisbar?

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 56/180

  • 3. Werkzeuge zur Testauswahl5 Wie groß ist die Nachweiswahrscheinlichkeit am

    Gatterausgang für jeden der Haft- und Zellenfehler?

    6 Redundante Haftfehler

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 57/180

  • 3. Werkzeuge zur Testauswahl

    Werkzeuge zur Testauswahl

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 57/180

  • 3. Werkzeuge zur Testauswahl 1. Fehlersimulation

    Fehlersimulation

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 58/180

  • 3. Werkzeuge zur Testauswahl 1. Fehlersimulation

    Fehlersimulation

    Wiederhole für jede Testeingabe

    Berechne die Ausgabe des fehlerfreien Systems

    Wiederhole für jeden Modellfehler

    Berechne die Ausgabe des fehlerhaften Systems

    Vergleiche die Ausgaben des fehlerfreien und desfehlerhaften Systems und protokolliere, welcheModellfehler nachweisbar sind

    Testauswahl zufällig oder manuell6

    Testeingaben, die keine weiteren Modellfehler nachweisen,werden entweder

    beibehalten (fehlerunabhängige Auswahl, lange Testsätze)oder gestichen (fehleranhängige Auswahl, kurze Testsätze).

    6Auch eine bezüglich der unbekannten Fehler zufällige Auswahl, aber oftmit größeren Fehlernachweiswahrscheinlichkeiten.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 59/180

  • 3. Werkzeuge zur Testauswahl 1. Fehlersimulation

    Aufwandsabschätzung:

    Schaltungsgröße: 104 Gatter

    Anzahl der Testschritte / Testeingaben: 104

    Anzahl der Modellfehler: 104

    Simulationsaufwand je Gatter: 10 ns

    gesamter Rechenaufwand: 104 s, ca. 3 Stunden

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 60/180

  • 3. Werkzeuge zur Testauswahl 1. Fehlersimulation

    Bitparalle Logiksimulation

    r1 bis r8 Prozessorregister

    Programm für die Gutsimulation

    =1x2 (r2)x3 (r3)

    lade x1 in Register r1lade x2 in Register r2lade x3 in Register r3r4 = r2 xor r3speichere Inhalt r4 in z1r5 = r2 and r3speichere Inhalt r5 in z3r6 = r1 and r4speichere Inhalt r6 in z2r7 = r1 xor r4speichere Inhalt r7 in y1r8 = r5 or r6speichere Inhalt r8 in y2

    x1 (r1)

    ≥1

    Schaltung eines Volladdierers

    z2 (r6)

    z1 (r4)

    z3 (r5)y2 (r8)

    y1 (r7)=1

    &&

    In jedem Bit eine andere Eingabe simulieren; 132 oder164 des

    Rechenaufwands. Für Beispiel zuvor nur 3 bzw. 6 Minuten.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 61/180

  • 3. Werkzeuge zur Testauswahl 1. Fehlersimulation

    Simulation bis zum ersten Fehlernachweis

    Anzahl der Testschritte

    Aufwand für Gutsimulation + redundante Fehler

    Simulations-aufwand

    Aufwand für nachweisbare Fehler

    Nur noch ≈10% des Aufwands der Simulation aller Fehlermit allen Eingaben.Den meisten Rechenaufwand verursachen redundante (nichtnachweisbare) Fehler.Wichtiges Gütemerkmal von Fehlermodellen: geringer Anteilredundanter Fehler.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 62/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    D-Algorithmus

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 63/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Pfadalgorithmen

    Signalwertfestlegungen

    Modellfehler (sa1)

    0

    1 11

    1 10 0

    &

    Fehleranregung

    des BeobachtungspfadesSignalwerte zur Sensibilisierung

    Ausgangbeobachtbarer

    ≥1

    Eingaben zur

    &

    &

    Beobachtungspfad0

    Vom (Modell-) Fehlerort werden durch Festlegung vonSignalwerten

    in Signalflussrichtung Beobachtungspfade sensibilisiert undentgegen der Signalflussrichtung Steuerbedingungeneingestellt.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 64/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    D-Algorithmus

    Erweiterung der Logikwerte um Pseudo-Werte:

    D Signalwert ist gleich dem Logikwert am Fehlerort

    D̄ Signalwert ist gleich dem inversen Signalwert am Fehlerort

    X Signalwert ist ungültig oder für den Fehlernachweis ohneBedeutung

    Regeln für die Sensibilisierung eines Beobachtungspfades:

    & ≥1

    eindeutig eindeutig eindeutig

    X

    X X

    X

    XXmehrdeutig

    11

    D

    D

    D

    D00

    D D̄

    D

    D

    DD

    für D̄ analog

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 65/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Einstellung von Steuerwerten

    &

    & ≥1

    ≥1 00XX

    X0X 0

    XX

    0

    111

    1

    0 1

    000

    1 0

    eindeutigeindeutigmehrdeutig

    eindeutig mehrdeutig eindeutig

    XX

    X

    XXX

    111

    1

    Jede kombinatorische Schaltung kann in eine Schaltung ausAND, OR, NOT nachgebildet werden.Später Verallgemeinerung auf LUT (look-up table,Tabellenfunktionen).

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 66/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    1

    1

    2

    3

    4

    5

    6

    7

    8

    01X1

    x1x2x3 z3 z2 z1 y

    1

    0

    X

    1111111

    XXXXX

    0

    0

    D

    0D

    0

    0

    D

    0DXXXXXXX

    XXXX

    XX

    XXX0D

    0D0D0D0D0D0D

    DDDDDD

    DDDDD

    0008

    76543210

    D0

    0 x3 = 1

    z2 = 0

    x2 = 0

    x2 = 1

    z3 = D

    y = D

    z1 = 0/D

    x2 = 1

    x1 = 0

    (Widerspruch)

    ≥11

    5

    2

    7

    z16

    x1

    x2

    x3

    y

    &

    3

    &

    1

    00

    4

    DD8

    11 z3

    z2

    Baumsuche:

    Bei der Wertefestlegung kön-nen Widerspüche auftreten.Zurück zur letzten mehr-deutigen Entscheidung.Keine Lösung nach Durch-musterung des gesamten Baums. ⇒ Fehler nicht nachweisbar

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 67/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Erfolgsrate der Testberechnung:

    Anteil der Fehler, für die ein Test gefunden oder für die derBeweis �nicht nachweisbar� erbracht wird.

    Die Testsuche für einen Fehler kann hunderte vonWertefestlegungen beinhalten.Der Suchraum wächst exponentiell mit der Anzahl dermehrdeutigen Festlegungen; Suchraumgrößen > 230...40 nichtmehr vollständig durchsuchbar.Abbruch der Suche nach einer bestimmten Rechenzeit.

    Heuristigen:

    frühe Erkennung von Widersprüchen,Suchraumbegrenzung undgute Suchraumstrukturierung.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 68/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Implikationstest (Widerspruchsfrüherkennung)

    Aus den berechneten Wertefestlegungen alle eindeutigfolgenden Werte berechnen.

    SignalflussrichtungImplikation in D-Pfad- und Rück-

    wärtsimplikation

    *

    * eindeutige Weiterführung

    G2

    G3

    X

    1

    0

    X

    G1

    01

    ≥1 X

    &

    X

    0

    X&

    X

    &

    ≥1 D̄X

    1

    D

    X

    Mindert die Entscheidungsbaumtiefe.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 69/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Rückwärtsimplikation über mehrere Gatterebenen:

    VarianteVariante21 1 2

    Variante1 2

    0G3

    G2

    G10 X

    X 0

    00

    0XX

    0

    XX0 X

    0X

    0 0≥1

    ≥1y

    x1

    x2

    x3

    &

    Für y = 1 gibt es zwei Einstellmöglichkeiten.

    Für beide Möglichkeiten muss x2 = 1 sein.

    Das Erkennen von Implikationen dieser Art mindert dieBacktracking-Häufigkeit um bis zu 80 %.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 70/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Suchraumbegrenzung

    Der D-Algorithmus baut den Suchbaum über allemehrdeutigen Wertefestlegungen auf:

    & X

    X X

    X

    XX

    &0XX

    X0X 0

    XX

    0

    D

    D

    DDXX

    X

    XXX

    111

    1

    für den D-Pfadmehrere Alternativen

    mehrdeutige Wertefestlegungen

    Nur die Schaltungseingänge können unabhängig voneinanderalle Wertevariationen annehmen.Es genügt, den Suchbaum mit den Eingabewertefestlegungenaufzubauen.Das begrenzt den Suchraum auf 2NE (NE – Eingangsanzahl).Verringerung des Rechenaufwands um Zehnerpotenzen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 71/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    &

    &

    Start

    1 2 34

    5

    1

    Suchbaum

    Widerspruch Implikationstest

    Testobjekt

    1

    x1

    0

    x2

    1 → 0

    x3

    0 → 1 →X 1 → 0

    x4

    1

    10/D

    3: x2 = 0

    x3 = 0

    4: x4 = 1 x4 = 0

    5: x1 = 1

    1: x3 = 1

    2: x4 = 0 x4 = 1

    Erfolg

    D

    Lange Steuerpfade vom Fehlerort und vom D-Pfad zuEingängen.Aufbau des Suchbaums über Eingangssignale.Wenn Implikationstest-Widerspruch, letzteEingabefestlegung invertieren.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 72/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Geschätzte Erfolgswahrscheinlichkeiten

    g(. . .) Signalgewicht, Auftrittshäufigkeit einer 1

    x1 = 1x2 =X; g(x2) = 60%x3 =X; g(x3) = 30%

    x4 =X; g(x4) = 50%x5 =X; g(x5) = 60%x3 = 0;

    &

    ≥1

    z1 =X; g(z1) = 82%

    y = 0

    ≥1z2 =X; g(z2) = 20%

    x3 = 0z1 = 1

    Schätzen der Signalgewichte (Auftrittshäufigkeit einer �1�)über ein kurze Simulation mit Zufallswerten oder analytisch.Wahl der Steuerwerte / Beobachtungspfade, die mit größererWahrscheinlichkeit aktivierbar / sensibilisierbar sind.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 73/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Komplexe Funktionsbausteine

    Beschreibung durch Tabellenfunktion (Bsp. Volladdierer):

    01

    0011

    0101

    0011

    01

    x0x1x2

    00001111

    s c

    0 011

    1

    1

    0

    00

    0010111

    XXX00

    01DXX

    1XXXD

    11XX1

    01DD̄D

    00000

    10DD̄D, 1D0D̄D

    11111, 111001

    gegeben Lösungsmenge

    Vervollständigung des Vektors der gegebenenAnschlusswerte durch Vergleich mit allen Tabellenzeilen:

    �1� und �0� passen nur auf �1� und �0��X� passt immer�D� muss für �D=0� und für �D=1� passen

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 74/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    Implikationstest an einem Volladdierer

    ??

    =1

    bekanntnicht eindeutig

    eindeutig

    bekannt

    Volladdierer

    x2 = 1

    y2 = 1y1 = 1

    x1 = 1 x3 = 1

    x1x2x3 ?

    ? ≥1

    y1 = 1=1

    y2 = 1&

    &

    An der Gatterbeschreibung eines Volladdierers ist dieImplikation y1 = y2 = 1 ⇒ x1 = x2 = x3 = 1 nicht zuerkennen. Lösungsfindung über Baumsuche.Bei Zusammenfassung zu einer Tabellenfunktion wird dieLösung bereits bei der Anschlusswertevervollständigungerkannt.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 75/180

  • 3. Werkzeuge zur Testauswahl 2. D-Algorithmus

    0

    Implikationenba c d

    a b c d

    D

    0 X 1

    X XX

    Multiplexer

    1 10 010 0 1

    s1s0

    X

    1 1 1 X

    X

    1

    zero lsb msb

    Ausgängelsb

    Codeumsetzer

    Eingänge

    0 0 01 0XXX

    1XX

    001X

    00001

    zero msb

    1 0 00000

    0101

    0011

    D

    �lsb� hängt bei �zero=0� und �msb=1� nicht von�b� ab. Eindeutiger D-Pfad über Multiplexer.Tabelleneingabewerte �X� (Eingang beeinflusst nicht dieAusgabe) führt zu Tabellen mit � 2AE Tabellenzeilen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 76/180

  • 3. Werkzeuge zur Testauswahl 3. Testsuche Sequ. Schaltungen

    Testsuche Sequ. Schaltungen

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 77/180

  • 3. Werkzeuge zur Testauswahl 3. Testsuche Sequ. Schaltungen

    Sequenzielle Schaltungen

    Zurückführung auf kombinatorische Schaltungen:

    nur Abtastung

    T T T

    Testobjekt

    f1

    z

    f2 f1

    z

    f2

    x y xn−3 yn

    Testeingabeberechnung

    Testberechnung wie für eine kombinatorische SchaltungZeitversatz zwischen Ein- und Ausgabe berücksichtigen

    x

  • 3. Werkzeuge zur Testauswahl 3. Testsuche Sequ. Schaltungen

    Verarbeitung in mehreren Zeitebenen

    T TT

    f1 f2 f1

    f1

    f2

    Testobjekt

    x yz

    xn−3

    xn−2

    yn

    Testeingabeberechnung

    die kombinatorisch Ersatz-schaltung enthält mehrereKopien derselben Schaltungdie Haftfehler sind in jeder KopieEingaben mehrerer Zeitebenen / Mehr-Pattern-Test:

    x

  • 3. Werkzeuge zur Testauswahl 3. Testsuche Sequ. Schaltungen

    Schaltungen mit Rückführung

    VA

    Takt

    sn

    bn

    an

    cn

    D

    VA

    cn−1

    cn

    an

    bn−1

    bn

    an−1

    cn+1

    an+1

    bn+1

    sn−1

    sn

    sn+1

    VA - Volladdierer

    VA

    VA

    aufgerollter Addiererserieller Addierer

    Ersatzschaltung aus unbegrenzt vielen KopienRegeln zur Begrenzung der Länge der Steuer- undBeobachtungspfade

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 80/180

  • 3. Werkzeuge zur Testauswahl 4. Prüfgerechter Entwurf

    Prüfgerechter Entwurf

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 81/180

  • 3. Werkzeuge zur Testauswahl 4. Prüfgerechter Entwurf

    Prüfgerechter Entwurf (DFT Design for Test)

    Entwurfsregeln, die sicherstellen, dass

    sich Testsätze berechnen lassendie Tests durchführbar sindGrundregel: Testbarkeit beim Entwurf berücksichtigen

    Beispiel:

    isolierten Test eingebetteter Systeme

    übrige Schaltung

    Eingänge

    Ausgän

    ge

    Funktionsblockeingebetteter

    (z.B. RAM)

    Mux E Mux A

    Erlaubt getrennte Testsatzberechnung. Viel einfacher.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 82/180

  • 3. Werkzeuge zur Testauswahl 4. Prüfgerechter Entwurf

    Scan-Verfahren

    Übergangs-funktion

    x y

    TestTakt

    01

    Rückführungen in SchieberegisterUmschaltmodus der Register in den

    Scan-Register

    Testobjekt

    soutsin

    sin

    Takt

    sout

    Test

    Registereingang Registerausgang

    Erlaubt ein serielles Beschreiben und Lesen der Register inden Rückführungen.Register werden zu Testeingängen und -ausgängen.Umgeht das Problem der Testsatzberechnung fürSchaltungen mit Rückführungen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 83/180

  • 3. Werkzeuge zur Testauswahl 4. Prüfgerechter Entwurf

    Zusammenfassung

    Das Haftfehlermodell ist das an meisten angewendeteFehlermodell.Modellfehleranzahl etwa proportional zur Systemgröße.Erlaubt relativ einfache und effiziente Algorithmen für dieBerechnung der Fehlermengen, die Fehlersimulation und dieTestberechnung für speicherfreie digitale Schaltungen.Anwendbarkeit der Tessatzauswahl- undBewertungstechniken durch prüfgerechten Entwurf sichern.

    Andere Testauswahl und -bewertungstechniken werden imWeiteren mit den Haftfehler-basierten Techniken verglichen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 84/180

  • 3. Werkzeuge zur Testauswahl 5. Aufgaben

    Aufgaben

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 85/180

  • 4. Zufallstest1 Vorgabe Programm zur Gutsimulation in c. Aufgabe:

    Erweiterung, so dass in Bit 0 Fehler ...

    2 D-Algorithmus per Hand.

    3 Schaltung mit festgelegten Werten vorgeben. Alle implizitfestgelegten Werte bestimmen.

    4 Beispielschaltung als Schaltplan vorgeben. Wie sieht dieaufgerollte Schaltung für die Testsuche aus?

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 86/180

  • 4. Zufallstest

    Zufallstest

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 86/180

  • 4. Zufallstest

    Zufällige Testauswahl

    renden Modellfehler nachweistNachweismenge, die eine korrespondier-F

    Nachweismenge eines Fehlers

    zufällig ausgeählter Test

    M

    Zufällige, von den Nachweismengen der Modellfehlerunabhängige Auswahl von Eingabewerten.Die Modellfehler dienen nur zur Bewertung.Die Nachweiswahrscheinlichkeiten der Modellfehler und dertatsächlichen Fehler hängen von der Anzahl der Tests undden Größen der Nachweismengen ab.

    Ziel des Abschnitts:

    Untersuchung der statistischen Zusammenhänge.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 87/180

  • 4. Zufallstest 1. Nachweiswahrscheinlichkeit

    Nachweiswahrscheinlichkeit

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 88/180

  • 4. Zufallstest 1. Nachweiswahrscheinlichkeit

    Nachweis kombinatorischer Fehler

    M⋄.iΩ

    Fehlverhalten wird durch eine EingabemengeM�i aus Ω nachgewiesenNachweiswahrscheinlichkeit je Testschritt: relativeAuftrittshäufigkeit eines Eingabevektors x aus derNachweismenge M�i

    p�i = P (x ∈M�i)Sonderfall: alle Eingabewerte treten mit gleicher Häufigkeitauf:

    p�i =|M�i||Ω|

    (|. . .|– Anzahl der Elemente der Menge)

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 89/180

  • 4. Zufallstest 1. Nachweiswahrscheinlichkeit

    Experimentelle Abschätzung

    p�i ≈n�in

    (n�i – Anzahl der Testschritte, die Fehler i nachweisen; n –Anzahl aller ausgeführten Testschritte)

    n

    n⋄i kurzer Testsatzlanger Testsatz

    Zunahme der Schätzgenauigkeit

    Zunahme der Schätzgenauigkeit mit nberücksichtigt unterschiedliche Auftrittshäufigkeiten derEingabewerteauch für Fehler, deren Nachweis Eingabefolgen verlangt

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 90/180

  • 4. Zufallstest 1. Nachweiswahrscheinlichkeit

    Nachweiswahrscheinlichkeit mit n Testschritten

    Testsatz weist den Fehler n-mal mit einer Wahrsch. p�i nachNachweis mindestens von einem, d.h. �nicht vonkeinem� Testschritt

    p�i (n) = 1− (1− p�i)n

    Übergang zur e-Funktion:

    p�i (n) = 1− en·ln(1−p�i)

    mit der Taylor-Reihe

    ln (1− p�i) = −∞∑

    k=1

    pk�ik

    und p�i � 1 (für die Testauswahl interessierender Bereich):

    p�i (n) = 1− e−n·p�i

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 91/180

  • 4. Zufallstest 1. Nachweiswahrscheinlichkeit

    Nachweiswahrscheinlichkeit und Testzeit

    ψ�i =p�iτ0

    Häufigkeit der falschen Ergebnisse je Fehlerτ0 Dauer eines Testschritts

    tT = n · τ0 Testdauer

    p�i (n) = 1− e−n·p�i ⇒ p�i (tT) = 1− e−tT·ψ�i

    auch für Testsätze mit unterschiedlich umfangreichenTestschritten geeignet

    1 Beispielwerte:

    n · p�i = tT · ψ�i 12 1 2 4 8

    p�i (n) 39% 63% 86% 98% 100%

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 92/180

  • 4. Zufallstest 1. Nachweiswahrscheinlichkeit

    Typische Beobachtung

    zwingend wichtig

    nachweisbarübersehen

    störend

    nachweisbar nachweisbar

    störendBeseitigung Beseitigung

    gutschwer zu

    wenig

    schlecht kaum

    nicht

    1

    ψ⋄ in Zeiteinheiten

    10−8 10−910−710−610−510−410−310−210−1

    Die Häufigkeit der Fehlfunktionen je Fehler variieren überviele Zehnerpotenzen.Die am schlechtesten nachzuweisenden Fehler stören aucham wenigsten und umgekehrt.Bei einem Zufallstest werden die am meisten störendenFehler tendenziell zuerst gefunden und beseitigt.Mit der Testzeit nimmt die Häufigkeit der falschenErgebnisse viel schneller als die Anzahl der Fehler ab.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 93/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Fehleranzahl und Fehlerüberdeckung

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 94/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Fehleranzahl vor dem Test

    Vor den Test sind die vorhandenen Fehler nicht bekannt.

    Die Anzahl der möglichen Fehler ist sehr groß.

    Jeder der potenziellen Fehler ist nur mit einerverschwindend geringen Häufigkeit hi vorhanden.

    Modellierung der Fehleranzahl vor dem Test als eine Summefehlerbezogener Zufallsgrößen:

    ϕ� =

    NPot�∑

    i=1

    ϕ�i

    mit ϕ�i ∈ {0, 1}.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 95/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Ein potenzieller Fehler i kann da oder nicht da sein:

    Versuchsergebnis Wert Wahrscheinlichkeit

    Fehler i nicht vorhanden ϕ�i = 0 1− h�iFehler i vorhanden ϕ�i = 1 h�i

    (h�i – Auftrittshäufigkeit Fehler i; NPot� – Anzahl derpotentiellen Fehler)

    Erwartungswert der Summanden:

    E (ϕ�i) = h�i

    Varianz der Summanden:

    D2 (ϕ�i) = h�i · (1− h�i)Varianz für h�i � 1 gleich Erwartungswert:

    D2 (ϕ�i) = h�i = E (ϕ�i)

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 96/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Einfach zu modellierender Sonderfall: Alle potenziellen Fehlertreten unabhängig voneinander mit sehr geringer Häufigkeit auf(h�i � 1)

    Erwartungswert gleich Varianz; Poisson-Verteilung

    E (ϕ�) = D2 (ϕ�) =

    NPot�∑

    i=1

    h�i

    P (ϕ = k) = Poi (k, E (ϕ)) = e−E(ϕ) · E (ϕ)k

    k!Die Verteilung errechnet sich aus dem Erwartungswert:

    0 5 10 0 5 100

    0,6 0,3

    0,4

    0,2

    0,2

    0,1

    0

    k k

    E(ϕ⋄) = 0,6 E(ϕ⋄) = 3

    0,1

    0 3010 200

    k

    E(ϕ⋄) = 15

    P (ϕ⋄ = k)

    ab etwa 10 zu erwartenden Fehlern → NormalverteilungProf. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 97/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Zählprozess der nachweisbaren Fehler

    Im Prinzip derselbe Zählprozess, aber es werden nur dieaufgetreten Fehler, die auch nachweisbar sind, gezählt:

    ϕ�√ =

    NPot�∑

    i=1

    ϕ�√i

    ein potenzieller Fehler i kann da und nachweisbar oder nichtda bzw. nicht nachweisbar sein:

    Versuchsergebnis Wert Wahrscheinlichkeit

    Fehler i nicht nachweisbar ϕ�√i = 0 1− h�i ·(1− e−tT·ψ�i

    )

    Fehler i nachweisbar ϕ�√i = 1 h�i ·(1− e−tT·ψ�i

    )

    (h�i – Auftrittshäufigkeit Fehler i; p�i (t) –Nachweiswahrscheinlichkeit Fehler i für Testdauer t; NPot� –Anzahl der potentiellen Fehler).

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 98/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Für unabhängig voneinander auftretende und nachweisbareFehler ist auch ein Poisson-Prozess, nur mit einem kleinerenErwartungswert:

    E(ϕ�√) = D2

    (ϕ�√) =

    NPot�∑

    i=1

    h�i ·(

    1− e−tT·ψ�i)

    P(ϕ�√ = k

    )= Poi

    (k, E

    (ϕ�√)) = e−E(ϕ) ·

    E(ϕ�√)k

    k!

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 99/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Zählprozess der nicht nachweisbaren Fehler

    Im Prinzip derselbe Zählprozess, aber es werden nur dieaufgetreten Fehler, die nicht nachweisbar sind, gezählt:

    ϕ�! =

    NPot�∑

    i=1

    ϕ�!i

    ein potenzieller Fehler i kann da und nicht nachweisbar odernicht da bzw. nachweisbar sein:

    Versuchsergebnis Wert Wahrscheinlichkeit

    Fehler i nicht vorhanden ϕ�!i = 0 1− h�i · e−tT·ψ�iFehler i vorhanden ϕ�!i = 1 h�i · e−tT·ψ�i

    (h�i – Auftrittshäufigkeit Fehler i; ψ�i – Häufigkeit derFehlfunktionen durch Fehler i; tT – Testzeit; NPot� – Anzahl derpotentiellen Fehler).

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 100/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Auch die Anzahl der nicht nachweisbaren Fehler ist, wenn dieFehler unabhängig voneinander auftreten und nachweisbar sind,poisson-verteilt:

    E (ϕ�!) = D2 (ϕ�!) =

    NPot�∑

    i=1

    h�i · e−tT·ψ�i

    P (ϕ�! = k) = Poi (k, E (ϕ�!)) = e−E(ϕ) · E (ϕ�!)

    k

    k!

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 101/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Fehlerüberdeckung (fault coverage)

    FC =ϕ�√

    ϕ�Für den Fall, die aufgetretenen Fehler und ihre Anzahl ϕ� sindbekannt:

    FC =ϕ�√

    ϕ�=

    1

    ϕ�·ϕ�∑

    i=1

    ϕ�√i

    Verteilung der fehlerbezogenen Zufallsgrößen:

    Versuchsergebnis Wert Wahrscheinlichkeit

    Fehler i nicht vorhanden ϕ�√i = 0 1− p�iFehler i vorhanden ϕ�√i = 1 p�i

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 102/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Erwartungswert und Varianz, wenn alle Fehler unabhängigvoneinander nachweisbar sind:

    E (FC) =1

    ϕ�·ϕ�∑

    i=1

    p�i; D2 (FC) =

    1

    ϕ2�·ϕ�∑

    i=1

    p�i · (1− p�i)

    Sonderfall: alle Nachweiswahrscheinlichkeiten gleich p sind →Binomialverteilung:

    P

    (FC =

    k

    ϕ�

    )=

    ϕ�

    k

    · pk · (1− p)ϕ�−k

    mit dem Erwartungswert und der Varianz:

    E (FC) = p

    D2 (FC) =p · (1− p)

    ϕ�

    Die Varianz nimmt umgekehrt proportional mit der Anzahlder vorhandenen Fehler ab.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 103/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Ableitung der Verteilung der Fehlerüberdeckung aus derVerteilung der Anzahl der (nicht) nachweisbaren Fehler:

    Bei einer große Anzahlvorhandener Fehler undErwartungswerten immittleren Bereich ist dieFehlerüberdeckungnäherungsweisenormalverteilt.

    P (ϕ⋄! = k)

    P (FC = x)

    90% 100%80%70%x

    0,1

    0

    k20 10 030

    E(ϕ⋄!) = 15

    Für zu erwartende Fehlerüberdeckungen nahe100% ist die Anzahl dernicht nachweisbarenFehler näherungsweisepoisson-verteilt. 100%90%80% x

    P (ϕ⋄! = k)

    P (FC = x)5

    0,3

    0,2

    0,1

    0010 k

    E(ϕ⋄!) = 3

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 104/180

  • 4. Zufallstest 2. Fehleranzahl und Fehlerüberdeckung

    Experimente zur Haftfehlerüberdeckung

    digitale Benchmark-Schaltung c3540 mit 3606 HaftfehlernMittlung der durch Fehlersimulation bestimmtenTreppenfunktionen für 1.000 verschiedene Zufallstestsätze

    ϕM√3600

    3400

    3200

    3000

    2800

    Anzahl der nachweisbaren

    der TestsatzlängeFehler in Abhängigkeit von

    n = 430

    n = 250

    103102 104

    n = 430

    n = 250

    90%

    80%

    90%

    FC

    FC =ϕM√

    3605

    P (FC = x)

    Dichte der Fehlerüberdeckung

    Testsatzlängen nfür zwei verschiedene

    x100%

    n

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 105/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Effektive Fehleranz.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 106/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Nachweisabhängigkeiten

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    0 1

    nachweisbar

    nachweisbar

    x2

    x1

    x3

    x4

    x5

    z1

    z2

    z2.1

    z2.2

    &

    &

    &

    &

    z1.1

    y2

    y1

    identisch

    implizit

    Die Modellfehler für ein System teilen sich Nachweisbedingungen:identisch nachweisbarimplizit nachweisbargemeinsame Anregungs- oder Beobachtungsbedingungen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 107/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Gedankenexperiment

    Gegeben sei eine idealisierte Fehlermenge aus unabhängignachweisbaren Fehlern. Für die Varianz der Fehleranzahlexistieren dann folgende oberen Schranken:

    D2 (FC) =1

    ϕ2�·ϕ�∑

    i=1

    p�i · (1− p�i)

    <1

    ϕ2�·ϕ�∑

    i=1

    p�i =E (FC)

    ϕ�

    <1

    ϕ2�·ϕ�∑

    i=1

    (1− p�i) =1− E (FC)

    ϕ�

    Man nehme für jeden Fehler einen identisch nachweisbarenFehler hinzu.

    Stets gleichzeitiger Nachweis der identischen Fehler.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 108/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Keinen Einfluss auf die Fehlerüberdeckung sowie derenVerteilung und Varianz,aber rechnerisch doppelte Fehleranzahl, d.h. halbe Varianz,falls das unabhängig nachweisbare Fehler wären

    Für die Testauswahl werden identisch und implizit nachweisbareModellfehler weitgehend aus den Modellfehlermengen gestrichen.Aber einige Identitäten und Implikationen werden nicht erkanntund gemeinsame Steuer- und Beobachtungsbedingungen sindunvermeidbar.

    Aus den Obergrenzen für unabhängig nachweisbare Fehler(D2 (FC) <

    E (FC)

    ϕ�

    )∧(D2 (FC) <

    1− E (FC)ϕ�

    )

    und experimentell bestimmten Erwartungs- und Varianzwertenlässt sich eine fiktive Obergrenze der Anzahl unabhängignachweisbarer Fehler bestimmen, die dieselbe Verteilung derFehleranzahl bewirken.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 109/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Effektive Fehleranzahl

    Definition 1

    Effektiven Fehleranzahl: Anzahl der unabhängig nachweisbarenFehler, mit denen sich dieselbe Streuung ergeben würde, abernicht größer als die die Modellfehleranzahl

    ϕeff = min

    (E (FC)

    D2 (FC),

    1− E (FC)D2 (FC)

    , ϕM

    )

    Maß dafür, wie viele unabhängig nachweisbare Fehler einerModellfehlermenge wert ist odereine �sanfte� Obergrenze für die Wahl der Größe vonModellfehlermengen zur Abschätzung der garantierbarenFehlerüberdeckung für einen Zufallstest.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 110/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Experimente zur Haftfehlerüberdeckung

    ϕM√3600

    3400

    3200

    3000

    2800

    Anzahl der nachweisbaren

    der TestsatzlängeFehler in Abhängigkeit von

    n = 430

    n = 250

    103102 104

    n = 430

    n = 250

    90%

    80%

    90%

    FC

    FC =ϕM√

    3605

    P (FC = x)

    Dichte der Fehlerüberdeckung

    Testsatzlängen nfür zwei verschiedene

    x100%

    n

    Fehlerüberdeckungsverteilung Benchmark-Schaltung c3540.Varianz deutlich größer D2 (FC)� 1−E(FC)ϕM

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 111/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    ϕM√

    103102 104

    3600

    3400

    3200

    3000

    2800

    n = 160

    n = 320n = 800

    n = 1600n = 3200

    n

    Berechnung der effektiven Fehler-anzahl für die experimentellbestimmten Verteilungsgebirgeder Haftfehlerüberdeckung derBenchmark-Schaltung c3540

    mit alle 3606 Haftfehlerneiner Stichprobe von 1.000einer Stichprobe von 300 Modellfehler.

    n 160 320 800 1600 3200

    ϕeff (n) für ϕM = 3806 702 839 1042 2000 3605

    ϕeff (n) für ϕM = 1000 594 629 630 1000 1000

    ϕeff (n) für ϕM = 300 297 268 277 231 300

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 112/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    n 160 320 800 1600 3200

    ϕeff (n) für ϕM = 3806 702 839 1042 2000 3605

    ϕeff (n) für ϕM = 1000 594 629 630 1000 1000

    ϕeff (n) für ϕM = 300 297 268 277 231 300

    Bei �vollständiger Haftfehlermenge� Verringerung bis 1/5.Fälle: Nachweis fast alle Fehler, Fehlerstichproben

    keine nennenswerte Minderungoffenbar keine erheblichen Nachweisabhängigkeiten.

    Schlussfolgerung

    Die Modellfehleranzahl bestimmt die Varianz und damit dieSchätzgenauigkeit der Fehlerüberdeckung.Die Abnahme der Varianz D2 (ϕ) ∼ 1/ϕM gilt nur für zurTestobjektgröße kleine Fehlerstichproben ϕM.Beschränkung auf Fehlerstichprobe zweckmäßig.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 113/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    Ein zweites Experiment zur Haftfehlerüberdeckung

    digitale Benchmark-Schaltung c2670 mit 2670 Haftfehlern

    k

    k

    k

    ϕM√

    n = 106

    n = 105

    n = 104101 102 103 104 105 106 n

    P (ϕM√ = k)

    P (ϕM√=k)

    P (ϕM√ = k)

    2500 2600 2700

    2400 2500 2600

    2300 2400 2500

    2200

    2300

    2400

    2500

    2600

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 114/180

  • 4. Zufallstest 3. Effektive Fehleranz.

    k2400 2500 2600

    P (ϕM√ = k)

    Verteilung mit mehreren Maxima

    Wie kann ein Zählprozess eine solche Verteilungen haben?

    Gedankenexperiment:

    zehn Modellfehler, davon acht identisch nachweisbarWertebereich für die Anzahl der nachgewiesenen Fehler:

    ϕM√ ∈ {0, 1, 2, 8, 9, 10}

    Die Verteilung zerfällt in zwei Teilkämme.

    Die Haftfehlermenge des c2670 enthält offenbar ca. 80 (fast)identisch nachweisbare Fehler.Zufallstest ist offenbar noch ein aktuelles Forschungsthemamit vielen offenen Fragestellungen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 115/180

  • 4. Zufallstest 4. Fehlerprofil

    Fehlerprofil

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 116/180

  • 4. Zufallstest 4. Fehlerprofil

    Fehlerprofil

    Jeder potenzielle Fehler wird durch zwei Parameter beschrieben:

    Auftrittshäufigkeit undHäufigkeit, mit der er falsche Ergebnisse verursacht.

    Zur Berechnung der zu erwartenden Anzahl der (nicht)nachweisbaren Fehler nach

    E (ϕ�!) =NPot�∑

    i=1

    h�i · e−tT·ψ�i

    E(ϕ�√

    )=

    NPot�∑

    i=1

    h�i ·(1− e−tT·ψ�i

    )

    genügt die Kenntnis des Fehlerprofils des ungetestenen Systems:

    f� (ψ)

    das für jeden Wert der Häufigkeit der falschen Ergebnisse ψ ≥ 0angibt, wie häufig solche Fehler vorhanden sind.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 117/180

  • 4. Zufallstest 4. Fehlerprofil

    Unter Kenntnis der Fehlerprofil beträgt

    die zu erwartende Anzahl der mit der Testzeit tnachgewiesenen Fehler:

    E(ϕ�√) =

    ∫ ∞

    0f� (ψ) ·

    (1− e−tT·ψ�

    )· dψ

    die zu erwartende Anzahl der nicht nachgewiesenen Fehler:

    E (ϕ�!) =

    ∫ ∞

    0f� (ψ) · e−tT·ψ� · dψ

    die zu erwartende Anzahl der Fehler vor dem Test:

    E (ϕ�) = E (ϕ�! (tT = 0)) =

    ∫ ∞

    0f� (ψ) · dψ

    das Fehlerprofil der nicht nachweisbaren Fehler7

    f�! (ψ (tT)) = f� (ψ) · e−tT·ψ�7Vor erst sei angenommen, das alle erkannten Fehler beseitigt werden.

    Dann ist das gleichzeitig die Anzahl der nach der Fehlerbeseitigung nochvorhandenen Fehler, die im Einsatz Fehlfunktionen verursachen.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 118/180

  • 4. Zufallstest 4. Fehlerprofil

    Fehlfunktionen nach der Fehlerbeseitigung

    Die zu erwartende Häufigkeit der Fehlfunktionen der Fehlermit einem bestimmten Wert von ψ ist

    ψ · f�! (ψ, tT) = ψ · f� (ψ) · e−tT·ψ

    Integriert über alle Werte von ψ ergibt sich die Häufigkeitalle Fehlfunktionen:

    E (ψ� (tT)) =∫ ∞

    0

    ψ · f� (ψ) · e−tT·ψ · dψ (1)

    Fakt 2

    Die Erwartungswerte der Anzahl nachweisbaren und nichtnachweisbaren Fehler und der Häufigkeit der Fehlfunktionennach Beseitigung der erkannten Fehler berechnen sich bei einemZufallstest aus dem Fehlerprofil und der Testdauer.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 119/180

  • 4. Zufallstest 4. Fehlerprofil

    Abschätzung des Fehlerprofils

    Das Fehlerprofil kann seinseits abgeschätzt werden ausexperimentell bestimmten Verläufen

    der Testdauer und der gefundenen Fehlerder Testdauer und der Fehlfunktionen nach Beseitigung dergefundenen Fehler.

    für

    die tatsächlichen Fehler odereine Modellfehlermenge mit einem ähnlichen Fehlerprofil.

    Annahme einer parametrierten Funktion für die Fehlerprofil.Parameterabschätzung für die experimentell bestimmtenWerte.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 120/180

  • 4. Zufallstest 4. Fehlerprofil

    Potenzfunktion als Fehlerprofil

    Typische Beobachtung bei einem Zufallstest:Eine Halbierung der Anzahl der nicht nachweisbaren Fehlererfordert die 2...10-fache Testzeit

    O (E (ϕ�!)) = t−kT 0,3 < k < 1(O (. . .) – asymptodische Ordnung).

    Testsatzverlängerung für ϕ�!/2 2 3 4 5 8

    Ordnung k 1 0,63 0,5 0,43 0,33

    Was für ein Fehlerprofil f� (ψ) eingesetzt in

    E (ϕ�! (tT)) =∫ ∞

    0

    f� (ψ) · e−tT·ψ · dψ︸ ︷︷ ︸Funktion der Ordnung t−kT

    bewirkt das?Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 121/180

  • 4. Zufallstest 4. Fehlerprofil

    Gesucht ist ein Fehlerprofil f� (ψ) für das

    zum Zeitpunkt tT0 das Integral∫ ∞

    0f� (ψ) · e−tT0·ψ · dψ = E (ϕ�)

    die Fehleranzahl vor dem Test undfür alle Testzeiten tT > tT0 die zu erwartende Anzahl dernicht nachweisbaren Fehler mit der Funktion

    E (ϕ�! (tT)) = E (ϕ�) ·(tT0tT

    )k

    abnimmt.

    Lösung ist eine Potenzfunktion mit dem Exponent k − 1:

    f� (ψ) =E (ϕ�) · tT0

    Γ (k)· (ψ · tT0)k−1 · e−ψ·tT0 (2)

    (Γ (k) =∫∞

    0 xk−1 · e−x · dx – Gammafunktion von k)

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 122/180

  • 4. Zufallstest 4. Fehlerprofil

    Probe, ob die Lösung stimmt

    E (ϕ�! (tT)) =∫ ∞

    0

    f� (ψ) · e−tT·ψ · dψ

    =

    ∫ ∞

    0

    E (ϕ�) · tT0Γ (k)

    · (ψ · tT0)k−1 · e−ψ·tT0 · e−ψ·tT1 · dψ

    =E (ϕ�) · tT0

    Γ (k)·∫ ∞

    0

    (ψ · tT0)k−1 · e−ψ·(tT0+tT1) · dψ

    Substitution: tT = tT1 + tT0Herausziehen von tT0

    tkT

    k−1aus dem Integral

    Substitution: x = ψ · tT; dψ = 1tT · dx

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 123/180

  • 4. Zufallstest 4. Fehlerprofil

    E (ϕ�!, tT) =E (ϕ�)Γ (k)

    ·(tT0tT

    )k·∫ ∞

    0

    xk−1 · e−x · dx︸ ︷︷ ︸

    Γ(k)

    = E (ϕ�) ·(tT0tT

    )k

    O(E (ϕ�) ·

    (tT0tT

    )k)= t−kT

    (tT0 – Bezugszeit für den Testaufwand; tT – Testzeit plusBezugszeit, damit E (ϕ�!, 0) = E (ϕ�) gilt).

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 124/180

  • 4. Zufallstest 4. Fehlerprofil

    Fehlfunktionen durch nicht beseitigte Fehler

    Ausgehend von Gleichung 1:

    E (ψ� (tT)) = E (ϕ�) ·∫ ∞

    0

    ψ · f� (ψ) · e−tT1·ψ · dψ

    (tT1 – Testzeit ohne Bezugszeit); mit Fehlerprofil nach Gl. 2:

    f� (ψ) =tT0

    Γ (k)· (ψ · tT0)k−1 · e−ψ·tT0

    E (ψ�) = E (ϕ�) ·∫ ∞

    0

    tT0Γ (k)

    · (ψ · tT0)k−1 · e−ψ·tT0 · e−tT1·ψ · ψ · dψ

    mit tT = tT0 + tT1

    E (ψ�) =E (ϕ�)

    Γ (k)·∫ ∞

    0(ψ · tT0)k · e−ψ·tT · dψ

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 125/180

  • 4. Zufallstest 4. Fehlerprofil

    E (ψ�) = E (ϕ�) ·∫ ∞

    0

    1

    Γ (k)· (ψ · tT0)k · e−ψ·tT · dψ

    Substitution: x = ψ · tT; dψ = 1tT · dxHerausziehen von tT0

    tk+1T

    kaus dem Integral

    E (ψ�) = E (ϕ�) ·tkT0

    Γ (k) · tk+1T·∫ ∞

    0xk · e−x · dx

    ︸ ︷︷ ︸Γ(k+1)

    mit Γ(k+1)Γ(k) = k

    E (ψ� (tT)) = E (ϕ�) · k·tkT0

    tk+1T

    Asymptotische Ordnung der Abnahme k + 1 mit 0,3 < k < 1

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 126/180

  • 4. Zufallstest 4. Fehlerprofil

    Testsatzverlängerung zur Reduzierung derHäufigkeit der Fehlfunktionen um einen Faktor

    E (ψ�1)

    E (ψ�2)=

    k·tkT0tk+1T1k·tkT0tk+1T2

    tT2tT1

    =

    (E (ψ�1)

    E (ψ�2)

    ) 1k+1

    Testsatzverlängerung zur Reduzierung der Häufigkeit derFehlfunktionen auf

    E (ψ�2) /E (ψ�1) = 0, 1

    k 0,2 0,3 0,4 0,5 0,6

    tT1tT10

    6,8 5,9 5,2 4,6 4,2

    ca. fünffache Testzeit ⇒ ein Zehntel der FehlfunktionenProf. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 127/180

  • 4. Zufallstest 4. Fehlerprofil

    Vergleich mit der Restfehleranzahl

    E (ϕ�! (tT)) = E (ϕ�) ·(tT0tT

    )k

    E (ψ� (tT)) =ktT· E (ϕ�!, tT)

    Abnahme der Häufigkeit der falschen Ergebnisse

    proportional zur zu erwartenden Fehleranzahl undumgekehrt proportional zur Testdauer.

    Gilt das auch für andere Fehlerprofile?8

    8Denkbares Thema für eine mathematisch orientierte Masterarbeit. In derLiteratur sind zahlreiche weitere Approximationsfunktionen für dieZunahmen der Anzahl der gefundenen Fehler mit der Testdauer postuliert.Bestimmung des Fehlerprofils und der Häufigkeit der Fehlfunktionen inAbhängigkeit von der Testdauer.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 128/180

  • 4. Zufallstest 4. Fehlerprofil

    Beispielabschätzung

    Gegeben: Nach Testzeit 1, 3, 9, 19 und 25 Stunden wurde je einFehler gefunden und beseitigt. Testende nach 40 Stunden.

    1 Wieviele Fehler wurden übersehen?2 Testsatzlänge zur Halbierung der Restfehleranzahl?

    1

    2

    3

    4

    5

    ed

    experimentell bestimmte Anzahlder beseitigten Fehler

    0 10 20 30

    a bc

    Annährung durch Funktionen vom Typ E(ϕ⋄√

    )= E (ϕ⋄) ·

    (1−

    (tT

    Stunde

    )−k)a - e

    tT in Stunden

    ϕ⋄√(ttT)

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 129/180

  • 4. Zufallstest 4. Fehlerprofil

    Lösung Teil 1

    1

    2

    3

    4

    5

    ed

    experimentell bestimmte Anzahlder beseitigten Fehler

    0 10 20

    a bc

    ϕ⋄√(ttT)

    tT in Stunden

    E(ϕ�√

    )= E (ϕ�) ·

    (1−

    (tT

    Stunden

    )−k)

    Suche geeigneter Parameter E (ϕ�) und k durch Probieren:

    a b c d e

    k 0,1 0,2 0,3 0,4 0,5

    E (ϕ�) 32,7 17,7 12,8 10,4 8,9

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 130/180

  • 4. Zufallstest 4. Fehlerprofil

    Die Lösung steckt in den gefundenen Parametern.

    a b c d e

    k 0,1 0,2 0,3 0,4 0,5

    E (ϕ�) 32,7 17,7 12,8 10,4 8,9

    Anzahl der nicht gefundenen Fehler: E (ϕ�)− 5 = 3 . . . 28Erlaubt nur eine sehr grobe Abschätzung.

    Prof. G. Kemnitz · Institut für Informatik, Technische Universität Clausthal 21. Juni 2012 131/180

  • 4. Zufallstest 4. Fehlerprofil

    Lösung Teil 2:Testsatzlänge zur Halbierung derRestfehleranzahl?

    In

    E (ϕ�!) = E (ϕ�) ·(tTtT0

    )−k

    verlan