DE10053758A1 - Verfahren und Vorrichtung zur Fehlersimulation bei einer integrierten Halbleiterschaltung - Google Patents
Verfahren und Vorrichtung zur Fehlersimulation bei einer integrierten HalbleiterschaltungInfo
- Publication number
- DE10053758A1 DE10053758A1 DE10053758A DE10053758A DE10053758A1 DE 10053758 A1 DE10053758 A1 DE 10053758A1 DE 10053758 A DE10053758 A DE 10053758A DE 10053758 A DE10053758 A DE 10053758A DE 10053758 A1 DE10053758 A1 DE 10053758A1
- Authority
- DE
- Germany
- Prior art keywords
- error
- logic
- test pattern
- semiconductor
- sequence
- 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.)
- Ceased
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 76
- 239000004065 semiconductor Substances 0.000 title claims abstract description 75
- 238000000034 method Methods 0.000 title claims description 108
- 230000011664 signaling Effects 0.000 title abstract 3
- 230000008569 process Effects 0.000 title description 10
- 238000012360 testing method Methods 0.000 claims abstract description 304
- 230000001052 transient effect Effects 0.000 claims abstract description 159
- 230000007547 defect Effects 0.000 claims description 16
- 108010076504 Protein Sorting Signals Proteins 0.000 claims description 8
- 238000003780 insertion Methods 0.000 claims description 6
- 230000037431 insertion Effects 0.000 claims description 6
- 230000007704 transition Effects 0.000 description 67
- 230000008859 change Effects 0.000 description 26
- 238000001514 detection method Methods 0.000 description 19
- 230000005856 abnormality Effects 0.000 description 16
- 230000004044 response Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000002950 deficient Effects 0.000 description 7
- 230000003071 parasitic effect Effects 0.000 description 7
- 239000000872 buffer Substances 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000010998 test method Methods 0.000 description 5
- 230000007423 decrease Effects 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000000630 rising effect Effects 0.000 description 3
- 239000003990 capacitor Substances 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 210000003608 fece Anatomy 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 229910021420 polycrystalline silicon Inorganic materials 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3183—Generation of test inputs, e.g. test vectors, patterns or sequences
- G01R31/318342—Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/30—Marginal testing, e.g. by varying supply voltage
- G01R31/3004—Current or voltage test
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
Eine Prüfmusterfolge wird erzeugt (101), dann eine Logiksimulation der Operation eines zu prüfenden ICs im Fall der Eingabe jedes Prüfmusters der Prüfmusterfolge und einer Logiksignalwertfolge, die auf jeder Signalleitung des zu prüfenden ICs auftritt (102). Die Logiksignalwertfolge auf jeder Signalleitung wird verwendet, um in einer Fehlerliste Teile (ein Logikgatter, eine Signalleitung oder einen Signalausbreitungsweg) zu registrieren, in denen ein Fehler (ein Verzögerungsfehler oder ein Offen-Fehler), der durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbar ist, mit Wahrscheinlichkeit auftreten kann (103).
Description
Die vorliegende Erfindung betrifft ein Verfahren und eine Vorrichtung zur Fehlersimulation, die
eine Liste von Fehlern in einer integrierten Halbleiterschaltung anlegen, die unter Verwendung
einer bestimmten Prüfmusterfolge erfaßbar sind.
Bei herkömmlicher Fehlersimulation einer integrierten Halbleiterschaltung (im folgenden als
Halbleiter-IC oder als einfach als IC bezeichnet) werden vorgegebene Prüfmuster in den Halbleiter-
IC eingegeben, in dem Fehler angenommen werden, dann werden Antwort-Ausgabewerte, die
von seinem Ausgabeanschluß verfügbar sind, durch eine Logiksimulation berechnet, um Abwei
chungen in den Ausgabewerten relativ zu den unter fehlerfreien Bedingungen erhältlichen zu
erfassen, und die so erhaltenen Ergebnisse werden als eine Vergleichstabelle von angenommenen
Fehlern und Eingabe/Ausgabe-Logikwerten zusammengefaßt, wobei die Tabelle allgemein als
Fehlerlexikon bezeichnet wird. Dies ist ein herkömmliches Verfahren zum Anlegen einer Liste von
durch die Prüfmuster erfaßbaren Fehlern. Beim Prüfen eines ICs wird jedes Prüfmuster in diesen
eingegeben, und sein Antwort-Ausgabewert und der Eingabewert werden benutzt, um auf das
Fehlerlexikon zuzugreifen, um zu entscheiden, ob der IC Fehlerbedingungen aufweist, und ggf. zu
lokalisieren, welcher Teil oder welche Teile des ICs fehlerhaft sind.
Um mit Fehlern fertig zu werden, die nicht zu Logikfehlern führen, wie etwa ein Überbrückungs
fehler und ein Leckstromfehler, ist ein Fehlersimulationsverfahren vorgeschlagen werden, das in
Kombination ein IDDQ-(quiescent power supply current)-Prüfschema und eine Logiksimulation
verwendet. Nach diesem Verfahren wird die Logiksimulation verwendet, um Logiksignalwerte zu
berechnen, die sich auf Signalleitungen in dem IC in Reaktion auf ein bestimmtes darauf ange
wendetes Prüfmuster entwickeln, und eine Liste von erfaßbaren Fehlern wird angelegt durch
Aufzählen von Fehlern, die die Kriterien für das Auftreten von IDDQ-Anomalitäten bei den in dem
IC angenommenen Fehlern erfüllen. Bei Anwendung eines bestimmten Prüfmusters auf einen IC
hat jede Signalleitung üblicherweise einen Logikwert "0" oder "1". Wenn jedoch ein Über
brückungsfehler zwischen den Signalleitungen mit den Logikwerten "0" bzw. "1" auftritt,
entwickelt der IC eine IDDQ-Anomalität. Folglich sind Überbrückungsfehler zwischen allen
Signalleitungen mit den Logikwerten "0" und "1" in dem IC auf Grundlage von Eingabeprüfmu
stern mit dem IDDQ-Prüfschema erfaßbar, und diese Überbrückungsfehler können zu einer Liste
von mit dem IDDQ-Prüfschema erfaßbaren Fehlern zusammengestellt werden.
Mit dem Fehlersimulationsmodell, das die Logiksimulation verwendet, ist das simulierbare
Fehlermodell jedoch auf einen einzigen "Festklemmfehler (stack-at fault (Stuck-At-0 oder Stuck-
At-1)) beschränkt, d. h. auf einen Fehler, bei dem eine Signalleitung in einem bestimmten Zustand
("0" oder "1") festklemmt. Deswegen ist es mit diesem Fehlersimulationsverfahren unmöglich,
mit hoher Empfindlichkeit einen Mehrfach-Festklemmfehler, bei dem mehrere Signalleitungen bei
"0" oder "1" festklemmen, einen Verzögerungsfehler, einen Kurzschlußfehler zwischen Signallei
tungen usw. zu simulieren, folglich können keine Listen von erfaßbaren Fehlern angelegt werden.
Außerdem ist das Fehlersimulationsverfahren durch die kombinierte Verwendung des IDDC-
Prüfschemas und der Logiksimulation ein Verfahren zum Messen des Versorgungsstromes des
Halbleiter-ICs unter stabilen Bedingungen, und ist insbesondere für Kurzschlußfehler in der
Schaltung vorgesehen. Deshalb ist dieses Verfahren nicht in der Lage, Listen von erfaßbaren
Fehlern zu transienten Erscheinungen in Halbleiter-ICs wie etwa Verzögerungsfehlern und Offen-
Fehlern, die die Verzögerungszeit beeinflussen, und von Anomalitäten lokaler oder globaler
Prozeßparameter (ein Schichtwiderstand, eine Oxidschichtdicke usw.) anzulegen.
Es besteht also Bedarf nach der Implementierung eines Fehlersimulationsverfahrens, bei dem es
möglich ist, eine Liste von mit einer bestimmten Prüfmusterfolge erfassbaren Fehler für die oben
erwähnten Verzögerungsfehler, Offen-Fehler und Parameter-Anomalitätsfehler anzulegen.
Eine Aufgabe der vorliegenden Erfindung ist, ein Verfahren und eine Vorrichtung zur Fehlersimula
tion anzugeben, mit denen es möglich ist, eine Liste von Fehlern anzulegen, die durch eine
bestimmte Prüfmusterfolge für Verzögerungs-, Offen- und Parameter-Anomalitätsfehler in
Halbleiter-ICs durch kombinierte Verwendung eines Prüfschemas mit transientem Versorgungs
strom (IDDT), mit dem transiente Erscheinungen des ICs mit hoher Beobachtbarkeit erfaßt
werden können, und Logiksimulation anzulegen.
Gemäß einem Aspekt der vorliegenden Erfindung ist ein Fehlersimulationsverfahren zum Erzeugen
einer Liste von Fehlern vorgesehen, die unter Verwendung einer Eingabe-Prüfmusterfolge erfaßbar
sind, welches folgende Schritte umfaßt: Erzeugen einer aus zwei oder mehr Prüfmustern
aufgebauten Prüfmusterfolge zum Eingeben in einen zu prüfenden IC; Durchführen einer Logik
simulation, um zu erfassen, welche Situation sich in dem zu prüfenden IC bei Eingabe jedes
Prüfmusters ergeben wird, und Berechnen einer Folge von Logiksignalwerten, die in Signalleitun
gen des zu prüfenden ICs erzeugt werden; und Anlegen einer Liste von mit der transienten
Versorgungsstromprüfung erfaßbaren Fehlern durch Verwendung der durch die Logiksimulation
berechneten Folge der Logiksignalwerte der Signalleitungen.
Mit diesem Verfahren ist es möglich, eine Liste von Fehlern zu erzeugen, die mit dem transienten
Versorgungsstrom-Prüfverfahren unter Verwendung einer bestimmten Prüfmusterfolge für
herkömmlicherweise unerfaßbare Verzögerungsfehler oder Offen-Fehler, die zu Verzögerungsfeh
lern führen, erfaßbar sind - dies verbessert die Effizienz der Prüfung auf Verzögerungs- und Offen-
Fehler signifikant.
Eine Form des oben erwähnten Schrittes des Erzeugens der Fehlerliste ist, eine Liste von Fehlern
zu erzeugen, die sich in Logikgattern entwickeln.
Eine andere Form des oben erwähnten Schrittes des Erzeugens der Fehlerliste ist, eine Liste von
Fehlern zu erzeugen, die sich in Signalleitungen entwickeln.
Eine weitere Form des oben erwähnten Schrittes des Erzeugens der Fehlerliste ist, eine Liste von
Fehlern zu erzeugen, die sich in Signalausbreitungswegen entwickeln.
Gemäß einem anderen Aspekt der Erfindung ist ein Fehlersimulator zum Erzeugen einer Liste von
Fehlern vorgesehen, die mit einer Eingabeprüfmusterfolge erfaßbar sind, welcher umfaßt:
Prüfmustererzeugungsmittel zum Erzeugen einer aus zwei oder mehr Prüfmustern bestehenden
Prüfmusterfolge zur Anwendung an einem zu prüfenden Halbleiter-IC; einen Logiksimulator, der
eine Logiksimulation durchführt, um zu erfassen, welche Situation sich in dem zu prüfenden IC
bei Eingabe jedes Prüfmusters aus der Prüfmusterfolge darein entwickeln wird, und der eine Folge
von Logiksignalwerten berechnet, die in Signalleitungen des zu prüfenden ICs erzeugt würde, und
Fehlerlisten-Erzeugungsmittel zum Erzeugen einer Liste von Fehlern, die durch eine transiente
Versorgungsstromprüfung unter Verwendung der durch den Logiksimulator berechneten Folge
von Logiksignalwerten erfaßbar sind.
Mit dem Fehlersimulator mit dem obigen Aufbau ist es möglich, eine Liste von Fehlern zu
erzeugen, die durch die transiente Versorgungsstromprüfung unter Verwendung einer bestimmten
Prüfmusterfolge für herkömmlicherweise unerfaßbare Verzögerungsfehler oder Offen-Fehler, die
zu den Verzögerungsfehlern führen, erfaßbar sind - dies verbessert signifikant die Effizienz der
Prüfung auf solche Verzögerungs- und Offen-Fehler.
Gemäß einem anderen Aspekt der vorliegenden Erfindung ist ein Verfahren zum Erzeugen einer
Liste von unter Verwendung einer Eingabe-Prüfmusterfolge erfaßbaren Fehlern vorgesehen,
welches folgende Schritte umfaßt: Einfügen eines angenommenen Fehlers in einen zu prüfenden
Halbleiter-IC; Erzeugen einer Prüfmusterfolge, bestehend aus zwei oder mehr Prüfmustern, zur
Eingabe in den zu prüfenden IC; Berechnen eines transienten Versorgungsstroms des zu prüfen
den ICs durch Durchführung einer Schaltungssimulation im Falle des Anwendens der Prüfmuster
folge auf den IC mit dem angenommenen darin eingefügten Fehler; Vergleichen des durch die
Schaltungssimulation berechneten transienten Versorgungsstroms mit einem transienten
Versorgungsstrom eines normalen ICs und Entscheiden, ob der Fehler durch eine transiente
Versorgungsstromprüfung unter Verwendung der Prüfmusterfolge erfaßbar ist.
Mit diesem Verfahren ist es möglich, eine Liste von Fehlern zu erzeugen, die durch die transiente
Versorgungsstromprüfung unter Verwendung einer bestimmten Prüfmusterfolge für Verzöge
rungs-, Offen- und Parameteranomalitätsfehler erfaßbar sind, die bisher nicht erfaßbar waren. So
verbessert dieses Verfahren die Effizienz der Prüfung auf solche Verzögerungs- und Offen-Fehler.
Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein Fehlersimulator zum Erzeugen
einer Liste von unter Verwendung einer Eingabe-Prüfmusterfolge erfaßbaren Fehlern geschaffen,
welcher umfaßt: Prüfmusterfolge-Erzeugungsmittel zum Erzeugen einer aus zwei oder mehr
Prüfmustern aufgebauten Prüfmusterfolge zur Eingabe in den zu prüfenden IC; Mittel zum
Einfügen eines angenommenen Fehlers in den IC; einen Schaltungssimulator zum Berechnen eines
transienten Versorgungsstroms des ICs durch Durchführung einer Schaltungssimulation im Fall
des Eingebens der Prüfmusterfolge in den IC mit dem darin eingefügten angenommenen Fehler;
Fehlerlisten-Erzeugungsmittel zum Erzeugen einer Fehlerliste durch Vergleichen des durch die
Schaltungssimulation berechneten transienten Versorgungsstroms mit einem transienten
Versorgungsstrom eines normalen ICs und Entscheiden, ob der Fehler durch eine transiente
Versorgungsstromprüfung unter Verwendung der Prüfmusterfolge erfaßbar ist.
Mit diesem Fehlersimulator ist es möglich, eine Liste von durch die transiente Versorgungsstrom
prüfung unter Verwendung einer bestimmten Prüfmusterfolge erfassbaren Fehlern für Verzöge
rungs-, Offen- und Parameteranomalitätsfehler zu erzeugen, die bisher nicht erfaßbar waren.
Daher verbessert dieser Fehlersimulator signifikant die Effizienz der Prüfung auf solche Verzöge
rungs- und Offen-Fehler.
Um ein besseres Verständnis der vorliegenden Erfindung zu erleichtern, wird das Prinzip der
vorliegenden Erfindung im folgenden mit Bezug auf einen CMOS-IC beschrieben, der ein typisches
Beispiel für einen Halbleiter-IC ist.
Der Versorgungsstrom des CMOS-ICs ist ein in den CMOS-IC fließender Strom und ist ausge
drückt durch die Summe von Strömen durch die jeweiligen Logikgatter in dem IC.
Fig. 1 zeigt eine transiente Antwort eines CMOS-Inverters. Diese transiente Antwort wurde mit
einem Schaltungssimulator erhalten. Wie in Fig. 1C gezeigt, ist der CMOS-Inverter durch eine
Reihenschaltung von p- und n-MOS-Transistoren gebildet, die an beiden Enden mit einem
Stromversorgungsanschluß TVD und mit Masse GND verbunden ist. Die Gates beider Transistoren
sind an einen Eingangsanschluß IN angeschlossen, und ihr Verbindungspunkt ist an einen
Ausgabeanschluß OUT angeschlossen. Fig. 1A zeigt eine Antwort einer Ausgabespannung VOUT
auf eine Eingabespannung VIN in einem transienten Zustand, und Fig. 1B zeigt eine Antwort
eines in den CMOS-Inverter aus der Stromversorgung zu dieser Zeit fließenden Stroms IDD. Der in
den CMOS-Inverter fließende Strom wird als transienter Strom bezeichnet. Wenn sich die Eingabe
in den Inverter von einem Logikwert "1" auf "0" ändert, wie in Fig. 1C gezeigt, schalten der n-
und p-MOS-Transistor gleichzeitig für einen sehr kurzen Zeitraum ein, wenn die Eingabespannung
VIN höher als eine Schwellenspannung des n-MOS-Transistors, aber niedriger als eine Schwellen
spannung des p-MOS-Transistors ist, und ein Kurzschlußstrom IS fließt vom Stromversorgungsan
schluß TVD zur Masse GND. Da zu dieser Zeit das Potential am Ausgabeanschluß OUT sich vom
Logikwert "0" auf "1" ändert, fließt ein Strom IC zum Laden einer an eine Ausgabesignalleitung
(den OUT-Anschluß) des Inverters angeschlossene parasitäre Kapazität Cload vom Stromversor
gungsanschluß TVD zur gleichen Zeit, wie der Kurzschlußstrom IS fließt. Wenn also die Eingabe in
den Inverter einen fallenden Übergang macht (beschrieben durch ein Suffix "f" an einem diesen
Zustand bezeichnenden Parameter), ist der in den Inverter fließende transiente Strom IGf gegeben
durch die Summe des Kurzschlußstromes ISf und des Kondensatorladestroms IC, wie folgt:
IGf = ISf + IC. (1)
Wenn hingegen die Eingabe des Inverters sich wie in Fig. 1D gezeigt von "0" auf "1" ändert,
geht die Ausgabe des Inverters "1" auf "0" über (beschrieben durch ein Suffix "r" an einem
diesen Zustand bezeichnenden Parameter), wodurch eine Entladung aus der an den Ausgabean
schluß OUT angeschlossenen parasitären Kapazität Cload ausgelöst wird und somit ein Kondensa
tor-Entladestrom ID erzeugt wird. In diesem Fall ist jedoch der Strom IGr vom Stromversorgungs
anschluß TVD zum Inverter nur der Kurzschlußstrom ISr. Infolgedessen ist die Spitze des transien
ten Stroms IGr etwas kleiner als IGf.
IGr = ISr (2)
Die Transfercharakteristik des CMOS-Inverters liefert einen dreieckspulsartigen Kurzschlußstrom
IS mit einer Änderung in der Eingabespannung VIN, wie in Fig. 2A gezeigt. Wenn dabei die
Eingabe in den CMOS-Inverter einen steigenden Übergang durchführt, kann der Kurzschlußstrom
ISr durch den CMOS-Inverter durch einen in Fig. 2B mit "IS" bezeichneten Dreieckspuls angenä
hert werden, wenn angenommen wird, daß die Eingabespannung VIN einen rampenartigen
Übergang macht, wie in Fig. 2A und 2B gezeigt. Ferner ist der Kurzschlußstrom des CMOS-
Inverters, der durch den in Fig. 2B gezeigten ansteigenden Übergang der Eingabespannung VIN
verursacht wird, gegeben durch den folgenden Ausdruck:
wobei ISmax der Maximalwert des in den CMOS-Inverter fließenden transienten Stroms (des
Kurzschlußstrom) IS ist, VDD die Versorgungsspannung am Stromversorgungsanschluß TVD, VTHN
eine Schwellenspannung des n-MOS-Transistors ist, VTHP eine Schwellenspannung des p-MOS-
Transistors ist und tr die Anstiegsübergangszeit der Eingabespannung VIN ist. Man beachte, daß
die Schwellenspannung VTHP als Absolutwert gezeigt ist. Um den angenäherten Ausdruck zu
vereinfachen, ist außerdem dargestellt, daß die Eingabespannung VIN den Übergang zum
Zeitpunkt 0 beginnt und die Eingabespannung VIN den Wert VDD zum Übergangs-Endzeitpunkt tr
erreicht.
Der Kurzschlußstrom ISf des CMOS-Inverters, der durch den fallenden Übergang der Eingabespan
nung VIN hervorgerufen wird, kann in ähnlicher Weise wie folgt erhalten werden:
wobei tf die fallende Übergangszeit der Eingabespannung VIN ist. Vorsichtshalber sind die
Anstiegs-Anfangszeit des Versorgungsstroms, die Zeit seines Maximalwertes ISmax und seine
Abfall-Endzeit in Fig. 2B in Klammern gezeigt.
Ferner ist der Kapazitäts-Ladestrom IC in die parasitäre Kapazität Cload am Ausgabeanschluß
(Signalleitung) OUT des CMOS-Inverters durch die folgende Gleichung gegeben, in der vout(t) eine
Spannungsänderung in der Ausgabesignalleitung OUT ist.
Diese Gleichungen können für ein Logikgatter genauso wie für den Inverter in ähnlicher Weise
erhalten werden.
Wenn ein in das Logikgatter fließender transienter Strom IG fast ein Kurzschlußstrom ist, kann er
durch einen Dreieckpuls, wie in Fig. 2B mit IS bezeichnet, angenähert werden. Tatsächlich ist die
Wellenform des transienten Stroms IG des CMOS-Inverters eine Dreieckpuls-Wellenform, wie in
Fig. 1B abgebildet. Folglich steigt der transiente Strom IG des Logikgatters monoton bis zum
Maximalwert ISmax und nimmt dann monoton ab. Ferner erreicht der transiente Strom IG den
Maximalwert ISmax zur gleichen Zeit, wie die Eingabespannung VIN eine Schaltspannung VSP des
Logikgatters erreicht. Das heißt, wie in Fig. 2B gezeigt, erreicht der transiente Strom IG seinen
Spitzenwert gleichzeitig mit einem Eingangsübergang des Logikgatters. Da das Logikgatter eine
Verzögerungszeit hat, hinkt der Ausgangsübergang des Logikgatters geringfügig hinter seinem
Eingangsübergang hinterher. Mit anderen Worten erreicht der transiente Strom IG seinen Spitzen
wert kurz vor dem Ausgangsübergang des Logikgatters. Hier kann angenommen werden, daß die
fallende Flanke (der fallende Abschnitt) der Wellenform des transienten Stroms IG mit der Zeit des
Ausgangsübergangs zusammenfällt. Ferner ist die Pulsbreite der Wellenform des transienten
Stroms IG des Logikgatters proportional zur Übergangszeit (z. B. der Anstiegsübergangszeit tr) der
Eingabespannung VIN.
Die obige Beschreibung basiert auf der Annahme, daß der in das Logikgatter fließende transiente
Strom IG hauptsächlich der Kurzschlußstrom IS ist. Bei der modernen Miniaturfertigung von
CMOS-Schaltungen wird die Verdrahtungsverzögerung gegenüber der Gatterverzögerung
dominierend. Dies impliziert, daß wenn die Übergangszeit der Eingabespannung als fest ange
nommen wird, der Anteil des Ladestroms IC in die Ausgabesignalleitung OUT höher ist als der
Anteil des Kurzschlußstroms IS in dem transienten Strom IG, der in das CMOS-Logikgatter fließt.
Somit hängt die Zeit, zu der die Wellenform des transienten Stroms IG des Logikgatters ihren
Spitzenwert erreicht, von dem Verhältnis zwischen dem Kapazitätsladestrom IC und dem
Kurzschlußstrom IS ab. Wenn der Kapazitätsladestrom IC kleiner als der Kurzschlußstrom IS ist,
fällt der Spitzenwert der Wellenform des transienten Stroms IG mit dem Spitzenwert des
Kurzschlußstroms IS zusammen. Da der Spitzenwert des Kurzschlußstroms IS mit der Übergangs
zeit der Eingabespannung zusammenfällt, liegt der Spitzenwert des transienten Stroms IG vor der
Übergangszeit des Logikgatterausgangs. Wenn umgekehrt der Kapazitätsladestrom IC größer als
der Kurzschlußstrom IS ist, fällt der Spitzenwert der Wellenform des transienten Stroms IG mit
dem Spitzenwert des Strom IC zusammen. Da der Kapazitätsladestrom IC mit dem Spannungs
übergang an der Ausgabesignalleitung OUT verknüpft ist, fällt der Spitzenwert des transienten
Stroms IG virtuell mit der Ausgangsübergangszeit des Logikgatters zusammen.
Fig. 3A zeigt einen CMOS-IC, der durch eine Reihenschaltung von vier Invertern G1, G2, G3 und
G4 gebildet ist, bei denen hindurchfließende transiente Ströme IG1, IG2, IG3 und IG4 üblicherweise
von einem einzigen Stromversorgungsanschluß TVD zugeführt werden. Wenn die Eingabespan
nung VIN1 zum Inverter G1 wie in Fig. 3B gezeigt variiert, ist eine transiente Versorgungsstrom
antwort des dargestellten ICs gegeben als Summe der durch die Logikgatter G1 bis G4 fließenden
transienten Ströme IG1 bis IG4 und ist gegeben durch die folgende Gleichung:
wobei N die Zahl von logischen Gattern ist, die durch eine Eingabe-Prüfmusterfolge geschaltet
werden; N = 4 im Beispiel von Fig. 3A.
Da die Spitze (oder die nacheilende Flanke) der Transientstrom-Wellenform des Logikgatters der
Übergangszeit der Ausgabe aus dem Logikgatter entspricht, fällt die abschließende Spitze (die
abschließende nacheilende Flanke) der Transientstrom-Wellenform des CMOS-ICs mit der
Übergangszeit der Ausgabe aus dem Logikgatter G4 zusammen, das als letztes in dem CMOS-IC
geschaltet wird. Infolgedessen kann die Ausbreitungsverzögerungszeit des CMOS-ICs durch
Erfassen der abschließenden Spitze (der abschließenden nacheilenden Flanke) der Transientver
sorgungsstrom-Wellenform des CMOS-ICs und vergleichen der Zeit der erfaßten abschließenden
Spitze und der Zeit eines Eingabeübergangs erfaßt werden. In diesem Fall kann die Zeit der
abschließenden nacheilenden Flanke des transienten Versorgungsstroms z. B. als Maximalwert der
Zeit berechnet werden, wo der transiente Versorgungsstrom einen vorgegebenen Wert erreicht.
Im allgemeinen ist der oben erwähnte Stromwert des transienten Versorgungsstroms der Wert,
den der Versorgungsstrom zu der Zeit erreicht, wenn die Ausgabe aus dem letzten Logikgatter
auf demjenigen von mehreren Logiksignalwegen in dem Halbleiter-IC, der geprüft wird, einen
Wert gleich der Hälfte der Versorgungsspannung erreicht. Dieser vorgegebene Stromwert ist z. B.
aus statistischen Daten verfügbar, die durch Durchführung einer Schaltungssimulation der zu
prüfenden Schaltung oder durch Verwenden einer realen Vorrichtung erhalten werden.
In der oben beschriebenen Weise kann die Verzögerungszeit jedes Weges in dem Halbleiter-IC
berechnet werden, und durch Vergleichen der so erhaltenen Verzögerungszeit mit einer vorgege
benen Zeit (z. B. der Periode TCLK eines Systemtaktes) kann ein Verzögerungsfehler in dem zu
prüfenden Weg erfaßt werden.
Zunächst wird eine Definition des Verzögerungsfehlers gegeben. Es wird die Aktivierung eines
Signalausbreitungsweges P = {g0, g1, g2, . . ., gm} in einer CMOS-Logikschaltung durch Verwen
dung einer Prüfmusterfolge T = <v1, v2< (was bedeutet, daß auf ein Spannungssignal v1 ein
Spannungssignal v2 folgt) betrachtet, das aus zwei Prüfmustern v1 und v2 aufgebaut ist. Dabei ist
g0 eine Eingabesignalleitung des Weges P, und g1, g2, . . ., gm sind Ausgabesignalleitungen von
Logikgattern G1, G2 . . ., Gm auf dem Weg P, wobei gleichzeitig g0, g1, . . ., gm-1 auch Eingabe
signalleitungen der Logikgatter G1, G2, . . ., Gm auf dem Weg P sind.
Wenn die Signalübergangszeiten in den Signalleitungen g0, g1, . . ., gm (die Zeiten, zu denen ein
Spannungssignal VDD/2 kreuzt) als τ0, τ1, . . ., τm bezeichnet sind, ist die Gatterverzögerungszeit tgdi
(wobei 1 ≦ i ≦ m) eines jeden der Logikgatter G1, G2, . . ., Gm auf dem Weg P gegeben durch
tgdi = τi - τi-1 (7)
Folglich kann die Wegverzögerungszeit tpd des Weges P als Summe der Gatterverzögerungszeiten
tgdi durch
berechnet werden. Die tatsächliche Gatterverzögerungszeit tgdi variiert jedoch unter dem Einfluß
eines Fehlers
tgdi = tgdi,typ + δi, 1 ≦ i ≦ m (9)
wobei tgdi,typ ein typischer Wert der Verzögerungszeit des Logikgatters Gi und δi eine Schwan
kungskomponente der Gatterverzögerungszeit ist. Zum Beispiel erhöht ein Offen-Fehler die
Verzögerungszeit nur eines fehlerhaften Logikgatters, erhöht aber nicht die Verzögerungszeit
eines fehlerfreien oder normalen Logikgatters. Ein Parameter-Anomalitätsfehler hingegen erhöht
die Verzögerungszeit jedes Logikgatters. Bei einer Änderung in der Gatterverzögerungszeit erfährt
die Wegverzögerungszeit tpd eine entsprechende Änderung, die durch die folgende Gleichung
ausgedrückt werden kann:
wobei tpd,typ ein typischer Wert der Verzögerungszeit des Weges P und Δ eine Schwankungskom
ponente der Wegverzögerungszeit ist.
Fig. 4 zeigt schematisch das Grundprinzip eines Verzögerungsfehler-Prüfverfahrens. Wie in Fig. 4A
gezeigt, wird die Prüfmusterfolge < v1, v2 < Muster für Muster mit jedem Systemtakt in ein
Eingabelatch eingegeben, aus dem sie auf das Eingabesignal jedes Weges des zu prüfenden
Halbleiter-ICs gegeben wird, und die Ausgabe von jeder Ausgabesignalleitung des zu prüfenden
ICs wird mit dem Takt CLK gelatcht. Damit der zu prüfende IC normal arbeitet, ist es notwendig,
daß ein Signalübergang, der im Eingabelatch stattfindet, sich innerhalb einer vorgegebenen Zeit
über den Weg P in dem zu prüfenden IC zum Ausgabelatch ausbreitet. Basierend auf der
Beziehung zwischen Eingabe VIN und Ausgabe VOUT des in Fig. 4 gezeigten Weges P und des in
Fig. 4C gezeigten Systemtaktes muß die Verzögerungszeit tpd des Weges P die folgende
Bedingung erfüllen:
tpd + TSU < TCLK - TSKW (11)
wobei TSU eine Signalbereitstellungszeit ist, TCKL die Periode des Systemtaktes CLK ist und TSKW
eine Taktverschiebung des Systemtaktes CKL (der Betrag von ±-Schwankungen der Flanke des
Taktes CLK aufgrund von dessen Jitter) ist. Eine Abwandlung von Gleichung (11) ergibt
tpd < TCLK - TSKW - TSU ∼ T' (12)
d. h. die Verzögerungszeit tpd des Weges P muß kürzer als die Zeit (T') sein, die durch Subtrahie
ren von Sicherheitsabständen wie etwa der Einrichtzeit TSU und der Taktverschiebung TSKW von
der Taktperiode TCLK erhalten wird. Wenn tpd größer als T' ist, hinkt die Signalausbreitung auf dem
Weg P hinter dem Systemtakt hinterher, mit dem es im Ausgabelatch gelatcht werden soll, so
daß die Schaltung nicht normal arbeitet. Dieser Zustand wird als Verzögerungsfehler definiert.
D. h. es wird definiert, daß der Weg P einen Verzögerungsfehler hat, wenn die Verzögerungszeit
tpd länger als die vorgegebene Zeit T' ist, wobei T' der zulässige obere Grenzwert der Verzöge
rungszeit ist.
Als nächstes wird eine Definition eines Offen-Fehlers gegeben, der zu dem Verzögerungsfehler
führt. Der Offen-Fehler ist eine unbeabsichtigte elektrische Diskontinuität, die eine bestimmte
Signalleitung in zwei oder mehr verschiedene Signalleitungen auftrennt. Zu Offen-Fehlern gehören
Fehler wie eine Metallunterbrechung in einem Kontakt aufgrund eines Oxidfilms, ein Bruch in
einem Metalldraht durch einen Musterfehler oder einen Ätzfehler und eine Unterbrechung in einer
Diffusionsschicht oder Poly-Si-Schicht aufgrund eines Maskenfehlers. Es gibt zwei Typen solcher
Offen-Fehler: einen Offen-Fehler, der einen "Logikfehler" dahingehend verursacht, daß das
Eingabesignal VIN an der Ausgabe VOUT einer Signalleitung Wi aufgrund einer Offen-Stelle FC in der
Signalleitung Wi, wie in Fig. 5A gezeigt, niemals erscheint, und einen Offen-Fehler, der einen
"Verzögerungsfehler" verursacht, dahingehend, daß das Eingabesignal VIN die Unterbrechung oder
den Offen-Abschnitt FC z. B. durch einen Tunnelstrom überquert und an der Ausgabe VOUT der
Signalleitung Wi nach einer Zeitverzögerung erscheint, wie in Fig. 5B dargestellt. Bei dem Offen-
Fehler, der den Logikfehler hervorruft, ist die Offen-Stelle so groß, daß kein Strom fließt, selbst
wenn eine Spannung über die Bruchstelle an die unterbrochene Signalleitung Wi angelegt wird.
Folglich wird die parasitäre Kapazität nicht in Verbindung mit dem Signalübergang geladen und
entladen, was bei dem Logikfehler dazu führt, daß die Logik auf einem bestimmten Wert gehalten
bleibt. Im Gegensatz dazu wird bei dem Offen-Fehler, der zu dem Verzögerungsfehler führt, ein
sehr kleiner Strom erzeugt, wenn eine Spannung an die Signalleitung Wi über die Bruchstelle
angelegt wird; da jedoch der Betrag eines solchen Stromes kleiner als der Stromfluß bei norma
lem Betrieb ist, sind Ladung und Entladung der dem Signalübergang zugeordneten parasitären
Kapazität verzögert, was zu einer Zunahme der Verzögerungszeit der Schaltung führt. Bei Offen-
Fehlern dieser Art wird zwischen einem resistiven Offen-Fehler, bei dem der Widerstandswert
zwischen Signalleitungen aufgrund eines Kontaktfehlers oder dergleichen größer als sein normaler
Wert wird oder der Widerstandswert einer Signalleitung wegen einer Störung in der Signalleitung
größer als sein normaler Wert wird, und einem kleinen Offen-Fehler (< 100 nm) unterschieden,
bei dem der Tunneleffekt einen sehr kleinen Leckstromfluß über die Bruchstelle hervorruft. Der
Tunnelstrom, der durch den kleinen Offen-Fehler fließt, ist z. B. bei C. L. Henderson, J. M. Soden
und C. F. Hawkins, "The Behavior and Testing Implications of CMOS IC Logic Gate Open
Circuits", Proceedings of IEEE International Test Conference, Seiten 302-310, 1991, beschrie
ben. Die vorliegende Erfindung ist für Offen-Fehler vorgesehen, die zu dem Verzögerungsfehler
führen. In der Beschreibung wird diese Art von Fehler nachfolgend einfach als Offen-Fehler
bezeichnet.
Als nächstes wird ein Verfahren zum Erfassen des Verzögerungsfehlers durch Ausnutzung der
Pulsbreite des oben erwähnten transienten Versorgungsstroms beschrieben. Bei diesem Verfahren
wird die Pulsbreite des Versorgungsstroms der zu prüfenden Schaltung gemessen und mit einer
vorgegebenen Zeit verglichen. Fig. 6 zeigt das Grundprinzip dieses Verfahrens.
Es wird angenommen, daß in einer CMOS-Logikschaltung mehrere Wege P1, P2, . . ., Pn durch eine
Prüfmusterfolge T = <v1, v2< aktiviert werden, die zwei Prüfmuster v1 und v2 umfaßt. Es sei
τij die Schaltzeit des j-ten Logikgatters ab dem Eingang des Weges Pi, wobei die Zahl von
Logikgattern für die Wege P1, . . ., Pn unterschiedlich ist, und die Ausgabeübergangszeit τmax des
Logikgatters Gfinal, das als letztes unter den Logikgattern auf den Wegen P1, . . ., Pn geschaltet
wird, ist gegeben durch
Folglich kann der Maximalwert tpd,max der Wegverzögerungszeit auf den Wegen P1, . . ., Pn
berechnet werden als das Zeitintervall zwischen der Zeit τmax und der Eingabeübergangszeit τ0:
tpd,max = τmax - τ0 (14)
Andererseits ist die Pulsbreite tPW der Transientversorgungsstrom-Wellenform der CMOS-
Logikschaltung definiert als das Zeitintervall zwischen der Eingabeübergangszeit τ0 und der Zeit
τIDD der letzten Spitze (nacheilende Flanke) der Transientversorgungsstrom-Wellenform:
tPW ∼ τIDD - τ0 (15)
Wie zuvor beschrieben, liegt die Zeit τIDD der letzten Spitze der Transientversorgungsstrom-
Wellenform vor der Ausgabeübergangszeit τmax des Logikgatters Gfinal, das als letztes schaltet, und
die nacheilende Flanke der Transientversorgungsstrom-Wellenform fällt zusammen mit der
Ausgabeübergangszeit τmax des Logikgatters Gfinal. Folglich entspricht die Pulsbreite τPW des
transienten Versorgungsstroms der Verzögerungszeit τpd,max des Weges P, der durch das Prüfmu
ster T aktiviert wird:
tPW = τIDD - τ0 ≦ τmax - τ0 = tpd,max (16)
Wenn die Pulsbreite tPW größer als der zulässige obere Grenzwert T' der Verzögerungszeit ist, gilt
T' < tPW ≦ tpd,max (17)
Auf dem Weg mit der größten Verzögerungszeit tpd,max hinkt die Signalausbreitung hinter dem
Systemtakt her. Das heißt, die Schaltung hat einen Verzögerungsfehler. Wenn tPW größer als T'
ist, zeigt dies also das Vorhandensein des Verzögerungsfehlers auf irgendeinem der aktivierten
Wege an, wohingegen ein tPW, das kleiner als T ist, das Nicht-Vorhandensein des Verzögerungs
fehlers auf den aktivierten Wegen anzeigt.
Verzögerungsfehler nicht vorhanden: tPW ≦ T'
Verzögerungsfehler vorhanden: tPW < T' (18)
Verzögerungsfehler vorhanden: tPW < T' (18)
Diese Beziehung ist in Fig. 6 dargestellt. Fig. 6A zeigt die Eingabe- und Ausgabespannungen
VIN und VOUT eines Weges in den Fällen, daß der Weg fehlerhaft bzw. fehlerfrei ist. In entspre
chender Weise zeigt Fig. 6B den transienten Versorgungsstrom in den Fällen, wo der Weg
fehlerhaft bzw. fehlerfrei ist.
Wie oben beschrieben kann die Schaltung auf Fehler geprüft werden, indem die Pulsbreite tPW des
transienten Versorgungsstroms mit der vorgegebenen Zeit T' verglichen wird.
Da außerdem der transiente Versorgungsstrom des Logikgatters nach Erreichen des Spitzenwer
tes monoton abnimmt, wie in Fig. 2 gezeigt, nimmt der Versorgungsstrom des in Fig. 3
gezeigten CMOS-ICs nach der Ausgabeübergangszeit des zuletzt schaltenden Logikgatters
monoton ab. Bei einem fehlerfreien CMOS-IC wird also, wenn die Ausgabeübergangszeit des
zuletzt schaltenden Logikgatters mit tmax und der Momentanwert des transienten Versorgungs
stroms zur Zeit τmax mit I' bezeichnet ist, der transiente Versorgungsstrom des CMOS-ICs nach
der Zeit τmax nicht größer als der Wert I'.
Durch Messen des Momentanwertes des transienten Versorgungsstroms des CMOS-ICs zu einer
vorgegebenen Zeit durch Verwendung des obigen Prinzips ist es möglich, den Verzögerungsfehler
in der zu prüfenden Schaltung zu erfassen. Der Stromwert I', der als Kriterium für die Beurteilung
der Fehlererfassung verwendet wird, ist der Wert des Versorgungsstroms zu dem Zeitpunkt,
wenn die Ausgabe aus dem letzten Logikgatter auf dem zu prüfenden Weg einen Wert gleich der
Hälfte der Versorgungsspannung erreicht. Der Stromwert I' kann mit einer Schaltungssimulation
für die zu prüfende Schaltung oder aus statistischen Daten einer realen Vorrichtung erhalten
werden.
Als nächstes wird ein Verfahren zum Erfassen eines Verzögerungsfehlers durch Verwendung
eines Momentanwertes des transienten Versorgungsstroms beschrieben. Bei diesem Verfahren
wird ein Momentanwert des transienten Versorgungsstroms der zu prüfenden Schaltung zu einer
vorgegebenen Zeit gemessen und der gemessene Wert mit dem transienten Versorgungsstrom
einer von dem Verzögerungsfehler freien "goldenen" Schaltung verglichen. Das Grundprinzip
dieses Verfahrens ist in Fig. 7 gezeigt. Fig. 7A zeigt Eingabe- und Ausgabespannungen VIN und
VOUT eines Weges, und Fig. 7B zeigt den transienten Versorgungsstrom.
Wie zuvor beschrieben, ist in dem CMOS-IC der Maximalwert tpd,max der Verzögerungszeit auf den
Wegen P1, P2, . . ., Pn durch Gleichung (14) gegeben. Da die Ausgabeübergangszeit des Logikgat
ters mit der Zeit der Spitze oder der nacheilenden Flanke des transienten Versorgungsstroms des
Logikgatters zusammenfällt, entspricht, wie oben angegeben, die maximale Zeit τmax der Zeit τIDD
der letzten Spitze oder nacheilenden Flanke der Transientversorgungsstrom-Wellenform IDDT der
Schaltung. Da der Versorgungsstrom IG des Logikgatters durch eine Dreieckwelle approximiert
werden kann und Gfinal das letzte zu schaltende Gatter ist, gibt es keine Logikschaltung, die die
Spitze ihres Versorgungsstroms nach τmax hat. Folglich ist zu einer Zeit t, wobei t ≧ τmax, eine
Versorgungsstrom-Wellenformfunktion iDDT(t) eine monoton abnehmende Funktion. Das heißt,
wenn die Zeitfunktion der Versorgungsstrom-Wellenform durch iDDT(t) dargestellt ist und der
Momentanwert des Versorgungsstroms zur Zeit τmax durch
I' ∼ iDDT(τmax) (19)
dargestellt ist, gilt die folgende Gleichung zur Zeit t, wobei t ≧ τmax:
IDDT(t) ≦ iDDT(τmax) = I', t ≧ τmax (20)
Für Normalbetrieb der Schaltung muß die maximale Wegverzögerungszeit tpd,max kleiner als der
obere Grenzwert T' (= TCLK - TSKW - TSU) der Verzögerungszeit sein:
Tpd,max = τmax - τ0 < T' (21)
Wenn die Schaltung fehlerfrei ist, gilt nach Gleichung (20) folglich zur Zeit t, wobei t = T' + τ0
< τmax:
iDDT(T' + τ0) ≦ I' (22)
Wenn der Momentanwert der Transientversorgungsstrom-Wellenform iDDT zur Zeit T' + τ0 größer
als der Wert I' ist, d. h. wenn
iDDT(T' + τ0) < I' = iDDT(τmax) (23)
ist, so folgt, daß
weil T' + τ0 nicht größer als τmax sein kann. Auf dem Weg mit der längsten Verzögerungszeit
τpd,max hinkt die Signalausbreitung hinter dem Systemtakt her. Das heißt, der Verzögerungsfehler
ist in der Schaltung vorhanden. Dass der Versorgungsstromwert iDDT (T' + τ0) zur Zeit T' + τ0
größer als I' ist, zeigt folglich das Vorhandensein des Verzögerungsfehlers auf einem der
aktivierten Wege an. Umgekehrt zeigt ein Versorgungsstromwert iDDT (T' + τ0) der kleiner als I'
ist, das Nichtvorhandensein des Verzögerungsfehlers auf jedem der aktivierten Wege an.
Verzögerungsfehler vorhanden: iDDT (T' + τ0) ≦ I'
Verzögerungsfehler nicht vorhanden: iDDT (T' + τ0) < I' (26)
Verzögerungsfehler nicht vorhanden: iDDT (T' + τ0) < I' (26)
Diese Beziehung ist in Fig. 7 gezeigt.
Wie oben beschrieben, kann der Verzögerungsfehler in der Schaltung durch Vergleichen des
Momentanwertes des Versorgungsstromwertes IDDT zu einer vorgegebenen Zeit mit dem IDDT-
Pegel einer fehlerfreien Schaltung erfaßt werden.
Ferner sind nach Gleichungen (3) und (4) zeitliche Integrale QSr und QSf der Kurzschlußströme ISr
und ISf gegeben durch
Dementsprechend ist das Integral QS des durch das Logikgatter zur Zeit des Schaltens fließenden
Kurzschlußstroms gegeben durch
wobei tr die Eingabesignal-Übergangszeit ist. Das heißt, das Integral QS des Kurzschlußstroms IS
(ISr oder ISf) ist proportional zur Eingabeübergangszeit tr des Logikgatters. Außerdem ist zu sehen,
daß das Integral QS unabhängig davon ist, ob die Richtung des Eingabesignal-Überganges ein
steigender oder ein fallender Übergang ist.
Nach Gleichung (5) ist das Integral QC des Ladestroms IC in die Ausgabe-Lastkapazität Cload des
CMOS-Inverters gegeben durch
Das Integral QC ist nicht abhängig von der Eingabe-Übergangszeit tr des CMOS-Inverters.
Dementsprechend werden die Integrale QGf und QGr der durch das Logikgatter fließenden
transienten Ströme IGf und IGr aus Gleichungen (1), (2), (29) und (30) wie folgt berechnet:
Das heißt, das Integral des transienten Stroms des Logikgatters ist proportional zu dessen
Eingabe-Übergangszeit. Fig. 8 ist ein Graph, der die Ergebnisse einer Schaltungssimulation über
Schwankungen im Integral des transienten Stroms des Inverters zeigt, wenn die Eingabe-
Übergangszeit des Inverters verändert wird. Der Graph von Fig. 8 zeigt auch, daß die Diskussion
der Gleichungen (31) und (32) korrekt ist.
Der in Fig. 3 dargestellte CMOS-IC ist eine Kombination von vier Invertern (G1, G2, G3, G4), die
in Reihe geschaltet sind, und die durch die Inverter fließenden Ströme (IG1, IG2, IG3, IG4) werden
üblicherweise von einer einzigen Stromversorgung geliefert. Dementsprechend ist die Transient
versorgungsstrom-Antwort IDDT des ICs gegeben durch die Summe der durch die jeweiligen
Logikgatter fließenden Ströme, wie in Fig. 3C abgebildet (Gleichung (6)). Folglich ist das Integral
QDDT des transienten Versorgungsstroms IDDT auch durch Gleichung (33) als Summe von Integra
len QGn (mit 1 ≦ n ≦ N) der Stromflüsse durch die jeweiligen Logikgatter gegeben. N ist die Zahl
der Logikgatter, die durch die Eingabe-Prüfmusterfolge geschaltet werden, und im Falle von Fig. 3A
ist N = 4.
Bei dem Beispiel der Fig. 3 ist das Integral QDDT des transienten Versorgungsstroms IDDT gegeben
als Summe von Integralen (QG1, QG2, QG3, QG4) der Stromflüsse durch die jeweiligen Inverter.
Da die Integrale QGn (mit 1 ≦ n ≦ N) der Stromflüsse durch die jeweiligen Logikgatter proportional
zu den Eingabe-Übergangszeiten trn (mit 1 ≦ n ≦ N) der jeweiligen Logikgatter sind, ist das Integral
QDDT gegeben als lineares Polynom von trn (mit 1 ≦ n ≦ N). Zum Beispiel ist im Beispiel der Fig. 3
das Integral QDDT gegeben durch ein lineares Polynom der Eingabe-Übergangszeiten (tr1, tr2, tr3, tr4)
der jeweiligen Inverter; im allgemeinen ist es gegeben durch die folgende Gleichung:
wobei an ein Proportionalkoeffizient zwischen dem Integral QSn des Kurzschlußstroms des
Logikgatters Gn und dessen Eingabe-Übergangszeit trn ist und b ein konstanter Term ist, der
ausgedrückt wird als die Summe von in die jeweiligen Logikgatter fließenden Ladeströmen QCn.
Die Verwendung des Integrals des transienten Versorgungsstroms ermöglicht die Erfassung des
Offen-Fehlers in dem zu prüfenden Weg und des aus dem Offen-Fehler resultierenden Verzöge
rungsfehlers.
Der Offen-Fehler läßt nur einen kleinen Strom durch den Unterbrechungspunkt fließen und kann
daher mit einem großen Widerstand Ropen modelliert werden. Fig. 9A zeigt ein Beispiel eines
CMOS-Inverters mit einem Offen-Fehler an seinem Eingang. Das heißt, er kann dargestellt werden
mit einem Widerstandselement mit hohem Widerstand Ropen, das zur Eingabesignalleitung A in
Reihe geschaltet ist. Wenn ein Signalübergang stattfindet, wie in Fig. 9B dargestellt, wird ein
Signalübergang in der hinter dem Unterbrechungspunkt liegenden Signalleitung A durch den
Offen-Fehler verzögert, wie in Fig. 9C gezeigt. Wenn der Widerstand des Offen-Fehlers gegeben
ist durch Ropen und die parasitäre Kapazität im Eingang des Inverters durch Cin, so ist die Signal
übergangszeit tr in der Signalleitung A' gegeben durch
tr ≈ tT,typ + 2,2RopenCin (35)
wobei tT,typ ein typischer Wert der Übergangszeit des Eingabesignals ist, wenn kein Fehler
vorliegt. Die Übergangszeit tT wurde berechnet als die Zeit, die der Spannungswert braucht, um
von 0,1 VDD auf 0,9 VDD zu steigen oder von 0,9 VDD auf 0,1 VDD zu fallen. 2,2 RopenCin ist die
Zeit, die die parasitäre Kapazität Cin benötigt, um von 0,1 VDD auf 0,9 VDD zu steigen; dieser Wert
wurde berechnet als In(0,9 VDD/0,1 VDD) × RopenCin. Das heißt, die Zunahme der Eingabesignal-
Übergangszeit des Inverters ist proportional zum Widerstandswert Ropen des Offen-Fehlers. Wenn
also ein Offen-Fehler im Eingang eines k-ten Invertes auf dem zu prüfenden Weg vorliegt, ist das
Integral QDDT des Versorgungsstroms durch die folgende Gleichung (36) aus den Gleichungen (34)
und (35) gegeben und variiert linear mit dem Widerstandswert Ropen des Offen-Fehlers, und die
Zunahme ist proportional zum Widerstandswert Ropen:
wobei QDDT,typ ein typischer Wert des Integrals des Versorgungsstroms im fehlerfreien Fall ist.
2,2akCinRopen im zweiten Term auf der rechten Seite von Gleichung (36) ist die auf den Offen-
Fehler im Eingang des k-ten Inverters zurückgehende Zunahme. Gleichung (36) stimmt auch mit
den Ergebnissen der in Fig. 10 gezeigten Simulation von Änderungen im Integral QDDT mit dem
Widerstandswert Ropen überein. In Fig. 10 sind Änderungen des Integral QDDT mit dem Wider
standswert Ropen des Offen-Fehlers aufgetragen, wenn der Offen-Fehler in der Eingangssignallei
tung IN2 des Inverters G2 in der in Fig. 3 gezeigten Schaltung vorhanden ist.
Demzufolge ist es möglich, einen Offen-Fehler in der Eingangsstufe eines Logikgatters auf dem zu
prüfenden Weg durch Messen des Integrals QDDT des transienten Versorgungsstroms und
Vergleichen mit dem Integral QDDT,typ des transienten Versorgungsstroms einer fehlerfreien
Schaltung zu erfassen. Im tatsächlichen CMOS-Herstellungsprozeß verursachen Änderungen von
Prozeßparametern Änderungen im Integral des transienten Versorgungsstroms innerhalb des
Bereichs QDDT,typ ± ΔQ, wie in Fig. 11 dargestellt, wobei ΔQ eine Schwankung des Integrals des
transienten Versorgungsstroms ist. Wenn also das Integral QDDT größer als der obere Grenzwert
QDDT,typ + ΔQ des Integrals des transienten Versorgungsstroms in einer fehlerfreien Schaltung ist,
kann entschieden werden, daß auf dem zu prüfenden Weg ein Offen-Fehler vorliegt. Das heißt,
ein Integral QDDT, das kleiner als der obere Grenzwert QDDT,typ + ΔQ ist, zeigt das Nichtvorhanden
sein eines Offen-Fehlers in dem CMOS-IC an, wohingegen QDDT oberhalb von QDDT,typ + ΔQ das
Vorhandensein eines Offen-Fehlers in dem CMOS-IC anzeigt.
Offen-Fehler nicht vorhanden: QDDT ≦ QDDT,typ + ΔQ
Offen-Fehler vorhanden: QDDT < QDDT,typ + ΔQ (37)
Offen-Fehler vorhanden: QDDT < QDDT,typ + ΔQ (37)
QDDT,typ und ΔQ können z. B. durch eine Simulation über Prozeßveränderungen abgeleitet werden.
Als nächstes wird eine Beschreibung eines Verfahrens zum Erfassen des Verzögerungsfehlers
durch Verwendung des Zeitintegrals des transienten Versorgungsstroms, wie oben beschrieben,
gegeben. Dieses Verfahren dient zur Abschätzung des Verzögerungsfehlers durch Messen des
Integrals des transienten Versorgungsstroms des zu prüfenden Schaltung und Vergleichen mit
einem vorgegebenen Wert.
Die Verzögerungszeit tgd eines Logikgatters ist proportional zur Eingabesignal-Übergangszeit tT
und ist durch folgende Gleichung gegeben (Neil H. E. Weele, "Principles of CMOS VLSI Design - A
Systems Perspective", Erste Auflage, Seiten 216-217, Gleichung 4.52 und 4.53, Addison-
Wesley Publishing Company, 1999):
wobei tgd,step die Verzögerungszeit eines fehlerfreien Inverters für eine Stufeneingabe ohne
Übergangszeit ist. Des weiteren ist VTH ein Schwellwert eines p-MOS oder n-MOS, der durch VTH
= VTHN für einen ansteigenden Übergang der Eingabe und durch VTH = VTHP für einen abfallenden
Übergang der Eingabe gegeben ist. Da die Eingabeübergangszeit des Logikgatters durch Glei
chung (35) gegeben ist, kann die Verzögerungszeit tgd eines Logikgatters mit einem Offen-Fehler
in der Eingabesignalleitung, der durch den Widerstand Ropen modelliert werden kann, berechnet
werden durch Substituieren von Gleichung (35) in Gleichung (38):
Dabei ist tgd,typ ein typischer Wert der Verzögerungszeit eines fehlerfreien Logikgatters. D. h., die
Verzögerungszeit eines Logikgatters mit Offen-Fehler variiert mit dem Widerstandswert Ropen des
Fehlers, und die Zunahme δ der Gatterverzögerungszeit ist proportional zu dem Widerstandswert
Ropen. Wenn also ein Offen-Fehler im Eingang eines der Logikgatter auf dem zu prüfenden Weg
vorhanden ist, ist auch die Verzögerungszeit tpd des zu prüfenden Weges proportional zu dem
Widerstandswert Ropen. Dies kann daran verstanden werden, daß die Substitution von Gleichung
(39) in Gleichung (10) die folgende Gleichung (40) ergibt:
Dies stimmt auch mit den Ergebnissen einer Simulation für Änderungen der Wegverzögerungszeit
tpd mit Bezug auf den Widerstandswert Ropen überein, wie in Fig. 12 gezeigt. In Fig. 12 sind
Änderungen der Wegverzögerungszeit tpd mit Bezug auf den Widerstandswert Ropen des Offen-
Fehlers in der Eingabesignalleitung des Inverters G2 der in Fig. 3A abgebildeten Schaltung
aufgetragen.
Das Integral QSk des Kurzschlußstroms eines Logikgatters Gk auf dem Weg P bei Vorhandensein
eines Offen-Fehlers in dem Eingang des Gatters Gk kann aus Gleichungen (29) und (35) wie folgt
berechnet werden:
Deshalb berechnet sich das Integral QDDT des transienten Versorgungsstroms des ICs aus
Gleichung (34) wie folgt:
und das Integral QDDT des transienten Versorgungsstroms der Schaltung ist auch proportional zum
Widerstandswert Ropen des Offen-Fehlers.
Wie sich also aus Gleichungen (40) und (41) ergibt, variiert die Verzögerungszeit tpd des Weges P
mit dem Offen-Fehler linear mit dem Integral QDDT des transienten Versorgungsstroms des CMOS-
ICs. Dies stimmt auch mit den Ergebnissen der Simulation zu Änderungen in der Verzögerungszeit
tpd mit Bezug auf den Integralwert QDDT, wie in Fig. 13 gezeigt, überein. In Fig. 13 sind
Änderungen der Verzögerungszeit tpd mit Bezug auf den Integralwert QDDT des transienten
Versorgungsstroms aufgetragen, wenn ein Offen-Fehler in der Eingabesignalleitung des Inverters
G2 in der Schaltung der Fig. 3A vorhanden ist.
Die Substitution des aus Gleichung (41) erhaltenen Ropen in Gleichung (40) ergibt
Wenn Qmax das Integral des transienten Versorgungsstroms zu der Zeit darstellt, wenn die
Wegverzögerungszeit tpd den zulässigen oberen Grenzwert T' der Verzögerungszeit erreicht, wird
durch Berechnen von Qmax mit tpd = T' und QDDT = Qmax in Gleichung (42) die folgende Gleichung
(43) erhalten:
Der Wert Qmax ist der obere Grenzwert des Integrals QDDT des transienten Versorgungsstroms
eines CMOS-ICs ohne Verzögerungsfehler. Das heißt, wenn QDDT kleiner als der obere Grenzwert
Qmax ist, zeigt dies das Nichtvorhandensein eines Verzögerungsfehlers in dem CMOS-IC an, und
wenn der Wert QDDT größer als der Wert Qmax ist, zeigt dies das Vorhandensein eines Verzöge
rungsfehlers an.
Verzögerungsfehler nicht vorhanden: QDDT ≦ Qmax
Verzögerungsfehler vorhanden: QDDT < Qmax (44)
Verzögerungsfehler vorhanden: QDDT < Qmax (44)
Wie oben beschrieben, kann die Schaltung auf den Verzögerungsfehler durch Vergleichen des
Integrals QDDT des transienten Versorgungsstroms mit dem vorgegebenen Wert Qmax geprüft
werden. Der vorgegebene Wert Qmax kann durch eine Schaltungssimulation oder aus statistischen
Daten durch Gleichung (43) erhalten werden.
Der transiente Versorgungsstrom ist ein transienter Strom, der durch den Stromversorgungsan
schluß des ICs fließt, und seine höhere Beobachtbarkeit als die eines Spannungssignals ist
gewährleistet. Das Verzögerungsfehler-Erfassungsschema unter Verwendung des transienten
Versorgungsstroms gewährleistet eine höhere Beobachtbarkeit des Verzögerungsfehlers als ein
Verzögerungsfehler-Erfassungsschema, das das Spannungssignal verwendet. Zum Beispiel kann
das ein Spannungssignal verwendende Verzögerungsfehler-Erfassungsschema einen Verzöge
rungsfehler nur dann erfassen, wenn das Spannungssignal sich zur Ausgabesignalleitung eines
ICs ausbreitet. Im Gegensatz dazu kann das Verzögerungsfehler-Erfassungsschema unter
Verwendung des transienten Versorgungsstromsignals den Verzögerungsfehler erfassen, weil es
möglich ist, ein transientes Versorgungsstromsignal mit einer Pulsbreite zu messen, die der
Verzögerungszeit des Weges entspricht, über den sich das Spannungssignal ausgebreitet hat,
selbst wenn das Spannungssignal sich nicht bis zur Ausgabesignalleitung des ICs ausbreitet.
Daher erfordert das Verzögerungsfehler-Erfassungsschema, das den transienten Versorgungs
strom verwendet, nicht die Ausbreitung des Spannungssignals zur Ausgabesignalleitung des ICs
und ist daher in der Prüfmustererzeugung weniger beschränkt als das herkömmliche Fehlererfas
sungsschema, das das Spannungssignal verwendet. Folglich können Prüfmuster leichter erzeugt
werden. Im Extremfall, z. B. sogar wenn Prüfmusterfolgen zufällig erzeugt und in die zu prüfende
Schaltung eingegeben werden, ermöglicht das Verzögerungsfehler-Erfassungsschema, das den
transienten Versorgungsstrom verwendet, die Erfassung eines Verzögerungsfehlers in dem durch
die eingegebenen Prüfmusterfolgen aktivierten Weg.
Als nächstes wird eine Beschreibung des Fehlerlisten-Erzeugungsverfahrens oder des Fehlersimu
lationsverfahrens gemäß der vorliegenden Erfindung gegeben. Fig. 14 zeigt ein Beispiel eines zu
prüfenden CMOS-ICs. Der dargestellte zu prüfende IC hat drei Eingabeanschlüsse I1, I2 und I3,
zwei Ausgabeanschlüsse O1 und O2, drei interne Signalknoten N1, N2 und N3 und fünf
Logikgatter G1, G2, G3, G4 und G5. Der Eingabeanschluß I1 ist an den Eingang des Inverter-
Logikgatters G1 angeschlossen, dessen Ausgang über den Knoten N1 an den einen Eingang des
NAND-Logikgatters G3 angeschlossen ist. Die Eingabeanschlüsse I2 und I3 sind an die Eingangs
seite des NAND-Logikgatters G2 angeschlossen, dessen Ausgang über den Knoten N2 an den
anderen Eingang des Logikgatters G3 angeschlossen ist, dessen Ausgang über den Knoten N3 an
den Eingang des Inverter-Logikgatters G4 und den einen Eingang des NOR-Logikgatters G5
angeschlossen ist. Der Eingabeanschluß I3 ist an den anderen Eingang des Logikgatters G5
angeschlossen, und die Ausgänge der Logikgatter G4 und G5 sind an die Ausgabeanschlüsse O2
und O3 angeschlossen. Obwohl nicht dargestellt, sind die Logikgatter G1 bis G5 an einen
gemeinsamen Stromversorgungsanschluß angeschlossen.
In Fig. 15 sind die Ergebnisse einer an dem oben erwähnten zu prüfenden CMOS-IC durchge
führten Fehlersimulation gezeigt. In Fig. 15 zeigt die erste Spalte Identifikatoren oder Bezeichner
von Prüfmusterfolgen; die zweite Spalte zeigt Eingabesignale (Prüfmusterfolgen), die auf die
Eingabeanschlüsse I1, I2 und I3 des CMOS-ICs angewendet werden; die dritte Spalte zeigt
Signale, die an den internen Signal-Knoten N1, N2 und N3 eines fehlerfreien zu prüfenden CMOS-
IC bei Anwendung der jeweiligen Prüfmusterfolgen darauf auftreten, und die vierte Spalte zeigt
Signale, die an den Ausgabeanschlüssen O1 und O2 des fehlerfreien CMOS-ICs bei Anwendung
der jeweiligen Prüfmusterfolgen darauf auftreten. Die Signale "0", "1", "R" und "F" in der
zweiten, dritten und vierten Spalte zeigen: ein normalerweise niedriges Signal <"0", "0"< (das
erste Element in den Winkelklammern bezeichnet einen Anfangssignalwert und das zweite
Element einen Endsignalwert); ein normalerweise hohes Signal (<"1", "1"<); ein von niedrigem
auf hohen Pegel ansteigendes Signal (<"0", "1"<) und ein von hohem auf niedrigen Pegel
fallendes Signal (<"1", "0"<). Jedes Prüfmuster ist aus zwei Prüfmustern aufgebaut; zum
Beispiel bedeutet ein Prüfmuster T1 = "00R": I1, I2, I3 = <"000", "001"<. Das heißt, es
bedeutet das Eingeben von "0", "0", "0" und dann "0", "0", "1" in die Eingabeanschlüsse I1, I2
bzw. I3. Die fünfte Spalte zeigt Sätze von fehlerhaften Logikgattern (Fehlerpunktliste), die durch
die Prüfung unter Verwendung des transienten Versorgungsstroms bei Eingabe der jeweiligen
Prüfmusterfolgen erfaßbar sind.
Wenn das Logikgatter einen Verzögerungsfehler oder einen Offen-Fehler hat, wird seine Schalt
operation langsam, und dementsprechend ändert sich seine Transientversorgungsstrom-Wellen
form, was zu einer Anomalität in dem transienten Versorgungsstrom des zu prüfenden ICs führt.
Durch Messen, ob die Anwendung einer bestimmten Prüfmusterfolge eine Anomalität in dem
transienten Versorgungsstrom verursacht, kann also entschieden werden, ob die Logikgatter, die
die Schaltoperation bei Eingabe der oben erwähnten Eingabeprüfmusterfolgen durchführen,
fehlerhaft sind oder nicht. Zum Beispiel führen bei Eingabe der Prüfmusterfolge T2 in den in Fig. 14
gezeigten CMOS-IC die Logikgatter G2, G3, G4 und G5 in dem IC ein Schalten durch und
erzeugen Übergangssignale an den internen Signalknoten (Signalleitungen) N2, N3 und den
Ausgabeanschlüssen O1, O2, wie in Fig. 14 gezeigt. Wenn folglich an einem der Logikgatter G2
bis G5 ein Fehler vorhanden ist, wird in dem transienten Versorgungsstrom während der
Transientversorgungsstromprüfung unter Verwendung der Prüfmusterfolge T2 eine Anomalität
beobachtet. Fehler der Logikgatter G2 bis G5 können also mit der Transientversorgungsstromprü
fung unter Verwendung der Prüfmusterfolge T2 festgestellt werden. Eine Fehlerpunktliste für die
Prüfmusterfolge T2 kann also durch die obige Fehlersimulation zu GT2 = {G2, G3, G4, G5}
berechnet werden.
Auf die oben beschriebene Weise ist es möglich, eine Liste von Fehlern, die mit einer bestimmten
Prüfmusterfolge erfaßbar sind, für jedes Logikgatter anzulegen. Außerdem ist das Fehlerlisten-
Erzeugungsverfahren nach der vorliegenden Erfindung nicht speziell auf die Erzeugung der
Fehlerliste für jedes Logikgatter beschränkt, sondern unter Annahme des Vorhandenseins von
Fehlern in den Signalleitungen des ICs kann die Fehlerliste für jede Signalleitung erstellt werden.
Fig. 16 zeigt einen zu prüfenden CMOS-IC, der drei Eingabeanschlüsse I1, I2 und I3, zwei
Ausgabeanschlüsse O1 und O2, fünf Logikgatter G1, G2, G3, G4 und G5 und zwölf Signalleitun
gen L1, L2, . . ., L12 hat. Die Signalleitungen sollen Eingabe- und Ausgabesignalleitungen
umfassen, und die verzweigten Signalleitungen werden als unterschiedliche Signalleitungen
betrachtet. Nehmen wir an, daß die Eingabesignalleitungen L11 und L12 am Ausgabepfuffer G6
bzw. G7 angeschlossen sind. Der Eingabeanschluß I1 ist über die Signalleitung L1 an den
Eingang des Inverter-Logikgatters G1 angeschlossen. Die Eingabeanschlüsse I2 und I3 sind an
den Eingang des NAND-Logikgatters G2 über die Signalleitungen L2, L3 bzw. L4 angeschlossen.
Die Ausgänge der Logikgatter G1 und G2 sind an den Eingang des NAND-Logikgatters G3 über
die Signalleitungen L6 bzw. L7 angeschlossen. Der Ausgang des Logikgatters G3 ist an den
Eingang des Inverter-Logikgatters G4 und über die Signalleitungen L8 und L9 und an den einen
Eingang des NOR-Logikgatters G5 über die Signalleitungen L8 und L10 angeschlossen. Der
Eingabeanschluß I3 ist an den anderen Eingang des Logikgatters G5 über die Signalleitungen L3
und L5 angeschlossen. Der Ausgang des Logikgatters G4 ist an den Ausgabeanschluß O1 über
die Signalleitung L11 und den Puffer G6 angeschlossen. Der Ausgang des Logikgatters G5 ist an
den Ausgabeanschluß O2 über die Signalleitung L12 und den Puffer G7 angeschlossen. Obwohl
nicht gezeigt, sind die Versorgungsanschlüsse der Logikgatter G1 bis G5 und der Ausgangspuffer
G6 und G7 an eine gemeinsame Stromversorgung angeschlossen.
In Fig. 17 sind die Ergebnisse einer an dem oben erwähnten zu prüfenden CMOS-IC durchge
führten Fehlersimulation gezeigt. In Fig. 17 zeigt die erste Spalte Identifikatoren von Prüfmuster
folgen; die zweite Spalte zeigt Eingabesignale, die auf die Eingabeanschlüsse I1, I2 und I3 des
CMOS-ICs angewendet werden; die dritte Spalte zeigt Signale, die in den Signalleitungen L1 bis
L12 eines fehlerfreien zu prüfenden CMOS-ICs bei Anwendung der jeweiligen Prüfmusterfolgen
darauf auftreten; und die vierte Spalte zeigt Signale, die an den Ausgabeanschlüssen O1 und O2
des fehlerfreien CMOS-ICs bei Anwendung der jeweiligen Prüfmusterfolgen darauf auftreten. Die
Signale "0", "1", "R" und "F" in der zweiten, dritten und vierten Spalte sind identisch mit den
zuvor mit Bezug auf Fig. 15 beschriebenen. Die fünfte Spalte zeigt Sätze von fehlerhaften
Logiksignalleitungen, d. h. eine Liste von fehlerhaften Punkten, die durch die Prüfung unter
Verwendung des transienten Versorgungsstroms bei Anwendung der jeweiligen Prüfmusterfolgen
erfaßbar sind. Wenn eine Signalleitung in dem IC einen Offen-Fehler hat, wird die Schaltoperation
des Logik-Gatters, dessen Eingang an die fehlerhafte Signalleitung angeschlossen ist, langsam,
und die Tansientversorgungsstrom-Wellenform des Logikgatters ändert sich entsprechend, so daß
sich eine Anomalität in dem transienten Versorgungsstrom des zu prüfenden ICs entwickelt.
Durch Messen oder Beobachten, ob die Anwendung einer bestimmten Prüfmusterfolge eine
Anomalität in dem transienten Versorgungsstrom verursacht, kann entschieden werden, ob die
Logikgatter, deren Eingänge an Signalleitungen angeschlossen sind, in denen sich die Logik
signalwerte ändern, fehlerhaft sind oder nicht, wenn sie bei Anwendung der oben erwähnten
Eingabe-Prüfmusterfolgen auf die Signalleitungen die Schaltoperation durchführen.
Nehmen wir z. B. an, daß die Prüfmusterfolge T6 in den in Fig. 16 gezeigten CMOS-IC eingege
ben wird. Wenn kein Fehler vorhanden ist, sind die Signale in den jeweiligen Signalleitungen so
wie mit 0 und 1 angegeben, und die Logiksignalwerte ändern sich entsprechend in den Signallei
tungen L2, L7, L8, L9, L10 und L11 im CMOS-IC, und ferner findet in den Logikgattern G2, G3
und G4 und im Ausgabepuffer G6 ein Schalten statt. Der Logiksignalwert ändert sich auf der
Signalleitung L10, doch im Logikgatter G5, das einen mit der Signalleitung L10 verbundenen
Eingang hat, findet kein Schalten statt. Wenn also in einer der Signalleitungen L2, L7, L8, L9 und
L11 ein Fehler vorhanden ist, wird eine Anomalität im transienten Versorgungsstrom während der
Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge T6 festgestellt. Das
heißt, Fehler in den Signalleitungen L2, L7, L8, L9 und L11 können durch die Transientversor
gungsstrom-Prüfung unter Verwendung der Prüfmusterfolge T6 erfaßt werden. Eine Fehlerliste
für die Prüfmusterfolge T6 kann also durch die obige Fehlersimulation berechnet werden als LT6
= {L2, L7, L8, L, L11}.
Auf die oben beschriebene Weise kann eine Liste von durch Eingeben einer bestimmten Prüfmu
sterfolge in jede Signalleitung erfaßbaren Fehlern erzeugt werden. Ferner sind das Fehlerverfahren
und der Fehlersimulator nach der vorliegenden Erfindung nicht speziell auf die Vorhersage
fehlerhafter Punkte von Signalleitungen beschränkt, an die Logikgatter angeschlossen sind,
sondern sie sind auch auf die Vorhersage von Fehlern von Signalleitungen in Logikgattern unter
der Annahme von Fehlern darin anwendbar.
Außerdem sind das Verfahren und die Vorrichtung gemäß der vorliegenden Erfindung nicht
speziell auf einen CMOS-IC beschränkt, sondern sind auch auf andere Halbleiter-ICs anwendbar.
Fig. 1A ist ein Graph, der langfristige Änderungen in den Eingabe- und Ausgabespannungen VIN
und VOUT eines CMOS-Inverters zeigt;
Fig. 1B ist ein Graph, der ein Beispiel einer transienten Antwort eines Versorgungsstroms IDD
auf die langfristigen Änderungen der Eingabespannung in Fig. 1A zeigt;
Fig. 1C ist ein Diagramm, das den CMOS-Inverter und dessen Versorgungsstrom zeigt, der zur
Zeit eines ansteigenden Übergangs des Inverter-Ausgangssignals fließt;
Fig. 1D ist ein Diagramm, das den CMOS-Inverter und dessen Versorgungsstrom zeigt, der zur
Zeit eines abfallenden Übergangs des Inverterausgangs fließt;
Fig. 2A ist ein Graph, der die Transfercharakteristika der Eingabe- und Ausgabespannungen VIN
und VOUT und eines Versorgungsstroms IS bei einem typischen Beispiel für die
transiente Antwort eines CMOS-Logikgatters zeigt;
Fig. 2B ist ein Diagramm, das eine angenäherte Wellenform des transienten Stroms in Fig. 2A
zeigt;
Fig. 3A ist ein Schaltungsdiagramm, das ein Beispiel für einen CMOS-IC zeigt;
Fig. 3B ist ein Graph, der Schwankungen der Eingabespannung in den bzw. der
Ausgangsspannung aus dem in Fig. 3A gezeigten IC zeigt;
Fig. 3C ist ein Graph, der eine Transientversorgungsstrom-Antwort IDDT zeigt, die beobachtet
wird, wenn die Eingabespannung von Fig. 3B auf die Schaltung von Fig. 3A
angewendet wird;
Fig. 4A ist ein Diagramm, das schematisch das Grundprinzip eines
Verzögerungsfehlerprüfverfahrens für einen mit Eingabe- und Ausgabelatches
versehenen Halbleiter-IC zeigt;
Fig. 4B ist ein Diagramm, das eine Verzögerung der Ausgabespannung VOUT gegen die
Eingabespannung VIN bei der in Fig. 4A gezeigten Prüfung zeigt;
Fig. 4C ist ein Diagramm, das einen Operationstakt für die Prüfung von Fig. 4A in Verbindung
mit Fig. 4B zeigt;
Fig. 5A ist ein Diagramm, das einen Offen-Fehler in einer Signalleitung zeigt, der einen
Logikfehler verursacht, sowie Eingabe- und Ausgabespannung zu dieser Zeit;
Fig. 5B ist ein Diagramm, das einen Offen-Fehler in einer Signalleitung zeigt, der einen
Verzögerungsfehler verursacht, sowie Eingabe- und Ausgabespannung zu dieser Zeit;
Fig. 6A ist ein Graph, der Änderungen von Eingabe- und Ausgabespannungen mit der Zeit in
Fällen zeigt, wo ein Verzögerungsfehler vorhanden ist bzw. wo kein
Verzögerungsfehler vorhanden ist;
Fig. 6B ist ein Graph, der in Verbindung mit Fig. 6A den transienten Versorgungsstrom zur
Erläuterung des Prinzips eines Transientversorgungsstrom-Prüfverfahrens zeigt;
Fig. 7 dient zur Erläuterung des Prinzips eines anderen Transientversorgungsstrom-
Prüfverfahrens, wobei Fig. 7A ein Graph ist, der Änderungen von Eingabe- und
Ausgabespannung mit der Zeit in Fällen zeigt, wo kein Verzögerungsfehler vorhanden
ist bzw. wo ein Verzögerungsfehler vorhanden ist, und Fig. 7B ein Graph ist, der den
entsprechenden transienten Versorgungsstrom und dessen Meßpunkte zeigt;
Fig. 8 ist ein Graph, der Änderungen im Integral des transienten Versorgungsstroms zur Zeit
des Eingangsübergangs des CMOS-Inverters zeigt;
Fig. 9A ist ein Schaltungsdiagramm, das ein Modell eines in einer Eingabesignalleitung des
CMOS-Inverters vorhandenen kleinen Offen-Fehlers zeigt;
Fig. 9B ist ein Graph, der schematisch die Signalübergangszeit in Abwesenheit des kleinen
Offen-Fehlers zeigt;
Fig. 9C ist ein Graph, der schematisch die Signalübergangszeit in Gegenwart des kleinen
Offen-Fehlers zeigt;
Fig. 10 ist ein Graph, der Änderungen in einem Integral QDDT des transienten
Versorgungsstroms eines CMOS-ICs mit Bezug auf den Widerstandswert Ropen des in
dem CMOS-IC vorhandenen kleinen Offen-Fehlers zeigt;
Fig. 11 ist ein Histogramm, das die Verteilung von Integralen des transienten
Versorgungsstroms des CMOS-ICs mit Bezug auf Änderungen des CMOS-
Herstellungsprozesses zeigt;
Fig. 12 ist ein Graph, der Änderungen in der Verzögerungszeit tpd eines zu prüfenden Weges
des CMOS-ICs mit Bezug auf den Widerstandswert Ropen des auf dem Weg
vorhandenen kleinen Offen-Fehlers zeigt;
Fig. 13 ist ein Graph, der die lineare Beziehung zwischen dem Integral QDDT des transienten
Versorgungsstroms des CMOS-ICs und der Verzögerungszeit tpd des zu prüfenden
Weges in Anwesenheit des auf dem Weg angenommenen kleinen Offen-Fehlers zeigt;
Fig. 14 ist ein Schaltungsdiagramm, das ein Beispiel eines zu prüfenden CMOS-ICs zeigt;
Fig. 15 ist eine Tabelle, die als Beispiel die Ergebnisse einer Fehlersimulation an dem CMOS-IC
der Fig. 14 zeigt;
Fig. 16 ist ein Schaltungsdiagramm, das ein anderes Beispiel des zu prüfenden CMOS-ICs
zeigt;
Fig. 17 ist eine Tabelle, die als Beispiel die Ergebnisse einer anderen Fehlersimulation an dem
CMOS-IC aus Fig. 16 zeigt;
Fig. 18 ist ein Blockdiagramm, das die Konfiguration einer Ausgestaltung des Fehlersimulators
nach der vorliegenden Erfindung zeigt;
Fig. 19 ist ein Flußdiagramm, das die Prozedur des Fehlersimulationsverfahrens nach der
vorliegenden Erfindung zeigt;
Fig. 20 ist ein Flußdiagramm, das die Prozedur des Fehlerlisten-Erzeugungsschrittes 206 in
Fig. 19 zeigt;
Fig. 21 ist ein Flußdiagramm, das die Prozedur des Fehlerlisten-Erzeugungsschrittes 206 im
Falle des Erzeugens der Liste für jedes Logikgatter zeigt;
Fig. 22 ist ein Flußdiagramm, das die Prozedur des Erzeugens einer Fehlerliste 206 im Falle des
Erzeugens der Liste für jede Signalleitung zeigt;
Fig. 23 ist ein Flußdiagramm, das die Prozedur des Fehlerlisten-Erzeugungsschrittes 206 im
Falle des Erzeugens der Liste für jeden Signalausbreitungsweg zeigt;
Fig. 24 ist eine Tabelle, die ein Beispiel der für jeden Signalausbreitungsweg erzeugten
Fehlerliste der Schaltung aus Fig. 14 zeigt;
Fig. 25 ist eine Tabelle, die ein Beispiel der für jeden Signalausbreitungsweg erzeugten
Fehlerliste der Schaltung aus Fig. 16 zeigt;
Fig. 26 ist ein Flußdiagramm, das eine andere Prozedur des Fehlersimulationsverfahrens nach
der vorliegenden Erfindung zeigt;
Fig. 27 ist ein Blockdiagramm, das die Konfiguration einer anderen Ausgestaltung des
Fehlersimulators gemäß der vorliegenden Erfindung zeigt; und
Fig. 28 ist ein Flußdiagramm, das die Prozedur einer anderen Ausgestaltung des
Fehlersimulationsverfahrens nach der vorliegenden Erfindung zeigt.
Nun wird eine Beschreibung von Ausgestaltungen der vorliegenden Erfindung geliefert.
Fig. 18 zeigt in Blockform ein Beispiel für den Aufbau eines Fehlersimulators zur Verwendung in
einer Ausgestaltung der vorliegenden Erfindung. Der allgemein mit 100 bezeichnete Fehlersimula
tor umfaßt: ein Prüfmuster-Erzeugungsmittel 101, das Prüfmuster nacheinander zur Eingabe in
einen zu prüfenden Halbleiter-IC erzeugt; einen Logiksimulator 102, der Logiksimulationen der
Operation des zu prüfenden ICs durch sequentielles Anwenden der Prüfmuster aus dem Prüfmu
ster-Erzeugungsmittel 101 darauf erzeugt, dann die in den Signalleitungen des zu prüfenden ICs
auftretenden Logiksignalwertfolgen berechnet und sie in einem Speicher 102M in Beziehung zu
den jeweiligen Prüfmusterfolgen speichert, und ein Fehlerlisten-Erzeugungsmittel 103, das Listen
von durch ein Transientversorgungsstrom-Prüfverfahren für jede Prüfmusterfolge durch Verwen
dung der vom Logiksimulator 102 berechneten Logiksignalwertfolge erfaßbaren Fehler für jede
Signalleitung erzeugt und die Fehlerliste in einem Fehlerlistenspeicher 103M speichert. Das
Prüfmuster-Erzeugungsmittel 101, der Logiksimulator 102 und das Fehlerlisten-Erzeugungsmittel
103 können durch Hardware oder Software gebildet sein.
Wenn der zu prüfende Halbleiter-IC z. B. drei Eingangsanschlüsse hat, ist das Prüfmuster-Erzeu
gungsmittel 101 durch zwei Pseudozufallsmusterfolgen-Generatoren gebildet, die auf verschie
dene Werte initialisiert und synchron unter Verwendung des gleichen Taktes betrieben werden,
um so Zufallsmusterfolgen zu erzeugen. Die Ausgaben der drei Pseudozufallsmusterfolgen-
Generatoren werden als Prüfmuster für jeden Takt verwendet. Alternativ wird ein Drei-Bit-Zähler
zum Takte zählen verwendet, und für jeden Takt wird der durch drei Bits ausgedrückte Zählwert
als Prüfmuster entnommen. Es ist leicht zu verstehen, daß diese Schemata durch Software
implementiert werden können. Es ist auch möglich, benötigte Prüfmuster vorab zu speichern und
sie dann eins nach dem anderen zu lesen. Auf jeden Fall wird die Zahl von Verschiebungsstufen
eines Pseudozufallszahl-Generators so gewählt oder eine ausreichende Zahl von Prüfmustern in
einem Speicher vorab gespeichert, so daß diverse Prüfmuster erzeugt werden können, die
ausreichend Daten liefern, die zum Erfassen, als erfaßbare Punkte, von Verzögerungsfehlern in
beliebigen Logikgattern oder von Offen-Fehlern an beliebigen Signalleitungen des zu prüfenden
Halbleiter-ICs erforderlich sind.
Wenn der Logiksimulator 102 durch Software implementiert ist, werden die Operationen in den
jeweiligen Logikgattern des zu prüfenden Halbleiter-ICs sequentiell durch Software für jedes darin
eingegebene Prüfmuster durchgeführt, und die Operationsergebnisse (Logiksignalwerte) für alle
Prüfmuster werden entsprechend den Signalleitungen, wo die Operationsergebnisse geliefert
werden, gespeichert. Auf diese Weise kann die Folge von Logiksignalwerten auf jeder Signallei
tung leicht erhalten werden. Im Falle der Realisierung des Logiksimulators 102 durch Hardware
wird eine Schaltungsinformation über den Halbleiter-IC z. B. in eine feldprogrammierbare Gatter
anordnung (FPGA) eingegeben, um einen zu prüfenden Halbleiter-IC zu bilden, und bei Eingabe
jeweils eines Prüfmusters darin wird der Logiksignalwert auf jeder Leitung erfaßt und im Zusam
menhang mit der Signalleitung gespeichert. Folglich ist der Logiksimulator 102 mit dem Speicher
102M zum Speichern der Logiksignalwerte versehen, die jeweils auf den Signalleitungen für jedes
Prüfmuster erzeugt werden. Der Logiksimulator 102 kann ein Allzweck-Logiksimulator wie etwa
ein VHDL-Systemsimulator (VSS) von Synopsys, Inc. sein. Das Fehlerlisten-Erzeugungsmittel 103
wird später beschrieben.
Als nächstes wird eine Beschreibung der Operationen des Fehlersimulators 100 geliefert, die mit
der Fehlersimulation eines Halbleiter-ICs zusammenhängen. Fig. 19 zeigt die Prozedur des
Fehlersimulationsverfahrens nach der vorliegenden Erfindung. Diese Simulation beginnt bei Schritt
201, in dem das Prüfmuster-Erzeugungsmittel 101 den Anfangswert für Prüfmuster einer Serie
von Prüfmusterfolgen für die zu erzeugende Fehlerliste setzt, d. h. ein Prüfmuster mit dem
Anfangswert erzeugt. Dann empfängt in Schritt 202 der Logiksimulator 102 das in Schritt 201
gesetzte Prüfmuster. In Schritt 203 verwendet der Logiksimulator 102 das Prüfmuster, um eine
Logiksimulation der Operation des zu prüfenden Halbleiter-ICs durchzuführen, berechnet dann die
Logiksignalwerte auf den Signalleitungen des zu prüfenden ICs und speichert im Speicher 102M
den Logiksignalwert für jede Signalleitung in Entsprechung zum Prüfmuster. Als nächstes
überprüft in Schritt 204 der Fehlersimulator 100, ob ein Prüfmuster in der betreffenden Prüfmu
sterfolge unberücksichtigt ist. Wenn ja, setzt (erzeugt) der Fehlersimulator 100 das nächste
Prüfmuster (stellt z. B. die Operation eines Pseudozufallsmuster-Generators um einen Taktzyklus
weiter) und wiederholt Schritte 202 und 203. Wenn in der Serie von Prüfmusterfolgen kein übrig
bleibendes unberücksichtigtes Prüfmuster gefunden wird (wenn z. B. der Pseudozufallsmuster-
Generator einen Durchgang der Zufallmustererzeugung beendet hat), geht der Fehlersimulator in
Schritt 204 zu Schritt 206 über.
Schließlich erzeugt in Schritt 206 das Fehlerlisten-Erzeugungsmittel 103 eine Liste von Fehlern,
die durch eine Transientversorgungsstrom-Prüfung für die Prüfmusterfolgen erfaßbar sind, auf
Grundlage der auf den jeweiligen Signalleitungen des ICs in den obigen Schritten erzeugten und in
dem Speicher 102M gespeicherten Logiksignalwertfolgen. Wenn die Prüfmusterfolgen, wie in
dem oben erwähnten Beispiel, jeweils aus zwei Prüfmustern bestehen, werden zwei von dem
Prüfmuster-Erzeugungsmittel 102 erzeugte willkürliche Prüfmuster entnommen und mit einer
Prüfmusterfolge-Identifikationsnummer versehen, und die Signalleitungen, auf denen sich
Logiksignalwerte in Reaktion auf die Anwendung der Prüfmuster ändern, werden als mögliche
Fehlererfassungspunkte der Prüfmusterfolge-Identifikationsnummer zugeordnet, um die Fehlerli
sten zu erzeugen. Die Erzeugung der Fehlerliste wird später genauer beschrieben. Die zeitliche
Serie der durch den Logiksimulator 102 jeweils in Schritten 202, 203 und 204 berechneten
Logiksignalwerte entspricht der zeitlichen Serie der Prüfmuster in der Prüfmusterfolge.
Fig. 20 ist ein Flußdiagramm, das ein Beispiel der Prozedur zur Erzeugung der Fehlerliste im
Schritt 206 von Fig. 19 zeigt. Die Prozedur beginnt mit Schritt 301, in dem einer der Punkte,
die in dem zu prüfenden Halbleiter-IC möglicherweise fehlerhaft werden können, gewählt und
gesetzt wird. Darauf folgt Schritt 302, in dem eine Überprüfung durchgeführt wird, um festzu
stellen, ob die von dem Logiksimulator 102 berechnete Logiksignalwertfolge die Bedingung für
Fehlererfassung durch die Transientversorgungsstrom-Prüfung erfüllt, wenn der oben gesetzte
Punkt fehlerhaft wird. Wenn die Fehlererfassungsbedingung erfüllt ist, wird der gesetzte Punkt in
Schritt 303 in der Fehlerliste registriert. Wenn im Schritt 302 festgestellt wird, daß die Fehlerer
fassungsbedingung nicht erfüllt wird, geht die Prozedur weiter zu Schritt 304. In Schritt 304 wird
eine Überprüfung durchgeführt, um festzustellen, ob es in dem zu prüfenden IC irgendwelche
weiteren unberücksichtigten Punkte gibt, die möglicherweise fehlerhaft werden können; wenn ja,
wird der Punkt, der fehlerhaft werden kann, in Schritt 305 gesetzt, und die Prozedur geht über zu
Schritt 302. Auf diese Weise werden die Schritte 302, 303, 304 und 305 wiederholt, bis alle
Punkte, die in dem zu prüfenden IC fehlerhaft werden können, behandelt sind; das heißt, wenn in
Schritt 304 keine unberücksichtigten Punkte gefunden werden, endet die Prozedur.
Fig. 21 ist ein Flußdiagramm, das ein Beispiel der Prozedur zum Erzeugen einer Liste von Fehlern
in Logikgattern in Schritt 206 in Fig. 19 zeigt. Die Prozedur beginnt mit Schritt 401, in dem
eines der Logikgatter, die fehlerhaft werden können, ausgewählt und anfänglich gesetzt wird. Als
nächstes wird in Schritt 402 eine Überprüfung durchgeführt, um festzustellen, ob eine Änderung
oder Umschaltung in der Logiksignalwertfolge auf der Ausgabesignalleitung des gesetzten
Logikgatters stattgefunden hat, berechnet durch den Logiksimulator 102 auf Grundlage der
Logiksignalwerte in der Ausgabesignalleitung jedes Logikgatters, die für jede Prüfmusterfolge in
dem Speicher 102M gespeichert sind, in dem die Ergebnisse der Simulation in Schritt 203 von
Fig. 19 gespeichert sind. Wenn die Logiksignalwertfolge in der Ausgabesignalleitung des obigen
fehlerhaften Logikgatters verändert ist, werden das gesetzte Logikgatter und das entsprechende
Prüfmuster in der Fehlerliste in Schritt 403 registriert. Wenn z. B. das Logikgatter G1 in der
Schaltung von Fig. 14 gesetzt ist, wird die erste Logiksignalwertfolge "1, 1, 0, 0, . . ." in der
dritten Spalte der Tabelle von Fig. 15 nach Prüfmusterfolgen T9, T10, T11 und T12 abgesucht,
die R oder F werden, und diese Prüfmusterfolgen werden für G1 in der Fehlerliste registriert, oder
G1 wird für jede dieser Prüfmusterfolgen T9 bis T12 registriert; d. h. diese Beziehungen werden
im Speicher 103M gespeichert, um die Fehlerliste zu erzeugen. Unter diesen Umständen können
Fehler, die erfaßbar sind, wenn das Logiksignal in der Ausgabesignalleitung des fehlerhaften
Logikgatters einen Wert R (einen ansteigenden Übergang) und einen Wert F (einen abfallenden
Übergang) einnimmt, als verschiedene Fehler registriert werden. Wenn z. B. das Logikgatter G1
gesetzt ist, werden der Fehler, der erfaßbar ist, wenn das Logiksignal auf seiner Ausgabesignallei
tung den Wert R annimmt, und der Fehler, der erfaßbar ist, wenn das Logiksignal auf seiner
Ausgabesignalleitung den Wert F annimmt, in der Fehlerliste jeweils als G1R bzw. G2F registriert.
Da bei dem obigen Beispiel das Logiksignal am Ausgabeknoten N1 des Logikgatters G1 den Wert
F für alle Prüfmusterfolgen T9, T10, T11 und T12 annimmt, werden diese Prüfmusterfolgen in
der Fehlerliste für den Fehler G1F registriert, oder G1F wird für jedes dieser Prüfmuster registriert.
Wenn in Schritt 402 festgestellt wird, daß die Logiksignalwertfolge auf der Ausgabesignalleitung
des gesetzten Logikgatters sich nicht geändert hat, geht die Prozedur über zu Schritt 404. In
Schritt 404 wird eine Überprüfung durchgeführt, um festzustellen, ob es noch ein unberücksich
tigtes Logikgatter in dem zu prüfenden Halbleiter-IC gibt, und wenn ein solches Logikgatter
gefunden wird, geht die Prozedur über zu Schritt 405, in der das Logikgatter, in dem der nächste
Fehler möglicherweise auftritt, gesetzt wird, gefolgt von einer Rückkehr zu Schritt 402. Auf diese
Weise werden die Schritte 402, 403, 404 und 405 wiederholt, bis die Logikgatter, in denen
Fehler auftreten können, alle berücksichtigt oder behandelt sind, und wenn kein unberücksichtig
tes Logikgatter in Schritt 404 gefunden wird, endet die Prozedur.
Wenn eine Änderung in der Logiksignalwertfolge auf der Ausgabesignalleitung des gesetzten
Logikgatters gefunden wird, wird der transiente Versorgungsstrom des zu prüfenden Halbleiter-
ICs zur Zeit der Eingabe der Prüfmusterfolge, die die Veränderung in der Logiksignalwertfolge
verursacht, gemessen. Aus dem Momentanwert des transienten Versorgungsstroms nach einer
vorgegebenen verstrichenen Zeit oder der Pulsbreite oder dem Integral des transienten Versor
gungsstroms kann, wie oben beschrieben, entschieden werden, ob das gesetzte Logikgatter sich
in einem Verzögerungsfehlerzustand befindet. Das heißt, bei der Erzeugung der Fehlerliste für
jedes Logikgatter ist die Überprüfung, ob die Logiksignalwertfolge auf der Ausgabesignalleitung
des gesetzten Logikgatters sich geändert hat, äquivalent mit der Durchführung einer Überprüfung,
um festzustellen, ob die Bedingung für Fehlererfassung durch die Transientversorgungsstrom-
Prüfung erfüllt ist.
Fig. 22 ist ein Flußdiagramm, das ein Beispiel der Prozedur zum Erzeugen einer Liste von Fehlern
in jeder Signalleitung in Schritt 206 von Fig. 19 zeigt. Die Prozedur beginnt mit Schritt 501, in
der unter Signalleitungen, in denen ein Fehler auftreten kann, eine ausgewählt und anfänglich
gesetzt wird. Als nächstes wird in Schritt 502 eine Überprüfung durchgeführt, um festzustellen,
ob eine Veränderung in der in Schritt 203 von Fig. 19 durch den Logiksimulator 102 berechne
ten Logiksignalwertfolge auf der gesetzten Signalleitung stattgefunden hat, auf der Grundlage der
Logiksignalwertfolge in der gesetzten Signalleitung, die für jede Prüfmusterfolge im Speicher
102M gespeichert ist, in dem die Ergebnisse der in Schritt 203 von Fig. 19 durchgeführten
Logiksimulation gespeichert sind. Wenn festgestellt wird, daß die Logiksignalwertfolge auf der
gesetzten Signalleitung sich geändert hat, geht die Prozedur über zu Schritt 503. Wenn z. B. die
Signalleitung L2 in der Schaltung von Fig. 16 gesetzt wird, ist die Logiksignalwertfolge auf
dieser Signalleitung die zweite Folge der Logiksignalwerte "0, 1, 0, 1, . . ." in der dritten Spalte
der Tabelle von Fig. 17, und diese Logiksignalwertfolge wird auf R oder F geprüft. Da hier R in
der Logiksignalwertfolge in Verbindung mit den Prüfmusterfolgen T5, T6, T7 und T8 gefunden
wird, d. h. da die Logiksignalwertfolge durch diese Prüfmusterfolgen verändert worden ist, geht
die Prozedur über zu Schritt 503. Wenn in der Logiksignalwertfolge auf der gesetzten Signallei
tung keine Veränderung gefunden wird, geht die Prozedur zu Schritt 505. Als nächstes findet auf
der Grundlage der Ergebnisse von Berechnungen durch den Logiksimulator 102 (die gespeicherten
Inhalte des Speichers 102M) eine Überprüfung statt, um festzustellen, ob die Logiksignalwert
folge in der Ausgabesignalleitung des Logikgatters, an dessen Eingang die gesetzte Signalleitung
angeschlossen ist, durch die Prüfmusterfolge verändert worden ist, die diese Veränderung in der
Logiksignalwertfolge in Schritt 502 verursacht hat. Wenn festgestellt wird, daß die Logiksignal
wertfolge sich geändert hat, wird die gesetzte Signalleitung in der Fehlerliste in Schritt 504
registriert. Das heißt, bei dem obigen Beispiel können zwar die Musterfolgen T5 bis T8 die
Logiksignalwertfolge auf der gesetzten Eingabesignalleitung L2 ändern, doch sind es die Muster
folgen T6 und T8, wie durch F in der Tabelle von Fig. 17 angegeben, die die Logiksignalwert
folge in der Ausgabesignalleitung L7 des Logikgatters G2 ändern, von dem ein Eingang an die
gesetzte Signalleitung L2 angeschlossen ist; entsprechend werden die Prüfmusterfolgen T6 und
T8 für die gesetzte Signalleitung L2 registriert. Alternativ wird die Signalleitung L2 für T6 und T8
in der Fehlerliste registriert. Das heißt, die Logiksignalwertfolge auf der Signalleitung L2 wird
durch die Prüfmusterfolgen T5 bis T8 verändert, doch das Logikgatter G2 reagiert nur auf die
Prüfmusterfolgen T6 und T8 mit dem Durchführen eines Schaltens, und da ohne ein Schalten des
Logikgatters G2 kein Fehler durch die Transientversorgungsstrom-Prüfung gefunden werden
kann, werden die Prüfmusterfolgen T6 und T8 für die Signalleitung L2 registriert. Wenn in Schritt
503 festgestellt wird, daß die Logiksignalwertfolge auf der Ausgabesignalleitung des Logikgat
ters, dessen Eingang an die gesetzte Signalleitung angeschlossen ist, nicht durch die Prüfmuster
folge verändert worden ist, von der in Schritt 502 festgestellt worden ist, dass sie die Logik
signalwertfolge auf der Eingabeleitung geändert hat, geht die Prozedur über zu Schritt 505. In
Schritt 505 wird eine Überprüfung durchgeführt, um festzustellen, ob andere Signalleitungen in
dem zu prüfenden Halbleiter-IC noch ungeprüft sind, und wenn ja, wird die Signalleitung, in der
der nächste Fehler auftreten kann, in Schritt 506 gesetzt, gefolgt durch eine Rückkehr zu Schritt
502. Auf diese Weise werden die Schritte 502, 503, 504, 505 und 506 wiederholt, bis alle
Signalleitungen in dem zu prüfenden IC, an denen Fehler auftreten können, überprüft sind. Wenn
in Schritt 505 keine ungeprüfte Signalleitung gefunden wird, endet die Prozedur.
Falls eine Unterbrechung in der gesetzten Signalleitung einen Verzögerungsfehler in dem
Logikgatter verursacht, dessen Eingang an die gesetzte Signalleitung angeschlossen ist, ist es
zum Erfassen des Fehlers durch die Transientversorgungsstrom-Prüfung notwendig, daß eine
Änderung in der Logiksignalwertfolge auf der gesetzten Signalleitung eine Änderung in d 25295 00070 552 001000280000000200012000285912518400040 0002010053758 00004 25176er
Logiksignalwertfolge in dem daran angeschlossenen Logikgatter herbeiführt. Wie oben mit Bezug
auf die Erzeugung der Fehlerliste basierend auf der gesetzten Signalleitung beschrieben, läuft eine
Prüfung zum Feststellen, ob die Umschaltung der Logiksignalwertfolge auf der gesetzten
Signalleitung die Umschaltung der Logiksignalwertfolge in der Ausgabesignalleitung des Logikgat
ters mit dem an die gesetzte Signalleitung angeschlossenen Eingang bewirkt, darauf hinaus, dass
eine Überprüfung durchgeführt wird, um festzustellen, ob die Bedingung für die Fehlererfassung
durch die Transientversorgungsstrom-Prüfung erfüllt ist.
Mit Bezug auf Fig. 23 wird nun eine Beschreibung eines Beispiels der Prozedur zum Erzeugen
einer Liste von Fehlern auf jedem Signalausbreitungsweg geliefert. Die Prozedur beginnt mit
Schritt 801, in dem unter Signalausbreitungswegen, in denen ein Fehler sich entwickeln kann,
einer ausgewählt und anfänglich gesetzt wird. Als nächstes wird in Schritt 802 für jede Prüfmu
sterfolge anhand gespeicherter Inhalte des Speichers 102M, in dem die Ergebnisse der in Schritt
203 von Fig. 19 durchgeführten Logiksimulation gespeichert sind, geprüft, ob die Logiksignal
wertfolge an jedem Punkt des gesetzten Signalausbreitungsweges verändert ist. Wenn die
Logiksignalwertfolge an jedem Punkt des gesetzten Signalausbreitungsweges verändert ist,
werden die entsprechende Prüfmusterfolge und der gesetzte Signalausbreitungsweg in der
Fehlerliste in Schritt 803 registriert. Zum Beispiel ändern sich bei der Logiksimulation für jedes
Logikgatter in dem in Fig. 14 abgebildeten Halbleiter-IC die Logiksignalwerte an jedem Eingabe
anschluß, jedem internen Knoten und jedem Ausgabeanschluß in Reaktion auf die Eingabe jeder
Prüfmusterfolge, wie in Fig. 15 gezeigt. Beispielsweise in dem Fall, wo der gesetzte Signalaus
breitungsweg, auf dem ein Fehler auftreten kann, <I1, N1, N3, O1< ist, zeigt die Tabelle von
Fig. 15, daß I1, N1, N3 und O1 für die Prüfmusterfolge T9 jeweils R, F, R bzw. F sind; d. h. die
Logiksignalwerte ändern sich an jedem Punkt auf diesem Signalausbreitungsweg. Ferner sind
auch im Fall der Prüfmusterfolgen T10 und T11 I1, N1, N3 und O1 = R, F, R bzw. F; d. h. die
Logiksignalwerte ändern sich an jedem Punkt auf diesem Weg. Folglich werden die Prüfmuster
folgen T9, T10 und T11 für den Signalausbreitungsweg <I1, N1, N3, O1< registriert; alternativ
wird der Weg <I1, N1, N3, O1< für jede der Prüfmusterfolgen T9, T10 und T11 registriert.
Entsprechend ändern sich bei der Logiksimulation für jede interne Signalleitung in dem in Fig. 16
abgebildeten Halbleiter-IC die Logiksignalwerte an jedem Eingabeanschluß, jeder internen
Signalleitung und jedem Ausgabeanschluß in Reaktion auf die Eingabe jeder Prüfmusterfolge, wie
in der Tabelle von Fig. 17 abgebildet. Zum Beispiel im Fall, wo der gesetzte Signalausbreitungs
weg, in dem ein Fehler auftreten kann, <I3, L3, L5, L12, O2< ist, zeigt die Tabelle von Fig.
17, daß I3, L3, L5, L12 und O2 für die Prüfmusterfolge T1 jeweils R, R, R, F bzw. F sind, das
heißt, die Logiksignalwerte ändern sich an jedem Punkt auf diesem Signalausbreitungsweg.
Ferner sind für die Prüfmusterfolge T2 ebenfalls I3, L3, L5, L12 und O2 jeweils R, R, R, F bzw. F;
das heißt, die Logiksignalwerte ändern sich an jedem Punkt auf diesem Weg. Folglich werden die
Prüfmusterfolgen T1 und T2 in der Fehlerliste für den Signalausbreitungsweg <I3, L3, L5, L12,
O2< registriert; alternativ wird der Weg <I3, L3, L5, L12, O2< für jedes der Prüfmuster T1 und
T2 registriert. Die Signalausbreitungswege, die in der Fehlerliste registriert werden, sind nicht
spezifisch auf die Wege vom Eingabe- zum Ausgabeanschluß des zu prüfenden ICs beschränkt,
sondern können auch Signalausbreitungswege sein, die den Ausgabeanschluß nicht erreichen,
wie etwa <I1, N1< im Halbleiter-IC von Fig. 14 und <I1, L1, L6< im IC von Fig. 16.
Wenn in Schritt 802 festgestellt wird, daß es keine Prüfmusterfolge gibt, die eine Veränderung
der Logiksignalwertfolge an jedem Punkt auf dem betreffenden Weg bewirkt, oder nach der
Registrierung in der Fehlerliste in Schritt 803, wird in Schritt 804 überprüft, ob noch ein
ungeprüfter Signalausbreitungsweg in dem zu prüfenden Halbleiter-IC übrig ist. Wenn ein
ungeprüfter Signalausbreitungsweg gefunden wird, geht die Prozedur über zu Schritt 805 des
Setzens eines Signalausbreitungsweges, der fehlerhaft werden kann, gefolgt von einer Rückkehr
zu Schritt 803. Auf diese Weise werden die Schritte 802, 803, 804 und 805 so lange wieder
holt, wie es einen ungeprüften Signalausbreitungsweg gibt, der fehlerhaft werden kann. Nach
vollständiger Überprüfung aller Signalausbreitungswege, die fehlerhaft werden können, endet die
Fehlerlistenerzeugungs-Prozedur. Fig. 24 ist eine Tabelle, die eine Fehlerliste über die Signalaus
breitungswege zeigt, die durch Logiksimulationen erhalten ist, die durchgeführt worden sind, um
festzustellen, ob die Logikgatter in den internen Signalleitungen des Halbleiter-ICs von Fig. 14
schalten. Fig. 25 ist eine Tabelle, die eine Fehlerliste über die Signalausbreitungswege zeigt, die
durch Logiksimulationen erhalten ist, die durchgeführt worden sind, um zu überprüfen, ob die
Logiksignatwertfolgen in den internen Signalleitungen des Halbleiter-ICs von Fig. 16 sich ändern.
Wie sich aus Fig. 15, 17, 24 und 25 ergibt, können die Speicher 102M und 103M durch
einen Speicher gebildet sein.
Während die obige Fehlerliste erzeugt ist nach Durchführung von Logiksimulationen unter
Verwendung aller Prüfmusterfolgen, ist es auch möglich, das Ergebnis der Logiksimulation in der
Fehlerliste bei Vollendung der Simulation mit jeder Prüfmusterfolge nach Bedarf zu registrieren, so
daß die Erzeugung der Fehlerliste endet, wenn die Logiksimulationen unter Verwendung aller
Prüfmuster vollendet sind. Ein Beispiel für eine solche Prozedur ist in Fig. 26 gezeigt. Wenn z. B.
der Halbleiter-IC drei Eingabeanschlüsse hat, werden drei Pseudozufallmuster-Generatoren mit
unterschiedlichen Anfangswerten auf dem gleichen Takt betrieben, um drei Zufallmuster zu
erzeugen, die jeweils in ein Ein-Takt-Verzögerungsregister eingegeben werden. Die Prüfmusterfol
gen werden jeweils erzeugt, indem als Prüfmuster die Ausgaben aus den drei Verzögerungsregi
stern entnommen werden und dann als Prüfmuster die Ausgaben von den drei Prüfmustergenera
toren entnommen werden und die entnommenen Ausgaben kombiniert werden.
In Schritt 901 wird eine der Prüfmusterfolgen, für die die Fehlerliste erzeugt werden soll, z. B.
durch Kombinieren der Ausgaben von den Verzögerungsregistern und der Pseudozufallsmuster-
Generatoren wie oben beschrieben erzeugt. Als nächstes wird in Schritt 902 ein Prüfmuster der
so erzeugten Prüfmusterfolge in geordneter Folge entnommen, und in Schritt 903 wird eine
Logiksimulation der Operation des zu prüfenden Halbleiter-ICs unter Verwendung des entnomme
nen Prüfmusters und von auf den Signalleitungen des ICs auftretenden und im Speicher 102M für
jede Signalleitung in Entsprechung zum verwendeten Prüfmuster gespeicherten Logiksignalwerten
durchgeführt. In Schritt 904 wird geprüft, ob in der Prüfmusterfolge ein ungenutztes oder
unberücksichtigtes Prüfmuster übrig ist, und wenn ja, geht die Prozedur zu Schritt 905 über, in
der das nächste Muster gesetzt (erzeugt) wird, z. B. durch Setzen der Ausgaben der Pseudozu
fallsmuster-Generatoren, und dann werden die Schritte 902 und 903 wiederholt.
Wenn in Schritt 904 kein unberücksichtigtes Prüfmuster gefunden wird, erfolgt die Registrierung
in der Fehlerliste basierend auf den Ergebnissen der Logiksimulation unter Verwendung der
betreffenden Prüfmusterfolge. Dieser Prozeß wird später beschrieben. Dann geht die Prozedur zu
Schritt 907, in dem geprüft wird, ob noch eine unerzeugte Prüfmusterfolge übrig ist, und wenn
ja, geht die Prozedur zu Schritt 901, in dem die nächste Prüfmusterfolge erzeugt wird; z. B. wird
die Operation der Pseudozufallsmuster-Generatoren um einen Takt weitergestellt. Für die neu
erzeugte Prüfmusterfolge werden die Schritte 902 bis 906 erneut durchgeführt. Wenn in Schritt
907 keine unerzeugte Prüfmusterfolge gefunden wird, z. B. wenn die Pseudozufallsmuster-
Generatoren eine Runde der Erzeugung der Prüfmusterfolgen beendet haben, endet diese
Prozedur.
Nun wird mit Bezug auf Fig. 21 die Prozedur zur Registrierung in der Fehlerliste in Schritt 906
von Fig. 26 beschrieben. In Schritt 401 wird eines der Logikgatter, die in dem zu prüfenden
Halbleiter-IC fehlerhaft werden können, anfänglich gesetzt. Dann wird in Schritt 402 anhand der
gespeicherten Inhalte 102M geprüft, ob die Logiksignalwertfolge auf der Ausgabesignalleitung
des gesetzten Logikgatters, berechnet mit dem Logiksimulator 102 für die in Schritt 901 in Fig. 26
erzeugte Prüfmusterfolge, verändert worden ist. Wenn die Logiksignalwertfolge auf der
Ausgabesignalleitung des gesetzten Logikgatters verändert worden ist, geht die Prozedur über zu
Schritt 404, in dem das betreffende Logikgatter und die Prüfmusterfolge in der Fehlerliste
registriert werden. Betrachten wir z. B. den Fall, wo die Schaltung aus Fig. 14 geprüft werden
soll und T9 aus der Tabelle von Fig. 15 die in Schritt 901 von Fig. 26 erzeugte Prüfmuster
folge ist. Wenn das Logikgatter G1 in der Schaltung von Fig. 14 in Schritt 401 von Fig. 21
gesetzt wird, ist die Logiksignalwertfolge im Ausgabeknoten N1 des Logikgatters G1 als F in
Verbindung mit der Prüfmusterfolge T9 in der dritten Spalte der Tabelle von Fig. 15 angegeben;
d. h., es ist angegeben, daß die Logiksignalwertfolge durch die Prüfmusterfolge T9 verändert
worden ist. Deshalb wird G1 für T9 in der Fehlerliste registriert; alternativ wird T9 für G1
registriert. Der Fehler, der erfaßbar ist, wenn der Signalwert im Ausgabeknoten des fehlerhaften
Logikgatters R ist (ansteigender Übergang), und der Fehler, der erfaßbar ist, wenn der Signalwert
im Ausgabeknoten F ist (fallender Übergang), können auch als unterschiedliche Fehler registriert
werden. Wenn z. B. das Logikgatter G1 gesetzt ist, werden die zwei oben erwähnten erfaßbaren
Fehler als G1R und G1F in der Fehlerliste registriert. Da bei dem obigen Beispiel der Signalwert im
Ausgabeknoten N1 des Logikgatters den Signalwert F für die Prüfmusterfolge T9 hat, wird T9 für
G1F in der Fehlerliste registriert, oder G1F wird für die Prüfmusterfolge T9 registriert. Wenn die
Logiksignalwertfolge im Ausgabeknoten des gesetzten Logikgatters nicht verändert ist, geht die
Prozedur zu Schritt 404 über. In Schritt 404 wird überprüft, ob noch ein ungeprüftes Logikgatter
übrig ist, und wenn ja, wird das nächste Logikgatter, das fehlerhaft werden kann, in Schritt 405
gesetzt, gefolgt von einer Rückkehr zu Schritt 402. Auf diese Weise werden die Schritte 402,
403, 404 und 405 wiederholt, bis die Logikgatter, die fehlerhaft werden können, alle geprüft
oder berücksichtigt sind, und wenn kein ungeprüftes oder unberücksichtigtes Logikgatter
gefunden wird, endet die Prozedur. Wie oben beschrieben, wird bei der Erzeugung jeder Prüfmu
sterfolge eine Verarbeitung durchgeführt, um zu entscheiden, ob die Prüfmusterfolge und das
gesetzte Logikgatter in der Fehlerliste registriert werden.
Bezogen auf Fig. 22 wird als nächstes eine Beschreibung der Prozedur zum Erzeugen der
Fehlerliste für jede Signalleitung in Schritt 906 von Fig. 26 geliefert. In Schritt 501 wird eine der
Signalleitungen, die in dem zu prüfenden Halbleiter-IC fehlerhaft werden können, initialisiert. Als
nächstes wird in Schritt 502 anhand der gespeicherten Inhalte des Speichers 102M geprüft, ob
die Logiksignalfolge auf der gesetzten Signalleitung, berechnet mit dem Logiksimulator für die in
Schritt 901 von Fig. 26 erzeugte Prüfmusterfolge, verändert worden ist. Wenn die Logiksignal
wertfolge auf der gesetzten Signalleitung verändert worden ist, geht die Prozedur zu Schritt 503
über, wohingegen, wenn die Logiksignalwertfolge nicht verändert worden ist, die Prozedur zu
Schritt 505 übergeht. Als nächstes wird in Schritt 503 geprüft, ob die Logiksignalwertfolge auf
der Ausgabesignalleitung des Logikgatters mit an die gesetzte Signalleitung angeschlossenem
Eingang, berechnet mit dem Logiksimulator für die in Schritt 901 von Fig. 26 erzeugte Prüfmu
sterfolge, verändert worden ist. Wenn die Logiksignalwertfolge auf der Ausgabesignalleitung des
Logikgatters verändert worden ist, wird die gesetzte Signalleitung in der Fehlerliste in Schritt 504
registriert, und die Prozedur geht zu Schritt 505 über. Wenn z. B. das Prüfmuster T1 von Fig. 17
in Schritt 901 von Fig. 26 erzeugt wird und die Signalleitung L3 im Halbleiter-IC von Fig. 16 in
Schritt 501 von Fig. 22 gesetzt wird, haben sich die Logiksignalwertfolgen auf der Signalleitung
L3 und der Ausgabesignalleitung L12 des Logikgatters G5 mit an die Signalleitung L3 ange
schlossenem Eingang verändert, und folglich wird das Prüfmuster T1 für die gesetzte Signallei
tung L3 in der Fehlerliste registriert, oder L3 wird für T1 registriert. Wenn die Logiksignalwert
folge in dem Logikgatter mit an die gesetzte Signalleitung angeschlossenem Eingang durch die zu
dieser Zeit erzeugte Prüfmusterfolge nicht verändert worden ist, geht die Prozedur zu Schritt 505
über. In Schritt 505 wird eine Prüfung durchgeführt, um zu bestimmen, ob es eine weitere
ungeprüfte Signalleitung gibt, die fehlerhaft werden kann. Wenn eine solche Signalleitung
gefunden wird, wird die nächste Signalleitung, die fehlerhaft werden kann, in Schritt 506
gesetzt, gefolgt von einer Rückkehr zu Schritt 502. Auf diese Weise werden die Schritte 502,
503, 504, 505 und 506 wiederholt, bis alle Signalleitungen, die in dem Halbleiter-IC fehlerhaft
werden können, geprüft sind. Wenn keine solche ungeprüfte Signalleitung gefunden wird, endet
die Prozedur. Die oben beschriebene Verarbeitung wird bei jeder Erzeugung des Prüfmusters in
Schritt 901 durchgeführt.
Mit Bezug auf Fig. 23 wird eine Beschreibung eines Beispiels der Prozedur zum Erzeugen einer
Fehlerliste für jeden Signalausbreitungsweg in Schritt 906 von Fig. 26 geliefert. In Schritt 801
wird einer der Signalausbreitungswege, die in dem zu prüfenden Halbleiter-IC fehlerhaft werden
können, anfänglich gesetzt. Als nächstes wird in Schritt 802 geprüft, ob die Logiksignalwertfolge
an jedem Punkt auf dem gesetzten Signalausbreitungsweg, berechnet mit dem Logiksimulator
102 für die in Schritt 901 von Fig. 26 erzeugte Prüfmusterfolge, verändert worden ist. Wenn ja,
geht die Prozedur über zu Schritt 803, dann wird der gesetzte Signalausbreitungsweg in der
Fehlerliste registriert, und die Prozedur geht über zu Schritt 804. Zum Beispiel in dem Fall, wo
das Prüfmuster T9 von Fig. 15 in Schritt 901 von Fig. 26 erzeugt wird und der Signalausbrei
tungsweg <I1, N1, N3, O1< in dem Halbleiter-IC von Fig. 14 in Schritt 801 von Fig. 23
gesetzt wird, ändert sich die Logiksignalwertfolge an jedem Punkt auf dem gesetzten Signalaus
breitungsweg, und folglich wird die Prüfmusterfolge T9 für den gesetzten Signalausbreitungsweg
<I1, N1, N3, O1< in der Fehlerliste registriert, oder <I1, N1, N3, O1< wird für T9 registriert.
Die Signalausbreitungswege, die in der Fehlerliste registriert werden, sind nicht spezifisch auf die
Wege vom Eingabe- zum Ausgabeanschluß des zu prüfenden ICs beschränkt, sondern es können
auch Signalausbreitungswege, die sich nicht vom Eingabeanschluß zum Ausgabeanschluß
erstrecken, wie etwa <I1, N1< im Halbleiter-IC von Fig. 14 und <I1, L1, L6< in Fig. 16
registriert werden. Wenn sich an keinem Punkt auf dem Signalausbreitungsweg die Logiksignal
wertfolge verändert hat, geht die Prozedur über zu Schritt 804. In Schritt 804 wird eine Prüfung
durchgeführt, um festzustellen, ob ein Signalausbreitungsweg, der fehlerhaft werden kann, noch
ungeprüft ist, und wenn ja, wird der nächste Signalausbreitungsweg, der fehlerhaft werden kann,
in Schritt 805 gesetzt, gefolgt von einer Rückkehr zu Schritt 802. Auf diese Weise werden die
Schritte 802, 803, 804 und 805 wiederholt, bis alle Signalausbreitungswege, die in dem zu
prüfenden Halbleiter-IC fehlerhaft werden können, geprüft sind. Wenn kein solcher ungeprüfter
Signalausbreitungsweg gefunden wird, endet die Prozedur. Die oben beschriebene Verarbeitung
wird bei jeder Erzeugung des Prüfmusters in Schritt 901 durchgeführt.
Fig. 27 zeigt in Blockform eine andere Ausgestaltung des Fehlersimulators nach der vorliegen
den Erfindung. Der allgemein mit 600 bezeichnete Fehlersimulator umfaßt Prüfmusterfolgen-
Erzeugungsmittel 601, Fehlereinfügungsmittel 602, einen Schaltungssimulator 603 und Fehlerli
sten-Erzeugungsmittel 604. Das Prüfmusterfolgen-Erzeugungsmittel 601 erzeugt eine Prüfmuster
folge, die aus zwei oder mehr Prüfmustern besteht, zur Eingabe in den zu prüfenden IC besteht.
Das Fehlereinfügungsmittel 602 fügt einen angenommenen Fehler in den zu prüfenden IC ein. Der
Schaltungssimulator 603 wendet die von dem Prüfmusterfolgen-Erzeugungsmittel erzeugte
Prüfmusterfolge auf den zu prüfenden IC mit dem darin von dem Fehlereinfügungsmittel 602
eingefügten angenommenen Fehler an und führt eine Schaltungssimulation durch und berechnet
so den transienten Versorgungsstrom des zu prüfenden ICs. Das Fehlerlisten-Erzeugungsmittel
604 vergleicht den vom Schaltungssimulator 603 berechneten transienten Versorgungsstrom mit
einem transienten Versorgungsstrom einer normalen Schaltung und erzeugt dann durch Entschei
den, ob der Fehler durch den transienten Versorgungsstrom unter Verwendung der Prüfmuster
folge erfaßbar ist, eine Fehlerliste und speichert die Fehlerliste in dem Speicher 604M. Das
Prüfmusterfolgen-Erzeugungsmittel 601, das Fehlereinfügungsmittel 602, der Schaltungssimula
tor 603 und Fehlerlisten-Erzeugungsmittel können als Hardware oder Software ausgebildet sein.
Eine Softwarekonfiguration des Schaltungssimulators ist vorgeschlagen worden. Nach dem
herkömmlichen Schema wird Verbindungsinformation über den Halbleiter-IC für jeden Transistor,
z. B. im Falle der Schaltung aus Fig. 3A Verbindungsinformation darüber, wie jeder Transistor
verbunden ist, in den Schaltungssimulator eingegeben, wodurch der Halbleiter-IC softwaremäßig
konstruiert wird, dann wird eine Modelldatei der Charakteristik jedes Transistors gemäß gesetzten
Bedingungen ausgelesen, und der einem Eingabemuster entsprechende transiente Versorgungs
strom wird durch Simulation berechnet. Ein Offen-Fehler kann einfach durch Einfügen eines
Hochwiderstandselementes an dem Punkt eingefügt werden, an dem der angenommene Fehler
liegen soll, und ein Verzögerungsfehler kann durch einfaches Einfügen eines Verzögerungsele
mentes an dem Punkt, wo der angenommene Fehler liegen soll, eingefügt werden. Der Schal
tungssimulator 603 kann ein Allzweck-Schaltungssimulator, z. B. Star-HSPICE von Avant!
Corporation sein.
Als nächstes wird mit Bezug auf Fig. 28 eine Fehlersimulation eines Halbleiter-ICs durch den in
Fig. 27 abgebildeten Fehlersimulator 600 beschrieben. Fig. 28 ist ein Flußdiagramm, das die
Prozedur einer anderen Ausgestaltung des erfindungsgemäßen Fehlersimulationsverfahrens zeigt.
Zunächst erzeugt das Prüfmusterfolgen-Erzeugungsmittel 601 in Schritt 701 eine Prüfmuster
folge, für die eine Fehlerliste erzeugt werden soll. Als nächstes nimmt in Schritt 702 das
Fehlereinfügungsmittel 602 einen der Fehler an, die in dem zu prüfenden Halbleiter-IC auftreten
können, und fügt den angenommenen Fehler in den IC ein. Dann führt in Schritt 703 der
Schaltungssimulator 603 Schaltungssimulationen des Betriebs der fehlerhaften Schaltung mit
dem in Schritt 702 darin eingefügten Fehler und einer normalen, fehlerfreien Schaltung für den
Fall des Anwendens der in Schritt 701 erzeugten Prüfmusterfolge darauf durch und berechnet die
transienten Versorgungsströme beider Schaltungen.
In Schritt 704 vergleicht das Fehlerlisten-Erzeugungsmittel 604 die vom Schaltungssimulator 603
berechneten transienten Versorgungsströme der fehlerhaften und der normalen Schaltung und
prüft dadurch, ob eine Anomalität im transienten Versorgungsstrom der fehlerhaften Schaltung
auftritt. Wenn eine Anomalität gefunden wird, werden in Schritt 705 der Fehler und die entspre
chende Prüfmusterfolge in der Fehlerliste registriert, d. h. im Speicher 604M gespeichert, und die
Prozedur geht über zu Schritt 706. Wenn in Schritt 704 keine Anomalität gefunden wird, geht die
Prozedur zu Schritt 706 über. Schließlich wird in Schritt 706 geprüft, ob noch ein in dem zu
prüfenden IC möglicher Fehler unberücksichtigt ist. Wenn solche Fehler gefunden werden,
werden die Schritte 702, 703, 704 und 705 wiederholt, bis alle Fehler, die in dem zu prüfenden
IC auftreten können, behandelt sind. Wenn solche Fehler in Schritt 706 nicht gefunden werden,
wird in Schritt 707 überprüft, ob noch Prüfmusterfolgen unerzeugt sind. Wenn ja, kehrt die
Prozedur zu Schritt 701 zurück, und die gleiche Verarbeitung wie oben erwähnt wird von neuem
durchgeführt. Wenn keine unerzeugte Prüfmusterfolge gefunden wird, endet die Prozedur. Der
Vergleich des transienten Versorgungsstroms der fehlerhaften Schaltung mit dem transienten
Versorgungsstrom der normalen Schaltung in Schritt 704 kann sowohl an ihren Wellenformen als
auch ihren Momentanwerten, Pulsbreiten oder Integralen nach einer vorgegebenen verstrichenen
Zeit durchgeführt werden, wie bereits angesprochen.
Das Fehlersimulationsverfahren und der Fehlersimulator gemäß der vorliegenden Erfindung sind
nicht speziell auf Verzögerungs- und Offen-Fehler beschränkt, sondern sind auch auf einen
Logikfehler (Stack-Fehler), Kurzschlußfehler und einen Parameter-Anomalitätsfehler eines MOS-
Transistors durch geeignete Änderung der Fehlererfassungsbedingung durch die Transientversor
gungsstromprüfung oder ein Fehlermodell anpaßbar. Ferner ist die vorliegende Erfindung nicht nur
auf Fälle von MOS-Transistor-ICs, sondern auf alle Arten von Halbleiter-ICs anwendbar, bei denen
transiente Versorgungsströme durch Fehler anomal werden. Oben wurde zwar eine aus zwei
Prüfmustern aufgebaute Prüfmusterfolge beschrieben, doch können drei oder mehr Prüfmuster
verwendet werden.
Nach dem Fehlersimulationsverfahren nach der vorliegenden Erfindung ist es möglich, unter
Verwendung der Transientversorgungsstromprüfung mit guter Beobachtbarkeit und mit Schaltin
formation über Logikgatter eine Liste von durch die Transientversorgungsstromprüfung erfaßba
ren Fehlern für Verzögerungsfehler oder für zu einem Verzögerungsfehler führende Offen-Fehler
zu erzeugen, für die in der Vergangenheit keine Fehlerliste erzeugt werden konnte. Daher
verbessert das Verfahren nach der vorliegenden Erfindung signifikant die Effektivität der Prüfung
auf Verzögerungsfehler und Offen-Fehler.
Zahlreiche Veränderungen und Abwandlungen können durchgeführt werden, ohne den Rahmen
der neuartigen Konzepte der vorliegenden Erfindung zu verlassen.
Claims (12)
1. Fehlersimulationsverfahren für einen Halbleiter-IC, mit den Schritten:
Erzeugen einer aus zwei oder mehr Prüfmustern bestehenden Prüfmusterfolge zur Eingabe in den Halbleiter-IC;
Durchführen einer Logiksimulation der Operation des Halbleiter-ICs im Falle des Anlegens eines jeden der zwei oder mehr Prüfmuster der Prüfmusterfolge an ihn und Berechnen einer Logiksignalwertfolge auf jeder Signalleitung an dem Halbleiter-IC; und
Erzeugen einer Liste von Fehlern, die durch eine Transientversorgungsstromprüfung unter Verwendung der Prüfmusterfolge erfaßbar sind, durch Verwendung der durch die Logiksimulation berechneten Logiksignalwertfolge auf jeder Signalleitung.
Erzeugen einer aus zwei oder mehr Prüfmustern bestehenden Prüfmusterfolge zur Eingabe in den Halbleiter-IC;
Durchführen einer Logiksimulation der Operation des Halbleiter-ICs im Falle des Anlegens eines jeden der zwei oder mehr Prüfmuster der Prüfmusterfolge an ihn und Berechnen einer Logiksignalwertfolge auf jeder Signalleitung an dem Halbleiter-IC; und
Erzeugen einer Liste von Fehlern, die durch eine Transientversorgungsstromprüfung unter Verwendung der Prüfmusterfolge erfaßbar sind, durch Verwendung der durch die Logiksimulation berechneten Logiksignalwertfolge auf jeder Signalleitung.
2. Verfahren nach Anspruch 1, bei dem der Fehlerlisten-Erzeugungsschritt ein Schritt
des Erzeugens der Fehlerliste für jedes Logikgatter in dem Halbleiter-IC ist.
3. Verfahren nach Anspruch 2, bei dem der Fehlerlisten-Erzeugungsschritt ein Schritt
des Prüfens für jedes der Logikgatter ist, ob eine Logiksignalwertfolge in einer Ausgabesignal
leitung des Logikgatters verändert worden ist, und wenn ja, Erzeugen der Fehlerliste, in der ein
Identifikator einer Prüfmusterfolge, die die Logiksignalwertfolge verändert hat, und das Logik
gatter in Entsprechung zueinander registriert werden.
4. Verfahren nach Anspruch 1, bei dem der Fehlerlisten-Erzeugungsschritt ein Schritt
des Erzeugens der Fehlerliste für jede der Signalleitungen ist.
5. Verfahren nach Anspruch 4, bei dem der Fehlerlisten-Erzeugungsschritt folgende
Schritte umfaßt:
Überprüfen für jede Signalleitung, ob die Logiksignalwertfolge auf der Signalleitung verändert worden ist;
wenn ja, Überprüfen, ob eine Logiksignalwertfolge auf einer Ausgabesignalleitung eines Logikgatters, dessen Eingang an die Signalleitung angeschlossen ist, in der die Logiksignalwert folge verändert worden ist, durch eine Prüfmusterfolge verändert wird, die die Logiksignalwert folge auf der Signalleitung verändert hat, und wenn ja, Erzeugen der Fehlerliste, in der die Signalleitung und ein Identifikator der Prüfmusterfolge, die die Logiksignalwertfolge auf der Signalleitung verändert hat, in Entsprechung zueinander registriert werden.
Überprüfen für jede Signalleitung, ob die Logiksignalwertfolge auf der Signalleitung verändert worden ist;
wenn ja, Überprüfen, ob eine Logiksignalwertfolge auf einer Ausgabesignalleitung eines Logikgatters, dessen Eingang an die Signalleitung angeschlossen ist, in der die Logiksignalwert folge verändert worden ist, durch eine Prüfmusterfolge verändert wird, die die Logiksignalwert folge auf der Signalleitung verändert hat, und wenn ja, Erzeugen der Fehlerliste, in der die Signalleitung und ein Identifikator der Prüfmusterfolge, die die Logiksignalwertfolge auf der Signalleitung verändert hat, in Entsprechung zueinander registriert werden.
6. Verfahren nach Anspruch 1, bei dem der Fehlerlisten-Erzeugungsschritt ein Schritt
des Erzeugens der Fehlerliste für jeden Signalausbreitungsweg in dem Halbleiter-IC ist.
7. Verfahren nach Anspruch 6, bei dem der Fehlerlisten-Erzeugungsschritt ein Schritt
des Überprüfens für jeden Signalausbreitungsweg ist, ob Logiksignalwertfolgen an jeweiligen
Punkten des jeweiligen Signalausbreitungsweges alle verändert worden sind, und wenn ja,
Erzeugen der Fehlerliste, in der ein Identifikator einer Prüfmusterfolge, die die Logiksignalwert
folgen verändert hat, und der Signalausbreitungsweg in Entsprechung zueinander registriert
werden.
8. Verfahren nach Anspruch 1, ferner mit dem Schritt des Berechnens der Logiksignal
wertfolge für jede Prüfmusterfolge vor dem Fehlerlisten-Erzeugungsschritt.
9. Verfahren nach Anspruch 1, ferner mit dem Schritt des Berechnens der Logiksignal
wertfolge und des Erzeugens der Fehlerliste bei Erzeugung jeder Prüfmusterfolge.
10. Fehlersimulator für einen Halbleiter-IC, mit:
einem Prüfmuster-Erzeugungsmittel zum Erzeugen einer Prüfmusterfolge, die aus zwei oder mehr Prüfmustern aufgebaut ist, zur Eingabe in den Halbleiter-IC;
einem Logiksimulator, der mit der Prüfmusterfolge versorgt wird, zum Durchführen einer Logiksimulation der Operation des Halbleiter-ICs für den Fall des Anlegens jedes der zwei oder mehr Prüfmuster an ihn und zum Berechnen und Ausgeben einer Logiksignalwertfolge auf jeder Signalleitung in dem Halbleiter-IC;
einem Speicher zum Speichern der auf jeder Signalleitung für jede Prüfmusterfolge erzeugten berechneten Logiksignalwertfolge; und
einem Fehlerlisten-Erzeugungsmittel, das mit der in dem Speicher gespeicherten Logik signalwertfolge jeder Signalleitung versorgt wird, zum Erzeugen einer Liste von durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbaren Fehlern.
einem Prüfmuster-Erzeugungsmittel zum Erzeugen einer Prüfmusterfolge, die aus zwei oder mehr Prüfmustern aufgebaut ist, zur Eingabe in den Halbleiter-IC;
einem Logiksimulator, der mit der Prüfmusterfolge versorgt wird, zum Durchführen einer Logiksimulation der Operation des Halbleiter-ICs für den Fall des Anlegens jedes der zwei oder mehr Prüfmuster an ihn und zum Berechnen und Ausgeben einer Logiksignalwertfolge auf jeder Signalleitung in dem Halbleiter-IC;
einem Speicher zum Speichern der auf jeder Signalleitung für jede Prüfmusterfolge erzeugten berechneten Logiksignalwertfolge; und
einem Fehlerlisten-Erzeugungsmittel, das mit der in dem Speicher gespeicherten Logik signalwertfolge jeder Signalleitung versorgt wird, zum Erzeugen einer Liste von durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbaren Fehlern.
11. Fehlersimulationsverfahren für einen Halbleiter-IC, mit den Schritten:
Einfügen eines angenommenen Fehlers in den Halbleiter-IC;
Erzeugen einer aus zwei oder mehr Prüfmustern aufgebauten Prüfmusterfolge zur Eingabe in den Halbleiter-IC;
Anlegen der Prüfmusterfolge an den Halbleiter-IC mit dem darin eingefügten angenommenen Fehler und Durchführen einer Schaltungssimulation der Operation des Halbleiter- ICs, um so einen transienten Versorgungsstrom des Halbleiter-ICs zu berechnen;
Vergleichen des berechneten transienten Versorgungsstroms mit dem transienten Versorgungsstrom einer normalen Schaltung und Entscheiden, ob der angenommene Fehler durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbar ist; und
Erzeugen einer Fehlerliste, in der der erfaßbare Fehler und ein Identifikator der Prüfmusterfolge registriert sind.
Einfügen eines angenommenen Fehlers in den Halbleiter-IC;
Erzeugen einer aus zwei oder mehr Prüfmustern aufgebauten Prüfmusterfolge zur Eingabe in den Halbleiter-IC;
Anlegen der Prüfmusterfolge an den Halbleiter-IC mit dem darin eingefügten angenommenen Fehler und Durchführen einer Schaltungssimulation der Operation des Halbleiter- ICs, um so einen transienten Versorgungsstrom des Halbleiter-ICs zu berechnen;
Vergleichen des berechneten transienten Versorgungsstroms mit dem transienten Versorgungsstrom einer normalen Schaltung und Entscheiden, ob der angenommene Fehler durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbar ist; und
Erzeugen einer Fehlerliste, in der der erfaßbare Fehler und ein Identifikator der Prüfmusterfolge registriert sind.
12. Fehlersimulator für einen Halbleiter-IC, mit:
einem Prüfmuster-Erzeugungsmittel zum Erzeugen wenigstens einer aus zwei oder mehr Prüfmustern aufgebauten Prüfmusterfolge zur Eingabe in den Halbleiter-IC;
einem Fehlereinfügungsmittel zum Einfügen eines angenommenen Fehlers in den Halbleiter-IC;
einem Schaltungssimulator zum Anwenden des Prüfmusters auf den Halbleiter-IC mit dem darin eingefügten angenommenen Fehler und Durchführen einer Schaltungssimulation der Operation des Halbleiter-ICs, um so einen transienten Versorgungsstrom des Halbleiter-ICs zu berechnen; und
einem Fehlerlisten-Erzeugungsmittel zum Vergleichen des berechneten transienten Versorgungsstroms mit dem transienten Versorgungsstrom einer normalen Schaltung, um zu entscheiden, ob der angenommene Fehler durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbar ist, und zum Registrieren des erfaßbaren Fehlers und eines Identifikators der Prüfmusterfolge in einer Fehlerliste.
einem Prüfmuster-Erzeugungsmittel zum Erzeugen wenigstens einer aus zwei oder mehr Prüfmustern aufgebauten Prüfmusterfolge zur Eingabe in den Halbleiter-IC;
einem Fehlereinfügungsmittel zum Einfügen eines angenommenen Fehlers in den Halbleiter-IC;
einem Schaltungssimulator zum Anwenden des Prüfmusters auf den Halbleiter-IC mit dem darin eingefügten angenommenen Fehler und Durchführen einer Schaltungssimulation der Operation des Halbleiter-ICs, um so einen transienten Versorgungsstrom des Halbleiter-ICs zu berechnen; und
einem Fehlerlisten-Erzeugungsmittel zum Vergleichen des berechneten transienten Versorgungsstroms mit dem transienten Versorgungsstrom einer normalen Schaltung, um zu entscheiden, ob der angenommene Fehler durch eine Transientversorgungsstrom-Prüfung unter Verwendung der Prüfmusterfolge erfaßbar ist, und zum Registrieren des erfaßbaren Fehlers und eines Identifikators der Prüfmusterfolge in einer Fehlerliste.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000014962A JP2001208803A (ja) | 2000-01-24 | 2000-01-24 | 半導体集積回路の故障シミュレーション方法および故障シミュレータ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE10053758A1 true DE10053758A1 (de) | 2001-08-09 |
Family
ID=18542334
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE10053758A Ceased DE10053758A1 (de) | 2000-01-24 | 2000-10-30 | Verfahren und Vorrichtung zur Fehlersimulation bei einer integrierten Halbleiterschaltung |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US6975978B1 (de) |
| JP (1) | JP2001208803A (de) |
| DE (1) | DE10053758A1 (de) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7225377B2 (en) | 2000-06-08 | 2007-05-29 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
Families Citing this family (33)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040078183A1 (en) * | 2002-10-21 | 2004-04-22 | Victor Drabkin | System and method of system response testing and modeling |
| US7191113B2 (en) * | 2002-12-17 | 2007-03-13 | International Business Machines Corporation | Method and system for short-circuit current modeling in CMOS integrated circuits |
| US7739638B2 (en) * | 2003-03-06 | 2010-06-15 | Fujitsu Limited | Circuit analyzing device, circuit analyzing method, program, and computer readable information recording medium considering influence of signal input to peripheral circuit which does not have logical influence |
| US7400167B2 (en) * | 2005-08-16 | 2008-07-15 | Altera Corporation | Apparatus and methods for optimizing the performance of programmable logic devices |
| TW200622275A (en) * | 2004-09-06 | 2006-07-01 | Mentor Graphics Corp | Integrated circuit yield and quality analysis methods and systems |
| GB0502829D0 (en) * | 2005-02-11 | 2005-03-16 | Ibm | Connection error avoidance in apparatus connected to a power supply |
| US7266797B2 (en) * | 2005-05-19 | 2007-09-04 | International Business Machines Corporation | Automated and electrically robust method for placing power gating switches in voltage islands |
| US7350170B2 (en) * | 2005-06-01 | 2008-03-25 | International Business Machines Corporation | System and method for memory element characterization |
| US7362106B2 (en) * | 2005-06-29 | 2008-04-22 | Agilent Technologies, Inc. | Methods and apparatus for non-contact testing and diagnosing of open connections on non-probed nodes |
| US7327148B2 (en) * | 2005-06-29 | 2008-02-05 | Agilent Technologies, Inc. | Method for using internal semiconductor junctions to aid in non-contact testing |
| JP2007107905A (ja) * | 2005-10-11 | 2007-04-26 | Mitsubishi Electric Corp | 基板給電評価用論理回路および基板給電評価方法 |
| US7352170B2 (en) * | 2006-06-13 | 2008-04-01 | International Business Machines Corporation | Exhaustive diagnosis of bridging defects in an integrated circuit including multiple nodes using test vectors and IDDQ measurements |
| US7295031B1 (en) * | 2006-07-12 | 2007-11-13 | Agilent Technologies, Inc. | Method for non-contact testing of marginal integrated circuit connections |
| US20080126293A1 (en) * | 2006-09-21 | 2008-05-29 | International Business Machines Corporation | Method and apparatus for dynamically creating scenario based test designs from hierarchical use cases |
| JP5141988B2 (ja) * | 2007-04-23 | 2013-02-13 | 株式会社Lptex | 半導体集積回路の2パターンテストにおける誤テスト回避型テスト入力生成方法 |
| US20080263400A1 (en) * | 2007-04-23 | 2008-10-23 | Microsoft Corporation | Fault insertion system |
| US8706467B2 (en) * | 2008-04-02 | 2014-04-22 | Synopsys, Inc. | Compact circuit-simulation output |
| US7984353B2 (en) * | 2008-08-29 | 2011-07-19 | Advantest Corporation | Test apparatus, test vector generate unit, test method, program, and recording medium |
| JP5161035B2 (ja) * | 2008-10-29 | 2013-03-13 | ルネサスエレクトロニクス株式会社 | 半導体集積回路の設計装置、設計方法およびプログラム |
| US8185336B2 (en) * | 2008-10-30 | 2012-05-22 | Advantest Corporation | Test apparatus, test method, program, and recording medium reducing the influence of variations |
| US8526252B2 (en) * | 2009-03-17 | 2013-09-03 | Seagate Technology Llc | Quiescent testing of non-volatile memory array |
| US9057764B2 (en) * | 2011-10-27 | 2015-06-16 | International Business Machines Corporation | Detection of unchecked signals in circuit design verification |
| US8776006B1 (en) * | 2013-02-27 | 2014-07-08 | International Business Machines Corporation | Delay defect testing of power drop effects in integrated circuits |
| JP6365467B2 (ja) * | 2015-08-28 | 2018-08-01 | 株式会社デンソー | 断線検出装置 |
| CN105606300B (zh) * | 2015-12-21 | 2018-01-26 | 合肥工业大学 | 一种电池供电式应变多维力传感器故障诊断系统 |
| KR102592921B1 (ko) * | 2015-12-31 | 2023-10-23 | 삼성전자주식회사 | 패턴 결함 검사 방법 |
| CN106646174B (zh) * | 2016-09-30 | 2018-03-16 | 浙江大学 | 一种应用于晶体管的高速三维电学特性测试系统 |
| CN106596035B (zh) * | 2016-12-07 | 2018-10-09 | 中国航天空气动力技术研究院 | 一种用于风洞应变式天平健康状态监控的装置 |
| CN110597694A (zh) * | 2019-08-09 | 2019-12-20 | 深圳木成林科技有限公司 | 一种监控前端页面的方法及终端 |
| US10969429B1 (en) * | 2019-08-13 | 2021-04-06 | Cadence Design Systems, Inc. | System and method for debugging in concurrent fault simulation |
| US11042679B1 (en) * | 2020-08-31 | 2021-06-22 | Siemens Industry Software Inc. | Diagnosis resolution prediction |
| US12007431B2 (en) * | 2021-08-27 | 2024-06-11 | Taiwan Semiconductor Manufacturing Company Ltd. | Test circuit and method for operating the same |
| CN116594830B (zh) * | 2023-03-17 | 2024-03-01 | 芯华章科技(北京)有限公司 | 硬件仿真工具、调试方法和存储介质 |
Family Cites Families (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0232275A (ja) * | 1988-07-22 | 1990-02-02 | Hitachi Ltd | 論理回路装置の遅延テストパターン作成方法 |
| JPH02276980A (ja) * | 1989-04-19 | 1990-11-13 | Hitachi Ltd | 論理回路のテストパターン生成方法及びその装置 |
| US5321354A (en) * | 1990-07-23 | 1994-06-14 | Seiko Epson Corporation | Method for inspecting semiconductor devices |
| US5483170A (en) * | 1993-08-24 | 1996-01-09 | New Mexico State University Technology Transfer Corp. | Integrated circuit fault testing implementing voltage supply rail pulsing and corresponding instantaneous current response analysis |
| JPH07159496A (ja) * | 1993-10-12 | 1995-06-23 | At & T Global Inf Solutions Internatl Inc | 集積回路の検査のための装置及びその方法 |
| US5552744A (en) * | 1994-08-11 | 1996-09-03 | Ltx Corporation | High speed IDDQ monitor circuit |
| JP2715956B2 (ja) * | 1995-01-20 | 1998-02-18 | 日本電気株式会社 | Iddqを用いたCMOS論理回路の故障箇所の絞り込み方法 |
| US5953519A (en) * | 1995-06-12 | 1999-09-14 | Fura; David A. | Method and system for generating electronic hardware simulation models |
| JP2783243B2 (ja) * | 1996-02-06 | 1998-08-06 | 日本電気株式会社 | Cmos集積回路の故障検出方法及び装置 |
| US6175244B1 (en) * | 1997-04-25 | 2001-01-16 | Carnegie Mellon University | Current signatures for IDDQ testing |
| JP2982741B2 (ja) | 1997-05-13 | 1999-11-29 | 日本電気株式会社 | 集積回路の故障診断装置及びその記録媒体 |
| US6182258B1 (en) * | 1997-06-03 | 2001-01-30 | Verisity Ltd. | Method and apparatus for test generation during circuit design |
| US6031386A (en) * | 1997-10-31 | 2000-02-29 | Sandia Corporation | Apparatus and method for defect testing of integrated circuits |
| JPH11265980A (ja) * | 1998-03-17 | 1999-09-28 | Matsushita Electric Ind Co Ltd | 集積回路の故障検証方法 |
| US6140832A (en) * | 1998-06-05 | 2000-10-31 | Raytheon Company | Method of utilizing IDDQ tests to screen out defective parts |
| US6163763A (en) * | 1998-10-06 | 2000-12-19 | Cadence Design Systems, Inc. | Method and apparatus for recording and viewing error data generated from a computer simulation of an integrated circuit |
| JP2001091568A (ja) * | 1999-09-17 | 2001-04-06 | Advantest Corp | 半導体集積回路の試験装置及び試験方法 |
| US6513137B1 (en) * | 1999-10-18 | 2003-01-28 | Cardiac Pacemakers, Inc. | Test method and apparatus using energy consumption ratio |
| JP4174167B2 (ja) * | 2000-04-04 | 2008-10-29 | 株式会社アドバンテスト | 半導体集積回路の故障解析方法および故障解析装置 |
| JP4336029B2 (ja) * | 2000-06-19 | 2009-09-30 | 株式会社アドバンテスト | 半導体集積回路の故障シミュレーション方法および故障シミュレータ |
-
2000
- 2000-01-24 JP JP2000014962A patent/JP2001208803A/ja active Pending
- 2000-10-27 US US09/699,077 patent/US6975978B1/en not_active Expired - Fee Related
- 2000-10-30 DE DE10053758A patent/DE10053758A1/de not_active Ceased
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7225377B2 (en) | 2000-06-08 | 2007-05-29 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
| US7225378B2 (en) | 2000-06-08 | 2007-05-29 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
| US7254764B2 (en) | 2000-06-08 | 2007-08-07 | Advantest Corporation | Generating test patterns used in testing semiconductor integrated circuit |
Also Published As
| Publication number | Publication date |
|---|---|
| US6975978B1 (en) | 2005-12-13 |
| JP2001208803A (ja) | 2001-08-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE10053758A1 (de) | Verfahren und Vorrichtung zur Fehlersimulation bei einer integrierten Halbleiterschaltung | |
| DE10191490B4 (de) | Verfahren und Vorrichtung zur Defektanalyse von integrierten Halbleiterschaltungen | |
| DE10129329A1 (de) | Fehlersimulationsverfahren und Fehlersimulator für einen Halbleiter-IC | |
| DE3689228T2 (de) | Verfahren zur Modellierung und zur Fehlersimulation von komplementären Metalloxidhalbleiterschaltungen. | |
| DE10127337A1 (de) | Verfahren und Vorrichtung zum Erzeugen von beim Testen von Halbleiter-ICs verwendeten Testmustern | |
| DE3825260C2 (de) | Verfahren zur fehlerdiagnose an elektrischen schaltungen und anordnung zum durchfuehren des verfahrens | |
| DE68925813T2 (de) | Verfahren und vorrichtung zum nachweis von fehlern in halbleiterschaltungen | |
| DE10045671B4 (de) | Testvorrichtung und Testverfahren für eine integrierte Halbleiterschaltung | |
| DE4110551C1 (de) | ||
| DE4417573A1 (de) | System und Verfahren zum Erfassen von Kurzschlüssen, Leerläufen und verbundenen Anschlußstiften auf einer gedruckten Leiterplatte unter der Verwendung eines automatischen Testgeräts | |
| EP0685087B1 (de) | Selbsttestverfahren für nicht-reguläre cmos-schaltstrukturen mit hoher defekterfassung | |
| DE3702408C2 (de) | ||
| DE69017169T2 (de) | Testen integrierter Schaltungen unter Verwendung von Taktgeberstössen. | |
| DE3889140T2 (de) | On-chip, On-line-Wechselstrom und Gleichstromfehlererkennungssystem für Taktbaum. | |
| DE2615787C2 (de) | Schaltungsanordnung zur Bestimmung der Signalverzögerungszeit monolithisch integrierter digitaler Halbleiterschaltungen | |
| DE69406942T2 (de) | Abtastprüfungsschaltung mit schnellem übertragungsgateschalter | |
| EP1217630A2 (de) | Verfahren zur Prüfung von einer integrierten Schaltung | |
| DE19601862C2 (de) | Vorrichtung und Verfahren zur Entdeckung von fehlerhaften Logikteilschaltungen mittels eines anomalen Ruheversorgungsstroms | |
| DE3686989T2 (de) | Verminderung des rauschens waehrend des pruefens von integrierten schaltungschips. | |
| DE19903606A1 (de) | Halbleiteranordnung und Verfahren zum Entwurf der Halbleiteranordnung | |
| DE10341836B4 (de) | Testvorrichtung zum Testen von elektrischen Schaltungen sowie Verfahren zum parallelen Testen von elektrischen Schaltungen | |
| DE69419589T2 (de) | Verfahren zum prüfgerechten Entwurf von CMOS und BICMOS IC's | |
| DE3486064T2 (de) | Logische schaltung mit eingebauter selbsttestfunktion. | |
| DE19528733C1 (de) | Integrierte Schaltung | |
| EP0733910B1 (de) | Platine mit eingebauter Kontaktfühlerprüfung für integrierte Schaltungen |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| 8131 | Rejection |