test und verl asslichkeit (f3) kapitel 3: grundlagen der ...techtest und verl asslichkeit (f3)...
TRANSCRIPT
-
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
D̄
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