DE3876459T2 - Speicher und deren pruefung. - Google Patents
Speicher und deren pruefung.Info
- Publication number
- DE3876459T2 DE3876459T2 DE8888100944T DE3876459T DE3876459T2 DE 3876459 T2 DE3876459 T2 DE 3876459T2 DE 8888100944 T DE8888100944 T DE 8888100944T DE 3876459 T DE3876459 T DE 3876459T DE 3876459 T2 DE3876459 T2 DE 3876459T2
- Authority
- DE
- Germany
- Prior art keywords
- address
- memory
- test
- bit
- card
- 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
Links
- 238000012360 testing method Methods 0.000 claims abstract description 81
- 230000015654 memory Effects 0.000 claims abstract description 80
- 238000000034 method Methods 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 4
- 238000012937 correction Methods 0.000 abstract description 7
- 230000000694 effects Effects 0.000 abstract description 2
- 230000002950 deficient Effects 0.000 abstract 1
- 238000010998 test method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/10—Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/076—Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
- G06F11/1052—Bypassing or disabling error detection or correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Slot Machines And Peripheral Devices (AREA)
- Credit Cards Or The Like (AREA)
Description
- Die vorliegende Erfindung betrifft Speicher und deren Prüfung und stellt einen effizienten Test für Adreßleitungsfehler in einem umfangreichen Speichersystem eines Datenverarbeitungssystems sowie ein Speichersystem, in dem ein solcher Test integriert ist, vor.
- In der Regel wird es als erforderlich erachtet, alle Teile des Speichers eines Datenverarbeitungssystems im Rahmen eines IPL-Vorgangs sowie zu anderen Zeiten zu prüfen, und daher wird ein als adäquat betrachteter Test in das System integriert - entweder in das eigentliche Speichersubsystem oder in einen anderen Teil des Systems, z.B. in einen Serviceprozessor oder in eine Diagnoseeinheit. Die genaue Beschaffenheit des Tests ist von der Art der Speicherkonfiguration abhängig, sollte aber sowohl das Datenerhaltungsvermögen der Speicherstellen als auch die Funktionsvielfalt des Adressiermechanismus abdecken. Im Rahmen der konventionellen Prüfung wird ein umfassender Test durchgeführt, bei dem alle Teile des Speichers gleichzeitig geprüft werden, und dies kann bei einem großen Speicher dazu führen, daß der Speicher - und folglich das System - über einen längeren Zeitraum nicht für Verarbeitungsvorgänge verfügbar ist. Ein zusätzliches Problem tritt auf, wenn der Speicher mit einem Fehlerkorrektur- und Fehlervermeidungsmechanismus insofern ausgestattet ist, als diese bestimmte Funktionen mit den Daten ausführen und dadurch andere Störungen überlagern können.
- Die vorliegende Erfindung trennt das Testen von Adressierungsmechanismen von anderen Arten von Speicherprüfungen und stellt einen systembetriebenen Speichertest vor, der das Testen von Adreßleitungen unabhängig von anderen Speicherteilen durch systematisches Testen einer Speicherstelle je Adreßleitung relativ zu einer festgesetzten Stelle ermöglicht, wobei die Adresse der Speicherstelle in Verbindung mit einer speziellen Adreßleitung die der festgesetzten Stelle ist, hingegen das Bit der speziellen Adreßleitung invertiert ist, und zwar durch Schreiben eines Datenmusters an die festgesetzte Stelle und eines divergenten Datenmusters, bevorzugterweise die invertierte Form, an die mit der Adreßleitung in Verbindung stehende Speicherstelle, durch Auslesen der zwei Muster aus der Speicherstelle und der festgesetzten Stelle, wobei der Fehlermechanismus, falls vorhanden, blockiert ist, und durch Vergleichen der zwei erhaltenen Muster, wobei das Verfahren mit umgekehrten Mustern wiederholt wird.
- Theoretisch spielt es keine Rolle, in welcher Reihenfolge das Verfahren durchgeführt wird, obgleich das nachfolgend beschriebene Verfahren als das zuverlässigste erachtet wird.
- In bezug auf das Testdatenmuster ist anzumerken, daß mit der Doppelbitkorrektur, die von der fehlerkorrigierenden Code- Logik auf einer Speicherkarte bereitgestellt wird, eine Anzahl von Bits auf einer Karte oder eine größere Anzahl von Bits auf einem Kartenpaar korrigiert werden kann, wobei die größere Anzahl von Bits etwas weniger als doppelt so groß wie die Anzahl von Bits ist, die auf einer einzelnen Karte korrigiert werden kann. Bei dem Adreßtest gemäß der vorliegenden Erfindung wird dann ein Muster generiert, das eine Differenz erzeugt, die größer als diese größere Anzahl von Bits zwischen den an einer getesteten Speicherstelle gespeicherten Daten und irgendeiner Adresse ist, auf die bei einem Adreßleitungsfehler zugegriffen wird. Der Test ermittelt die Wirkung eines Adreßleitungsfehlers außerhalb der Anordnungsmodule und innerhalb eines Kartenpaars und überprüft, ob ein Fehler aufgetreten ist. Der Adreßtest meldet erst dann einen Adreßfehler, wenn eine vorbestimmte Anzahl von Bitfehlern auf einer Karte gefunden wurde. Der Test ist für einzelne als auch für mehrfach auftretende Adreßleitungsfehler gültig. Da während des Tests nur ein Adreßbit für jeden Pfad geändert wird, werden andere fehlerhafte Adreßleitungen erst entdeckt, wenn der Pfad mit solchen fehlerhaften Adreßbits getestet wird. Damit sind selbst bei mehreren Adreßleitungsfehlern die beiden Adressen, die zur Speicherung und zum Auslesen verwendet werden, die einzigen, die ein Adreßbit voneinander entfernt liegen.
- Die vorliegende Erfindung stellt außerdem ein Speichersystem sowie ein Datenverarbeitungssystem vor, in dem ein solcher Test integriert ist.
- In dem US-Patent 4.369.511 ist ein Halbleiter-Speicherprüfsystem beschrieben, das einen Testspeicher an einer von einem Nustergenerator erzeugten Adresse liest und die an der Adresse ausgelesenen Daten mit den erwarteten Daten vergleicht. Ein Blockmaskenspeicher wird von einem Teil der Adresse gelesen, und die Vergleichsoperation des Komparators wird von Blockmaskendaten, die aus dem Blockmaskenspeicher gelesen werden, unterdrückt.
- Die Speicherprüfmethode gemäß dem obigen Patent unterscheidet sich insofern beträchtlich von der vorliegenden Erfindung, als das Patent einen Vergleich der aus einem Speicher gelesenen Daten mit Daten erfordert, die mittels einem Testspeicher 22 generiert und eingespeist und im Komparator 19 verglichen werden.
- Bei dem Verfahren gemäß dem vorliegenden Patent werden Daten an Adreßstellen gespeichert, die sich in einem Bit unterscheiden, und die Daten werden an den beiden Stellen ausgelesen und miteinander verglichen. im Gegensatz zu den Verfahren gemäß dem Stand der Technik wird bei diesem Verfahren kein zweiter Speicher zur Generierung eines erwarteten Speichermusters verwendet.
- Das US-Patent 4.404.519 stellt ein Verfahren und Einrichtungen zum Testen von Daten in einer Speicheranordnung vor, welche in einer großintegrierten Schaltung eingebettet ist. In den Verfahren und Einrichtungen des Patents ist keine Beschreibung des bzw. kein Hinweis auf das Verfahren zum Testen von Adreßleitungen gemäß der vorliegenden Erfindung vorhanden.
- In dem US-Patent 4.429.389 ist ein Testmuster-Adreßgenerator vorgestellt, der spezielle Adreßmuster generiert, in denen ein Adreßgenerator komplementiert und dann in einer Reihe inkrementeller-komplementärer Aktionen inkrementiert wird, so daß alle Kombinationen von Reihen- und Spaltentreibern in der getesteten integrierten Speicherschaltung geprüft werden.
- In dem Patent wird nicht das Verfahren zum Testen von Adreßleitungen gemäß der vorliegenden Erfindung behandelt, bei dem jedes Adreßleitungsbit separat in einem Test mit zwei Durchläufen getestet wird, in dem divergierende Daten an der Testadresse gespeichert werden, sowie an der Adresse, an der Daten im Falle eines Adreßleitungsfehlers für das getestete Adreßbit gespeichert werden würden.
- In dem US-Patent 4.559.626 wird eine Prüfeinrichtung zum Testen von Speichern mit einem internen Speicher vorgestellt, in dem Datenmuster für den Vergleich mit Datenmustern gespeichert werden, die sich in einem getesteten Speicher befinden. Die Muster werden aus dem internen Speicher der Prüfeinrichtung und dem getesteten Speicher ausgelesen und miteinander verglichen.
- In dem Patent wird nicht das Verfahren zum Testen von Adreßleitungen gemäß der vorliegenden Erfindung behandelt, bei dem jedes Adreßleitungsbit separat in einem Test mit zwei Durchläufen getestet wird, bei dem divergierende Daten an der Testadresse sowie an der Adresse gespeichert werden, in der die Daten im Falle eines Adreßleitungsfehlers für das gerade getestete Adreßbit gespeichert werden würden.
- Der Test gemäß der vorliegenden Erfindung ist ein einfaches und effizientes Verfahren, das eindeutige Fehlerinformationen für jeden Adreßbitfehler im Speichersystem zur Verfügung stellt.
- Die vorliegende Erfindung wird im folgenden unter Bezugnahme auf ein Ausführungsbeispiel beschrieben, das in den beiliegenden Zeichnungen dargestellt ist und in welchen:
- Fig. 1 ein vereinfachtes Blockschaltbild eines Systems mit einem Speicher darstellt, der das Prüfverfahren gemäß der vorliegenden Erfindung unterstützt;
- Fig. 2 ein Logikschaltbild des Datenflusses einschließlich der Adreßinformationen einer Speicherkarte darstellt, die mit dem Verfahren gemäß der vorliegenden Erfindung getestet werden kann;
- Fig. 3 eine schematische Darstellung einer Adreßbusstruktur zeigt, die mit einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung verwendet werden könnte; und
- Fig. 4 ein Flußdiagramm des bevorzugten Prüfverfahrens der vorliegenden Erfindung darstellt.
- In Datenverarbeitungssystemen mit Prozessoren und Speichersystemen gemäß Fig. 1 besteht die Notwendigkeit, die Adreßleitungen im Speichersystem auf geeignete Weise zu testen, um sicherzustellen, daß eine richtige Adressierung der Speicheranordnung erfolgt. Fig. 1 ist ein einfaches Blockschaltbild, aus dem hervorgeht, daß der Prozessor 10 über Daten-, Adreß-, Fehler- und Steuerleitungen 14 mit dem Speichersystem 12 verbunden ist.
- In diesem Zusammenhang wird darauf hingewiesen, daß der Prozessor 10 und das Speichersystem 12 auf verschiedene Weise von Systemen implementiert werden können, die gegenwärtig von zahlreichen Hardware-Herstellern, z.B. von IBM, angeboten werden. Beispielsweise könnte als Prozessor der Prozessor eines Systems IBM /370 mit seinem eigenen internen Speichersystem oder ein System IBM 3880 Modell 23 mit einem Cache- Speichersystem 12 oder einem Speichersubsystem, das auch zur Steuerung von DASD-Einheiten (DASD - Direktzugriffsspeichereinheit) dient, eingesetzt werden.
- Bei Prüfverfahren zur Speicheradressierung gemäß dem stand der Technik werden eindeutige Daten - z.B. ein Inkrementmuster oder die Adresse - an jeder Speicherstelle gespeichert, beginnend mit der niedrigsten Adresse bis hin zur höchsten Adresse. Jede Speicherstelle wird gelesen und verglichen, um sicherzustellen, daß die Stelle nicht durch einen Schreibvorgang an einer anderen Stelle überlagert wurde. Das gleiche Muster (oder das umgekehrte Muster) wird dann beginnend an der höchsten Adresse bis hin zur niedrigsten Adresse geschrieben. Die Daten werden erneut gelesen und verglichen, um sicherzustellen, daß die Daten nicht durch einen Schreibvorgang an irgendeiner anderen Stelle überschrieben wurden. Adreßleitungsfehler werden entweder durch eine Paritätsprüfung oder durch Vergleich eines aus der Speicheranordnung gelesenen und nicht mit dem erwarteten Datenmuster übereinstimmenden Datenmusters festgestellt. Mit diesem Prüfverfahren für Adreßleitungsfehler wird auch eine große Anzahl von Datenfehlern in einer Anordnung ermittelt. Eine Reihe der oben genannten Patente gemäß dem Stand der Technik verwendet diese Art der Speicherprüfung.
- Mit der vorstehend beschriebenen Prüfmethode ist die zur Prüfung eines großen Speichers (z.B. 256 MB) erforderliche Zeitdauer äußerst lang. Beispielsweise müssen für die Prüfung eines 256 MB großen Speichers 1 Stunde, 48 Minuten und 32 Sekunden veranschlagt werden. Das Verfahren der vorliegenden Erfindung besteht darin, die Abhängigkeit von den Daten beim Prüfen der Adreßleitungen weitestgehend zu eliminieren. Mit diesem Verfahren kann die Prüfung der Adreßleitungen in nur einer Sekunde durchgeführt werden. Nach erfolgreicher Durchführung der Adressierungsprüfung muß eine separate Datenprüfung durchgeführt werden, doch eine solche Datenprüfung kann parallel zum normalen Systembetrieb ausgeführt werden.
- Unter Bezugnahme auf Fig. 2 wird nun eine typische Speicherkarte 16 beschrieben, auf der die Adreßleitungen zwischen den Puffern 20, 22 und 24 sowie die Speicheranordnungen 26 a, b, c und d getestet werden. Auf Karte 16 ist außerdem ein Satz bidirektionaler Treiber 28 zur Steuerung der Datenübertragung von und zu den Karten vorhanden. Die Steuerleitungen sind als Eingänge für Steuerblock 18 angeschlossen, der die Lese-, Schreib- und Prüfvorgänge, Aktivierung, Kartenwahl sowie Adressierung der Speicheranordnungen 26 a, b, c und d auf Karte 16 steuert.
- Die obige Diskussion in bezug auf die Hardwareumgebung, insbesondere die Beschreibung in bezug auf Fig. 1 und 2, dient zur Skizzierung eines typischen Systems, in welchem das Verfahren gemäß vorliegender Erfindung effizient eingesetzt werden kann.
- Fig. 3 zeigt, daß eine typische Adreßbusstruktur für ein Subsystem mit großem Speicher 24 Bits enthalten kann, wobei 20 Bits nur einmal vorkommende Stellen auf jeder Karte adressieren und 4 Bits zur Kartenwahl dienen. Damit wären 16 Karten mit jeweils 1 Mio. adressierbaren Speicherstellen möglich.
- Die in Fig. 3 gezeigte Adreßbusstruktur dient nur der Veranschaulichung eines typischen Adressierschemas für einen großen Speicher und stellt keineswegs die Grenze für die Anwendbarkeit der vorliegenden Erfindung dar.
- Das Verfahren der vorliegenden Erfindung soll nun unter Bezugnahme auf ein bevorzugtes Ausführungsbeispiel beschrieben werden, das im Flußdiagramm gemäß Fig. 4 dargestellt ist.
- Wenn eine Adreßleitungsprüfung durchgeführt werden soll, wird eine entsprechende Anforderung an den für die Speichersteuerung zuständigen Prozessor 10 im Speichersubsystem übermittelt. Der Speichersteuerungsprozessor 10 beginnt dann die Adreßprüfung, indem er ein erstes Bit in der Adresse auf eine Eins als aktive Adreßleitung setzt. Ein erstes Datenmuster, z.B. ein aus lauter Nullen bestehendes Datenmuster, wird dann an dieser aktiven Adreßleitungsposition gespeichert.
- In jedem Schritt dieses Prozesses werden normale Hardwarefehlerprüfungen, z.B. Paritätsprüfungen, durchgeführt, um sicherzustellen, daß keine anderen, nicht mit der Adreßprüfung im Zusammenhang stehenden Fehler aufgetreten sind, welche die Ergebnisse der gerade durchgeführten Adreßprüfung verfälschen könnten. Als nächstes wird ein anderes Datenmuster mit einer gegenüber dem ersten Muster maximalen Mustertrennung in der inaktiven Adreßleitungsposition für das getestete Adreßbit gespeichert.
- Beispielsweise könnte ein aus lauter Einsen bestehendes Datenmuster an der Adresse Null gespeichert werden, wobei die aktive Adreßleitungsposition und das Testbit das niederwertigste Bit der Adresse darstellen.
- In bezug auf Fig. 3, welche den Aufbau der Adresse auf dem Adreßbus zeigt, wäre die niederwertigste Adreßbitposition mit Bit 23 gekennzeichnet. Mit gesetztem Bit 23 wäre die aktive Adreßleitungsposition die Adresse 1, und die inaktive Adreßleitungsposition wäre die Adresse 0. Wie bereits zuvor werden auch hier normale Hardwarefehlerkorrekturen durchgeführt. Wenn zu irgendeinem Zeitpunkt während dieses Prozesses im Rahmen einer Hardwarefehlerprüfung ein Fehler auftritt, wird die Prüfung beendet, und ein generierter isolationsschlüssel gibt die Ursache des Fehlers an.
- Als nächstes werden die Fehlerkorrekturschaltungen im Speichersystem deaktiviert, und die an den inaktiven und aktiven Adreßleitungspositionen gespeicherten Daten werden dann gelesen und verglichen. Die Daten werden Bit für Bit verglichen, und anschließend wird die Gesamtzahl der fehlerhaften Datenbits ermittelt.
- Eine bestimmte Anzahl von zulässigen Datenbitfehlern wird festgelegt, die das System ermitteln und korrigieren kann. Wenn die Anzahl der fehlerhaften Datenbits bei irgendeinem Vergleich diese vorbestimmte Anzahl überschreitet, wird ein Adreßleitungsfehler angezeigt, und der Test wird mit einem entsprechenden Fehlercode beendet. in einem bevorzugten Ausführungsbeispiel der vorliegenden Erfindung sind sechs Fehler pro Karte zulässig, bevor ein Adreßleitungsfehler gemeldet wird.
- Wenn nicht alle Adreßleitungen getestet wurden, wird mit der Prüfung des nächsten Bits in der Adresse als aktive Leitung fortgefahren, und die oben aufgeführten Schritte werden wiederholt. Diese Schritte werden wiederholt, bis alle Adreßbits an der Speicheradresse für eine bestimmte Karte getestet wurden. Zu beachten ist, daß beim Testen der jeweils nächsten Karte eine Änderung der Kartenwählbits erfolgt, die sich an werthöherer Adresse befinden, und daß jedes der 20 niederwertigen Adreßbits wie oben beschrieben für jede Karte im System erneut getestet werden muß.
- Nach Abschluß des ersten Durchlaufs für alle Adreßleitungen im System erfolgt ein zweiter Durchlauf, in dem die aktive Adreßleitung erneut auf das niederwertige Adreßbit gesetzt wird, und das zweite Datenmuster, z.B. ein aus lauter Nullen bestehendes Datenmuster, in der Adresse Null der inaktiven Adreßleitungsposition gespeichert wird, und das Datenmuster, das in der inaktiven Adreßleitungsposition in dem ersten Durchlauf gespeichert wurde, jetzt in der aktiven Adreßleitungsposition gespeichert wird, z.B. ein aus lauter Nullen bestehendes Datenmuster in Adresse Eins. Wie bereits zuvor ist das niederwertige Adreßbit, auf das verwiesen wird (siehe Fig. 3), Bit 23. Außerdem werden wie zuvor Hardwarefehlerprüfungen wie z.B. Paritätsprüfungen durchgeführt, um sicherzustellen, daß keine anderweitigen Fehler die ggf. vorhandenen Fehler überlagern, die im Rahmen des durchgeführten Tests ermittelt werden.
- Wie beim ersten Durchlauf werden die in den beiden Adressen gespeicherten Daten anschließend gelesen und Bit für Bit verglichen; danach wird die Anzahl der fehlerhaften Bits gezählt, um festzustellen, ob die vorbestimmte Anzahl zulässiger und korrigierbarer Fehler überschritten wurde. Wurde eine solche Anzahl von fehlerhaften Bits überschritten, wird die Prüfung mit einem Fehlercode beendet, der auf einen Adreßleitungsfehler hinweist.
- Wurden nicht alle Adreßleitungen im zweiten Durchlauf geprüft, wird das nächste Adreßbit zur aktiven Adreßbitposition, und der zweite Durchlauf wird für diese nächste Bitposition in der Adresse durchgeführt.
- Die Schritte werden für den zweiten Durchlauf wiederholt, bis alle Adreßbits in der Adresse vollständig geprüft wurden. Es wird darauf hingewiesen, daß eine unabhängige Prüfung der Kartenwählbits im oberen Adreßbereich insofern erforderlich ist, als jede Karte separat für alle aktiven Adreßleitungen auf dieser Karte getestet werden muß: damit werden die zwanzig Adreßleitungen unabhängig und separat für jede gewählte Karte getestet.
- Wie bereits zuvor angemerkt wurde, ist die obige Reihenfolge die bevorzugte, jedoch nicht die einzig mögliche dieser Theorie, nach der diese Vorgänge ausgeführt werden. Bei der vorgenannten Reihenfolge wird fast umgehend ein Adreßleitungsfehler gemeldet, so daß der Test gestoppt werden könnte, doch die gesamte Prüfzeit ist so kurz, daß dies im Grunde kein wesentliches Kriterium ist. Der Test könnte so aufgebaut werden, daß an jeder benutzten Speicherstelle ein Vergleich mit einer bestimmten Reihenfolge der Muster durchgeführt wird, bevor ein anderer Vergleich mit umgekehrten Mustern durchgeführt wird. Dies könnte bedeuten, daß an der festgesetzten Stelle nur zwei Schreibvorgänge erforderlich sind, d.h. ein Schreibvorgang für jede Reihenfolge der Muster.
- Ferner ist anzumerken, daß die Kartenwählleitungen im oberen Adreßbereich - und dies könnten abhängig von dem Speicheraufbau Wählleitungen von Modulen oder untergeordneten Einheiten sein - durch gesonderte Auswahlprüfungen geprüft werden sollten, bevor die Adreßleitungsprüfung, die Gegenstand der vorliegenden Erfindung ist, durchgeführt wird.
- Außerdem wird darauf hingewiesen, daß die Anzahl der zulässigen Datenbitfehler von den Fehlerkorrekturfunktionen des Speichersystems und die Anzahl Ersatzspeicherstellen pro Karte / Modul / untergeordneter Einheit (wie beschrieben) von der Anzahl der Ersatzchips auf jeder Speicherkarte abhängig ist. Wenn beispielsweise eine Doppelbitkorrektur von einem Speichersystem bereitgestellt wird und jede Speicherkarte über einen Ersatzchip verfügt und ein Bit auf jedem Chip gelesen wird, sind bis zu drei Datenfehler zulässig.
- Oberflächlich betrachtet ist die Adreßleitungsprüfung der vorliegenden Erfindung nur für Speichersysteme gültig, in denen jede Adreßleitung mehr Speicherstellen als die Anzahl zulässiger Datenbitfehler wie oben erläutert partiell auswählt.
- Obwohl die Erfindung insbesondere unter Bezugnahme auf ein bevorzugtes Ausführungsbeispiel beschrieben und veranschaulicht wurde, dürfte dem Fachmann klar geworden sein, daß zahlreiche Änderungen in der Form und im Detail vorgenommen werden können, ohne grundsätzlich vom Geltungsbereich der nachstehenden Ansprüche abzuweichen.
Claims (7)
1. Systembetriebener Speichertest, der aufweist: das Testen
von Adreßleitungen unabhängig von anderen speicherteilen
durch systematisches Testen einer Speicherstelle je
Adreßleitung relativ zu einer festgesetzten Stelle, an der die
Adresse der Speicherstelle in Verbindung mit einer speziellen
Adreßleitung die der festgesetzten stelle ist, hingegen das
Bit der speziellen Adreßleitung invertiert ist, durch
Schreiben eines Datenmusters an die festgesetzte Stelle und eines
divergenten Datenmusters, bevorzugterweise die invertierte
Form, an die mit der Adreßleitung in Verbindung stehende
Speicherstelle, durch Auslesen der zwei Muster aus der
Speicherstelle und der festgesetzten Stelle, wobei der
Fehlermechanismus, falls vorhanden, blockiert ist, und durch
Vergleichen der zwei erhaltenen Muster, wobei das Verfahren
mit umgekehrten Mustern wiederholt wird.
2. Test nach Anspruch 1, der die folgenden Stufen aufweist:
Schreiben eines ersten Bitmusters an die Speicherstelle
mit einer Adresse, die mit gesetztem Testbit gebildet
wurde;
Schreiben eines zweiten Bitmusters an die festgesetzte
Stelle mit einer Adresse, die mit nichtgesetztem Testbit
gebildet wurde;
Lesen der Daten an beiden Adressen;
Überprüfen auf eine vorbestimmte Anzahl von Bitfehlern,
die einen permanenten Fehler bilden;
Wiederholen der obigen Schritte für jedes Bit an der
Adresse, bis alle Adreßleitungen getestet wurden;
Schreiben des ersten Datenmusters an die festgesetzte
Stelle mit der Adresse, die mit nichtgesetztem Testbit
gebildet wurde;
Schreiben des zweiten Datenmusters an die Speicherstelle
mit der Adresse, die mit gesetztem Testbit gebildet
wurde;
Lesen der Daten an beiden Adressen;
Überprüfen auf eine vorbestimmte Anzahl von Bitfehlern,
die einen permanenten Fehler bilden und
Wiederholen der obigen Schritte für jedes Bit an der
Adresse, bis alle Adreßleitungen getestet wurden.
3. Test nach Anspruch 2, bei welchem das erste Bitmuster ein
Muster mit lauter Nullen ist, und das zweite Bitmuster ein
Muster mit lauter Einsen ist.
4. Test nach Anspruch 2, bei welchem der Speicher eine
Anordnung mit mehreren Speicherkarten ist, und bei welchem die
vorbestimmte Anzahl von Bitfehlern, die einen permanenten
Fehler bilden, sechs Fehler je Karte in der Anordnung mit
mehreren speicherkarten ist.
5. Test nach Anspruch 4, welcher weiters die folgenden Stufen
aufweist:
Wählen einer speicherkarte in der großen
Speicheranordnung durch Setzen einer oder mehrerer vorbestimmter
Kartenwähl leitungen und
Wiederholen jedes der obigen Schritte zum separaten
Überprüf en von Adreßleitungsfehlern jeder Karte in der
großen Speicheranordnung.
6. Speichersystem, welches einen Test nach einem der vorigen
Ansprüche einschließt.
7. Datenverarbeitungssystem, welches einen Speicher aufweist
und einen Test nach einem der vorigen Ansprüche 1 bis 5
einschließt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/014,749 US4891811A (en) | 1987-02-13 | 1987-02-13 | Efficient address test for large memories |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3876459D1 DE3876459D1 (de) | 1993-01-21 |
DE3876459T2 true DE3876459T2 (de) | 1993-06-09 |
Family
ID=21767473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE8888100944T Expired - Fee Related DE3876459T2 (de) | 1987-02-13 | 1988-01-22 | Speicher und deren pruefung. |
Country Status (14)
Country | Link |
---|---|
US (1) | US4891811A (de) |
EP (1) | EP0281740B1 (de) |
JP (1) | JP2519286B2 (de) |
KR (1) | KR920001104B1 (de) |
CN (1) | CN1008848B (de) |
AT (1) | ATE83331T1 (de) |
AU (1) | AU597140B2 (de) |
BR (1) | BR8800244A (de) |
CA (1) | CA1291269C (de) |
DE (1) | DE3876459T2 (de) |
ES (1) | ES2036223T3 (de) |
GB (1) | GB2201016B (de) |
HK (1) | HK35392A (de) |
SG (1) | SG110891G (de) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5073891A (en) * | 1990-02-14 | 1991-12-17 | Intel Corporation | Method and apparatus for testing memory |
US5555249A (en) * | 1991-09-18 | 1996-09-10 | Ncr Corporation | Non-destructive memory testing in computers |
US5469443A (en) * | 1993-10-01 | 1995-11-21 | Hal Computer Systems, Inc. | Method and apparatus for testing random access memory |
US5479413A (en) * | 1994-06-06 | 1995-12-26 | Digital Equipment Corporation | Method for testing large memory arrays during system initialization |
US5539878A (en) * | 1995-06-16 | 1996-07-23 | Elonex Technologies, Inc. | Parallel testing of CPU cache and instruction units |
US20020091965A1 (en) * | 2000-12-22 | 2002-07-11 | Mark Moshayedi | System and method for early detection of impending failure of a data storage system |
US6842867B2 (en) | 2001-01-26 | 2005-01-11 | Dell Products L.P. | System and method for identifying memory modules having a failing or defective address |
US7308621B2 (en) | 2002-04-30 | 2007-12-11 | International Business Machines Corporation | Testing of ECC memories |
US7149941B2 (en) | 2002-04-30 | 2006-12-12 | International Business Machines Corporation | Optimized ECC/redundancy fault recovery |
US7085973B1 (en) * | 2002-07-09 | 2006-08-01 | Xilinx, Inc. | Testing address lines of a memory controller |
JP4299558B2 (ja) * | 2003-03-17 | 2009-07-22 | 株式会社ルネサステクノロジ | 情報記憶装置および情報処理システム |
DE602004022045D1 (de) * | 2003-05-22 | 2009-08-27 | Nxp Bv | Test von ram adressdekodierern auf widerstandsbehaftete leiterunterbrechungen |
US8230275B2 (en) * | 2005-05-26 | 2012-07-24 | Hewlett-Packard Development Company, L.P. | Use of parity bits to detect memory installation defects |
WO2007055068A1 (ja) * | 2005-11-14 | 2007-05-18 | Mitsubishi Electric Corporation | メモリ診断装置 |
US7609561B2 (en) * | 2006-01-18 | 2009-10-27 | Apple Inc. | Disabling faulty flash memory dies |
CN100445963C (zh) * | 2007-02-15 | 2008-12-24 | 华为技术有限公司 | 一种实现高可靠性空闲链表的方法及装置 |
EP2063432B1 (de) * | 2007-11-15 | 2012-08-29 | Grundfos Management A/S | Verfahren zum Prüfen eines Arbeitsspeichers |
DE102010027287A1 (de) * | 2010-07-16 | 2012-01-19 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zum prüfen eines Hauptspeichers eines Prozessors |
US9189313B2 (en) * | 2012-08-27 | 2015-11-17 | Kabushiki Kaisha Toshiba | Memory system having NAND-type flash memory and memory controller with shift read controller and threshold voltage comparison module |
CN104425040A (zh) * | 2013-08-23 | 2015-03-18 | 辉达公司 | 用于测试存储器的方法和*** |
CN113777911B (zh) * | 2021-10-09 | 2023-06-02 | 中国北方车辆研究所 | 一种基于地址编码的控制器复合防错方法 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3727039A (en) * | 1971-08-02 | 1973-04-10 | Ibm | Single select line storage system address check |
JPS5138570B2 (de) * | 1971-10-13 | 1976-10-22 | ||
NL7416755A (nl) * | 1974-12-23 | 1976-06-25 | Philips Nv | Werkwijze en inrichting voor het testen van een digitaal geheugen. |
US4100403A (en) * | 1977-04-25 | 1978-07-11 | International Business Machines Corporation | Method and means for discriminating between systematic and noise-induced error in data extracted from word organized memory arrays |
JPS5634198A (en) * | 1979-08-27 | 1981-04-06 | Nippon Telegr & Teleph Corp <Ntt> | Releaving method of deficient bit of semiconductor memory |
JPS5651678A (en) * | 1979-10-03 | 1981-05-09 | Nippon Telegr & Teleph Corp <Ntt> | Testing method for memory element and pattern generator for test |
DD148268A1 (de) * | 1979-12-21 | 1981-05-13 | Haupt Wolf Dieter | Schaltungsanordnung zur blockweisen pruefung von hauptspeichern |
JPS6019080B2 (ja) * | 1980-10-17 | 1985-05-14 | 富士通株式会社 | 記憶装置のチェック方法 |
US4429389A (en) * | 1981-05-26 | 1984-01-31 | Burroughs Corporation | Test pattern address generator |
DE3361258D1 (en) * | 1982-03-15 | 1986-01-02 | Siemens Ag Albis | Circuit for testing electrical devices, especially electronic ones |
JPS59180898A (ja) * | 1983-03-31 | 1984-10-15 | Hitachi Ltd | 不良ビット救済方法 |
GB8401806D0 (en) * | 1984-01-24 | 1984-02-29 | Int Computers Ltd | Data storage apparatus |
JPS61137300A (ja) * | 1984-12-06 | 1986-06-24 | Sony Tektronix Corp | メモリ検査方法 |
US4757503A (en) * | 1985-01-18 | 1988-07-12 | The University Of Michigan | Self-testing dynamic ram |
US4715034A (en) * | 1985-03-04 | 1987-12-22 | John Fluke Mfg. Co., Inc. | Method of and system for fast functional testing of random access memories |
JPS61278992A (ja) * | 1985-06-04 | 1986-12-09 | Toppan Moore Co Ltd | 故障検査機能を備えたicカ−ド |
US4686456A (en) * | 1985-06-18 | 1987-08-11 | Kabushiki Kaisha Toshiba | Memory test circuit |
-
1987
- 1987-02-13 US US07/014,749 patent/US4891811A/en not_active Expired - Fee Related
- 1987-08-17 GB GB8719405A patent/GB2201016B/en not_active Expired - Fee Related
-
1988
- 1988-01-07 CA CA000556026A patent/CA1291269C/en not_active Expired - Fee Related
- 1988-01-18 AU AU10356/88A patent/AU597140B2/en not_active Ceased
- 1988-01-22 AT AT88100944T patent/ATE83331T1/de not_active IP Right Cessation
- 1988-01-22 ES ES198888100944T patent/ES2036223T3/es not_active Expired - Lifetime
- 1988-01-22 DE DE8888100944T patent/DE3876459T2/de not_active Expired - Fee Related
- 1988-01-22 EP EP88100944A patent/EP0281740B1/de not_active Expired - Lifetime
- 1988-01-25 BR BR8800244A patent/BR8800244A/pt unknown
- 1988-02-01 CN CN88100490A patent/CN1008848B/zh not_active Expired
- 1988-02-10 JP JP63027818A patent/JP2519286B2/ja not_active Expired - Lifetime
- 1988-02-12 KR KR1019880001348A patent/KR920001104B1/ko not_active IP Right Cessation
-
1991
- 1991-12-31 SG SG1108/91A patent/SG110891G/en unknown
-
1992
- 1992-05-21 HK HK353/92A patent/HK35392A/xx unknown
Also Published As
Publication number | Publication date |
---|---|
CN1008848B (zh) | 1990-07-18 |
EP0281740A2 (de) | 1988-09-14 |
HK35392A (en) | 1992-05-29 |
GB2201016B (en) | 1991-03-13 |
SG110891G (en) | 1992-02-14 |
DE3876459D1 (de) | 1993-01-21 |
GB8719405D0 (en) | 1987-09-23 |
KR920001104B1 (ko) | 1992-02-01 |
JP2519286B2 (ja) | 1996-07-31 |
AU597140B2 (en) | 1990-05-24 |
AU1035688A (en) | 1988-08-18 |
EP0281740A3 (en) | 1990-05-09 |
CN88100490A (zh) | 1988-08-24 |
BR8800244A (pt) | 1988-08-30 |
GB2201016A (en) | 1988-08-17 |
EP0281740B1 (de) | 1992-12-09 |
US4891811A (en) | 1990-01-02 |
JPS63202000A (ja) | 1988-08-22 |
CA1291269C (en) | 1991-10-22 |
ATE83331T1 (de) | 1992-12-15 |
ES2036223T3 (es) | 1993-05-16 |
KR880010362A (ko) | 1988-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3876459T2 (de) | Speicher und deren pruefung. | |
DE69026743T2 (de) | Fehlertolerantes Speichersystem | |
DE3111447C2 (de) | ||
DE69126057T2 (de) | Ein Informationsverarbeitungsgerät mit einer Fehlerprüf- und Korrekturschaltung | |
DE112007003015B4 (de) | Verfahren und Vorrichtung zur Cache-gestützten Fehlerdetektion und -korrektur in einem Speicher | |
DE69026346T2 (de) | Technik zum Informationsschutz für fehlertolerante redundante Informationsspeichereinrichtungen | |
EP1389336A1 (de) | Testverfahren zum testen eines datenspeichers | |
EP1113362B1 (de) | Integrierter Halbleiterspeicher mit einer Speichereinheit zum Speichern von Adressen fehlerhafter Speicherzellen | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE60002872T2 (de) | System und verfahren zur verbesserung des multibit fehlerschutzes in einer computerspeichereinheit | |
WO2008068290A1 (de) | Verfahren und halbleiterspeicher mit einer einrichtung zur erkennung von adressierungsfehlern | |
DE4335061C2 (de) | Mehrspeichervorrichtung | |
DE10206689A1 (de) | Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers | |
DE69508034T2 (de) | Fehlererkennungs-System und -Verfahren für gespiegelten Speicher zwischen doppelten Plattenspeichersteuerungen | |
DE2554502C3 (de) | Verfahren und Anordnung zum Adressieren eines Speichers | |
DE69222554T2 (de) | Paritätsprüfungsschaltung für Speicher mit doppelter Gültigkeitsanzeige | |
EP1055238B1 (de) | Testschaltung und verfahren zum prüfen einer digitalen halbleiter-schaltungsanordnung | |
EP0990236B1 (de) | Anordnung mit speicherzellen und verfahren zur funktionsüberprüfung von speicherzellen | |
DE69323076T2 (de) | Verfahren zur Erkennung fehlerhafter Elemente eines redundanten Halbleiterspeichers | |
EP0127118B1 (de) | Speichersteueranordnung, insbesondere für fehlertolerantes Fernsprech-Vermittlungssystem | |
DE2549392B2 (de) | Verfahren zur erhoehung der zuverlaessigkeit von integrierten speicherbausteinen und zur verbesserung der ausbeute von nach aussen hin fehlerfrei erscheinenden speicherbausteinen bei ihrer herstellung | |
DE68923531T2 (de) | Verfahren und vorrichtung zum speicherselbsttest. | |
DE19904375C2 (de) | Verfahren zur Funktionsüberprüfung von Speicherzellen eines integrierten Halbleiterspeichers | |
DE10229164A1 (de) | Speicherbaustein mit einem Datengenerator und einer Testlogik und Verfahren zum Testen von Speicherzellen eines Speicherbausteins | |
DE102006036384A1 (de) | Mikroprozessorsystem zur Steuerung bzw. Regelung von zumindest zum Teil sicherheitskritischen Prozessen |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |