[go: up one dir, main page]

DE19536203A1 - Fehlerdiagnoseverfahren für eine sequentielle Schaltung - Google Patents

Fehlerdiagnoseverfahren für eine sequentielle Schaltung

Info

Publication number
DE19536203A1
DE19536203A1 DE19536203A DE19536203A DE19536203A1 DE 19536203 A1 DE19536203 A1 DE 19536203A1 DE 19536203 A DE19536203 A DE 19536203A DE 19536203 A DE19536203 A DE 19536203A DE 19536203 A1 DE19536203 A1 DE 19536203A1
Authority
DE
Germany
Prior art keywords
failure
flip
input
combination circuit
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE19536203A
Other languages
English (en)
Inventor
Toshio Ishiyama
Donald Klein
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Electronics Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP6233353A external-priority patent/JP2701753B2/ja
Priority claimed from JP6292866A external-priority patent/JP2655105B2/ja
Application filed by NEC Corp filed Critical NEC Corp
Publication of DE19536203A1 publication Critical patent/DE19536203A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • H10P74/00

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

Die Erfindung betrifft ein Fehlerdiagnoseverfahren für eine sequentielle Schaltung einer LSI (hochintegrierten Schaltung) und insbesondere ein Verfahren zum Lokalisieren einer fehlerhaften Stelle einer Logikschaltung durch Ableiten.
Ein konventionelles Verfahren zum Lokalisieren einer fehlerhaften Stelle einer LSI durch Ableiten, wie in Fig. 1 gezeigt, umfaßt einen Verfahrensschritt 19, unter Verwendung eines Fehlerdiagnosesimulators (Fehlersimulators) ein Fehlerdiag­ noseverzeichnis (Fehlerverzeichnis) zu erstellen, einen Verfahrensschritt 20, durch tatsächliches Prüfen einer LSI Ausfallinformationen zu gewinnen, einen Schritt 21, das Fehlerverzeichnis auf der Basis der Ausfallinformationen, die die Ergebnisse der Prüfung anzeigen, nachzuschlagen oder wiederzugewinnen, und einen Verfah­ rensschritt 22, eine fehlerhafte Stelle durch Ableiten zu lokalisieren.
Der Fehlersimulator führt eine Logiksimulation für eine LSI unter der Annahme durch, daß die LSI eine fehlerhafte Stelle enthält. Der Fehlersimulator vergleicht die Ergebnisse der Logiksimulation und die erwarteten Werte von Ausgangs­ anschlüssen, um ein Fehlerverzeichnis zu erstellen, in dem die angenommene fehlerhafte Stelle in Verbindung mit einem Eingangsausfallvektor gespeichert wird, der den Fehler an dem Ausgangsanschluß oder den Ausgangsanschlüssen gezeigt hat. Das Fehlerverzeichnis wird auf der Basis der Ausfallinformationen nach­ geschlagen, die die Ergebnisse einer Prüfung zeigen, die tatsächlich für eine LSI durchgeführt wird, damit mögliche fehlerhafte Stellen abgeleitet werden können. Den angenommenen fehlerhaften Stellen kann unter Verwendung einer Vielzahl von Sätzen von Ausfall/Durchlauf-Informationen zum Lokalisieren einer fehler­ haften Stelle eine Prioritätsreihenfolge zugewiesen werden.
Bei dem oben beschriebenen Verfahren muß das Fehlerverzeichnis im voraus erstellt werden, währenddessen ein verlängertes Zeitintervall lang Fehlersimulati­ onen durchgeführt werden müssen, um das Fehlerverzeichnis für den praktischen Gebrauch zu erstellen. Dementsprechend weist das Verfahren das Problem auf, daß die Ausführungszeit für die Fehlersimulation extrem lang ist und außerdem die Zahl der Dateien für das Fehlerverzeichnis groß wird, wenn der Integrationsgrad der zu prüfenden LSI zunimmt.
Da das bei der Fehlersimulation verwendete Fehlermodell allgemein für einen Einzelstapelfehler ausgelegt ist, das heißt, für einen einzelnen Fehler unter der Annahme von "1" oder "0" am Ausfallausgang, wobei ein veränderlicher Ausfall­ ausgang außer acht gelassen wird, stellt das Modell ferner einen tatsächlichen Betrieb im Falle eines Mehrfachfehlers nicht richtig dar, etwa bei einem Brücken­ fehler. Falls das bei der Fehlersimulation verwendete Modell erweitert wird, um mit so einem Mehrfachfehler fertig zu werden, wird das Verfahren ungeeignet, da die für die Fehlersimulation benötigte Ausführungszeit übermäßig groß wird.
Man hat ein anderes Verfahren vorgeschlagen, bei dem die vorstehende Prozedur in einer hierarchischen Reihenfolge wiederholt wird, um das in Verdacht stehende Gebiet schrittweise einzuengen, und das zwischen den Prozeduren eine Prozedur zur Beobachtung der internen Schaltung einer LSI mittels eines Elektronenstrahl- Prüfers verwendet, um das in Verdacht stehende Gebiet zu begrenzen. Bei diesem Verfahren wird beginnend mit einem weiten Gebiet für die Prozedur in jeder Stufe eine Annahme eines kleineren fehlerhaften Gebiets durchgeführt, indem zwischen zweien der Stufen das vorhergehende Fehlerkandidat-Gebiet unter Verwendung des Elektronenstrahl-Prüfers begrenzt wird, um das Gebiet für Kandidaten für die fehlerhafte Stellen vor einem niedrigerem Rang der Prozedur zu begrenzen.
Das zweite Verfahren ist wirkungsvoll, da das Gebiet für Kandidaten für fehler­ hafte Stellen durch Beobachtung des Fehlerkandidat-Gebiets schrittweise begrenzt wird. Dieses Verfahren weist jedoch das Problem auf, daß die Beobachtung eines elektrischen Potentials auf einer Verbindungsschicht, die sich in der Nähe des Bodens einer mehrstufigen Verbindungsstruktur befindet, schwierig wird, wenn die Zahl der Schichten infolge einer Zunahme des Integrationsgrades der LSI zunimmt.
Im Hinblick auf das vorstehende liegt der Erfindung die Aufgabe zugrunde, ein verbessertes Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI zu schaffen, das nicht nur einen Einzelstapelfehler, sondern auch andere Arten von Fehlern, etwa einen Mehrfachfehler-Ausfall, mit einer verringerten Ausführungs­ zeit ableiten kann.
Ein Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI gemäß einer ersten bevorzugten Ausführungsform der Erfindung umfaßt die folgenden Verfahrens­ schritte: Berechnen von erwarteten Ausgangswerten von Flipflops in der LSI für mögliche Eingangsprüfvektoren der LSI durch eine Logiksimulation; Prüfen der LSI, um Durchlauf-/Ausfallanschluß-Informationen zu Ausgangsanschlüssen für die möglichen Eingangsprüfvektoren der LSI zu gewinnen; Extrahieren einer Kombi­ nationsschaltung mit Eingängen, die mit Eingangsanschlüssen oder Ausgängen irgendeines Flipflop verbunden sind, und Ausgängen, die mit Ausgangsan­ schlüssen oder Eingängen irgendeines Flipflop verbunden sind, auf der Basis der Netzliste der LSI und der Durchlauf-/Ausfallanschluß-Informationen, wobei die Kombinationsschaltung andere Netze und Logikelemente als irgendeinen Flipflop umfaßt, der während einer Verfolgung der Netze und der Logikelemente erreicht wird, wobei die Verfolgung von einem ersten Ausfallausgangsanschluß aus durch Rückwärtsverfolgung beginnt, die Verfolgung eine Vorwärtsverfolgung von einem Eingangsanschluß oder einem Ausgang irgendeines Flipflop aus umfaßt, der während einer Rückwärtsverfolgung erreicht wird, und die Verfolgung eine Verfolgung von wenigstens einem anderen Ausfallausgangsanschluß als dem ersten Ausfallanschluß aus umfaßt, der durch eine Verfolgung während des Extrahierens der Kombinationsschaltung erreicht wird; Gewinnen von erwarteten Werten an jedem Knoten der extrahierten Kombinationsschaltung für mögliche Eingangsvektoren für die Kombinationsschaltung auf der Basis der erwarteten Ausgangswerte des Flipflop und möglicher Eingangsvektoren durch eine Logik­ simulation der Kombinationsschaltung; Ableiten einer fehlerhaften Stelle durch Vergleichen der Durchlauf-/Ausfallanschluß-Informationen mit den erwarteten Werten an jedem Knoten der Kombinationsschaltung.
Ein Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI gemäß einer weiteren bevorzugten Ausführungsform der Erfindung umfaßt die folgenden Verfahrensschritte: Prüfen der LSI, um Durchlauf-/Ausfallanschluß-Informationen zu Ausgangsanschlüssen für die möglichen Eingangsprüfvektoren der LSI zu gewinnen; Extrahieren einer ersten Kombinationsschaltung mit einer Vielzahl von Eingängen und einer Vielzahl von Ausgängen, einer ersten Flipflop-Gruppe von Flipflops, die jeder einen Ausgang aufweisen, der mit einem der Eingänge der ersten Kombinationsschaltung verbunden ist, und einer zweiten Flipflop-Gruppe von Flipflops, die jeder einen Eingang aufweisen, der mit einem der Ausgänge der Kombinationsschaltung verbunden ist, durch eine Verfolgung entlang anderen Netzen und durch andere Logikelemente hindurch als irgendeinen Flipflop in der LSI, wobei die Verfolgung von einem ersten Ausfallausgangsanschluß oder einem abgeleiteten ersten Ausfalleingang der zweiten Flipflop-Gruppe aus durch Rückwärtsverfolgung beginnt, die Verfolgung eine Vorwärtsverfolgung von einem Eingangsanschluß oder einem Ausgang irgendeines Flipflop aus umfaßt, der während einer Rückwärtsverfolgung erreicht wird, und die Verfolgung eine Rück­ wärtsverfolgung von wenigstens einem anderen Ausfallausgangsanschluß als dem ersten Ausfallanschluß oder wenigstens einen anderen Ausfalleingang der zweiten Flipflop-Gruppe als den abgeleiteten ersten Ausfalleingang der zweiten Flipflop- Gruppe umfaßt, der durch eine Vorwärtsverfolgung während des Extrahierens der Kombinationsschaltung erreicht wird; Extrahieren einer zweiten Kombinations­ schaltung mit Eingängen, die mit Ausgängen der ersten Flipflop-Gruppe verbunden sind, durch eine Vorwärtsverfolgung in Richtung auf die Ausgangsanschlüsse; Gewinnen von in Verdacht stehenden Eingangsausfallvektoren für die erste Kom­ binationsschaltung auf der Basis der Durchlauf-/Ausfallanschluß-Informationen und einer Netzliste, wobei die in Verdacht stehenden Ausfallvektoren über die erste Kombinationsschaltung jeder ein Ausgangsmuster liefern, das mit einem Teil eines Ausfallausgangsmusters zusammenfällt, das in den Durchlauf-/Ausfall­ anschluß-Informationen gefunden wird; Auswählen von Eingangsausfallvektoren für die erste und die zweite Kombinationsschaltung unter den in Verdacht stehenden Eingangsausfallvektoren durch eine Logiksimulation der ersten und der zweiten Kombinationsschaltung auf der Basis der Durchlauf-/Ausfallanschluß- Informationen, wobei die Eingangsausfallvektoren über die erste und die zweite Kombinationsschaltung ein Ausgangsmuster liefern, das mit einem Teil eines Ausfallausgangsmusters zusammenfällt, das in den Durchlauf-/Ausfallanschluß- Informationen gefunden wird; Simulieren der ersten Kombinationsschaltung durch eine erste Simulation unter Verwendung der Eingangsausfallvektoren und durch eine zweite Simulation unter Verwendung von normalen Eingangsvektoren für die erste Kombinationsschaltung auf der Basis von erwarteten Ausgangswerten der ersten Flipflop-Gruppe; Ableiten eines fehlerhaften Netzes in der ersten Kombi­ nationsschaltung durch Vergleichen eines Signals der ersten Simulation und eines entsprechenden Signals der zweiten Simulation in der ersten Kombinations­ schaltung.
Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der folgenden Beschreibung mehrerer Ausführungsformen der Erfindung und aus der Zeichnung, auf die Bezug genommen wird. Darin sind
Fig. 1 ein Flußdiagramm, das ein konventionelles Verfahren zum Lokalisieren einer fehlerhaften Stelle einer LSI durch Ableiten zeigt;
Fig. 2 ein Flußdiagramm, das ein Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI gemäß einer ersten Ausführungsform der Erfindung zeigt;
Fig. 3 ein Flußdiagramm, das die Prozedur im Schritt 6 des in Fig. 2 gezeigten Flußdiagramms zeigt;
Fig. 4 ein Blockdiagramm, das beispielhaft einen Teil der Kombinationsschaltung zeigt;
Fig. 5 ein Flußdiagramm, das ein Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI gemäß einer zweiten Ausführungsform der Erfindung zeigt;
Fig. 6 ein Flußdiagramm, das ein Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI gemäß einer dritten Ausführungsform der Erfindung zeigt;
Fig. 7 ein Flußdiagramm, das die Prozedur im Schritt 110 des in Fig. 6 gezeigten Flußdiagramms zeigt;
Fig. 8 ein Blockdiagramm zur Erläuterung des Betriebs zum Bestätigen von Zweigen von Signalleitungen in einer vorhergehenden Kombinationsschaltung, wenn in der dritten Ausführungsform eine Mehrfachfehlerfortpflanzung ange­ nommen wird; und
Fig. 9 ein Blockdiagramm zur Erläuterung des Betriebs zum Extrahieren von überlappten Gebieten durch Vergleichen von Fehlerfortpflanzungswegen für Eingangausfallvektoren, wenn in der dritten Ausführungsform fehlerhafte Stellen innerhalb einer Kombinationsschaltung abgeleitet werden.
Erste Ausführungsform
Fig. 2 zeigt ein Verfahren zur Fehlerdiagnose einer LSI gemäß einer ersten Ausführungsform der Erfindung. Im Schritt 1 von Fig. 2 wird die LSI mit einem LSI-Prüfer geprüft, um vollständige Durchlauf-/Ausfall(anschluß)-Informationen zu den Ausgangsanschlüssen der LSI zu gewinnen. Die Durchlauf/Ausfall- Informationen umfassen sowohl Durchlauf/Ausfall-Daten, die anzeigen, ob jeder der Ausgangsanschlüsse einen erwarteten Wert liefert, als auch Demaskierungs/ Maskierungs-Daten, ob jeder der Ausgangsanschlüsse tatsächlich geprüft wird oder nicht. Die Durchlauf/Ausfall-Informationen umfassen ferner die Eingangs­ ausfallvektoren der LSI, die den Ausfall an dem Ausgangsanschluß oder den Ausgangsanschlüssen erzeugt haben, wobei diese Daten in Verbindung mit den Durchlauf/Ausfall-Daten gespeichert werden.
Im Schritt 2 wird eine Rückwärtsverfolgung entlang anderen Netzen und durch andere Logikelemente hindurch als irgendeinen Flipflop in der LSI von einem der im Schritt 1 gewonnenen Ausfallanschlüsse (erster Ausfallanschluß) aus auf der Basis der Netzliste der LSI in Richtung auf die Eingangsseite der LSI durchgeführt. Wenn ein durch die Verfolgung verfolgtes Netz einen Zweig aufweist, wird von dem Zweig aus eine Rückwärts- und Vorwärtsverfolgung durchgeführt. Falls die Rückwärtsverfolgung einen Eingangsanschluß oder einen Ausgang irgendeines Flipflop erreicht, wird von dem Eingangsanschluß oder dem Ausgang des Flipflop aus eine Vorwärtsverfolgung in Richtung auf die Ausgangsseite der LSI durchge­ führt. Falls die Vorwärtsverfolgung einen Ausgangsanschluß erreicht und falls die erreichten Ausgangsanschlüsse wenigstens einen anderen Ausfallanschluß als den ersten Ausfallanschluß umfassen, wird ferner eine Rückwärtsverfolgung ähnlich der für den ersten Ausfallanschluß beschriebenen Prozedur durchgeführt. Falls die erreichten Ausgangsanschlüsse keinen anderen Ausfallanschluß umfassen, wird die Rückwärts- und Vorwärtsverfolgung beendet, um eine Ziel-Kombinationsschal­ tung zu extrahieren, die das verfolgte Netz und die durchlaufenen Logikelemente umfaßt.
Bei der oben beschriebene Prozedur wird die Kombinationsschaltung als Teil der LSI extrahiert, mit einer Vielzahl von Eingängen, die mit Eingangsanschlüssen oder Ausgängen irgendwelcher Flipflops verbunden sind, und einer Vielzahl von Ausgängen, die mit Ausgangsanschlüssen oder Eingängen irgendwelcher Flipflops verbunden sind.
Andererseits werden im Schritt 3 alle Flipflops extrahiert, die in der Netzliste der LSI enthalten sind. Im Schritt 4 wird eine Logiksimulation durchgeführt, um mögliche erwartete Ausgangswerte aller Flipflops für sämtliche möglichen Eingangsprüfvektoren für die LSI zu gewinnen, nämlich für sämtliche möglichen Kombinationen des Eingangsmusters.
Im Schritt 5 wird für die im Schritt 2 gewonnene Kombinationsschaltung, die als einen Ausfall fortpflanzend angesehen wird, unter Verwendung der erwarteten Werte der Flipflops eine Logiksimulation durchgeführt, um sämtliche erwarteten Werte an jedem Knoten in der Kombinationsschaltung für sämtliche möglichen Eingangsvektoren für die Kombinationsschaltung zu gewinnen.
Im Schritt 6 wird auf der Basis des erwarteten Wertes an jedem Knoten, der im Schritt 5 gewonnenen wurde, und der Durchlauf/Ausfall-Informationen, die im Schritt 1 gewonnenen wurden, für jeden Knoten in der Kombinationsschaltung abgeschätzt, ob ein Ausfall vorhanden ist oder nicht. Die Ausfallelemente oder -netze können abgeleitet werden, indem das Gebiet für Kandidaten für fehlerhafte Stellen oder deren Anzahl begrenzt wird, indem die oben beschriebene Prozedur wiederholt wird. Falls es keinen Ausfallknoten für sämtliche möglichen Eingangs­ vektoren für die Kombinationsschaltung gibt, wird die Kombinationsschaltung als einwandfrei angesehen und werden Eingänge der Flipflops an der Eingangsseite der Kombinationsschaltung verdächtigt, eine fehlerhafte Stelle aufzuweisen.
Der Schritt 6 wird nun unter Bezugnahme auf das in Fig. 3 gezeigte Flußdiagramm und ein in Fig. 4 gezeigtes Blockdiagramm detaillierter beschrieben.
In Fig. 4, die einen Teil der Kombinationsschaltung zeigt, stellen die Bezugs­ zeichen X, Y und Z logische Blöcke oder Elemente in der Kombinationsschaltung dar, und die Bezugszeichen "a" bis "g" stellen Netze dar. Es wird angenommen, daß am Netz "b" ein Ausfall aufgetreten ist. Im Schritt 14 des Flußdiagramms wird beurteilt, ob das Netz "b" einen Zweig aufweist oder nicht. Da das Netz "b" keinen Zweig aufweist, geht das Verfahren zum Schritt 16 weiter, in dem beurteilt wird, ob die Rückwärtsverfolgung fortzusetzen ist oder nicht. Wenn die Rück­ wärtsverfolgung keinen Eingangsanschluß oder Ausgang eines Flipflop erreicht oder im Schritt 15 beurteilt wird, daß das Netz normal ist, wird die Rückwärts­ verfolgung fortgesetzt. Dementsprechend erreicht die Rückwärtsverfolgung am Netz "b" den Block Y.
Im Schritt 17 werden erwartete Werte für die Netze "d", "e" und "b" mit den Durchlauf/Ausfall-Informationen des Ausgangsnetzes "b" verglichen, wobei eine Wahrheitstabelle des Blocks Y verwendet wird, um zu beurteilen, ob der Block Y fehlerhaft ist oder nicht. Im Schritt 18 wird beurteilt, ob der Eingang des Blocks Y, von dem aus sich ein Ausfall fortpflanzt, einen Ausfall aufweist, wobei die Wahrheitstabelle des Blocks Y, die erwarteten Werte der Netze "d", "e" und "b" und der abgeleitete Ausfallwert des Netzes "b" verwendet werden. Falls angenommen wird, daß ein Ausfall des Netzes "d" vermutet wird, arbeitet das Verfahren im Schritt 14, um zu beurteilen, ob das Netz "d" einen Zweig aufweist oder nicht. Da das Netz "d" einen Zweig aufweist, geht das Verfahren zum Schritt 15 weiter.
Im Schritt 15 wird am Netz "d", am Block X und dann am Netz "a" eine aufein­ anderfolgende Vorwärtsverfolgung durchgeführt. Diese Vorwärtsverfolgung wird wiederholt, bis die Verfolgung einen Ausgangsanschluß oder einen Eingangs­ anschluß eines Flipflop erreicht. Nachfolgend werden die Durchlauf/Ausfall- Informationen des Ausgangsanschlusses oder abgeleitete Durchlauf/Ausfall- Informationen des Flipflop mit dem Ergebnis der Beurteilung am Startpunkt der Rückwärtsverfolgung am Netz "b" verglichen, um zu beurteilen, ob der Ausfall an der stromaufwärtigen Seite des Zweigpunktes des Netzes "d" oder an der Eingangsseite des Blocks Y aufgetreten ist, der sich an der stromabwärtigen Seite des Zweigpunktes befindet. Falls im Schritt 16 beurteilt wird, daß an der stromab­ wärtigen Seite des Zweigpunktes des Netzes "d" ein Ausfall auftritt und daß der Ausgang des Blocks Z daher normal ist, wird die Rückwärtsverfolgung beendet. Wird andernfalls beurfeilt, daß an der stromaufwärtigen Seite des Zweigpunktes des Netzes "d" ein Ausfall auftritt, so wird die Rückwärtsverfolgung fortgesetzt, und es wird im Schritt 17 beurteilt, ob der Block Z richtig arbeitet oder nicht.
Nachdem im Schritt 6 ein Kandidat für eine fehlerhafte Stelle in der Kombina­ tionsschaltung abgeleitet worden ist, wird im Schritt 7 von Fig. 2 beurteilt, ob die Auswahl von Kandidaten beendet ist. Wenn die Verfolgung einen Ausgang irgendeines Flipflop erreicht hat, ohne einen Ausfall festzustellen, bedeutet dies, daß die Auswahl von Kandidaten noch nicht beendet ist. In diesem Fall geht das Verfahren zum Schritt 8 weiter, in dem Eingangsausfälle der Kombinations­ schaltung abgeleitet werden, d. h., es werden Ausfälle der Flipflops oder der Eingangsseite der Flipflops abgeleitet. Danach geht das Verfahren zum Schritt 2 zurück, in dem die Rückwärtsverfolgung von dem Flipflop aus, durch den hindurch sich ein Ausfall fortpflanzt, erneut durchgeführt wird. Außerdem wird eine Vorwärtsverfolgung von einem Zweigpunkt aus durchgeführt, falls vorhanden.
Wenn die Rückwärtsverfolgung im Schritt 6 zu einem Ende kommt, indem ein Kandidat für eine fehlerhafte Stelle abgeleitet wird, wird im Schritt 7 beurteilt, ob die Auswahl von Kandidaten beendet ist oder nicht. Falls die Auswahl beendet ist, geht das Verfahren zum Schritt 9 weiter, in dem sämtlichen bis jetzt gewonnenen Kandidaten für fehlerhafte Stellen Gewichtungen gegeben werden. Im Schritt 10 wird eine Liste ausgegeben, auf der die Kandidaten für fehlerhafte Stellen in der Prioritätsreihenfolge aufgelistet sind, die auf der Basis der ihnen gegebenen Gewichtungen bestimmt wird.
Zweite Ausführungsform
Unter Bezugnahme auf Fig. 5 wird eine zweite Ausführungsform der Erfindung beschrieben.
Wie in der in Fig. 2 gezeigten ersten Ausführungsform wird im Schritt 1 eine LSI mit einem LSI-Prüfer geprüft, um vollständige Durchlauf/Ausfall-Informationen zu Ausgangsanschlüssen der LSI für mögliche Eingangsprüfvektoren zu gewinnen. Im Schritt 11 wird auf der Basis einer Netzliste von einem der Ausfallanschlüsse (erster Anschluß) aus eine Rückwärtsverfolgung entlang Netzen und durch Logikelemente hindurch durchgeführt. Wenn das Netz einen Zweig aufweist, wird zusätzlich eine Vorwärtsverfolgung durchgeführt, ähnlich wie in der ersten Ausführungsform.
Falls die Rückwärtsverfolgung einen Eingangsanschluß oder einen Ausgang irgendeines Flipflop erreicht, wird von dem erreichten Eingangsanschluß oder dem Ausgang des Flipflop aus eine Vorwärtsverfolgung in Richtung auf Ausgangs­ anschlüsse durchgeführt. Falls die erreichten Ausgangsanschlüsse keinen anderen Ausfallanschluß als den ersten Ausfallanschluß umfassen, wird die Rückwärts- und Vorwärtsverfolgung beendet, um eine Kombinationsschaltung und irgend­ welche Flipflops an der Eingangsseite oder der Ausgangsseite der Kombina­ tionsschaltung zu extrahieren. Falls die erreichten Ausgangsanschlüsse einen neuen, anderen Ausfallanschluß als den ersten Ausfallanschluß umfassen, wird von dem neuen Ausfallanschluß aus eine zusätzliche Rückwärts- und Vorwärts­ verfolgung durchgeführt. Falls die neue Rückwärts- und Vorwärtsverfolgung keinen neuen Ausgangsausfallanschluß erreicht, wird das Verfolgungsverfahren beendet, um eine Kombinationsschaltung und Flipflop-Gruppen an der Eingangs­ seite und der Ausgangsseite der Kombinationsschaltung zu extrahieren.
Falls das oben beschriebene Verfahren in einer nachfolgenden Prozedur keinen Kandidaten für eine fehlerhafte Stelle findet, wird die Rückwärts- und Vorwärts­ verfolgung von den Eingängen der Flipflop-Gruppe aus wiederholt, um eine neue Kombinationsschaltung zu extrahieren. Die so extrahierte Kombinationsschaltung weist eine Vielzahl von Eingängen und Ausgängen auf, wobei Eingangsanschlüsse oder Ausgänge von Flipflops an der Eingangsseite der Kombinationsschaltung mit den Eingängen der Kombinationsschaltung verbunden sind und Ausgangsan­ schlüsse oder Eingänge von Flipflops an der Ausgangsseite mit den Ausgängen der Kombinationsschaltung verbunden sind.
Im Schritt 12 wird eine Logiksimulation der extrahierten Flipflops der ersten und der zweiten Eingangs-Flipflop-Gruppe durchgeführt, um für sämtliche Eingangs­ prüfvektoren der LSI sämtliche erwartete Ausgangswerte der Flipflops zu gewin­ nen. Im Schritt 13 wird für die im Schritt 11 gewonnene Kombinationsschaltung, die ein Teil der LSI ist und als einen Ausfall fortpflanzend angesehen wird, unter Verwendung der im Schritt 12 gewonnenen erwarteten Ausgangswerte der Flipflops eine Logiksimulation durchgeführt, um erwartete Werte an jedem Knoten in der Kombinationsschaltung für sämtliche möglichen Eingangsvektoren für die Kombinationsschaltung zu gewinnen. Die nachfolgenden Schritte 6 bis 10 sind den entsprechenden Schritten 6 bis 10 in der ersten Ausführungsform ähnlich.
Im Schritt 6 wird auf der Basis des erwarteten Wertes an jedem Knoten der Kombinationsschaltung, der im Schritt 13 gewonnenen wurde, und der Durch­ lauf/Ausfall-Informationen, die im Schritt 1 gewonnenen wurden, das Vorhanden­ sein oder das Nichtvorhandensein eines Ausfalls an jedem Knoten beurteilt. Diese Prozedur kann wiederholt werden, um das Fehlerkandidat-Gebiet einzuengen oder die Kandidaten für fehlerhafte Stellen auszuwählen.
Im Schritt 7 wird beurteilt, ob die Auswahl der Kandidaten für fehlerhafte Stellen beendet ist oder nicht. Wenn die Rückwärtsverfolgung während der Auswahl von Kandidaten im Schritt 6 einen Ausgang eines Flipflop erreicht hat, ohne einen Ausfall festzustellen, bedeutet dies, daß die Auswahl von Kandidaten noch nicht beendet ist. In diesem Fall geht das Verfahren zum Schritt 8 weiter, in dem Eingangsausfälle der Kombinationsschaltung abgeleitet werden, d. h., es werden Ausfälle der Flipflops in der Eingangs-Flipflop-Gruppe vermutet. Danach geht das Verfahren zum Schritt 11 zurück, in dem wieder eine neue Rückwärtsverfolgung von dem Flipflop in der ersten Flipflop-Gruppe aus durchgeführt wird, an den sich ein Ausfall fortpflanzt, wobei die Eingänge der Flipflops jeweilige Startpunkte der Rückwärtsverfolgung sind. Zusätzlich wird eine Vorwärtsverfolgung von einem Zweig aus durchgeführt, falls vorhanden.
Wenn die Rückwärtsverfolgung im Schritt 13 zu einem Ende kommt, wird im Schritt 7 beurteilt, ob die Auswahl von Kandidaten beendet ist oder nicht. Falls die Auswahl beendet ist, geht das Verfahren zum Schritt 9 weiter, in dem sämtlichen bis jetzt gewonnenen Kandidaten für fehlerhafte Stellen Gewichtungen gegeben werden. Im Schritt 10 wird eine Liste ausgegeben, auf der die Kandidaten für fehlerhafte Stellen in der Prioritätsreihenfolge aufgelistet sind, die auf der Basis der ihnen gegebenen Gewichtungen bestimmt wird.
Wie oben beschrieben, wird bei den Verfahren gemäß der ersten und der zweiten Ausführungsform durch Rückwärtsverfolgung und Vorwärtsverfolgung eine Teil- Kombinationsschaltung extrahiert, die ein kleines Gebiet in der LSI einnimmt und die abgeleitete fehlerhafte Stellen aufweist. Danach wird unter Verwendung der erwarteten Werte der Flipflops eine Logiksimulation der Teil-Kombinations­ schaltung durchgeführt, und unter Verwendung des Ergebnisses der Simulation kann eine Rückwärtsverfolgung durchgeführt werden, um eine fehlerhafte Stelle abzuleiten. Dementsprechend ist es unnötig, durch Betrieb einer Fehlersimulation ein Fehlerverzeichnis zu erstellen und das Fehlerverzeichnis zu speichern. Als Folge kann die Ausführungszeit beachtlich verringert werden. Diese Vorteile werden noch beachtlicher, wenn die Zahl der Knoten infolge einer Zunahme des Integrationsgrades einer LSI zunimmt. Darüber hinaus kann ein Kandidat für eine fehlerhafte Stelle selbst dann gefunden werden, wenn der Fehler kein Einzelstapelfehler ist.
Ferner können die obigen Verfahren eine abgeleitete fehlerhafte Stelle ohne einen Elektronenstrahl-Prüfer feststellen, selbst wenn eine zu prüfende LSI eine mehrstufige Verbindungsstruktur aufweist, und sind daher den konventionellen Verfahren überlegen, die einen Elektronenstrahl-Prüfer verwenden, bei dem die Beobachtung schwierig wird, wenn die Zahl der Schichten zunimmt.
Dritte Ausführungsform
Unter Bezugnahme auf Fig. 6 bis Fig. 9 wird eine dritte Ausführungsform der Erfindung beschrieben.
Fig. 6 ist ein Flußdiagramm, das eine Prozedur zur Gewinnung von Eingangs­ ausfallvektoren zeigt, die ein Ausfallausgangsmuster liefern, das in Durchlauf- /Ausfallanschluß-Informationen gefunden wird und im Rahmen einer Simulation in eine Kombinationsschaltung einzugeben ist. Fig. 7 zeigt die dem Schritt 110 in Fig. 6 entsprechende Prozedur zur Gewinnung eines Kandidaten für eine fehler­ hafte Stelle in der Kombinationsschaltung. Fig. 8 zeigt ein Beispiel eines Betriebs zum Ableiten von fehlerhaften Zweigen von Signalleitungen in einer vorhergehen­ den Kombinationsschaftung, wenn eine Mehrfachfehlerfortpflanzung angenommen wird. Fig. 9 zeigt ein Beispiel für den Betrieb zum Extrahieren von überlappten Wegen durch Vergleichen von Fehlerfortpflanzungswegen in einer Kombinations­ schaltung für alle Eingangsausfallvektoren, wenn ein Kandidat für eine fehlerhafte Stelle innerhalb der Kombinationsschaltung gewonnen wird.
Die Prozedur der vorliegenden Ausführungsform wird in den Verarbeitungs­ schritten zum Ableiten einer Ausfallfortpflanzung von einer ersten Flipflop-Gruppe aus, die sich an der Eingangsseite der Kombinationsschaltung befindet, an eine zweite Flipflop-Gruppe durchgeführt, die sich an der Ausgangsseite der Kombinationsschaltung befindet.
In Fig. 6 werden im Schritt 101 die Durchlauf/Ausfall-Informationen S1, erwartete Werte S2 sämtlicher Flipflops und Netzinformationen S3 der gesamten Schaltung aus gespeicherten Dateien ausgelesen. Im nachfolgenden Schritt 102 wird zur Extrahierung einer ersten Kombinationsschaltung auf der Basis der Durchlauf/ Ausfall-Informationen S1 und der Netzinformationen S3 der gesamten Schaltung eine Rückwärtsverfolgung von einem der Ausfallausgangsanschlüsse oder abgeleiteten Ausfalleingänge eines Flipflop aus durchgeführt. Zuerst wird eine Extrahierung der ersten Kombinationsschaltung durchgeführt, bis ein Eingangsan­ schluß oder irgendein Flipflop-Ausgang in der LSI erreicht wird. Nachfolgend wird eine Vorwärtsverfolgung von dem erreichten Eingangsanschluß oder Ausgang des Flipflop aus in Richtung auf die Ausgänge der LSI durchgeführt. Die Extrahierung eines Kandidaten für die erste Kombinationsschaltung wird fortgesetzt, bis ein Ausgangsanschluß oder irgendein Flipflop-Eingang erreicht wird.
Falls die Ausgangsanschlüsse des Kandidaten für die erste Kombinationsschaltung einen anderen Ausfallanschluß als den ersten Ausfallanschluß oder einen anderen Ausfalleingang als den ersten Ausfalleingang des Flipflop umfassen, wird die Schaltungsextrahierung ähnlich wie bei der Suche nach dem ersten Ausfallan­ schluß oder dem ersten Ausfalleingang in den Rückwärts- und Vorwärtsrichtungen für den anderen Ausfallanschluß oder Ausfalleingang durchgeführt. Dieser Betrieb wird wiederholt, bis es unmöglich ist, einen neuen Ausfallanschluß oder einen neuen abgeleiteten Ausfalleingang zu finden, um so eine Ziel-Kombinations­ schaltung zu gewinnen, aus der auf der Basis der Netzliste der LSI die Netz­ informationen S4 der Kombinationsschaltung gewonnen werden.
Nach der Verarbeitung für den Schritt 102 zur Extrahierung der ersten Kombi­ nationsschaltung werden weiterhin die Schritte 103 und 104 durchgeführt. Im Schritt 103 werden unter Bezugnahme auf die Netzinformationen S3 für die gesamte Schaltung Datenflußinformationen in bezug auf den Datenfluß vom Ausgang einer ersten Flipflop-Gruppe 32, die sich an der Eingangsseite der Kombi­ nationsschaltung 33 befindet, an die Ausgangsanschlüsse oder die Eingänge einer zweiten Flipflop-Gruppe 34, die sich an der Ausgangsseite der Kombinationsschal­ tung befindet, wie in Fig. 8 gezeigt, für sämtliche möglichen Eingangsvektoren erstellt. Im nachfolgenden Schritt 105 wird durch Vorwärtsverfolgung von den anderen Ausgängen der ersten Flipflop-Gruppe 32 aus in Richtung auf die Ausgänge der LSI eine zweite, in Fig. 8 nicht gezeigte Kombinationsschaltung extrahiert. Die zweite Kombinationsschaltung befindet sich zwischen den ersten Ausgängen der Flipflop-Gruppe 32 und einer dritten Flipflop-Gruppe oder Ausgangsanschlüssen davon.
Nach dem Schritt 102 werden im Schritt 104 in Verdacht stehende Eingangsaus­ fallvektoren für die erste Kombinationsschaltung auf der Basis der Durchlauf/Aus­ fall-Informationen und der Netzliste für die erste Kombinationsschaltung extrahiert. Die in Verdacht stehenden Eingangsausfallvektoren können ein Eingangsmuster umfassen, das durch die erwarteten Ausgangswerte der ersten Flipflop-Gruppe als Antwort auf die möglichen Eingangsvektoren nicht erhalten wird.
Danach wird durch Simulation der ersten und der zweiten Kombinationsschaltung für jeden der in Verdacht stehenden Eingangsausfallvektoren beurteilt, ob die in Verdacht stehenden Eingangsausfallvektoren ein Ausgangsmuster liefern, das mit einem Teil des Ausfallausgangsmusters zusammenfällt, das in den Durchlauf/ Ausfall-Informationen aufgelistet ist, die von der ersten und der zweiten Kombina­ tionsschaltung übertragen werden. Somit werden abgeleitete Eingangsausfall­ vektoren abgeleitet, die die Ausgangsmuster liefern, die mit den Durchlauf/Ausfall- Informationen in bezug auf die erste und die zweite Kombinationsschaltung zusammenfallen. In der vorliegenden Ausführungsform umfassen die abgeleiteten Eingangsausfallvektoren sowohl eine Einzelausfallfortpflanzung als auch eine Mehrfachausfallfortpflanzung an jedem Eingangsanschluß der Kombinations­ schaltung.
Im Falle einer Mehrfachausfallfortpflanzung, die schematisch in Fig. 8 gezeigt ist, wird eine weitere Kombinationsschaltung 31 in der vorhergehenden Stufe unter­ sucht. Das heißt, Signalleitungen an der Eingangsseite der ersten Flipflop-Gruppe 32 werden von einem der abgeleiteten Ausfalleingänge der Kombinations­ schaltung 33 aus entlang Ausfallfortpflanzungswegen rückwärtsverfolgt, die durch gestrichelte Linien angezeigt sind, um Endpunkte 301 und 302 in einer vorhergehenden Kombinationsschaltung zu extrahieren, mit denen Netze verbunden sind, die den Ausfall fortpflanzen.
Nachfolgend werden Wege verfolgt, die mit den Endpunkten 301 und 302 verbunden sind, um einen Satz Ausfallfortpflanzungs-Signalleitungen zu extra­ hieren, die von einer gemeinsamen Signalleitung aus verzweigt sind und die mit Eingängen der Flipflop-Gruppe 32 verbunden sind. Als nächstes wird eine normale Logiksimulation durchgeführt, wobei der erwartete Wert S2 sämtlicher Flipflops und die Kombinationsschaltung 31 in der vorhergehenden Stufe verwendet werden, um Signalwege zu entfernen, die dann von der Kombinationsschaltung 31 nicht sensibilisiert werden. Überdies werden Taktsignalleitungen für die erste Flipflop-Gruppe 32 geprüft, um Taktsignalleitungen zu entfernen, die in diesem Zeitpunkt nicht freigegeben sind.
Im Schritt 106 von Fig. 6 wird eine Simulation zum Simulieren des Betriebs in der Vorwärtsrichtung durchgeführt, wobei die im Schritt 104 gewonnenen Eingangs­ ausfallvektoren verwendet werden, um diese in die erste und die zweite Kombinationsschaltung einzugeben. Im Schritt 107 werden die Ergebnisse an den Ausgängen der im Schritt 106 durchgeführten Simulation mit den Durchlauf/ Ausfall-Informationen verglichen, und es wird beurteilt, ob jedes der Ausgangs­ muster mit demjenigen zusammenfällt, das in den Durchlauf/Ausfall-Informationen aufgelistet ist. Die Eingangsausfallvektoren, die die Ausfallausgangsmuster liefern, die in den Durchlauf/Ausfall-Informationen aufgelistet sind, werden ausgewählt und im Schritt 108 als abgeleitete Ausgangsinformationen der ersten Flipflop- Gruppe 32 in einer Datei gespeichert.
Ein Eingangsausfallvektor, der ein Ausfallausgangsmuster liefert, das in den Durchlauf/Ausfall-Informationen nicht gefunden wird, wird unter der Annahme verworfen, daß die im Schritt 104 gewonnenen abgeleiteten Werte nicht richtig sind. Das Verfahren geht dann zum Schritt 109 weiter, in dem der nächste der in Verdacht stehenden Eingangsausfallvektoren ähnlich untersucht wird. Wenn im Schritt 109 beurteilt wird, daß das Ableitverfahren noch nicht für alle Eingangs­ ausfallvektoren durchgeführt worden ist, geht die Verarbeitung zum Schritt 102 zurück, um den Schritt 102 und die darauf folgenden Schritte zu wiederholen. Wenn im Schritt 109 beurteilt wird, daß das Ableitverfahren für sämtliche in Verdacht stehenden Eingangsausfallvektoren durchgeführt worden ist, geht das Verfahren zum Schritt 110 weiter, in dem Ausfälle in der Kombinationsschaltung 33 untersucht werden. Die detaillierte Prozedur des Schrittes 110 ist in Fig. 7 gezeigt, die später beschrieben wird.
Nachdem das Verfahren von Schritt 110 beendet ist, geht das Verfahren zum Schritt 111 weiter, in dem beurteilt wird, ob das Verfahren zum Ableiten einer fehlerhaften Stelle für die extrahierte Kombinationsschaltung durchgeführt worden ist. Wenn das Ableiten nicht durchgeführt werden kann, um abgeleitete fehler­ hafte Stellen zu gewinnen, geht das Verfahren zum Schritt 102 zurück, um die Prozeduren im Schritt 102 zur Extrahierung der vorhergehenden Kombinations­ schaltung und die darauf folgenden Schritte zu wiederholen.
Als nächstes wird unter Bezugnahme auf Fig. 7 die Prozedur des Schrittes 110 im Detail beschrieben. Im Schritt 201 werden erwartete Ausgangswerte S6 der ersten Flipflop-Gruppe 32 an der Eingangsseite der Kombinationsschaltung 33 unter Verwendung der Informationen zu den erwarteten Werten S5 der Flipflops extrahiert. Im Schritt 202 werden die erwarteten Werte S6 der ersten Flipflop- Gruppe 32 durch die im Schritt 108 gewonnene Datei für abgeleitete Eingangs­ ausfallvektoren S7 für die Flipflop-Gruppe 32 ersetzt und dann ausgelesen. Im Schritt 203 wird unter Verwendung der Datei für abgeleitete Eingangsausfall­ vektoren S7 für die Flipflop-Gruppe 32 eine erste Logiksimulation durchgeführt.
Im Schritt 204 wird unter Verwendung der Netzinformationen S4 der Kombina­ tionsschaltung 33 und der erwarteten Werte S6 der Flipflop-Gruppe 32 eine zweite und normale Logiksimulation durchgeführt. Im nachfolgenden Schritt 205 werden Status der jeweiligen Signalleitungen in der Kombinationsschaltung 33 unter Verwendung der Ergebnisse der Prozedur in den Schritten 203 und 204 miteinander verglichen, so daß auf der Basis des Unterschieds dazwischen ein Ausfallfortpflanzungsweg in der Kombinationsschaltung 33 extrahiert wird. Im nächsten Schritt 206 werden die im Schritt 205 gewonnenen Ausfall­ fortpflanzungswege für sämtliche Eingangsausfallvektoren miteinander verglichen, um überlappte Schaltungsteile zu extrahieren.
In Fig. 9 verlaufen die Signalleitungen 401, 402 und 403 von den Ausgängen der ersten Flipflop-Gruppe 35 in der Kombinationsschaltung 36 als Ausfallfortpflan­ zungswege, die mit Ausgangsleitungen der Kombinationsschaltung 36 verbunden sind. Diese Wege sind in Fig. 9 durch gestrichelte Linien dargestellt. Fig. 9 zeigt Gebiete 404, 405 und 406, in denen überlappte Teile der Ausfallfortpflanzungs­ wege verlaufen. Das Gebiet 404 umfaßt einen überlappten Weg der Signal­ leitungen 402 und 403 für abgeleitete Ausfälle, das Gebiet 406 umfaßt einen überlappten Weg der Ausfallfortpflanzungs-Signalleitungen 401 und 402, und das Gebiet 405 umfaßt einen überlappten Weg der Ausfallfortpflanzungs-Signalleitun­ gen 401, 402 und 403. Es wird nicht bestimmt, ob die Ausfälle in der Kombi­ nationsschaltung erzeugt werden oder ob sie sich von der vorhergehenden Stufe der Kombinationsschaltung vom Ausgangsmuster der Kombinationsschaltung 38 aus fortpflanzen.
Im Schritt 207 wird den festgestellten Kandidaten für fehlerhafte Stellen auf der Basis der im Schritt 206 gewonnenen Ergebnisse, die die Häufigkeit der Über­ lappung anzeigen, eine Prioritätsreihenfolge zugewiesen. Im Schritt 208 werden auf der Basis der Ergebnisse der Simulation die Gebiete gewonnen, denen die Priorität zugewiesen worden ist, und es wird für sämtliche Eingangsausfall­ vektoren geprüft, ob jedes Gebiet auf "0" oder "1" gestapelt ist. Danach geht die Verarbeitung zum Schritt 111 weiter (in Fig. 6 gezeigt).
Wie oben beschrieben, wird bei dem Verfahren gemäß der dritten Ausführungs­ form die Anzahl der zu simulierenden abgeleiteten Eingangsausfallvektoren zur Fehleruntersuchung extrahiert, da die erste und die zweite Kombinationsschaltung durch Rückwärts- und Vorwärtsverfolgung von einem Ausfallanschluß aus extrahiert werden und jedem der Ausgangsausfallmuster des Ausgangs aus der ersten und der zweiten Kombinationsschaltung ein Eingangsausfallvektor zugewie­ sen wird. Dementsprechend kann die Ausführungszeit für die Fehlersimulation verringert werden.
Wenn in einer Kombinationsschaltung ein Ausfallfortpflanzungsweg extrahiert wird, kann der Ausfallfortpflanzungsweg außerdem nur durch den Vergleich zwischen dem Ergebnis der ersten Simulation der ersten Kombinationsschaltung unter Verwendung von abgeleiteten Eingangsausfallvektoren und der zweiten Simulation extrahiert werden, die einen normalen Betrieb simuliert. Dement­ sprechend kann die Ausführungszeit verringert werden, die für die Simulation zum Lokalisieren des Ausfallweges benötigt wird. Zusätzlich kann selbst für eine rück­ transformierende Schaltung in einer Kombinationsschaltung ein Ausfallfort­ pflanzungsweg extrahiert werden.
Da bei dem Verfahren gemäß der vorliegenden Ausführungsform Eingangsausfall­ vektoren für die erste Kombinationsschaltung an der Eingangsgrenze der ersten Kombinationsschaltung ausgewählt werden, kann überdies der abgeleitete Ausfall­ fortpflanzungsweg an die vorhergehende Stufe der ersten Kombinationsschaltung zurückverfolgt werden. Selbst wenn ein Mehrfachfehler-Ausfall wie ein Brücken­ fehler-Ausfall auftritt, ist es daher möglich, sowohl Ausfallfortpflanzungswege, die unabhängig voneinander sind, als auch Ausfallfortpflanzungswege abzuleiten, die gegenseitig beeinflußt sind. Das Verfahren der vorliegenden Ausführungsform weist daher den Vorteil auf, daß während des Ableitens des Ausfallfortpflanzungs­ weges kaum Fehler auftreten.
Da die obigen Ausführungsformen nur als Beispiele beschrieben sind, ist die Erfindung nicht auf diese Ausführungsformen beschränkt, und auf der Basis der obigen Ausführungen ergeben sich für den Fachmann innerhalb des Rahmens der Erfindung verschiedene Modifizierungen und Abänderungen.

Claims (6)

1. Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI, das die folgenden Verfahrensschritte umfaßt:
Berechnen von erwarteten Ausgangswerten von Flipflops in der LSI für mögliche Eingangsprüfvektoren der LSI durch eine Logiksimulation;
Prüfen der LSI, um Durchlauf-/Ausfallanschluß-Informationen zu Ausgangs­ anschlüssen für die möglichen Eingangsprüfvektoren der LSI zu gewinnen;
Extrahieren einer Kombinationsschaltung mit einer Vielzahl von Eingängen, die jeder mit einem Eingangsanschluß oder Ausgang irgendeines Flipflop verbunden sind, und einer Vielzahl von Ausgängen, die jeder mit einem Ausgangsanschluß oder Eingang irgendeines Flipflop verbunden sind, auf der Basis der Netzliste der LSI und der Durchlauf-/Ausfallanschluß-Informationen, wobei die Kombinations­ schaltung andere Netze und Logikelemente als irgendeinen Flipflop umfaßt, der während einer Verfolgung der Netze und der Logikelemente erreicht wird, wobei die Verfolgung von einem ersten Ausfallausgangsanschluß aus durch Rückwärts­ verfolgung beginnt, die Verfolgung eine Vorwärtsverfolgung von einem Eingangs­ anschluß oder einem Ausgang irgendeines Flipflop aus umfaßt, der während einer Rückwärtsverfolgung erreicht wird, und die Verfolgung eine Verfolgung von wenigstens einem anderen Ausfallausgangsanschluß als dem ersten Ausfall­ anschluß aus umfaßt, der durch eine Verfolgung während des Extrahierens der Kombinationsschaltung erreicht wird;
Gewinnen von erwarteten Werten an jedem Knoten der Kombinationsschaltung für mögliche Eingangsvektoren für die Kombinationsschaltung auf der Basis der erwarteten Ausgangswerte des Flipflop und möglicher Eingangsvektoren durch eine Logiksimulation der Kombinationsschaltung; und
Ableiten einer fehlerhaften Stelle durch Vergleichen der Durchlauf- /Ausfallanschluß-Informationen mit den erwarteten Werten an jedem Knoten der Kombinationsschaltung.
2. Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI, wie in Anspruch 1 angegeben, das weiterhin die folgenden Verfahrensschritte umfaßt:
Extrahieren einer weiteren Kombinationsschaltung mit einer Vielzahl von Eingängen, die jeder mit einem Eingangsanschluß oder Ausgang irgendeines Flipflop verbunden sind, und einer Vielzahl von Ausgängen, die jeder mit einem Ausgangsanschluß oder Eingang irgendeines Flipflop verbunden sind, auf der Basis der Netzliste der LSI, wobei die weitere Kombinationsschaltung andere Netze und Logikelemente als irgendeinen Flipflop umfaßt, der während einer Verfolgung der Netze und der Logikelemente erreicht wird, wobei die Verfolgung durch Rückwärtsverfolgung von einem Flipflop aus beginnt, der einen abgeleiteten Ausfallausgang aufweist, der mit der Kombinationsschaltung verbunden ist, die Verfolgung eine Vorwärtsverfolgung von einem Eingangsanschluß oder einem Ausgang irgendeines Flipflop aus umfaßt, der während einer Rückwärtsverfolgung erreicht wird, und die Verfolgung eine Verfolgung von wenigstens einem anderen Ausfallausgangsanschluß als dem ersten Ausfallanschluß aus umfaßt, der durch eine Verfolgung während des Extrahierens der weiteren Kombinationsschaltung erreicht wird.
3. Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI, wie in Anspruch 1 angegeben, das weiterhin den Verfahrensschritt umfaßt, abgeleitete fehlerhafte Stellen in einer Prioritätsreihenfolge zu gewichten.
4. Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI, wie in Anspruch 1 angegeben, wobei das Vergleichen eine Rückwärtsverfolgung und eine Vorwärts­ verfolgung von einem Zweig aus umfaßt, der während der Verfolgung erreicht wird.
5. Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI, das die folgenden Verfahrensschritte umfaßt:
Prüfen der LSI, um Durchlauf-/Ausfallanschluß-Informationen zu Ausgangs­ anschlüssen für mögliche Eingangsprüfvektoren der LSI zu gewinnen;
Extrahieren einer ersten Kombinationsschaltung mit einer Vielzahl von Eingängen und einer Vielzahl von Ausgängen, einer ersten Flipflop-Gruppe von Flipflops, die jeder einen Ausgang aufweisen, der mit einem der Eingänge der ersten Kombinationsschaltung verbunden ist, und einer zweiten Flipflop-Gruppe von Flipflops, die jeder einen Eingang aufweisen, der mit einem der Ausgänge der Kombinationsschaltung verbunden ist, durch eine Verfolgung entlang anderen Netzen und durch andere Logikelemente hindurch als irgendeinen Flipflop in der LSI, wobei die Verfolgung von einem ersten Ausfallausgangsanschluß oder einem abgeleiteten ersten Ausfalleingang der zweiten Flipflop-Gruppe aus durch Rückwärtsverfolgung beginnt, die Verfolgung eine Vorwärtsverfolgung von einem Eingangsanschluß oder einem Ausgang irgendeines Flipflop aus umfaßt, der während einer Rückwärtsverfolgung erreicht wird, und die Verfolgung eine Rückwärtsverfolgung von wenigstens einem anderen abgeleiteten Ausfall­ ausgangsanschluß als dem ersten Ausfallanschluß oder wenigstens einen anderen Ausfalleingang der zweiten Flipflop-Gruppe als den abgeleiteten ersten Ausfall­ eingang der zweiten Flipflop-Gruppe umfaßt, der durch eine Vorwärtsverfolgung während des Extrahierens der Kombinationsschaltung erreicht wird;
Extrahieren einer zweiten Kombinationsschaltung mit Eingängen, die mit Aus­ gängen der ersten Flipflop-Gruppe verbunden sind, durch eine Vorwärtsverfolgung in Richtung auf Ausgangsanschlüsse;
Gewinnen von in Verdacht stehenden Eingangsausfallvektoren für die erste Kombinationsschaltung auf der Basis der Durchlauf-/Ausfallanschluß-Informa­ tionen und einer Netzliste, wobei die in Verdacht stehenden Ausfallvektoren über die erste Kombinationsschaltung jeder ein Ausgangsmuster liefern, das mit einem Teil eines Ausfallausgangsmusters zusammenfällt, das in den Durchlauf- /Ausfallanschluß-Informationen gefunden wird;
Auswählen von Eingangsausfallvektoren für die erste und die zweite Kombina­ tionsschaltung unter den in Verdacht stehenden Eingangsausfallvektoren durch eine Logiksimulation der ersten und der zweiten Kombinationsschaltung auf der Basis der Durchlauf-/Ausfallanschluß-Informationen, wobei die Eingangsausfallvek­ toren über die erste und die zweite Kombinationsschaltung ein Ausgangsmuster liefern, das mit einem Teil eines Ausfallausgangsmusters zusammenfällt, das in den Durchlauf-/Ausfallanschluß-Informationen gefunden wird;
Simulieren der ersten Kombinationsschaltung durch eine erste Simulation unter Verwendung der Eingangsausfallvektoren und durch eine zweite Simulation unter Verwendung von normalen Eingangsvektoren für die erste Kombinationsschaltung auf der Basis von erwarteten Ausgangswerten der ersten Flipflop-Gruppe; und
Ableiten eines fehlerhaften Netzes in der ersten Kombinationsschaltung durch Vergleichen eines Signals der ersten Simulation und eines entsprechenden Signals der zweiten Simulation in der ersten Kombinationsschaltung.
6. Verfahren zum Ableiten einer fehlerhaften Stelle einer LSI, wie in Anspruch 5 angegeben, wobei das Ableiten des fehlerhaften Netzes die Verfahrensschritte umfaßt, die Häufigkeit jedes der abgeleiteten Ausfallfortpflanzungswege in der ersten Kombinationsschaltung für die Eingangsausfallvektoren zu zählen und jeden der abgeleiteten Ausfallfortpflanzungswege mit einer Gewichtung zu versehen, um den abgeleiteten Ausfallfortpflanzungswegen eine Prioritätsreihenfolge zuzuweisen.
DE19536203A 1994-09-28 1995-09-28 Fehlerdiagnoseverfahren für eine sequentielle Schaltung Withdrawn DE19536203A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP6233353A JP2701753B2 (ja) 1994-09-28 1994-09-28 Lsiの故障箇所推定方法
JP6292866A JP2655105B2 (ja) 1994-11-28 1994-11-28 順序回路の故障箇所推定方法

Publications (1)

Publication Number Publication Date
DE19536203A1 true DE19536203A1 (de) 1996-04-11

Family

ID=26531005

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19536203A Withdrawn DE19536203A1 (de) 1994-09-28 1995-09-28 Fehlerdiagnoseverfahren für eine sequentielle Schaltung

Country Status (3)

Country Link
US (1) US5640403A (de)
KR (1) KR0180327B1 (de)
DE (1) DE19536203A1 (de)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5831437A (en) * 1996-01-05 1998-11-03 Rutgers University Test generation using signal flow graphs
JP2921502B2 (ja) * 1996-08-19 1999-07-19 日本電気株式会社 順序回路の故障箇所推定方法
US5896401A (en) * 1997-04-15 1999-04-20 Lucent Technologies Inc. Fault simulator for digital circuitry
JP3045111B2 (ja) * 1997-07-14 2000-05-29 日本電気株式会社 Lsi不良自動解析装置及びその解析方法並びにその方法をコンピュータに実行させるためのプログラムを記憶した記憶媒体
US6397362B1 (en) 1997-09-24 2002-05-28 Nec Corporation Fault diagnosis method and system for a sequential circuit
US6052809A (en) * 1997-10-16 2000-04-18 Teradyne, Inc. Method for generating test patterns
JPH11203158A (ja) * 1998-01-13 1999-07-30 Mitsubishi Electric Corp テスト回路付パイプライン回路およびテスト回路付パイプライン回路をテストするための自動テストパターン生成方法
US6237117B1 (en) * 1998-09-30 2001-05-22 Sun Microsystems, Inc. Method for testing circuit design using exhaustive test vector sequence
JP3734392B2 (ja) * 1999-10-29 2006-01-11 松下電器産業株式会社 半導体集積回路の故障検査方法及びレイアウト方法
JP3614811B2 (ja) 2001-02-15 2005-01-26 Necエレクトロニクス株式会社 組合せ論理回路における故障伝搬経路推定システム及び方法並びにプログラム
US6721914B2 (en) 2001-04-06 2004-04-13 International Business Machines Corporation Diagnosis of combinational logic circuit failures
US20050038697A1 (en) * 2003-06-30 2005-02-17 Aaron Jeffrey A. Automatically facilitated marketing and provision of electronic services
US7409593B2 (en) * 2003-06-30 2008-08-05 At&T Delaware Intellectual Property, Inc. Automated diagnosis for computer networks
US7324986B2 (en) * 2003-06-30 2008-01-29 At&T Delaware Intellectual Property, Inc. Automatically facilitated support for complex electronic services
US7237266B2 (en) * 2003-06-30 2007-06-26 At&T Intellectual Property, Inc. Electronic vulnerability and reliability assessment
US7818646B1 (en) * 2003-11-12 2010-10-19 Hewlett-Packard Development Company, L.P. Expectation based event verification
TW200622275A (en) * 2004-09-06 2006-07-01 Mentor Graphics Corp Integrated circuit yield and quality analysis methods and systems
US8812922B2 (en) * 2006-03-20 2014-08-19 Mentor Graphics Corporation Speeding up defect diagnosis techniques
US8615695B2 (en) * 2007-04-04 2013-12-24 Mentor Graphics Corporation Fault dictionary-based scan chain failure diagnosis
US7761765B2 (en) * 2007-07-27 2010-07-20 Gm Global Technology Operations, Inc. Automated root cause identification of logic controller failure
US7945417B2 (en) * 2007-07-30 2011-05-17 Carl Z. Zhou Method of digital extraction for accurate failure diagnosis
US20090287438A1 (en) * 2007-12-14 2009-11-19 Wu-Tung Cheng Increased Fault Diagnosis Throughput Using Dictionaries For Hyperactive Faults
US8413085B2 (en) * 2011-04-09 2013-04-02 Chipworks Inc. Digital netlist partitioning system for faster circuit reverse-engineering
CN104050086B (zh) * 2014-07-01 2017-12-05 南京邮电大学 基于组合测试的错误定位方法
US11816410B2 (en) * 2017-06-19 2023-11-14 Siemens Electronic Design Automation Gmbh System and method for formal fault propagation analysis

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3497685A (en) * 1965-11-03 1970-02-24 Ibm Fault location system
US3715573A (en) * 1971-04-14 1973-02-06 Ibm Failure activity determination technique in fault simulation
US3780277A (en) * 1972-07-13 1973-12-18 Bell Telephone Labor Inc Apparatus for propagating internal logic gate faults in a digital logic simulator
US4503536A (en) * 1982-09-13 1985-03-05 General Dynamics Digital circuit unit testing system utilizing signature analysis
US4527272A (en) * 1982-12-06 1985-07-02 Tektronix, Inc. Signature analysis using random probing and signature memory

Also Published As

Publication number Publication date
KR0180327B1 (ko) 1999-04-15
US5640403A (en) 1997-06-17
KR960012416A (ko) 1996-04-20

Similar Documents

Publication Publication Date Title
DE19536203A1 (de) Fehlerdiagnoseverfahren für eine sequentielle Schaltung
DE3787431T2 (de) Verfahren zur Generierung einer Kandidatenliste von fehlerhaften Schaltungselementen und Verfahren zur Isolierung von Fehlern in einer logischen Schaltung unter Verwendung dieser Kandidatenliste.
DE69712236T2 (de) Fehlerdiagnosevorrichtung für CMOS-integrierte Schaltungen und Diagnoseverfahren
DE69107463T2 (de) Integrierte Schaltung, System und Verfahren zur Fehlererzeugung.
DE3825260C2 (de) Verfahren zur fehlerdiagnose an elektrischen schaltungen und anordnung zum durchfuehren des verfahrens
DE60106799T2 (de) Probabilistische Diagnose, inbesondere für eingebettete Fernanwendungen
DE69817689T2 (de) Modellbasiertes Diagnosesystem mit automatisierten Verfahren für Auswahl von folgendem Test
DE69017785T2 (de) Verfahren zur Herstellung eines Expertensystems für Systemfehlerdiagnose.
DE2729053C2 (de) Prüfverfahren für eine monolithisch integrierte stufenempfindliche, einseitig verzögerungsabhängige logische Einheit
DE69229389T2 (de) Testsystem für Schaltkreise
DE69033360T2 (de) Simulation von ausgewählten Logik-Schaltungsentwürfen
DE602004009309T2 (de) Automatische testmustererzeugung
DE69226937T2 (de) Prüfverfahren für Leiterplatten
DE2515297A1 (de) Pruefsystem fuer logische netzwerke mit simulatororientiertem fehlerpruefgenerator
DE3625462A1 (de) Rechnerunterstuetzte fehlerisolation beim pruefen von gedruckten schaltungen
EP0580663B1 (de) Verfahren zur verifikation datenverarbeitender systeme
DE69017169T2 (de) Testen integrierter Schaltungen unter Verwendung von Taktgeberstössen.
DE112021003677T5 (de) Automatisierte unterstützte schaltkreisvalidierung
DE10393176T5 (de) Verfahren zum Evaluieren eines kernbasierten Systems auf einem Chip
DE60037719T2 (de) Verfahren zur ortung defekter elemente auf einer integrierten schaltung
DE69333510T2 (de) Verfahren und Gerät zur Prüfsequenzgenerierung
DE69934467T2 (de) Verfahren und Vorrichtung zur Auswahl von selektierten Komponenten in einem Test mit begrenztem Zugang
DE69127149T2 (de) Schaltungsprüf-Verfahren
DE3854636T2 (de) Automatischer Prüfprozess für logische Geräte.
DE19748016A1 (de) Kostengünstiges Prüfverfahren für Registerübertragungspegelschaltungen

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8127 New person/name/address of the applicant

Owner name: NEC ELECTRONICS CORP., KAWASAKI, KANAGAWA, JP

8139 Disposal/non-payment of the annual fee