DE10256487B4 - Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers - Google Patents

Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers Download PDF

Info

Publication number
DE10256487B4
DE10256487B4 DE10256487A DE10256487A DE10256487B4 DE 10256487 B4 DE10256487 B4 DE 10256487B4 DE 10256487 A DE10256487 A DE 10256487A DE 10256487 A DE10256487 A DE 10256487A DE 10256487 B4 DE10256487 B4 DE 10256487B4
Authority
DE
Germany
Prior art keywords
memory
data
redundant
test
ras
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.)
Expired - Fee Related
Application number
DE10256487A
Other languages
English (en)
Other versions
DE10256487A1 (de
Inventor
Mario Di Ronza
Yannick Martelloni
Volker Schöber
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Micron Memory Japan Ltd
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE10256487A priority Critical patent/DE10256487B4/de
Priority to US10/726,990 priority patent/US7237153B2/en
Publication of DE10256487A1 publication Critical patent/DE10256487A1/de
Application granted granted Critical
Publication of DE10256487B4 publication Critical patent/DE10256487B4/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/1208Error catch memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/72Masking faults in memories by using spares or by reconfiguring with optimized replacement algorithms

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

Verfahren zum Testen eines Hauptdatenspeichers (SP) und zum Ermitteln einer Reparaturstrategie an dem Hauptdatenspeicher (SP) unter Verwendung eines integrierten Speichers, welcher aufweist:
– einen Hauptdatenspeicher (SP) mit einer Mehrzahl an Datenspeichereinheiten,
– einen Redundanz-Analysespeicher (RAS),
– erste redundante Speicherbereiche, welche in dem Redundanz-Analysespeicher (RAS) enthalten sind, und
– zweite redundante Speicherbereiche, welche außerhalb des Redundanz-Analysespeichers (RAS) vorgesehen sind, bei welchem Verfahren folgende Schritte ausgeführt werden:
a) Unterteilen des Hauptdatenspeichers (SP) in eine Mehrzahl von Teilbereichen, welche jeweils eine Mehrzahl von Datenspeichereinheiten umfassen,
b) Adressieren einer Datenspeichereinheit eines Teilbereichs, indem die Adresse der Datenspeichereinheit an einen mit dem Hauptdatenspeicher (SP) verbundenen Adressbus (AL) angelegt wird;
c) Anlegen von Eingabetestdaten an einen mit dem Hauptdatenspeicher (SP) verbundenen Datenbus (DL) zum Testen der adressierten Datenspeichereinheit;
d) Auslesen von Ausgabetestdaten aus der adressierten Datenspeichereinheit;
e) Vergleichen der Ausgabetestdaten mit erwarteten Soll-Ausgabetestdaten;
f) Zwischenspeichern der...

Description

  • Die Erfindung betrifft einen integrierten Speicher mit einer Mehrzahl an Speicherzellen, die matrixförmig in einem Speicherzellenfeld angeordnet sind, und ein Verfahren zum Testen eines derartigen integrierten Speichers.
  • Der stark ansteigende Bedarf an Speicherplatz von Anwendungsprogrammen hat in der Vergangenheit dazu geführt, dass die Speichergröße von Halbleiterspeichern rasant angestiegen ist. Mit zunehmender Speichergröße und dem damit einhergehenden erhöhten Integrationsgrad bei der Herstellung von Halbleiterspeichern steigt auch die Wahrscheinlichkeit, dass Speicherzellen des Datenspeichers bzw. Halbleiterspeichers im Fertigungsprozess fehlerhaft hergestellt werden und dadurch nicht funktionstüchtig sind. Um einen hohen Ausschussanteil bei Halbleiterspeichern zu vermeiden, werden die Halbleiterspeicher mit redundanten Speicherbereichen hergestellt. Bei einem aus Zeilen und Spalten aufgebauten Halbleiterspeicher werden hierzu zusätzliche redundante Zeilen und redundante Spalten auf dem Speicherchip angeordnet.
  • Integrierte Schaltungen, insbesondere integrierte Halbleiterspeicher, werden nach der Herstellung einem Testverfahren unterzogen, um das logische und dynamische Verhalten der Schaltung zu testen und dabei einerseits fehlerhafte Schaltungen zu detektieren und andererseits durch Auswerten der Testergebnisse die Leistungsfähigkeit der Schaltung zu prüfen. Bei bekannten Testverfahren werden mittels eines Testautomaten Testmuster generiert, die an die integrierte Schaltung angelegt werden. An den Ausgängen der integrierten Schaltung werden die Antwortmuster durch den Testautomaten ausgelesen und mit Soll-Antwortmustern verglichen. Fehlerfrei ist die integrierte Schaltung dann, wenn die ausgegebenen Antwortmuster mit den Soll-Antwortmustern übereinstimmen. Häufig werden die integrierten Halbleiterspeicher mit BIST-Strukturen (Built-In Self-Test) aufgebaut. Diese BIST-Strukturen weisen eingebaute Selbsttest-Einheiten auf. Dies bedeutet, dass in dem integrierten Halbleiterspeicher eine zusätzliche Logik integriert ist, die Testmuster-Generatoren und Auswerteeinheiten für die Testmuster aufweist. Der Testautomat liefert bei derartigen Ausführungen lediglich ein Taktsignal für die zu testende Schaltung und ermittelt anhand der von den Auswerteeinheiten für die Testmuster ausgelesenen Daten, ob ein fehlerhafter oder fehlerfreier Halbleiterspeicher vorliegt. Integrierte Schaltungen mit Selbsttest-Einheiten weisen in der Regel Speichereinheiten bzw. Speicherregister auf, die die Möglichkeit bieten, Testmuster zu erzeugen (bspw. BILBO-Register (Built-In Logic-Block-Observation), die im Allgemeinen vier Betriebszustände aufweisen). In der Regel wird mit Zählern gearbeitet, um alle Adressen in einer definierten Reihenfolge zu testen. Weiter wird eine kleine Anzahl an Testmustern definiert, die in der Regel gespeichert werden. Die oben genannten Ausführungen beziehen sich auf einen Logiktest.
  • Eine in dem Halbleiterspeicher integrierte Redundanz-Steuerlogik steuert den Zugriff auf den Redundanz-Adressenspeicher sowie auf den Redundanz-Datenspeicher. Der Redundanz-Adressenspeicher weist Adressenspeicher auf, in denen die fehlerhaften Adressen der defekten Speicherzellen des Speicherzellenfeldes des Hauptdatenspeichers gespeichert sind. Da bei einem Ausfall der Stromversorgung die in den Adressenspeichern gespeicherten fehlerhaften Adressen verloren gehen, werden diese beim Testen des Halbleiterspeichers detektierten fehlerhaften Adressen zusätzlich in einen Festwertspeicher fest einprogrammiert. Diese in den Festwertspeicher einprogrammierten Adressen können im Bedarfsfall vom Festwertspeicher wieder in den Redundanz-Adressenspeicher eingeschrieben werden.
  • Wird in einem Testlauf eine fehlerhafte Speicherzelle bzw. Datenspeichereinheit im Speicherzellenfeld des Hauptdatenspeichers erkannt, wird die Fehleradresse der fehlerhaften Speicherzelle in eine Adressenspeichereinheit bzw. ein Adressenspeicherregister des Redundanz-Adressenspeichers eingeschrieben. Im Falle eines Zugriffs auf diese Fehleradresse wird auf die zugeordnete Speicherzelle innerhalb des Redundanz-Datenspeichers und nicht auf die fehlerhafte Speicherzelle innerhalb des Hauptdatenspeichers zugegriffen. Aufgrund dieser Umadressierung ist es bis zu einem gewissen Grad möglich (abhängig von der Anzahl der defekten Speicherzellen und der Größe des Redundanz-Datenspeichers), fehlerhafte Speicherzellen innerhalb des Hauptdatenspeichers durch redundante Speicherzellen im Speicherzellenfeld des Redundanz-Datenspeichers zu ersetzen.
  • Bei Testverfahren sind verschiedene Ausführungen bekannt. Aus der DE 39 24 695 A1 ist ein internes Selbsttest- und Redundanzprogrammierungsverfahren für Speicherschaltkreise bekannt. Beim Einschalten einer Betriebsspannung durch einen internen Selbsttest-Prozessor mit einem Mikroprozessor werden der Speicherschaltkreis geprüft und die Fehleradressen ermittelt. Die ermittelten Fehleradressen werden komprimiert und in einer Registerbank des Selbsttest-Prozessors gespeichert. Aus der Verteilung der Fehleradressen wird die Redundanzstruktur ermittelt und die entsprechenden Redundanz-Bitleitungen und Redundanz-Wortleitungen aktiviert. Bei diesem Verfahren wird somit zunächst die gesamte Anzahl an Fehleradressen des gesamten Speichers ermittelt und erst im Anschluss daran beginnt die Berechnung der Redundanzstrategie. Dies bedeutet, dass eine sehr große Datenmenge gespeichert werden muss, da mittels Fehler erkennender Codes die Positionen der defekten Speicherzellen ermittelt werden und eine komplette Bitmap aller defekten Bits erstellt und gespeichert wird. Ein Nachteil derartiger Testverfahren und Schaltungsanordnungen besteht darin, das durch diese Zweistufigkeit des Testvorgangs viel Zeit zum Testen und Reparieren benötigt wird und daraus auch ein sehr kostenintensives Verfahren resultiert. Weiterhin werden für die Datenmenge der sehr großen Bitmaps sehr große Speichereinheiten benötigt. Ein weiterer Nachteil ergibt sich dadurch, dass mit diesem Verfahren lediglich das Ersetzen von gesamten Wort- und/oder Bitleitungen möglich ist. Ist beispielsweise in einer Zeile mit 256 Speicherzellen lediglich eine Speicherzelle defekt, so wird die komplette Zeile ersetzt und 255 fehlerfreie Speicherzellen verschwendet. Daraus resultiert eine erhebliche Platzverschwendung der zur Verfügung stehenden Fläche des Halbleiterspeichers, der bei derartigen Test- und Reparaturverfahren entsprechend groß ausgeführt werden muss.
  • Weiterhin ist aus der deutschen Offenlegungsschrift DE 101 10 469 A1 ein Test- und Reparaturverfahren sowie ein integrierter Speicher bekannt. Durch das Verfahren können integrierte Speicher repariert werden, die die Testphase beim Hersteller bereits verlassen haben und im laufenden Betrieb eingesetzt werden. Wird im laufenden Betrieb eine fehlerhafte Zeile oder Spalte durch eine Selbsttesteinheit erkannt, generiert die Selbsttesteinheit ein Fehlersignal für diese Zeile oder Spalte und erzeugt abhängig von einem Vergleich des Fehlersignals mit einem mittleren Fehlersignal ein Reparatursignal. Durch Auslösen des Reparatursignals ersetzt eine Selbstreparatureinheit im laufenden Betrieb die fehlerhafte Zeile oder Spalte durch eine redundante Zeile oder redundante Spalte. Mit dem Testverfahren können auch Einzelzellenfehler detektiert werden und mittels einer gesamten Zeile oder einer gesamten Spalte repariert werden. Ein Nachteil besteht darin, dass durch die Fehler erkennenden und Fehler korrigierenden Codes zusätzlich zu den redundanten Zeilen und redundanten Spalten weitere Speicherzellen als Nutzinformationen verloren gehen und darüber hinaus eine Reparatur nur mittels redundanter Zeilen und/oder redundanter Spalten möglich ist. Somit wird auch hier eine sehr hohe Anzahl an fehlerfreien Speicherzellen verschwendet und eine ineffiziente Reparaturstrategie zugrunde gelegt.
  • Des Weiteren ist aus der deutschen Offenlegungsschrift DE 100 02 127 A1 ein Testverfahren und ein Datenspeicher bekannt, bei dem während des Testvorgangs eine Adresse einer als fehlerhaft erkannten Speicherzelle eines Hauptdatenspeichers sofort auf eine zugeordnete Redundanz-Speichereinheit innerhalb eines Redundanz-Datenspeichers umadressiert wird. Die Fehlererkennung und die Umadressierung jeder einzelnen Adresse erfolgt daher unmittelbar aufeinanderfolgend während des Testlaufs und nicht erst, nachdem alle fehlerhaften Adressen detektiert worden sind. Ein Nachteil dieses Verfahrens und dieser Anordnung besteht darin, dass aufgrund der begrenzten Größe der Redundanz-Speichereinheit nur eine relativ geringe Anzahl an defekten Speichereinheiten durch redundante Speichereinheiten ersetzt werden kann und daher ein hoher Ausschuss an nicht vollständig zu reparierenden Hauptspeichern bzw. Datenspeichern resultiert, oder andererseits der Redundanz-Datenspeicher sehr groß sein muss, um eine möglichst hohe Anzahl an defekten Speicherzellen durch redundante Speicherzellen reparieren zu können. Bei dem bekannten Verfahren wird keine spezielle Teststrategie zugrunde gelegt, um das Erkennen der Fehler zu optimieren oder spezielle Kategorien von Fehler einfacher detektieren zu können. Insbesondere spaltenorientierte Fehler sind bei diesem Verfahren ein großes Problem. Ein weiterer Nachteil hierbei besteht darin, dass die defekten Datenspeichereinheiten sofort einzeln repariert werden, wodurch eine effiziente Reparatur im Vergleich zu Verfahren, bei denen zunächst eine Mehrzahl an Defekten detektiert wird und erst dann eine Reparaturstrategie bestimmt wird, im Allgemeinen nur sehr bedingt möglich ist. Darüber hinaus werden zur Reparatur keine redundanten Zeilen und/oder redundanten Spalten zur Verfügung gestellt.
  • Die Druckschrift Haddad, R.; Dahbura, A.; Sharma, A.: „Increased Throughput for the Testing and Repair of RAM's with Redundancy". In: IEEE trans. comput., 1991, Vol. 40, No. 2, Feb. 91, S. 154–166 offenbart Algorithmen zur Berechnung einer auf Rechenzeit optimierten Reparaturstrategie von Datenspeichern mittels redundanter Speicherbereiche.
  • Die Druckschrift DE 101 19 144 C1 offenbart ein Verfahren zum Testen von Speicherbausteinen, in welchen Daten in Zeilen und Spalten gespeichert werden, bei dem Adressen von fehlerhaften Zellen in den Speicherbausteinen an eine externe Testvorrichtung übertragen werden. Dabei werden die Zeilen und Spalten in Unterbereiche aufgeteilt, für die als Zusatzinformation die Anzahl der fehlerhaften Zellen, die in den jeweiligen Unterbereich fallen, übermittelt werden.
  • Die Druckschrift DE 101 09 335 C2 offenbart ein Halbleiterspeicherbauelement mit adressierbaren normalen Speicherzellen und zwei Redundanzeinheiten. Nach einem Fehlertest können fehlerhafte normale Speicherzellen durch adressierbare Redundanzzellen der ersten Redundanzeinheit ersetzt werden. Sollten die Redundanzzellen in der ersten Redundanzeinheit nicht ausreichen, um alle fehlerhaften normalen Speicherzellen umzuadressieren, kann ein Schalter irreversibel programmiert werden, um adressierbare Redundanzzellen aus der zweiten Redundanzspeichereinheit zuzuschalten.
  • Die Druckschrift US 5,588,115 offenbart eine Speichertestvorrichtung zum Testen eines Speichers mit einem Testdatenerzeuger, einem Vergleicher, einem Auffangspeicher sowie Teilbereichsmodulen mit Fehleradressspeichern. In einem Speichertestlauf für einen zu testenden Speicher wird der Speicher in Teilbereiche aufgeteilt, in die Testdaten von einem Testdatenerzeuger eingeschrieben werden, von einem Vergleicher wieder ausgelesen werden und mit Solldaten verglichen werden. Dies geschieht für jeden der Teilbereiche Bit für Bit gleichzeitig. Von dem Vergleicher als fehlerhaft erkannte Bits werden mit einem Fehlerbit markiert, welches von dem Auffangspeicher zwischengespeichert und über eine Mehrzahl von Fehlerbereichsleitungen an die Teilbereichsmodule weitergeleitet wird. Dabei werden Fehlerbits verschiedener Teilbereiche über verschiedene Fehlerbereichsleitungen geleitet und die Adressen der den Fehlerbits zugehörigen Bits innerhalb eines Teilbereiches über die Abfolge der Fehlerbits codiert. Es entsteht daher jeweils eine Fehleradressverteilung in jedem der Fehlerspeicher der Teilbereichsmodule, welche zur Ermittlung einer Reparaturstrategie von einem Mikroprozessor herangezogen wird.
  • Aufgabe der Erfindung ist es, ein Verfahren zum Testen von integrierten Speichern sowie einen derartigen integrierten Speicher zu schaffen, bei dem alle defekten Speicherzellen schnell und zuverlässig erkannt werden können und die Wahrscheinlichkeit, einen defekten integrierten Speicher als Ausschuss aussondern zu müssen, vermindert werden kann. Weiterhin ist es Aufgabe, die Daten der defekten Speichereinheiten mit vermindertem Aufwand bereitstellen zu können.
  • Diese Aufgabe wird durch ein Verfahren, welches die Schritte nach Patentanspruch 1 aufweist, und einen integrierten Speicher, welcher die Merkmale nach Patentanspruch 24 aufweist, gelöst.
  • Bei einem erfindungsgemäßen Verfahren zum Testen eines integrierten Speichers, welcher einen Hauptdatenspeicher mit einer Mehrzahl an Datenspeichereinheiten, einen Redundanz-Analysespeicher mit ersten redundanten Speicherbereichen und zweite redundante Speicherbereiche, welche außerhalb des Redundanz-Analysespeichers vorgesehen sind, aufweist, werden folgende Verfahrensschritte durchgeführt:
    • a) Unterteilen des Hauptdatenspeichers in eine Mehrzahl von Teilbereichen, welche jeweils eine Mehrzahl von Datenspeichereinheiten umfassen;
    • b) Adressieren einer Datenspeichereinheit eines Teilbereichs, indem die Adresse der Datenspeichereinheit an einen mit dem Hauptdatenspeicher verbundenen Adressbus angelegt wird;
    • c) Anlegen von Eingabetestdaten an einen mit dem Hauptdatenspeicher verbundenen Datenbus zum Testen der adressierten Datenspeichereinheit;
    • d) Auslesen von Ausgabetestdaten aus der adressierten Datenspeichereinheit;
    • e) Vergleichen der Ausgabetestdaten mit erwarteten Soll-Ausgabetestdaten;
    • f) Zwischenspeichern der angelegten Adresse, der erwarteten Soll-Ausgabetestdaten und der Ausgabetestdaten in dem Redundanz-Analysespeicher, falls ein Abweichen der Ausgabetestdaten von den Soll-Ausgabetestdaten auftritt;
    • g) Wiederholen der Schritte b) bis f) für weitere Datenspeichereinheiten des Teilbereichs, bis jede der Datenspeichereinheiten der Mehrzahl von Datenspeichereinheiten des Teilbereichs gemäß der Schritte b) bis f) getestet worden ist;
    • h) Ermitteln einer teilbereichsbezogenen Reparaturstrategie auf der Basis der noch verfügbaren redundanten Bereiche und der gemäß der wiederholten Ausführung des Schrittes f) in dem Redundanz-Analysespeicher zwischengespeicherten Informationen;
    • i) Übertragen von gemäß der wiederholten Ausführung des Schrittes f) in dem Redundanz-Analysespeicher zwischengespeicherten Informationen in einen noch verfügbaren redundanten Bereich;
    • j) Löschen der gemäß der wiederholten Ausführung des Schrittes f) in dem Redundanz-Analysespeicher zwischengespeicherten Informationen; und
    • k) Ausführen der Schritte b) bis j) für die weiteren Teilbereiche des Hauptdatenspeichers.
  • Mit dem erfindungsgemäßen Verfahren können zum einen defekte Speicherzellen schnell und zuverlässig detektiert werden und zum anderen kann die Wahrscheinlichkeit, einen defekten integrierten Speicher als Ausschuss aussondern zu müssen, vermin dert werden. Darüber hinaus kann der Redundanz-Analysespeicher in zweifacher Funktion genutzt werden, indem zum einen diagnostizierte Daten bzw. Informationen über defekte Datenspeichereinheiten darin gespeichert werden und ferner auf der Basis der in dem Redundanz-Analysespeicher enthaltenen Informationen eine Reparaturstrategie bestimmt werden kann, wobei dazu erste redundante Bereiche in dem Redundanz-Analyse-speicher und zweite redundante Bereiche außerhalb des Redundanz-Analysespeichers bereitgestellt werden. Es ist bei dem erfindungsgemäßen Verfahren nicht mehr erforderlich, zunächst alle defekten Datenspeichereinheiten eines gesamten Hauptdatenspeichers mittels eines Fehler erkennenden oder eines Fehler korrigierenden Codes zu erweitern oder in einer im Allgemeinen sehr großen Bitmap zu speichern, um erst anschließend eine Reparaturstrategie entwickeln zu können. Mit dem erfindungsgemäßen Verfahren können die Daten der defekten Speichereinheiten sowie deren Verarbeitung und der damit verbundenen Ermittlung einer optimalen, effektiven und effizienten Reparaturstrategie mit reduziertem Aufwand bereitgestellt werden. Das Reparieren eines integrierten Speichers kann mit dem erfindungsgemäßen Verfahren äußerst variabel und veränderbar durchgeführt werden, und auf die Anzahl und/oder die Lage der detektierten defekten Datenspeichereinheiten angepasst werden. Dadurch kann somit ein Verschwenden vieler funktionstüchtiger Datenspeichereinheiten, wie es bei den im Allgemeinen weniger detaillierten und gröber strukturierten bekannten Testverfahren unumgänglich ist, verhindert werden.
  • In einem bevorzugten Ausführungsbeispiel wird der Hauptdatenspeicher zum Testen in mehrere Teilbereiche unterteilt, wobei jeder einzelne Teilbereich beliebig ausgewählt und separat getestet werden kann. Vorteilhaft ist es, wenn die Teilbereiche gleich groß sind. Es kann aber auch bevorzugt vorgesehen sein, diese Teilbereiche mit unterschiedlicher Größe auszubilden. Für jeden Teilbereich wird eine eigene Reparaturstrategie ermittelt. Vorteilhafter Weise wird das Testen der ein zelnen Teilbereiche des Hauptdatenspeichers in iterativer Weise durchgeführt, wobei die Teilbereiche aufeinanderfolgend getestet werden. Der gesamte Hauptdatenspeicher kann somit stückweise repariert werden. Weist bspw. ein Teilbereich bereits derartig viele Defekte auf, dass ein Reparieren mit den vorhandenen Redundanzen nicht mehr möglich ist, kann bereits hier erkannt werden, dass der gesamte Hauptdatenspeicher nicht mehr zu reparieren ist und weitere Teilbereiche nicht mehr getestet werden müssen. Des Weiteren ist das Ermitteln von Reparaturstrategien für kleinere lokale Bereiche des Hauptdatenspeichers weniger aufwändig und einfacher zu konzipieren.
  • Vorteilhafterweise kann vorgesehen sein, dass zumindest ein erster Teilbereich des Hauptdatenspeichers als zweiter redundanter Bereich bereitgestellt wird. Bevorzugt wird der erste Teilbereich zunächst getestet. Nach dem Abschluss des Testens des ersten Teilbereichs werden Nutzinformationen eines als weiteren zu testenden Teilbereichs auf den ersten Teilbereich übertragen. Dadurch kann erreicht werden, dass stets ein Teilbereich des gesamten Hauptdatenspeichers testet, insbesondere wenn die Schaltung keine Betriebsanforderung hat. Ist der erste Teilbereich getestet, wird die Nutzinformation vom nächsten zu testenden Teilbereich des Hauptdatenspeichers auf den ersten Teilbereich kopiert bzw. übertragen und dieser weitere Teilbereich kann getestet werden. Dadurch kann dauerhaft und kontinuierlich eine Reparatur durchgeführt werden, wenn ein Fehler aufgetreten ist (Online Test). Dies ist gewährleistet, indem ein Teilbereich des Hauptdatenspeichers selbst als zweiter redundanter Bereich bereitgestellt wird. Die Redundanz erstreckt sich somit über eine Mehrzahl an Zeilen und/oder eine Mehrzahl an Spalten, die in dem ersten Teilbereich als zweite redundante Bereiche bereitstellbar sind. Es kann dadurch auch vorgesehen sein, dass das Redundanzverfahren bzw. das Testverfahren erkennt, welche Teilbereiche nicht mehr repariert werden können, und welche zugehörigen Adressen ausgeblendet werden können. Die Auswahl der Teilbereiche kann allgemein mit wenigen Bits, insbesondere mit den sogenannten höherwertigen Bits, erfolgen. Gibt es beispielsweise 4 Teilbereiche, in die der Hauptspeicher unterteilt wird, so benötigt man 2 Bits, um diese 4 Teilbereiche eindeutig identifizieren zu können. Werden diese Bits mit einer geeigneten Logik, bspw. mit XOR-Elementen, umprogrammiert, so könnte quasi ein Austauschen der Teilbereiche des Hauptdatenspeichers durchgeführt werden, und gegebenenfalls ein Ersetzen durch redundante Bereiche erfolgen. Dadurch wird die Möglichkeit geschaffen, ein stetiges Testen und Überprüfen durchzuführen und gegebenenfalls zu melden, wenn ein Reparieren nicht mehr möglich ist oder nicht erlaubte Fehler auftreten. Dies ist besonders für sicherheitsrelevante Anwendungen ein Vorteil.
  • Bevorzugt werden die ersten redundanten Bereiche des Redundanz-Analysespeichers zum Reparieren jedes einzelnen Teilbereichs bereitgestellt und verwendet. Die zweiten redundanten Bereiche werden vorzugsweise nur für jeweils einen Teilbereich bereitgestellt. Die ersten redundanten Bereiche können somit in flexibler und variabler Weise einem beliebigen Teilbereich zugeordnet werden.
  • Bevorzugt ist es, wenn die ersten redundanten Bereiche, abhängig von der Anzahl der detektierten Abweichungen der Ausgabetestdaten von den erwarteten Soll-Ausgabetestdaten, vor den zweiten redundanten Bereichen des integrierten Speichers für das Ermitteln der Reparaturstrategie berücksichtigt werden. In gezielter Weise kann dadurch genau festgelegt werden, bei welcher Anzahl an detektierten defekten Datenspeichereinheiten ein Reparaturversuch zunächst mit den ersten redundanten Bereichen erfolgversprechender als mit den zweiten redundanten Bereichen ist.
  • Als besonders vorteilhaft erweist es sich, wenn für die Reparaturstrategie ausschließlich erste redundante Bereiche in dem Redundanz-Analysespeicher berücksichtigt bzw. herangezo gen werden und nicht zweite redundante Bereiche außerhalb des Redundanz-Analysespeichers, falls ein Testlauf beendet ist und die Speicherkapazität des Redundanz-Analysespeichers höchstens maximal mit Informationen der detektierten defekten Datenspeichereinheiten belegt ist. In diesem Fall kann in besonders einfacher Weise eine Reparaturstrategie ermittelt werden. Es wird lediglich auf die ersten redundanten Bereiche zugegriffen, um eine Reparaturstrategie zu bestimmen. Die entsprechenden Informationen sind dabei schon in den ersten redundanten Bereichen eingeschrieben, so dass für das Konzipieren der Reparaturstrategie der Aufwand, minimiert wird.
  • Wird die Speicherkapazität des Redundanz-Analysespeichers durch die Anzahl der detektierten defekten Datenspeichereinheiten, die im Redundanz-Analysespeicher gespeichert werden, überschritten, und ist der erste Testlauf noch nicht abgeschlossen, so werden in vorteilhafter Weise zum Bestimmen der Reparaturstrategie gemäß Schritt g) nachfolgend erläuterte Schritte durchgeführt. Zunächst werden die in dem Redundanz-Analysespeicher zwischengespeicherten Informationen ausgelesen und an eine Recheneinheit übertragen. Nachfolgend wird eine Zwischen-Reparaturstrategie mittels der zweiten redundanten Bereiche ermittelt. Im Anschluss daran wird der Testlauf fortgesetzt, falls der erste Testlauf vor dem Auslesen der Informationen aus dem Redundanz-Analysespeicher unterbrochen wird. In einem weiteren Schritt werden die Schritte a) bis g) wiederholt.
  • In einem bevorzugten Ausführungsbeispiel werden die Informationen aus dem Redundanz-Analysespeicher in die Recheneinheit erst dann ausgelesen, wenn die Anzahl der detektierten Abweichungen zwischen den Ausgabetestdaten und den Soll-Ausgabetestdaten die Speicherkapazität des Redundanz-Analysespeichers übersteigt oder ein erster Testlauf beendet ist.
  • In vorteilhafter Weise werden die Schritte a) bis g) so oft wiederholt, bis während oder nach dem Durchführen von einem der Schritte a) bis g), sowie der vorab beschriebenen Schritte des Auslesens der Informationen, des Ermittelns einer Zwischen-Reparaturstrategie und dem Fortsetzen des Testlaufs, ein nicht mehr reparierbarer integrierter Speicher erkannt wird, oder ein Testlauf beendet ist und die Speicherkapazität des Redundanz-Analysespeichers nach dem Beenden des Testlaufs höchstens maximal mit Informationen weiterer detektierter defekter Datenspeichereinheiten belegt ist.
  • Bevorzugt wird nach dem Beenden des Testlaufs eine endgültige bzw. abschließende Reparaturstrategie mittels einer oder mehrerer vorab bestimmter Zwischen-Reparaturstrategien und erster redundanter Bereiche und/oder gegebenenfalls noch vorhandener zweiter redundanter Bereiche ermittelt. Durch Einbeziehen aller vorab ermittelten Reparaturmöglichkeiten und noch vorhandener Redundanzen kann das Reparieren des integrierten Speichers optimiert werden und eine höchstmögliche Wahrscheinlichkeit für eine vollständige Reparatur bei gleichzeitig minimiertem Aufwand ermöglicht werden. Darüber hinaus kann somit verhindert werden, dass viele funktionstüchtige Datenspeichereinheiten belegt bzw. verschwendet werden.
  • In besonders bevorzugter Weise ist es möglich, dass beim Ermitteln einer zweiten oder weiteren Zwischen-Reparaturstrategie die vorhergehend ermittelten Zwischen-Reparaturstrategien verändert werden können. Es ist ebenso möglich, beim Ermitteln einer für einen Teilbereich abschließenden Reparaturstrategie die vorab bestimmten Zwischen-Reparaturstrategien abzuändern oder gar ganz zu ersetzen. Dies ist ein besonderer Vorteil, da somit bis zum Abschluß des Testlaufs eine gewählte Zwischen-Reparaturstrategie oder generell alle vorab erzeugten Reparaturmöglichkeiten an eine veränderte Struktur bzw. Verteilung von defekten Datenspeichereinheiten im Speicherzellenfeld angepasst werden können. Dadurch kann bis zum Ende des Testlaufs eine hohe Flexibilität des Testverfahrens ermöglicht werden, woraus sich beson ders effiziente Reparaturalternativen erstellen lassen. Daraus resultiert wiederum eine hohe Wahrscheinlichkeit, den Speicher reparieren zu können, ohne dabei eine große Anzahl an funktionstüchtigen Datenspeichereinheiten zu belegen.
  • Es kann vorgesehen sein, dass die in dem Redundanz-Analysespeicher zwischengespeicherten Informationen schrittweise ausgelesen werden. Es kann aber auch vorgesehen sein, dass die in dem Redundanz-Analysespeicher zwischengespeicherten Informationen vollständig ausgelesen werden und erst dann in der Recheneinheit mit dem Ermitteln einer Reparaturstrategie begonnen wird. In vorteilhafter Weise können aus dem Redundanz-Analysespeicher ausgelesene Informationen während des Ermittelns einer Zwischen-Reparaturstrategie oder einer abschließenden Reparaturstrategie wieder in den Redundanz-Analysespeicher geschrieben werden. Die Informationen werden somit wieder zurück übertragen. Dies ist unter Anderem dann von Vorteil, wenn die ersten ausgelesenen Informationen defekte Datenspeichereinheiten charakterisieren, die derart auf dem Speicherzellenfeld verteilt sind, dass nur eine relativ ineffiziente Zwischen-Reparaturstrategie oder abschließende Reparaturstrategie ermittelt werden könnte, und ein Reparieren nur unter einer erheblichen Verschwendung intakter Datenspeichereinheiten erreichbar wäre. Indem ein Zurückschieben in den Redundanz-Analysespeicher durchgeführt wird, und somit ein mögliches Reparieren dieses oder dieser defekten Datenspeichereinheiten zurückgestellt wird, kann die Güte der Reparaturstrategie erhöht werden.
  • In vorteilhafter Weise werden vor dem Ermitteln einer Zwischen-Reparaturstrategie die exakten Defektpositionen in den Ausgabetestdaten bestimmt, indem in der Recheneinheit ein bitweiser Vergleich zwischen den erwarteten Soll-Ausgabetestdaten und den Ausgabetestdaten durchgeführt wird. Dadurch ergibt sich eine genaue Lage der defekten Bits bzw. der defekten Speicherzellen im Speicherzellenfeld des Hauptdatenspeichers und die Auswahl, welche redundanten Bereiche für eine Reparaturstrategie vorzugsweise geeignet erscheinen, kann wesentlich verbessert werden.
  • Vorteilhaft ist es, diejenigen Informationen, mit denen gekennzeichnet wird, welche ersten redundanten Bereiche und/oder welche zweiten redundanten Bereiche für eine Zwischen-Reparaturstrategie oder eine abschließende Reparaturstrategie berücksichtigt werden, in Speicherregister, die mit der Recheneinheit verbunden sind, einzuschreiben.
  • In vorteilhafter Weise wird der erste Testlauf während des Auslesens der Informationen aus dem Redundanz-Analysespeicher und dem Ermitteln einer Zwischen-Reparaturstrategie unterbrochen. Es kann vorgesehen sein, dass nach dem Fortsetzen des ersten Testlaufs ein Test-Algorithmus zum Testen gewählt wird, der unterschiedlich zu dem Test-Algorithmus ist, mit dem das Testen vor dem Unterbrechen des ersten Testlaufs durchgeführt wird. Es kann aber auch vorgesehen sein, dass der Testlauf mit dem gleichen Test-Algorithmus fortgesetzt wird, der vor dem Unterbrechen verwendet wurde. Vorgesehen sein kann auch, dass nach dem Abschluss des ersten Testlaufs ein oder mehrere weitere Testläufe durchgeführt werden, wobei bei jedem weiteren Testlauf unterschiedliche Test-Algorithmen eingesetzt werden. Dadurch kann ein flexibler Testablauf gewährleistet werden, in dem mehrere Test-Algorithmen für einen weiteren Testlauf zur Verfügung gestellt und ausgewählt werden können. Dadurch kann die Wahrscheinlichkeit, defekte Datenspeichereinheiten zu detektieren, erhöht werden. In besonders vorteilhafter Weise können dadurch bitorientierte oder wortorientierte Defekte detektiert werden, indem spezielle Test-Algorithmen eingesetzt werden, die es erlauben, derartig kategorisierte Defekte mit hoher Wahrscheinlichkeit detektieren zu können. Die Effektivität des erfindungsgemäßen Verfahrens kann somit erhöht werden.
  • In bevorzugter Weise wird der erste Testlauf mit der maximalen Taktfrequenz des integrierten Speichers durchgeführt. Da durch kann erreicht werden, dass der integrierte Speicher quasi unter Bedingungen getestet wird, die im späteren Einsatz des integrierten Speichers bestehen. Weiterhin kann dadurch die Wahrscheinlichkeit, defekte Datenspeichereinheiten zu detektieren, erhöht werden.
  • Weiterhin ist es vorteilhaft, dass beim Auslesen der in dem Redundanz-Analysespeicher gespeicherten Informationen diejenige Taktfrequenz, mit der der integrierte Speicher getestet wird, reduziert wird und erst wieder erhöht wird, wenn Schritt g) abgeschlossen ist und der Test gegebenenfalls fortgesetzt wird. Allgemein kann gesagt werden, dass die Taktfrequenz und somit die Testgeschwindigkeit in allen Modulen angepasst werden kann. Eine geringe Taktfrequenz ist geeignet, um mit externer Test-Logik oder weiteren langsamer arbeitenden Modulen zu kommunizieren. Auch der Speichertest kann individuell eingestellt werden. Dadurch kann erreicht werden, dass die Prüfschärfe wesentlich verbessert und erhöht werden kann.
  • In besonders vorteilhafter Weise umfasst die Datenbreite, die ein erster redundanter Bereich aufweist, ein Intervall, das von einem einzigen Bit bis zu einer ein gesamtes Wort bildenden Anzahl an Bits reichen kann, und die Datenbreiten der zweiten redundanten Bereiche umfassen jeweils ein Intervall, das von einem einzigen Bit bis zu einer eine gesamte Zeile oder mehrere Zeilen oder eine gesamte Spalte oder mehrere Spalten bildenden Anzahl an Bits reicht. Dadurch kann gewährleistet werden, dass eine Reparaturstrategie mit möglichst wenig Verlust an funktionstüchtigen Datenspeichereinheiten durchgeführt werden kann. Darüber hinaus ist ein weiterer Vorteil dadurch gegeben, dass jeder redundante Bereich unterteilt werden kann und somit mit variablen und unterschiedlichen Datenbreiten in vielfältiger Weise konzipiert werden kann und der Verteilung der defekten Datenspeichereinheiten bei der erforderliche Reparaturstrategie angepasst werden kann. Ist beispielsweise ein zweiter redundanter Bereich als eine redundante Zeile ausgebildet, so kann diese Zeile komplett für eine Reparaturstrategie herangezogen werden. Es ist aber auch möglich, dass die redundante Zeile halbiert wird, wobei die erste Hälfte für eine möglichst effiziente Behebung eines ersten defekten Bereichs an Datenspeichereinheiten herangezogen wird und die zweite Hälfte für eine möglichst effiziente Behebung weiterer Bereiche an defekten Datenspeichereinheiten für eine Reparaturstrategie herangezogen wird. Des Weiteren kann beispielsweise auch vorgesehen sein, eine der beiden Hälften der halbierten Zeile nochmals zu unterteilen. Dies kann so weit durchgeführt werden, bis ein einziges Bit als redundante Einheit zum Reparieren vorhanden ist. In analoger Weise kann dies für redundante Spalten durchgeführt werden. In gleicher Weise kann dies auch für die ersten redundanten Bereiche des Redundanz-Analysespeichers vorgesehen werden. Daraus ergibt sich eine sehr hohe Vielfalt an unterschiedlichen Datenbreiten der ersten und zweiten redundanten Bereiche, wodurch eine enorm hohe Anzahl an Kombinationsmöglichkeiten von redundanten Bereichen, welche jede für sich noch eine Vielzahl an unterschiedlichen Datenbreiten aufweisen können, erreicht werden kann. Dies ermöglicht es, eine optimale Zwischen-Reparaturstrategie oder auch abschließende Reparaturstrategie zu generieren. Neben den oben genannten Flächenvorteilen können auch Geschwindigkeitsvorteile der Schaltung erzielt werden.
  • Bevorzugt ist es, dass im Anschluss an das Reparieren des integrierten Speichers die Informationen der aktivierten ersten redundanten Bereiche und/oder der zweiten redundanten Bereiche, in einen nicht-flüchtigen Speicher einprogrammiert werden.
  • Besonders vorteilhaft ist es, dass Defekte in ersten redundanten Bereichen und/oder zweiten redundanten Bereichen, welche für eine Zwischen-Reparaturstrategie herangezogen werden, erkannt werden und durch andere erste redundante Bereiche und/oder andere zweite redundante Bereiche ersetzt werden.
  • Dadurch kann ermöglicht werden, dass die für eine Zwischen-Reparaturstrategie oder eine abschließende Reparaturstrategie ausgewählten und benötigten zweiten redundanten Bereiche, bei denen beim Fortsetzen eines Testlaufs oder einem neu gestarteten Testlauf erkannt wird, dass sie selbst defekte Datenspeichereinheiten aufweisen, auch repariert werden können, solange intakte redundante Bereiche im integrierten Speicher zur Verfügung stehen.
  • Es kann vorgesehen sein, das erfindungsgemäße Verfahren mit bekannten Testverfahren zu kombinieren, welche Fehler erkennende Codes und Fehler korrigierende Codes verwenden.
  • Ein erfindungsgemäßer integrierter Speicher weist eine Mehrzahl an Speicherzellen, die in einem Speicherzellenfeld angeordnet sind, auf. Ferner umfasst der integrierte Speicher eine Mehrzahl an Zeilenleitungen und Spaltenleitungen, wobei die Mehrzahl an Zeilenleitungen reguläre und redundante Zeilenleitungen aufweist und die Mehrzahl an Spaltenleitungen reguläre und redundante Spaltenleitungen aufweist. Des Weiteren umfasst der integrierte Speicher eine Selbsttesteinheit, einen Redundanz-Analysespeicher mit ersten redundanten Bereichen, eine Recheneinheit und zweite redundante Bereiche, wobei die zweiten redundanten Bereiche außerhalb des Redundanz-Analysespeichers angeordnet sind. Die Selbsttesteinheit überprüft bei einem Zugriff auf eine Zeilenleitung die Inhalte der ausgewählten Datenspeichereinheiten auf deren Korrektheit. Der Redundanz-Analysespeicher ist mit der Selbsttesteinheit verbunden und speichert die Informationen von Datenspeichereinheiten unkorrekten Inhalts. Die Recheneinheit ist mit der Selbsttesteinheit und dem Redundanz-Analysespeicher verbunden, wobei diese Recheneinheit eine Reparaturstrategie auf Basis der in dem Redundanz-Analysespeicher gespeicherten Informationen ermittelt und gegebenenfalls ein Aktivieren von redundanten Worten im Redundanz-Analysespeicher einleitet. Mittels des erfindungsgemäßen integrierten Speichers kann erreicht werden, dass defekte Da tenspeichereinheiten schnell und zuverlässig erkannt werden und eine sehr effiziente Reparaturstrategie konzipiert werden kann. Der Redundanz-Analysespeicher kann somit in zweifacher Form genutzt werden, indem er zum einen als Speichereinheit dient, in den die Informationen von als Datenspeichereinheiten unkorrekten Inhalts erkannten Datenspeichereinheiten gespeichert werden, und zum anderen quasi als Redundanz-Datenspeicher dient, in dem gegebenenfalls erste redundante Bereiche, welche zum Reparieren des integrierten Speichers ausgewählt und aktiviert werden, abgelegt sind.
  • In vorteilhafter Weise weist der integrierte Speicher eine Algorithmuseinheit zum Auswählen von Test-Algorithmen auf, welche mit der Selbsttesteinheit und der Recheneinheit elektrisch verbunden ist.
  • Das erfindungsgemäße Verfahren zum Testen von integrierten Speichern und der erfindungsgemäße integrierte Speicher ermöglichen ein Detektieren von defekten Datenspeichereinheiten ohne Fehler erkennende bzw. Fehler korrigierende Codes. Es ist nicht mehr erforderlich, zunächst alle defekten Datenspeichereinheiten zu detektieren und eine gesamte Bitmap der fehlerhaften Datenspeichereinheiten zu erstellen, um auf Basis dieser im Allgemeinen sehr großen und speicherkapazitätsintensiven Bitmap eine Reparaturstrategie zu ermitteln. Das Testen wird vorteilhafterweise dadurch erleichtert, dass lediglich Teilbereiche des gesamten Hauptspeichers in iterativer Weise getestet werden und versucht wird, zunächst die Defekte dieser Teilbereiche vollständig beheben zu können.
  • Nachfolgend wird die Erfindung anhand schematischer Zeichnungen näher erläutert. Es zeigen:
  • 1 ein Blockschaltbild eines erfindungsgemäßen integrierten Speichers; und
  • 2 ein Flussdiagramm eines erfindungsgemäßen Verfahrensablaufs.
  • Ein Blockschaltbild eines integrierten Speichers ist in l gezeigt. Der integrierte Speicher weist einen Hauptdatenspeicher SP auf, in dem ein nicht dargestelltes Speicherzellenfeld mit einer Mehrzahl an Speicherzellen, die insbesondere matrixförmig angeordnet sind, angeordnet ist. Der Hauptdatenspeicher SP kann zum Testen in mehrere nicht dargestellte, gleich große oder unterschiedlich große Teilbereiche aufgeteilt werden. Der Hauptdatenspeicher SP ist mit einem ersten Multiplexer MUX1 verbunden, welcher erste Eingänge aufweist, an denen ein externes Adresssignal S1, ein externes Datensignal S2 sowie ein externes Steuersignal S3 anlegbar sind. Des Weiteren weist der integrierte Speicher eine Selbsttesteinheit STE auf, welche als MBIST-Einheit (Memory Built-In-Self-Test-Einheit) ausgeführt ist. Die Selbsttesteinheit STE ist mit dem Hauptdatenspeicher SP und mit einem Redundanz-Analysespeicher RAS verbunden. Ferner umfasst der integrierte Speicher eine Recheneinheit RE, die mit dem Redundanz-Analysespeicher RAS und mit einer Algorithmuseinheit ALE verbunden ist. Die Algorithmuseinheit ALE ist darüber hinaus mit der Selbsttesteinheit STE elektrisch verbunden. Eine Festwertspeichereinheit bzw. Fuse-Box-Einheit FB ist mit dem Hauptdatenspeicher SP und dem Redundanz-Analysespeicher RAS verbunden.
  • Die mit dem ersten Multiplexer MUX1 bzw. dem Hauptdatenspeicher SP verbundene Selbsttesteinheit STE umfasst eine Steuereinheit STE_ST, einen Adressengenerator STE_AG und einen Testdatengenerator STE_TDG. Die Steuereinheit STE_ST ist über eine Steuerleitung SL mit dem Hauptdatenspeicher SP verbunden. Der Adressengenerator STE_AG ist über eine Adressenleitung AL und der Testdatengenerator STE_TDG ist über eine Datenleitung DL mit dem Hauptdatenspeicher SP verbunden. Die Selbsttesteinheit STE weist weiterhin ein Adressenregister AR und ein erstes Datenregister SDR auf. In dem ersten Datenre gister SDR werden die zu einer bestimmten Adresse, welche in dem Adressenregister AR zwischengespeichert ist, zugeordneten Soll-Ausgabetestdaten zwischengespeichert. Weiterhin umfasst die Selbsttesteinheit STE eine Datenvergleichsschaltung VG, mittels derer die in dem Datenregister SDR zwischengespeicherten Soll-Ausgabetestdaten mit den aus dem Hauptdatenspeicher SP ausgelesenen Ausgabetestdaten, welche in einem zweiten Datenregister ADR zwischengespeichert sind, verglichen werden. Die Datenvergleichsschaltung VG ist zu diesem Zweck über Datenleitungen mit dem ersten Datenregister SDR und dem zweiten Datenregister ADR verbunden. In vorteilhafter Weise ist diese Datenvergleichsschaltung VG als EXOR-Schaltung ausgeführt. Die Datenvergleichsschaltung VG weist einen Ausgang auf, der mit einem Eingang eines Flag-Bit-Registers FR0 verbunden ist. Mittels des Flag-Bit-Registers FR0 und des darin gespeicherten Flag-Bits wird eine durch die Datenvergleichsschaltung VG erkannte Abweichung zwischen den Ausgabetestdaten und den erwarteten Soll-Ausgabetestdaten, und damit eine defekte Datenspeichereinheit, angezeigt. Wird ein derartiges Abweichen durch die Datenvergleichsschaltung VG detektiert, und somit eine defekte Datenspeichereinheit innerhalb des Hauptdatenspeichers SP detektiert, wird die in dem Adressenregister AR zwischengespeicherte Adresse der als defekt erkannten Datenspeichereinheit, über eine weitere Adressenleitung in ein erstes Redundanz-Adressenregister AR1 eines Redundanz-Adressenspeichers des Redundanz-Analysespeichers RAS gespeichert. Gleichzeitig werden die in dem ersten Datenregister SDR befindlichen Soll-Ausgabetestdaten in ein erstes Redundanz-Datenspeicher-register SDR1 eines ersten Redundanz-Datenspeichers des Redundanz-Analysespeichers RAS gespeichert. Gleichzeitig werden auch die in dem zweiten Datenregister ADR der Selbsttesteinheit STE enthaltenen Ausgabetestdaten in einem ersten Redundanz-Datenspeicherregister ADR1 eines zweiten Redundanz-Datenspeichers des Redundanz-Analysespeichers RAS gespeichert. Der Redundanz-Adressenspeicher des Redundanz-Analysespeichers RAS umfasst im Ausführungsbeispiel die Redundanz-Adressenspeicherregister AR1, AR2 und AR3. Der erste Redundanz-Datenspeicher des Redundanz-Analysespeichers RAS umfasst die Redundanz-Datenspeicherregister SDR1, SDR2 und SDR3. Ferner umfasst der zweite Redundanz-Datenspeicher des Redundanz-Analysespeichers RAS die Redundanz-Datenspeicherregister ADR1, ADR2 und ADR3. Bei jeder durch die Datenvergleichsschaltung VG erkannten Abweichung der Soll-Ausgabetestdaten von den Ausgabetestdaten werden die entsprechende Adresse, die zugeordneten erwarteten Soll-Ausgabetestdaten sowie die Ausgabetestdaten parallel in den Redundanz-Analysespeicher RAS eingeschoben und gespeichert.
  • Es kann auch vorgesehen sein, dass das Speichern der Adressen der detektierten defekten Datenspeichereinheiten und das Speichern der dieser Adresse zugeordneten Soll-Ausgabetestdaten sowie der Ausgabetestdaten in den Redundanz-Analysespeicher RAS nicht parallel, sondern seriell blockweise getaktet eingespeichert wird. In diesem Fall werden die Flag-Bit-Register FR1, FR2 und FR3, die zugehörigen Redundanz-Adressenspeicherregister AR1, AR2 und AR3, die zugeordneten Redundanz-Datenspeicherregister SDR1, SDR2 und SDR3 des ersten Redundanz-Datenspeichers sowie die Redundanz-Datenspeicherregister ADR1, ADR2 und ADR3 des zweiten Redundanz-Datenspeichers zu einem Datenblock zusammengeschaltet. Dieser Datenblock wird zusätzlich mit den jeweils vorangehenden sowie den nachgeordneten Datenblöcken der Flag-Bit-Register, der Redundanz-Adressenspeicherregister, sowie den Redundanz-Datenspeicherregistern des ersten und des zweiten Redundanz-Datenspeichers zusammengeschaltet. Ferner sind die Ausgänge der Redundanz-Datenspeicherregister SDR1, SDR2 und SDR3 mit einem ersten Eingang eines zweiten Multiplexers MUX2 verbunden. Weiterhin sind die in den jeweiligen Registerbänken als letztes angeordneten Register, im Ausführungsbeispiel das Flag-Bit-Register FR3, das Redundanz-Adressenspeicherregister AR3, das Redundanz-Datenspeicherregister SDR3 und das Redundanz-Datenspeicherregister ADR3 mit der Recheneinheit RE, insbesondere mit den entsprechenden Registern in der Recheneinheit RE, verbunden. Des Weiteren ist das Flag-Bit- Register FR3 mit einem Eingang des Flag-Bit-Registers FR4 verbunden. Dieses Flag-Bit-Register FR4 ist mit einem Eingang der Recheneinheit RE verbunden. Sind die Flag-Bit-Register FR1 bis FR3, die Redundanz-Adressenspeicherregister AR1 bis AR3, die Redundanz-Datenspeicherregister SDR1 bis SDR3 des ersten Redundanz-Datenspeichers und die Redundanz-Datenspeicherregister ADR1 bis ADR3 des zweiten Redundanz-Datenspeichers des Redundanz-Analysespeichers RAS belegt, und wird das im Flag-Bit-Register FR3 gesetzte Flag-Bit nach Auftreten einer weiteren detektierten Abweichung zwischen erwarteten Soll-Ausgabetestdaten und Ausgabetestdaten des Hauptdatenspeichers SP hinaus geschoben, so wird der Recheneinheit RE über das im Flag-Bit-Register FR4 gespeicherte Flag-Bit angezeigt, dass die Speicherkapazität des Redundanz-Analysespeichers RAS überschritten wird und dass die in dem Redundanz-Analysespeicher RAS gespeicherten Informationen in die Recheneinheit RE ausgelesen werden sollen.
  • Des Weiteren ist die Recheneinheit RE über die Signalleitung BDI mit dem Redundanz-Analysespeicher RAS, insbesondere mit dem Redundanz-Datenspeicherregister ADR1, verbunden. Der Redundanz-Analysespeicher RAS ist seinerseits über die Signalleitung BDO, welche an einem Ausgang des Flag-Bit-Registers FR3 anliegt, mit der Recheneinheit RE elektrisch verbunden. Die Signalleitung BDO ist in der Recheneinheit mit einem ersten Eingang eines nicht dargestellten Multiplexers verbunden. Ferner ist die Signalleitung BDO am Eingang eines nicht dargestellten Datenspeicherregisters angeschlossen, in welches die Ausgangstestdaten des Redundanz-Datenspeicherregisters ADR3 geschrieben werden. An einem zweiten Eingang dieses Multiplexers der Recheneinheit RE ist ein Ausgang eines nicht dargestellten Flag-Bit-Registers der Recheneinheit RE angeschlossen. Am Ausgang dieses Multiplexers liegt die Signalleitung BDI an. Dadurch wird sozusagen ein geschlossener Datenkreislauf zwischen dem Redundanz-Analysespeicher RAS und der Recheneinheit RE ausgebildet. Daten und Adressen kön nen somit von dem Redundanz-Analysespeicher RAS in die Recheneinheit RE und zurück geschoben werden.
  • Der zweite Multiplexer MUX2 weist einen zweiten Eingang auf, der mit dem Ausgang des Hauptdatenspeichers SP verbunden ist. Abhängig davon, ob eine an dem Adressbus anliegende Adresse nach erfolgter Reparatur des Hauptdatenspeichers SP in einem Redundanz-Adressenspeicherregister abgelegt ist, oder ob diese angelegte Adresse im Testlauf als korrekt im Hauptdatenspeicher SP erkannt wurde, wird entweder der erste Eingang oder der zweite Eingang des zweiten Multiplexers MUX2 angesteuert, um die jeweils dieser Adresse zugeordneten Daten über den Multiplexer MUX2 durchzuschalten.
  • Die Recheneinheit RE ermittelt anhand der aus dem Redundanz-Analysespeicher RAS ausgelesenen Informationen eine Reparaturstrategie zum Reparieren des Hauptdatenspeichers SP. Die Informationen, welche redundanten Zeilen und/oder redundanten Spalten und/oder redundanten Worte zu einer optimalen Reparaturstrategie beitragen, werden in den Redundanz-Registern RDR1 und RDR2, welche mit der Recheneinheit RE verbunden sind, programmiert. Die Recheneinheit RE ist mit der Algorithmuseinheit ALE über mehrere Signalleitungen verbunden. Über die Signalleitung SWL wird der Algorithmuseinheit ALE ein Signal übermittelt, dass redundante Spalten für eine weitere Reparatur des Hauptdatenspeichers SP nicht mehr zur Verfügung stehen bzw. dass die verfügbaren redundanten Zeilen bei der bisher ermittelten Zwischen-Reparaturstrategie vollständig benötigt wurden. In entsprechender Weise wird über die Signalleitung SBL ein Signal an die Algorithmuseinheit ALE übertragen, mit dem angezeigt wird, dass keine weiteren redundanten Spalten für eine Reparatur zur Verfügung stehen. Über die Signalleitung SR steuert die Recheneinheit RE die Algorithmuseinheit ALE derart, dass beim Auslesen der Informationen aus dem Redundanz-Analysespeicher RAS ein Testlauf unterbrochen werden kann und nach dem Ermitteln einer Reparaturstrategie durch die Recheneinheit RE dieser Testlauf wie der fortgesetzt werden kann. Des Weiteren wird über die Signalleitung SOF ein Signal an die Algorithmuseinheit ALE übertragen, mit dem angezeigt wird, dass die Speicherkapazität des Redundanz-Analyse-speichers RAS belegt ist, oder die mittels der Datenvergleichsschaltung VG detektierten Abweichungen zwischen Ausgabetestdaten des Hauptdatenspeichers SP und Soll-Ausgabe-testdaten, die Speicherkapazität des Redundanz-Analyse-speicher RAS übersteigt. Die Signale der Signalleitungen SWL, SBL, SR und SOF werden an eine Steuereinheit ALE_ST der Algorithmuseinheit ALE übertragen. Über diese Steuereinheit ALE_ST können die unterschiedlichen Test-Algorithmen AL1 bis ALN aktiviert werden und an die Selbsttesteinheit STE angelegt werden.
  • Ein bevorzugtes Ausführungsbeispiel des erfindungsgemäßen Verfahrens zum Testen eines integrierten Speichers wird anhand eines Ablaufdiagramms gemäß 2 erläutert. Nachdem das erfindungsgemäße Verfahren zum Testen des integrierten Speichers gestartet ist, werden die Redundanz-Adressenregister AR1 bis AR3 des Redundanz-Adressenspeichers des Redundanz-Analysespeichers RAS initialisiert bzw. zurückgesetzt. Der Hauptdatenspeicher SP wird in mehrere Teilbereiche unterteilt und einer dieser Teilbereiche wird zum Testen ausgewählt. In dem Verfahrensschritt S1 wird eine Datenspeichereinheit im Datenspeicherfeld dieses Teilbereichs des Hauptdatenspeichers SP adressiert, indem eine in dem Adressengenerator STE_AG der Selbsttesteinheit STE erzeugte Adresse über die Adressenleitung AL an den Hauptdatenspeicher SP angelegt wird. Gleichzeitig werden in dem Testdatengenerator STE_TDG der Selbsttesteinheit STE Eingabetestdaten erzeugt, welche an die zum Testen der mittels der angelegten Adresse ausgewählten Datenspeichereinheit angelegt werden. In einem nachfolgenden Verfahrensschritt S2 werden Ausgabetestdaten aus der adressierten Datenspeichereinheit des Hauptdatenspeichers SP ausgelesen und in das zweite Datenregister ADR der Selbsttesteinheit STE eingeschrieben. Diese Ausgabetestdaten werden von dem zweiten Datenregister ADR an die Datenver gleichsschaltung VG übertragen, welche diese Ausgabetestdaten mit erwarteten Soll-Ausgabetestdaten aus dem ersten Datenregister SDR vergleicht.
  • Wird bei dem Vergleich in der Datenvergleichsschaltung VG eine Abweichung zwischen den Ausgabetestdaten und den erwarteten Soll-Ausgabetestdaten festgestellt, geht das Verfahren zu Schritt S3 über. In diesem Schritt S3 wird zunächst überprüft, ob der Redundanz-Adressenspeicher des Redundanz-Analysespeichers RAS noch freie Redundanz-Adressenregister AR1, AR2, AR3 aufweist. Wird hierbei festgestellt, dass die Redundanz-Adressenregister AR1 bis AR3 noch nicht vollständig belegt sind, wird in einem nachfolgenden Verfahrensschritt S4 die angelegte Adresse aus dem Adressenregister AR der Selbsttesteinheit STE in das erste Redundanz-Adressenregister AR1 in dem Redundanz-Analysespeicher RAS gespeichert. Gleichzeitig werden die erwarteten Soll-Ausgabetestdaten vom Datenregister SDR der Selbsttesteinheit STE in das erste Redundanz-Datenspeicherregister SDR1 des ersten Redundanz-Datenspeichers in dem Redundanz-Analysespeicher RAS gespeichert. Ebenso werden gleichzeitig die in dem zweiten Datenregister ADR zwischengespeicherten Ausgabetestdaten in das erste Redundanz-Datenspeicherregister ADR1 des zweiten Redundanz-Datenspeichers des Redundanz-Analysespeichers RAS gespeichert. Das Speichern der Adressen und der dieser Adresse zugeordneten Daten in die Register AR1, SDR1 und ADR1 erfolgt synchron getaktet. Im Ausführungsbeispiel sind der die Register AR1 bis AR3 umfassende Redundanz-Adressenspeicher, der die Register SDR1 bis SDR3 umfassende erste Redundanz-Datenspeicher, der die Register ADR1 bis ADR3 umfassende zweite Redundanz-Datenspeicher, sowie die Flag-Bit-Register FR1 bis FR4 in vorteilhafter Weise derart ausgebildet, dass in den jeweiligen Registern bereits abgespeicherte Informationen zur nächsten Registereinheit weiter geschoben werden, wenn eine weitere Adresse, ein weiteres Flag-Bit, weitere Ausgabetestdaten und weitere Soll-Ausgabetestdaten von der Selbsttesteinheit STE in den Redundanz-Analysespeicher RAS eingespeichert werden. In bevorzugter Weise erfolgt im Ausführungsbeispiel das Speichern der Adressen, der Ausgabetestdaten und der Soll-Ausgabetestdaten in die entsprechenden Register des Redundanz-Analysespeichers RAS parallel. Es kann aber auch in serieller Weise erfolgen.
  • Sind die entsprechenden Daten (Flag-Bit, Adresse, Ausgabetestdaten, Soll-Ausgabetestdaten) von der Selbsttesteinheit STE in den Redundanz-Analysespeicher RAS eingespeichert, wird der Testlauf mit dem Testen einer weiteren Adresse des gemäß Verfahrensschrit S5 ausgewählten Teilbereichs des Hauptdatenspeichers SP fortgeführt. Die Verfahrensschritte S1 und S2 werden wiederholt. Wird auch für diese weitere Adresse eine Abweichung zwischen den Ausgabetestdaten und den erwarteten Soll-Ausgabetestdaten in der Datenvergleichsschaltung VG detektiert, werden die Schritte S3 bis S5 analog durchgeführt, solange die Adressenregister AR1 bis AR3 Speichermöglichkeiten für eine weitere einzuspeichernde Adresse aufweisen.
  • Wird für diese weitere getestete Adresse im Verfahrensschritt S2 eine Übereinstimmung zwischen den Ausgabetestdaten und den erwarteten Soll-Ausgabetestdaten detektiert, wird das Testverfahren mit dem Schritt S6 fortgesetzt. In diesem Verfahrensschritt S6 wird überprüft, ob ein erster Testlauf vollständig beendet ist, d. h. alle zu testenden Adressen des ausgewählten Teilbereichs des Hauptdatenspeichers SP getestet wurden. Ist der erste Testlauf noch nicht vollständig beendet, wird gemäß Verfahrensschritt S1 eine weitere Datenspeichereinheit des Teilbereichs des Hauptdatenspeichers SP durch Anlegen der zugeordneten Adresse adressiert und durch Anlegen entsprechender Eingabetestdaten getestet.
  • Wird im Verfahrensschritt S6 festgestellt, dass der erste Testlauf und das Testen des ersten Teilbereichs des Hauptdatenspeichers SP vollständig durchgeführt ist, wird dieser erste Teilbereich, wenn möglich, vollständig repariert. Die Reparaturstrategie wird in diesem Fall ausschließlich durch die in dem Redundanz-Analysespeicher RAS bereitgestellten Speicherregister SDR1 bis SDR3 und die Adressenspeicherregister AR1 bis AR3 gebildet. Wird das Testverfahren bzw. der erste Testlauf mit einer individuell einstellbaren Taktfrequenz durchgeführt, die insbesondere der maximalen Taktfrequenz des integrierten Speichers entspricht, so wird in dem Verfahrensschritt S7 zunächst diese individuell eingestellte bevorzugte maximale Taktfrequenz reduziert. Nachfolgend werden die in den belegten Flag-Bit-Registern, den belegten Redundanz-Adressenregistern und den belegten Redundanz-Datenspeicherregistern des ersten und des zweiten Redundanz-Datenspeichers enthaltenen Informationen ausgelesen und diese Adressen und Daten in die Speicherregister RDR1 und RDR2, die mit der Recheneinheit RE verbunden sind, einprogrammiert. Das Auslesen dieser Informationen von dem Redundanz-Analysespeicher in die Register RDR1 und RDR2 kann über die Recheneinheit RE vollzogen werden. Es kann aber auch derart durchgeführt werden, dass die Übertragung dieser Informationen über eine in 1 nicht dargestellte direkte Verbindung zwischen dem Redundanz-Analysespeicher und den Registern RDR1 und RDR2 durchgeführt wird. Anschließend werden die Register des Redundanz-Analysespeichers RAS geleert. Es kann vorgesehen sein, dass der erste nun bereits getestete und vollständig reparierte Teilbereich mit dem gleichen oder einem anderen Test-Algorithmus nochmals getestet wird, um gegebenenfalls beim ersten Testlauf nicht detektierte defekte Datenspeichereinheiten zu erkennen.
  • Gemäß Verfahrensschritt S8 wird im Anschluss daran überprüft, ob der Testlauf des gesamten Hauptdatenspeichers SP beendet ist oder nicht. Sind noch nicht alle Teilbereiche des Hauptdatenspeichers SP vollständig getestet, wird gemäß Verfahrensschritt S9 die Taktfrequenz zum Testen des integrierten Speichers wieder auf die maximale Taktfrequenz, mit der der integrierte Speicher betrieben werden kann, erhöht und gemäß Verfahrensschritt S5 fortgefahren. In Schritt S5 wird zu nächst ein weiterer zu testender Teilbereich des Hauptdatenspeichers SP ausgewählt.
  • Wird während eines Testlaufs im Verfahrensschritt S3 erkannt, dass die Speicherkapazität des Redundanz-Analysespeichers RAS vollständig belegt ist, und Adresse und Daten einer weiteren im Verfahrensschritt S2 als defekt erkannten Datenspeichereinheit nicht mehr in die entsprechenden Register des Redundanz-Analysespeichers RAS eingeschrieben werden können, erfolgt ein Übergang vom Verfahrensschritt S3 zum Verfahrensschritt S10. Im Verfahrensschritt S10 wird der Testlauf zunächst unterbrochen und diese in dem Redundanz-Analysespeicher RAS gespeicherten Informationen in die Recheneinheit RE gelesen. Nachfolgend werden in der Recheneinheit RE die exakten Defektpositionen in den Ausgabetestdaten durch ein bitweises Vergleichen dieser Ausgabetestdaten mit den Soll-Ausgabetestdaten identifiziert. Auf der Basis dieser aus dem Redundanz-Analysespeicher RAS ausgelesenen Informationen bzw. der genau bekannten Defektpositionen in den Ausgabetestdaten wird eine Reparaturstrategie in der Recheneinheit RE bestimmt. Die Reparaturstrategie wird dabei mittels zur Verfügung stehender zweiter redundanter Bereiche, welche im Ausführungsbeispiel als redundante Zeilen oder als redundante Spalten ausgebildet sind, durchgeführt. Abhängig davon wie die Defektpositionen in den Ausgabetestdaten angeordnet sind bzw. welche Speicherzellen in dem zum Testen ausgewählten Teilbereich des Hauptdatenspeichers SP als defekt erkannt wurden, kann die Reparaturstrategie ausschließlich aus redundanten Zeilen oder ausschließlich aus redundanten Spalten konzipiert werden. Abhängig davon welche Redundanzen für die Reparatur zur Verfügung stehen, kann eine optimale Reparaturstrategie auch aus einer Kombination redundanter Zeilen und redundanter Spalten bestimmt werden.
  • Es sei hier angemerkt, dass unter redundanten Worten, welche im Ausführungsbeispiel die ersten redundanten Bereiche darstellen, unter redundanten Zeilen und unter redundanten Spal ten nicht nur Ausführungen an Redundanzen verstanden werden, die die jeweilige maximale Datenbreite dieser jeweiligen Redundanzen kennzeichnen, sondern auch jede beliebige andere mögliche Ausführungsform einer Datenbreite, die aus dem jeweiligen Intervall für die Datenbreiten der jeweiligen Redundanz zur Verfügung stehen und gewählt werden können, zu verstehen sind. Es werden bspw. sowohl mehrere als auch eine in zwei Hälften geteilte oder eine in einzelne Bitpositionen unterteilte redundante Zeile allgemein als redundante Zeile bezeichnet. Logischerweise müssen die beiden Hälften bzw. die einzelnen Bitpositionen jeweils adressiert werden. Die hier als übergeordneter Begriff verwendete Bezeichnung einer redundanten Zeile umfasst somit alle möglichen Datenbreiten, die durch das Intervall für die Datenbreiten vorgegeben ist. Eine redundante Zeile kann somit abhängig von den jeweiligen Defektpositionen eine vielfältig ausgebildete Datenbreite aufweisen, um somit eine optimale Zwischen-Reparaturstrategie ermöglichen zu können. Ebenso ist unter dem Begriff redundanter Zeilen auch eine Mehrzahl an Zeilen zu verstehen, wie sie beispielsweise in einem Teilbereich des Hauptdatenspeichers SP realisiert sein können. In analoger Weise sind die Bezeichnungen redundante Spalten und redundante Worte zu verstehen.
  • Es kann vorgesehen sein, dass aus den Registern des Redundanz-Analysespeicher RAS ausgelesene und an die Recheneinheit RE übertragene Adressen und Daten wieder in den Redundanz-Analysespeicher RAS zurückgeschrieben werden, wenn keine geeignete Redundanz – Zeilen, Spalten – vorliegt, um ein optimales Reparieren der defekten Datenspeichereinheit zu ermöglichen.
  • Nachfolgend werden diese für die Zwischen-Reparaturstrategie verwendeten Redundanzen aktiviert und der erste Testlauf, falls dieser vor dem Auslesen der Informationen aus dem Redundanz-Analysespeicher RAS unterbrochen wurde, fortgesetzt. Die Taktfrequenz zum weiteren Testen, welche vor dem Auslesen der Informationen aus dem Redundanz-Analysespeicher RAS reduziert wurde, wird nun wieder auf die kritische Taktfrequenz des integrierten Speichers erhöht (Schritt S9). Es kann auch hier vorgesehen sein, dass vor dem Fortsetzen des ersten Testlaufs in der Recheneinheit RE überprüft wird, ob alle defekten Speicherzellen mittels der bestimmten Zwischen-Reparaturstrategie repariert werden konnten. Nach dem Fortsetzen des ersten Testlaufs wird das Verfahren mit den bereits beschriebenen Verfahrensschritten solange fortgesetzt, bis entweder der erste Testlauf vollständig beendet ist und der Redundanz-Analysespeicher RAS mit weiteren Informationen defekter Speicherzellen bzw. Datenspeichereinheiten höchstens vollständig gefüllt ist, oder aber der Redundanz-Analysespeicher RAS vor dem Beenden des ersten Testlaufs vollständig mit Informationen defekter Datenspeichereinheiten gefüllt ist und die Adresse sowie die Ausgabetestdaten und die Soll-Ausgabetestdaten einer weiteren, als defekt erkannten Datenspeichereinheit nicht mehr in die entsprechenden Register des Redundanz-Analysespeichers RAS eingespeichert werden können.
  • Im ersten Fall, wenn also der Testlauf eines Testbereichs vollständig beendet ist (wird in Schritt S6 erkannt) und die Register des Redundanz-Analysespeichers RAS höchstens komplett belegt sind, wird gemäß Schritt S10 wiederum zunächst mit dem Auslesen der weiteren in dem Redundanz-Analysespeicher RAS gespeicherten Informationen fortgefahren. Nach dem Identifizieren der exakten Defektpositionen in den Ausgabetestdaten wird die Reparaturstrategie unter Berücksichtigung der vorhergehend bestimmten Zwischen-Reparaturstrategie und gegebenenfalls redundanter Worte und/oder gegebenenfalls noch vorhandener redundanter Zeilen und/oder gegebenenfalls noch vorhandener redundanter Spalten ermittelt. Werden für die Reparatur des Hauptdatenspeichers SP auch redundante Worte verwendet, werden diese in einem nachfolgenden Schritt in den Redundanz-Analysespeicher RAS geschrieben. Nachfolgend werden die zusätzlich zu den bereits aktivierten Redundanzen der Zwischen-Reparaturstrategie gege benenfalls ermittelten redundanten Worte und/oder gegebenenfalls redundanten Zeilen und/oder gegebenenfalls redundanten Spalten aktiviert. Des Weiteren wird dann geprüft, ob der defekte Hauptdatenspeicher SP erfolgreich mittels den Redundanzen repariert werden konnte oder aber ein erfolgreiches Reparieren nicht möglich ist und der Hauptdatenspeicher SP mittels eines Defektsignals als nicht reparierbar charakterisiert wird.
  • Es kann jedoch auch vorgesehen sein, dass in diesem vorstehend erläuterten Fall, in dem ein Testlauf beendet wird und der Redundanz-Analysespeicher RAS, nachdem er während des Testlaufs zumindest einmal ausgelesen wurde (zumindest einmal überfüllt) und beim Beenden des Testlaufs nunmehr höchstens maximal belegt ist, die Reparaturstrategie für die noch in dem Redundanz-Analysespeicher RAS eingeschriebenen Defektinformationen nur mit den im Redundanz-Analysespeicher RAS vorhandenen ersten redundanten Bereichen, repariert wird. Ein Auslesen dieser zuletzt detektierten Defekte (die Anzahl kann maximal der maximalen Speicherkapazität des Redundanz-Analysespeichers RAS entsprechen) in die Recheneinheit RE ist bei dieser Alternative nicht mehr erforderlich.
  • In dem anderen Fall, in dem die Register des Redundanz-Analysespeichers RAS zumindest ein zweites Mal voll sind, Daten einer weiteren als defekt erkannten Datenspeichereinheit nicht mehr in die Register des Redundanz-Analysespeichers RAS gespeichert werden können und der erste Testlauf noch nicht vollständig beendet ist, wird entsprechend den oben genannten Ausführungen verfahren und versucht, mit gegebenenfalls noch vorhandenen redundanten Zeilen und/oder redundanten Spalten eine geeignete und optimale Zwischen-Reparaturstrategie zu erzeugen. Dieses Ermitteln der Zwischen-Reparaturstrategie wird nur dann abgebrochen bzw. der integrierte Speicher als defekt und nicht reparierbar erkannt, wenn bereits alle zur Verfügung stehenden redundanten Zeilen und/oder redundanten Spalten für die Reparaturstrategie verwendet wurden, und zu sätzlich nochmals eine Anzahl an defekten Datenspeichereinheiten detektiert wird, die die Speicherkapazität der Register des Redundanz-Analysespeichers RAS übersteigt. In diesem Falle sind die detektierten defekten Datenspeichereinheiten nicht mehr durch die redundanten Worte in dem Redundanz-Analysespeicher RAS zu reparieren, da die Anzahl der defekten Datenspeichereinheiten die Anzahl der durch den Redundanz-Analysespeicher RAS bereitgestellten redundanten Worte übersteigt.
  • Wird jedoch in Schritt S10 erkannt, dass beim Ermitteln der vorhergehenden Zwischen-Reparaturstrategie nicht alle redundanten Zeilen und/oder redundanten Spalten zum Reparieren benötigt wurden, kann eine weitere Zwischen-Reparaturstrategie mittels der noch vorhandenen redundanten Zeilen und/oder noch vorhandenen redundanten Spalten ermittelt werden. Die vorhergehende Zwischen-Reparaturstrategie kann dabei, falls erforderlich, verändert oder komplett revidiert werden, um die gegenwärtig zu ermittelnde Zwischen-Reparaturstrategie optimal bestimmen zu können. Abhängig davon wieviele weitere defekte Datenspeichereinheiten beim fortgesetzten Testlauf detektiert werden, werden die vorab erläuterten Überprüfungen von noch verfügbaren Redundanzen und Ermittlungen von Zwischen-Reparaturstrategien wiederholt oder beim Erkennen eines nicht mehr reparierbaren integrierten Speichers ein Defektsignal erzeugt.
  • Das Überprüfen von noch vorhandenen redundanten Zeilen und/oder Spalten, die beim Ermitteln einer vorangegangenen Zwischen-Reparaturstrategie möglicherweise nicht benötigt wurden, kann auch dann durchgeführt werden, wenn der Testlauf nach dem Ermitteln einer oder mehrerer Zwischen-Reparaturstrategien beendet ist und eine gesamte Reparaturstrategie quasi mittels den Zwischen-Reparaturstrategien und den gegebenenfalls noch vorhandenen und bereitstellbaren redundanten Zeilen und/oder gegebenenfalls den noch vorhandenen und bereitstellbaren redundanten Spalten und bereitstellbaren red undanten Worten bestimmt wird. Die ersten redundanten Bereiche (redundante Worte des Redundanz-Analysespeichers) werden somit in diesem Fall für die Ermittlung einer endgültigen bzw. abschließenden Reparaturstrategie bereitgestellt, wenn der Testlauf beendet ist, und die nach dem Ermitteln einer oder mehrerer Zwischen-Reparaturstrategien detektierte Anzahl an defekten Datenspeichereinheiten die maximale Speicherkapazität des Redundanz-Analysespeichers RAS nicht überschreitet.
  • Ist mittels der bestimmten gesamten Reparaturstrategie ein vollständiges Reparieren des integrierten Speichers möglich, werden die Adressen und Daten der aktivierten gegebenenfalls redundanten Zeilen und/oder gegebenenfalls redundanten Spalten und/oder redundanten Worte in einen nicht-flüchtigen Speicher FB (1), welcher mit dem Hauptdatenspeicher SP und dem Redundanz-Analysespeicher RAS verbunden ist, einprogrammiert. Es kann auch vorgesehen sein, dass dieser Festwertspeicher FB umprogrammiert werden kann. Daraus ergibt sich die Möglichkeit, zu bereits bekannten Fehler weitere Fehler zu suchen und zu detektieren.
  • Das Verändern oder Revidieren von bereits bestehenden Zwischen-Reparaturstrategien kann in allen Testphasen des Ermittelns weiterer Zwischen-Reparaturstrategien oder abschließender Reparaturstrategien durchgeführt werden.
  • In allen Testphasen kann auch vorgesehen sein, bereits aktivierte und für eine Zwischen-Reparaturstrategie oder eine abschließende Reparaturstrategie benötigte und ausgewählte Redundanzen – erste und zweite redundante Bereiche –, die sich im weiteren Testlauf als defekt erweisen, durch gegebenenfalls noch vorhandene erste und/oder zweite redundante Bereiche zu reparieren.
  • Durch das erfindungsgemäße Verfahren und den erfindungsgemäßen integrierten Speicher, können die defekten Datenspeichereinheiten bzw. Speicherzellen eines Hauptdatenspeichers SP schnell und zuverlässig detektiert werden und darüber hinaus das Speichern und Verwenden großer und speicherkapazitätsintensiver Bitmaps verhindert werden. Insbesondere wird dies dadurch gewährleistet, dass der Redundanz-Analysespeicher zum einen als Speichereinheit für die Adressen und Daten defekter Datenspeichereinheiten eingesetzt wird, und zum anderen als Redundanz-Datenspeicher, mit dem redundante Worte für die Reparatur des integrierten Speichers bzw. des Hauptdatenspeichers SP bereitgestellt werden, eingesetzt wird. Eine Reparaturstrategie kann somit gegebenenfalls mittels redundanter Zeilen, redundanter Spalten und redundanter Worte durchgeführt werden, wodurch sich eine wesentliche Verbesserung der Wahrscheinlichkeit, einen defekten Hauptdatenspeicher SP reparieren zu können, ergibt. Der Redundanz-Analysespeicher RAS kann für alle Teilbereiche des zum Testen unterteilten Hauptdatenspeichers SP als Zwischenspeicher für Defektinformationen und als Redundanz-Datenspeicher verwendet werden, dessen Register ausgelesen und geleert werden können, um weitere Defektinformationen einschreiben zu können. Die gegebenenfalls zum Reparieren herangezogenen ersten redundanten Bereiche des Redundanz-Analysespeichers RAS können abhängig vom bereits absolvierten Test des Hauptdatenspeichers SP in Speicherregister RDR1 und RDR2 einprogrammiert werden. Darüber hinaus ist mittels des erfindungsgemäßen Verfahrens und des erfindungsgemäßen integrierten Speichers ein On-Chip-Testen möglich und der Testlauf kann mit der maximalen Taktfrequenz des integrierten Speichers durchgeführt werden.
  • Es kann auch vorgesehen sein, dass die Recheneinheit RE während des Testlaufs stets aktiviert ist oder erst dann aktiviert wird, wenn der Redundanz-Analysespeicher RAS gefüllt ist und weitere Daten und Adressen defekter Datenspeichereinheiten nicht mehr speichern kann. Mittels des erfindungsgemäßen Verfahrens können auch integrierte Speicher bzw. Hauptdatenspeicher SP getestet werden, die lediglich redundante Zeilen oder lediglich redundante Spalten neben den im Redundanz- Analysespeicher bereitgestellten redundanten Worten für eine mögliche Reparatur aufweisen.
  • Wird während eines Testlaufs ein Unterbrechen des Testlaufs durchgeführt, so kann, nachdem der Testlauf wieder fortgesetzt wird, mit einem Test-Algorithmus weiter getestet werden, der gleich oder unterschiedlich zu dem Test-Algorithmus ist, welcher vor dem Unterbrechen des Testlaufs zum Testen ausgewählt wird. Das Auswählen des Test-Algorithmus wird über die Recheneinheit RE gesteuert und mittels der Steuereinheit ALE_ST der Algorithmuseinheit ALE das Auswählen eines entsprechenden Test-Algorithmus AL1 bis ALN durchgeführt. Besonders vorteilhaft sind hierbei Test-Algorithmen welche kurz sind, da dadurch die Zeit eines Testlaufs reduziert werden kann. Durch das Auswählen unterschiedlicher Test-Algorithmen kann das Auffinden von Zeilenfehlern oder Spaltenfehlern verbessert werden.
  • Um speziell bitorientierte oder wortorientierte Defekte detektieren zu können, kann vorgesehen sein, Test-Algorithmen zu verwenden, mit denen jeweils diese speziellen Defekte besonders gut detektiert werden können.
  • Der Hauptdatenspeicher SP kann als flüchtiger oder als nichtflüchtiger Datenspeicher ausgebildet sein.
  • Es kann vorgesehen sein, dass die Recheneinheit RE im vorgeschlagenen erfindungsgemäßen integrierten Speicher in mehreren Betriebsmodi betrieben wird. In einem ersten Betriebsmodus während einer Testphase kann lediglich vorgesehen sein, einen Selbsttest zu starten, bei dem jedoch keine Reparatur durchgeführt wird. In optionaler Weise kann bei diesem ersten Betriebsmodus eine Diagnose, d. h. ein Vergleich zwischen Ausgabetestdaten und erwarteten Soll-Ausgabetestdaten, durchgeführt werden. In einem zweiten Betriebsmodus während einer Testphase wird die Selbsttesteinheit STE lediglich zur Analyse redundanter Worte eingesetzt. In diesem zweiten Betriebs modus kann der Redundanz-Analysespeicher RAS nur für die Aktivierung redundanter Worte und zur Analyse einer Reparatur verwendet werden. In einem dritten Betriebsmodus während der Testphase, welcher nachfolgend als Redundanz-Aktivierungsmodus bezeichnet wird, wird die Recheneinheit RE derart betrieben, dass eine Reparaturstrategie auf der Basis redundanter Zeilen und/oder redundanter Worte und/oder redundanter Spalten ermittelt wird und darüber hinaus verschiedene Test-Algorithmen für eine optimale Detektion von defekten Datenspeichereinheiten und einer optimalen Ermittlung einer Reparaturstrategie ausgewählt werden können. Dieser Redundanz-Aktivierungsmodus ist der den Ausführungen zu den 1 und 2 zugrunde gelegte Betriebsmodus der Recheneinheit RE.
  • Es kann auch vorgesehen sein, dass der Testlauf auch während des Auslesens der Informationen aus dem Redundanz-Analysespeicher RAS sowie der nachfolgenden Verfahrensabläufe in der Recheneinheit RE weiter läuft und nicht unterbrochen wird.
  • Es kann auch vorgesehen sein, dass der Redundanz-Analysespeicher RAS derart aufgebaut ist, dass Soll-Ausgabetestdaten und Ausgabetestdaten nicht in zwei getrennten Worten gespeichert werden, sondern die Bitfehler gleich durch einen Vergleich gespeichert werden. Dadurch würde bei einem Testlauf der Algorithmus erkennen, dass die Adresse bereits mit Fehlern erkannt wurde. Sind andere Datenspeichereinheiten als beim ersten Vergleich fehlerhaft, könnten sie so auf das Wort mit den Bitfehlern im Redundanz-Analysespeicher RAS addiert werden. Ein Vorteil, der sich dadurch ergibt, ist ein reduzierter Flächenbedarf.
  • Abhängig davon, wie die Defektpositionen in den Ausgabetestdaten angeordnet sind bzw. welche Speicherzellen in dem zum Testen ausgewählten Teilbereich des Hauptdatenspeicher SP als defekt erkannt wurden, kann die Reparaturstrategie somit ausschließlich aus redundanten Zeilen oder ausschließlich aus redundanten Spalten oder ausschließlich aus redundanten Worten konzipiert werden. Abhängig davon welche Redundanzen für die Reparatur zur Verfügung stehen, kann eine optimale Reparaturstrategie auch aus einer Kombination redundanter Zeilen und redundanter Spalten oder aus einer Kombination redundanter Zeilen und redundanter Worte, oder einer Kombination aus redundanten Spalten und redundanten Worten oder aber auch aus einer Kombination von redundanten Zeilen und redundanten Spalten und redundanten Worten bestimmt werden.

Claims (28)

  1. Verfahren zum Testen eines Hauptdatenspeichers (SP) und zum Ermitteln einer Reparaturstrategie an dem Hauptdatenspeicher (SP) unter Verwendung eines integrierten Speichers, welcher aufweist: – einen Hauptdatenspeicher (SP) mit einer Mehrzahl an Datenspeichereinheiten, – einen Redundanz-Analysespeicher (RAS), – erste redundante Speicherbereiche, welche in dem Redundanz-Analysespeicher (RAS) enthalten sind, und – zweite redundante Speicherbereiche, welche außerhalb des Redundanz-Analysespeichers (RAS) vorgesehen sind, bei welchem Verfahren folgende Schritte ausgeführt werden: a) Unterteilen des Hauptdatenspeichers (SP) in eine Mehrzahl von Teilbereichen, welche jeweils eine Mehrzahl von Datenspeichereinheiten umfassen, b) Adressieren einer Datenspeichereinheit eines Teilbereichs, indem die Adresse der Datenspeichereinheit an einen mit dem Hauptdatenspeicher (SP) verbundenen Adressbus (AL) angelegt wird; c) Anlegen von Eingabetestdaten an einen mit dem Hauptdatenspeicher (SP) verbundenen Datenbus (DL) zum Testen der adressierten Datenspeichereinheit; d) Auslesen von Ausgabetestdaten aus der adressierten Datenspeichereinheit; e) Vergleichen der Ausgabetestdaten mit erwarteten Soll-Ausgabetestdaten; f) Zwischenspeichern der angelegten Adresse, der erwarteten Soll-Ausgabetestdaten und der Ausgabetestdaten in dem Redundanz-Analysespeicher (RAS), falls ein Abweichen der Ausgabetestdaten von den Soll-Ausgabetestdaten auftritt; g) Wiederholen der Schritte b) bis f) für weitere Datenspeichereinheiten des Teilbereichs, bis jede der Datenspeichereinheiten der Mehrzahl von Datenspeichereinheiten des Teilbereichs gemäß der Schritte b) bis f) getestet worden ist; h) Ermitteln einer teilbereichsbezogenen Reparaturstrategie auf der Basis der noch verfügbaren redundanten Bereiche und der gemäß der wiederholten Ausführung des Schrittes f) in dem Redundanz-Analysespeicher (RAS) zwischengespeicherten Informationen; i) Übertragen von gemäß der wiederholten Ausführung des Schrittes f) in dem Redundanz-Analysespeicher (RAS) zwischengespeicherten Informationen in einen noch verfügbaren redundanten Bereich; j) Löschen der gemäß der wiederholten Ausführung des Schrittes f) in dem Redundanz-Analysespeicher (RAS) zwischengespeicherten Informationen; und k) Ausführen der Schritte b) bis j) für die weiteren Teilbereiche des Hauptdatenspeichers (SP).
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Hauptdatenspeicher (SP) zum Testen in Teilbereiche aufgeteilt wird, welche separat getestet werden.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass der Hauptdatenspeicher (SP) zum Testen in gleich große oder unterschiedlich große Teilbereiche aufgeteilt wird und für jeden Teilbereich eine Reparaturstrategie ermittelt wird, wobei das Testen des gesamten Hauptdatenspeichers insbesondere in iterativer Weise durchgeführt wird, indem die Teilbereiche nacheinander getestet werden.
  4. Verfahren nach einem der Ansprüche 2 oder 3, dadurch gekennzeichnet, dass die ersten redundanten Bereiche des Redundanz-Analysespeichers (RAS) zum Reparieren jedes Teilbereichs bereitgestellt werden können und die zweiten redundanten Bereiche für jeweils nur einen Teilbereich bereitgestellt werden.
  5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass zumindest ein erster Teilbereich des Hauptdatenspeichers (SP) als zweiter redundanter Bereich bereitgestellt wird.
  6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass der erste Teilbereich zunächst getestet wird und nach Abschluss des Testens des ersten Teilbereichs Nutzinformationen eines als weiteren zu testenden Teilbereichs auf den ersten Teilbereich übertragen wird.
  7. Verfahren nach einem der vorhergehenden Ansprüche dadurch gekennzeichnet, dass die ersten redundanten Bereiche abhängig von der Anzahl der detektierten Abweichungen der Ausgabetestdaten von den erwarteten Soll-Ausgabetestdaten vor den zweiten redundanten Bereichen des integrierten Speichers für das Ermitteln der Reparaturstrategie berücksichtigt werden.
  8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass für die Reparaturstrategie ausschließlich erste redundante Bereiche des Redundanz-Analysespeichers (RAS) berücksichtigt werden, wenn der Testlauf beendet ist und die Speicherkapazität des Redundanz-Analysespeichers (RAS) höchstens maximal mit den Informationen der detektierten defekten Datenspeichereinheiten belegt ist.
  9. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass zum Bestimmen der Reparaturstrategie gemäß Schritt h) folgende Schritte durchgeführt werden, falls die Speicherkapazität des Redundanz-Analysespeichers (RAS) durch die Anzahl der detektierten defekten Datenspeichereinheiten, die im Redundanz-Analysespeicher (RAS) gespeichert werden, überschritten wird, und der erste Testlauf noch nicht abgeschlossen ist: l) Auslesen der in dem Redundanz-Analysespeicher (RAS) zwischengespeicherten Informationen in eine Recheneinheit (RE); m) Ermitteln einer Zwischen-Reparaturstrategie in der Recheneinheit (RE) mittels der zweiten redundanten Bereiche; n) Fortsetzen des ersten Testlaufs, falls der erste Testlauf vor dem Schritt l) unterbrochen wird; und o) Wiederholen der Schritte a) bis n).
  10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass Schritt o) so oft wiederholt wird, – bis während oder nach dem Durchführen von einem der Schritte a) bis n) ein nicht mehr reparierbarer integrierter Speicher erkannt wird, oder – ein Testlauf beendet ist und die Speicherkapazität des Redundanz-Analysespeichers (RAS) nach dem Beenden des Testlaufs höchstens maximal mit Informationen weiterer detektierter defekter Datenspeichereinheiten belegt ist.
  11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, dass nach dem Beenden des Testlaufs eine endgültige Reparaturstrategie mittels der vorab bestimmten Zwischen-Reparaturstrategien und ersten redundanten Bereichen und/oder gegebenenfalls noch vorhandener zweiter redundanter Bereiche ermittelt wird.
  12. Verfahren nach einem der Ansprüche 10 oder 11, dadurch gekennzeichnet, dass beim Ermitteln einer weiteren Zwischen-Reparaturstrategie oder einer endgültigen Reparaturstrategie die vorhergehend ermittelten Zwischen-Reparaturstrategien veränderbar sind.
  13. Verfahren nach einem der Ansprüche 9 bis 12, dadurch gekennzeichnet, dass die in dem Redundanz-Analysespeicher (RAS) zwischengespeicherten Informationen schrittweise oder vollständig ausgelesen und in die Recheneinheit (RE) übertragen werden und während des Ermittelns einer Zwischen-Reparaturstrategie gegebenenfalls von der Recheneinheit (RE) wieder in den Redundanz-Analysespeicher geschrieben werden.
  14. Verfahren nach einem der Ansprüche 9 bis 13, dadurch gekennzeichnet, dass vor dem Ausführen von Schritt m) ein Identifizieren der exakten Defektposition in den Ausgabetestdaten durch ein Vergleichen mit den Soll-Ausgabetestdaten in der Recheneinheit (RE) durchgeführt wird.
  15. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Informationen, welche ersten redundanten Bereiche und/oder welche zweiten redundanten Bereiche für eine Zwischen-Reparaturstrategie oder eine abschließende Reparaturstrategie berücksichtigt werden, in Speicherregister (RDR1, RDR2), die mit der Recheneinheit (RE) verbunden sind, eingeschrieben werden.
  16. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass mehrere Testläufe mit gleichen oder unterschiedlichen Test-Algorithmen (AL1, ..., ALN) durchgeführt werden oder nach dem Unterbrechen eines einzigen Testlaufs ein Test-Algorithmus zum Testen gewählt wird, der gleich oder unterschiedlich zu dem Test-Algorithmus (AL1, ..., ALN) ist, mit dem das Testen vor dem Unterbrechen des ersten Testlaufs durchgeführt wird.
  17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass unterschiedliche Test-Algorithmen (AL1, ..., ALN) zum Erkennen unterschiedlich kategorisierter Defekte, insbesondere bitorientierter Defekte und/oder wortorientierter Defekte, eingesetzt werden.
  18. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der erste Testlauf mit der maximalen Taktfrequenz des integrierten Speichers durchgeführt wird.
  19. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass beim Auslesen der in dem Redundanz-Analysespeicher (RAS) gespeicherten Informationen die Taktfrequenz, mit der der integrierte Speicher getestet wird, verändert wird, insbesondere reduziert wird.
  20. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass – die Datenbreite eines ersten redundanten Bereichs ein Intervall umfasst, welches von einem einzigen Bit bis zu einer ein gesamtes Wort bildenden Anzahl an Bits reicht; und – die Datenbreite eines zweiten redundanten Bereichs ein Intervall umfasst, welches von einem einzigen Bit bis zu einer eine gesamte Zeile oder eine Mehrzahl an Zeilen, oder eine gesamte Spalte oder eine Mehrzahl an gesamten Spalten bildenden Anzahl an Bits reicht.
  21. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass im Anschluss an das Reparieren des integrierten Speichers die Informationen der aktivierten ersten redundanten Bereiche und/oder zweiten redundanten Bereiche in einen nicht-flüchtigen, programmierbaren Speicher (FB) eingeschrieben werden.
  22. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass Defekte in zweiten redundanten Bereichen, welche für eine Zwischen-Reparaturstrategie herangezogen werden, erkannt werden und durch andere zweite redundante Bereiche und/oder erste redundante Bereiche ersetzt werden.
  23. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass das Verfahren mit Testverfahren kombiniert wird, welche Fehler erkennende und Fehler korrigierende Codes verwenden.
  24. Integrierter Speicher zur Durchführung des Verfahrens nach Anspruch 1, mit – einem zu testenden Hauptdatenspeicher (SP), welcher eine Mehrzahl an Datenspeichereinheiten aufweist, die in einem Speicherzellenfeld angeordnet sind, – einer Mehrzahl an Zeilenleitungen und Spaltenleitungen, wobei die Mehrzahl an Zeilenleitungen reguläre und redundante Zeilenleitungen aufweist und die Mehrzahl an Spaltenleitungen reguläre und redundante Spaltenleitungen aufweist, – einer Selbsttesteinheit (STE), die bei einem Zugriff auf eine Zeilenleitung die Inhalte der ausgewählten Datenspeichereinheit auf deren Korrektheit überprüft, – einem wiederbeschreibbaren Redundanz-Analysespeicher (RAS), welcher mit der Selbsttesteinheit (STE) verbunden ist und in den die Informationen über Adressen und Dateninhalte von einer Mehrzahl von defekten Datenspeichereinheiten gespeichert werden, – ersten redundanten Bereichen, die in dem Redundanz-Analysespeicher (RAS) enthalten sind, – zweiten redundanten Bereichen, die außerhalb des Redundanz-Analysespeichers (RAS) angeordnet sind, und – einer Recheneinheit (RE), die mit der Selbsttesteinheit (STE) und dem Redundanz-Analysespeicher (RAS) verbunden ist, wobei mittels der Recheneinheit (RE) eine Reparaturstrategie auf Basis der noch verfügbaren redundanten Bereiche und der in dem Redundanz-Analysespeicher (RAS) gespeicherten Informationen ermittelt wird.
  25. Integrierter Speicher nach Anspruch 24, gekennzeichnet durch eine Algorithmuseinheit (ALE) zum Auswählen von Test-Algorithmen (AL1, ..., ALN), welche mit der Selbsttesteinheit (STE) und der Recheneinheit (RE) elektrisch verbunden ist.
  26. Integrierter Speicher nach einem der Ansprüche 24 oder 25, dadurch gekennzeichnet, dass – die Datenbreite des ersten redundanten Bereichs ein Intervall umfasst, welches von einem einzigen Bit bis zu einer ein gesamtes Wort bildenden Anzahl an Bits reicht; und – die Datenbreite des zweiten redundanten Bereichs ein Intervall umfasst, welches von einem einzigen Bit bis zu einer eine gesamte Zeile oder mehrere gesamte Zeilen, oder eine gesamte Spalte oder eine Mehrzahl an Spalten bildenden Anzahl an Bits reicht.
  27. Integrierter Speicher nach einem der Ansprüche 24 bis 26, dadurch gekennzeichnet, dass der Hauptdatenspeicher (SP) in mehrere Teilbereiche unterteilt ist, und zumindest ein erster Teilbereich als zweiter redundanter Bereich bereitgestellt ist.
  28. Integrierter Speicher nach einem der Ansprüche 24 bis 27, dadurch gekennzeichnet, dass der zweite redundante Bereich als redundante Zeile oder redundante Spalte oder als Teilbereich des Hauptdatenspeichers (SP) ausgebildet ist.
DE10256487A 2002-12-03 2002-12-03 Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers Expired - Fee Related DE10256487B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE10256487A DE10256487B4 (de) 2002-12-03 2002-12-03 Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers
US10/726,990 US7237153B2 (en) 2002-12-03 2003-12-03 Integrated memory and method for testing an integrated memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10256487A DE10256487B4 (de) 2002-12-03 2002-12-03 Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers

Publications (2)

Publication Number Publication Date
DE10256487A1 DE10256487A1 (de) 2004-07-08
DE10256487B4 true DE10256487B4 (de) 2008-12-24

Family

ID=32477419

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10256487A Expired - Fee Related DE10256487B4 (de) 2002-12-03 2002-12-03 Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers

Country Status (2)

Country Link
US (1) US7237153B2 (de)
DE (1) DE10256487B4 (de)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1465204A3 (de) * 2003-02-12 2005-03-30 Infineon Technologies AG Verfahren und MBISR (Memory Built-In Self Repair) zum reparieren eines Speichers
US7509543B2 (en) * 2003-06-17 2009-03-24 Micron Technology, Inc. Circuit and method for error test, recordation, and repair
JP2006286141A (ja) * 2005-04-04 2006-10-19 Toshiba Corp 半導体記憶装置
WO2006134411A1 (en) * 2005-06-13 2006-12-21 Infineon Technologies Ag Built-in-self-test method for a semiconductor memory
US7310278B2 (en) * 2006-05-04 2007-12-18 International Business Machines Corporation Method and apparatus for in-system redundant array repair on integrated circuits
US7940582B2 (en) * 2008-06-06 2011-05-10 Qimonda Ag Integrated circuit that stores defective memory cell addresses
US9482718B2 (en) * 2014-01-13 2016-11-01 Texas Instruments Incorporated Integrated circuit
CN105093020B (zh) * 2015-08-07 2018-08-07 中国空间技术研究院 一种SiP器件抗单粒子效应能力评估方法
DE102018201582A1 (de) * 2018-02-01 2019-08-01 Robert Bosch Gmbh Messmodul für ein Bordnetz und zugehöriges Bordnetz für ein Fahrzeug
US11094392B2 (en) 2018-10-15 2021-08-17 Texas Instruments Incorporated Testing of fault detection circuit
US11862271B2 (en) * 2018-12-17 2024-01-02 Arm Limited Memory testing techniques

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3924695A1 (de) * 1988-08-16 1990-02-22 Dresden Mikroelektronik Internes selbsttest- und redundanzprogrammierungsverfahren fuer speicherschaltkreise und anordnung zur durchfuehrung des verfahrens
US5588115A (en) * 1993-01-29 1996-12-24 Teradyne, Inc. Redundancy analyzer for automatic memory tester
DE10002127A1 (de) * 2000-01-19 2001-08-02 Infineon Technologies Ag Testverfahren für einen Datenspeicher
DE10110469A1 (de) * 2001-03-05 2002-09-26 Infineon Technologies Ag Integrierter Speicher und Verfahren zum Testen und Reparieren desselben
DE10119144C1 (de) * 2001-04-19 2002-10-10 Infineon Technologies Ag Verfahren zum Testen von Halbleiter-Speicherbausteinen
DE10109335C2 (de) * 2001-02-27 2002-12-19 Infineon Technologies Ag Integriertes Halbleiterspeicherbauelement

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2695493B1 (fr) * 1992-09-08 1994-10-07 Thomson Composants Militaires Circuit de mémoire avec redondance.
GB9417269D0 (en) * 1994-08-26 1994-10-19 Inmos Ltd Memory and test method therefor
US6469932B2 (en) * 2001-03-12 2002-10-22 Micron Technology, Inc. Memory with row redundancy
US6731550B2 (en) * 2002-05-31 2004-05-04 Stmicroelectronics, Inc. Redundancy circuit and method for semiconductor memory devices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3924695A1 (de) * 1988-08-16 1990-02-22 Dresden Mikroelektronik Internes selbsttest- und redundanzprogrammierungsverfahren fuer speicherschaltkreise und anordnung zur durchfuehrung des verfahrens
US5588115A (en) * 1993-01-29 1996-12-24 Teradyne, Inc. Redundancy analyzer for automatic memory tester
DE10002127A1 (de) * 2000-01-19 2001-08-02 Infineon Technologies Ag Testverfahren für einen Datenspeicher
DE10109335C2 (de) * 2001-02-27 2002-12-19 Infineon Technologies Ag Integriertes Halbleiterspeicherbauelement
DE10110469A1 (de) * 2001-03-05 2002-09-26 Infineon Technologies Ag Integrierter Speicher und Verfahren zum Testen und Reparieren desselben
DE10119144C1 (de) * 2001-04-19 2002-10-10 Infineon Technologies Ag Verfahren zum Testen von Halbleiter-Speicherbausteinen

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
HADDAD, R.; DAHBURA, A.; SHARMA, A.: Increased Throughput for the Testing and Repair of RAM's with Redundancy. In: IEEE trans.comput., 1991, Vol. 40, No. 2, Feb 91, S. 154-166 *

Also Published As

Publication number Publication date
US7237153B2 (en) 2007-06-26
DE10256487A1 (de) 2004-07-08
US20040153925A1 (en) 2004-08-05

Similar Documents

Publication Publication Date Title
EP1124232B1 (de) Integrierter Halbleiterspeicher mit redundanter Einheit von Speicherzellen
DE102004021267A1 (de) Verfahren zum Testen eines Speicherbausteins und Prüfanordnung
DE3876459T2 (de) Speicher und deren pruefung.
DE10206689B4 (de) Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers
DE10256487B4 (de) Integrierter Speicher und Verfahren zum Testen eines integrierten Speichers
EP2100308B1 (de) Verfahren und halbleiterspeicher mit einer einrichtung zur erkennung von adressierungsfehlern
DE19930169B4 (de) Testeinrichtung und Verfahren zum Prüfen eines Speichers
DE102004020875B4 (de) Verfahren und Vorrichtung zum Maskieren bekannter Ausfälle während Speichertestauslesungen
DE10229802B3 (de) Testschaltung und Verfahren zum Testen einer integrierten Speicherschaltung
DE19963689A1 (de) Schaltungsanordnung eines integrierten Halbleiterspeichers zum Speichern von Adressen fehlerhafter Speicherzellen
DE102005011893B3 (de) Halbleiterspeicherbauelement und Verfahren zum Prüfen von Halbleiterspeicherbauelementen mit eingeschränktem Speicherbereich (Partial-Good-Memorys)
EP1055238B1 (de) Testschaltung und verfahren zum prüfen einer digitalen halbleiter-schaltungsanordnung
DE10292320T5 (de) Verfahren und Vorrichtung zum Analysieren und Reparieren von Speicher
DE10229164B4 (de) Speicherbaustein mit einem Datengenerator und einer Testlogik und Verfahren zum Testen von Speicherzellen eines Speicherbausteins
DE10331068A1 (de) Verfahren zum Auslesen von Fehlerinformationen aus einem integrierten Baustein und integrierter Speicherbaustein
DE112007003117T5 (de) Neue Implementierung der Spaltenredundanz für einen Flash-Speicher mit einem hohen Schreibparallelismus
DE19924153B4 (de) Schaltungsanordnung zur Reparatur eines Halbleiterspeichers
DE10016719A1 (de) Integrierter Speicher und Verfahren zur Funktionsprüfung von Speicherzellen eines integrierten Speichers
DE10311373B4 (de) Integrierter Speicher mit redundanten Einheiten von Speicherzellen und Verfahren zum Test eines integrierten Speichers
DE10002127B4 (de) Testverfahren für einen Datenspeicher
WO1988009554A1 (en) Process and arrangement for self-checking of a word-oriented ram
DE102016100630B4 (de) Speichervorrichtung und Verfahren zum Testen einer Speichervorrichtung
DE60208376T2 (de) Verfahren zum Speichern von Fehlern einer Speichervorrichtung in einem Diagnosefeld mit minimaler Speicherkapazität
DE10341555B4 (de) Topographiekorrektur zum Testen redundanter Arrayelemente
DE112004002723T5 (de) Prüfvorrichtung und -verfahren für eine Halbleitervorrichtung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: ELPIDA MEMORY, INC., TOKYO, JP

8328 Change in the person/name/address of the agent

Representative=s name: MEISSNER, BOLTE & PARTNER GBR, 80538 MUENCHEN

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20110701