DE2225841A1 - Verfahren und anordnung zur systematischen fehlerpruefung eines monolithischen halbleiterspeichers - Google Patents
Verfahren und anordnung zur systematischen fehlerpruefung eines monolithischen halbleiterspeichersInfo
- Publication number
- DE2225841A1 DE2225841A1 DE2225841A DE2225841A DE2225841A1 DE 2225841 A1 DE2225841 A1 DE 2225841A1 DE 2225841 A DE2225841 A DE 2225841A DE 2225841 A DE2225841 A DE 2225841A DE 2225841 A1 DE2225841 A1 DE 2225841A1
- Authority
- DE
- Germany
- Prior art keywords
- memory
- monolithic
- error
- data
- correction system
- 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.)
- Granted
Links
Classifications
-
- 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
-
- 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/0706—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 the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—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 the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- 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/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- 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
-
- 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/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
-
- 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/48—Arrangements in static stores specially adapted for testing by means external to the store, e.g. using direct memory access [DMA] or using auxiliary access paths
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Detection And Correction Of Errors (AREA)
- Debugging And Monitoring (AREA)
Description
Aktenzeichen der Anmelderin: FI 968 105
Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers
Die Erfindung betrifft ein Verfahren sowie die zugehörige Anordnung
zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers im Rahmen einer im Betrieb befindlichen digitalen
elektronischen Datenverarbeitungsanlage, bei der von verschiedenen Einrichtungen der Datenverarbeitungsanlage während
des normalen Betriebsablaufs auf den monolithischen Speicher Zugriffe erfolgen können.
Zwischen monolithischen Speichern einerseits und konventionellen Kern-, Platten- und Trommelspeichern andererseits bestehen bezüglich
ihres Aufbaus und ihrer Arbeitsweise zum Teil erhebliche Unterschiede. Ist beispielsweise ein Datenwort in Magnetkernen
abgespeichert, kann angenommen werden, daß dieses Datenwort bis zu seinem Auslesen frei von sich anhäufenden Zufallsfehlern ist.
Die gespeicherte Information ist quasi in Form des magnetischen Feldes im Kern "verriegelt". Demgegenüber können sich bei monolithischen
Speichern im Verlauf der Zeit Zufallsfehler bei
209881/0603
solchen gespeicherten Worten ansammeln, die nicht adressiert sind. Das kann z. B. durch die Veränderung eines Leitungspotentials
das Umschalten eines Verriegelungskreises zur Folge haben, oder ein defekter Verriegelungskreis kann gegenüber dem Sollzustand
langsamer zurückgesetzt werden, wenn sich die Maschine im Ruhezustand befindet, aber auch während des normalen Betriebs.
Im Gegensatz zu Kern-, Platten- oder Trommelspeichern muß man bei monolithischen Speichern damit rechnen, daß sich als Funktion
der Zeit Fehler einstellen. Das bedeutet, daß die Wahrscheinlichkeit des Auftretens eines Fehlers in einer Reihe von Speicherstellen
um so höher ist, je mehr Zeit im Anschluß an den Einschreibvorgang vergangen ist. Mit fortschreitender Speicherzeit
können sich darüber hinaus durchaus mehrere Fehler ansammeln. Es ist darum entscheidend wichtig, daß ein einzelner Fehler in
einem solchen Speicher so schnell wie möglich korrigiert wird, um die Wahrscheinlichkeit der Anhäufung zusätzlicher Fehler gering
zu halten, die dann außerhalb der Fehlerkorrekturmöglichkeiten des jeweiligen Korrektursystems lägen. Ein weiterer Unterschied
zwischen z. B. Kernspeichern und monolithischen Speichern
liegt darin, daß in Kernspeichern beim Auslesen des Speicherinhaltes das gespeicherte Wort in der Regel zerstört wird.
Es hat deshalb wenig Sinn, den Speicherinhalt eines Magnetkerns lediglich aus dem Grund auszulesen, um Aufschluß darüber zu erhalten,
ob sein Inhalt korrekt ist; denn dieser Speicherinhalt müßte dann wieder eingeschrieben werden, was sogleich die Frage
nach der Zuverlässigkeit dieses zweiten Schreibvorgangs aufwirft. Demgegenüber wird bei einem monolithischen Speicher das
gespeicherte Datenwort nicht beim Lesen zerstört. Vielmehr bedeutet ein Auslesevorgang lediglich ein Nachschauen nach den
Zuständen der einzelnen Verriegelungskreise, ohne daß die darin gespeicherte Information zerstört wird. Darüber hinaus bedeutet
bei einigen Arten von monolithischen Speichern der Lesevorgang gleichzeitig eine Regeneration des Speicherzelleninhaltes.
Die bisher bekanntgewordenen Fehlererkennungssysteme und zugehörigen
Verfahren waren meist ausschließlich auf solche Kern-,
209881/0603
FI 968 105
Platten- und Troinmelspeicherarten zugeschnitten. Aus diesem
Grund wurden lediglich dann Speicherinhalte ausgelesen, wenn sie im Rahmen des laufenden Programms benötigt wurden. Folgedessen
ist z. Z. kein System oder Verfahren zur systematischen Erkennung und Korrektur von Fehlern entwickelt worden, das auf
die besonderen Eigenschaften von monolithischen Speichern zugeschnitten ist. Die Prüfung von Datenspeichern auf Fehler geschieht
deshalb bei bekanntgewordenen Fehlererkennungssystemen, entweder in der Weise, daß der Speicher für sich außerhalb des
normalen Betriebs der Datenverarbeitungsanlage oder während des Betriebs, in diesem Fall jedoch beschränkt auf die gerade ohnehin
adressierten Speicherzellen, auf Fehler geprüft wird.
Die Aufgabe der vorliegenden Erfindung besteht darin, ein Verfahren
sowie eine Anordnung zur Durchführung einer systematischen Fehlerprüfung von monolithischen Speichern anzugeben, wobei insbesondere
der Tatsache Rechnung getragen werden soll, daß sich in Abhängigkeit von der Speicherzeit Zufallsfehler anhäufen können,
die dann die Kapazität des jeweiligen Korrektursystems überschreiten
würden. Insbesondere soll die Fehlerprüfung nicht auf die im Rahmen des ablaufenden Verarbeitungsvorgangs adressierten
Speicherstellen beschränkt sein. Dabei ist zu berücksichtigen, daß für bestimmte Anwendungszwecke gewisse Speicherstellen oft
sehr lange Zeit ohne Zugriff bleiben, welche Tatsache gerade die beschriebene zeitabhängige Fehleranhäufung zufolge haben kann.
Gemäß der vorliegenden Erfindung wird diese Aufgabe gelöst durch ein Verfahren zur systematischen Fehlerprüfung eines monolithischen
Halbleiterspeichers im Rahmen einer im Betrieb befindlichen digitalen elektronischen Datenverarbeitungsanlage, bei der
von verschiedenen Einrichtungen der Datenverarbeitungsanlage während des normalen Betriebsablaufs auf den monolithischen Speicher
Zugriffe erfolgen können, das dadurch gekennzeichnet ist, daß neben den im normalen Ablauf des Verarbeitungsvorganges zugriff
sberechtigten Einrichtungen der Datenverarbeitungsanlage, z. B. der Zentraleinheit, den Ein-/Ausgabegeräten etc., während
209881/0S03
FI 968 105
der nicht anderweitig benötigten Zeitzyklen ein systematischer, vorzugsweise sequentieller Zugriff zu den Speicherstellen des
monolithischen Speichers auf der Grundlage des sog. Cycle-Stealing-Verfahrens von Seiten eines Speicherkorrektursystems
erfolgt. Dieses Speicherkorrektursystem umfaßt Schaltkreise zur Feststellung, wann der Speicher nicht anderweitig benötigt wird oder ob ein im Rahmen des Hauptprogramms festgestellter Paritätsfehler zu korrigieren ist. Die systematische Adressierung fortlaufender Speicheradressen in den zyklusfreien Zeiten kann in
einfacher Weise mittels eines Zählers und einer bedingungsabhängigen Zählerfortschaltung durchgeführt werden. Es bieten
sich ausgehend von diesem Grundgedanken auch weitergefaßte
und kompliziertere Fehlerprüfschaltungen, z. B. mit einem als
Untersystem arbeitenden Minirechner an.
monolithischen Speichers auf der Grundlage des sog. Cycle-Stealing-Verfahrens von Seiten eines Speicherkorrektursystems
erfolgt. Dieses Speicherkorrektursystem umfaßt Schaltkreise zur Feststellung, wann der Speicher nicht anderweitig benötigt wird oder ob ein im Rahmen des Hauptprogramms festgestellter Paritätsfehler zu korrigieren ist. Die systematische Adressierung fortlaufender Speicheradressen in den zyklusfreien Zeiten kann in
einfacher Weise mittels eines Zählers und einer bedingungsabhängigen Zählerfortschaltung durchgeführt werden. Es bieten
sich ausgehend von diesem Grundgedanken auch weitergefaßte
und kompliziertere Fehlerprüfschaltungen, z. B. mit einem als
Untersystem arbeitenden Minirechner an.
Durch eine Vorrangschaltung kann dabei gemäß einer vorteilhaften Weiterbildung der Erfindung gesichert werden, daß diese systematische
Speicherprüfung nicht in Konflikt mit dem in Betrieb
befindlichen übrigen Datenverarbeitungssystem gerät. Ordnet man dem Speicherkorrektursystem die gegenüber den gerade ablaufenden Betriebsfunktionen niedrigste Priorität zu, ist eine Beeinträchtigung des normalen Programmablaufs vermieden. Wird schließlich gerade zu einem Zeitpunkt, zu dem eine bestimmte Speicherstelle systematisch überprüft wird, gerade diese Speicherstelle unmittelbar anschließend z. B, von der Zentraleinheit adressiert, resultiert daraus kein Konflikt, da das Auslesen zur Fehlerüberprüfung ja den Speicherinhalt nicht zerstört hat und somit dieser anschließende Zugriff der Zentraleinheit unbedenklich zugelassen werden kann.
befindlichen übrigen Datenverarbeitungssystem gerät. Ordnet man dem Speicherkorrektursystem die gegenüber den gerade ablaufenden Betriebsfunktionen niedrigste Priorität zu, ist eine Beeinträchtigung des normalen Programmablaufs vermieden. Wird schließlich gerade zu einem Zeitpunkt, zu dem eine bestimmte Speicherstelle systematisch überprüft wird, gerade diese Speicherstelle unmittelbar anschließend z. B, von der Zentraleinheit adressiert, resultiert daraus kein Konflikt, da das Auslesen zur Fehlerüberprüfung ja den Speicherinhalt nicht zerstört hat und somit dieser anschließende Zugriff der Zentraleinheit unbedenklich zugelassen werden kann.
Die erfindungsgemäße Anordnung zur systematischen Fehlerprüfung der genannten Art ist gekennzeichnet durch ein Speicherkorrektursystem
mit einem Zähler, der in freien Zykluszeiten sequentiell zur Erzeugung aufeinanderfolgender Speicheradressen fortschaltbar
ist, einer Prüfeinrichtung zur Fehlerprüfung der so adressierten Speicherstelleninhalte und mindestens einem Fehlerspei-
209881/0603
FI 968 105
eher zur Aufnahme des fehlerhaften Datenwortes samt seiner Adresse.
Weitere vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
Die Erfindung wird im folgenden an Hand von Ausführungsbeispielen unter Zuhilfenahme der Zeichnungen näher erläutert.
Es zeigen:
Fig. 1 ein vereinfachtes Blockschaltbild für das Speicherkorrektursystem
einer elektronischen digitalen Datenverarbeitungsanlage;
Fig. 2 ein mehr detailliertes Blockschaltbild des Speicherkorrektursystems
;
Fig. 3 ein detailliertes Blockschaltbild der Paritätskorrektureinrichtung;
Fig. 4 ein detailliertes Blockschaltbild des Prüfbitgenerators
;
Fig. 5 ein detailliertes Blockschaltbild des Vorrangregisters und der Adreßtorschaltung;
Fig. 6 ein detailliertes Blockschaltbild des Prüfbitgenerators sowie des Decoders für die Anwendung
in der Paritätsprüfeinrichtung und
Fig. 7 ein anschauliches Beispiel eines zu korrigierenden fehlerhaften Wortes.
In Fig. 1 ist das verallgemeinerte Blockschaltbild eines Datenverarbeitungssystems
dargestellt, das das der Erfindung zugrundeliegende Speicherkorrektursystem anwendet. Zum Verständnis der
Erfindung ist es notwendig, kurz die äußeren Bedingungen anzu-
2 09881/0603
FI 968 105
geben, unter denen die Erfindung zum Einsatz kommen soll. Die
Beschreibung der übrigen Schaltkreise und -einrichtungen ist
auf das zum Verständnis der vorliegenden Erfindung notwendige Maß beschränkt. Der monolithische Speicher IO erhält Daten-
und Prüfbits vom Eingangspufferspeicherregister (MBR) 12. Der Ausgang des Speichers 10 ist mit der Paritätsprüfeinrichtung
14 verbunden, die sowohl die Daten- als auch die Prüfbits vom Speicher 10 erhält. Falls das aus dem Speicher gelesene Wort
einen Fehler aufweist, wird es in der Paritätsprüfeinrichtung korrigiert und in das Ausgangspufferspeicherregister (MBR) 16 übernommen. Der Ausgang des MBR 16 ist auf die Speicherausgangssammelschiene 18 geführt, von wo aus die Daten je nach Erfordernis für die Eingänge irgendeiner der Ein-ZAusgabeeinrichtungen (I/O) 20, der Zentraleinheit (CPU) 22 und der Datentorschaltung 24 zur Verfügung gestellt sind. Die Ein-ZAusgabeeinrichtungen 20 und die Zentraleinheit CPU 22 arbeiten in an sich bekannter Weise. Um von irgendeiner der Ein-/Ausgabeeinrichtungen oder der Zentraleinheit 22 Daten in den Speicher 10 zu übernehmen, werden diese Daten zunächst auf die Speichereingangssammelschiene 26 gegeben, die weiterhin mit dem Prüfbitgenerator 28 gekoppelt ist. Aus dem Datenflußverlauf zwischen dem Ausgangspufferspeicherregister MBR 16 und dem Prüfbitgenerator 28 ist zu ersehen, daß lediglich die Datenbits ohne Prüfbits miteinander verbunden werden. Wie bereits erwähnt, arbeiten die Ein-Z Ausgabeeinrichtungen 20 und die Zentraleinheit CPU 22 bezüglich dieser Datenbits in an sich bekannter Weise. Es ist dabei die Aufgabe des Prüfbitgenerators 28, Prüfbits für die an seinem
Eingang ankommenden Daten zu erzeugen und diese Prüfbits zusammen mit den Daten über ODER-Glieder 30, 30' usw. an das Eingangspufferspeicherregister 12 zu liefern.
auf das zum Verständnis der vorliegenden Erfindung notwendige Maß beschränkt. Der monolithische Speicher IO erhält Daten-
und Prüfbits vom Eingangspufferspeicherregister (MBR) 12. Der Ausgang des Speichers 10 ist mit der Paritätsprüfeinrichtung
14 verbunden, die sowohl die Daten- als auch die Prüfbits vom Speicher 10 erhält. Falls das aus dem Speicher gelesene Wort
einen Fehler aufweist, wird es in der Paritätsprüfeinrichtung korrigiert und in das Ausgangspufferspeicherregister (MBR) 16 übernommen. Der Ausgang des MBR 16 ist auf die Speicherausgangssammelschiene 18 geführt, von wo aus die Daten je nach Erfordernis für die Eingänge irgendeiner der Ein-ZAusgabeeinrichtungen (I/O) 20, der Zentraleinheit (CPU) 22 und der Datentorschaltung 24 zur Verfügung gestellt sind. Die Ein-ZAusgabeeinrichtungen 20 und die Zentraleinheit CPU 22 arbeiten in an sich bekannter Weise. Um von irgendeiner der Ein-/Ausgabeeinrichtungen oder der Zentraleinheit 22 Daten in den Speicher 10 zu übernehmen, werden diese Daten zunächst auf die Speichereingangssammelschiene 26 gegeben, die weiterhin mit dem Prüfbitgenerator 28 gekoppelt ist. Aus dem Datenflußverlauf zwischen dem Ausgangspufferspeicherregister MBR 16 und dem Prüfbitgenerator 28 ist zu ersehen, daß lediglich die Datenbits ohne Prüfbits miteinander verbunden werden. Wie bereits erwähnt, arbeiten die Ein-Z Ausgabeeinrichtungen 20 und die Zentraleinheit CPU 22 bezüglich dieser Datenbits in an sich bekannter Weise. Es ist dabei die Aufgabe des Prüfbitgenerators 28, Prüfbits für die an seinem
Eingang ankommenden Daten zu erzeugen und diese Prüfbits zusammen mit den Daten über ODER-Glieder 30, 30' usw. an das Eingangspufferspeicherregister 12 zu liefern.
Die ODER-Glieder 30 usw. sind zwischen dem Prüfbitgenerator
und dem Eingang des Pufferspeicherregisters MBR 12 eingefügt
dargestellt, um anzuzeigen, daß vom Eingang des MBR 12 Daten- und Prüfbits entweder vom Prüfbitgenerator 28 oder von der Datentorschaltung 24 empfangen werden können. Für den Fall, daß
dargestellt, um anzuzeigen, daß vom Eingang des MBR 12 Daten- und Prüfbits entweder vom Prüfbitgenerator 28 oder von der Datentorschaltung 24 empfangen werden können. Für den Fall, daß
209881/0603
FI 968 105
durch die Paritätsprüfeinrichtung 14 ein Fehler festgestellt
wird, wird ein diesbezügliches Signal an die Zentraleinheit CPU 22 und/oder die Ein-/Ausgabegeräte 20 übertragen. Ein solches
Signal wird je nach dem vorliegenden System verschieden ausgewertet. Beispielsweise stoppen einige Systeme beim Auftreten
eines solchen Signals den Takt, während andere den Fehler lediglich feststellen und in der Datenverarbeitung fortfahren. Ein
Fehlererkennungssignal würde ebenfalls die Datentorschaltung 24 aktivieren, die Datenbits von der Speicherausgangssammelschiene
18 und Prüfbits vom Ausgang des MBR 16 erhält. Der Ausgang der Datentorschaltung 24 ist auf den Eingang des Pufferspeicherregisters
MBR 12 über ODER-Glieder 30 gekoppelt, um die Daten und Prüfbits in den monolithischen Speicher 10 einzugeben.
Der monolithische Speicher 10 wird über den Decoder 32 adressiert,
der seinerseits die Adressen vom Speicheradreßregister (MAR) .34 erhält. Die Adreßtorschaltung 36 arbeitet unter der Steuerung
vom Vorrangregister 38 und erhält ihre Adressen von all den verschiedenen Einrichtungen (CPU, I/O, Speicherkorrektursystem MCS),
die möglicherweise den Speicher 10 adressieren können. Das Vorrangregister 38 auf der anderen Seite erhält Steuersignale von
der Zentraleinheit CPU 22 und den Ein-/Ausgabegeräten 20. Die Ein-/Ausgabegeräte 20 sind mit einer darin vorgesehenen Steuerschaltung
dargestellt. Die Zentraleinheit CPU 22 ist dargestellt mit einem Instruktionsregister und einem Operandenregister, das
darin in an sich bekannter Weise vorgesehen ist. Entsprechend der Darstellung in Fig. 1 sind zwischen den Ein-/Ausgabegeräten
20 und der CPU 22 Zwischenverbindungen vorgesehen, wie sie zur Darstellung der verschiedensten Daten- und Steuerleitungen im
Rahmen eines allgemeineren Datenverarbeitungssystems wünschenswert sein können.
Um in einem monolithischen Speicher 10 Fehler feststellen und korrigieren und damit die fehlerfreie Arbeitsweise eines solchen
Speichers gewährleisten .zu können, ist das Speicherkorrek-
209881/0603
FI 968 105
tursystem (MCS) 40 vorgesehen. Es ist der ausgesprochene Zweck dieses Speicherkorrektursystems MCS 40, die allgemeine Funktionstüchtigkeit
bzw. Fehlerfreiheit des Speichers 10 durch systematische Fehlererkennung und -korrektur zu überwachen. In seiner
einfachsten erfindungsgemäßen Form enthält dieses Speicherkorrektursystem MCS 40 u. a. einen Zähler zur systematischen und
sequentiellen Adressierung des Speichers 10 über das Speicheradreßregister MiR 34 zu solchen Zeiten, während derer der Speicher
10 nicht in anderer Weise im Verlaufe des gerade ablaufenden Programms im Betrieb ist. Das Speicherkorrektursystem M©3 40
arbeitet somit auf der Grundlage eines Cycle-Stealing-Verfahrens,
d, h. es werden für die Speicherprüfung im Verlaufe des Hauptprogramms nicht benutzte Zykluszeiten ausgenutzt. Demgemäß erhält
das Speicherkorrektursystem MCS 40 vom Vorrangregister 38 ein Eingangssignal, welches anzeigt, daß der Speicher nicht im
Rahmen des Hauptprogramms benutzt wird, und daß das Speicherkorrektursystem seine nächste Adresse an die Adreßtorschaltung 36
liefern sollo Dieses Signal wird seinerseits durch die Adreßtorschaltung
36 und das Speicheradreßregister MAR 34 geleitet, im Decoder 32 decodiert und damit zur Adressierung des Speichers 10
ausgewertet. Dieses sequentielle Adressieren dauert so lange an, wie der Speicher nicht im Rahmen des Hauptprogramms gebraucht
wirdo Durch diese Adressierung könnten beispielsweise nacheinander
alle Worte auf demselben monolithischen Halbleiterplättchen ausgelesen werden. Wird dabei von der Paritätsprüfeinrichtung 14
ein Fehler festgestellt, wird ein diesbezügliches Fehlersignal über die Leitungsverbindung zwischen der Paritätsprüfeinrichtung
14 und dem Speicherkorrektursystern 40 übertragen. Bei einer solchen
Fehlersituation wird von dem Speicherkorrektursystem MCS 40 die gerade vorliegende fehlerhafte Dateninformation über die in
Fig. 1 gekennzeichnete Leitungsverbindung vom Speicher 10 erhalten. Die Adresse dieser fehlerhaften Dateninformation wird über
die vom Speicheradreßregister MAR 34 kommende Leitung zugeführt. Im Speicherkorrektursystem MCS 40 wird dann die fehlerhafte Dateninformation
und ihre zugehörige Adresse gespeichert.
968 105 209881/0603
Wird der Speicher 10 im Rahmen des Hauptprogramms benötigt, geht
vom Speicherkorrektursystem MCS 40 kein solcher Adressiervorgang aus. Wird jedoch während des Laufs des Hauptprogramms ein Fehler
festgestellt, wird diese Information auch in der gerade beschriebenen Weise über die Paritätsprüfeinrichtung 40 vom Speicherkorrektursystem
40 aufgenommen. Das fehlerhafte Wort und seine zugehörige Adresse werden in gleicher Weise vom Speicherkorrektursystem
MCS 40 aus dem Speicher 10 und dem Speicheradreßregister 34 erhalten. Das Speicherkorrektursystern gemäß der vorliegenden
Erfindung wurde absichtlich in übertrieben vereinfachter Weise zur Erläuterung des erfindungsgemäßen Fehlerkorrekturkonzepts
beschrieben; es kann jedoch ausgehend von der beschriebenen grundsätzlichen Arbeitsweise sehr weitgehend im Sinne eines
komplizierteren und umfassenderen Aufbaus ausgedehnt werden.
In Fig. 2 ist ein Ausführungsbeispiel des Speicherkorrektursystems
MCS 40 gemäß der vorliegenden Erfindung dargestellt, über
die Torschaltung 402 gelangen die Daten (mit den Prüfbits) vom Speicher 10 in das Speicherkorrektursystem MCS 40. Die entsprechenden
Adressen werden vom Speicheradreßregister MAR 34 über die Torschaltung 404 erhalten. Die Torschaltungen 402 und 404
sind normalerweise geschlossen, da lediglich fehlerhafte Daten und Adressen in das Speicherkorrektursystem gelangen. Demzufolge
werden die Torschaltungen 402 und 404 lediglich aufgrund einer Fehleranzeige von der Paritätsprüfeinrichtung 14 geöffnet. In
dem Speicherkorrektursystem 40 ist zur systematischen Abfrage
des monolithischen Speichers 10 ein Zähler 408 vorgesehen», Dieser
Zähler 408 adressiert sequentiell über die Adreßtorschaltung 36 den Speicher. Um zu gewährleisten, daß der Zähler 408 nur im
sog. Cycle-Stealing-Verfahren arbeitet, d. h. nicht während äes
normalen Speicherbetriebs, wird der Zähler 408 nur durch Signale von dem Vorrangregister 38 und der Paritätsprüfeinrichtung 14
über das UND-Glied 410 sowie den Inverter 412 fortgeschaltete Die Schaltungen 410 und 412 verdeutlichen das Konzept, nachdem
das Vorrangregister 38 die Verfügbarkeit einer Priorität und die Paritätsprüfeinrichtung 14 die Tatsache anzeigen muß, daß
Fi 968 105 209881/0603
kein Paritätsfehler zu korrigieren war, bevor das UND-Glied 410 die Weiterschaltung des Zählers 408 veranlaßt.
Um ein fehlerhaftes Wort und seine zugehörige Adresse festzuhalten,
ist ein Fehlerspeicher 414 vorgesehen. Dieser Fehlerspeicher 414 kann durch irgendeinen üblichen Speicher, z. B.
einen Magnetkernspeicher, einen monolithischen Speicher oder auch durch einen Magnetband-, -platten- oder -trommelspeicher dargestellt
werden. Wenn das fehlerhafte Wort und seine zugehörige Adresse gespeichert worden sind, ist eine Hauptfunktion des Speicherkorrektursystems
MCS 40 erfüllt. Um eine umfassendere Fehlerkorrekturmöglichkeit bereitzustellen, ist jedoch ein Minirechner
416 vorgesehen. Dieser Minirechner 416 dient im wesentlichen zur Diagnose der vom Speicher 414 etwa erhaltenen fehlerhaften
Daten und zugehörigen Adressen im rechnerabhängigen Direktbetrieb (On-line-Betrieb). Je nach dem gewünschten Grad der
Komplexität kann der Minirechner 416 eine komplette digitale Rechneranlage zur Bereitstellung von Steuer- und Datensignalen
an das Hauptsystem zur Identifizierung, Korrektur und überbrückung
fehlerhafter Bitstellen usw. sein. In einer einfachen Version kann der Minirechner 416 einen Zähler enthalten, mit
dem die zeitliche Häufigkeit bestimmter Adreßfehler verfolgt wirclf wodurch zeitabhängig auftretende Fehladressen identifiziert
und somit bet timrat warden kann, ob einzelne Hal'bleiterplättchei'i
und/oder Module des Speichers völlig fehlerhaft sind. Zur Identifizierung und Vermeidung solcher fehlerhaften Einheiten
werden Steuer- und Datensignale an das Hauptsystem geliefert. Der Minirachner 416 veranlaßt weiterhin eine Programmunterbrechung
direkt an die Zentraleinheit CPU 22, falls der Typ des diagnostizierten Fehlers dieses rechtfertigt bzw. erfordert.
Wie bereits dargestellt wurde, werden die Daten (mit ihren Prüfbits)
unc ihrer jeweiligen Adresse im Fehlerspeicher 414 nur dann gespeichert, wenn ein Fehler vorliegt er·:- diese Angaben demzufolge
-:h:rch die Torschalr^^^er ^02 ura -:tJ4 durchge^ciialtet-wurden,
Uiii ar: den Tor schaltungen 402 und 404 entsprechende Steuer-
209881/0603 BAD ORIGINAL
Signale verfügbar zu haben, ist durch die Paritätsprüfeinrichtung
14 eine Einrichtung zur Erkennung des fehlerhaften Datenworts und seiner entsprechenden Adresse vorhanden. In Fig. 3
ist dargestellt, daß die Paritätsprüfeinrichtung 14 vom Speicher
IO unkorrigierte Datenworte in der Form von Daten- und Prüfbits erhältο Es sei beispielsweise ein Wort mit vier Datenbitsteilen
(D3, D5, D6, D7) und drei Prüfbitstellen (Cl, C2, C4) angenommen. Diese unkorrigierten Datenworte werden dem Prüfbitgenerator
und Decoder 600 sowie den Exklusiv-ODER-Gliedern 301-307 zugeführt.
Die Ausgänge des Prüfbitgenerators und Decoders 600 führen ebenfalls auf die Exklusiv-ODER-Glieder 301-307 und weiterhin
auf die ODER-Glieder 308. Der (später näher beschriebene) Prüfbitgenerator und Decoder 600 erzeugt an seinem Ausgang einen
oberen Spannungspegel, wenn irgendeines der Prüf- oder Datenbits als fehlerhaft befunden wurde. Ist beispielsweise das Prüfbit
Cl fehlerhaft, entsteht am Eingang des Exklusiv-ODER-Gliedes
301 vom Ausgang des Prüfbitgenerators und Decoders 600 her dieser obere Spannungspegel. Entsprechend tritt dieser Fall für ein
fehlerhaftes Prüfbit C2 am Exklusiv-ODER-Glied 302 auf. Ist irgendeines
der Prüf- oder Datenbits fehlerhaft, so daß einer der Eingänge des ODER-Gliedes 308 auf dem oberen Spannungspegel liegt,
wird ein Fehleranzeigesignal an das Speicherkorrektursystem 40,
die Zentraleinheit CPU 22 und die Datentorschaltung 24 geliefert.
Die Exklusiv-ODER-Glieder 301-307 arbeiten in der üblichen Weise, daß bei gleichen Eingangspegeln der Ausgang auf dem unteren Pegel
ist und nur bei entgegengesetzten Eingangspegeln der Ausgang auf dem oberen Spannungspegel ist. Es soll weiterhin angenommen
werden, daß der obere Spannungspegel eine binäre 1 und entsprechend
der untere Spannungspegel eine binäre 0 darstellt. Damit ergibt sich für die Korrektur der bis dahin unkorrigierten Datenworte
der folgende Ablauf. Wenn eines der Exklusiv-ODER-Glieder eine 0 erhält und diese 0 korrekt ist, wird der entsprechende
Eingang vom Prüfbitgenerator und Decoder 600 ebenfalls eine 0 sein und zum Ausgangspufferspeicherregister 16 wird eine 0 übertragen.
Auch wenn an einem Exklusiv-ODER-Glied eine korrekte 1
209881 /0603
anliegt und der andere Eingang des Exklusiv-ODER-Gliedes vom
Prüfbitgenerator und Decoder folgedessen eine 0 erhält, wird
diese korrekte 1 zum MBR 16 weitergeleitet. Tritt jedoch an einem Eingang der Exklusiv-ODER-Glieder eine fehlerhafte 0 auf,
wird vom Prüfbitgenerator und Decoder eine 1 erzeugt und diese binäre 1 zum MBR 16 übertragen. In gleicher Weise wird beim Empfang
einer fehlerhaften 1 durch eines der Exklusiv-ODER-Glieder der entsprechende Eingang vom Prüfbitgenerator und Decoder ebenfalls
eine 1 sein, so daß eine binäre 0 zum MBR 16 weitergeleitet wird. Auf diese Weise werden alle Bits (Prüf- und Datenbits)
in der Paritätsprüfeinrichtung korrigiert und ein Fehlersignal in der bezeichneten Weise an das übrige System weitergeleitet.
Bezüglich weiterer Einzelheiten der Arbeitsweise des Prüfbitgenerators
und Decoders 600 wird auf Fig. 6 Bezug genommen. Die Datenbits werden vom Prüfbitgenerator 602 empfangen, der in seinem
Aufbau und in seiner Arbeitsweise mit dem im einzelnen unter Bezug auf Fig. 4 beschriebenen Prüfbitgenerator 28 identisch ist.
Es werden daher die vom Prüfbitgenerator 602 an die Exklusiv-ODER-Glieder 604, 606 und 608 gelieferten Prüfbits Cl, C2 und
C4 so lange korrekt sein, wie die Datenbits am Eingang korrekt sind. Den zweiten Eingang jedes der Exklusiv-ODER-Glieder bilden
die direkt vom Speicher 10 kommenden Prüfbits Cl, C2 und C4. Diese Exklusiv-ODER-Glieder arbeiten in derselben Weise wie vorher
im Zusammenhang mit Fig. 3 beschrieben. Tritt daher an den jeweils beiden Eingängen jedes der Exklusiv-ODER-Glieder dasselbe
Signal auf, sind alle drei Eingänge des Decodiernetzwerkes 610 0, so daß das Ausgangssignal auf jeder der sieben Ausgangsleitungen
ebenfalls 0 sein wird. Das Decodiernetzwerk 610 arbeitet als üblicher Binärdecoder.
Zur Erklärung der Arbeitsweise des Prüfbitgenerators 602 soll Fig. 4 herangezogen werden, in der ein detailliertes Schaltbild
des dazu identischen Prüfbitgenerators 28 dargestellt ist. Dem aus einer Zusammenschaltung von Exklusiv-ODER-Gliedern in der
dargestellten Weise aufgebauten Prüfbitgenerator werden ledig-
209881 /0603
FI 968 105
lieh Datenbits zugeführt. Die von dieser speziellen Schaltung
erzeugten Prüfbits werden üblicherweise als "Hamming Bits" und
der zugehörige Code als Hamming Code bezeichnet. Zu jedem gegebenen Bitmuster auf den Dateneingangsleitungen D3, D5, D6 und
D7 wird ein ganz bestimmtes Prüfbitmuster auf den Prüfbit-Ausgangsleitungen Cl, C2 und C4 erzeugt. Es besteht natürlich die
Möglichkeit, einen solchen Hamming Code auf jede gewünschte Anzahl von Daten- und Prüfbits auszuweiten. Als Besonderheit bei
dieser beschriebenen Ausführung des Prüfbitgenerators ist es anzusehen, daß die Datenbits in unveränderter Form durchgeleitet
werden.
Nach der Beschreibung der Anordnung und Arbeitsweise des Prüfbitgenerators
und Decoders 600 an Hand der Fign. 4 und 6 soll unter Bezugnahme auf Fig. 7 ein spezielles Beispiel erläutert
werden. Es soll angenommen werden, daß ein korrektes Datenwort mit den zugehörigen Prüfbits lautet: 0110011. Es soll weiter
angenommen werden, daß dieses Datenwort in folgender Weise fehlerhaft erhalten wird: 0100011. Die dritte Bitstelle ist demnach
fehlerhaft. Die durch den in Fig. 4 dargestellten Prüfbitgenerator 602 erzeugten Prüfbits ergeben für Cl eine 1, während C2
und C4 jeweils 0 sind. Demgegenüber war in dem fehlerhaften Wort C2 eine 1, während Cl und C4 jeweils 0 waren. Durch einen
Vergleich der alten Prüfbits mit den neuen Prüfbits in den Exklusiv-ODER-Gliedern
604, 606 und 608 ergeben sich die entsprechenden Ausgänge zu 1, 1 und 0. Diese Bitkonstellation stellt
den Eingang des Decodiernetzwerkes 610 dar. Dabei stellt C4 die höchstrangige Binärstelle entsprechend der Dezimalen 4 dar; C2
entspricht der nächsten Binärstelle entsprechend der Dezimalen 2, während Cl die Binärstelle mit dem niedrigsten Rang entsprechend
der Dezimalen 1 darstellt. Es ist nun bekannt, daß die Binärzahl 110 der Dezimalzahl 3 entspricht. Das Decodiernetzwerk
wird daher an seinem Ausgang eine Anzeige geben, daß die Position 3 fehlerhaft ist, indem auf der dritten Leitung für
das Datenbit D3 eine binäre 1 erscheint. Das bedeutet, daß das Exklusiv-ODER-Glied 303 eine 1 an seinem Eingang erhält, während
209881 /0603
FI 968 105
die anderen Exklusiv-ODER-Glieder jeweils einen O-Eingang aufweisen.
Da der andere Eingang des Exklusiv-ODER-Gliedes 303 eine
O ist, erscheint am Ausgang des Exklusiv-ODER-Gliedes 303 als korrigierte Information eine binäre 1. Das vollständige Ausgangssignal
der Paritätsprüfeinrichtung 14 für das Ausgangspufferspeicherregister
MBR 16 lautet daher: 0110011; es entspricht damit dem korrigierten Datenwort. Die grundsätzliche Art der Fehlerkorrektur
würde nicht verändert, wenn man statt von links die Wertigkeiten von rechts zählte, d. h. die fehlerhafte Bitstelle
in diesem Fall in der fünften Spalte von rechts anstatt in der dritten Spalte von links läge.
Die im einzelnen beschriebene Paritätsprüfeinrichtung 14 liefert
demnach korrigierte Datenworte an das Ausgangspufferspeicherregister 16 sowie ferner ein Fehleranzeigesignal an das Speicherkorrektursystem
MCS 40, die Zentraleinheit 42 und die Datentorschaltung 24. Der Zweck der Zuführung des Fehlersignals an die
Datentorschaltung 24 besteht darin, ein korrigiertes Wort auch in den Speicher 10 einzuschreiben, d. h. den Verbleib eines fehlerhaften
Wortes dort nicht zuzulassen. Das von der Paritätsprüfeinrichtung 14 kommende Signal des Inhalts, daß ein Fehler korrigiert
worden ist, wird im Speicherkorrektursystem MCS 40 über die Torschaltungen 402 und 404 (Fig. 2) erhalten, wodurch das
fehlerhafte Datenwort und seine zugehörige Adresse in den Fehlerspeicher 414 aufgenommen wird. Dasselbe Fehlersignal blockiert
ebenfalls die Fortschaltung des Zählers 408 über das Inverterglied
412 sowie das UND-Glied 410. Selbst wenn das Vorrangregister anzeigt, daß der Speicher nicht anderweitig benötigt wird,
wird daher der Zähler 408 beim Vorliegen eines solchen Fehlersignals nicht fortgeschaltet.
Im Rahmen eines weiteren Beispiels soll nun angenommen werden, daß das von der Paritätsprüfeinrichtung kommende Signal anzeigt,
daß das System fehlerfrei arbeitet. Damit nun vom Speicherkorrektursystem
MCS 40 die nächstfolgende Adresse zur Adreßtorschaltung 408 aufgerufen werden kann, muß der Zähler 408 anlaufen.
Fi 968 κ» 209881/0G03
Damit der Zähler 408 fortgeschaltet werden kann, muß weiterhin vom Vorrangregister 38 ein Signal kommen, so daß beide Eingänge
des UND-Gliedes 410 erfüllt sind. Um festzustellen, welche der mehreren Signalquellen, nämlich MCS 40, CPU 22 sowie jedes der
Ein-/Ausgabegeräte 20, zu einem bestimmten Seitpunkt den monolithischen
Speicher 10 adressieren soll, ist das im einzelnen in Fig. 5 erläuterte Vorrangregister 38 vorgesehen. In Fig. 5
ist weiterhin die mit dem Vorrangregister 38 zusammenarbeitende Adreßtorschaltung 36 dargestellt. Die in Fig. 5 gewählte Rangordnung
der Prioritäten gibt den höchsten Vorrang den Ein-/Ausgabegeräten, den zweithöchsten Vorrang den Instruktionsabrufsignalen
(I/A) von der Zentraleinheit CPU, den rangmäßig dritten Vorrang den von der Zentraleinheit kommenden Datenabruf- bzw.
Ausführsignalen (D/A) und die niedrigste Priorität dem Speicherkorrektur
sys tem 40. Auf diese Weise kommt das Speicherkorrektursystem 40 nicht mit dem normalen Arbeitsablauf des Systems in
Konflikt, es sei denn, ein schwerwiegender Fehler wird erkannt, in welchem Fall ein Unterbrechungssignal direkt an die Zentraleinheit
CPU 22 gegeben wird. Die von den Ein-/Ausgabegeräten bzw. der Zentraleinheit stammenden Steuersignale werden jeweils
auf den Setzeingang der Verriegelungsschaltungen 392 bzw. 394
bzw. 39 6 geleitet. Von den Ein-/Ausgabegeräten, der Zentraleinheit CPU und dem Speicherkorrektursystem MCS 40 stammende Datensignale
werden zu den Torschaltungen 310, 312, 314 und 316 in
der gezeigten Weise geführt. Die von einer dieser Datenquellen stammenden Daten werden durch eine solche Torschaltung über das
weitere ODER-Glied 320 zum Speicheradreßregister 34 gesteuert. Das als einzelnes großes ODER-Glied geschaltete ODER-Netzwerk
320 ist nur schematisch angedeutet und natürlich so geschaltet, daß alle Bits von einer der Datenquellen in einem bestimmten
Zyklus so angeliefert werden, daß der Ausgang eine bestimmte Registerstelle im Speicheradreßregister 34 einnimmt. In dieser
Beziehung ist die ODER-Schaltung 320 in ihrem Aufbau ähnlich zu den ODER-Gliedern 30, 301 usw. in Fig. 1. Das Vorrangregister
38 enthält ferner die eigentliche Vorrangschaltung 380. Diese Schaltung 380 v/eist die Charakteristik auf, daß es beim Aniie-
2098817 0603
gen mehrerer Signale jeweils den am meisten links angeordneten
signalführenden Verriegelungsschaltkreis bevorzugt schaltet.
Einzelheiten dieser Schaltung 380 (left most "1" circuit) sind in dem Buch "Planning a Computer System" von Buchholz, Verlag
McGraw-Hill, Seite 142 beschrieben. Wird daher von der Verriege lungs schaltung 392 ein Eingangssignal erhalten, wird die Torschaltung
310 aktiviert ungeachtet der Tatsache, ob ein weiterer Eingang für die anderen Verriegelungsschaltungen vorliegt.
Die Verriegelungsschaltung 392 wird in diesem Fall unverzüglich rückgestellt, so daß die Vorrangschaltung 380 sofort wieder bereit ist für einen Eingang entweder von der Verriegelungsschaltung
392 oder einer der anderen Verriegelungsschaltungen. Demnach wird durch ein von der jeweils am weitesten links angeordneten
Verriegelungsschaltung an die eigentliche Vorrangschaltung 380 gegebenes Signal die zugehörige Torschaltung aktivieren. Wenn
also die Verriegelungsschaltung 392 kein Eingangssignal an die Schaltung 380 gibt, dies aber bezüglich der Verriegelungsschaltung
394 der Fall ist, wird die Torschaltung 312 geöffnet. Gibt keine der Verriegelungsschaltungen 392, 394 oder 396 ein Signal
an die eigentliche Vorrangschaltung 380, sind alle Ausgänge der Vorrangschaltung 380 auf ihrem unteren Pegel, so daß alle Ausgänge
der Inverterglieder 382, 386 und 388 den oberen Pegel annehmen. Dadurch werden die Eingangsbedingungen für das UND-Glied
390 erfüllt, was zur Folge hat, daß auch die Bedingungen für das UND-Glied 410 im Speicherkorrektursystem MCS 40 erfüllt sind,
woraufhin der Zähler 408 zum Aufruf der nächsten Adresse an die Torschaltung 316 und zur Weiterleitung an das Speicheradreßregister
34 veranlaßt wird.
Es wurde ein Speicherkorrektursystern zum systematischen Abfragen
eines monolithischen Speichers auf der Grundlage des sog. Cycle-Stealing-Verfahrens
beschrieben, bei dem fehlerhafte Daten und ihre zugehörigen Adressen festgehalten werden. Weiterhin wurde
beschrieben, wie die Fehler festgestellt und während des normalen Betriebs des Speichers korrigiert werden können. Dieses
2 0 9 8 8 1 /06U3
FI 968 105
Grundkonzept kann im Rahmen der Erfindung unter Zuhilfenahme normalen
fachmännischen Könnens ausgeweitet werden zu einem je nach
den Erfordernissen ausgeweiteten und umfassenderen Fehlererkennungs-
und -korrektursystern.
209881 /06Ü3
FI 968 105
Claims (2)
- PATENTANSPRÜCHEVerfahren zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers im Rahmen einer im Betrieb befindlichen digitalen elektronischen Datenverarbeitungsanlage, bei der von verschiedenen Einrichtungen der Datenverarbeitungsanlage während des normalen Betriebsablaufs auf den monolithischen Speicher Zugriffe erfolgen können, dadurch gekennzeichnet, daß neben den im normalen Ablauf des Verarbeitungsvorganges zugriffsberechtigten Einrichtungen der Datenverarbeitungsanlage, z. B. der Zentraleinheit, den Ein-/Ausgabegeräten etc., während der nicht anderweitig benötigten Zeitzyklen ein systematischer, vorzugsweise sequentieller Zugriff zu den Speicherstellen des monolithischen Speichers auf der Grundlage des sog. Cycle-Stealing-Verfahrens von seiten eines Speicherkorrektursystems erfolgt.2ο Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die durch das Speicherkorrektursystem durch Abfrage in freien Speicherzyklen etwaig festgestellten fehlerhaften Datenworte und zugehörigen Speicheradressen in einem Fehlerspeicher festgehalten werden.ο Verfahren nach den Ansprüchen 1 oder 2, dadurch gekennzeichnet, daß von dem Speicherkorrektursystem neben den systematisch in freien Zykluszeiten festgestellten Fehlern im normalen Ablauf des Verarbeitungsvorganges auftretende Speicherfehler festgestellt und gegebenenfalls die entsprechenden SpeichersteIlen isoliert werden.4. Verfahren nach einem der yorhergehenden Ansprüche, dadurch gekennzeichnet, daß der systematische, vorzugsweise sequentielle Zugriff zum monolithischen Speicher209881 /06Ü3FI 968 105seitens des Speicherkorrektursystems in Abhängigkeit von dem Inhalt eines Vorrangregisters freigegeben wird.5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß der systematische, vorzugsweise sequentielle Zugriff zum monolithischen Speicher seitens des Speicherkorrektursystems in Abhängigkeit davon freigegeben wird, daß keine Korrektur eines im normalen Betriebsablauf festgestellten Fehlers vorzunehmen ist und daß der Zugriff zum Speicher nicht anderweitig benötigt wird.6. Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers im Rahmen einer im Betrieb befindlichen digitalen elektronischen Datenverarbeitungsanlage, bei der von verschiedenen Einrichtungen der Datenverarbeitungsanlage während des normalen Betriebsablaufs auf den monolithischen Speicher Zugriffe erfolgen können, gekennzeichnet durch ein Speicherkorrektursystem mit einem Zähler, der in freien Zykluszeiten sequentiell zur Erzeugung aufeinanderfolgender Speicheradressen fortschaltbar ist, einer Prüfeinrichtung zur Fehlerprüfung der so adressierten Speicherstelleninhalte und mindestens einem Fehlerspeicher zur Aufnahme des fehlerhaften Datenwortes samt seiner Adresse.7. Anordnung nach Anspruch 6, gekennzeichnet durch eine zusätzliche Fehlerkorrekturschaltung zur Korrektur der in den freien Zykluszeiten festgestellten Speicherfehler.8. Anordnung nach den Ansprüchen 6 und 7, gekennzeichnet durch zusätzliche Schaltungsmaßnahmen zum Wiedereinschreiben des korrigierten Speicherinhaltes.w 20988-1/06U39. Anordnung nach einem der vorhergehenden Ansprüche, gekennzeichnet durch eine Vorrangschaltung zur Festlegung der zeitlich abhängigen Zugriffsberechtigung einer von mehreren Signalquellen zum monolithischen Speicher, einer Paritätsprüfeinrichtung für die vom monolithischen Speicher gelesenen Daten- und Prüfbits, einem in Abhängigkeit von der Paritätsprüfeinrichtung und dem monolithischen Speicher arbeitenden Speicherkorrektursystem sowie einem Fehlerspeicher zur Aufnahme des fehlerhaften Wortes und seiner Adresse.FI 968 105
- 2.Leerseite
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15232471A | 1971-06-11 | 1971-06-11 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2225841A1 true DE2225841A1 (de) | 1973-01-04 |
DE2225841B2 DE2225841B2 (de) | 1979-10-04 |
DE2225841C3 DE2225841C3 (de) | 1980-06-26 |
Family
ID=22542442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2225841A Expired DE2225841C3 (de) | 1971-06-11 | 1972-05-27 | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers |
Country Status (7)
Country | Link |
---|---|
US (1) | US3735105A (de) |
JP (1) | JPS5128484B1 (de) |
CA (1) | CA974652A (de) |
DE (1) | DE2225841C3 (de) |
FR (1) | FR2141094A5 (de) |
GB (1) | GB1340283A (de) |
IT (1) | IT953759B (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2529152A1 (de) * | 1974-07-05 | 1976-01-29 | Sperry Rand Corp | Verfahren und anordnung zur feststellung von fehlern in halbleiter- informationsspeichern |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3814922A (en) * | 1972-12-01 | 1974-06-04 | Honeywell Inf Systems | Availability and diagnostic apparatus for memory modules |
US3906200A (en) * | 1974-07-05 | 1975-09-16 | Sperry Rand Corp | Error logging in semiconductor storage units |
US3958110A (en) * | 1974-12-18 | 1976-05-18 | Ibm Corporation | Logic array with testing circuitry |
US4371949A (en) * | 1977-05-31 | 1983-02-01 | Burroughs Corporation | Time-shared, multi-phase memory accessing system having automatically updatable error logging means |
IT1108375B (it) * | 1978-03-09 | 1985-12-09 | Cselt Centro Studi Lab Telecom | Memoria di massa allo stato solido con autocorrezione e organizzata a parole per un sistema di controllo a programma registrato |
IT1109655B (it) * | 1978-06-28 | 1985-12-23 | Cselt Centro Studi Lab Telecom | Memoria di massa allo stato solido organizzata a bit autocorrettiva e riconfigurabile per un sistema di controllo a programma registrato |
US4223382A (en) * | 1978-11-30 | 1980-09-16 | Sperry Corporation | Closed loop error correct |
JPS598852B2 (ja) * | 1979-07-30 | 1984-02-28 | 富士通株式会社 | エラ−処理方式 |
US4317201A (en) * | 1980-04-01 | 1982-02-23 | Honeywell, Inc. | Error detecting and correcting RAM assembly |
US4335459A (en) * | 1980-05-20 | 1982-06-15 | Miller Richard L | Single chip random access memory with increased yield and reliability |
US4359771A (en) * | 1980-07-25 | 1982-11-16 | Honeywell Information Systems Inc. | Method and apparatus for testing and verifying the operation of error control apparatus within a memory |
US4488300A (en) * | 1982-12-01 | 1984-12-11 | The Singer Company | Method of checking the integrity of a source of additional memory for use in an electronically controlled sewing machine |
US4532628A (en) * | 1983-02-28 | 1985-07-30 | The Perkin-Elmer Corporation | System for periodically reading all memory locations to detect errors |
CA1258134A (en) * | 1985-04-13 | 1989-08-01 | Yoichiro Sako | Error correction method |
EP0211358A1 (de) * | 1985-07-29 | 1987-02-25 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Verfahren zur Überwachung von Halbleiterspeichern mit Einrichtungen zur Sicherung gespeicherter Daten und nach diesem Verfahren arbeitende Speichersteuereinrichtungen für Halbleiterspeicher |
US5495491A (en) * | 1993-03-05 | 1996-02-27 | Motorola, Inc. | System using a memory controller controlling an error correction means to detect and correct memory errors when and over a time interval indicated by registers in the memory controller |
EP0643351A1 (de) * | 1993-08-11 | 1995-03-15 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Verfahren zur Erhöhung der Fehlerfreiheit von in Mikroprogrammspeichern einer Datenverarbeitungsanlage gespeicherten Mikrobefehlen und entsprechend arbeitende Mikroprogrammsteuerung |
GB2289779B (en) * | 1994-05-24 | 1999-04-28 | Intel Corp | Method and apparatus for automatically scrubbing ECC errors in memory via hardware |
US5535226A (en) * | 1994-05-31 | 1996-07-09 | International Business Machines Corporation | On-chip ECC status |
US5987628A (en) * | 1997-11-26 | 1999-11-16 | Intel Corporation | Method and apparatus for automatically correcting errors detected in a memory subsystem |
US7590918B2 (en) * | 2004-09-10 | 2009-09-15 | Ovonyx, Inc. | Using a phase change memory as a high volume memory |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3222653A (en) * | 1961-09-18 | 1965-12-07 | Ibm | Memory system for using a memory despite the presence of defective bits therein |
US3353669A (en) * | 1965-06-30 | 1967-11-21 | Ibm | Electrical component tester with duplexed handlers |
US3492572A (en) * | 1966-10-10 | 1970-01-27 | Ibm | Programmable electronic circuit testing apparatus having plural multifunction test condition generating circuits |
US3549582A (en) * | 1967-10-11 | 1970-12-22 | Dexter Corp | Epoxy resin powders of enhanced shelf stability with a trimellitic anhydride dimer as curing agent |
US3631229A (en) * | 1970-09-30 | 1971-12-28 | Ibm | Monolithic memory array tester |
-
1971
- 1971-06-11 US US00152324A patent/US3735105A/en not_active Expired - Lifetime
-
1972
- 1972-04-26 IT IT23520/72A patent/IT953759B/it active
- 1972-05-24 FR FR7219229A patent/FR2141094A5/fr not_active Expired
- 1972-05-25 GB GB2456072A patent/GB1340283A/en not_active Expired
- 1972-05-27 DE DE2225841A patent/DE2225841C3/de not_active Expired
- 1972-06-08 JP JP47056518A patent/JPS5128484B1/ja active Pending
- 1972-06-08 CA CA144,163A patent/CA974652A/en not_active Expired
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE2529152A1 (de) * | 1974-07-05 | 1976-01-29 | Sperry Rand Corp | Verfahren und anordnung zur feststellung von fehlern in halbleiter- informationsspeichern |
Also Published As
Publication number | Publication date |
---|---|
FR2141094A5 (de) | 1973-01-19 |
DE2225841C3 (de) | 1980-06-26 |
IT953759B (it) | 1973-08-10 |
CA974652A (en) | 1975-09-16 |
US3735105A (en) | 1973-05-22 |
DE2225841B2 (de) | 1979-10-04 |
GB1340283A (en) | 1973-12-12 |
JPS5128484B1 (de) | 1976-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2225841C3 (de) | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers | |
DE2359776C2 (de) | Speichermodul | |
DE69114881T2 (de) | Analysevorrichtung zur Rettung von Halbleiterspeicherfehlern. | |
DE2939461C2 (de) | Verfahren zum Feststellen von Datenstörungen in Speichern | |
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE3128740C2 (de) | ||
DE3702006A1 (de) | Speichervorrichtung | |
DE3111447C2 (de) | ||
DE2210325A1 (de) | Datenverarbeitungssystem | |
DE3345863A1 (de) | Ueberwachungsschaltung fuer rechner | |
DE2619159A1 (de) | Fehlererkennungs- und korrektureinrichtung | |
DE3785469T2 (de) | Halbleiterspeichergeraet mit redundanter speicherzelle. | |
DE2854748A1 (de) | Speichereinrichtung | |
DE2202231A1 (de) | Verarbeitungssystem mit verdreifachten systemeinheiten | |
DE3603926A1 (de) | Halbleiter-speicherelement | |
DE3876459T2 (de) | Speicher und deren pruefung. | |
DE69904618T2 (de) | Detektionstechnik von speicherabschnittfehlern und einzel-, doppel und triplebitfehlern | |
DE2715029C3 (de) | Schaltungsanordnung zur Diagnose oder Prüfung von funktionellen Hardware-Fehlern in einer digitalen EDV-Anlage | |
DE19963689A1 (de) | Schaltungsanordnung eines integrierten Halbleiterspeichers zum Speichern von Adressen fehlerhafter Speicherzellen | |
DE69927571T2 (de) | Datenprozessor und Verfahren zum Verarbeiten von Daten | |
WO2007025816A2 (de) | Speicheranordnung und betriebsverfahren dafür | |
DE2554502C3 (de) | Verfahren und Anordnung zum Adressieren eines Speichers | |
DE69323076T2 (de) | Verfahren zur Erkennung fehlerhafter Elemente eines redundanten Halbleiterspeichers | |
EP0127118B1 (de) | Speichersteueranordnung, insbesondere für fehlertolerantes Fernsprech-Vermittlungssystem | |
DE69722706T2 (de) | Datensicherungsvorrichtung eines Halbleiterspeichers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
OI | Miscellaneous see part 1 | ||
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |