DE2312731A1 - Verfahren zur auswahl einer folge von testsignalen - Google Patents

Verfahren zur auswahl einer folge von testsignalen

Info

Publication number
DE2312731A1
DE2312731A1 DE19732312731 DE2312731A DE2312731A1 DE 2312731 A1 DE2312731 A1 DE 2312731A1 DE 19732312731 DE19732312731 DE 19732312731 DE 2312731 A DE2312731 A DE 2312731A DE 2312731 A1 DE2312731 A1 DE 2312731A1
Authority
DE
Germany
Prior art keywords
test signal
sequence
circuit
signal groups
error
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.)
Pending
Application number
DE19732312731
Other languages
English (en)
Inventor
Robert Gordon Carpenter
Eric Lindbloom
Jun Maurice Thomas Mcmahon
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2312731A1 publication Critical patent/DE2312731A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/261Functional testing by simulating additional hardware, e.g. fault simulation
    • 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
    • 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
    • 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/318385Random or pseudo-random test pattern

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Tests Of Electronic Circuits (AREA)

Description

Böblingen, 14. Μ3ΓΖ,μπ3 -
bg-we/fr
Anmelderin: International Business Machines
Corporation, Armonk, U.Y. 10504
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin. FI 971 078
Verfahren zur Auswahl einer Folge von Testsignalen
Die vorliegende Erfindung betrifft das Testen von Schaltungen, insbesondere nichtlinearer Schaltungen.
Das Testen von integrierten Schaltungen geht im allgemeinen so vor sich, daß den Eingängen der zu überprüfenden Schaltungen elektrische Signale zugeführt werden, die sich auf einem von zwei Pegeln befinden und daß die dann am Ausgang erscheinenden Signale mit den Ausgangssignalen einer identischen Schaltung verglichen werden, deren Eingängen die gleichen Testsignale zugeführt wird und von dem man weiß, daß sie fehlerfrei ist. Durch diesen Vergleich kann man feststellen, ob die zu überprüfende Schaltung ebenfalls fehler frei ist.
Die Testsignale für die Prüfung von integrierten Schaltungen bestehen aus nacheinander zugeführten Testsignalgruppen, die aus je einem Signal für je einen Eingang bestehen und auf einem von zwei Pegeln befinden. Die Signale in jeder Testsignalgruppe werden entsprechenden Eingängen der zu prüfenden Schaltung und einer fehlerfreien Bezugsschaltung zugeführt. Wenn man beim
309838/0521
ORIGINAL INSPKJTED
Vergleich der Ausgangssignale der zu überprüfenden Schaltung und der Bezugsschaltung eine Nichtübereinstimmung feststellt, so bedeutet das, daß die geprüfte Schaltung fehlerbehaftet ist.
Die Erzeugung solcher Folgen von Testsignalgruppen ist bekannt. Eine Testsignalfolge kann von Hand oder mit einem Computer automatisch erzeugt werden. Die Folgen von Testsignalgruppen können sehr schnell mit einem Generator zur Erzeugung einer Zufallssignalfolge, wie in der Offenlegungsschrift 2 023 741 beschrieben, erzeugt werden.
Beim Entwurf von integrierten Schaltungen ist es natürlich notwendig, daß die integrierte Schaltung mit dem oben beschriebenen Verfahren überhaupt überprüft werden kann. Beim Entwurf integrierter Schaltungen ist deshalb darauf zu achten, daß in der Schaltung die Prüfung ermöglichende Schaltungsteile vorgesehen sind. Es ist außerdem notwendig, daß die Testsignalgruppen so variiert werden und so zahlreich sind, daß die integrierte Schaltung vollständig überprüft werden kann. Ein wesentlicher Fehler, der durch die Testsignalgruppen in einer integrierten Schaltung festgestellt werden können muß, ist der feste Fehler. Ein fester Fehler äußert sich darin, daß ein Eingang oder ein Ausgang von einer Torschaltung fest auf einem von zwei Pegeln steht, d.h. immer Eins oder immer Null ist. Alle diese Eingänge oder Ausgänge werden als Schaltungsknoten bezeichnet. Feste Fehler in einer schadhaften Schaltung werden im allgemeinen durch Herstellungsmängel, wie z.B. Leitungsunterbrechungen oder Kurzschlüsse, verursacht.
Die meistens benutzte Methode zur Bestimmung, οχ: eine integrierte Schaltung prüfbar ist, d.h. ob eine Testsignalgruppe geeignet ist, feste Fehler zu entdecken, wird als Fehlersimulation bezeichnet. Es muß bestimmt werden, ob alle oder wenigstens
Fi 971 078 309838/0521
nahezu alle festen Fehler eine Nichtübereinstimmung der Ausgangssignale zwischen der guten und der schlechten Schaltung ergeben. Die jetzt verwendete Fehlersimulation besteht darin, daß mehrere fehlerhafte integrierte Schaltungen simuliert werden, von denen jede einen anderen festen Fehler enthält. Die ausgewählte Testsignalgruppe wird dann jeder fehlerhaften Schaltung und der fehlerfreien Schaltung zugeführt. Der Vergleich der Ausgangssignale zeigt dann an, ob diese übereinstimmen oder nicht.
Mit der zunehmenden.Komplexität und Dichte der integrierten Schaltungen nach der neuesten Technik benötigt man immer längere Folgen von Testsignalgruppen, die nacheinander jeder zu testenden Schaltung zugeführt werden müssen. Natürlich nimmt auch mit solchen langen Folgen von Testsignalgruppen die benötigte Testzeit zu. Um z.B. eine integrierte Schaltung zu testen, die größenordnungsmäßig etwa 1000 feste Fehler aufweist, benötigt man etwa 3000 bis 5000 Testsignalgruppen, wenn diese durch einen erfahrenen Entwickler nach der deterministischen Methode ausgewählt worden sind. Wenn die Testsignalgruppen für die gleiche Schaltung mit 1016 möglichen Fehlern mit dem oben erwähnten Zufallsgenerator erzeugt worden wären, so müßte man mit etwa 10000 bis 15000 Testsignalgruppen testen.
Für Schaltungen, die nur kombinatorische Logik enthalten, ist es möglich, Folgen mit relativ wenig Testsignalgruppen zu verwenden, da es genügt, für jeden Fehler nur eine Testsignalgruppe zu verwenden, die diesen speziellen Fehler nachzuweisen in der Lage ist. Diese Reduzierung der Testsignalgruppen kann jedoch nicht möglich werden, wenn sequentielle nichtlineare Schaltungen geprüft werden sollen. Bei solchen sequentiellen Schaltungen erzeugt eine Testsignalgruppe nicht immer denselben Ausgang. Vielmehr hängen die Ausgangssignale auch von den Testsignalgruppen ab, die vor der Testsignalgruppe eingegeben wurden, bei
309838/0521
FI 971 078
-A-
deren Eingabe der Fehler entdeckt wurde. Es ergibt sich also daraus, daß die bekannten Folgen von Testsignalgruppen für die Prüfung sequentieller nichtlinearer Schaltungen sehr lang sind.
Aufgabe der Erfindung ist es, die Zahl der Testsignalgruppen, die zum vergleichenden Prüfen von Schaltungen benötigt werden, einzuschränken. Dadurch soll die Prüfzeit merklich vermindert werden, ohne daß die Prüfgenauigkeit darunter leidet.
Die Lösung der Erfindung ist im Patentanspruch 1 gekennzeichnet.
Die bekannten Folgen von Testsignalgruppen werden gewöhnlich durch den Entwickler ausgewählt, der auch die prüfbare inte grierte Schaltung entwickelt. Zur Erzeugung der Folgen von Testsignalgruppen kann der Entwickler bekannte Methoden nach den Offenlegungsschriften 2 023 741 oder 2 121 115 benutzen oder er kann nach der Test- und Fehlermethode vorgehen. In beiden Fällen reiht der Entwickler Testsignalgruppe an Testsignalgruppe, bis eine Folge entsteht, mit der man alle fe sten Fehler feststellen kann. Die übliche Lösung ist eine Testsignalgruppe zu erzeugen, eine Fehlersimulation vorzunehmen, um festzustellen, ob diese Testsignalgruppe alle gewünschten Fehler feststellt, und wenn die Testsignalgruppe diese Bedingung nicht erfüllt, weitere Testsignalgruppen zu überprüfen und dies solange zu wiederholen, bis alle Fehler festgestellt sind. Auf diese Weise werden insbesondere bei sequentiellen Schaltungen sehr lange Folgen von Testsignalgruppen erzeugt.
Bei dem vorliegenden Verfahren wird die Zahl der Testsignalgruppen in solchen Folgen dadurch reduziert, daß im Computer eine fehlerfreie Schaltung simuliert wird, die mehrere Eingangsknoten, wenigstens einen Ausgangsknoten und mehrere Zwischenknoten aufweist. Alle diese Knoten können sich auf einem von zwei Signalpegeln befinden. Im Computer wird eine entsprechende fehlerhafte Schaltung simuliert und zwar
309838/0521
für jeden festen Fehler, auf den geprüft wir"d, eine. Jede Simulation ist identisch mit der Simulation einer fehlerfreien Schaltung mit der Ausnahme, daß der eine dem festen Fehler entsprechende Knoten auf dem Pegel des Fehlers festgehalten wird. Dann wird für jede Simulation einer fehlerhaften Schaltung das folgende Verfahren durchgeführt. Die Testsignalgruppe aus der ursprünglichen Folge, mit der der bestimmte feste Fehler, der durch die fehlerhafte Schaltung charakterisiert ist, festgestellt wurde, wird den Simulationen der fehlerhaften und fehlerfreien Schaltung zugeführt und die Ausgangssignale von den Ausgängen dieser Schaltungssimulationen werden verglichen. Wenn die sich ergebenden Ausgangssignale nicht übereinstimmen, zeigt das an, daß die einzele Testsignalgruppe allein ausreicht, um den bestimmten festen Fehler zu entdecken. Die Testsignalgruppe wird gespeichert und bildet einen Teil der verkleinerten Folge von Testsignalgruppen.
Wenn andererseits die Ausgangssignale aus den Simulationen der fehlerfreien und fehlerhaften Schaltung übereinstimmen, zeigt das an, daß die zugeführte Testsignalgruppe allein nicht ausreicht, um den bestimmten festen Fehler festzustellen und daß der feste Fehler bei der bestimmten Testsignalgruppe in der ursprünglichen Folge nur zusammen mit einer oder mehreren davorliegenden Testsignalgruppen festgestellt wurde. Demzufolge wird mit dem erfindungsgemäßen Verfahren die notwendige Folge von Testsignalgruppen bestimmt, indem der fehlerfreien und der fehlerhaften Simulation eine Folge aus der davorliegenden Testsignalgruppe und der kurz zuvor zum Test benutzten Testsignalgruppe zugeführt werden. Wenn notwendig, wird dieses Verfahren wiederholt, indem die zugeführte Testsignalgruppenfölge bei jeder Wiederholung durch die nächste davorliegende Testsignalgruppe erweitert wird, bis die Ausgangssignale aus der fehlerfreien und der fehlerhaften Schaltungssimulation nicht mehr übereinstimmen. Nach Feststellung einer solchen hichtübereinstimmung wird die gesamte Testsignalgruppenfolge,
30983 8/0521
II 971 O78
die diese Nichtübereinstimmung ausgelöst hat, gespeichert, so daß sie später einen Teil der verkleinerten Folge von Testsignalgruppen bildet.
Das oben beschriebene Verfahren wird wiederholt, bis für jeden festen Fehler entweder eine einzelne Testsignalgruppe oder eine Folge von Testsignalgruppen gefunden ist, nach deren Zuführung Nichtübereinstimmung festgestellt wird. Alle Testsignalgruppen aus der ursprünglichen Testsignalfolge, die weder alleine noch als Glied einer Folge von Testsignalgruppen eine Nichtübereinstimmung für einen bestimmten Fehler auslösen, werden somit eliminiert und es bleibt eine verkleinerte Folge von Testsignalgruppen übrig, mit der es möglich ist, alle festen Fehler zu entdecken.
Es wurde festgestellt, daß sogar in einer solchen reduzierten Folge einige der Folgen von Testsignalgruppen in der Lage sind, mehr als einen Fehler festzustellen. Diese Redundanz in der Folge von Testsignalgruppen kann ebenfalls beseitigt werden. Aus der ursprünglichen Folge von Testsignalgruppen wird diejenige ausgewählt, bei der der letzte Fehler entdeckt wurde. Diese Testsignalgruppe wird der fehlerfreien Simulation und der fehlerhaften Simulation für den entdeckten Fehler zugeführt. Dann wird durch Wiederholung des oben beschriebenen Verfahrens eine einzelne Testsignalgruppe oder eine Folge von Testsignalgruppen bestimmt, die notwendig sind, bis eine Nichtübereinstimmung festgestellt wird. Wenn Nichtübereinstimmung festgestellt worden ist, so wird diese Testsignalgruppenfolge als Teil der verkleinerten Folge für die Feststellung des jeweiligen Fehlers gespeichert.
Die gleiche Folge von Testsignalgruppen wird dann der fehlerfreien simulierten Schaltung und den fehlerhaften simulierten Schaltungen für alle übriggebliebenen Fehler zur Prüfung zugeführt. Wenn zusätzliche Nichtübereinstimmung bei der Zuführung der Folgen von Testsignalgrupuen festgestellt wird,
3 09838/0521
FI 971 O7C
was anzeigt, daß diese Folge in der Lage ist, den jeweiligen festen Fehler festzustellen, dann werden diese Fehler ebenfalls in Verbindung mit der Folge von Testsignalgruppen gespeichert, die in der Lage ist, diesen Fehler festzustellen. Danach wird für jeden Fehler, für den noch keine Testsignalgruppe oder Folge von Testsignalgruppen, die diesen Fehler feststellen können, gefunden wurde, das Verfahren der Bestimmung der nächsten Testsignalgruppe oder der Folge von Testsignalgruppen durch Vergleich der fehlerfreien und der fehlerhaften Simulationen in der Reihenfolge abnehmender Zahlen von Testsignalgruppen wiederholt. Wenn einmal eine Testsignalgruppe oder eine Folge von Testsignalgruppen bestimmt ist, wird diese den fehlerfreien und fehlerhaften Simulationen für alle verbleibenden festen Fehler zugeführt, wobei bestimmt wird, ob eine Folge von Testsignalgruppen weitere Fehler entdeckt, welche dann zusammen mit dieser Folge gespeichert werden.
Dieses Verfahren wird wiederholt, bis keine Fehler verbleiben, für deren Entdeckung keine Testsignalgruppe oder Folgen von Testsignalgruppen vorhanden sind. Danach werden alle überflüssigen Testsignalgruppen beseitigt und die sich dadurch ergebende verkleinerte Folge von Testsignalgruppen sollte keine Redundanz enthalten.
Durch Verwendung des erfindungsgemäßen Verfahrens ist es möglich, eine drei- bis fünffache Verkleinerung der Zahl der Testsignalgruppen gegenüber der ursprünglichen Folge von Testsignalgruppen zu erhalten, wenn diese durch einen Schaltungsentwickler deterministisch entwickelt wurde und eine fünfzehn- bis achzehnfache Reduzierung in der Zahl der Testsignalgruppen, wenn die ursprüngliche Folge von Testsignalgruppen mit einem Zufallsgenerator entwickelt wurde.
Nachfolgend soll die Erfindung anhand von in den Fign. dargestellten Ausführungsbeispielen näher erläutert werden.
Fi 971 078 309 838/05 2 1
— ο ~
Beschreibung der Ausführungsbeispiele
Anhand der Fig. 1 wird zuerst beschrieben, wie die Fehlersimulation benutzt wird, um festzustellen, daß eine ursprüngliche Folge von Testsignalgruppen in der Lage ist, jeden der festen Fehler einer gegebenen Schaltung festzustellen. Außerdem soll die Beschreibung zeigen, wie die ursprünglichen Testsignalgruppen festgestellt werden, mit Hilfe derer ein bestimmter Fehler entdeckt wird. Gemäß Block 20 wird eine ursprüngliche Folge von Testsignalgruppen, die verkleinert werden soll, eingegeben. Diese Testsignalgruppen bestehen jeweils aus mehreren elektrischen Signalen, die sich auf einem von zwei Pegeln befinden. Jedes dieser Signale wird einem von mehreren Eingängen in die Schaltung, die getestet werden soll, zugeführt. Die Erzeugung oder Zusammensetzung solcher Testsignalgruppen ist bekannt. Die Testsignalgruppen können von Hand oder automatisch, z.B. durch einen Computer, erzeugt werden. Die Folge der Testsignalgruppen kann in irgendeiner Art von Speicher, z.B. in einem Computer oder in Lochkarten, gespeichert sein. Die gespeicherten Daten bestehen einfach aus Kombinationen von parallelen Einsen und Nullen in jeder Testsignalgruppe. Mehrere Testsignalgruppen sind in Fig. 5 dargestellt, in der die erste bis n-te Testsignalgruppe jeweils sieben parallele Signale enthält, von denen je eines einem der Eingänge 1 bis 7 der zu prüfenden Schaltung zugeführt wird.
Gemäß Block 21 in Fig. 1 wird ferner eine Liste der festen Fehler eingegeben, die automatisch bestimmt werden. Die Schaltung gemäß Fig. 3 soll als vereinfachtes Beispiel für eine nichtlineare sequentielle Schaltung gelten. Sie hat dreizehn Schaltungsknoten, die mit den Nummern 1 bis 13 gekennzeichnet sind. Jeder dieser Knoten kann zwei feste Fehler aufweisen, nämlich ein Festhalten einer Eins oder einer Null. Die Liste würde also 26 feste Fehler einschließen.
Fi 971 078 309838/05 2 1
Gemäß Block 22 der Fig. 1 wird im Computer eine Simulation einer fehlerfreien Schaltung erzeugt, die der zu prüfenden Schaltung ohne festen Fehler entspricht. In einer solchen fehlerfreien Simulation können sich alle Schaltungsknoten während des Betriebs jeweils auf einem von zwei Pegeln befinden. Solche Simulationen sind bekannt und werden anhand der Fign. 3 und 4 beschrieben. In Fig. 4 sind in der Spalte fehlerfreie Simulation die Befehle zur Erzeugung der Simulation aufgelistet. Die Listen der Fig. 3 dienen zur Simulation der Schaltung gemäß Fig. 3. Die Befehle der ersten Spalte der Fig. 4 sind nachfolgend etwas ausführlicher aufgelistet:
1 laden
2 ODER
Komplement von (2 ODER 1)
8 speichern
3 laden
4 LND 3
5 UIID (3 UND 4)
9 speichern
6 laaen
7 UND 6
10 speichern
9 laden
10 UND
IX speichern
3 laden
13 ODER
Komplement von (13 ODER 8)
12 speichern
11 laden
12 ODER
Komplement von (12 ODER 11)
13 speichern.
309838/0521
I1I 9 71 078
Gemäß Block 23 der Fig. 1 muß eine Computersimulation einer fehlerhaften Schaltung für jeden festen Fehler erzeugt werden. Da es 26 mögliche feste Fehler im Beispiel der Fig. 3 gibt, müssen also 26 fehlerhafte Schaltungen simuliert werden. In Fig. 4 sind die Befehlsfolgen zur Bildung der Computersiiaulation für vier Beispiele aus den 26 fehlerhaften Schaltungssimulationen angegeben. In der fehlerhaften Schaltungssimulation für einen festen Fehler, bei welchem der Knoten 3 der Schaltung gemäß Fig. auf einer Eins feststeht, sind in Fig. 4 die befehle in der zweiten Spalte angegeben, die identisch mit denen der fehlerfreien Simulation sind, außer daß der fünfte Befehl "Eins Laden" ist, was bedeutet, daß unabhängig von dem Wert des dem Punkt 3 zugeführten Signals der Punkt 3 immer auf Eins steht. Ebenso werden für die simulierte fehlerhafte Schaltung, bei welcher der Knoten 3 immer auf Null steht, die Befehle ebenfalls identisch mit den Befehlen der fehlerfreien Simulation sein mit der Ausnahne, daß der Knoten 3 fest auf Null steht. Bei den anderen beiden Beispielen von fehlerhaften Schaltungssimulationen, bei welchen der Knoten 11 auf Eins oder Null feststeht, ergibt sich aus der Fig. 4, wie die Befehle für diese Simulationen aussehen müssen.
Nachdem die verschiedenen Eingabewerte beschrieben sind, soll jetzt erläutert werden, wie aus den Testsignalgruppen der ursprünglichen Folge diejenigen ausgesucht werden, die für die Feststellung der 26 festen Fehler in dem Beispiel eier Fig. 3 unbedingt notwendig sind. Es sei angenommen, daß die Testsignalgruppen in der Fig. 5 die ursprüngliche Folge von Testsignalgruppen ist, wobei jede Testsignalgruppe sieben Signale zweier bestimmter Pegel aufweisen und je ein Signal den Eingängen 1 bis 7 der Schaltung zugeführt wird. Zuerst wird axe Zahl Eins in einen Testsignalgrutjpenzähler eingegeben, wie der Block 24 zeigt. Gemäß Block 25 wird die erste Testsignalgruppe, axe an dieser Stelle die nächstfolgende Testsignalgruppe ist, der fehlerfreien Schaltungssimulation und jeder der 26 fehlerhaften Schaltungssirnulationen zugeführt. Die Ausgangssignale der fehlerfreien Simulation werden mit den Ausgängen jeder der
309838/0521
FI 971 078
26 fehlerhaften Simulationen gemäß Block 26 verglichen. Diese Ausgangssignale stammen in jedem Fall von den Ausgängen 12 und der Schaltung gemäß Fig. 3. Im nächsten Block 27 wird eine Entscheidung getroffen, ob zwischen den Ausgangssignalen der fehlerfreien und den fehlerhaften Simulationen Nichtübereinstimmung vorhanden ist. Wenn eine Nichtübereinstimmung festgestellt wird, dann wird die Kennzeichnung der fehlerhaften Simulation und die Nummer der Testsignalgruppe gemäß Block 28 gespeichert. Wenn z.B. die erste Testsignalgruppe bei der fehlerhaften Simulation des Knotens 11, der auf NNuIl liegt, eine solche Nichtübereinstimmung feststellt, dann würde die gespeicherte Information die erste Testsignalgruppe aus der ursprünglichen Folge und als zugehörigen festen Fehler die Eins im Knoten 11 angeben. Im nächsten Block 29 würde die fehlerhafte Simulation, die eine Nichtübereinstimmung auslöste, bei den nachfolgenden Vergleichen nicht mehr mit herangezogen werden.
Danach wird zum Entscheidungsblock 30 verzweigt. Wenn andererseits gemäß Block 27 Obereintimmung festgestellt wurde, wird direkt zum Block 30 übergegangen. Da im vorliegenden Beispiel immer noch 25 fehlerhafte Schaltungen überprüft werden müssen, wird auf dem Ja-Pfad vom Block 30 zum Block 31 übergegangen und gemäß Block 31 eine Eins in den Testsignalgruppenzähler addiert. Danach wird zurückgegangen zum Block 25, wodurch die zweite Testsignalgruppe der fehlerfreien Schaltungssimulation und den verbleibenden 25 fehlerhaften Schaltungssimulationen zugeführt wird und das Verfahren wiederholt wird, bis die Entscheidung aus dem Block 30 Nein ist, was anzeigt, daß keine fehlerhaften Schaltungssimulationen übrig geblieben sind. Gemäß Block 28 sind alle Schaltungsfehler und die Nummern der Testsignalgruppen, bei welchen Nichtübereinstimmung festgestellt wurde, vorher gespeichert worden. Vom Nein-Ausgang des Entscheidungsblockes 30 wird zur Fig. IA übergegangen. Als Eingangswerte für das nachfolgende Verfahren wird die gespeicherte Liste aller Fehler mit den Testsignalgruppennummern, mit denen die jeweiligen Fehler entdeckt wurden, benutzt. Dieser Schritt ist durch Block 32 gekennzeichnet. Im Verfahren gemäß Fig. IA wird die Zahl der Testsignalgruppen
309838/0521
FI 971 078
aus der ursprünglichen Folge vermindert.
Gemäß Block 33 wird dann die Zahl der festzustellenden Fehler m in den Fehlerzähler eingegeben. Da im vorliegenden Beispiel 26 Fehler festzustellen sind, wird in den Fehlerzähler die Zahl 26 eingegeben. Gemäß Block 34 wird die n-te Testsignalgruppe der fehlerfreien Schaltungssimulation und der fehlerhaften Schaltungssimulation, die dem bei der η-ten Testsignalgruppe entdeckten Fehler entspricht, eingegeben, η ist die nächsthöhere Testsignalgruppe für einen auf der Fehlerliste verbleibenden Fehler. Da im Anfangsstadium alle 26 Fehler auf der Fehlerliste stehen, ist η die höchste Nummer in der ursprünglichen Testsignalgruppenfolge, bei welcher einer von den 26 Fehlern entdeckt wird. Dann wird die Zahl η gemäß Block 35 gespeichert. Gemäß Block 36 wird außerdem die Zahl η in den Testsignalgruppenzähler eingegeben. Im Block 37 wird bestimmt, ob die Ausgangssignale aus der fehlerfreien und der fehlerhaften Simulation, welchen die n-te Testsignalgruppe zugeführt wird, nicht übereinstimmen.
Wenn die Entscheidung Nein ist, d.h., wenn die Ausgangssignale übereinstimmen, wird vom Testsignalgruppenzähler Eins abgezogen. Diese Übereinstimmung zeigt an, daß dWe n-te Testsignalgruppe allein nicht ausreicht, um den Fehler festzustellen, obwohl in der ursprünglichen Folge dieser Fehler bei der η-ten Signalgruppe festgestellt wurde. Es wurde oben bereits erwähnt, daß im Falle von sequentiellen nichtlinearen Schaltungen die Ausgangssignale nicht einfach von den unmittelbar vorher zugeführten Eingangssignalen abhängen, sondern auch von den davor zugeführten Testsignalgruppen. Diese Folge von Testsignalgruppen wird nun durch Zurückverfolgung bestimmt. Die Folge von Testsignalgruppen i bis η wird der fehlerfreien Schaltungssimulation und der gleichen fehlerhaften Schaltungssimulation gemäß Block 39 zugeführt. i ist die Zahl im Testsignalgruppenzähler. Da im vorliegenden Fall i um Eins kleiner ist als n, besteht die Folge i-n aus der Testsignalgruppe, die vor der η-ten Testsignalgruppe liegt und der η-ten Testsignalgruppe selbst. Nimmt man beispielsweise
309838/0521
FI 971 078
an, daß die höchste Testsignalgruppe, bei v/elcher ein Fehler in der ursprünglichen Folge entdeckt wurde, die Nummer 400 trägt, so würde die Folge aus den Testsignalgruppen 399 und 400 bestehen. Wenn die Aussage des Blocks 37 immer noch Nein ist, was anzeigt, daß immer noch Übereinstimmung besteht, dann wird wiederum Eins vom Testsignalgruppenzähler subtrahiert (Block 38) und die 398te, 399te und 400te Testsignalgruppe wird der fehlerfreien und der fehlerhaften Simulation zugeführt. Die aus den Blöcken 37-39 bestehende Schleife wird so lang durchlaufen, bis schließlich Nichtübereinstimmung festgestellt wird, was einen Ja-Ausgang aus dem Block 37 zur Folge hat. Dann wird die Folge von Testsignalgruppen i-n, die schließlich die Nichtübereinstimmung für die fehlerhafte Schaltung entsprechend einem bestimmten Fehler auslöste, als Teil der verkleinerten Folge zur Feststellung dieses bestimmten Fehlers gespeichert (Block 40).
Im nächsten Block 41 wird Eins vom Fehlerzähler subtrahiert und im Entscheidungsblock 42 bestimmt, ob der Fehlerzähler gleich Null ist. Da wir nur den ersten der 26 Fehler in unserem Beispiel untersucht haben, ist der Fehlerzähler noch nicht gleich Null und es wird auf dem Nein-Pfad 1ZUm Block 43 weitergegangen, gemäß dem die nächste n-te Testsignalgruppe aus der ursprünglich eingegebenen Fehlerliste bestimmt wird. Die nächste n-te Testsignalgruppe ist die nächsthöchste Testsignalgruppe für einen noch nicht untersuchten Fehler auf der Liste. Dieser Nein-Pfad enthält eine mög- > liehe Verzweigung nach Fig. 2 gemäß einer Weiterbildung der Erfindung, die später beschrieben werden soll. Der Datenfluß läuft dann zurück zum Block 34, durch den die nächste n-te Testsignalgruppe der fehlerfreien Schaltungssimulation und der fehlerhaften Cchaltungssiraulation, die dem jeweiligen entdeckten Fehler entspricht, zugeführt wird. Nimmt man z.B. an, daß die 22Ote Testsignalgruppe diese n-te Testsignalgruppe ist, dann v/irü die iJummer 220 gemäß Block 35 gespeichert und die Zahl 220 v/ird in den Testsignalgruppenzähler gemäß Block 36 eingegeben. Dann v/ird die Schleife, die aus den Blöcken 37-39 besteht, wiederholt, bis die neue Folge i-n eine Nichtübereinstimmung im Block
309838/0521
FI 971 078
37 ergibt, wonach dann die neue Folge i-n gemäß Block 40 als Folge von Testsignalgruppen zur Feststellung dieses nächsten Fehlers gespeichert wird. Wenn die n-te Testsignalgruppe allein eine Nichtübereinstiroiaung im Entscheidungsblock 37 ergibt, so würde diese Folge natürlich nur aus der η-ten Signalgruppe bestehen, die für diesen Fehler die 22Ote Testsignalgruppe wäre.
In jedem Fall wird aber vom Inhalt des Fehlerzählers Eins subtrahiert (Block 41) und bestimmt (Block 42) ob der Fehlerzähler gleich Null ist. Wenn Nein, wird dieses Verfahren wiederholt, bis ausreichend Folgen i-n zur Feststellung jeder der 26 Fehlerbedingungen gespeichert sind. In diesem letzteren Falle wäre der Fehlerzähler gleich Hull (i3lock 42) und es würae auf dem Ja-Pfad zum Block 44 weitergegangen, ge.xiäß welchem man das Ergebnis aus mehreren Folgen i-n zur Entdeckung jeder der 26 Fehler erhält. An dieser Stelle sina alle Testsignalgruppan aus der ursprünglichen Folge, die nicht Teil solcher i-n oder η Folgen in der verkleinerten Folge von Testsignalgruppen eliminiert. Es bleibt also eine Folge von Testsignalgruppen übrig/ dxe gegenüber der ursprünglichen Folge stark verkleinert ist und trotzdem in der Lage ist, alle Fehlerbedingungen festzustellen.
Bisher wurde das vorzugsweise Ausführungsbeispiel für das erfindungsgemäße Verfahren beschrieben. Nachfolgend soll eine Weiterbildung des erfindungsgemäßen Verfahrens erläutert werden, das eine weitere Verminderung der Zahl der Testsignalgruppen ermöglicht. Für das Beispiel der Fig. IA soll angenommen werden, daß im ersten Schritt der Wert η 300 war, d.h. die 300te Testsignalgruppe die höchste in der ursprünglichen Folge war, bei der einer der 26 Fehler entdeckt wurde. Im Beispiel der Fig. wurde bei der Schleife aus den Blöcken 37 bis 39 angenommen, daß zur Erzielung eines Ja-Ausganges aus dem Block 37 eine Folge der Testsignalgruppen 295 bis 300 notwendig war.
Nach diesen Anfangsschritten kann die mögliche Verzweigung nach Fig. 2 erfolgen. Auch hier wird wieder die Simulation der fehler-
309838/0521
FI 971 078
freien Schaltung und aller fehlerhaften Schaltungen benötigt (Block 50). Die Folge i-n, d.h. die Testsignalgruppen 295-300 werden der fehlerfreien Simulation und allen fehlerhaften Simulationen entsprechend den verbleibenden Fehlern in der Fehlerliste (Block 51) zugeführt. In diesem Zustand wären dies die übrigen 25 Fehler. Im Block 52 wird bestimmt, ob irgendeine weitere der fehlerhaften Schaltungen Nichtübereinstimmung ergibt. Wenn andere fehlerhafte Schaltungen bei der Zuführung der Folge aus den Testsignalschritten 295 bis 3OO Nichtübereinstimmung ergeben, werden die zusätzlichen Fehler, die diesen Schaltungen entsprechen, den Fehlern hinzugefügt, die durch die Folge i-n (295-300) festgestellt werden (Block 53). Diese neu festgestellten Fehler werden dann aus der Fehlerliste (Block 54) entfernt und die Zahl dieser Fehler wird von der Einstellung des Fehlerzählers abgezogen (Block 55). Gemäß Block 56 wird dann entschieden, ob der Fehlerzähler auf Null steht. Wenn die Entscheidung Nein lautet und ebenso, wenn die Entscheidung im Block 52 Nein war, kann die Folge 295-3OO keine zusätzlichen Fehler mehr entdecken und das Verfahren wird in Fig. 1Ά weitergeführt, und zwar im Block 43, in welchem der nächste Wert η bestimmt wird. . Dies ist die höchste Testsignalgruppe, bei welcher ein verbleibender Fehler in der Liste festgestellt wird. Danach läuft das Verfahren durch die Blöcke 34, 35 und 36 und die Schleife 37-39 um die nächste Folge i-n von Testsignalgruppen zur Feststellung des nächsten Fehlers zu bestimmen. Wenn dann der Fehlerzähler 42 nicht gleich Null ist, wodurch angezeigt wird, daß noch weitere Fehler festzustellen sind, verzweigt die Schaltung wiederum zur Fig. 2.
Es sei angenommen, daß diese neue Folge i-n aus den Testsignalgruppen 210-220 besteht. Diese Testsignalgruppen werden der fehlerfreien Simulation und den fehlerbehafteten Simulationen entsprechend allen in der Fehlerliste verbliebenen Fehlern zugeführt (Block 51). Wieder wird hier bestimmt, ob weitere fehlerhafte Schaltungen vorhanden sind, die bei der Zuführung dieser neuen Folge i-n Nichtübereinstimmung ergeben (Block 52). Wenn
309838/0521
FI 971 078
dann andere neu entdeckte Fehler vorhanden sind, werden diese der gespeicherten Information hinzugefügt, die angibt, daß die neue Folge i-n solche zusätzlichen Fehler festzustellen in der Lage ist (Block 53). Diese neu festgestellten Fehler werden aus der Fehlerliste gemäß Block 54 entfernt und die Zahl dieser zusätzlichen Fehler wird vom Inhalt des Fehlerzählers abgezogen (Block 55). Wenn der Fehlerzähler noch nicht Null entspricht (Block 56), wird das Verfahren nach Fig. IA fortgesetzt und damit das ganze Verfahren wiederholt.
Wenn schließlich der Fehlerzähler gemäß Block 56 oder gemäß Block 42 in Fig. IA Null anzeigt, werden die verschiedenen Testsignalgruppenf olgen i-n und die Fehler, die jede Folge feststellt, gemäß Block 57 ausgegeben. An dieser Stelle werden alle Testsignalgruppen aus der ursprünglichen Testsignalgruppenfolge, die nicht zu einer dieser Folgen gehören, entfernt, wodurch eine stark verkleinerte Folge von Testsignalgruppen übrigbleibt, die trotzdem in der Lage ist, jeden Fehler in der Schaltung festzustellen.
309838/Q521
FI 971 078

Claims (5)

  1. - 17 -
    PATENTANSPRÜCHE
    Verfahren zur Auswahl einer Folge von Testsignalgruppen aus einer redundanten Folge von Testsignalgruppen, die zur Prüfung einer Serie von gleichen Schaltungen in der Weise dienen, daß die Testsignalgruppen nacheinander je einer zu prüfenden Schaltung und einer fehlerfreien entsprechenden Schaltung zugeführt und deren Ausgangssignale verglichen werden, dadurch gekennzeichnet, daß in einem Computer eine fehlerfreie Schaltung und für jeden möglichen Fehler eine fehlerhafte Schaltung simuliert werden, daß nacheinander den Eingängen der fehlerfreien simulierten Schaltung und den Eingängen je einer der fehlerhaften simulierten Schaltungen die Testsignalgruppen der redundanten Folge von Testsignalgruppen zugeführt werden, daß die Ausgangssignale je einer fehlerhaften simulierten Schaltung und der fehlerfreien simulierten Schaltung verglichen werden und daß bei Nichtübereinstimmung der Ausgangssignale beider simulierter Schaltungen Kennzeichnungen der Testsignalgruppe und der fehlerhaften simulierten Schaltung, bei denen Nichtübereinstimmung festgestellt wurde, gespeichert werden, daß nach Feststellung von Nichtübereinstimmung für jede simulierte fehlerhafte Schaltung die gespeicherten Testsignalgruppen noch einmal der fehlerfreien und der fehlerhaften Schaltung, bei der diese Testsignalgruppe Nichtübereinstimmung ergab, zugeführt werden, daß bei Übereinstimmung in beiden simulierten Schaltungen eine Folge von Testsignalgruppen zugeführt wird, die aus der in der ursprünglichen Folge vor der gespeicherten Testsignalgruppe liegenden Testsignalgruppe und der gespeicherten Testsignalgruppe besteht und daß, wenn auch hier wieder Übereinstimmung erzielt wird, die Folge um die in der ursprünglichen Folge jeweils davorliegende Testsignalgruppe erweitert wird, bis mit einer Folge schließlich Nichtübereinstimmung festgestellt wird und daß diese Folge dann für die über-
    309838/0521
    FI 971 078
    prüfung der Schaltungen gespeichert und dieser Vorgang für jede der simulierten fehlerhaften Schaltungen wiederholt wird.
  2. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die gespeicherten Testsignalgruppen zu den zweiten Tests in umgekehrter Reihenfolge wie in der ursprünglichen Folge von Testsignalgruppen herangezogen werden.
  3. 3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß, nachdem im zweiten Test mit einer Folge von Testsignalgruppen für eine simulierte fehlerfreie Schaltung Nichtübereinstiromung festgestellt wurde, diese Folge nacheinander allen simulierten fehlerhaften Schaltungen, für die noch keine ihre Fehler feststellenden Folgen von Testsignalgruppen gespeichert wurden, zugeführt wird, und daß bei Nichtübereinstimmung der Ausgangssignale von fehlerfreier und einer fehlerhaften simulierten Schaltung die Kennzeichnung dieser fehlerhaften Schaltung von der Liste derjenigen, für die noch eine Folge von Testsignalgruppen ermittelt werden muß, gelöscht wird.
  4. 4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die Zahl der Fehler, für deren Feststellung noch keine Folge von Testsignalgruppen gefunden worden ist, in einem Fehlerzähler gespeichert ist.
  5. 5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Kennzeichnung der gerade zugeführten Testsignalgruppe in einem Testsignalgruppenzähler gespeichert ist.
    3 O 9 β 3 β / O 5 2 1
    FI 971 073
DE19732312731 1972-03-17 1973-03-14 Verfahren zur auswahl einer folge von testsignalen Pending DE2312731A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US23548572A 1972-03-17 1972-03-17

Publications (1)

Publication Number Publication Date
DE2312731A1 true DE2312731A1 (de) 1973-09-20

Family

ID=22885702

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19732312731 Pending DE2312731A1 (de) 1972-03-17 1973-03-14 Verfahren zur auswahl einer folge von testsignalen

Country Status (5)

Country Link
CA (1) CA1000361A (de)
DE (1) DE2312731A1 (de)
FR (1) FR2176684B1 (de)
GB (1) GB1403805A (de)
IT (1) IT981196B (de)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5475624A (en) * 1992-04-30 1995-12-12 Schlumberger Technologies, Inc. Test generation by environment emulation

Also Published As

Publication number Publication date
CA1000361A (en) 1976-11-23
IT981196B (it) 1974-10-10
FR2176684B1 (de) 1979-10-05
GB1403805A (en) 1975-08-28
FR2176684A1 (de) 1973-11-02

Similar Documents

Publication Publication Date Title
DE69116919T2 (de) Selbsttestverfahren für inhaltsadressierbare Speicher
DE2311034C2 (de) Verfahren zum Prüfen eines integrierte logische Verknüpfungs- und Speicherglieder enthaltenden Halbleiterchips
DE3825260C2 (de) Verfahren zur fehlerdiagnose an elektrischen schaltungen und anordnung zum durchfuehren des verfahrens
DE19742446B4 (de) Fehlerdiagnoseverfahren
DE3516755C2 (de)
DE2515297A1 (de) Pruefsystem fuer logische netzwerke mit simulatororientiertem fehlerpruefgenerator
DE3702408C2 (de)
DE10225381A1 (de) Verfahren und Vorrichtung zum Speichern von Speichertestinformantion
DE3786381T2 (de) Prüfverfahren und -gerät für ein verteiltes Verarbeitungssystem.
DE2614000A1 (de) Einrichtung zur diagnose von funktionseinheiten
DE4031136C2 (de)
DE3832440A1 (de) Testschaltungseinrichtung
DE2121330C3 (de) Verfahren und Schaltungsanordnung zum Prüfen digital arbeitender elektronischer Geräte und ihrer Bauteile
DE19601862C2 (de) Vorrichtung und Verfahren zur Entdeckung von fehlerhaften Logikteilschaltungen mittels eines anomalen Ruheversorgungsstroms
DE10111831A1 (de) Verfahren zum automatischen Suchen und Sortieren von Fehlersignaturen von Wafern
DE3486064T2 (de) Logische schaltung mit eingebauter selbsttestfunktion.
DE2441486C2 (de) Verfahren zur automatischen Fehlerprüfung eines elektrischen Schaltkreises und Einrichtung zur Durchführung des Verfahrens
DE2235802A1 (de) Verfahren und einrichtung zur pruefung nichtlinearer schaltkreise
DE69229160T2 (de) Prüfmustererzeugungsverfahren für Abtastschaltung
DE2312731A1 (de) Verfahren zur auswahl einer folge von testsignalen
DE3422287A1 (de) Pruefanordnung fuer digitalschaltungen
DE69229093T2 (de) Verfahren zur Prüfsequenzerzeugung
DE10328719B4 (de) Verfahren zum Testen von elektronischen Bauteilen
DE3638256A1 (de) Schaltung zur erzeugung kuenstlicher fehler fuer eine datenverarbeitungsanlage
DE69112880T2 (de) Prüfen von Direktzugriffsspeichern.

Legal Events

Date Code Title Description
OHJ Non-payment of the annual fee