-
Die
vorliegende Erfindung betrifft eine Testvorrichtung und ein Testverfahren
für einen
RAM (Random Access Memory: Speicher mit wahlfreiem Zugriff) innerhalb
einer LSI-(Large Scale Integrated: großintegrierten)-Schaltung wie
etwa einer CPU (Central Processing Unit: Zentrale Verarbeitungseinheit)
oder eines DSP (Digital Signal Processor: Digitaler Signalprozessor).
Im Besonderen betrifft die vorliegende Erfindung eine Schaltung
und ein Verfahren zum Erfassen der FBM-(Fault Bit Map: Fehler-Bitmap)-Informationen,
die die physikalischen Ortsinformationen (Adresse oder Bit) eines
Fehlers bei einer Fehleranalyse angeben.
-
In
einer herkömmlichen
LSI, wie beispielsweise einer CPU oder einem Controller, die als
Kernvorrichtung eines Informationsprozessors oder eines Computersystems
verwendet wird, kann ein primärer Cachespeicher
als RAM aufgeführt
sein, der in der relevanten CPU enthalten ist. Ein sekundärer Cachespeicher,
wie etwa ein RAM mit großer
Kapazität,
ist mit einer externen SRAM-Vorrichtung, wie z. B. einer CPU, auf
Grund von Einschränkungen
bei der Halbleitertechnik realisiert worden. Später ist einhergehend mit dem
Fortschritt der ultrafeinen Mikrotechnik bei der Halbleitervorrichtung
und der Verbesserung der erforderlichen Leistung bei der CPU auch
der primäre
Cachespeicher sowie der sekundäre
Cachespeicher realisiert worden. Wenn jedoch der Bereich in dem
RAM, den der sekundäre
Cachespeicher allmählich
einnimmt, einen größeren Teil
der Chipfläche der
CPU darstellt, ist die Reduzierung des Produktionsaufkommens auf
Grund eines Ausfalls oder eines Fehlers, der durch Staub bei den
Produktionsprozessen verursacht wird, zu einem ernsten Problem geworden.
-
Einhergehend
mit dem Fortschritt auf dem Gebiet der ultrafeinen Mikrotechnik
der Halbleitervorrichtung ist daher ein neues Problem aufgetreten. Und
zwar ist der Einfluss von Schwankungen bei den Herstellungsprozessen
auf die physikalischen Charakteristiken des Halbleiters größer geworden,
so dass die Konstruktionsvorgaben überschritten werden und dadurch
Fehler bei dem Halbleiterherstellungsprozess, die aus einer unzureichenden
Toleranz der relevanten physikalischen Charakteristiken resultieren,
leichter als in der Vergangenheit herbeigeführt werden. Darüber hinaus
hat zusammen mit dem oben erläuterten
relevanten Problem die Qualität
des individuellen RAM einen großen
Einfluss auf die Gesamtqualität
der LSI und ihr Produktionsaufkommen.
-
Daher
ist es erforderlich, die Schaltungen in dem RAM durch das Ausführen einer
Fehleranalyse zu verbessern. Solch eine Fehleranalyse könnte durch
Erfassen der Detailinformationen des relevanten Fehlers ausgeführt werden,
während
ein Fehler, der durch unzureichende Toleranz der physikalischen
Charakteristik des RAM verursacht wird, reproduziert wird.
-
1 zeigt
ein schematisches Diagramm einer gewöhnlichen LSI. Innerhalb der
LSI 101 realisiert eine Arithmetik- und Logikschaltung 141 die
inhärente
Funktion der relevanten LSI und der RAMs 121, 131 zum
Halten der Daten, die durch die relevante Arithmetik- und Logikschaltung 141 verwendet werden.
Die Arithmetik- und Logikschaltung 141 enthält auch
Anschlüsse
(IN, OUT), die als Schnittstelle mit externen Schaltungen der LSI
dienen. Des Weiteren werden die Lese- und Schreiboperationen von Daten zwischen
der relevanten Arithmetik- und Logikschaltung 141 und RAMs 121, 131 ausgeführt. Unter
den Schaltungen, die in der LSI enthalten sind, enthält der RAM
viele Elemente, wie etwa Transistoren, in hoher Dichte. Deshalb
ist das Testen von solch einem RAM sehr schwierig.
-
Daher
sind in den letzten Jahren viele Verbesserungen vorgenommen worden,
um ein leichteres Testen des RAM zu gewährleisten. Eine solche Verbesserung
erfolgt durch das Montieren einer RAM-BIST-(Built-In Self Test)-Schaltung
als Selbstdiagnosemechanismus für
den RAM in die LSI. Die relevante RAM-BIST-Schaltung wird aus einem RAM-BIST-Mustererzeugungsblock 111 und
Fehlerunterscheidungsschaltungen 122, 132 gebildet.
In 1 sind der RAM-BIST-Mustererzeugungsblock 111 und
Fehlerunterscheidungsschaltungen 122, 132 Objekte,
für die
die Schaltung der vorliegenden Erfindung montiert ist, während die
RAMs 121, 131 Objekte sind, bei denen die Leichtigkeit
einer Fehleranalyse mit der vorliegenden Erfindung verbessert werden kann.
-
2 zeigt
ein Beispiel für
eine Struktur einer RAM-BIST-Schaltung
der Hintergrundtechnik. Die RAM-BIST-Schaltung in dieser Ausführungsform ist
aus einem RAM-BIST-Mustererzeugungsblock 201 gebildet.
Die RAM-BIST-Schaltung enthält
auch eine Testmustererzeugungsschaltung 214 als periphere
Schaltung des Testobjekt-RAM 221, eine Erwartungswertvergleichsschaltung 231,
die eine Fehlerdetektionsschaltung bildet, und ein Fehlerhalte-FF (Flipflop) 241.
-
Die
Testmustererzeugungsschaltung 214, die in den RAM-BIST-Mustererzeugungsblock 201 eingebaut
ist, stellt den Instruktionscode oder das Modussignal ein, um der
Testmustererzeugungsschaltung 214 mit einer Scan-FF-(Flipflop)-Gruppe 211 eingegeben
zu werden, die mit einer Scankette verbunden ist, die von Scan-In
eingegeben und an Scan-Out ausgegeben wird. Die Testmustererzeugungsschaltung 214 stellt
auch den Anfangswert eines Zählers
innerhalb der Testmustererzeugungsschaltung 214 mit einer
Scan-FF-Gruppe 212 innerhalb der Testmustererzeugungsschaltung 214 ein. Der
RAM-BIST-Mustererzeugungsblock 201 erzeugt das programmierbare
Signal für
einen Testobjekt-RAM 221 und liefert das Signal an eine
Erwartungswertvergleichsschaltung 231 und ein Fehlerhalte-FF 241,
die eine Fehlerunterscheidungsschaltung bilden.
-
Das
Schreibfreigabe-(WE)-Signal zum Unterscheiden der Schreib- und Leseoperationen,
die Schreibdaten und eine Lese- oder Schreibobjektadresse (Addr)
werden an den Testobjekt-RAM 221 verteilt. Erwartungswertdaten
zum Vergleich mit den Lesedaten von dem Testobjekt-RAM 231 und
ein Ladefreigabesignal mit negativer Logik(-LE) zum Bestimmen von
Unterscheidung oder Nichtunterscheidung eines Fehlers werden an
eine Erwartungswertvergleichsschaltung 221 verteilt, die
die Fehlerunterscheidungsschaltung bildet. Während der Schreiboperation
sind die relevanten Erwartungswertdaten der "ignorierte" Wert, während bei der Leseoperation die
Schreibdaten der "ignorierte" Wert sind. Deshalb können das
Erwartungswertdatensignal und das Datensignal während der Schreiboperation
durch die Steuerung mit dem Schreibfreigabe-(WE)-Signal gemeinsam verwendet werden.
-
Das
Fehlerhalte-FF 241, das die Fehlerunterscheidungsschaltung
bildet, enthält
eine Schaltung zum Vergleichen der Lesedaten des Testobjekt-RAM 221 mit
den Erwartungswertdaten. Das Fehlerhalte-FF 241 enthält auch
ein FF zum Aufzeichnen des relevanten Vergleichsresultats (Fehlerinformationen).
Im Allgemeinen ist eine dieser Schaltungen für jedes Bit der RAM-Ausgabe
vorgesehen. Die Erwartungswertdaten, die aus der Ausgabe des Testobjekt-RAM
zu lesen sind, und das Ladefreigabesignal mit negativer Logik(-LE)
zum Bestimmen der Fehlerunterscheidung werden von dem RAM-BIST-Mustererzeugungsblock 201 empfangen. Die
Fehlerunterscheidung sollte während
der Schreiboperation des relevanten Testobjekt-RAM nicht ausgeführt werden,
da die relevante RAM-Ausgabe der "ignorierte" Wert oder ein feststehender Wert ist.
Daher wird während
der Schreiboperation des relevanten Testobjekt-RAM das Ladefreigabesignal
mit negativer Logik(-LE), bei dem das Ausführen der Fehlerunterscheidung
verhindert wird, durch die Testmustererzeugungsschaltung 214 erzeugt.
-
Darüber hinaus
erzeugt der RAM-BIST-Mustererzeugungsblock bei dem Test zur Massenproduktion
das Testmustersignal für
jeden Taktzyklus und führt
die Fehlerunterscheidung viele Male aus, während die Adresse des RAM bei
dem einzelnen Test verändert
wird. Falls bei einer Vielzahl von Fehlerunterscheidungen auch nur
einmal ein Fehler detektiert wird, wird der Fehler bei den relevanten
Testobjektbits unterschieden. Deshalb kann ein Protokoll von in der
Vergangenheit detektierten Fehlern auch dann gehalten werden, wenn
eine Rückführungsschleifenschaltung
in der Fehlerunterscheidungsschaltung existiert und während der
neuen Fehlerunterscheidungsperiode kein Fehler detektiert wird.
Falls ferner ein weiterer Fehler detektiert wird, nachdem Fehler
in der Vergangenheit detektiert worden sind, wird ein Protokoll
des Fehlers durch die relevante Rückführungsschleifenschaltung überschrieben.
Das Fehlerhalte-FF, das die Fehlerunterscheidungsschaltung bildet,
ist mit der Scankette verbunden, die nicht die Scankette des RAM-BIST-Mustererzeugungsblocks ist.
Daher kann das Fehlerhalte-FF durch Löschen der Fehlerinformationen
zu der Zeit der Anfangseinstellung vor Beginn des Tests initialisiert
werden, und das relevante Testresultat kann von Scan-Out2 gelesen
werden.
-
3 zeigt
ein Beispiel für
eine Fehlerunterscheidungsschaltungsstruktur für ein Bit bei der Hintergrundtechnik.
Die Erwartungswertvergleichsschaltung ist aus einem Ex-OR-(Exklusiv-ODER)-Gatter 304 gebildet.
Wenn die Lesedaten von dem Testobjekt-RAM mit den Erwartungswertdaten übereinstimmen,
gibt die Erwartungswertvergleichsschaltung '0' aus,
weil das Testresultat als gut beurteilt wird. Wenn die Lesedaten
nicht übereinstimmen,
gibt die Erwartungswertvergleichsschaltung '1' aus,
weil das Testresultat als schlecht (Fehler) beurteilt wird. Das
relevante Testresultat wird in das FF 306 geschrieben, wobei
es das ODER-Gatter (logische Summe) 305 durchläuft.
-
Darüber hinaus
wird, wenn die Rückführungsschleifenschaltung
für den
Test verwendet wird (Schleife = '1') und ein Fehler
bei demselben Bit bereits detektiert worden ist, der Zustand, bei
dem der relevante Fehler detektiert wurde, in dem FF 306 mit der
relevanten Rückführungsschleife
gehalten, die aus dem UND-Gatter (logisches Produkt) 303 gebildet
ist. Auch nachdem die Fehlerunterscheidung eine Anzahl von Malen
wiederholt worden ist, kann daher das FF 306 als Flag verwendet
werden, das angibt, ob ein Fehler bei dem relevanten Bit erzeugt
wurde oder nicht. Ein Vergleich des Erwartungswertes sollte während der
Schreiboperation in dem Testobjekt-RAM nicht ausgeführt werden,
da die Lesedaten von dem relevanten Testobjekt-RAM keine Bedeutung
haben. Deshalb wird das Ladefreigabesignal mit negativer Logik(-LE)
während
des RAM-BIST-Mustererzeugungsblocks auf (-LE = '1')
gesetzt, und das Aktualisieren des Wertes, der durch das FF 306 gehalten
wird, wird mit dem IH-(Unterdrückungs)-An schluss
des FF 306 verhindert. Da im Allgemeinen einer oder mehrere
Zyklen zum Lesen der Lesedaten von dem RAM erforderlich sind, werden
der Erwartungswert und das Ladefreigabesignal mit negativer Logik
in dem Zyklus mit den Zykluseinstellschaltungen 301, 302 eingestellt,
die aus dem Schieberegister gebildet sind, um den Zyklus der Lesedaten
einzustellen.
-
4 zeigt
ein Beispiel für
einen Testablauf, bei dem die RAM-BIST-Schaltung der Hintergrundtechnik
verwendet wird. Dies ist ein Beispiel für einen Testablauf, der zur
Fehlerunterscheidung der relevanten LSI, oder zur Bestimmung der
Relief-Objektbits des Fehlers, unter Verwendung einer redundanten
Schaltung des RAM bei dem Massenproduktionstest der LSI eingesetzt
wird.
-
Nach
Beginn des Tests (Schritt S401) werden zuerst der Instruktionscode
und das Modussignal über
Scan-In für
die Scankette des RAM-BIST-Mustererzeugungsblocks eingestellt. Der Anfangswert
des Zählers
innerhalb des RAM-BIST-Mustererzeugungsblocks wird auch eingestellt
(Schritt S402). In diesem Fall wird die Rückführungsschleifenschaltung in
der Fehlerunterscheidungsschaltung auf EIN gestellt (Schleife = '1'), und eine Initialisierung wird ausgeführt, indem
die Fehlerinformationen, die in dem Fehlerhalte-FF in der Fehlerunterscheidungsschaltung
gehalten werden, gelöscht
werden (Schritt S403).
-
Als
nächster
Schritt werden so viele Takte wie für den relevanten RAM-Test erforderlich
auf den Testobjekt-RAM angewendet (Schritt S404 bis S405). Die Schreib-
und Leseoperationen des Testobjekt-RAM werden jedes Mal, wenn ein
Takt angewendet wird, mit dem Testmuster ausgeführt, das in dem RAM-BIST-Mustererzeugungsblock
automatisch erzeugt wird.
-
Es
wird auch eine Fehlerunterscheidung in der Fehlerunterscheidungsschaltung
ausgeführt. Nach
Anwendung der für
den Testobjekt-RAM erforderlichen Takte hält das Fehlerhalte-FF in der
Fehlerunterscheidungsschaltung die Fehlerinformationen für jedes
Bit. Die relevanten Fehlerinformationen werden unter Verwendung
der Scankette für
die externe Seite der Testobjekt-LSI gelesen (Schritt S406). Danach
ist der Test unter Verwendung der RAM-BIST-Schaltung vollendet (Schritt
S407). Da die relevanten Fehlerinformationen jedem Bit des Testobjekt-RAM
entsprechen, kann ein Fehlererzeugungsbit von der Bitstelle in der
relevanten Scankette unterschieden werden. Dennoch ist es unmöglich, eine
Fehlererzeugungsadresse des Testobjekt-RAM zu unterscheiden.
-
Bei
einer Fehleranalyse einer LSI ist es erforderlich, den physikalischen
Ort zu identifizieren, wo ein Fehler erzeugt wird. Ferner muss,
wenn der relevante Fehler erzeugt wird, unterschieden werden, ob ein
hoher Wert gelesen wurde, wenn ein niedriger Wert erwartet worden
ist, oder im Gegensatz dazu ein niedriger Wert gelesen wurde, wenn
ein hoher Wert erwartet worden ist. Als Verfahren der Fehleranalyse
einer LSI muss aus den Informationen auch eine Ursache des Fehlers
des Testobjekt-RAM beurteilt werden. Solch eine Beurteilung kann
eine Verteilung der physikalischen Orte der detektierten Fehler und
ein Profil der Fehlererzeugung enthalten. Solche Informationen werden
als FBM-(Fehler-Bitmap)-Informationen
bezeichnet.
-
5 zeigt
ein Beispiel für
den Testablauf, wenn die FBM-Informationen in der RAM-BIST-Schaltung
der Hintergrundtechnik erhalten werden. Die RAM-BIST-Schaltung der
Hintergrundtechnik ist nicht mit einem Mittel zum Identifizieren
der Fehlererzeugungsadresse versehen. Deshalb werden die Fehlerinformationen,
die in dem Fehlerhalte-FF der Fehlerunterscheidungsschaltung gehalten
werden, mit der Scankette gelesen, immer wenn Daten aus dem Testobjekt-RAM
gelesen werden, ob nun ein Fehler in dieser Zeitlage erzeugt wird oder
nicht. Ein Musterort, wo ein Fehler detektiert wird, kann durch
Scanverschiebung der Fehlerinformationen nach jeder Leseoperation
des Testobjekt-RAM identifiziert werden. Die Fehlererzeugungsadresse
und die Erwartungswertdaten, die bei der Leseoperation erhalten
werden, können
mit den relevanten Scanverschiebungsinformationen analysiert werden.
Unten wird jeder Schritt des relevanten Testablaufs erläutert.
-
Zuerst
werden der Instruktionscode und das Modussignal durch Ausführen des
Scan-In für
die Scankette des RAM-BIST-Mustererzeugungsblocks nach
Beginn des Tests eingestellt (Schritt S501). Der Anfangswert des
Zählers
in dem RAM-BIST-Mustererzeugungsblock
wird auch eingestellt (Schritt S502). In diesem Fall wird die Rückführungsschleifenschaltung
in der Fehlerunterscheidungsschaltung auf AUS gestellt (Schleife
= '0'), und die Initialisierung
wird ausgeführt,
indem die Fehlerinformationen gelöscht werden, die durch das
Fehlerhalte-FF innerhalb der Fehlerunterscheidungsschaltung gehalten
werden (Schritt S502).
-
Als
nächster
Schritt werden Takte auf den Testobjekt-RAM angewendet (Schritt S503). Die Schreib-
und Leseoperationen des Testobjekt-RAM werden mit dem Testmuster,
das in dem RAM-BIST-Mustererzeugungsblock automatisch erzeugt wird,
immer dann ausgeführt,
wenn der Takt angewendet wird. Die Fehlerunterscheidung des relevanten
Testobjekt-RAM wird mit der Fehlerunterscheidungsschaltung ausgeführt. Nach
jeder Leseoperation (Schritt S504) des Testobjekt-RAM werden die Fehlerinformationen,
die in dem Fehlerhalte-FF in der Fehlerunterscheidungsschaltung
gehalten werden, für
die externe Seite der Testobjekt-LSI unter Verwendung der Scankette
gelesen (Schritt S505). Mit der Wiederholung des oben erläuterten
Prozesses (Schritte S504 bis S505) wird der Test unter Verwendung
der RAM-BIST-Schaltung vollendet (Schritt S507).
-
Bei
diesem Beispiel werden Fehlerinformationen, wie etwa der Inhalt,
der in dem Fehlerhalte-FF in der Fehlerunterscheidungsschaltung
gehalten wird, einer Scanverschiebung unterzogen, aber der in dem
FF zur Einstellung gehaltene Inhalt, wie beispielsweise der Instruktionscode
und das Modussignal in der Mustererzeugungsschaltung, werden keiner
Scanverschiebung unterzogen, um die Einstelldaten zur Fortsetzung
von Operationen bei Anwendung des nächsten Taktes zu halten. Die
Leseoperation durch Anwenden des relevanten Taktes und Scanverschiebung
der Fehlerinformationen wird wiederholt, bis der Test vollendet
ist. Bei diesem Testablauf können
ein Fehlererzeugungsbit und ein Fehlererzeugungslesezyklus leicht
analysiert werden.
-
In
dem Testablauf von 4 ist ein Hochgeschwindigkeitsoperationstest
des Testobjekt-RAM möglich,
da ein Testprozess lediglich mit Anwendung eines Taktes nach der
Anfangseinstellung vollendet wird. Da jedoch die Bitinformationsmenge
von einem Bit in der Adressrichtung für jedes Bit der Ausgabe des
Testobjekt-RAM bereitgestellt wird, ergibt sich ein Problem insofern,
als die Informationen über
die Fehlererzeugungsadresse nicht erhalten werden können und
dadurch die FBM-Informationen nicht erlangt werden können.
-
Darüber hinaus
können
die FBM-Informationen bei dem Testablauf von 5 erfasst
werden, aber die Leseoperation durch Scanverschiebung des Fehlerhalte-FF
in der Fehlerunterscheidungsschaltung wird bei jeder Leseoperation
des Testobjekt-RAM erzeugt. Wenn deshalb ein einzelner Takt während der
Operation des Testobjekt-RAM angewendet wird, kann ein Fehler von
dem Typ, der durch kontinuierliche Hochgeschwindigkeitsanwendung des
Taktes auf den RAM zu erzeugen ist, in manchen Fällen nicht reproduziert werden.
-
Deshalb
kann nicht gesagt werden, dass das Testverfahren unter Verwendung
der RAM-BIST-Schaltung der Hintergrundtechnik ein höheres Fehleranalysevermögen hat,
da es unmöglich ist,
eine Operationsgeschwindigkeit, die der tatsächlichen Operationsbedingung
der Testobjekt-LSI ähnlich
ist, zu realisieren und auf der Basis des Operationsmusters gleichzeitig
Test- und FBM-Informationen zu erfassen.
-
14 zeigt
ein Beispiel für
die Struktur einer gewöhnlichen
RAM-Zellenschaltung eines Bits. 14 zeigt
die RAM-Zellenschaltung eines Bits, die aus pMOS-Transistoren (positiv
Metall-Oxid-Silizium) 1401, 1402, nMOS-Transistoren
(negativ Metall-Oxid-Silizium) 1403, 1404 und
INV-(Inverter)-Gattern 1405, 1406 gebildet ist.
-
Als
Nächstes
wird die Schreiboperation in der relevanten RAM-Zellenschaltung
erläutert.
Zuerst werden die Bitleitungen BL1409, XBL1410 im Anfangszustand
vorgeladen. Als Nächstes
startet, wenn die Adresse, die Schreibdaten und das Schreibfreigabesignal
(nicht gezeigt) den RAM-Eingangsanschluss erreichen und auch der
Taktimpuls angewendet wird, der RAM die Operation, und die BL1409
und XBL1410 werden gemäß den Schreibdaten
angetrieben. Wenn als Nächstes
die Reihenadresse (nicht gezeigt) decodiert wird, werden die INV-(Inverter)-Gatter 1405, 1406,
die ein Aufzeichnungselement bilden, leitend, und die Daten werden in
dem relevanten Speicherelement als Speicherzustand Q gehalten, indem
der Impuls für
die decodierte Wortleitung WL1408 erzeugt wird. Des Weiteren wird
die Vorladeoperation mit einem PC1407 gestartet, und dadurch werden
die Bitleitungen BL1409 und XBL1410 auf den hohen Zustand getrieben.
-
Nun
wird die Leseoperation der relevanten RAM-Zellenschaltung erläutert. Zuerst
werden die Bitleitungen BL1409, XBL1410 im Anfangszustand vorgeladen.
Als Nächstes
startet, wenn die Adresse, die Schreibdaten und das Schreibfreigabesignal (nicht
gezeigt) den RAM-Eingangsanschluss erreichen und der Taktimpuls
angewendet wird, der RAM die Operation. Als Nächstes werden, wenn die Reihenadresse
(nicht gezeigt) decodiert wird, die INV-(Inverter)-Gatter 1405, 1406,
die ein Aufzeichnungselement bilden, durch Erzeugen des Impulses in
der decodierten Wortleitung WL1408 leitend. Mit dem Inhalt des Speicherzustandes
Q des relevanten Speicherelementes wird das Potential der Bitleitungen
BL1409 oder XBL1410 verringert, und eine Potentialdifferenz wird
zwischen den Bitleitungen BL1409 und XBL1410 erzeugt. Hier startet
ein Leseverstärker
(nicht gezeigt) die Operation und wird ein Lesewert durch eine Potentialdifferenz
zwischen den Bitleitungen BL1409 und XBL1410 bestimmt. Des Weiteren
startet der PC1407 die Vorladeoperation, um die Bitleitungen BL1409,
XBL1410 auf den hohen Zustand zu treiben.
-
15 zeigt
ein Zeitlagendiagramm, das ein Beispiel für einen Fehler von dem Typ
zeigt, der durch Hochgeschwindigkeitsanwendung eines kontinuierlichen
Taktes auf den RAM erzeugt wird; nämlich ein Beispiel für einen
Fehler, der bei dem Hochgeschwindigkeitsoperationstest des RAM erzeugt wird.
-
Zum
Beispiel kann ein Fehler erzeugt werden, weil die Operation des
nächsten
Zyklus vor Vollendung des Vorladens der Bitleitung gestartet wird. Falls
insbesondere die Leseoperation einen Potentialabfall 1502 vor
ausreichender Vollendung des Potentialanstiegs durch die Vorladung 1501 beginnt, kann
eine Potentialdifferenz zwischen den Bitleitungen BL und XBL möglicherweise
nicht ausreichen, und es können
fehlerhafte Daten ausgegeben werden. Anderenfalls nimmt die Zeit
(Verzögerungszeit) zu,
die zum Erfüllen
einer Ausgabe bei der Leseoperation benötigt wird, wodurch die Leistung
nachteilig beeinflusst wird.
-
Wenn
eine Verzögerungszeit
länger
wird, weil keine ausreichende Potentialdifferenz zwischen den Bitleitungen
BL und XBL erlangt werden kann, wird weiterhin manchmal ein Wortleitungsimpuls 1504 vor
Vollendung 1503 des Decodierens der Adresse erzeugt. Wenn
die Ausgabeverzögerung
bei solch einer Leseoperation groß wird, kann ein Inkrement
der relevanten Verzögerung
bei einer früheren Anwendung
des Taktes nach der Leseoperation detektiert werden.
-
Weiterhin
führt ein
Vorladen manchmal zu einem nachteiligen Effekt für das Speicherelement. Wenn
die Aktivierungsperiode mit der Vorladeperiode der Wortleitung überlappt
ist, kann ein nachteiliger Effekt bei dem Haltevermögen des
Speicherelementes hervorgerufen werden. Dieser nachteilige Effekt kann
auf die vorherige und nachfolgende Beziehung der Zeitlagen der Erzeugung
des Wortleitungsimpulses 1504 durch das Decodieren und
des Vorladens 1505 zurückgeführt werden,
da beide Bitleitungen BL und XBL des Speicherelementes auf den hohen
Wert getrieben werden. Selbst wenn der relevante nachteilige Effekt
innerhalb des Toleranzbereichs der RAM-Charakteristik liegt, können die
Daten in manchen Fällen
jedoch nicht normal gehalten werden, falls solch ein nachteiliger
Effekt bei der RAM-Zelle, die die schlechte Charakteristik aufweist,
wiederholt mit einer hohen Rate erzeugt wird. Falls ein Intervall des
relevanten Wortleitungsimpulses 1504 darüber hinaus
lang genug ist, ergibt sich das Problem, dass die Wahrscheinlichkeit,
dass ein Fehler nicht detektiert werden kann, höher ist, da das Potential mit
der Schleifenschaltung des Inverters, der ein Speicherelement bildet,
wiederhergestellt werden kann.
-
16 zeigt
ein Zeitlagendiagramm für
eine Leseoperation des nächsten
Zyklus, die vor dem ausreichenden Vorladen der Bitleitungen während der Schreiboperation
bei dem Hochgeschwindigkeitsoperationstest des RAM gestartet wird.
-
Ein
Zugriff kann während
der Schreib- und Leseoperationen auch auf die anderen Adressen erfolgen,
und die Datenwerte des relevanten Schreibobjektes und Leseobjektes
werden eine invertierte Beziehung zueinander haben. Falls die nächste Leseoperation
vor Vollendung des Vorladens startet, wird in manchen Fällen keine
ausreichende Potentialdifferenz zwischen den Bitleitungen BL und
XBL erzeugt. Dies kann auf Grund einer verzögerten Vorladestartzeitlage
geschehen oder weil das Vorladetreibervermögen niedrig ist, oder wenn
die Leseverstärkeroperation
wegen solch eines komplizierten Grundes startet, dass zum Beispiel
das Treibervermögen der
RAM-Zelle niedrig ist. In diesem Fall wird ein Fehler bei den Lesedaten
erzeugt, aber ein ausreichendes Vorladen wird herbeigeführt, wenn
der Lesezyklus länger
ist. Daher ergibt sich das Problem, dass der Fehler nicht reproduziert
werden kann.
-
Die
JP-A Nr. 1999-39226 offenbart
einen Testobjekt-RAM und eine Selbsttestschaltung zum Testen des
Testobjekt-RAM. Die Selbsttestschaltung umfasst einen Controller
zum Ausgeben eines Steuersignals, wenn er den Testtakt und das Teststartsignal
empfängt.
Ein Adressgenerator erzeugt ein Adresssignal, wenn er das Steuersignal
empfängt, und
gibt solch ein Adresssignal an den RAM aus.
-
Ein
Datengenerator erzeugt Testdaten, wenn er das Steuersignal empfängt, und
gibt die Testdaten an den RAM aus. Ein Komparator vergleicht die
gegebenen Testdaten, die durch den Datengenerator ausgegeben werden,
mit den tatsächlichen
Daten, die danach aus dem RAM gelesen werden, und schreibt die gegebenen
Testdaten und gibt ein Fehlersignal aus, wenn sich die Testdaten
von den tatsächlichen
Daten unterscheiden. Eine Scanschaltung empfängt die tatsächlichen
Daten, die von der Speichervorrichtung ausgegeben werden, oder das Adresssignal,
das von dem Adressgenerator ausgegeben wird, und sieht eine serielle
Ausgabe vor.
-
Ein
Multiplexer gibt auf der Basis des Steuersignals selektiv ein Fehlersignal,
das von dem Komparator ausgegeben wird, ein Fehlersignal, das von der
Scanschaltung ausgegeben wird, oder tatsächliche Daten, die von der
Scanschaltung ausgegeben werden, oder das Adresssignal aus. Wenn
das Fehlersignal nach Beginn des Tests ausgegeben wird, werden die
tatsächlichen
Daten, als der Fehler erzeugt wurde, an die externe Seite über den
Multiplexer ausgegeben, und weiterhin wird das Adresssignal entsprechend
solchen tatsächlichen
Daten an die externe Seite über
den Multiplexer ausgegeben.
-
Diese
Technik offenbart nämlich,
dass bei Erzeugung eines Fehlers bei dem RAM-Test die tatsächlichen
Daten oder die Adresse bezüglich
des erzeugten Fehlers gehalten werden und die relevanten Informationen
für die
externe Seite der LSI bei der Scanverschiebung gelesen werden.
-
Jedoch
hat die Technik, die durch die
JP-A Nr. 1999-39226 offenbart
wird, dadurch, dass die Testoperation des RAM gestoppt wird, wenn
ein Fehler in dem Testobjekt-RAM detektiert wird, das Problem, dass
ein Fehler von dem Typ, der erzeugt wird, wenn die Takte kontinuierlich
in höherer
Rate auf den relevanten RAM angewendet werden, nicht reproduziert
werden kann.
-
Die
Erfindung wird durch die Ansprüche
1, 10 und 16 definiert.
-
Eine
Ausführungsform
der vorliegenden Erfindung unterscheidet sich von der
JP-A Nr. 1999-39226 darin,
dass bei Erzeugung eines Fehlers die Operationsbedingung nicht später durch
Lesen solch einer Operationsbedingung für die externe Seite der LSI
bei der Scanverschiebung detektiert wird, sondern der Test vielmehr
durch vorheriges Begrenzen der Fehlerdetektionsbedingung ausgeführt wird. Deshalb
ist die Operationsbedingung als Vorbedingung bereits detektiert,
wenn der Fehler erzeugt wird, und die Operationsbedingung braucht
später
nicht mehr detektiert zu werden.
-
Darüber hinaus
wird bei der in der
JP-A
Nr. 1999-39226 offenbarten Technik die Testoperation auf
Grund der erforderlichen Scanverschiebung, falls ein Fehler erzeugt
wird, wegen der Operationsbedingung, wenn solch ein Fehler erzeugt
wird, unterbrochen, während
im Falle einer Ausführungsform
der vorliegenden Erfindung die Testoperation nicht unterbrochen
wird.
-
Daher
offenbart die
JP-A
Nr. 1999-39226 keine effektive RAM-Testvorrichtung und
kein effektives RAM-Testverfahren unter RAM-BIST-Verwendung.
-
Falls
die Fehlerinformationen über
einen Fehler bei der Leseoperation einer Scanverschiebung unterzogen
werden, wenn der Takt nach der Anfangseinstellung des RAM-BIST-Mustererzeugungsblocks
kontinuierlich angewendet wird, und der Fehler nach Vollendung der
Anwendung des Taktes in der RAM-BIST-Schaltung
zum Testen des RAM detektiert wird, der in der LSI wie beispielsweise
einer CPU und einem Controller enthalten ist, können die Informationen über die
Fehlererzeugungsadresse nicht erhalten werden und können des
Weiteren auch die FBM-Informationen nicht erhalten werden, da nur ein
Bit in der Adressrichtung vorgesehen ist.
-
Falls
die Fehlerinformationen bei jeder Anwendung des Taktes bei der Leseoperation
nach der Anfangseinstellung des RAM-BIST-Mustererzeugungsblocks
in der RAM-BIST-Schaltung zum Testen des RAM, der in der LSI wie
etwa einer CPU und einem Controller enthalten ist, einer Scanverschiebung unterzogen
werden, kann der Fehler von dem Typ, der durch kontinuierliche Anwendung
des Taktes mit der höheren
Rate auf den RAM erzeugt wird, nicht reproduziert werden, da während der
Operation ein Takt nach dem anderen angewendet wird.
-
Gemäß einem
Aspekt der vorliegenden Erfindung sind eine Vorrichtung und ein
Verfahren zum Testen eines RAM vorgesehen, bei denen die Erzeugung
eines Fehlers bei der Leseoperation bei der vermerkten Adresse unterschieden
werden kann, wenn die Fehlerinformationen in dem Fehlerhalte-FF
der Fehlerdetektionsschaltung nach Vollendung des RAM-Tests gehalten
werden, indem der Fehler nur während
der Leseoperation bei der besonderen vermerkten Adresse in der RAM-BIST-Schaltung zum Testen
des RAM detektiert wird, der in der LSI wie etwa einer CPU und einem
Controller enthalten ist.
-
Gemäß einem
anderen Aspekt der vorliegenden Erfindung sind eine Vorrichtung
und ein Verfahren zum Testen des RAM vorgesehen, bei denen die Fehlerdetektion
einer Leseoperation nur bei den besonderen Erwartungswertdaten ausgeführt wird, und
wenn der Fehler detektiert wird, wie zum Beispiel bei dem Test,
der die Fehlerdetektion nur für
den niedrigen Erwartungswert einstellt, kann der Fehler unterschieden
werden, weil die Lesedaten, die den niedrigen Erwartungswert haben
sollten, ein hoher Wert sind. Darüber hinaus kann eine Ausführungsform
der Erfindung eine Vorrichtung und ein Verfahren zum Testen eines
RAM vorsehen, bei denen, wenn ein Fehler bei dem Test detektiert
wird, der die Fehlerdetektion nur für den hohen Erwartungswert einstellt,
der Fehler unterschieden werden kann, weil die Lesedaten, die den
hohen Erwartungswert haben sollten, ein niedriger Wert sind.
-
Ein
Aspekt der vorliegenden Erfindung kann durch eine Halbleitervorrichtung
vorgesehen werden, die eine Scankette und wenigstens eine Speichervorrichtung
enthält,
mit einer Adressenhalteschaltung, die mit der Scankette eingestellt
wird, einem Testmustererzeugungsmittel zum Erzeugen eines Testmusters
und Eingeben des Testmusters zusammen mit einer Schreibadresse in
die Speichervorrichtung, einem Erwartungswertkomparator zum Vergleichen von
Lesedaten, die von der Speichervorrichtung ausgegeben werden, mit
den Erwartungswertdaten, die von dem Testmustergenerator ausgegeben
werden, indem eine Leseadresse von dem Testmustergenerator geliefert
wird, einer Fehlerhalteschaltung zum Halten des Resultats des Vergleichs
als Fehlerzustand, falls ein Fehler durch den Vergleich in dem Erwartungswertkomparator
detektiert wird, einem Adressenkomparator zum Vergleichen der vermerkten
Adresse, die in der Adressenhalteschaltung gehalten wird, mit der
Leseadresse, und einem Fehlerhaltesteuermittel zum Ausführen einer
Freigabesteuerung für
die Fehler halteschaltung, wenn eine Adressenübereinstimmung zwischen der
vermerkten Adresse und der Leseadresse durch den Vergleich in dem
Adressenkomparator detektiert worden ist.
-
In
einer anderen Ausführungsform
ist eine Halbleitervorrichtung vorgesehen, in der der Erwartungswertkomparator
eine Freigabesteuerung der Fehlerhalteschaltung ausführt, wenn
die Erwartungswertdaten, die von dem Testmustergenerator ausgegeben
werden, ein hoher Wert sind und die Lesedaten während des Tests ein niedriger
Wert sind, falls der hohe Wert der Erwartungswert ist. Der Erwartungswertkomparator
führt auch
eine Freigabesteuerung der Fehlerhalteschaltung aus, wenn die Erwartungswertdaten,
die von dem Testmustergenerator ausgegeben werden, ein niedriger
Wert sind und die Lesedaten während
des Tests ein hoher Wert sind, falls der niedrige Wert der Erwartungswert
ist.
-
In
einer anderen Ausführungsform
ist eine Halbleitervorrichtung vorgesehen, in der der Adressenkomparator
eine Freigabesteuerung der Fehlerhalteschaltung ausführt, wenn
die Leseadresse, nach dem Maskieren mit einem Maskenmittel, in dem Bereich
der vermerkten Adresse enthalten ist, indem ein Komparator für jedes
Bit vorgesehen wird, das eine Adresse bildet, und dann das Maskenmittel
zum Maskieren der Ausgabe des Komparators vorgesehen wird.
-
In
einer anderen Ausführungsform
ist eine Halbleitervorrichtung vorgesehen, die eine Adressenhalteschaltung
enthält,
die mit der Scankette eingestellt wird, einen Testmustergenerator
zum Erzeugen eines Testmusters und Eingeben des Testmusters zusammen
mit einer Schreibadresse in die Speichervorrichtung, einen Erwartungswertkomparator zum
Vergleichen von Lesedaten, die von der Speichervorrichtung ausgegeben
werden, mit Erwartungswertdaten, die von dem Testmustergenerator ausgegeben
werden, indem eine Leseadresse von dem Testmustergenerator geliefert
wird, eine Fehlerhalteschaltung zum Halten des Vergleichsresultats als
Fehlerzustand, wenn ein Fehler bei dem Vergleich in dem Erwartungswertkomparator
detektiert wird, ein Inkrementierungsmittel, ein Speicher/Rücksetz-Flag-Mittel
einer vermerkten Adresse, das mit der Scankette eingestellt wird,
und ein Speichermittel einer vermerkten Adresse, zum Halten eines
Wertes nach dem Inkrementieren, mit dem Inkrementierungsmittel,
der vermerkten Adresse, die in der Adressenhalteschaltung gehalten
wird, wobei der Wert, der in dem Speichermittel der vermerkten Adresse
gehalten wird, für
die Halteschaltung der vermerkten Adresse zurückgesetzt wird, indem das Speicher/Rücksetz-Flag-Mittel
der vermerkten Adresse eingestellt wird.
-
In
einer Ausführungsform
ist eine Halbleitervorrichtung vorgesehen, in der die Halteschaltung der
vermerkten Adresse nicht mit der Scankette verbunden ist.
-
In
einer anderen Ausführungsform
ist ein Informationsprozessor mit einer Halbleitervorrichtung vorgesehen,
die eine Scankette und wenigstens eine Speichervorrichtung enthält, welche
Halbleitervorrichtung eine Adressenhalteschaltung enthält, die
mit der Scankette eingestellt wird, einen Testmustergenerator zum
Erzeugen eines Testmusters und Eingeben des Testmusters zusammen
mit einer Schreibadresse in die Speichervorrichtung, einen Erwartungswertkomparator
zum Vergleichen eines Lesewertes, der von der Speichervorrichtung
ausgegeben wird, mit den Erwartungswertdaten, die von dem Testmustergenerator
ausgegeben werden, indem eine Leseadresse von dem Testmustergenerator
geliefert wird, eine Fehlerhalteschaltung zum Halten des Vergleichsresultats
als Fehlerzustand, wenn ein Fehler durch den Vergleich in dem Erwartungswertkomparator
detektiert wird, einen Adressenkomparator zum Vergleichen der erwarteten
Adresse, die in der Adressenhalteschaltung gehalten wird, mit der
Leseadresse, und ein Fehlerhaltesteuermittel zum Ausführen einer
Freigabesteuerung für
die Fehlerhalteschaltung, wenn eine Adressübereinstimmung zwischen der
vermerkten Adresse und der Leseadresse durch den Vergleich in dem
Adressenkomparator detektiert wird.
-
In
einer anderen Ausführungsform
ist ein Informationsprozess vorgesehen, mit einer Halbleitervorrichtung,
die eine Scankette und wenigstens eine Speichervorrichtung enthält, welche
Halbleitervorrichtung eine Adressenhalteschalturig enthält, die
mit der Scankette eingestellt wird, einen Testmustergenerator zum
Erzeugen eines Testmusters und Eingeben des Testmusters zusammen
mit einer Schreibadresse in die Speichervorrichtung, einen Erwartungswertkomparator
zum Vergleichen von Lesedaten, die von der Speichervorrichtung ausgegeben
werden, mit den Erwartungswertdaten, die von dem Testmustergenerator
ausgegeben werden, indem eine Leseadresse von dem Testmustergenerator
geliefert wird, eine Fehlerhalteschaltung zum Halten des Vergleichsresultats
als Fehlerzustand, wenn ein Fehler durch den Vergleich in dem Erwartungswertkomparator
detektiert wird, ein Inkrementierungsmittel, ein Speicher/Rücksetz-Flag-Mittel
einer vermerkten Adresse, das mit der Scankette eingestellt wird,
und ein Speichermittel einer vermerkten Adresse, zum Halten des
Wertes nach dem Inkrementieren, mit dem Inkrementierungsmittel,
der vermerkten Adresse, die in der Adressenhalteschaltung gehalten
wird, wobei der Wert, der in dem Speichermittel der vermerkten Adresse
gehalten wird, für
die Halte schaltung der vermerkten Adresse zurückgesetzt wird, indem das Speicher/Rücksetz-Flag-Mittel
der vermerkten Adresse eingestellt wird.
-
Gemäß einem
anderen Aspekt der vorliegenden Erfindung ist ein Verfahren zum
Testen einer Halbleitervorrichtung vorgesehen, die eine Scankette und
wenigstens eine Speichervorrichtung enthält, bei dem die Halbleitervorrichtung
eine Adressenhalteschaltung enthält,
die mit der Scankette eingestellt wird, ein Testmustergenerator
ein Testmuster erzeugt und das Testmuster zusammen mit einer Schreibadresse
in die Speichervorrichtung schreibt, ein Erwartungswertkomparator
Lesedaten, die von der Speichervorrichtung ausgegeben werden, mit
den Erwartungswertdaten vergleicht, die von dem Testmustergenerator
gelesen werden, indem eine Leseadresse von dem Testmustergenerator
geliefert wird, und eine Fehlerhalteschaltung das Vergleichsresultat als
Fehlerzustand hält,
wenn ein Fehler durch das Vergleichsresultat in dem Erwartungswertkomparator detektiert
wird, wobei die Fehlerhalteschaltung eine Rückführungsschaltung enthält, die
EIN- oder AUSgeschaltet
werden kann, um die Rückführungsschaltung
zu der Zeit der Initialisierung beim Testen der Speichervorrichtung
auf EIN zu stellen, Schreib- und Leseoperationen des Testmusters,
das mit dem Testmustergenerator erzeugt wird, in die und von der Speichervorrichtung
zusätzlich
zu der Anwendung des Taktes auf sie auszuführen und die Fehlerinformationen,
die in der Fehlerhalteschaltung gehalten werden, nach Vollendung
von Schreib- und Leseoperationen für alle Adressen der Speichervorrichtung
zu lesen.
-
In
einer anderen Ausführungsform
ist ein Verfahren zum Testen einer Halbleitervorrichtung vorgesehen,
die eine Scankette und wenigstens eine Speichervorrichtung enthält, bei
dem eine Adressenhalteschaltung mit der Scankette eingestellt wird,
ein Testmustergenerator ein Testmuster erzeugt und das Testmuster
zusammen mit einer Schreibadresse in die Speichervorrichtung schreibt,
ein Erwartungswertkomparator Lesedaten, die von der Speichervorrichtung
ausgegeben werden, mit den Erwartungswertdaten vergleicht, die von
dem Testmustergenerator gelesen werden, indem eine Leseadresse von dem
Testmustergenerator geliefert wird, und eine Fehlerhalteschaltung
das Vergleichsresultat als Fehlerzustand hält, wenn ein Fehler durch das
Vergleichsresultat in dem Erwartungswertkomparator detektiert wird,
wobei die Fehlerhalteschaltung eine Rückführungsschaltung enthält, die
EIN- oder AUSgeschaltet
werden kann, um die Rückführungsschaltung
zu der Zeit der Initialisierung beim Testen der Speichervorrichtung
auf AUS zu stellen, Schreib- und Leseoperationen des Testmusters,
das mit dem Testmustergenerator erzeugt wird, in die und von der Speichervorrichtung
zusätzlich
zu der Anwendung des Taktes auf sie auszuführen und auch die Leseoperation
der Fehlerinformationen auszuführen,
die in der Fehlerhalteschaltung gehalten werden.
-
In
einer anderen Ausführungsform
ist ein Verfahren zum Testen einer Halbleitervorrichtung vorgesehen,
die eine Scankette und wenigstens eine Speichervorrichtung enthält, mit
einer Adressenhalteschaltung, die mit der Scankette eingestellt
wird, einem Testmustergenerator, der ein Testmuster erzeugt und
das Testmuster zusammen mit einer Schreibadresse in die Speichervorrichtung
schreibt, einem Erwartungswertkomparator, der Lesedaten, die von
der Speichervorrichtung ausgegeben werden, und die Erwartungswertdaten
vergleicht, die von dem Testmustergenerator gelesen werden, indem eine
Leseadresse von dem Testmustergenerator geliefert wird, und einer
Fehlerhalteschaltung, die das Vergleichsresultat als Fehlerzustand
hält, wenn
ein Fehler durch das Vergleichsresultat in dem Erwartungswertkomparator
detektiert wird, wobei die Fehlerhalteschaltung eine Rückführungsschaltung
enthält,
die EIN- und AUSgeschaltet werden kann, um die Rückführungsschaltung zu der Zeit
der Initialisierung beim Testen der Speichervorrichtung auf EIN
zu stellen, die Schreib- und Leseoperationen in die und von der
Speichervorrichtung des Testmusters, das mit dem Testmustergenerator
erzeugt wird, zusätzlich
zu der Anwendung des Taktes auf sie auszuführen, die Rückführungsschaltung zu der Zeit
der Initialisierung beim Testen der Speichervorrichtung nach Vollendung
der Schreib- und Leseoperationen für alle Adressen der Speichervorrichtung
auf AUS zu stellen und die Schreib- und Leseoperationen in die und
von der Speichervorrichtung des Testmusters, das mit dem Testmustergenerator
erzeugt wird, zusätzlich
zu der Anwendung des Taktes auf sie auszuführen und auch die Leseoperation
der Fehlerinformationen auszuführen,
die in der Fehlerhalteschaltung gehalten werden.
-
Beispielhaft
wird nun Bezug auf die beiliegenden Zeichnungen genommen, in denen:
-
1 ein
Schema einer gewöhnlichen LSI-Schaltung
zeigt;
-
2 ein
Schema einer RAM-BIST-Schaltung der Hintergrundtechnik zeigt;
-
3 ein
Schema einer Fehlerunterscheidungsschaltung für ein Bit der Hintergrundtechnik zeigt;
-
4 ein
Flussdiagramm eines Tests unter Verwendung einer RAM-BIST-Schaltung
der Hintergrundtechnik zeigt;
-
5 ein
Flussdiagramm von FBM-Informationen zeigt, die in einer RAM-BIST-Schaltung
der Hintergrundtechnik erfasst werden;
-
6 ein
Schema einer RAM-BIST-Schaltung gemäß einer ersten Ausführungsform
der Erfindung zeigt;
-
7 ein
Schema einer Adressenvergleichsschaltung und einer Fehlerhalte-/Steuerschaltung
zur Verwendung mit der ersten Ausführungsform der Erfindung zeigt;
-
8 ein
Schema einer RAM-BIST-Schaltung gemäß einer zweiten Ausführungsform
der Erfindung zeigt;
-
9 ein
Schema einer RAM-BIST-Schaltung zur Verwendung mit der zweiten Ausführungsform
der vorliegenden Erfindung zeigt;
-
10 ein
Schema einer Adressenvergleichsschaltung und einer Fehlerhalte-/Steuerschaltung
gemäß einer
dritten Ausführungsform
der vorliegenden Erfindung zeigt;
-
11 ein
Schema einer RAM-BIST-Schaltung gemäß einer vierten Ausführungsform
der vorliegenden Erfindung zeigt;
-
12 ein
Schema einer Schaltung eines Speichermechanismus einer vermerkten
Adresse zur Verwendung bei der vierten Ausführungsform der vorliegenden
Erfindung zeigt;
-
13 ein
Flussdiagramm gemäß der vierten
Ausführungsform
der vorliegenden Erfindung zeigt;
-
14 ein
Schema einer gewöhnlichen RAM-Zellenschaltung
für ein
Bit zeigt;
-
15 ein
Zeitlagendiagramm zeigt, das ein Beispiel für einen Fehler darstellt, der
bei einem Hochgeschwindigkeitsoperationstest eines RAM erzeugt wird;
und
-
16 ein
Zeitlagendiagramm zeigt, wenn die Leseoperation des nächsten Zyklus
vor einem ausreichenden Vorladen der Bitleitung während der Schreiboperation
bei dem Hochgeschwindigkeitsoperationstest des RAM gestartet wird.
-
In
den Zeichnungen bezeichnen die gleichen Bezugszeichen durchgängig die
gleichen Teile.
-
(Erste Ausführungsform)
-
6 zeigt
ein Beispiel für
die Struktur der RAM-BIST-Schaltung
zur Fehlerunterscheidung von nur einer einzelnen vermerkten Adresse
als erste Ausführungsform
der vorliegenden Erfindung. Die RAM-BIST-Schaltung dieser Ausführungsform
ist, als periphere Schaltungen des Testobjekt-RAM 621, aus einem RAM-BIST-Mustererzeugungsblock 601 gebildet,
worin eine Testmustererzeugungsschaltung 614, eine Adressenvergleichsschaltung 615 und
eine Fehlerhaltesteuerschaltung 616 enthalten sind, sowie
einer Erwartungswertvergleichsschaltung 631 und einem Fehlerhalte-FF
(Flipflop) 641, die eine Fehlerdetektionsschaltung bilden.
-
In
der Testmustererzeugungsschaltung 614, die in dem RAM-BIST-Mustererzeugungsblock 601 enthalten
ist, stellt die Scan-FF-Gruppe 611, die mit der Scankette
zur Eingabe von Scan-In und zur Ausgabe an Scan-Out verbunden ist,
den Instruktionscode und das Modussignal ein, die an die Testmustererzeugungsschaltung 614 zu
liefern sind, und die Scan-FF-Gruppe 612 zur
Zählereinstellung
stellt den Anfangswert des Zählers
innerhalb der Testmustererzeugungsschaltung 614 ein.
-
Darüber hinaus
ist in dieser Ausführungsform
zusätzlich
eine Scan-FF-Gruppe 613 zum Einstellen einer vermerkten
Adresse vorgesehen, um die vermerkte Adresse innerhalb der Scankette
zu halten, und die Adressenvergleichsschaltung 615 vergleicht
die vermerkte Adresse, die für
die Scan-FF-Gruppe 613 zum Einstellen der vermerkten Adresse
mit der Scanverschiebung eingestellt wird, mit der Leseadresse,
die durch die Testmustererzeugungsschaltung 614 erzeugt
wird. Falls ein Fehler durch den relevanten Vergleich detektiert
wird, führt die
Fehlerhaltesteuerschaltung 616 die Steuerung (Unterdrückungssteuerung)
aus, um eine Freigabebegrenzung für den IH-(Unterdrückungs)-Anschluss des
Fehlerhalte-FF 641 vorzusehen, um die Schreiboperation
des relevanten Fehlerunterscheidungsresultats zu verhindern. Wenn
die relevante vermerkte Adresse mit der Leseadresse übereinstimmt,
wird das existierende Ladefreigabesignal mit negativer Logik(-LE)
direkt ausgegeben. Während
der Schreiboperation des relevanten Testobjekt-RAM sollte keine
Fehlerunterscheidung ausgeführt
werden, da die relevante RAM-Ausgabe der ignorierte Wert oder der feststehende
Wert ist. Daher wird während
der Schreiboperation des relevanten Testobjekt-RAM das Ladefreigabesignal mit negativer
Logik(-LE), das gesteuert wird, um eine Fehlerunterscheidung zu verhindern,
durch die Testmustererzeugungsschaltung 614 erzeugt.
-
7 zeigt
ein Beispiel für
die Struktur der Adressenvergleichsschaltung und der Fehlerhaltesteuerschaltung
gemäß der ersten
Ausführungsform der
vorliegenden Erfindung. Die entsprechenden Bits der Leseadresse 702,
die bei der Einstellung der vermerkten Adresse und des Instruktionscodes 701 erzeugt
werden und in den Halte-FFs der vermerkten Adresse 704, 705,
..., 706 gehalten werden, werden unter Verwendung der Ex-OR-(Exklusiv-ODER)-Gatter 708, 709,
..., 710 mit 2 Eingängen
verglichen. Das Ex-OR-Gatter mit 2 Eingängen gibt bei einer Nichtübereinstimmung
der Eingabe '1' aus. Falls eine
Nichtübereinstimmung
auch nur bei einem Bit unter den Bits, die die entsprechende Adresse
bilden, bei dem ODER-Gatter detektiert wird, mit dem der Ausgang von
jedem Ex-OR-Gatter verbunden ist, gibt das Ladefreigabesignal(-LE) '1' aus. Als Resultat wird der Inhalt,
der in dem Fehlerhalte-FF gehalten wird, durch Unterdrücken einer
Aktualisierung des Fehlerhalte-FF beibehalten. Wenn alle Bits, die
die Adresse bilden, übereinstimmen,
geben alle Ex-OR-Gatter mit 2 Eingängen '0' aus.
Daher wird die existierende Ladefreigabeerzeugungslogik 703,
die durch Einstellen des Instruktionscodes 701 erzeugt
wird, als Ladefreigabesignal(-LE) ausgegeben. Deshalb ist es möglich, die
Steuerung zum Ausführen
der Fehlerunterscheidung nur auszuführen, wenn eine Fehlerunterscheidung
bei dem RAM-Test erforderlich ist, wie oben erläutert.
-
(Zweite Ausführungsform)
-
8 zeigt
ein Beispiel für
die Struktur der RAM-BIST-Schaltung
zum Ausführen
der Fehlerunterscheidung durch Begrenzen des vermerkten Erwartungswertes
als zweite Ausführungsform
der vorliegenden Erfindung. Die RAM-BIST-Schaltung in dieser Ausführungsform
ist, als periphere Schaltung des Testobjekt-RAM 821, aus
dem RAM-BIST-Mustererzeugungsblock 801 gebildet, der die
Testmustererzeugungsschaltung 815, die Adressenvergleichsschaltung 816 und
die Fehlerhaltesteuerschaltung 817 umfasst, sowie aus der
Erwartungswertvergleichsschaltung 831 und dem Fehlerhalte-FF 841, die
die Fehlerdetektionsschaltung bilden.
-
In
der Testmustererzeugungsschaltung 815, die in dem RAM-BIST-Mustererzeugungsblock 801 enthalten
ist, stellt die Scan-FF-Gruppe 811, die mit der Scankette
verbunden ist, die von Scan-In eingegeben wird und an Scan-Out ausgegeben
wird, den Instruktionscode und das Modussignal ein, die an die Testmustererzeugungsschaltung 8 zu
liefern sind, und die Scan-FF-Gruppe 812 zur Zählereinstellung stellt
den Anfangswert des Zählers
innerhalb der Testmustererzeugungsschaltung 815 ein.
-
Darüber hinaus
vergleicht in dieser Ausführungsform
die Adressenvergleichsschaltung 816 die vermerkte Adresse,
die durch Scanverschiebung mit der Scan-FF-Gruppe 813 zum
Einstellen einer vermerkten Adresse zum Halten der vermerkten Adresse
mit der Scankette eingestellt wird, mit der Leseadresse, die durch
die Testmustererzeugungsschaltung 815 erzeugt wird.
-
Darüber hinaus
ist in dieser Ausführungsform
eine Scan-FF-Gruppe 814 zum
Einstellen des Erwartungswertunterscheidungssignals und zum Halten
des Erwartungswertsignals innerhalb der Scankette angesichts des
Steuerns des Vergleichsverfahrens der Lesedaten, die mit der Testmustererzeugungsschaltung 815 erzeugt
werden, in der Erwartungswertvergleichsschaltung 831 zusätzlich vorgesehen,
wobei das hohe Erwartungswertunterscheidungssignal oder niedrige
Erwartungswertunterscheidungssignal, die für die Scan-FF-Gruppe 814 eingestellt
werden, zum Einstellen des Erwartungswertunterscheidungssignals
durch die Scanverschiebung verwendet wird.
-
Die
Erwartungswertvergleichsschaltung vergleicht die erwarteten Daten
mit den Lesedaten und unterscheidet die Detektion eines Fehlers,
wenn bei Unterscheidung des hohen Erwartungswertes die Erwartungsdaten
der hohe Wert sind und die Lesedaten der niedrige Wert sind, oder
wenn bei Unterscheidung des niedrigen Erwartungswertes die Erwartungswertdaten
der niedrige Wert sind und die Lesedaten der hohe Wert sind.
-
Wenn
ein Fehler bei dem relevanten Vergleich detektiert wird, führt die
Fehlerhaltesteuerschaltung 817 die Steuerung (Unterdrückungssteuerung)
zum Erteilen einer Freigabebegrenzung für den IH-(Unterdrückungs)-Anschluss
des Fehlerhalte-FF 841 aus,
um die Schreiboperation des relevanten Vergleichsresultats zu verhindern.
Wenn die relevante vermerkte Adresse mit der Leseadresse übereinstimmt,
wird das existierende Ladefreigabesignal mit negativer Logik(-LE)
in direkt ausgegeben. Während der
Schreiboperation des relevanten Testobjekt-RAM sollte keine Fehlerunterscheidung
ausgeführt
werden, da die relevante RAM-Ausgabe der ignorierte Wert oder der
feststehende Wert ist. Während
der Schreiboperation des relevanten Testobjekt-RAM wird daher das
Ladefreigabesignal mit negativer Logik(-LE), das gesteuert wird,
um eine Fehlerunterscheidung zu verhindern, durch die Testmustererzeugungsschaltung 815 erzeugt.
-
9 zeigt
ein Beispiel für
die Struktur der Fehlerunterscheidungsschaltung für ein Bit
gemäß der zweiten
Ausführungsform
der vorliegenden Erfindung. Die Erwartungswertvergleichsschaltung
ist gebildet aus den UND-Gattern 905, 906 jeweilig
für die Unterscheidung
eines hohen Erwartungswertes und die Unterscheidung eines niedrigen
Erwartungswertes, und sie unterscheidet, ob die Lesedaten von dem Testobjekt-RAM
die folgende Fehlerbedingung bei der Unterscheidung des Erwartungswertes
und bei dem Erwartungswert erfüllen
oder nicht. Bei dem hohen Wert der Erwartungswertdaten und niedrigen
Lesedaten bei der Unterscheidung des hohen Erwartungswertes oder
bei niedrigen Erwartungswertdaten und einem hohen Wert der Lesedaten
bei der Unterscheidung des niedrigen Erwartungswertes wird die Fehlerdetektionsbedingung
erfüllt,
und deshalb wird '1' als Resultat der Fehlerunterscheidung
ausgegeben. Das relevante Testresultat wird in das FF 908 geschrieben,
wobei das ODER-Gatter 907 durchlaufen wird. Wenn ferner
die Rückführungsschleifenschaltung
für den
Test verwendet wird (Schleife = '1') und ein Fehler
bei dem identischen Bit detektiert wird, wird der Zustand, bei dem
der relevante Fehler mit der relevanten Rückführungsschleife detektiert worden
ist, die aus dem UND-Gatter 904 gebildet
ist, in dem FF 908 gehalten. Nach einer Vielzahl von Malen der
Fehlerunterscheidung kann das FF 908 daher als Flag zum
Unterscheiden der Erzeugung eines Fehlers bei dem relevanten Bit
verwendet werden. Während
der Schreiboperation in den Testobjekt-RAM sollte, da die Lesedaten
von dem relevanten Testobjekt-RAM keinerlei Bedeutung haben, der
Erwartungswert nicht verglichen werden. Deshalb wird das Ladefreigabesignal
mit negativer Logik(-LE) mit dem RAM-BIST-Mustererzeugungsblock
auf (-LE = '1') gesteuert, und
die Aktualisierung des Wertes, der in dem FF 908 gehalten
wird, wird mit dem IH-(Unterdrückungs)-Anschluss
des FF 908 unterdrückt.
Da im Allgemeinen einer oder mehrere Zyklen zum Lesen der Lesedaten
von dem RAM erforderlich sind, stellen der Erwartungswert und das
Ladefreigabesignal mit negativer Logik (-LE) die Zyklen durch die
Zykluseinstellschaltungen 901, 902, 903 ein,
die aus dem Schieberegister zur Einstellung von Zyklen der Lesedaten
gebildet sind.
-
(Dritte Ausführungsform)
-
Bei
dem Testablauf zum Erfassen der FBM-Informationen in der RAM-BIST-Schaltung
der Hintergrundtechnik, die in 5 gezeigt
ist, können die
FBM-Informationen während
der Hochgeschwindigkeitsoperation des Testobjekt-RAM erfasst werden,
wobei hier aber ein neues Problem aufgeworfen wird.
-
Und
zwar wird die gesamte Testzeit länger, weil
Tests wiederholt werden.
-
In
der dritten Ausführungsform
der vorliegenden Erfindung kann das oben erläuterte Problem gelöst werden,
indem der Test für
den Bereich der vorbestimmten Adresse oder den Erwartungswert auf einmal
ausgeführt
wird, statt den Test mit der einzelnen vermerkten Adresse oder dem
einzelnen Erwartungswert auszuführen,
wie es bei der Hintergrundtechnik geschehen ist, und danach den
Rastertest für den
Bereich der relevanten Adresse oder den Erwartungswert auszuführen.
-
Wenn
hier zum Beispiel die Adresse betrachtet wird, ist es möglich, den
Test mit der vermerkten Adresse des vorbestimmten Bereichs auszuführen, statt
den Test für
die einzelne vermerkte Adresse auszuführen. Als Beispiel sind die
Tests mit 4096-maliger Wiederholung ausgeführt worden, um den RAM mit
4096 Wörtern
zu testen. Jedoch kann solch eine Anzahl von Tests auf 128 Mal reduziert
werden, indem der Test für
den Bereich der vermerkten Adresse in einer Einheit von 32 Wörtern ausgeführt wird.
-
Falls
ein Fehler erzeugt wird, wird danach der Test mit der einzelnen
vermerkten Adresse nur für
den Adressbereich ausgeführt,
wo ein Fehler erzeugt wird. Falls zum Beispiel ein Fehler in den
zehn (10) Adressbereichen bei einer Anzahl der Tests von 128 detektiert
wird, sind 320 Tests mit der einzelnen vermerkten Adresse für weitere
10 Adressbereiche erforderlich. Daher beträgt die Gesamtanzahl der Male
des Tests 448, und diese Anzahl der Male des Tests ist
gegenüber
4096 bei dem RAM-Testverfahren, bei dem der gesamte Adressbereich
nur mit einer einzelnen vermerkten Adresse getestet wird, beachtlich
reduziert worden.
-
10 zeigt
ein Beispiel für
die Struktur der Adressenvergleichsschaltung und der Fehlerhaltesteuerschaltung
in dem Fall, wenn die vermerkte Adresse nicht als einzelne Adresse
selektiert wird, sondern als vorbestimmter Adressbereich, als dritte Ausführungsform
der vorliegenden Erfindung. Die Struktur der RAM-BIST-Schaltung
in dieser dritten Ausführungsform
kann die der RAM-BIST-Schaltung in der ersten Ausführungsform
zum Ausführen
einer Fehlerunterscheidung nur bei der einzelnen vermerkten Adresse
von 6 ähnlich
sein.
-
Der
Unterschied zwischen der Adressenvergleichsschaltung in der dritten
Ausführungsform
und der Adressenvergleichsschaltung in der ersten Ausführungsform
ist die Existenz oder Nichtexistenz der Maskenschaltung mit den
UND-Gattern 1010, 1011, ..., 1012 und
dass die relevanten Bits zwingend behandelt werden können, da
diese mit den Signalen MASKO bis 3 in einem Teil der Bits, die die
Adresse der vermerkten Adresse bilden, mit der relevanten Maskenschaltung
verglichen werden. Wenn zum Beispiel nur das Signal-MASKO auf '0' gesetzt wird und das Signal-MASK1 und
das Signal-MASK2 auf '1' gesetzt werden,
wird das Adressbit –0
als übereinstimmend
behandelt, und das Vergleichsresultat wird in direkt für das Adressbit –1 und das
Adressbit –2
verwendet. In jedem Fall wird daher, wenn das Adressbit –0 '0' oder '1' ist,
eine Fehlerunterscheidung ausgeführt,
die dem Fall äquivalent
ist, wenn die vermerkte Adresse in ein paar Adressbereichen eingestellt
wird.
-
(Vierte Ausführungsform)
-
In
den ersten bis dritten Ausführungsformen der
vorliegenden Erfindung muss die vermerkte Adresse, die auf die Mustererzeugungsschaltung
anzuwenden ist, adäquat
einge stellt werden, da die Tests wiederholt werden, während die
vermerkte Adresse verändert
wird. Jedoch erhöhen
sich in dem Fall, wenn das Testmuster für jede vermerkte Adresse vorbereitet
wird, die Musterarten auf eine unzählige Anzahl. Deshalb ist das
nicht zweckmäßig.
-
Indessen
wird in den ersten bis dritten Ausführungsformen der vorliegenden
Erfindung der identische Test als Operationen des Testobjekt-RAM
von Anfang an wiederholt. In diesem Fall wird der Anfangswert der
Mustererzeugungsschaltung unter Verwendung der Scanverschiebung
bei jedem Test eingegeben. Dadurch kommt es auch zu einem Problem.
Und zwar wird der Inhalt, der in der Scan-FF-Gruppe zum Einstellen
der vermerkten Adresse gehalten wird, die in der Scankette existiert, unterbrochen.
-
In
der dritten Ausführungsform
der vorliegenden Erfindung wird die vermerkte Adresse für den vorhergehenden
Test in dem FF gespeichert, das außerhalb der Scankette vorgesehen
ist, um das oben erläuterte
Problem zu lösen.
Da erstens die vermerkte Adresse für den Anfangstest nicht gespeichert wird,
wird der Test mit einem Wert gestartet, der mit der Scanverschiebung
eingestellt wird, und wird die vermerkte Adresse, die für diesen
Anfangstest verwendet wird, gespeichert. Als Nächstes werden die zweiten und
nachfolgenden Tests ausgeführt,
indem die vermerkte Adresse, die außerhalb der Scankette gespeichert
ist, zurückgesetzt
wird, und die relevante vermerkte Adresse wird während der Tests gespeichert.
Da in dieser Ausführungsform
die Informationen zum Zurücksetzen
oder Nichtzurücksetzen
der vermerkten Adresse verwendet werden müssen, kann der Test aller Adressen
für den
relevanten Testobjekt-RAM mit nur zwei Arten von Testmustern erfolgen.
-
Ein
Beispiel für
die Struktur der RAM-BIST-Schaltung, die den Speichermechanismus
der vermerkten Adresse enthält,
ist zusätzlich
zu der Struktur der zweiten Ausführungsform
gezeigt. Die vermerkte Adresse ist mit dem Zählerwert identisch, der durch
jeden RAM-Test inkrementiert wird; da aber auch der vermerkte Erwartungswert
bei dem RAM-Test identisch wie die vermerkte Adresse behandelt werden
kann, indem er als Adressinformation angesehen wird, die den niedrigstwertigen
Bits der vermerkten Adresse kontinuierlich folgt und der vermerkten
Adresse zugeordnet ist, unter der Annahme, dass der vermerkte Erwartungswert
die Information ist, die der vermerkten Adresse zugeordnet ist,
werden die vermerkte Adresse und der vermerkte Erwartungswert hier
nicht besonders unterschieden.
-
Die
RAM-BIST-Schaltung dieser Ausführungsform
ist, als periphere Schaltungen des Testobjekt-RAM 1121,
aus dem RAM-BIST-Mustererzeugungsblock 1101 gebildet,
worin die Testmustererzeugungsschaltung 1117, die Adressenvergleichsschaltung 1119 und
die Fehlerhalte-/Steuerschaltung 1120 enthalten sind, sowie
aus der Erwartungswertvergleichsschaltung 1131 und dem
Fehlerhalte-FF 1141, die die Fehlerdetektionsschaltung
bilden.
-
In
der Testmustererzeugungsschaltung 1117, die in dem RAM-BIST-Mustererzeugungsblock 1101 enthalten
ist, legt nicht nur die Scan-FF-Gruppe 1111, die mit der
Scankette verbunden ist, die von Scan-In eingegeben wird und an
Scan-Out ausgegeben
wird, den Instruktionscode und das Modussignal fest, die an die
Testmustererzeugungsschaltung 1117 zu liefern sind, sondern
auch die Scan-FF-Gruppe 1112 zur Zählereinstellung legt den Anfangswert
des Zählers
in der Testmustererzeugungsschaltung 1117 fest, und auch
die Scan- FF-Gruppe 1113 zum
Einstellen der vermerkten Adresse und die Scan-FF-Gruppe 1114 zum
Einstellen des Erwartungswertunterscheidungssignals können die
vermerkte Adresse und das Erwartungswertunterscheidungssignal einstellen.
-
Des
Weiteren ist in der vorliegenden Ausführungsform das Scan-FF 1115 zum
Einstellen des Speicher/Rücksetz-Flags
der vermerkten Adresse zum Bestimmen des Speicherns der vermerkten Adresse
für die
Scankette oder des Zurücksetzens der
einst gespeicherten vermerkten Adresse zusätzlich vorgesehen. Ferner ist
in dieser Ausführungsform
eine Nicht-Scan-FF-Gruppe 1116 zum
Speichern der vermerkten Adresse außerhalb der Scankette vorgesehen.
Diese Nicht-Scan-FF-Gruppe 1116 zum Speichern der vermerkten
Adresse ist außerhalb
der Scankette vorgesehen, um einen Einfluss der Scanverschiebung
zu der Zeit der Einstellung jedes RAM-Tests zu eliminieren.
-
12 zeigt
ein Beispiel für
die Struktur der Schaltung des Speichermechanismus der vermerkten
Adresse als vierte Ausführungsform
der vorliegenden Erfindung. Da die vermerkte Adresse bei jedem RAM-Test
verändert
werden muss, wird die relevante vermerkte Adresse um eins (1) inkrementiert, wenn
die vermerkte Adresse gespeichert wird. Anderenfalls kann ein ähnlicher
Effekt mit dem Verfahren erreicht werden, bei dem die vermerkte
Adresse inkrementiert wird, wenn sie zurückgesetzt wird.
-
Der
Speichermechanismus der vermerkten Adresse ist gebildet aus dem
Scan-FF (FA-FF) 1202, 1202, ..., 1204 zum
Einstellen der vermerkten Adresse, das mit der Scankette verbunden
ist, dem Nicht-Scan-FF (FA2-FF) 1207, 1208, 1209 zum
Speichern der vermerkten Adresse, das nicht mit der Scankette verbunden
ist, dem Scan-FF (FAR-FF) 1205 zum Einstellen des Speicher/Rücksetz-Flags der
vermerkten Adresse, der Inkrementierungsschaltung 1206 und
dem INV-(Inverter)-Gatter 1201.
-
Für den RAM-Test
wird die Adresse des ersten Tests in das Scan-FF (FA-FF) 1202, 1202,
..., 1204 zum Einstellen der vermerkten Adresse bei der Scanverschiebung
bei dem ersten Test gesetzt, während
das Scan-FF (FAR-FF) 1205 zum Einstellen des Speicher/Rücksetz-Flags
der vermerkten Adresse auf '0' gesetzt wird. Dadurch
wird in dem Scan-FF (FA-FF) 1202, 1202, ..., 1204 zum
Einstellen der vermerkten Adresse der Einstellwert '0' des Scan-FF (FAR-FF) 1205 zum
Einstellen des Speicher/Rücksetz-Flags
der vermerkten Adresse mit dem INV-(Inverter)-Gatter 1201 invertiert.
Daher wird der IH-(Unterdrückungs)-Anschluss
EINgeschaltet, und dadurch wird auch dann keine Aktualisierung ausgeführt, wenn
der Takt angewendet wird. Hinsichtlich des Nicht-Scan-FF (FA2-FF) 1207, 1208,
..., 1209 zum Speichern der vermerkten Adresse wird ein
Wert des Inhaltes des Scan-FF (FA-FF) 1202, 1202, 1204 zum
Einstellen der vermerkten Adresse, der mit der Inkrementierungsschaltung 1206 um
eins (1) inkrementiert wird, gehalten, wenn der Takt angewendet wird.
-
Bei
dem zweiten und den nachfolgenden Tests wird der Einstellwert des
Scan-FF (FAR-FF) 1205 zum Einstellen des Speicher/Rücksetz-Flags der
vermerkten Adresse zuvor auf '1' gesetzt. Da der Einstellwert '1' des Scan-FF zum Einstellen des Speicher/Rücksetz-Flags
der vermerkten Adresse mit dem INV-(Inverter)-Gatter 1201 in
dem Scan-FF zum Einstellen der vermerkten Adresse (FA-FF) 1202, 1202,
..., 1204 invertiert wird, wird die vermerkte Adresse,
die in dem Nicht-Scan-FF zum Speichern der vermerkten Adresse (FA-FF) 1207, 1208,
..., 1209 gespeichert ist, für das Scan-FF zum Einstellen der vermerkten
Adresse (FA-FF) 1202, 1202, ..., 1204 zurückgesetzt,
wenn der erste Takt angewendet wird.
-
Daher
wird der vermerkte Adresswert, der zuerst der Scanverschiebung unterzogen
wurde, in dieser Zeitlage überschrieben.
Die Daten '0' werden von dem D-Eingang
in das Scan-FF zum Einstellen des Speicher/Rücksetz-Flags der vermerkten
Adresse (FARORR) 1205 geschrieben, wenn der Takt angewendet
wird. Der gewöhnliche
Test wird bei der zweiten und den nachfolgenden Anwendungen des Taktes
gestartet, und die neue vermerkte Adresse wird in dem Nicht-Scan-FF
zum Speichern der vermerkten Adresse (FA2-FF) 1207, 1208,
..., 1209 gespeichert. Hier muss in dem Adressrücksetzzyklus, wenn
das Scan-FF zum Einstellen des Speicher/Rücksetz-Flags der vermerkten
Adresse (FAR-FF) 1205 auf '1' gesetzt
wird, die RAM-BIST-Schaltung gestoppt werden, um nicht zu arbeiten.
-
13 zeigt
ein Beispiel für
den Testablauf in dem Fall, wenn die FMB-Informationen in der RAM-BIST-Schaltung
erfasst werden, wenn die vierte Ausführungsform der vorliegenden
Erfindung zum Einsatz kommt. In dieser Ausführungsform wird zum Vereinfachen
der Erläuterung
die einzelne vermerkte Adresse verwendet.
-
Nach
Beginn des Tests (Schritt S1301) können der Instruktionscode und
das Modussignal mit Scan-In für
die Scankette des RAM-BIST-Mustererzeugungsblocks eingestellt werden
und wird auch der Anfangswert des Zählers in dem RAM-BIST-Mustererzeugungsblock
eingestellt (Schritt S1302). In diesem Fall erfolgt die Initialisierung
durch Einstellen der Rückführungsschleifenschaltung
in der Fehlerunterscheidungsschaltung auf EIN (Schleife = '1') sowie durch Einstellen des Scan-FF
zum Einstellen des Speicher/Rücksetz-Flags
der vermerkten Adresse auf '0' und durch Löschen der
Fehlerinformationen, die in dem Fehlerhalte-FF in der Fehlerunterscheidungsschaltung
gespeichert sind (Schritt S1303).
-
Als
nächster
Schritt wird der Takt, der zum Testen des relevanten RAM ausreicht,
auf den Testobjekt-RAM angewendet (Schritte S1304 bis S1305). Bei
jeder Anwendung des Taktes werden die Schreib- und Leseoperationen
für den
und von dem Testobjekt-RAM mit dem Testmuster ausgeführt, das
in dem RAM-BIST-Mustererzeugungsblock automatisch erzeugt wird,
und die Fehlerunterscheidung für
den relevanten Testobjekt-RAM wird mit der Fehlerunterscheidungsschaltung
ausgeführt.
Nach Vollendung der Anwendung des Taktes, der für den Testobjekt-RAM erforderlich
ist, werden die Fehlerinformationen von jedem Bit in dem Fehlerhalte-FF
in der Fehlerunterscheidungsschaltung gespeichert. Die relevanten
Fehlerinformationen können
für die
externe Schaltung der Testobjekt-LSI unter Verwendung der Scankette
gelesen werden (Schritt S1306).
-
Als
Nächstes
werden der Instruktionscode und das Modussignal mit Scan-In für die Scankette des
RAM-BIST-Mustererzeugungsblocks eingestellt und wird auch der Anfangswert
oder dergleichen des Zählers
in dem RAM-BIST-Mustererzeugungsblock eingestellt (Schritt S1307).
In diesem Fall erfolgt die Initialisierung durch Einstellen der
Rückführungsschleifenschaltung
in der Fehlerunterscheidungsschaltung auf EIN (Schleife = '1'), auch durch Einstellen des Scan-FF
zum Einstellen des Speicher/Rücksetz-Flags
der vermerkten Adresse auf '1' und durch Löschen der
Fehlerinformationen, die in dem Fehlerhalte-FF in der Fehlerunterscheidungsschaltung
gespeichert sind.
-
Als
nächster
Schritt wird der Takt, der zum Testen des relevanten RAM ausreicht,
auf den Testobjekt-RAM angewendet (Schritte S1309 bis S1310). Immer
wenn der Takt angewendet wird, werden die Schreib- und Leseoperationen
für den
und von dem Testobjekt-RAM auf der Basis des Testmusters ausgeführt, das
mit dem RAM-BIST-Mustererzeugungsblock automatisch erzeugt wird,
und wird die Fehlerunterscheidung des relevanten Testobjekt-RAM
mit der Fehlerunterscheidungsschaltung ausgeführt. Nach Vollendung der Anwendung
des Taktes, der für den
Testobjekt-RAM erforderlich ist, werden die Fehlerinformationen
von jedem Bit in dem Fehlerhalte-FF innerhalb der Fehlerunterscheidungsschaltung
gespeichert. Die relevanten Fehlerinformationen werden für die externe
Seite der Testobjekt-LSI unter Verwendung der Scankette gelesen
(Schritt S1306).
-
Als
nächster
Schritt werden die oben erläuterten
Schritte (Schritte S1307 bis S1312) für alle Adressen des Testobjekt-RAM
durch Zurücksetzen der
gespeicherten vermerkten Adresse wiederholt. Danach ist der Test
unter Verwendung der RAM-BIST-Schaltung vollendet (Schritte S1313).
-
Der
Testablauf, für
den die vierte Ausführungsform
ausgelegt ist, unterscheidet sich von dem Testablauf, auch wenn
die FBM-Informationen erfasst werden, bei dem die FBM-Informationen
in der RAM-BIST-Schaltung der Hintergrundtechnik erfasst werden,
und ist dadurch gekennzeichnet, dass die Leseoperation mit der Scanverschiebung
der Fehlerinformationen bei jedem Lesezyklus nicht mehr ausgeführt werden
muss. Deshalb ist die kontinuierliche Anwendung des Taktes möglich, und
der Test kann auch unter der Bedingung ausgeführt werden, die der tatsächlichen
Bedingung des Testobjekt-RAM ähnlich
ist. Bei diesem Testablauf wird der Test wiederholt, während die
vermerkte Adresse nacheinander verändert wird, weil die Fehlerunterscheidung
nur ausgeführt
wird, wenn die besondere vermerkte Adresse gelesen wird, um die
Fehlererzeugungsadresse zu identifizieren. Zuerst wird der Anfangstest durch
Einstellen der vermerkten Adresse mit der Scanverschiebung ausgeführt. Bei
dem zweiten und den nachfolgenden Tests werden die Tests für alle Adressen
des Testobjekt-RAM wiederholt, indem die einst gespeicherte vermerkte
Adresse zurückgesetzt wird.
Die vierte Ausführungsform
der vorliegenden Erfindung kann nämlich dadurch gekennzeichnet sein,
dass Fehlerunterscheidungen aller Adressen in den zweiten Stufen
ausgeführt
werden.
-
Wie
oben erläutert,
kann gemäß einer
Ausführungsform
der vorliegenden Erfindung, da die Fehlerunterscheidung nicht für die Adressen,
außer der
vermerkten Adresse, ausgeführt
wird, wenn der RAM-Test unter Verwendung einer Reihe von Testmustern
ausgeführt
worden ist, falls ein Fehler detektiert wird, die Erzeugung eines
Fehlers in der vorbestimmten vermerkten Adresse leicht unterschieden werden.
-
Da
gemäß einer
Ausführungsform
der vorliegenden Erfindung die vermerkte Adresse ferner unter Verwendung
der Inkrementierungsschaltung eingestellt wird, muss das Testmuster
nicht mehr für
jede vermerkte Adresse vorbereitet werden, und dadurch kann die
Zunahme der Testmuster gesteuert werden.
-
Da
gemäß einer
Ausführungsform
der vorliegenden Erfindung die vermerkte Adresse ferner nicht als
einzelne Adresse definiert ist, sondern als vorbestimmter Adressbereich,
kann dann, falls ein Fehler nach dem Test des relevanten gesamten
Adressbereichs erzeugt wird, die Gesamtanzahl der Male des Tests
gesteuert werden, indem der Rastertest ausgeführt wird, der für die einzelne
Adresse in dem Adressbereich ausgeführt wird, wenn ein Fehler erzeugt
wird.
-
Da
gemäß einer
Ausführungsform
der vorliegenden Erfindung die Fehlerdetektion ferner nicht für den Erwartungswert,
außer
dem vermerkten Erwartungswert, ausgeführt wird, wenn alle RAM-Tests
unter Verwendung einer Reihe von Testmustern ausgeführt werden,
kann die Erzeugung eines Fehlers mit dem vermerkten Erwartungswert
leicht unterschieden werden, wenn ein Fehler detektiert wird.
-
Gemäß einer
Ausführungsform
der vorliegenden Erfindung können
weiterhin die FBM-Informationen während der Hochgeschwindigkeitsoperation
des Testobjekt-RAM mit der zweckmäßigen Anzahl von Testmustern
und der zweckmäßigen Anzahl der
Male des Tests erfasst werden, woraus sich der besondere Effekt
ergibt, dass die Fehleranalyse vereinfacht werden kann. Folglich
kann die vorliegende Erfindung den Effekt bieten, dass die Entwicklungsprozesse
der LSI beschnitten werden können.
-
Weiterhin
sind die Ausführungsformen
und deren Operationen der vorliegenden Erfindung unter Bezugnahme
auf die beiliegenden Zeichnungen eingehend beschrieben worden. Die
zweckmäßigen Ausführungsformen
der vorliegenden Erfindung sind jedoch nicht auf diese begrenzt,
und die vorliegende Erfindung enthält auch verschiedenartige Veränderungen
oder Abwandlungen innerhalb des Umfangs, ohne von ihrem Gegenstand
abzuweichen.
-
Da
ferner die Fachwelt ohne weiteres auf zahlreiche Abwandlungen und
Veränderungen
kommen wird, soll die Erfindung nicht auf die exakte Konstruktion
und die gezeigte und beschriebene Operation begrenzt werden, und
daher fallen alle geeigneten Abwandlungen und Äquivalente, auf die zu rückgegriffen
werden kann, in den Umfang der Erfindung, wie er durch die beigefügten Ansprüche definiert
ist.
-
Diese
Anmeldung beansprucht die Priorität für
JP 2005-08821 , eingereicht am 25.
März 2005.