DE69018563T2 - Speicherselbsttest. - Google Patents

Speicherselbsttest.

Info

Publication number
DE69018563T2
DE69018563T2 DE69018563T DE69018563T DE69018563T2 DE 69018563 T2 DE69018563 T2 DE 69018563T2 DE 69018563 T DE69018563 T DE 69018563T DE 69018563 T DE69018563 T DE 69018563T DE 69018563 T2 DE69018563 T2 DE 69018563T2
Authority
DE
Germany
Prior art keywords
memory
data
pattern generator
random pattern
address
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
DE69018563T
Other languages
English (en)
Other versions
DE69018563D1 (de
Inventor
George Edwin Hack
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69018563D1 publication Critical patent/DE69018563D1/de
Publication of DE69018563T2 publication Critical patent/DE69018563T2/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/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/20Address generation devices; Devices for accessing memories, e.g. details of addressing circuits using counters or linear-feedback shift registers [LFSR]
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/31813Test pattern generators
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318385Random or pseudo-random test pattern

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

  • Diese Erfindung bezieht sich auf ein System und ein Verfahren zum Selbsttest von Speicherschaltkreisen.
  • Zahlreiche Verfahren wurden zum Testen von integrierten Schaltkreisen entwickelt. Normalerweise findet eine Black-Box- Technik Anwendung. Bei dieser Technik wird ein Schaltkreis mit einem deterministischen Triggerimpuls bereitgestellt, indem dadurch eine Antwort von dem Schaltkreis erzeugt wird, die mit einer bekannten, erwarteten Ausgabe verglichen wird. Anhand des Vergleichs wird der Schaltkreis einfach als gut oder als fehlerhaft definiert. Probleme in der Vergangenheit beim Testen von integrierten Schaltkreisen waren die umfangreichen Prüfdaten und langen Prüfzeiten.
  • Selbsttests beziehen sich auf das Vorhandensein von Testschaltkreisen auf einer Komponente, welche die zu prüfenden Schaltkreise enthalten. Die Komponente kann eine Karte, Halbleiterscheibe oder ein integrierter Schaltkreischip sein. So kann der Selbsttest mit Testschaltkreisen durchgeführt werden, die in den zu den prüfenden Schaltkreisen integriert sind (d.h. On-Chip) oder sich außerhalb der Komponente befinden (d.h. Off-Chip). Die Wahl zwischen dem On-Chip-Test und dem Off-chip-Test erfordert es, zwei konkurrierende Faktoren abzuwägen. Der Off-Chip-Test ist vorteilhaft, da bei der Herstellung von jedem integrierten Schaltkreischip die Testschaltkreise nicht reproduziert werden müssen. Der On-Chip-Test wird aufgrund der Nähe zu dem zu prüfenden Schaltkreis als vorteilhaft angesehen, wodurch der Test mit deutlich höheren Geschwindigkeiten als bei dem Off-Chip-Test durchgeführt werden kann und dazu wenig mehr als eine externe Stromversorgungseinheit benötigt. In jüngster Zeit fiel die Wahl zugunsten des On-Chip-Tests aus, da durch den Anstieg an verfügbarer, integrierter Schaltkreisdichte weniger Wert auf den tatsächlichen Ort des Chips gelegt wird und mehr Wert auf die Prüfgeschwindigkeit gelegt wird.
  • Der On-Chip-Schaltkreistest kann in zwei Bereiche aufgeteilt werden: den logischen Schaltkreistest und den Speicherschaltkreistest. Für beide Arten des On-Chip-Tests ist es wünschenswert, alle Speicherpunkte sowohl in dem logischen Null- als auch in dem Einsstatus testen zu können. Aufgrund des jüngsten Anstiegs an On-Chip-Schaltkreisdichte wird es wahrscheinlicher, daß integrierte Schaltkreischips sowohl logische Schaltkreise als auch Speicherschaltkreise enthalten. Somit gibt es einen wachsenden Bedarf, sowohl logische Schaltkreise als auch Speicherschaltkreise auf dem gleichen Chip testen zu können. Die bekanntesten Schaltkreisprüftechniken sind jedoch lediglich auf das Testen von logischen Schaltkreisen ausgerichtet.
  • Das Problem, das sich durch das Testen von logischen Schaltkreisen stellt, ist die Zugänglichkeit und die Erkennbarkeit von Speicherelementen (Latches) in logischen Schaltkreisen. Diese Speicherelemente sind normalerweise so verflochten, daß Daten in ein besonderes Speicherelement eines logischen Schaltkreises unabhängig von anderen Speicherelementen nicht eingegeben werden können. Die Steuerung der unabhängigen Speicherelemente des logischen Schaltkreises ist für den logischen Schaltkreistest erforderlich, so daß ein bekannter Triggerimpuls an die logischen Schaltkreise geliefert werden kann, und die Ergebnisse beobachtet werden können. Dieses Problem wurde durch pegelempfindliche Abtasttechniken (LSSD) gelöst. LSSD- Techniken sind bekannt und werden zum Beispiel in den US Patentschriften 3.761,695 oder 3,783,254 beschrieben.
  • Der LSSD-Test wird ausgeführt, indem eine Schieberegisterfähigkeit an jeden der logischen Systemlatches abgegeben wird und indem diese Schieberegisterlatches (SRL's) während eines Ein-/Ausgabemodus zugänglich werden. Der LSSD-Test erfordert es, daß die logischen Schaltkreise in zwei getrennten Modi arbeiten. Im ersten Modus werden bekannte Prüfdaten seriell eingegeben und in die entsprechenden SRL-Stellen verschoben. Mit der Initialisierung der SRL in einen bekannten Status beginnt die Funktion des logischen Schaltkreises im zweiten Modus. Bekannte Prüfdaten werden so über die logischen Schaltkreise verbreitet, um als Triggerimpulse auf das System zu wirken, wobei die Ergebnisse in den SRL's erfaßt werden. Nach Rückkehr in den ursprünglichen Funktionsmodus kann der Status der SRL's ausgegeben und mit bekannten Daten, welche vorhanden sind, wenn der Schaltkreis korrekt funktioniert, verglichen werden.
  • Der LSSD-Test für logische Schaltkreise ist praktisch, da es dieser ermöglicht, sequentielle Logik als kombinatorische Logik zu testen. In den letzten Jahren wurde jedoch die "deterministische" Schaltkreisprüfung ständig teurer. Die Schaltkreisdichte stieg so rasch an, daß es nicht länger machbar ist, Ein-/Ausgabe (d.h. Zugänglichkeit und Erkennbarkeit) für jedes logische Speicherelemente vorzusehen. Aus dem gleichen Grund ist diese Technik für Speichertests ebenfalls unpraktisch. Somit sind effizientere Techniken zur Prüfung von Schaltkreisen erforderlich.
  • Eine weitere bekannte Technik zur Schaltkreisprüfung ist die Signaturanalyse. Bekannte Prüfdatenmuster werden wieder verwendet, um logische Schaltkreise oder Speicherschaltkreise zu stimulieren. Daten, die von den stimulierten Schaltkreisen ausgegeben werden, werden anschließend einem logischen Schaltkreis zugeführt, welcher die Daten in einer Datensignatur komprimiert. Die Datensignatur wird dann mit der Datensignatur verglichen, aus der hervorgeht, daß die logischen Schaltkreise oder Speicherschaltkreise korrekt funktionieren. Beispiele für die Signaturanalyse finden sich in den US Patentschriften 4,597,080 und 4,601,034.
  • Der Vorteil der Signaturanalyse gegenüber der einfachen deterministischen Analyse liegt in der Kompression der ausgegebenen Prüfdaten. Das Speichern von Prüfdaten für jede ausgegebene Antwort ist nicht länger erforderlich, wodurch die Prüfgerätekomplexität und das Prüfdatenvolumen reduziert werden. Obwohl diese Einrichtung ebenfalls die Möglichkeit ausschließt, die genaue Stelle eines Schaltkreisfehlers einfach bestimmen zu können, ist dies irrelevant, da es aufgrund der hohen Schaltkreisdichte und der preisgünstigen, integrierten Schaltkreischips unpraktisch wäre, einen erkannten Fehler reparieren zu wollen. Stattdessen wird ein ausgefallener Chip durch einen neuen ersetzt.
  • Trotz der genannten Vorteile ist die Signaturanalyse keine ausreichend effiziente Technik, um in der heutigen Zeit die Prüfung von Schaltkreisdichten durchführen zu können. Große Mengen von Schaltkreisen sind noch erforderlich, um hochdichte logische Schaltkreise und Speicherschaltkreise zu initialisieren. Neueste Techniken zum Prüfen von logischen Schaltkreisen werden in den US Patentschriften 4,513,418 und 4,519,078 beschrieben. Diese Techniken verwenden einen Zufallsmustergenerator, der ein lineares Rückführungs-Schieberegister enthält und mit den bekannten, erfaßten Daten (nicht Dauernullen) bereitgestellt wird, um einen Satz von Datenmustern zur Prüfung der logischen LSSD-Schaltkreise zu verwendenn. Ein Zyklus eines Zufallsmustergenerators wird hier als Zeitperiode definiert, die mit der Erfassung beginnt und endet, wenn die erfaßten Daten erneut in dem Schieberegister erscheinen. Die effiziente Erzeugung von Speicheradressen, welche eine Initialisierung erfordern, ist ein besonderes Problem, das bisher mit diesen Techniken nicht gelöst wurde. Ein Zufallsmustergenerator, der lediglich die gleiche Anzahl von Stufen hat wie Adreßleitungen zur Speicheradressierung erforderlich sind, wird zyklisch nicht alle Speicheradressen durchlaufen. Das (die) exklusive(n) ODER Gate(s) in der Rückführungsschleife empfangen zum Beispiel zwangsläufig eine logische Eins in der Anfangsstufe des Schieberegisters und senden diese zurück, wodurch die Erzeugung der Speicheradresse, die aus Dauernullen besteht, verhindert wird. Das ist in dem Sinn gut, daß das Vorhandensein von Dauernullen in dem Schieberegister den Zufallsmustergenerator veranlassen würde, den Dauernullstatus zu wiederholen, weil die Rückführungsschleife des Exclusive-OR- Gates niemals etwas anderes als zusätzliche Nullen erzeugen würde. Die Dauernulladresse muß jedoch noch zum kompletten Test erzeugt werden. Somit ist ein einfaches System und Verfahren zur Erzeugung der Speicheradresse erforderlich, die aus Dauernullen besteht.
  • Die Unfähigkeit von linearen Rückführungs-Schieberegistern, Muster mit Dauernullstatus zu erzeugen, wurde erkannt. Eine Veröffentlichung empfiehlt lediglich die Änderung des Schieberegisters ohne weitere Spezifikationen. McCluskey, E.J., "Built-In Self-Test Techniques", IEEE Design and Test, April 1985, pp. 21-28. Eine weitere Veröffentlichung schlägt die Änderung der vorhandenen Stufen oder Rückführungsschleife des Schieberegisters vor, um den Dauernullstatus zu erzeugen. Wang, L. and Mccluskey, E.J., "Feedback Shift Registers For Self-Testing Circuits", VLSI Systems Design, Dec., 1986, pp. 50-58 und McCluskey, E.J. and Bozorgui-Nesbat, S., "Design for Autonomous Test", IEEE Transactions on Computers, Vol. c-30, No. 11, November 1981, pp. 866-875. Die vorgeschlagenen Änderungen machen das Schieberegister nicht-linear oder die Rückführungsschleife komplexer als ein einfaches Exclusive-OR- Gate. Somit lösen diese Veröffentlichungen nicht die vorgenannten Probleme.
  • Nur im Hinblick auf den Logiktest wurde vorgeschlagen, ein lineares Rückführungs-Schieberegister um eine Stufe zu ergänzen, damit ein Dauernull-Ausgabefenster berücksichtigt werden kann. Bardell, P.H. and McAnney, W.H., "Pseudorandom Arrays for Built-Tn Tests", IEEE Transactions on Computers, Vol. c- 35, No. 7, July 1986, pp. 653-58. Das Ausgabefenster ist eine Matrix mit Daten, dessen Reihen von den Daten gebildet werden, welche in einer der Stufen des Schieberegisters zu unterschiedlichen Zeiten während des Datenmusters vorhanden waren. Die Matrix wird jedoch ineffizient erzeugt, indem ein kleiner Teil der vorhandenen Stufen des Schieberegisters verwendet wird. Das ist, weil der Vorschlag auf die Erzeugung des Dauernullstatus in der gesamten Matrix ausgerichtet ist und nicht auf die Erzeugung eines Dauernullstatus im Schieberegister. Die Anzahl von Stufen in dem Schieberegister entspricht nicht der Anzahl von Leitungen, die zur Adressierung erforderlich sind, und wird nur um einen komplexen logischen Schaltkreis zur Eingabe von Daten aus dem Schieberegister in die Matrix reduziert. Außerdem macht es die Komplexität des logischen Schaltkreises schwierig, an eine besondere Speichergröße angepaßt zu werden.
  • Die einfache Erzeugung von Allspeicheradressen für einen On- Chip-Speicherselbsttest wird in der US Patentanmeldung mit der Seriennummer 187,708 ("Memory Self-Test") angegangen, welche Artikel 54(3), Dokument EP-A-0 340 895, entspricht. Eine Konfiguration eines Zufallsmustergenerators enthält ein lineares Rückführungs-Schieberegister mit wenigstens einer Stufe mehr als Adreßleitungen, die zur Adressierung des Speichers erforderlich sind. Die Daten aus den zusätzlichen Stufen des Zufallsmustergenerators werden nicht benutzt, insoweit als die Speicheradressierung betroffen ist. Die Konzeption des Zufallsmustergenerators basiert auf einem primitiven Polynom. Ein solcher Zufallsmustergenerator ermöglicht, daß zyklisch alle möglichen Kombinationen von Prüfdatenmusterlisten für jede Speicheradresse in den Speicherschaltkreisen durchlaufen werden, einschließlich der Adresse der Dauernullen. Die Dauernulladresse wird berücksichtigt, wenn der Zufallsmustergenerator Dauernullen erzeugt, ausgenommen eine logische Eins in wenigstens einer der zusätzlichen Stufen des Schieberegisters. Erschöpfende Erfassung von Speicheradressen kann ebenfalls durch Verwendung von nicht-linearen Konfigurationen oder reversiblen deBruijn Zählern durchgeführt werden.
  • Die Erzeugung jeder möglichen Speicheradresse erlaubt es, zu bestimmen, ob jeder Speicherplatz fähig ist, beide Speicherstatus auszuführen. Dies wird als "Funktions"-Test bezeichnet. Trotz des Funktionstests ist ein weiterer Bedarf vorhanden, um zu überprüfen, daß es keine Interaktion zwischen physikalisch aneinandergrenzenden Speicherelementen gibt. Die Fähigkeit eines besonderen Speicherelements, einen besonderen Speicherstatus auszuführen, kann zum Beispiel von dem Speicherstatus von einem oder mehreren ihrer benachbarten Speicherelementen abhängig sein.
  • Es ist bekannt, daß Checkerboard-Speichertests verwendet werden, um zu prüfen, daß es zwischen aneinandergrenzenden Speicherelementen keine Interaktion gibt. Beispiele von solchen Checkerboard-Speichertests werden in den US Patentschriften 4,502,131; 4,654,849; dem IBM TECHNICAL DISCLOSURE BULLETIN, Vol. 26, No. 3A, August 1983, pps. 1078-1079; und dem IBM TECHNICAL DISCLOSURE BULLETIN, Vol. 21, No. 12, May 1979, pps. 4911-4913 beschrieben. Normalerweise werden eine wechselnde Null und ein Einsmuster in die Speichermatrix geschrieben und zurückgelesen, gefolgt von dem Schreiben des ergänzenden Musters und dem Lesen desselben. Da ein Checkerboard-Speichertest normalerweise in Verbindung mit einem Funktionstest des Speicherelements durchgeführt wird, bei dem überprüft wird, ob die Steuer- und Adreßschaltkreise korrekt funktionieren, ist es wünschenswert, daß beide Tests etwas oder alles von dem gleichen Schaltkreis benutzen können. Die Benutzung von gleicher Schaltkreislogik würde die Effizienz bei der Prüfung verbessern und den physikalischen Platzbedarf der Schaltkreise für beide Tests reduzieren.
  • Demgemäß sieht die vorliegende Erfindung ein Verfahren zur Prüfung von Speicherschaltkreisen vor, das in Anspruch 1 beschrieben wird.
  • Die vorliegende Erfindung liefert ebenfalls ein System zur Prüfung von Speicherschaltkreisen, das in Anspruch 6 beschrieben wird.
  • Deshalb verbessert die Erfindung Systeme und Verfahren zum Checkerboard-Speicherselbsttest.
  • Die Erfindung liefert ebenfalls ein System und ein Verfahren zum On-Chip Checkerboard-Speicherselbsttest, der Schaltkreislogik benutzen kann, die gleich derjenigen ist, die für einen On-Chip Funktionsspeicherselbsttest und einem On-Chip Funktionstest des logischen Schaltkreises erforderlich ist.
  • Die Erfindung sieht ebenfalls ein System und ein Verfahren zur effizienten Erzeugung von Checkerboard-Mustern für den Speicherselbsttest vor.
  • Die Einrichtungen dieser Erfindung werden mittels einer Konfiguration eines Zufallsmustergenerators (RPG) erzeugt, der ein lineares Rückführungs-Schieberegister und ein multiples Eingangssignaturregister (MISR) enthält. Der Zufallsmustergenerator wird verwendet, um sich schrittweise durch die Speicheradressen zu bewegen, wobei das Checkerboard-Muster erzeugt wird. Die beiden niederwertigsten Adreßleitungen, welche mit dem Zufallsmustergenerator und der Speichermatrix verbunden sind, werden ebenfalls über ein Exklusive-OR-Gate miteinander verbunden. Da diese Adreßleitungen die Parität der aktuellen und der nächsten, im Zufallsmustergenerator zu erzeugenden Speicheradresse angeben, gibt der Ausgang des Exklusive-OR- Gates an, ob die nächste, zu erzeugende Speicheradresse, verglichen mit der aktuellen Speicheradresse, den gleichen oder einen anderen Status hat. Der Ausgang des Exklusive-OR-Gates kann somit mit dem Dateneingangs-Schieberegister des Speichermatrix verbunden werden, um konditionales Verschieben des Checkerboard-Datenmusters in die Speichermatrix zu ermöglichen. Der eine Logikstatus wird in die aktuelle Speicheradresse eingegeben, wenn der Ausgang des Exklusive-OR-Gates eine logische Eins ist, und der andere logische Status wird in die aktuelle Speicheradresse eingegeben, wenn der Ausgang des Exklusive-OR-Gates eine logische Null ist.
  • In der Praxis werden der Zufallsmustergenerator und die multiplen Eingangssignaturregister zuerst benutzt, um einen Funktionstest sowohl in den Speicherschaltkreisen als auch in den logischen Schaltkreisen durchzuführen. Nach Durchführung eines solchen Funktionstests wird das Checkerboard-Muster während eines RPG-Zyklus in die Speichermatrix geschrieben und während des folgenden Zyklus aus dem Speicher in die multiplen Eingangssignaturregister gelesen. In den folgenden zwei RPG-Zyklen wird die Ergänzung des Checkerboard-Musters in den Speicher geschrieben und in die multiplen Eingangssignaturregister gelesen. Die Erzeugung der ergänzenden Daten wird von der Logik durchgeführt, die zwischen dem Exklusive-OR-Gate und dem Dateneingangsschieberegister mit der Speichermatrix verbunden ist. Nach Abschluß aller RPG-Zyklen wird dann die mit den MISR erzeugte Signatur mit dem verglichen, was von einer einwandfreien Speichermatrix bekannt ist.
  • Damit die Erfindung vollkommen verstanden wird, wird nun ein bevorzugtes Ausführungsbeispiel anhand eines Beispiels mit Bezug auf die anliegende Zeichnung beschrieben, in der
  • Figur 1 ein schematisches Systemdiagramm des bevorzugten Ausführungsbeispiels der Erfindung zeigt.
  • Mit Bezug auf Figur 1 wird nun das System zum Selbsttest von Speicherschaltkreisen 10 und logischen Schaltkreisen 90, inklusive des Checkerboard-Speicherselbsttests beschrieben. Speicherschaltkreise 10 enthalten eine Matrix mit Datenwörtern, von denen jedes "n" Bits enthält. Über die Eingangsleitungen I&sub1;, I&sub2;, I&sub3; ... In werden die Daten in den Speicher 10 gechrieben und über die Ausgangsleitungen O&sub1;, O&sub2;, O&sub3;, ... On aus dem Speicher 10 ausgelesen. Speicheradressierung während der Lese-/Schreiboperationen wird über "m" Adreßleitungen A&sub1;, A&sub2;, A&sub3; ... Am ausgeführt. Der Speicher 10 kann deshalb bis zu 2m Wortleitungen und bis zu (2m x n) Speicherelemente enthalten. Die Prüfschaltkreise können somit an jede Speichergröße angepaßt werden, wobei die genauen Werte von m un n, nur wie hier angegeben, signifikant sind.
  • Adreßdaten für Speicher 10 werden mittels dem RPG 20 erzeugt. Erfaßte Daten können über den Eingangsknoten 22 in das Schieberegister 21 des RPG 20 eingegeben werden. Daten, welche in verschiedenen Stufen des Schieberegisters 21 ausgegeben werden, werden in das Exklusive-OR-Gate 23 eingegeben, wobei deren Ausgabe als Eingangsdaten über den Multiplexer 24 in das Schieberegister 21 zurückgeleitet wird. Der RPG 20 ist somit in der Lage, zyklisch einen Satz von Pseudo-Zufallsdatenmustern zu durchlaufen. Pseudo-Zufall bedeutet, daß die Datenmuster nur insoweit der Auswahl der erfaßten Daten und der Konfiguration der Rückführungsschleife des RPG's zufällig sind. Vorausgesetzt, es werden stets die gleichen erfaßten Daten benutzt, dann sind die Testmuster wiederholbar.
  • Die Konzeption des RPG's 20 basiert auf einem "primitiven Polynom". Die Stufen des Schieberegisters 21, die zur Erzeugung der Rückführung benutzt werden, um den nächsten Status zu bilden, kann als Polynom beschrieben werden. Bei einem Schieberegister mit z Stufen wird die Rückführung als z-tes Grad Polynom beschrieben. Der Rest des Polynoms beschreibt die Rückführungsschleife des RPG's. Die Rückführung von der letzten Stufe des Schieberegisters ware eine "1" (x&sup0;), die Rückführung von der nächsten zur letzten Stufe des Schieberegisters wäre ein "x" (x¹), und so weiter. Ein Vier-Stufen-Schieberegister mit Rückführung von den letzten beiden Stufen würde als Polynom "x&sup4; + x + 1" beschrieben. Wenn das z-te Grad Polynom p(x) nicht weiter reduzierbar ist (d.h. nicht zerlegt werden kann) und wenn:
  • ist, dann ist p(x) ein primitives Polynom. Wenigstens ein z- tes primitives Polynom existiert bei jedem möglichen Wert von z. Beispiele von primitiven Polynomen sind in Tabellenform in verschiedenen Quellen vorhanden. Siehe Peterson, W.W., and Weldon, E.J., Error Correcting Codes, 2nd Ed., 1972. Muster primitiver Polynome sind x&sup4; + x³ + 1, x&sup5; + x² + 1, x¹&sup8; + x&sup7; + 1, x²¹ + x² + 1 und x³¹ + x³ + 1. Somit kann die derzeitige Konfiguration des RPG's 20 in Abhängigkeit der Größe des Schieberegisters 21 variieren.
  • Ein Zufallsmustergenerator, der auf einem primitiven Polynom basiert und z Stufen hat, wird Status erzeugen, wenn es möglich ist, zyklisch alle möglichen Datenstatus zu durchlaufen. Alle Datenstatus werden bis auf den Dauernullstatus erzeugt. Der Dauernullstatus kann nicht erzeugt werden, da die Rückführung von einer Angabe "1" ixi das Schieberegister zwangsläufig eine andere Angabe "1" wiedererzeugen muß. Somit kann normalerweise nur (2z - 1) Status erzeugt werden. Es ist zu bemerken, daß das Schieberegister 21 wenigstens eine Stufe mehr als Adreßleitungen m (d.h. eine Summe von wenigstens (m + 1) Stufen oder z > m) enthält. Bei dieser Einrichtung kann die Dauernulladresse des Speichers 10 erzeugt werden. Obwohl, wie erwähnt, nicht alle Stufen des Schieberegisters 21 gleichzeitig im Nullstatus sein können, werden alle die mit den Adreßleitungen verbundenen Stufen an irgendeinem Punkt während des zyklischen Durchlaufs im Nullstatus sein, während wenigstens eine der verbleibenden Stufen, (welche nicht mit Adreßleitungen verbunden sind), im "1" Status sein.
  • Daten, die in der letzten Stufe des Schieberegisters 21 ausgegeben werden, werden ebenfalls über das AND-Gate 61 und den schaltbaren Inverter 31 zum Schieberegister 30 geleitet. Das Schieberegister 30 hat n Stufen, die mit n Eingangsleitungen verbunden sind, was die Eingabe von Wörtern, welche aus n Bits bestehen, in den Speicher 10 ermöglicht. Daten, die in der letzten Stufe des Schieberegisters 30 ausgegeben werden, werden über das Schieberegister 91 geleitet. Von dem Schieberegister 91 breiten sich die Daten über die logischen Schaltkreise 90 zu den Schieberegistern 92 aus. Die Schieberegister 91 und 92 werden gemäß den LSSD Kriterien konzipiert, wie dies in den US Patentschriften 3,761,695 und 3,783,254 dargestellt ist.
  • Die Daten aus dem Schieberegister 92 und dem Speicher 10 werden an das MISR 40 geleitet. Das Schieberegister 41 hat wenigstens (n + 1) Stufen, die mit n Ausgangs leitungen verbunden sind, um die Ausgabe von Wörtern, welche aus n Bits bestehen, an das MISR 40 aus dem Speicher 10 und die Ausgabe aus dem Schieberegister 92 zu ermöglichen. Daten, die an verschiedenen Stufen des Schieberegisters 41 des MISR 40 ausgegeben werden, werden in das Exklusive-OR-Gate 42 eingegeben, wobei deren Ausgabe über den Multiplexer 44 als Eingangsdaten in das Schieberegister 41 zurückgeleitet werden. Daten können über den Ausgangsknoten 43 aus dem Schieberegister 41 ausgegeben werden. Der RPG 20, das Eingangsschieberegister 30 und das MISR 40 werden gemäß der LSSD-Kriterien konzipiert, ausgenommen die zuvor erwähnte Anzahl von Stufen des Schieberegisters 21, um so die Initialisierung zu ermöglichen. Die Stufen der Schieberegister 21, 30 und 41 sind durch Kästchen in Figur 1 dargestellt, wie diese mit den Adreß-, Ein- bzw. Ausgangsleitungen verbunden sind.
  • Taktgeber 50-53 steuern die Funktion des gesamten Systems. Systemtaktgeber 50 und 51 steuern Funktionen, die zu dem Speicher 10 bzw. der Logik 90 gehören. Diese Taktgeber und der Lese-/Schreibwahlschalter 54 bestimmen, ob Daten in die Speicherschaltkreise 10 geschrieben werden oder von dort ausgelesen werden und ob die Ergebnisse von den logischen Schaltkreisen 90 erfaßt werden. Die Schiebetaktgeber 52 und 53 steuern das Verschieben der Daten über die Schieberegister 21, 30, 41, 91 sowie 92 und betreiben den RPG 20 und das MISR 40 im Testmodus. Die Moduswahl 55, abtasten oder prüfen, konfiguriert das System zum Abtasten von Daten in Schieberegistern oder zum Betrieb im Testmodus, um die logischen Schaltkreise 90 oder Speicherschaltkreise zu prüfen. Die Moduswahl 56 konfiguriert das System für den Funktionsspeichertest oder Checkerboard- Speichertest. Wie abgebildet, kann das gesamte System aus Figur 1 in die Funktionen eines Mikrochips integriert werden, um einen On-Chip-Selbsttest zu ermöglichen.
  • Die Schaltlogik zur Erzeugung des Checkerboard-Speichermusters wird zwischen dem RPG 20 und dem Schieberegister 21 angeschlossen. Der Status der niederwertigsten Adreßleitung Am gibt an, ob die Adresse des aktuell zu adressierenden Speicherelements gerade oder ungerade ist. Die Adresse des Speicherelements wird nachstehend als "aktuelle Adresse" bezeichnet. Die Eingangsleitung zu dem Exklusive-OR-Gate 63, welche mit der nächstniederwertigen Adreßleitung Am-1 verbunden ist, gibt an, ob die Adresse des Speicherelements, die unmittelbar nach der Adressierung der aktuellen Adresse zu adressieren ist, gerade oder ungerade ist. Die Adresse wird nachstehend als "nächste Adresse" bezeichnet. Die aktuelle Adresse und die nächste Adresse stehen physikalisch nicht notwendigerweise in Zusammenhang oder befinden sich in der Speichermatrix 10 in einer vorgeschriebenen Nähe zueinander. Die genauen Plätze in der Speichermatrix 10 der aktuellen Adresse und der nächsten Adresse werden durch den RPG 20 und die erfaßten Daten bestimmt.
  • Der Ausgang des Exklusive-OR-Gates 63 stellt einen Vergleich des ungeraden oder geraden Typs des binären Status der aktuellen Adresse und der nächsten Adresse dar. Ein solcher Vergleich wird nachstehend als "Parität" bezeichnet. Wann immer solche Status identisch sind, wird der Ausgang des Exklusive- OR-Gates 63 eine Null sein. Wann immer solche Status nicht identisch sind, wird der Ausgang des Exklusive-OR-Gates 63 eine Eins sein. Der Ausgang wird als Eingang an das AND-Gate 67, dann an das OR-Gate 66, AND-Gate 64 und an das Schieberegister 30 angeschlossen. Die erste Stufe des Schieberegisters 30 ist ein Standard-Flip-Flop, das abwechselnd bei jedem Zyklus des Schiebetaktgebers 52 den Status wechselt, wenn dies das AND-Gate 64 erlaubt.
  • Das AND-Gate 67 enthält zusätzlich zu dem Ausgang aus dem Exklusive-OR-Gate 63 eine Eingangsleitung. Die zusätzliche Eingangsleitung ist der Ausgang des Inverters 68, der seinerseits von dem Lese-/Schreibwahlschalter 54 gesteuert wird und dadurch den Signalen ermöglicht, das AND-Gate 67 nur dann zu passieren, während die Speichermatrix 10 geschrieben wird. Der Ausgang des AND-Gates 67 wird in das OR-Gate 66 eingegeben. Die anderen Eingänge in das OR-Gate 66 sind der Ausgang des AND-Gates 65 und der Moduswahl 56. Die Eingänge in das AND- Gate 65 enthalten den Lese-/Schreibwahlschalter 54 und die verschiedenen Stufen des Schieberegisters 21. Die Verbindung mit dem Lese-/Schreibwahlschalter 54 macht den Ausgang des AND-Gates 65 zur Determinanten, je nachdem ob das System gerade Daten aus den Speicherschaltkreisen 10 liest oder Daten in die Speicherschaltkreise 10 schreibt. Die Verbindungen mit dem Schieberegister 21 sind für die Speicheradresse null. Die Verbindung ist so, daß das AND-Gate 65 nur einen besonderen logischen Status ausgeben kann, wenn die binäre Nulladresse die aktuelle Adresse ist. Die Nulladresse wird nur einmal während des Lesezyklus erscheinen und die Daten in dem Schieberegister 30 zur Vorbereitung auf den nächsten Schreibzyklus ergänzen. Auf die Darstellung dieser Verbindung in Figur 1 wurde verzichtet, da diese einem Fachmann bekannt ist.
  • Mit Bezug auf Figur 1 wird nun das Verfahren zum Selbsttest von Speicherschaltkreisen 10 und logischen Schaltkreisen 90 inklusive des Checkerboard-Speicherselbsttests beschrieben. In dem Betriebssystemmodus (d.h. kein Test) reagiert das System nur auf die Systemtaktgeber 50 und 51. Um das System zu prüfen, müssen die erfaßten Daten in den RPG 20, die Schieberegister 30, 91, 92 und das MISR 40 eingegeben werden. Die Erfassung erfolgt, indem die Moduswahl 55 auf Abtastmodus gestellt und die Systemsteuerung über die Schiebetaktgeber 52 und 53 geschaltet und der Eingangsknoten 22 aktiviert wird, damit die Daten durch das System abgetastet werden können. Auf diese Weise sind zu Beginn des Tests bekannte Daten in dem RPG 20, den Schieberegistern 30, 91, 92 und dem MISR 40 vorhanden.
  • Sobald die Erfassung abgeschlossen ist, beginnt der Testmodus mittels der beiden Systemtaktgeber 50 und 51, den Schiebetaktgebern 52 und 53 und der Moduswahl 55 die Systemfunktion zu steuern. Der Lese-/Schreibwahlschalter 54 wird verwendet, um zu bestimmen, ob die Daten in den Speicher 10 geschrieben oder aus diesem gelesen werden. Der Testmodus enthält wenigstens vier Zyklen des RPG 20. Ein RPG-Zyklus enthält das Verschieben der Daten über die Schieberegister 21, das Exclusive-OR-Gate 23 und zurück in das Schieberegister 21, bis alle möglichen Kombinationen der binären Daten die Stufen des Schieberegisters 21 durchlaufen haben. Der Multiplexer 24 steuert den Knoten 22, um die Erfassung (Abtastmodus) oder die Datenrückführung (Testmodus) zu ermöglichen. Da das Schieberegister 21 (m + 1) Stufen hat, beläuft sich die Anzahl von möglichen Datenkombinationen, welche das Schieberegister 21 durchlaufen müssen, 2(m + 1) - 1.
  • Zur Durchführung des Funktionstests der Speicherschaltkreise 10 muß jedes Speicherelement in der Speichermatrix initialisiert werden. Dies erfolgt mittels des RPG's 20 und des Schieberegisters 30. Die in dem Schieberegister 30 vorhandenen Daten werden in den Speicher 10 in der Speicheradresse eingegeben, die gleichzeitig durch die Daten dargestellt wird, welche in den entsprechenden Stufen des Schieberegisters 21 vorhanden sind. So werden während des ersten RPG-Zyklus alle Speicherelemente wenigstens einmal geschrieben. Sobald der RPG 20 wenigstens eine zusätzliche Stufe hat, welche mit der Anzahl von Speicheradreßleitungen verglichen wird, prüft der RPG 20 die Adresse, welche aus Dauernullen besteht. Obwohl die zusätzliche Stufe den RPG 20 veranlassen wird, einige Speicheradressen zyklisch mehr als einmal zu durchlaufen, ist dieser Verlust an Effizienz verglichen mit den erzielten Vorteilen (wie Chipplatzbedarf, Prüfdatenvolumen und Betriebsgeschwindigkeit) relativ gering, indem auf Übertragsbitlogik verzichtet wird, die zur Adressierung bei Verwendung der deterministischen Prüfung erforderlich ist. Während des ersten RPG-Zyklus durchlaufen die Daten ebenfalls die Schieberegister 30, 91 und 92 sowie das MISR 40. Der Systemtaktgeber 51 wird deaktiviert, um sicherzustellen, daß Daten während des Speichertests nicht in das Schieberegister 92 eingegeben werden. Die Ausgänge von Speicher 10 müssen während aller Nicht-Leseoperationen stets in einem bekannten, wiederholbaren Status sein, zum Beispiel Dauernull.
  • Nach Abschluß der Initialisierung werden die bekannten Daten, welche in den Speicherschaltkreisen 10 gespeichert sind, an das MISR 40 ausgegeben. Die Datenausgabe erfolgt während eines zweiten RPG-Zyklus, der dem ersten Zyklus gleicht, mit der Ausnahme, daß die Daten nun eher aus dem Speicher 10 als in diesen gelesen werden. Während die Daten das MISR 40 erneut zyklisch durchlaufen, werden diese jedesmal geändert, wenn diese das Exclusive-OR-Gate 42 passieren. Obwohl die Daten das MISR 40 aus dem Schieberegister 92 erreicht haben, sind es auch diese bekannten Daten, welche das MISR 40 erneut zyklisch durchlaufen. Somit wird, wenn der RPG 20 den zyklischen Durchlauf durch alle Speicheradressen beendet hat, ein vorhersehbarer Satz mit Daten in dem Schieberegister 41 verbleiben.
  • Die ersten beiden RPG-Zyklen berücksichtigen einen von zwei Datenstatus für jedes einzelne Speicherelement des Speichers 10. Um beide möglichen Datenstatus in jeder Speicheradresse zu testen, muß die vorerwähnte Prüfung mittels der Daten wiederholt werden, welche die Ergänzung zu denen sind, die in Speicher 10 während des ersten RPG-Zyklus initialisiert wurden.
  • Der Test wird somit mittels der gleichen Prüfdatenmuster wiederholt; besondere Speicherelemente, die zuvor im Nullstatus initialisiert wurden, müssen jedoch jetzt mit dem Einsstatus und vice versa geschrieben werden. Ergänzungen werden während eines dritten RPG-Zyklus geschrieben, der mit dem ersten RPG- Zyklus identisch ist, abgesehen davon, daß der schaltbare Inverter 31 während des zweiten RPG-Zyklus aktiviert wurde, um sicherzustellen, daß die Ergänzungsdaten zu Beginn des dritten RPG-Zyklus verfügbar sind. Daten, die während des dritten RPG- Zyklus von dem RPG 20 in das Schieberegister 30 ausgegeben werden, sind somit die Ergänzung der Daten, die während des ersten RPG-Zyklus so übertragen wurden.
  • Ein vierter RPG-Zyklus wird erforderlich, um die in Speicher 10 vorhandenen bekannten Daten an das MISR 40 auszugeben. Dieser RPG-Zyklus ist mit dem zweiten RPG-Zyklus bis auf die Unterschiede in den verschobenen Daten identisch. Während der Systemstatus stets bestimmbar ist, solange bekannte, erfaßte Daten verwendet werden, sind die Daten in dem Schieberegister 41 noch vorhersehbar.
  • Funktionstests von logischen Schaltkreisen 90 können im Anschluß an die Prüfung der Speicherschaltkreise 10 durchgeführt werden. Der Systemtaktgeber 51 ermöglicht es, daß sich aus dem RPG 20 über das Schieberegister 30 in das Schieberegister 91 ausgegebene Daten über die logischen Schaltkreise 90 ausbreiten und in dem Schieberegister 92 erfaßt werden. Daten, die aus den logischen Schaltkreisen 90 in das Schieberegister 92 ausgegeben wurden, werden anschließend in das MISR 40 eingegeben. Nach Abschluß der Prüfung der logischen Schaltkreise wird ein vorhersehbarer Satz von Daten in den Stufen des Schieberegisters 41 vorhanden sein.
  • Nach Durchführung der Prüfung der Speicherschaltkreise 10 und der logischen Schaltkreise 90 kann die Checkerboard-Prüfung der Speicherschaltkreise 10 erfolgen. Vor Beginn der Checkerboard-Prüfung ist eine Initialisierung erforderlich. Wenn alle Schieberegister in einem bekannten Status sind, muß nur das Schieberegister 30 auf ein abwechselndes 1010 ... Muster (oder 0101 ...) gesetzt werden. Dies erfolgt, indem die neuen Daten in allen Schieberegistern abgetastet werden oder durch ein logisches Rückstellen des Schieberegisters 30, wenn die Moduswahl 56 aktiviert wird. Indem der Lese/Schreibwahlschalter 54 auf Schreiben gestellt wird, wird ein Pfad aus dem Exclusive-OR-Gate 63 über das AND-Gate 67, OR- Gate 66 und AND-Gate 64 in das Schieberegister 30 sensibilisiert. Der Schiebetaktgeber 52 wird verwendet, um selektiv den Ausgang des AND-Gates 64 zu steuern und somit das Verschieben von Daten über die Schieberegister 30. Bei jeder Verschiebung von Daten über die Systemschieberegister wird die Parität der aktuellen Adresse und der nächsten Adresse in dem Exclusive- OR-Gate 63 verglichen und verwendet, um das Verknüpfen der Taktimpulse mit dem Schieberegister 30 zu verknüpfen. Der Ausgang des Schieberegisters 30 wird somit nicht länger streng von dem Zufallsmustergenerator 20 gesteuert, sondern einen besonderen logischen Status ausgeben, der von der Parität der aktuellen Adresse und der nächsten Adresse abhängt. Die Steuerung resultiert im Schreiben eines Checkerboard-Musters über den Kurs eines RPG 20 Zyklus in die Speicherschaltkreise 10, wobei angenommen wird, daß die logischen Speicheradressen das Äquivalent der physikalischen Adressen sind. Andernfalls kann eine Übersetzungstabelle verwendet werden, um sicherzustellen, daß ein Checkerboard-Muster derzeit im Speicher erzeugt wird. Am Ende des RPG 20 Zyklus wird der Lese-/Schreibwahlschalter 54 verwendet, um den Ausgang aus dem AND-Gate 67 zu verhindern. Während des nächsten RPG-Zyklus werden die Inhalte des Speicherschaltkreises 10 in das Schieberegister 41 ausgelesen und das Schieberegister 30 wird einmal zur Ergänzung seiner Daten verschoben. Dieser einzelne Impuls wird von dem AND-Gate 65 erzeugt und durchläuft das OR-Gate 66 und das AND-Gate 64. Der nächste RPG 20 Zyklus wird benutzt, um erneut ein Checkerboard-Muster in die Speicherschaltkreise 10 zu schreiben, das Checkerboard-Muster ist jedoch die Ergänzung des zuvor geschriebenen Checkerboard-Musters, da der Status des Schieberegisters 30 während des vorherigen Lesezyklus geschaltet wurde. Nachdem das ergänzende Checkerboard-Muster geschrieben wurde, werden die Speicherschaltkreise 10 während des folgenden RPG 20 Zyklus erneut in das Schieberegister 41 ausgelesen.
  • Nach Abschluß des Checkerboard-Speichertests wird ein vorhersehbarer Satz mit Daten in den Stufen des Schieberegisters 41 vorhanden sein. Diese Ausgangssignatur wird dann über den Knoten 43 ausgegeben und mit der verglichen, die für die korrekt funktionierenden Speicherschaltkreise 10 vorhergesagt wurde, welche die gleichen erfaßten Daten benutzen. Die Signatur kann ausgelesen werden anstelle oder zusätzlich zu dem Auslesen der Signatur nach dem Funktionstest. Durch das zweimalige Lesen der Signaturen ist eines in der Lage zu bestimmen, ob sich ein erkannter Fehler auf die Interaktion zwischen den Speicherzellen bezieht.
  • Das vorgenannte Funktionsverfahren wird als Erzeugung einer Einzelsignatur bei Durchführung des Funktionstests sowohl in den Speicherschaltkreisen 10 als auch in den logischen Schaltkreisen 90 oder beim Checkerboard-Test der Speicherschaltkreise 10 bezeichnet. Mehrere Varianten dieses Funktionsverfahrens können ebenfalls durchgeführt werden. Der Checkerboard-Test kann vor dem Funktionstest durchgeführt werden, oder die logischen Schaltkreise 90 können vor Durchführung des Tests der Speicherschaltkreise 10 (und nicht danach) geprüft werden, solange wie die erwartete Datensignatur ähnlich basierte und der Ausgang des Speichers gesteuert wurde, um nicht die Signatur in dem MISR 40 zu verfälschen. Außerdem können Datensignaturen zum Vergleich mit einer bekannten Signatur während der Prüfung zu irgendeiner Zeit ausgegeben werden, wenn dies gewünscht wird. Ein separater Signaturvergleich kann zum Beispiel für den Funktionstest des Speichers 10 (nach dem vierten RPG-Zyklus), für den Funktionstest der Logik 90 (nach Abtasten der Daten) und zum Checkerboard-Test des Speichers 10 durchgeführt werden. Ähnlich können Teile des Systems (zum Beispiel logische Schaltkreise 90 und Schieberegister 91 und 92) oder des Tests völlig beseitigt werden.
  • Da die Erfindung mit Bezug auf ein bevorzugtes Ausführungsbeispiel besonders dargestellt und beschrieben wurde, wird es der Fachmann verstehen, daß, ohne sich von dem Bereich zu entfernen, hier in der Form und im einzelnen zahlreiche Änderungen durchgeführt wurden. Figur 1 zeigt zum Beispiel nur ein Exklusive-OR-Gate 42 in einer Einzelkonfiguration in dem MISR 40, die tatsächliche Anzahl und Konfiguration kann jedoch unterschiedlich sein. Obwohl diese Einrichtungen die ausgegebene Datensignatur bestimmen, sollte die Datensignatur bei einem korrekt funktionierenden Schaltkreis, welcher mit den gleichen erfaßten Daten getestet wurde, stets die gleiche sein. Der RPG 20 kann ebenso verschieden sein.

Claims (10)

1. Ein Verfahren zur Prüfung von Speicherschaltkreisen (10), die einen Zufallsmustergenerator (20) haben, um Adressen über Adreßleitungen (Ai) auszugeben und Daten an Dateneingangsleitungen (Ii) in diesen Speicherschaltkreisen (10) auszugeben, wobei der Zufallsmustergenerator Mittel enthält, um sich während eines Zufallsmustergeneratorzyklus schrittweise durch jede Speicheradresse zu bewegen, wobei die Speicherschaltkreise eine Vielzahl von mit den Ausgangsleitungen (Oi) verbundenen Eingangssignaturregistern (40) haben, welche Schritte enthalten, um
dem Zufallsmustergenerator (20) bekannte, erzeugte Daten zu liefern;
kontinuierlich die Parität der aktuellen Speicheradresse und die nächste Speicheradreßausgabe mittels des Zufallsmustergenerators durch Verwendung der beiden niederwertigsten Adreßleitungen (Am, Am-1) des Zufallsmustergenerators (20) zu überwachen;
Checkerboard-Daten während eines ersten Zufallsmustergeneratorzyklus zu schreiben, die von dieser Parität in den Speicherschaltkreisen abhängig sind;
Daten während eines zweiten Zufallsmustergeneratorzyklus aus den Speicherschaltkreisen (10) in die Vielzahl der Eingangssignaturregister (40) aus zugeben;
Checkerboard-Daten während eines dritten Zufallsmustergeneratorzyklus in die Speicherschaltkreise zu schreiben, wobei die während des dritten Zufallsmustergeneratorzyklus geschriebenen Daten die Ergänzung der Daten sind, die während des ersten Zufallsmustergeneratorzyklus geschrieben wurden;
Daten während eines vierten Zufallsmustergeneratorzyklus aus den Speicherschaltkreisen in die Vielzahl von Eingangssignaturregistern auszugeben, dadurch eine Datensignatur in der Vielzahl der Eingangssignaturregister zu erzeugen; und
die Datensignatur in der Vielzahl der Eingangssignaturregister mit der zu vergleichen, die von den korrekt funktionierenden Speicherschaltkreisen erzeugt und mit den gleichen erzeugten Daten geliefert wird.
2. Ein Verfahren wie in Anspruch 1 angemeldet, das außerdem die Schritte enthält, um
Zufallsdaten während einer ersten Funktionsprüfung des Zufallsmustergeneratorzyklus in die Speicherschaltkreise zu schreiben;
Daten während einer zweiten Funktionsprüfung des Zufallsmustergeneratorzyklus aus den Speicherschaltkreisen in die Vielzahl der Eingangssignaturregister auszugeben;
Zufallsdaten während einer dritten Funktionsprüfung des Zufallsmustergeneratorzyklus in die Speicherschaltkreise zu schreiben, wobei die während der dritten Funktionsprüfung des Zufallsmustergeneratorzyklus geschriebenen Daten die Ergänzung der Daten sind, die während der ersten Funktionsprüfung des Zufallsmustergeneratorzyklus geschrieben wurden; und
Daten während einer vierten Funktionsprüfung des Zufallsmustergeneratorzyklus aus den Speicherschaltkreisen in die Vielzahl von Eingangssignaturregistern aus zugeben.
3. Ein Verfahren wie in Anspruch 1 oder Anspruch 2 angemeldet, in dem jeder der Zufallsmustergeneratorzyklen der Generierung der gleichen Sequenz von Speicheradressen entspricht.
4. Ein Verfahren wie in irgendeinem vorhergehenden Anspruch angemeldet, wobei die Schritte zum Schreiben von Checkerboard-Daten in die Speicherschaltkreise das Schreiben eines binären Datenstatus in jeder Speicheradresse enthalten, für den eine besondere Parität während des Schritts der kontinuierlichen Überwachung der Parität der Speicheradressen festgelegt wird, und das Schreiben des anderen binären Datenstatus in jeder Speicheradresse enthalten, für den die andere Parität während des Schritts der kontinuierlichen Überwachung der Parität der Speicheradressen festgelegt wird.
5. Ein Verfahren wie in irgendeinem vorhergehenden Anspruch festgelegt, wobei der Schritt der kontinuierlichen Überwachung der Parität der Speicheradressen den Vergleich des binären Status der niederwertigsten Adreßleitung mit dem binären Status der nächsten niederwertigsten Adreßleitung enthält.
6. Ein System zum Prüfen von Speicherschaltkreisen (10) mit:
einer Speichermatrix, die Adreßleitungen (Ai), Eingangsleitungen (Ii) und Ausgangsleitungen (Oi) enthält;
einer Vielzahl von Eingangssignaturregistern (40), die mit den Ausgangsleitungen (Oi) der Speichermatrix verbunden sind;
einem Zufallsmustergenerator, der Adressen in die Adreßleitungen (Ai) ausgibt und Daten in Dateneingangsleitungen (Ii) der Speichermatrix ausgibt;
Schreibmitteln (30) zum Schreiben von Prüfdaten mittels der Eingangsleitungen (Ii) in die Speichermatrix, dadurch gekennzeichnet, daß
Überwachungsmittel (63, ..., 68, 30), die mit den Adreßleitungen und den Eingangsleitungen zur Überwachung verbunden sind, die beiden niederwertigsten Adreßleitungen (Am, Am-1) verwenden, wobei die Parität der aktuellen Speicheradresse und die nächste Speicheradresse von dem Zufallsmustergenerator ausgegeben wird; und dadurch, daß
die Schreibmittel (30) auf die Überwachungsmittel zum Schreiben der Prüfdaten, die von der Parität der aktuellen Speicheradresse in die Speichermatrix abhängig ist, reagieren.
7. Ein System wie in Anspruch 6 angemeldet, in dem die Struktur des Zufallsmustergenerators auf einem primitiven Polynom basiert und zusätzlich zu der Anzahl von Adreßleitungen eine Stufe enthält.
8. Ein System wie in Anspruch 6 oder 7 angemeldet, wobei die Überwachungsmittel ein Exclusive-OR-Gate enthalten, das Adreß- und Eingangsleitungen verbindet, wobei die beiden niederwertigsten Adreßleitungen mit dem Eingang des Exclusive-OR-Gate verbunden sind.
9. Ein System wie in Anspruch 8 angemeldet, wobei die Überwachungsmittel außerdem AND, OR, und AND-Gates enthalten, die aufeinanderfolgend mit dem Exclusive-OR-Gate und den Eingangsleitungen verbunden sind.
10. Ein System wie in irgendeinem der Ansprüche 6 bis 9 angemeldet, mit Speichersteuerlogik, die mit dem Zufallsmustergenerator und der Vielzahl der Eingangssignaturregister verbunden ist.
DE69018563T 1989-10-06 1990-09-28 Speicherselbsttest. Expired - Fee Related DE69018563T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/418,297 US5101409A (en) 1989-10-06 1989-10-06 Checkboard memory self-test

Publications (2)

Publication Number Publication Date
DE69018563D1 DE69018563D1 (de) 1995-05-18
DE69018563T2 true DE69018563T2 (de) 1996-01-04

Family

ID=23657528

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69018563T Expired - Fee Related DE69018563T2 (de) 1989-10-06 1990-09-28 Speicherselbsttest.

Country Status (4)

Country Link
US (1) US5101409A (de)
EP (1) EP0421693B1 (de)
JP (1) JP2525945B2 (de)
DE (1) DE69018563T2 (de)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5167034A (en) * 1990-06-18 1992-11-24 International Business Machines Corporation Data integrity for compaction devices
CA2057339C (en) * 1990-12-26 1996-10-22 John F. Blecha, Jr. Test interface for a digital circuit
US5528600A (en) * 1991-01-28 1996-06-18 Actel Corporation Testability circuits for logic arrays
JP2701591B2 (ja) * 1991-05-31 1998-01-21 日本電気株式会社 自動車電話装置の自己診断方法
US5396619A (en) * 1993-07-26 1995-03-07 International Business Machines Corporation System and method for testing and remapping base memory for memory diagnostics
US5375091A (en) * 1993-12-08 1994-12-20 International Business Machines Corporation Method and apparatus for memory dynamic burn-in and test
US5583786A (en) * 1993-12-30 1996-12-10 Intel Corporation Apparatus and method for testing integrated circuits
US5506959A (en) * 1994-08-04 1996-04-09 Telecommunication Research Laboratories Method and apparatus for testing electronic memories for the presence of multiple cell coupling faults
US5680518A (en) * 1994-08-26 1997-10-21 Hangartner; Ricky D. Probabilistic computing methods and apparatus
US6279128B1 (en) 1994-12-29 2001-08-21 International Business Machines Corporation Autonomous system for recognition of patterns formed by stored data during computer memory scrubbing
US5553082A (en) * 1995-05-01 1996-09-03 International Business Machines Corporation Built-in self-test for logic circuitry at memory array output
US5574733A (en) * 1995-07-25 1996-11-12 Intel Corporation Scan-based built-in self test (BIST) with automatic reseeding of pattern generator
US5539753A (en) * 1995-08-10 1996-07-23 International Business Machines Corporation Method and apparatus for output deselecting of data during test
JPH0991997A (ja) * 1995-09-28 1997-04-04 Mitsubishi Electric Corp メモリテスト回路
US5825785A (en) * 1996-05-24 1998-10-20 Internaitonal Business Machines Corporation Serial input shift register built-in self test circuit for embedded circuits
US5909049A (en) 1997-02-11 1999-06-01 Actel Corporation Antifuse programmed PROM cell
JP3137034B2 (ja) * 1997-06-06 2001-02-19 日本電気株式会社 故障検証を容易にするアドレストラップ比較回路
US6321320B1 (en) * 1998-10-30 2001-11-20 Hewlett-Packard Company Flexible and programmable BIST engine for on-chip memory array testing and characterization
US6785856B1 (en) * 2000-12-07 2004-08-31 Advanced Micro Devices, Inc. Internal self-test circuit for a memory array
US6769084B2 (en) * 2001-03-13 2004-07-27 Samsung Electronics Co., Ltd. Built-in self test circuit employing a linear feedback shift register
DE102004051344A1 (de) * 2004-10-21 2006-05-04 Infineon Technologies Ag Halbleiter-Bauelement-Test-Einrichtung mit Schieberegister, sowie Halbleiter-Bauelement-Test-Verfahren
FR2953976A1 (fr) * 2009-12-15 2011-06-17 France Etat Procede d'effacement d'un plan memoire
US8683307B2 (en) 2011-05-27 2014-03-25 International Business Machines Corporation Checksum calculation, prediction and validation

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3758759A (en) * 1972-01-13 1973-09-11 Cogar Corp Apparatus for determining partial memory chip categories
US3783254A (en) * 1972-10-16 1974-01-01 Ibm Level sensitive logic system
US3761695A (en) * 1972-10-16 1973-09-25 Ibm Method of level sensitive testing a functional logic system
JPS5552581A (en) * 1978-10-11 1980-04-17 Advantest Corp Pattern generator
US4282584A (en) * 1979-05-30 1981-08-04 Allen-Bradley Company Mini-programmable controller
DE3276399D1 (en) * 1982-09-22 1987-06-25 Itt Ind Gmbh Deutsche Electrically programmable memory matrix
US4519078A (en) * 1982-09-29 1985-05-21 Storage Technology Corporation LSI self-test method
US4513418A (en) * 1982-11-08 1985-04-23 International Business Machines Corporation Simultaneous self-testing system
US4597080A (en) * 1983-11-14 1986-06-24 Texas Instruments Incorporated Architecture and method for testing VLSI processors
US4601034A (en) * 1984-03-30 1986-07-15 Texas Instruments Incorporated Method and apparatus for testing very large scale integrated memory circuits
US4654849B1 (en) * 1984-08-31 1999-06-22 Texas Instruments Inc High speed concurrent testing of dynamic read/write memory array
JPS61145799A (ja) * 1984-12-20 1986-07-03 Fujitsu Ltd メモリを内蔵した半導体集積回路
DE3685078D1 (de) * 1985-09-09 1992-06-04 Hitachi Ltd Speicherpruefgeraet.
US4754215A (en) * 1985-11-06 1988-06-28 Nec Corporation Self-diagnosable integrated circuit device capable of testing sequential circuit elements
JPS62118272A (ja) * 1985-11-19 1987-05-29 Ando Electric Co Ltd パタ−ン発生装置
US4872168A (en) * 1986-10-02 1989-10-03 American Telephone And Telegraph Company, At&T Bell Laboratories Integrated circuit with memory self-test
US4782487A (en) * 1987-05-15 1988-11-01 Digital Equipment Corporation Memory test method and apparatus
US4903266A (en) * 1988-04-29 1990-02-20 International Business Machines Corporation Memory self-test

Also Published As

Publication number Publication date
JPH03125400A (ja) 1991-05-28
EP0421693A2 (de) 1991-04-10
US5101409A (en) 1992-03-31
EP0421693B1 (de) 1995-04-12
DE69018563D1 (de) 1995-05-18
EP0421693A3 (en) 1992-03-04
JP2525945B2 (ja) 1996-08-21

Similar Documents

Publication Publication Date Title
DE69018563T2 (de) Speicherselbsttest.
DE3886038T2 (de) Speichergerät, das einen zur Ausführung einer Selbstprüfung adaptierten statischen RAM-Speicher enthält und integrierte Schaltung, die als eingebauten statischen RAM-Speicher ein solches Gerät enthält.
DE60116046T2 (de) Eingebaute Selbsttestschaltung mit einem Schieberegister mit linearer Rückkopplung
DE69904320T2 (de) On-chip schaltung und verfahren zur speicherschaltungs-prüfung
DE69223461T2 (de) Konfigurable Selbstprüfung für integrierte RAMs
DE2728318C2 (de) Verfahren zur Prüfung der Signalverzögerung einer einseitig verzögerungsabhängigen, stufenempfindlichen Einheit
DE3486312T2 (de) Speicher mit programmierbarer Wortlänge in einem Gatterfeld mit bidirektionaler Symmetrie.
DE69030528T2 (de) Verfahren und Anordnung zum Testen von Schaltungsplatten
DE69329720T2 (de) Transparentes testen von integrierten schaltkreisen
DE68921269T2 (de) Integrierte Prüfschaltung.
DE69209404T2 (de) Selbsttest integrierter Schaltungen mit hybriden Mustern
DE69107463T2 (de) Integrierte Schaltung, System und Verfahren zur Fehlererzeugung.
DE3788487T2 (de) Integrierte Schaltung mit Speicherselbstprüfung.
DE69019402T2 (de) Prüfverfahren und -gerät für integrierte Schaltungen.
DE3687407T2 (de) Logische schaltung mit zusammengeschalteten mehrtorflip-flops.
DE60316068T2 (de) Prüfverfahren und -gerät für Konfigurationsspeicherzellen in programmierbaren logischen Bauelementen (PLDS)
DE69024138T2 (de) Verfahren und Einrichtung zur Erzeugung von Steuersignalen
JPS6338728B2 (de)
DE69107476T2 (de) Vorrichtung für eine in-circuit-prüfung mit einem minimalspeicher.
DE68927984T2 (de) Logikschaltung mit einer Prüffunktion
DE69724742T2 (de) Speicherfeldprüfschaltung mit Fehlermeldung
DE69031291T2 (de) Testmethode, Testschaltung und integrierter Halbleiterschaltkreis mit Testschaltung
DE602004009784T2 (de) Datenkomprimierung
EP0297398B1 (de) Steuerkreis für Verarbeitungsimpulse
DE60208062T2 (de) Digitales system und entsprechendes verfahren zur fehlererkennung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee