DE3607015A1 - Verfahren und vorrichtung zur funktionspruefung von direktzugriffsspeichern - Google Patents

Verfahren und vorrichtung zur funktionspruefung von direktzugriffsspeichern

Info

Publication number
DE3607015A1
DE3607015A1 DE19863607015 DE3607015A DE3607015A1 DE 3607015 A1 DE3607015 A1 DE 3607015A1 DE 19863607015 DE19863607015 DE 19863607015 DE 3607015 A DE3607015 A DE 3607015A DE 3607015 A1 DE3607015 A1 DE 3607015A1
Authority
DE
Germany
Prior art keywords
sequence
cells
memory
contents
cell
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.)
Withdrawn
Application number
DE19863607015
Other languages
English (en)
Inventor
David Merrill Seattle Wash. Jacobson
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.)
Fluke Corp
Original Assignee
John Fluke Manufacturing Co Inc
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 John Fluke Manufacturing Co Inc filed Critical John Fluke Manufacturing Co Inc
Publication of DE3607015A1 publication Critical patent/DE3607015A1/de
Withdrawn 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/10Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns 
    • 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/36Data generation devices, e.g. data inverters

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Tests Of Electronic Circuits (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Description

LIECK & BETTEN
°?tentar'Wä'te Dipl.-ing. H.-Peter Lieck
European Patent Attor· ,eye Dipl.-Ing. Jürgen Betten
MaximiliansplatziO 360 7015 D-8000 München
® 089- 291119 Telex 5 216 741 list d Technolaw® Telegramm Electropat
Beschreibung
Verfahren und Vorrichtung zur Funktionsprüfung von Direktzugriffsspeichern.
Die Erfindung betrifft das Überprüfen von Direktzugriffsspeichern (Randomspeiehern oder RAMs) auf ordnungsgemäßes Funktionieren und bezieht sich auf ein Wahrscheinlichkeitsverfahren und eine Vorrichtung zum Feststellen von Fehlern in Speichersystemen unter Benutzung eines schnellen Funktionsprüfalgorithmus von hoher Zuverlässigkeit.
Die jüngere Entwicklung auf dem Gebiet der Halbleiter-Speicher-Technik hat zu einer beträchtlichen Zunahme der Verwendung von Halbleiter-Direktzugriffsspeichern (RAM) geführt. Es handelt sich gewöhnlich um großintegrierte (LSI)-Bauelemente in bipolarer oder Metalloxid-Halbleiter (MOS)-Technik. Gemäß Fig. 1 setzt sich ein RAM-System 10 hauptsächlich aus einer Anzahl von Speicherbausteinen 12, Adreßdecodierern 14 und einem Datenpuffer 16 zusammen. Letztere sind an Daten- bzw. Adreßbusse 17 bzw. 19 angeschlossen. Jedes Speicherbauelement oder Chip 12 enthält eine Anzahl von Speicherzellen, die wortorganisiert sind und sowohl beschrieben als auch ausgelesen werden können. Lese/Schreib(R/W)-Signale werden den RAM-Elementen 12 über eine Steuerleitung 21 zugeleitet.
Physikalische Fehler, die in jedem Teil des Speicherchips auftreten können, sind u.a. bedingt durch die Packungsdichte, die Schaltungsauslegung und das Herstellungsverfahren. Zum Feststellen dieser Fehler notwendige Testprozeduren werden in drei Klassen unterteilt, nämlich 61eichspannungs-Parameterprüfung, Wechsel spannungs-Parameterpriifung und Funktionsprüfung.
Bei der Gleichspannungs-Parameterprüfung werden Gleich-Spannungsparameter im Chip auf unzulässige Ausgangspegel, hohen Stromverbrauch, Ausgangsbelastbarkeit, Störsignalgrenzwerte, Anstiegs- und Abfallzeiten von logischen Signalen und andere Faktoren überprüft. Bei der Wechselspannungs-Parameterprüfung oder dynamischen Prüfung werden Wechsel Spannungsparameter wie die Speicherzugriff szeit, die Vorbereitungszeit und die Haltezeit gemessen, um Funktionsstörungen festzustellen. Funktionsstörungen, die mittels der Wechsel Spannungsprüfung festgestellt werden können, sind beispielsweise "schlechte Schreib-Erholung", bei welcher der Speicher bei jedem Lesezyklus, dem ein Schreibzyklus vorausgegangen ist, die korrekte Information nicht in der vorgeschriebenen Zugriffszeit hervorbringt, und die "Schlafkrankheit", eine Störung, durch welche der Speieher Informationen in kürzerer als der angegebenen Haltezeit verliert.
Beim Funktionsprüfen werden permanente Fehler festgestellt, die zu einem inkorrekten Funktionieren des Speichers führen. Ein Schreib-Lese-RAM-Speicher kann im allgemeinen als funktionsfähig oder richtig arbeitend definiert werden, wenn der aus einer Speicherzelle ausgelesene Wert mit dem zuletzt in dieselbe Zelle eingeschriebenen Wert übereinstimmt und nicht von dem in andere Speicherzellen eingeschriebenen Wert oder von deren Inhalten abhängig ist.
Eine Funktionsprüfung, die alle möglichen Fehler erfaßt, ist undurchführbar, weil bei η Speicherzellen die Komplexität der Prüfung in der Größenordnung von 2n liegt: Jede Zelle müßte bei allen möglichen Zuständen der übrigen Zellen während eines Meßzyklus überwacht werden. Nimmt man bei einem 1-Kilobit-RAM eine Zellenzugriffszeit von 500 Nanosekunden an, würde seine Über-
293
prüfung etwa 10 Sekunden erfordern. Damit eine praktisch durchführbare Prüfprozedur entwickelt werden kann, darf sich daher die Prüfung nicht über alle möglichen Fehler, sondern nur auf die Fehlerteilmenge erstrecken, deren Auftreten am wahrscheinlichsten ist. Dieses Vorgehen ist als Fehlermodel1erstel1ung bekannt.
Das der erfindungsgemäßen Prüfung zugrundeliegende Modell setzt hinsichtlich der Auslegung der zu prüfenden Chips und auch dabei, welche Adreßleitungen Chips und welche Bits innerhalb der Chips anwählen, sehr wenig voraus. Das Modell geht von einer Speichereiement-Hierarchie aus und beginnt dabei auf der untersten Stufe mit Zellen in einem Chip. Die nächste Stufe ist der Chip selbst, gefolgt von einer Platine bzw. Leiterplatte oder Steckkarte mit Chips. Auf der höchsten Stufe wird das System bzw. der Speicher als Ganzes geprüft. Jeder Stufe in der Hierarchie ist eine Teilmenge von Adressenbits zugeordnet, die unter den die Stufe ausmachenden Komponenten auswählen. Die Hierarchiestufen sind in Zeilen und Spalten organisiert, die je von getrennten Adressenbits angesteuert werden. Das Modell schließt Speichersysteme ein, die wortorganisiert sind. Es ist üblich, daß in den oberen Hierarchiestufen ein ganzes Wort in einer Komponente gespeichert ist, mit anderen Worten, eine Steckkarte enthält gewöhnlich ein ganzes Wort. Beispiel: Ein System mit 16-Bit-Wörtern, das aus einer oder mehreren Steckkarten mit einer Anzahl von 16K χ 1 Chips besteht, hat alle
Bits auf jeder Steckkarte, aber es ist für jedes Bit des Wortes ein getrennter Chip vorgesehen. Andererseits kann ein System aus 2K χ 8 Chips mit 8 verschiedenen Datenbits auf jedem Chip aufgebaut werden.
Das Modell deckt folgende Fehler ab:
1. Hängenbleiben von RAM-Speicher-Zellen.
Dies tritt ein, wenn eine Zelle immer auf 1 oder 0 ist.
Bei einem Fehlertyp kann es sein, daß eine Zelle in den einen Zustand geht und ausgelesen werden kann, aber, sobald sie in den entgegengesetzten Zustand übergegangen ist, nicht weiter verändert werden kann. Bei einem anderen, als Übergangsfehler bekannten Fehlertyp scheint die Zelle in bezug auf an sie adressierte Schreiboperationen hängenzubleiben, aber kann aufgrund eines gleichzeitig auftretenden Kopplungsfehlers noch verändert werden.
2. Hängenbleiben von Adressenbits.
Durch diesen Fehler werden zwei Satz Adressen zusammen abgebildet. Tritt der Fehler in einer Hierarchiestufe auf, auf der jede Komponente ein ganzes Wort enthält, werden alle Bits der Wörter beeinflußt.
3. Störung des Decodierers.
Hier handelt es sich darum, daß ein Zeilen- oder Spaltendecodierer nicht wählt, wenn er soll, oder wählt, wenn er nicht soll. Im ersten Fall sind das Ergebnis beim Auslesen Oer oder ler, je nach Speicherkonstruktion, wogegen Schreibvorgänge wirkungslos sind. Mehrfaches Ansteuern bewirkt, daß Schreibvorgänge Speicherzellen beeinflussen. Auf höherer als Chip-Stufe werden durch mehrfaches Auswählen bei einem Lesevorgang die Inhalte mehrerer Zellen abhängig von der Speicherauslegung zerstörungsfrei durch AND- oder OR-Operationen
verknüpft. Abhängig von der Auslegung des speziellen Speicherchips kann gleiches auch bei mehrfacher Spaltenwahl auf Chipstufe zutreffen. Werden mehrere Zeilen in einem Chip gewählt bzw. aufgerufen, und enthalten die betroffenen Zellen nicht alle denselben Wert, ist das Ergebnis einer Leseoperation ein unbestimmter Wert, und die betreffenden Zellen werden auf diesen Wert gesetzt. Dieser Fehler hat auch zur Folge, daß die Daten während Auffrischzyklen zerstört werden.
4. Hängenbleiben eines Datenregisterbits.
Dieser Fehler bewirkt, daß in der betreffenden Komponente des Speichers bei allen Wörtern das gleiche Bit hängengeblieben zu sein scheint.
5. Kurzgeschlossene oder datenmusterabhängige Datenregisterbits.
In diesem Falle ist es nicht möglich, in einigen Datenbitmengen Wörter mit bestimmten Mustern zu schreiben. Dieser Fehler wirkt sich auf alle untergeordneten Komponenten in der Speicherhierarchie aus.
6. Statische Kopplungsfehler.
Bei diesem Fehlertyp sind zwei Zellen miteinander gekoppelt, derart, daß von den vier möglichen Zuständen der Zellen einer oder mehrere gesperrt sind. Ein Sonderfall ist der Alias-Effekt, bei dem die Zustände 01 und 10 gesperrt sind. Außerdem ist eine Schreiboperation in eine Zelle immer erfolgreich und beeinflußt auch andere Zellen. Der invertierte Alias-Effekt ist immer möglich; dabei sind die gesperrten Zustände 00 und 11. Bei einem statischen Speicher, bei dem die Zellen aus Flipflops aufgebaut sind, kann dies durch eine Kopplung der WAHR-Seite des einen mit der FALSCH-Seite eines benachbarten Flipflops eintreten. Kopplungsfehler müssen in Zellen desselben Chips liegen.
7. Dynamische Kopplungsfehler.
Dabei kann das Setzen einer Zelle irgendeine andere Zelle ändern, also setzen oder löschen. Symmetrie braucht dabei nicht vorzuliegen.
8. Datenmusterbedingte Fehler.
Durch einen Fehler dieses Typs wird es unmöglich, irgendein Muster in eine Gruppe benachbarter Zellen einzuschreiben.
9. Adressen-Daten-Kurzschlüsse.
Dieser Fehlertyp tritt auf entweder als Hängenbleiben von Datenbits, wenn sich die Adreßleitung gegenüber der Datenleitung durchsetzt, oder als dynamische Kopplung an eine andere Adresse, wenn sich die Datenleitung gegenüber der Adreßleitung durchsetzt.
10. Kurzschlüsse zwischen Adreß- oder Datenleitungen und der Schreib-Lese-Leitung.
Wenn ein Datensatz oder eine Adresse in den falschen Zustand gedrängt wird, erscheint hierbei ein hängengebliebenes Adressen- oder Datenregisterbit. Wird die Schreib-Lese-Leitung in einen Schreibvorgang gedrängt, wenn ein Lesevorgang aufgerufen ist, gibt der Speicher keinen Wert aus und der erhaltene Wert ist irgendein fester, von der Konstruktion des Speichers abhängiger Wert (üblicherweise alles ler oder allesOer).
Bei einem Galpat-Test, in einen Hintergrund von Oern, wird die erste Zelle (Prüfzelle) komplementiert und dann abwechselnd mit jeder anderen Zelle im Speicher ausgelesen. Diese Sequenz wird wiederholt, bis jede Speicherzelle schließlich die Prüfzelle geworden ist. Das System führt dann die gleiche Sequenz unter Benutzung komplementärer Daten aus. Die Ausführungszeit des Galpat-Tests ist dem Quadrat der Zellenzahl proportio-
nal, er erfaßt jedoch viele Fehler nicht.
Bei einem Durchlauftest wird eine bestimmte Menge von Adressen sequentiell abgearbeitet und dabei bei jeder Adresse das gleiche getan. Bei einem bestimmten Standard-Durchlauftest wird nach dem Einschreiben eines Hintergrundes von Oen in den Speicher vom System die Information an der ersten Adresse ausgelesen und dort eine 1 eingeschrieben. Dieselbe zweistufige Lese/ Schreib-Prozedur wird bei jeder Folgezelle durchgeführt, bis das System das Speicherende erreicht. In umgekehrter Reihenfolge wird dann jede Zelle geprüft und auf 0 rückgesetzt, bis das System zur ersten Adresse zurückkehrt. Schließlich wird der Test unter Benutzung komplementärer Daten wiederholt. Bei einem anderen Durchlauftest wird nicht dasselbe Bit in alle Zellen eingeschrieben, sondern ein durch Anwendung einer Summier(hash)-Funktion auf die Adresse abgeleitetes Bitmuster nacheinander in die Zellen eingetragen.
Jeder Durchlauftest des einen oder des anderen Typs, mit dem eine gründliche Prüfung auf Kopplungsfehler, einschließlich asymmetrischer und invertierter Kopplung in einem Ixn-Speicher durchgeführt wird, der als frei von Übergangsfehlern, Festhäng-Fehlern oder Mehrfach-Zugriff-Decodier-Fehlern angenommen wird, macht jedoch wenigstens 14n Operationen erforderlich. Vgl. hierzu Suk und Reddy, "IEEE Transactions on Computers", Bd. C-30, Nr. 12, Dezember 1981, S. 982-985.
Decodierfehler machen sich als Kopplungsfehler zwischen entsprechenden Zellen in den betroffenen Zeilen bemerkbar. Ein Standard-Durchlauftest beliebiger Ordnung, der unter Benutzung desselben Wertes an allen Adressen durchgeführt wird, erfaßt alle Fehler einer bestimmten Klasse in der betroffenen Zeile nicht, wenn er nur
einen Fehler aus dieser Klasse nicht erfaßt. Die Anwendung einer festen Sequenz kann einen solchen Algorithmus verbessern, indem die Wahrscheinlichkeit erhöht wird, daß entsprechende Zellen in allen möglichen Kombinationen durchprobiert werden. Zum Beispiel wird bei einem RAM-Kurztest mit fester Sequenz für die von John Fluke Mfg.Co. hergestellte Gerätereihe 9000 der Speicher in einem Durchlauf abgetastet und dabei in jede Wortposition ein Wert eingeschrieben. In einem zweiten Durchlauf wird der Wert mit einem erwarteten Wert verglichen. Den in jede Position eingeschriebenen Wert erhält man, indem die Adresse zu einem Wort gefaltet wird, das die Breite des Datenbus hat, und indem das gefaltete Wort komplementiert und gedreht wird, wenn die Adresse ungerade Parität hat. Die Bits des sich ergebenden Wortes sind in ungefähr gleicher Weise von jedem Bit der Adresse abhängig, wodurch der Test geeignet ist zum Feststellen eines Alias-Effekts, hervorgerufen durch einen Kurzschluß auf einer zum Decodierer führenden Adreßleitung, der jedes Datenbit beeinflußt. Dennoch ist die Menge der benutzten Kombinationen durch die Sequenz festgelegt. Zwar kann für eine bestimmte Speicherkonfiguration eine Sequenz existieren, die Decodierfehler aufdeckt, es ist jedoch möglich, eine Konfiguration zu bauen, die jede beliebige Sequenz wirkungslos macht.
Mit TUk sei der Vorgang des k-maligen Kippens bzw. Umladens eines Speicherplatzes, beginnend mit einem Aufwärts(O-nach-l)-Übergang, und mit TDk der entsprechende, mit einem Abwärtsübergang beginnende Vorgang bezeichnet. Ein T ohne folgendes U oder D bezeichnet einen ersten Übergang, der aufwärts oder abwärts gerichtet sein kann. Suk und Reddy zeigen, daß jeder derartige Test folgendes enthalten muß: Aufwärts (bei Adressen) RTUk1 (k] = 2), aufwärts RTDk2 (k£ = 2),
abwärts RTUk3 U3 = 2), abwärts RTDk4 (k4 = 2). Ferner muß entweder k,> 2 oder k^ > 2 oder eine andere Sequenz der Form "aufwärts RTk5 11 (kg ungerade) erscheinen. In ähnlicher Weise muß k3> 2 oder k- > 2 oder eine Sequenz der Form "abwärts RTkg" (kg ungerade) erscheinen.
Suk und Reddy schlagen einen Test A genannten 14N-Test vor, mit dem alle Festhäng-Fehler, Übergangsfehler und Mehrfach-Zugriff-Decodier-Fehler oder alle Kopplungsfehler aufgedeckt werden. Dabei wird davon ausgegangen, daß der Speicher überall auf Oer initialisiert ist. Im Test sind die folgenden Sequenzen enthalten: Aufwärts RWcWcWc, aufwärts RWcWc, abwärts RWcWcWc, abwärts RWcWc. Ein Durchlauftest von niedrigerer Ordnung als 14n wird jedoch nicht alle isolierten Kopplungsfehler feststellen. (R steht für Lesen, W für Schreiben.)
Suk und Reddy schlagen ferner einen Test B genannten 16N-Test vor, mit dem alle Kombinationen von Festhäng-Fehlern, Übergangs- und Kopplungsfehlern aufgedeckt werden, wenn keine Mehrfach-Zugriff-Decodier-Fehler vorhanden sind. Test B besteht aus den folgenden Sequenzen: Aufwärts RWcRWcRWc, aufwärts RWcWc, abwärts RWcWcWc, abwärts RWcRWc. Mit diesem Test, dem ein Durchlauf zum Initialisieren des Speichers auf Oer vorausgeht, werden möglicherweise alle Kombinationen von Festhäng-, Übergangs-, Kopplungs- und Mehrfachzugriff -Decodier-Fehlern aufgedeckt.
Ein von Nair, Thatte und Abraham entwickelter 30N-Test enthält die folgenden Sequenzen, bei denen WO und Wl die Bedeutung "1 schreiben" bzw. "O schreiben" haben: Aufwärts WO, aufwärts Wl, abwärts R, aufwärts RWO, abwärts R, abwärts RWl, aufwärts R, abwärts RWO, aufwärts R, aufwärts RWlWO, abwärts R, abwärts RWlWO, aufwärts R, aufwärts Wl, aufwärts RWOWl, abwärts R, abwärts
RWOWI, aufwärts R.
Die vorstehend angeführten und andere Test-Typen sind zusammengefaßt in Abadair und Reghbati, "Functional Testing of Semiconductor Random Access Memories" (Funktionsprüfung von Halbleiter-RAM-Speichern), Computing Surveys, Bd. 15, Nr. 3, September 1983, S. 175-198.
Jeder der vorstehend angegebenen ebenso wie jeder andere der Anmelderin bekannte Test erfordert eine Prüfzeit von unausführbarer Länge oder ist unzuverlässig, weil mit ihm Fehler oder bestimmte Fehlerklassen nicht aufgedeckt werden.
Die Aufgabe der Erfindung ist es, eine Funktionsprüfung zu schaffen, mit der sich Direktzugriffsspeicher in kürzestmöglicher Zeit überprüfen und dabei die häufigsten Fehler, das sind hängengebliebene Datenzellen, gestörte Decodierer, gestörte Adressen- oder Datenregister und Fehler zwischen Adreß- und Datenleitungen, feststellen lassen.
Im Rahmen dieser Aufgabe gilt es, ein Verfahren und ein System zum Überprüfen eines Direktzugriffsspeichers auf Speicherfehler zu schaffen, die Kopplungs- und Decodiererfehler, welche mehrere verschiedene Adressen beeinflussen, mit hoher Wahrscheinlichkeit aufzudecken vermögen und die Wahrscheinlichkeit maximieren, daß Speicherfehler unter Anwendung eines Speicherprüfalgorithmus festgestellt werden, der eine kürzestmögliche Prüfzeit erfordert. Das Verfahren und das System sollen bei der Speicherfehlerprüfung alle Befehlsadreßleitungen in zumindest annähernd gleicher Weise austesten. Schließlieh soll die Erfindung bei einem schnellen Prüfalgorithmus für Direktzugriffsspeicher eine einheitliche
Adressierung schaffen.
Bei einem diese Aufgabe lösenden Verfahren zum Überprüfen von Direktzugriffsspeichern auf Fehler werden erfindungsgemäß Zufallsbits nacheinander in alle Zellen der Anordnung eingeschrieben, sodann ausgelesen und in Abhängigkeit davon eventuelle Speicherfehler identifiziert. Viele Fehler, wie z.B. Decodiererfehler, beeinflussen eine große Zahl von Zellen-Paaren, zumindest die Anzahl Zellen in einer Zeile oder Spalte, und die Wahrscheinlichkeit, beim Einschreiben von Zufallsdaten in alle Zellen eine Kombination von Bits nicht zu schreiben, die einen Fehler bei einem einzelnen Zellenpaar aufdeckt, beträgt allenfalls 0,75, wohingegen die Wahrscheinlichkeit, den Fehler bei allen betroffenen Zellenpaaren nicht aufzudecken, höchstens 0,75 beträgt, worin k die Anzahl der betroffenen Zellenpaare ist. Wenn also z.B. eine Spalte 32 Zellen aufweist, beträgt die Wahrscheinlichkeit, einen sich als eine Menge von dynamischen Kopplungsfehlern offenbarenden Fehler nicht aufzudecken und dadurch einen Fehler nicht zu melden, 0,7532 oder 0,0001004.
Nach einem anderen Lösungsgedanken der Erfindung werden Zufallsbits, gefolgt von ihren Komplementen, in einer Sequenz von Zellenadressen nacheinander in die Zellen eingeschrieben. Die Inhalte der Zellen werden dann in einer entgegengesetzten Adressensequenz ausgelesen und mit ersten erwarteten Inhalten verglichen und dann komplementär wieder neu eingeschrieben. Schließlich werden die Inhalte der Zellen in der Adressensequenz gelesen und mit zweiten erwarteten Inhalten verglichen. Speicherfehler werden als Ergebnis der Vergleiche identifiziert.
Die Vorrichtung nach der Erfindung umfaßt einen umschaltbaren Pseudozufallszahlengenerator, der als Hardware, z.B. unter Verwendung von UmI aufschieberegistern, oder als Software implementiert ist und Zufallsbit-Sequenzen erzeugt. Der Generator ist umschaltbar, damit zum Durchführen der Prüfsequenz in zwei Richtungen der Chip beim Schreiben einer Sequenz in den Speicher selektiv aufwärts- oder abwärtsadressiert werden kann. Somit erzeugt der Generator dieselbe Pseudozufal 1ssequenz für jede spezielle Anfangseinstellung des Generatorinhalts (d.h. des "Keims"), um Sequenzen zu entwickeln, die wiederholbar sind, aber ein Merkmal von Zufälligkeit besitzen. Eine Steuerschaltung identifiziert und meldet während des Tests gefundene Fehler nach Maßgabe der aus dem Speicher ausgelesenen Bits und der von der erzeugten speziellen Pseudozufal 1ssequenz erwarteten Bits. Weil die Tendenz besteht, daß die Adreßleitungen höherer Ordnung beim sequentiellen Adressieren selten angesprochen werden, wird eine zweite, unabhängige Adressenfunktion hinzugefügt, derart, daß bei aufeinanderfolgenden Adressendurchlaufen jede Adresse einmal und nur einmal gewählt wird. Die Adressenfunktion wird nach der Größe des Speichers parameterisiert, um beträchtliche Aktivität auf allen Adreßleitungen hervorzurufen.
Weitere vorteilhafte Ausgestaltungen der Erfindung ergeben sich aus den Unteransprüchen.
Ausführungsbeispiele der Erfindung werden im folgenden anhand schematischer Zeichnungen näher erläutert. Es zeigt:
Fig. 1 ein Blockschaltbild eines herkömmlichen Direktzugriffsspeichers (RAM) des gemäß der Erfindung zu prüfenden Typs, Fig. 2 ein Diagramm eines RAM-Kurzprüfalgorithmus
gemäß der Erfindung,
Fig. 3 bis 5 Tabellen mit den Ergebnissen von Fehlerprüfungen gemäß der Erfindung für drei verschiedene Fehlertypen, und Fig. 6 ein Blockschaltbild einer Vorrichtung zur
Durchführung der Erfindung.
Ein schneller Durch!auftest für Direktzugriffsspeicher-Systeme umfaßt gemäß der Erfindung fünf Prüfzyklen mit drei nachstehend angegebenen "Abtastungen" bzw. "Durchläufen", worin W "Schreiben" bedeutet, WC "Schreiben des Komplements zu den zuvor in die bezeichnete Zelle eingeschriebenen Daten" und R "Daten auslesen": Aufwärts (bei Adressen) WWc, abwärts RWc und aufwärts R. Ein "Durchlauf" ist in diesem Zusammenhang als Sequenz von Zellenadressen von einer Grenzadresse zu einer anderen definiert. Unter einem "Zyklus" wird ein Zugreifen oder Zugriff, sei es zum Auslesen oder Einschreiben, auf jede Zelle während eines Durchlaufs verstanden. Somit werden beim Aufwärtsadressieren der Zellen eine "1" oder eine "O" und dann ihr Komplement nacheinander in alle Speicherzellen eingeschrieben. Beim Abwärtsadressieren des Speichers werden die Inhalte der Zellen gelesen und dann komplementiert. Eine Differenz zwischen den ausgelesenen und den erwarteten Zelleninhalten weist auf einen Fehler hin. Schließlich werden beim Aufwärtsadressieren des Speichers die Inhalte der Zellen erneut ausgelesen und mit erwarteten Inhalten verglichen. Es gibt also drei Zellen"durchlaufe", von denen zwei bei jeder Zelle in der Sequenz gemäß Fig. 2 zwei Zyklen durchführen. Folglich wird auf jede Zelle insgesamt fünfmal zugegriffen. Jedoch ist der erste "Schreib"-Zyklus der Sequenz wahlweise auszuführen und kann weggelassen werden. Es wird dann eine Testsequenz mit vier Zyklen ausgeführt. Der W-Zyklus zu Beginn wird jedoch bevorzugt, um sicherzustellen, daß die Speicher-
zellen in der Lage sind, sowohl 0-1- als auch 1-0-Übergänge auszuführen.
Wenn unter Anwendung des in Fig. 2 dargestellten Prüfalgorithmus gemäß der Erfindung alle Bits einer festen Sequenz nacheinander in alle Speicherzellen eingeschrieben, dann komplementiert werden etc., werden alle hängengebliebenen Zellen und alle Zellen mit Ali as Effekt festgestellt. Es besteht jedoch die Tendenz, daß bestimmte Fehlerklassen, insbesondere jene in Verbindung mit Decodiererfehlern, nicht erfaßt werden. Somit wird gemäß einem weiteren Lösungsgedanken der Erfindung ein schneller Durchlauftest des vorstehend beschriebenen Typs in der Weise modifiziert, daß bei jedem Adressier-Durchlauf statt derselben Bits oder einer festen Bitsequenz Zufallsbits in aufeinanderfolgende Speicherzellen eingeschrieben werden. Der im Pseudocode geschriebene Test ist nachstehend angegeben, worin Z(X) die Zufallsfunktion und Z(X) ihr Komplement ist:
for a = 0 to N-I do
MEMORY [a] = Z(a)
MEMORY [aj = Z(a)
end for
for a = N-I downto 0 do
if MEMORY [a] t Z(a) then error MEMORY fa] = zTä)
end for
for a = O to N-I do
if MEMORY [aj / Z(a) then error end for
Der Speicher wird also zuerst aufwärtsadressiert (a = O bis N-I), es werden Zufallsbits in aufeinanderfolgende
Speicherzellen eingeschrieben, und dann werden die Komplemente in die Zellen eingetragen. Bei dem darauffolgenden Abwärtsadressieren des Speichers, also dem sukzessiven Adressieren zwischen den Speicherplätzen N-I und 0, werden die Inhalte der Speicherzellen ausgelesen und mit erwarteten Inhalten verglichen. Besteht eine Differenz, wird eine Fehlermeldung generiert. Die Inhalte der Speicherzellen werden beim Abwärtsadressieren des Speichers komplementiert und schließlich beim Aufwärtsadressieren des Speichers ausgelesen und mit erwarteten Inhalten verglichen. Bei einer Abweichung wird eine Fehlermeldung generiert.
Diese Prüfung stellt alle Festhäng-Fehler und alle (normalen und invertiertpn) Alias-Effekte zwischen an verschiedenen Adressen stehenden Bits fest. Folglich werden durch den Test alle hängengebliebenen Datenregisterbits, alle hängengebliebenen Adressenbits und alTe Decodiererfehler, die einen Alias-Effekt hervorrufen, alle "0" oder alle "1" an den betroffenen Adressen festgestellt. Ferner deckt der Test praktisch alle Fehler auf, die mehrere Adressen beeinf1ussen, einschließlich aller übrigen Decodiererfehler, weil sie sich auf eine gesamte Zeile oder Spalte auswirken, sowie kurzgeschlossene oder datenmusterabhängige Datenregisterbits und Kurzschlüsse zwischen Adreß- und Datenleitungen. Kurzschlüsse zwischen Daten- oder Adreßleitungen zu Steuerleitungen werden möglicherweise festgestellt. Die Wahrscheinlichkeit, daß mit dem Test während eines bestimmten Laufs statische Kopplungsfehler aufgedeckt werden, beträgt mindestens 75%, die der Aufdeckung eines dynamischen Kopplungsfehlers oder eines Mehrfach-Zugriff-Fehl ers mit AND/OR-Charakter, der ein einzelnes Zellenpaar an verschiedenen Adressen betrifft, beträgt 25%. Die Wahrscheinlichkeit, daß mit dem Test statische Kopplungen oder Alias-Effekte zwischen Zellen
im selben Wort aufgedeckt werden, ist 50%. Ferner werden mit jedem Lauf des Tests, der mit einem verschiedenen "Keim" durchgeführt wird, um eine bestimmte, eindeutige Zufallsbitsequenz zu initiieren, möglicherweise während eines früheren Laufs nicht entdeckte Fehler festgestelIt.
Man betrachte z.B. den Fall von Mehrfach-Zugriff- Fehlern des AND/OR-Typs, hervorgerufen durch einen gestörten Decodierer. Ein solcher Fehler führt dazu, daß an Zellen in einer Spalte, z.B. X, gerichtete Lese-Befehle den Inhalt der adressierten Zellen wiedergeben, der mit dem Inhalt der entsprechenden Zelle in einer anderen Spalte, z.B. Y, UND-verknüpft (ODER-verknüpft) ist. Dieser Fehler kann asymmetrisch sein, so daß Zellen in der Spalte Y richtig ausgelesen werden. In bestimmten Fällen wird der Fehler nur dann aufgedeckt, wenn Z(a) bestimmte Werte für die betreffenden Zellen annimmt, d.h. die Zelle aus Spalte X ist auf 1, wogegen die entsprechende Zelle in Spalte Y auf O ist. Wenn somit ein AND/OR-Fehler dieses Typs nur ein einzelnes Zellenpaar betrifft, wird er mit einer Wahrscheinlichkeit von nur 25% aufgedeckt. Wenn jedoch eine Spalte Zellen aufweist, ist die Wahrscheinlichkeit, daß diese Kombination niemals auftritt, also die Wahrscheinlichkeit, daß kein Fehler gemeldet wird, (1-0,25)32 = 0,0001004.
Damit bestätigt werden kann, daß der vorstehend beschriebene Test einen Fehler meldet, wenn eine beliebige Anzahl von Zellen mit Alias-Effekt behaftet sind, müssen zwei Fälle berücksichtigt werden.
1. Z(i) = Z(j) für alle Zellen i und j in der Alias-Gruppe. In der zweiten Phase des erfindungsgemäßen Tests, der aus den Schritten Rz (i ) >lftt' bestent> wird
ZH
bei Zugreifen auf die zweite Zelle in der Gruppe, z.B. M-, festgestellt, daß diese auf dem falschen Wert ist, weil der ausgelesene Inhalt, wegen der Operation Wfrj-\ , Z(i) ist, wogegen Z(j) = Z(i) erwartet wird.
2. Z(i) j Z(j) für einige Zellen i und j in der Alias-ZeIlengruppe. In der letzten Testphase wird festgestellt, daß alle Zellen in der Gruppe dieselben Daten enthalten, wogegen wenigstens einige von ihnen entgegengesetzte Werte enthalten sollten.
Eine ähnliche Überlegung zeigt, daß selbst der "invertierte Alias-Effekt", bei dem sowohl der Lese- als auch der Schreibvorgang auf ihrem Weg zu den "wirklichen" Alias-Zellen invertiert werden, immer aufgedeckt wird.
Offene Zeilenleitungen, viele Decodiererfehler und in der falschen Richtung arbeitende Verstärker sind alle Ursache dafür, daß mehrere Zellen als hängengeblieben erscheinen und daher festgestellt werden.
Hängengebliebene Adreßregisterbits, viele Decodiererfehler und kurzgeschlossene Zeilen- oder Spaltenleitungen verursachen Alias-Effekte zwischen Zellen und werden wie oben angegeben aufgedeckt.
Die übrigen Fehlertypen sind komplexer. Die Leistung des erfindungsgemäßen Tests hinsichtlich mehrerer Fehlertypen wird jedoch nachstehend beschrieben.
Gestörter Zei1encodierer; fehlender Faktor Dieser Fehlertyp tritt auf, wenn bei einem Zeilendecodierer, der im wesentlichen ein AND-Glied ist, ein Eingang ständig festgehalten ist, statt über eine entsprechende Adreßleitung angesteuert zu werden. Die Wertigkeit der betreffenden Leitung sei 2 .Ohne Verlust an
AlΊ gemei ngültigkeit kann angenommen werden, daß über die beeinflußte Leitung das Signal uninvertiert in das Verknüpfungsglied gelangt. Das beeinflußte Verknüpfungsglied hält seinen Ausgang sowohl wenn es soll, als auch bei einer Reihe von Adressen, die durch Subtraktion von 2 von den durch das beeinflußte Verknüpfungsglied gesteuerten Zellenadressen abgeleitet wurden, also bei allen Zellen längs einer nachstehend als Zeile A bezeichneten anderen Zeile. Die vom beeinflußten Verknüpfungsglied angesteuerten Zellen liegen in Zeile B.
Das Auslesen aus und Einschreiben in Zellen der Zeile B funktioniert korrekt. Durch Schreiben in eine Zelle in Zeile A wird mit der korrekten Adresse, z.B. M , auch
in die entsprechende Zelle in Zeile B, M/ 2kx, eingeschrieben. Durch Lesen einer Zelle in Zeile A werden die Inhalte beider Zellen irgendwie kombiniert und das Ergebnis wird sowohl am Ausgang der Speichers abgegeben als auch in beide Zellen zurückgeschrieben. Üblicherweise ist die Kombination das Ergebnis einer UND-Verknüpfung in der einen Hälfte des Speichers, in welcher eine fehlende Ladung eine 1 darstellt, und einer QDER-Verknüpfung in der anderen Hälfte des Speichers, in welcher das Vorhandensein einer Ladung eine 1 darstellt.
Die UND-Verknüpfung wird zuerst betrachtet, unter Bezugnahme auf die Tabelle in Fig. 3, in der die Durchführung des erfindungsgemäßen RAM-Tests für alle vier möglichen Zuordnungen von Werten zu Z(i) und Z(j) dargestellt ist, wobei j = (i + 2 ) ist. Mit dem Symbol 11!" ist eine Speicherzelle als Ziel eines Schreibvorganges bezeichnet. Das Symbol "?" bezeichnet eine Speicherzelle als Ziel eines Lesevorganges. Ein "*" zeigt an, daß ein fehlerhafter Wert ausgelesen oder in eine Zelle eingeschrieben worden ist, und ein "f" zeigt an,
daß ein Fehler gemeldet ist. Zum Beispiel zeigt das Symbol "1—»■ 0" an, daß eine Zelle eine 1 hätte enthalten sollen, daß aber ein Lesevorgang an der Zelle deren Inhalt auf 0 gesetzt hat.
Wie in der Tabelle dargestellt, wird ein Fehler bei drei der vier möglichen Zuordnungen von Werten zu Z(i) und Z(j) gemeldet. Weil diese Werte nach dem Zufallsprinzip ausgewählt sind, würde ein solcher Fehler, der nur ein einziges Zellenpaar betrifft, mit einer Wahrscheinlichkeit P = 0,75 aufgedeckt. Tatsächlich jedoch beeinflußt dieser Fehler alle Zellenpaare in Zeile A und Zeile B. Es sei N die Anzahl von Zellen in einer Zeile und Q die Wahrscheinlichkeit, daß der Fehler in einem einzigen Zellenpaar nicht aufgedeckt wird, nämlich Q=I-P= 0,25. Da die Zuordnung von Werten zu Zellen jedoch nach dem Zufallsprinzip gewählt ist, ist das Ereignis, daß der Fehler in einem Zellenpaar auftritt, unabhängig vom entsprechenden Ereignis in jedem anderen Zellenpaar längs der Zeile. Die Wahrscheinlichkeit, daß alle Zellen längs der Zeile einen Fehler
N
nicht feststellen, ist daher Q . Am Beispiel eines 64-K-Speichers: N = 256 und QN = 0,25256 = 7,45 χ ΙΟ"155. Selbst bei einem 1-K-Speieher ist N = 32 und QN = 0,25 = 5,42 χ 10 . Dies ist eine beträchtliche Verbesserung gegenüber der Wahrscheinlichkeit, daß ein Fehler während einer Testsequenz unter Anwendung eines festen statt eines - erfindungsgemäß - nach dem Zufallsprinzip gewählten Sequenzmusters nicht festgestellt wird.
Dort, wo die Inhalte der betreffenden Zellen fehlerhaft OR- bzw. ODER-verknüpft werden, ist die Analyse die gleiche, mit der Ausnahme, daß die Fehler in Fällen festgestellt werden, in denen Z(i) und Z(j) 00, 10 und Ol sind. Die Ergebnisse sind auch die gleichen, wenn
ein gestörter Decodierer in der Durch!aufsequenz nicht später, wie im beschriebenen Beispiel, sondern früher bemerkbar wird.
Gestörter Spaltenwähler
Es sei bei diesem Beispiel angenommen, daß der Spaltenwähler B gestört ist, wodurch es, trotz bestehender Funktionsfähigkeit für alle Schreibvorgänge, eine andere Spalte, A, gibt, mit deren Daten, wenn eine Zelle in ihr ausgelesen wird, die Daten von der entsprechenden Zelle in Spalte B verknüpft werden, so daß das Verknüpfungsergebnis am Speicherausgang ausgegeben wird. Die Daten in den eigentlichen Zellen sind also unbeeinflußt. Je nach Auslegung des Speichers geschieht das Verknüpfen als AND- oder OR-Operation.
Im ersten Fall mit einer OR-Verknüpfung ist die Analyse ähnlich. Die in Fig. 4 benutzten Symbole sind die gleichen wie weiter oben definiert. Zusätzlich wird durch "0:1?" angegeben, daß die adressierte Zelle tatsächlich eine 0 enthält, aber beim Auslesen eine 1 zurückgeschickt hat, bedingt durch die Auswirkung einer anderen Zelle.
Gemäß Fig. 4 werden Fehler in zwei der vier möglichen Wertezuordnungen zu Z(i) und Z(j) gemeldet. Folglich ist P=Q= 0,5, und die Wahrscheinlichkeit, daß bei N = 256 für eine ganze Spalte keine Fehler gemeldet werden, beträgt 0,5256 = 8,64 χ 10"78; bei N = 32 ist die Wahrscheinlichkeit 2,32 χ ΙΟ"10.
Dynamische Kopplungsfehler
Ein dynamischer Kopplungsfehler tritt auf, wenn ein spezieller Übergang, z.B. von 0 nach 1, bei einer Zelle eine andere Zelle setzt (oder löscht). Dieser Fehler kann von einer kapazitiven Kopplung zwischen Zellen
ZS
herrühren.
Unter Bezugnahme auf die in Fig. 5 dargestellte Tabelle wird angenommen, daß aufgrund dynamischer Kopplungen die Zelle j wegen eines Übergangs der Zelle i von 0 nach 1 gesetzt wird. Ein Fehler wird nur in einem Fall festgestellt, nämlich wenn Z(i) = 0 und Z(j) = 1. Folglich ist P = 0,25 und Q = 0,75. Die Wahrscheinlichkeit, daß eine ganze Zeile solcher Fehler nicht aufgedeckt wird, ist QN. Bei einem 1-K-Speicher mit N = 32 ist die Wahrscheinlichkeit somit QN = 0,7532 = 0,0001004.
Es wird somit deutlich, daß der kurze RAM-Test, mit Anwendung eines Wahrscheinlichkeits-Durchlaufes praktisch alle Arten von Speicherfehlern mit einer hohen Wahrscheinlichkeit identifiziert.
Vorzugsweise werden die in die Zellen eingeschriebenen und danach ausgelesenen Daten nach dem Zufallsprinzip von einem umschaltbaren Pseudozufal 1sgenerator erzeugt. Ein Pseudozufailsgenerator ist ein Datengenerator, bei dem aufeinanderfolgende Daten das Merkmal der Zufälligkeit besitzen, jedoch die Sequenzlänge der Daten, wenngleich in den meisten Fällen groß, fest ist, und als Funktion eines Kennbegriffs oder "Keims", welcher den Generator initiiert, wiederholbar ist. Umschaltbare Pseudozufalisgeneratoren sind bekannt, üblicherweise als Hardware verwirklicht und von mehreren Umlaufschieberegistern gebildet, wie es z.B. von Dixon in Kap. 3.2 "Linear Code Generator Configurations" (Konfigurationen von Linearcodegeneratoren), in "Spread Spectrum Systems", John Wiley & Sons, Inc., 1976, beschrieben ist. Jedoch ist der Pseudozufal 1scodegenerator vorzugsweise Software-implementiert, wie nachstehend beschrieben.
Der Codegenerator kann somit 32 Software-implementierte Zufallszahlengeneratoren in Form von parallelen Schieberegistern mit Rückkopplung umfassen, die ein Polynom,
•3-3 \"\
z.B. X - X - 1 oder möglicherweise ein Polynom höherer Ordnung erzeugen. Jedes Bit durchläuft unter Benutzung des als Beispiel angegebenen Polynoms eine gleiche Zykluslänge von 2-1; der Keim beeinflußt nur den Ausgangspunkt. Wenngleich es scheinen mag, daß der Keim willkürlich ausgewählt werden kann, wurde durch Simulation festgestellt, daß der Generator statistische Prüfungen umso besser besteht, je besser die Qualität des Keimes ist. Bei Versuchen wurden die besten Ergebnisse erzielt, wenn Wörter vom (durch Maskieren mit 0X7f800000 ausgewählten) höchstwertigen Byte des Ausgangs einer UNIX-C-Bibliotheksfunktion Rand () zusammengestückelt wurden, die auf der in der Programmiersprache C geschriebenen Anweisung basiert:
return ((randx = randx*ll3515245 + 12345) & 0X7ffffffff).
Eine andere Möglichkeit besteht darin, die zum Generieren von 32 Bit-Werten modifizierte UNIX C-Bibliotheksfunktion Random zum Generieren der Keimwerte zu benutzen. Auf diese Weise erstellt der Software-implementierte Pseudozufallsgenerator ein SHFTRG genanntes, 64 Wörter langes Datenfeld (array), bei dem die unteren 33 Eingänge mit Zufallszahlen initialisiert sind. Sodann wird zum Aufwärtsabrufen von Adressen Z bei jedem Zyklus in der Programmiersprache C folgendermaßen berechnet:
Z = SHFTRG [ (i + 33) & 0X3fJ = SHFTRG f(i + 13) & 0X3FJ SHFTRG fi & 0X3FJ .
Für die Abwärtssequenz wird folgendermaßen gerechnet: SHFTRG fi & 0X3fJ = SHFTRG f(i + 13) & 0X3FJ (Z = SHFTRG [H + 33) & 0X3fJ)
so
Ein ungefähr gleichförmiges Abtasten der Speicherzellen kann implementiert werden, wenn die Adressen mit einer Schrittgröße, die etwa das Produkt aus Goldenem Schnitt, G = ( Vs - D/2 = 0,618033989, und der Speichergröße beträgt, abgearbeitet werden. Eine gleichförmige Adressierung des Speichers ist auch wünschenswert, weil bei einer sequentiellen Adressierung eine Tendenz zu verstärkter Aktivität auf den niedrigen Adreßleitungen besteht, wogegen eine Aktivität auf den hohen Leitungen relativ selten ist. Vorzugsweise sollte der Speicher mit einer Adreßfunktion A adressiert werden, die alle Speicherbits im wesentlichen gleichmäßig beansprucht. Eine solche Funktion muß sicherstellen, daß bei jedem Durchlauf des Tests oder jeder Abtastung auf jede Adresse des Speichers einmal und nur einmal zugegriffen wird.
Gemäß einer weiteren, wichtigen Ausgestaltung der Erfindung wird somit eine Adressenfunktion A(i) entwikkelt, die mit exakt einmaligem Adressieren jeder Speicherzelle alle Adreßleitungen gleichermaßen testet bzw. anspricht. Der Speicherprüfalgorithmus ist somit folgendermaßen modifiziert:
for i = 0 to N-I do
MEMORY [AM)J = ZTT7
MEMORY fA(i)J = Z(i)
end for
for i = N-I downto 0 do
if MEMORY [a(i )j / Z(D then error
MEMORyJa(I)J = zTTT
end for
for i = 0 to N-I do
if MEMORY CaIt)J f Z(i) then error end for
Die Wahl einer zweckdienlichen Adressenfunktion ist im einzelnen bei Knuth, "The Art of Computer Programming, Vol. 3 - Sorting and Searching", S. 511-513, als Fibonacci -Kontrol1summieren (Fibonacci hashing) beschrieben. Die Adressenfunktion muß rasch zu bewerten bzw. auszuwerten sein. Somit ist erfindungsgemäß A(i) = k*i mod N, worin N die Speichergröße und k teilerfremd mit N ist. Ist N eine Potenz von 2, kann k eine beliebige ungerade Zahl sein. Zur Erhöhung der Allgemeingültigkeit kann k eine Zahl ungefähr gleich dem Produkt aus Goldenem Schnitt und der Speichergröße und zur Speichergröße teilerfremd sein. Dies bewirkt, daß die ersten wenigen geprüften Adressen nahezu gl ei climäßig über den gesamten Adressierungsbereich des Speichers verteilt sind. Mit den nachfolgenden Adressen werden die Speicher"löcher" allmählich aufgefüllt, bis der gesamte Speicher durchgeprüft ist.
Einen zweckdienlichen Wert für k erhält man durch Berechnen des Terms "k = G*N". Dann wird k so eingestellt, daß es relativ zu N teilerfremd ist. Ist N eine Potenz von 2, muß k ungeVade sein. Eine allgemeine Regel für willkürliche Speichergrößen ist in dem folgenden C-Code dargestellt:
while (gcd (k, N != k) k++, worin gcd die Funktion ist:
unsigned long gcd(a,b) unsigned long a,b;
unsigned long temp;
while (a != O) {
temp = a;
a = b%a;
b = temp;
] i
return(b);
Fig. 6 zeigt eine vereinfachte Darstellung einer Implementierung des schnellen RAM-Testsystems unter Benutzung eines Pseudozufallsgenerators 22, der, wie vorstehend beschrieben, vorzugsweise Software-implementiert ist, aber auch Hardware-implementiert sein kann. Mit dem Pseudozufal 1sgenerator 22 ist schaltungsmäßig ein AbI aufsteuergerät 20 verbunden, das vorzugsweise ein herkömmlicher Mikroprozessor ist und dazu dient, entsprechend dem vorstehend beschriebenen Wahrscheinlichkeits-Durchlauftest Zufallsdaten in den zu überprüfenden Speicher 10 einzuschreiben und daraus auszulesen. Der Mikroprozessor 20 gibt über eine Leitung 26 dem Pseudzufallsgenerator 22 einen Schlüssel oder "Keim" ein, und gibt aus dem Generator 22 ein in einem Datenregister 28 zu speicherndes erstes Zufallswort aus. Der Mikroprozessor 20 leitet einem Adreß-Kontrol1summierer 30 (address hasher), der die Adressenfunktion entwikkelt, eine erste Adresse zu, welche in einer von einem Adressenregister 36 dem Speicher 10 zuzuleitenden Adressensequenz die untere Grenzadresse darstellt. Das vom Generator 22 entwickelte erste Pseudozufal 1swort wird somit in den Speicher 10 an der Anfangsadresse eingeschrieben, die vom Kontrol1 Summierer 30 als Funktion der unteren Grenzadresse der Sequenz spezifiziert wurde. Der Mikroprozessor 10 komplementiert dann das Wort und schreibt es erneut an die adressierte Stelle im zu prüfenden Speichersystem 10. Dieser Vorgang wiederholt sich für aufeinanderfolgende Adressen der Sequenz bis zur oberen Grenzadresse, bei welcher der erste Durchlauf bzw. die erste Abtastung gemäß Fig. 2 beendet ist.
Ji
Als nächstes steuert der Mikroprozessor 20 den Pseudozufal 1sgenerator 22 so, daß er die Sequenz von Zufallswörtern in der umgekehrten Reihenfolge wiederholt, wobei das Speichersystem 10 über den Kontrol1summierer abwärtsadressiert wird, d.h. die Adressen werden beginnend bei der oberen Grenzadresse zur unteren Grenzadresse hin abgerufen. Aus dem Datenregister 28 für das Speichersystem 10 ausgelesene Wörter werden mit entsprechenden Pseudozufallswörtern aus dem Generator 22 im Register 32 verglichen. Unterschiede zwischen den ausgelesenen Daten und den vom Generator 22 entwickelten entsprechenden Daten sind Hinweis auf einen Speicherfehler, der am Bildschirm 34 anzuzeigen ist. Bei diesem Lauf werden nach jedem Lesen die zuvor in die Zellen des zu prüfenden Speichersystems 10 eingeschriebenen Wörter komplementiert, wodurch der in Fig. 2 dargestellte zweite Durchlauf beendet wird.
Schließlich steuert der Mikroprozessor 20 den Pseudozufallssequenzgenerator 22 so, daß er die anfängliche Sequenz von Pseudozufal 1swörtern dem Datenregister 28 zuleitet, wogegen die entsprechenden Wörter im Speicher 10 gelesen, im Register 32 gespeichert und verglichen werden. Unterschiede zwischen den ausgelesenen Daten und den vom Generator 22 entwickelten entsprechenden Daten sind Hinweis auf einen Speicherfehler, der am Bildschirm 34 anzuzeigen ist.
Weil die vom Pseudozufal 1sgenerator 22 erzeugte Datensequenz eine Funktion der dem Generator 22 anfänglich vom Mikroprozessor 20 zugeleiteten Keimdaten ist, kann der gleiche Test sukzessive auf den Speicher 10 angewandt werden, um eine am Bildschirm 34 sichtbare "Speichersignatur" zu entwickeln. Dies ermöglicht es einem Techniker, am Bildschirm 34 festzustellen, ob das Fehlerprofil für jeden Speicherchip 12 stabil ist, und so
die Güte des Speichers zu bewerten. Ferner ist es entweder durch Einüben des Technikers oder durch eine Softwareanalyse möglich, aus dem Profil eine Fehlerhypothese zu bestimmen. Wenn z.B. alle Fehler einen einzelnen Chip eines zu prüfenden Chipsystems betreffen, dann ist dieser Chip wahrscheinlich fehlerhaft. Wenn alle geprüften Chips ein ähnliches Fehlerprofil zeigen, aus den Profilen aber ersichtlich ist, daß Fehler nur bei ungeraden Adressen auftreten, dann ist vermutlich eine hängengebliebene Adreßleitung die Ursache.
Durch Verarbeiten von Zufallsbits innerhalb eines schnellen RAM-Tests gemäß der Erfindung werden somit die meisten Arten von Speicherfehlern mit hoher Wahrscheinlichkeit und in kurzer Zeit identifiziert. Die Wahrscheinlichkeit, daß alle Fehler identifiziert werden, kann weiter erhöht werden, indem der Wahrschein-1ichkeits-Durchlauftest unter Verwendung verschiedener Keime wiederholt wird. Außerdem besteht bei der in den Test eingegliederten Adressenfunktion die Tendenz, alle hohen Adreßleitungen gleichermaßen zu testen, und dadurch wird die Wahrscheinlichkeit der Fehleridentifikation weiter verbessert.

Claims (1)

  1. Ansprüche
    1.
    Verfahren zur Fehlerprüfung eines Direktzugriffsspeicher-Systems mit mehreren Speicherzellen, von denen jede mit einem Namen eineindeutig adressierbar ist, gekennzeichnet durch folgende Schritte: Einschreiben von Zufallsbits in die Zellen;
    Auslesen der Bits;
    und in Abhängigkeit davon Identifizieren von Speicherfehl ern.
    2.
    Verfahren nach Anspruch 1,
    gekennzeichnet durch folgende Schritte: Einschreiben der Zufallsbits nacheinander in die Zellen entsprechend einer ersten Sequenz von Zellenadressen ;
    Auslesen der Zelleninhalte (Bits) entsprechend einer mit der ersten in Beziehung stehenden zweiten Sequenz von Zellenadressen;
    Vergleichen der ausgelesenen Inhalte mit erwarteten Inhalten
    und, in Abhängigkeit davon, Identifizieren von Speicherfehlern .
    Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch folgende Schritte:
    Einschreiben von Zufallsbits nacheinander in die ZeI-Ten entsprechend einer ersten Sequenz von Zellenadressen ;
    Auslesen und dann Komplementieren der Zelleninhalte entsprechend einer zweiten Sequenz von Zellenadressen ;
    Auslesen der Zelleninhalte entsprechend einer dritten, der zweiten entgegengesetzten Sequenz von Zellenadressen;
    Vergleichen der aus den Zellen ausgelesenen Inhalte mit erwarteten Zelleninhalten
    und, in Abhängigkeit davon, Identifizieren von Speicherfehl ern .
    4.
    Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch folgende Schritte:
    Einschreiben von Zufallsbits und dann ihrer Komplemente nacheinander in die Zellen entsprechend einer ersten Sequenz von Zeilenadressen ;
    Auslesen der Zelleninhalte und dann Komplementieren der Inhalte entsprechend einer zweiten, der ersten entgegengesetzten Sequenz von Zellenadressen; Auslesen der Zelleninhalte entsprechend einer dritten, der ersten entgegengesetzten Sequenz von Zellenadressen;
    Vergleichen der aus den Zellen ausgelesenen Inhalte mit erwarteten Inhalten
    und, in Abhängigkeit davon, Identifizieren von Speicherfehlern .
    5.
    Verfahren nach Anspruch 1 oder 2, gekennzeichnet durch folgende Schritte:
    Einschreiben von Zufallsbits nacheinander in die ZeI-len und dann Komplementieren der Bits entsprechend einer ersten Sequenz von Zeilenadressen; Auslesen der Zelleninhalte und dann Komplementieren der Inhalte entsprechend einer zweiten, der ersten entgegengesetzten Sequenz von Zeilenadressen ; Einschreiben der genannten Zufallsbits nacheinander in die Zellen entsprechend der ersten Sequenz von Zellenadressen ;
    Vergleichen der aus den Zellen ausgelesenen Inhalte mit den zuvor in die Zellen eingeschriebenen Zufallsbits
    und, in Abhängigkeit davon, Identifizieren von Speicherfehl ern .
    6.
    Verfahren nach einem der Ansprüche 1 bis 5, gekennzeichnet durch folgendes Merkmal: Die Speicherzellen werden unter Benutzung einer im wesentlichen gleichmäßig verteilten Sequenz von Zellenadressen adressiert.
    7.
    Verfahren nach einem der Ansprüche 1 bis 6, gekennzeichnet durch folgende Merkmale:
    Die Zufallsbits werden aus Pseudozufal 1ssequenzen erhalten;
    die Schritte Auslesen und Schreiben werden unter Benutzung der Pseudozufallsbitsequenzen gesteuert.
    8.
    Verfahren nach Anspruch 6,
    gekennzeichnet durch folgende Merkmale:
    Die Pseudozufallsbitsequenzen sind umkehrbar;
    die erste und die zweite Sequenz von Zellenadressen sind eine Vorwärts- bzw. eine Rückwärts-Pseudozufal 1ssequenz.
    9.
    Verfahren nach Anspruch 7 oder 8,
    gekennzeichnet durch folgende Merkmale:
    Die Sequenz von Pseudozufal 1sbits wird unter Benutzung eines "Keimes" gesteuert;
    die Verfahrensschritte werden unter Benutzung eines unterschiedlichen Keimes wiederholt.
    10.
    Vorrichtung für die Fehlerprüfung eines Direktzugriffsspeicher-Systems mit mehreren Speicherzellen, von denen jede mit einem Namen eineindeutig adressierbar
    ist,
    gekennzeichnet durch folgende Merkmale:
    Eine Einrichtung zum Erzeugen einer Sequenz von Zufall sbits ;
    eine Einrichtung zum Adressieren der Speicherzellen; eine Einrichtung zum Einschreiben dieser Sequenz von Zufallsbits in die Zellen;
    eine Einrichtung zum Auslesen der Inhalte der Zellen; eine Einrichtung zum Vergleichen der ausgelesenen Inhalte mit erwarteten Inhalten, um Speicherzellenfehler zu identifizieren;
    und eine Einrichtung zum Anzeigen dieser Fehler.
    11 .
    Vorrichtung nach Anspruch 10,
    gekennzeichnet durch folgende Merkmale:
    Eine Einrichtung zum Erzeugen von als erste oder zwei te Sequenz wählbaren Sequenzen von Zeil enadressen; eine Einrichtung zum Einschreiben der Zufallsbitsequenz in die Zellen entsprechend der ersten Adressensequenz;
    eine Einrichtung zum Auslesen der Inhalte dieser ZeI-l en entsprechend der zweiten Adressensequenz und zum Vergleichen der ausgelesenen Inhalte mit der Zufallsbitsequenz.
    12.
    Vorrichtung nach Anspruch 10 oder 11, gekennzeichnet durch folgende Merkmale: Eine Einrichtung zum Adressieren der Zellen des Speichers entsprechend als erste oder zweite Sequenz wählbaren Adressensequenzen;
    eine Einrichtung zum Einschreiben der Zufallsbitsequenz in den Speicher entsprechend der ersten Adressensequenz;
    eine Einrichtung zum Auslesen der Speicherinhalte entsprechend der zweiten Adressensequenz und zum Vergleichen der ausgelesenen Inhalte mit erwarteten Inhalten; und eine Einrichtung, die in Abhängigkeit von der Vergleichseinrichtung Speicherfehler identifiziert.
    13.
    Vorrichtung nach Anspruch 10 oder 11, gekennzeichnet durch folgende Merkmale:
    Eine Einrichtung zum Adressieren von Zellen der Anordnung mit als erste oder zweite Sequenz wählbaren Adressensequenzen;
    ein Prozessor zum
    - Einschreiben der Zufallsbits nacheinander in die Zellen und dann Komplementieren der Bits entsprechend der ersten Adressensequenz;
    - Auslesen der Inhalte dieser Zellen und Vergleichen dieser Inhalte mit erwarteten Inhalten entsprechend der zweiten Sequenz von Zeilenadressen , dann Komplementieren der Inhalte;
    - Auslesen von Inhalten dieser Zellen und Vergleichen dieser Inhalte mit erwarteten Inhalten entsprechend der ersten Adressensequenz;
    - und Identifizieren von Speicherfehlern in Abhängigkeit von den Vergleichen.
    14.
    Vorrichtung nach einem der Ansprüche 10 bis 13, gekennzeichnet durch folgendes Merkmal:
    Die Einrichtung zum Anzeigen der Fehler umfaßt eine Sichtanzeige.
    15.
    Vorrichtung nach einem der Ansprüche 10 bis 14, gekennzeichnet durch folgendes Merkmal: Die Einrichtung zum Erzeugen einer Bitsequenz umfaßt einen Pseudozufallsbitgenerator.
    16.
    Vorrichtung nach Anspruch 15,
    gekennzeichnet durch folgendes Merkmal:
    Eine Einrichtung zum Steuern eines "Keimes" der Pseu· dozufal 1sbitsequenz.
    17.
    05 Vorrichtung nach einem der Ansprüche 10 bis 16, gekennzeichnet durch folgendes Merkmal: Die Einrichtung zum Adressieren umfaßt eine Einrichtung zum Erzeugen von im wesentlichen gleichförmigen Adressen
DE19863607015 1985-03-04 1986-03-04 Verfahren und vorrichtung zur funktionspruefung von direktzugriffsspeichern Withdrawn DE3607015A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/708,749 US4715034A (en) 1985-03-04 1985-03-04 Method of and system for fast functional testing of random access memories

Publications (1)

Publication Number Publication Date
DE3607015A1 true DE3607015A1 (de) 1986-09-04

Family

ID=24847047

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19863607015 Withdrawn DE3607015A1 (de) 1985-03-04 1986-03-04 Verfahren und vorrichtung zur funktionspruefung von direktzugriffsspeichern

Country Status (6)

Country Link
US (1) US4715034A (de)
JP (1) JPS61202255A (de)
CN (1) CN1006095B (de)
DE (1) DE3607015A1 (de)
FR (1) FR2578347B1 (de)
GB (1) GB2172128B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0281740A2 (de) * 1987-02-13 1988-09-14 International Business Machines Corporation Speicher und deren Prüfung

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4868823B1 (en) * 1984-08-31 1999-07-06 Texas Instruments Inc High speed concurrent testing of dynamic read/write memory array
DE3634352A1 (de) * 1986-10-08 1988-04-21 Siemens Ag Verfahren und anordnung zum testen von mega-bit-speicherbausteinen mit beliebigen testmustern im multi-bit-testmodus
US4782486A (en) * 1987-05-14 1988-11-01 Digital Equipment Corporation Self-testing memory
US4782487A (en) * 1987-05-15 1988-11-01 Digital Equipment Corporation Memory test method and apparatus
DE3718182A1 (de) * 1987-05-29 1988-12-15 Siemens Ag Verfahren und anordnung zur ausfuehrung eines selbsttestes eines wortweise organisierten rams
US4873705A (en) * 1988-01-27 1989-10-10 John Fluke Mfg. Co., Inc. Method of and system for high-speed, high-accuracy functional testing of memories in microprocessor-based units
US4876684A (en) * 1988-02-11 1989-10-24 John Fluke Mfg. Co., Inc. Method of and apparatus for diagnosing failures in read only memory systems and the like
US5033048A (en) * 1988-04-01 1991-07-16 Digital Equipment Corporation Memory selftest method and apparatus same
EP0366757B1 (de) * 1988-04-01 1995-07-19 Digital Equipment Corporation Verfahren und vorrichtung zum speicherselbsttest
US4903266A (en) * 1988-04-29 1990-02-20 International Business Machines Corporation Memory self-test
US4965799A (en) * 1988-08-05 1990-10-23 Microcomputer Doctors, Inc. Method and apparatus for testing integrated circuit memories
GB2222461B (en) * 1988-08-30 1993-05-19 Mitsubishi Electric Corp On chip testing of semiconductor memory devices
US4980888A (en) * 1988-09-12 1990-12-25 Digital Equipment Corporation Memory testing system
GB2228113B (en) * 1989-02-10 1993-01-27 Plessey Co Plc Circuit arrangement for verifying data stored in a random access memory
US5222067A (en) * 1990-03-08 1993-06-22 Terenix Co., Ltd. Detection of pattern-sensitive faults in RAM by use of M-sequencers
EP0446534A3 (en) * 1990-03-16 1992-08-05 John Fluke Mfg. Co., Inc. Method of functionally testing cache tag rams in limited-access processor systems
DE69114183T2 (de) * 1990-06-07 1996-05-30 Ibm System zur Reduzierung von Prüfdatenspeichern.
EP0470030A3 (en) * 1990-08-02 1993-04-21 International Business Machines Corporation Fast memory power-on diagnostics using direct memory addressing
US5377148A (en) * 1990-11-29 1994-12-27 Case Western Reserve University Apparatus and method to test random access memories for a plurality of possible types of faults
US5974570A (en) * 1990-12-01 1999-10-26 Hitachi, Ltd. Method for managing data processing system and high-reliability memory
AU660011B2 (en) * 1991-04-26 1995-06-08 Nec Corporation Method and system for fault coverage testing memory
DE4227281C1 (de) * 1992-08-18 1994-02-10 Siemens Ag Anordnung zum Testen eines Speichers nach dem Selbsttestprinzip
JP3645578B2 (ja) * 1992-09-17 2005-05-11 テキサス インスツルメンツ インコーポレイテツド スマート・メモリの組込み自己検査のための装置と方法
FR2697663B1 (fr) * 1992-10-30 1995-01-13 Hewett Packard Cy Circuit de test de mémoire.
US5471482A (en) * 1994-04-05 1995-11-28 Unisys Corporation VLSI embedded RAM test
US5511164A (en) * 1995-03-01 1996-04-23 Unisys Corporation Method and apparatus for determining the source and nature of an error within a computer system
US5757915A (en) * 1995-08-25 1998-05-26 Intel Corporation Parameterized hash functions for access control
US5588046A (en) * 1995-10-23 1996-12-24 Casio Phonemate, Inc. Digital telephone answering device and method of testing message storage memory therein
US5883844A (en) * 1997-05-23 1999-03-16 Stmicroelectronics, Inc. Method of stress testing integrated circuit having memory and integrated circuit having stress tester for memory thereof
US6339834B1 (en) * 1998-05-28 2002-01-15 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communication Research Centre Interleaving with golden section increments
GB2370126B (en) * 2000-07-18 2004-01-21 Sgs Thomson Microelectronics Memory testing
US6694461B1 (en) * 1999-07-26 2004-02-17 Ati International Srl System and method for testing integrated memories
US6532571B1 (en) * 2000-01-21 2003-03-11 International Business Machines Corporation Method to improve a testability analysis of a hierarchical design
US6728911B1 (en) 2000-11-16 2004-04-27 Utstarcom, Inc. System and method for testing memory systems
US6799291B1 (en) * 2000-11-20 2004-09-28 International Business Machines Corporation Method and system for detecting a hard failure in a memory array
US7200759B2 (en) * 2001-06-08 2007-04-03 Safenet B.V. Method and device for making information contents of a volatile semiconductor memory irretrievable
DE10161042B4 (de) * 2001-12-12 2004-02-05 Infineon Technologies Ag Verfahren zum Betreiben eines Halbleiterspeichers und Halbleiterspeicher
US7216270B1 (en) 2004-05-14 2007-05-08 National Semiconductor Corporation System and method for providing testing and failure analysis of integrated circuit memory devices
US7346816B2 (en) * 2004-09-29 2008-03-18 Yen-Fu Liu Method and system for testing memory using hash algorithm
US7634696B2 (en) * 2005-03-03 2009-12-15 Sigmatel, Inc. System and method for testing memory
US7472337B2 (en) * 2005-03-22 2008-12-30 Cummins, Inc. Method and system for detecting faults in an electronic engine control module
JP2007241840A (ja) * 2006-03-10 2007-09-20 Toshiba Corp メモリ診断装置、メモリ診断方法、及びメモリ診断システム
JP5302050B2 (ja) * 2009-03-04 2013-10-02 富士通株式会社 障害解析のためのトレース装置およびトレース方法
ITTO20110355A1 (it) * 2011-04-21 2012-10-22 Red S R L Struttura di appoggio, in particolare per un veicolo
JP5986474B2 (ja) * 2012-09-28 2016-09-06 株式会社東芝 メモリ故障診断装置、メモリ故障診断方法
US9418759B2 (en) * 2014-05-06 2016-08-16 Intel IP Corporation Assist circuits for SRAM testing
CN105702299B (zh) * 2015-12-30 2018-09-28 工业和信息化部电子第五研究所 存储器单元失效检测方法与***
CN106201434B (zh) * 2016-07-05 2018-07-10 南通理工学院 可逆随机数生成器
US10510431B2 (en) * 2017-09-22 2019-12-17 Qualcomm Incorporated Detecting random telegraph noise defects in memory
US10658067B2 (en) * 2018-05-14 2020-05-19 Micron Technology, Inc. Managing data disturbance in a memory with asymmetric disturbance effects
CN112098770B (zh) * 2020-08-20 2024-06-14 深圳市宏旺微电子有限公司 针对动态耦合故障模拟极端环境下的测试方法和装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3579199A (en) * 1969-02-03 1971-05-18 Gen Motors Corp Method and apparatus for fault testing a digital computer memory
US3751649A (en) * 1971-05-17 1973-08-07 Marcrodata Co Memory system exerciser
US3719929A (en) * 1971-08-11 1973-03-06 Litton Systems Inc Memory analyzers
US3719885A (en) * 1971-12-13 1973-03-06 Ibm Statistical logic test system having a weighted random test pattern generator
US3924181A (en) * 1973-10-16 1975-12-02 Hughes Aircraft Co Test circuitry employing a cyclic code generator
US3961252A (en) * 1974-12-20 1976-06-01 International Business Machines Corporation Testing embedded arrays
NL7416755A (nl) * 1974-12-23 1976-06-25 Philips Nv Werkwijze en inrichting voor het testen van een digitaal geheugen.
US4125763A (en) * 1977-07-15 1978-11-14 Fluke Trendar Corporation Automatic tester for microprocessor board
GB2028517A (en) * 1978-08-22 1980-03-05 Catt I Testing digital circuits
US4195770A (en) * 1978-10-24 1980-04-01 Burroughs Corporation Test generator for random access memories
US4222514A (en) * 1978-11-30 1980-09-16 Sperry Corporation Digital tester
US4414665A (en) * 1979-11-21 1983-11-08 Nippon Telegraph & Telephone Public Corp. Semiconductor memory device test apparatus
FR2474226B1 (fr) * 1980-01-22 1985-10-11 Thomson Csf Dispositif de test pour enregistreur numerique multipiste
US4342084A (en) * 1980-08-11 1982-07-27 International Business Machines Corporation Main storage validation means
US4429389A (en) * 1981-05-26 1984-01-31 Burroughs Corporation Test pattern address generator
US4442519A (en) * 1982-03-05 1984-04-10 International Business Machines Corporation Memory address sequence generator
US4513418A (en) * 1982-11-08 1985-04-23 International Business Machines Corporation Simultaneous self-testing system
US4503537A (en) * 1982-11-08 1985-03-05 International Business Machines Corporation Parallel path self-testing system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0281740A2 (de) * 1987-02-13 1988-09-14 International Business Machines Corporation Speicher und deren Prüfung
EP0281740A3 (en) * 1987-02-13 1990-05-09 International Business Machines Corporation Memories and the testing thereof

Also Published As

Publication number Publication date
FR2578347B1 (fr) 1992-09-04
GB2172128B (en) 1989-05-17
FR2578347A1 (fr) 1986-09-05
CN1006095B (zh) 1989-12-13
JPS61202255A (ja) 1986-09-08
CN86102265A (zh) 1986-09-03
GB8528483D0 (en) 1985-12-24
GB2172128A (en) 1986-09-10
US4715034A (en) 1987-12-22

Similar Documents

Publication Publication Date Title
DE3607015A1 (de) Verfahren und vorrichtung zur funktionspruefung von direktzugriffsspeichern
DE3788487T2 (de) Integrierte Schaltung mit Speicherselbstprüfung.
DE60220511T2 (de) Verfahren und system zur optimierung der testkosten und deaktivierungsdefekte für scan- und bist-speicher
DE69116919T2 (de) Selbsttestverfahren für inhaltsadressierbare Speicher
DE2555435C2 (de) Monolithische hochintegrierte Halbleiterschaltung
DE69107463T2 (de) Integrierte Schaltung, System und Verfahren zur Fehlererzeugung.
DE69825234T2 (de) Verfahren und vorrichtung zur selbstprüfung von multi-port-rams
DE69114881T2 (de) Analysevorrichtung zur Rettung von Halbleiterspeicherfehlern.
DE69221045T2 (de) Verfahren und Gerät zur programmierbaren Speicherssteuerung mit Fehlerregelung und Prüffunktionen
DE3750460T2 (de) Halbleiterspeichergerät.
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.
DE69209404T2 (de) Selbsttest integrierter Schaltungen mit hybriden Mustern
DE2328869C2 (de) Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems
DE2555439A1 (de) Monolithische hochintegrierte halbleiterschaltung
DE60316068T2 (de) Prüfverfahren und -gerät für Konfigurationsspeicherzellen in programmierbaren logischen Bauelementen (PLDS)
DE3906494C2 (de)
DE2556822A1 (de) Monolithische hochintegrierte halbleiterschaltung
DE3901579A1 (de) Verfahren und vorrichtung zur funktionspruefung von speichern, die in mit mikroprozessoren versehenen einheiten angeordnet sind
DE3013523A1 (de) Datenerhaltungs- und pruefschaltungsanordnung fuer speicher
DE10315248A1 (de) Eingebaute Selbsttestschaltung
DE4011935C2 (de)
DE2550342A1 (de) Matrixanordnung von logischen schaltungen
DE69912545T2 (de) Schaltkreis mit einer einheit zum testen von verbindungen und ein verfahren zum testen von verbindungen zwischen einem ersten und zweiten elektronischen schaltkreis
DE2515099A1 (de) Schaltung zur staendigen erzeugung eines longitudinalen paritaetswortes fuer den hauptspeicher eines digitalen rechenautomaten
DE102005046588B4 (de) Vorrichtung und Verfahren zum Test und zur Diagnose digitaler Schaltungen

Legal Events

Date Code Title Description
8128 New person/name/address of the agent

Representative=s name: LIECK, H., DIPL.-ING., PAT.-ANW., 8000 MUENCHEN

8141 Disposal/no request for examination