DE1524788B2 - Schaltungsanordnung zum erkennen und zum automatischen ersetzen von schadhaften speicherstellen in datenspeichern - Google Patents

Schaltungsanordnung zum erkennen und zum automatischen ersetzen von schadhaften speicherstellen in datenspeichern

Info

Publication number
DE1524788B2
DE1524788B2 DE19671524788 DE1524788A DE1524788B2 DE 1524788 B2 DE1524788 B2 DE 1524788B2 DE 19671524788 DE19671524788 DE 19671524788 DE 1524788 A DE1524788 A DE 1524788A DE 1524788 B2 DE1524788 B2 DE 1524788B2
Authority
DE
Germany
Prior art keywords
block
word
counter
memory
data
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
Application number
DE19671524788
Other languages
English (en)
Other versions
DE1524788A1 (de
DE1524788C3 (de
Inventor
Robert Percy Poughkeepsie N Y Fletcher (V St A)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE1524788A1 publication Critical patent/DE1524788A1/de
Publication of DE1524788B2 publication Critical patent/DE1524788B2/de
Application granted granted Critical
Publication of DE1524788C3 publication Critical patent/DE1524788C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/86Masking faults in memories by using spares or by reconfiguring in serial access memories, e.g. shift registers, CCDs, bubble memories

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

Die Erfindung betrifft eine Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern, insbesondere in mit Ferritkernen aufgebauten Matrixspeichern, die in eine Anzahl von Datenblocks, die wiederum eine feste Anzahl Wortzellen umfassen, unterteilt sind, durch den einzelnen Wortzellen zugeordnete Fehlermarkierungsbits, die durch ihren Zustand die Verwendbarkeit einer Speicherstelle anzeigen.
Obwohl bei der Herstellung von Speichern für Datenverarbeitungsanlagen an die Herstellungsverfahren und an die Vorrichtungen zur Herstellung sehr hohe Anforderungen gestellt werden, ist es nicht zu vermeiden, daß in einem Speicher mit mehreren Millionen Bits Speicherkapazität fehlerhafte bzw. schadhafte Speicherstellen auftreten. Auch ist es möglich, daß während eines längeren Betriebes einer Datenverarbeitungsanlage, insbesondere eines Speichers einer Datenverarbeitungsanlage, Speicherstellen innerhalb des Speichers defekt werden und somit zur weiteren Speicherung von Daten nicht mehr zur Verfügung stehen.
Da jedoch ein Speicher einer Datenverarbeitungsanlage fehlerfrei arbeiten muß, sind für die einzelnen Speicherarten, wie Bandspeicher oder Matrixspeicher, verschiedene Möglichkeiten bekanntgeworden, um die schadhaften Stellen zu kennzeichnen bzw. einen automatischen Ersatz der schadhaften Speicherstellen durch andere nicht schadhafte Speicherstellen zu ermöglichen. Es ist z.B. bei Magnetbandspeichern bekannt, die während des Herstellungsprozesses aufgetretenen Fehler im Aufzeichnungsträger durch Markierung der betreffenden Stelle am Rande zu kennzeichnen. Beim Schreiben oder Lesen einer Aufzeichnung von diesem markierten Aufzeichnungsträger wird dann diese Stelle automatisch übersprungen, so daß der Fehler im Aufzeichnungsträger nach außen hin nicht in Erscheinung tritt und somit bei der Programmierung nicht berücksichtigt werden muß.
Bei Matrixspeichern mit Magnetkernen hat man die schadhaften Speicherstellen dadurch zu ersetzen ver- / sucht, daß von vornherein bei der Herstellung mehr Wortleitungen, d. h. Speicherstellen, vorgesehen worden sind, als eigentlich für die geforderte Speicherkapazität nötig sind. Tritt nun an einer Speicherstelle in einer Wortleitung ein Fehler auf, dann wird die gesamte Wortleitung unwirksam gemacht und eine der redundanten Wortleitungen an deren Stelle angesteuert.
Außerdem ist es durch die USA.-Patentschrift 3 222 653 bekanntgeworden, die durch ein zusätzliches Fehlermarkierungsbit gekennzeichneten Speicherstellen innerhalb des Speichers über ein Steuernetzwerk automatisch zu ersetzen. Wird beim Speicheranruf z. B. eine schadhafte Speicherstelle angesteuert, dann wird über eine Vergleichsschaltung bewirkt, daß eine alternative Adresse, die eine freie nicht schadhafte Speicherstelle bezeichnet, automatisch angesteuert wird. Die erstgenannten Matrixspeicher haben jedoch den großen Nachteil, daß wegen eines einzigen ausfallenden Speicherkerns auf einer Wortleitung die gesamte Wortleitung nicht mehr zur weiteren Speicherung zur Verfügung steht. Außerdem kann es passieren, daß nicht alle zusätzlich hergestellten redundanten Wortleitungen benötigt werden, so daß immer mehrere nicht schadhafte Wortleitungen innerhalb eines Speichers unwirksam sind, obwohl deren Preis beachtlich hoch liegt. Die letztgenannte Schaltungsanordnung zum automatischen Ersatz von schadhaften Speicherstellen innerhalb eines Speichers vermeidet zwar diesen Nachteil, sie benötigt aber einen relativ hohen Aufwand an Schaltungsmitteln und an Zeit, denn diese Schaltungsanordnung ist nicht in der Lage, die automatische Adressen-Ersatzoperation für mehrere Speicherstellen innerhalb eines Speicherzyklusses durchzuführen.
Der Erfindung liegt deshalb die Aufgabe zugrunde, eine Schaltungsanordnung zum automatischen Ersetzen von Adressen in einem Speichersystem mit schadhaften Speicherstellen zu schaffen, die die vorstehenden Nachteile beseitigt.
Die erfindungsgemäße Lösung der Aufgabe besteht
nun darin, daß jedem Datenblock ein Überlaufblock im Speicher zugeordnet ist, daß die Ansteuerung und die Zählung der Speicherblocks bekannterweise von einem Blockadressenzähler, der die jeweilige An-
fangsblockadresse beinhaltet, und einem Blockzähler, der die übertragenen Datenblöcke zählt, sowie durch einen Wortadressenzähler, der die Wortzellen innerhalb eines Blocks durch Weiterschalten um Eins bestimmt und einen Wortzähler, der die übertragenen Worte zählt, erfolgt, und daß eine Schaltung bei Vorliegen einer schadhaften Wortzelle innerhalb eines Blocks ein Signal erzeugt, das die Weiterschaltung des Wortzählers zu diesem Zeitpunkt verhindert, wodurch nach Aufruf aller Wortzellen in einem Block der Wortzähler nicht auf dem Sollwert steht und über vorhandene bekannte Adressierungsschaltungen die Übertragung der restlichen Worte eines Datenblocks in einen zugeordneten Uberlaufblock steuert.
Der Vorteil der erfindungsgemäßen Schaltung liegt darin, daß auch Speicherzellen mit schadhaften Bitstellen zur Speicherung von Daten verwendet werden können und daß das automatische Ersetzen einer schadhaften Speicherstelle innerhalb eines Speicherzyklusses abläuft.
Die Erfindung wird nun an Hand von in den Zeichnungen dargestellten Ausführungsbeispielen beschrieben.
In den Zeichnungen bedeutet
Fig. 1 ein Prinzipschaltbild eines Speichers, an Hand dessen die Erfindung erklärt wird,
Fig. 2 ein Blockdiagramm, das den Befehls- und Datenfluß während der einzelnen Operationen zeigt, und
Fig. 3 ein Impulsdiagramm zur Darstellung der zeitlichen Abläufe verschiedener Schaltfunktionen.
Fig. 1 zeigt eine Speicheranordnung 10, das mehrere Datenblocks, bezeichnet mit Hauptblock 1 bis Hauptblock 2* im Hauptspeicherabschnitt 11 enthält. Jeder dieser Hauptblocks besitzt eine bestimmte Anzahl von Speicherplätzen, die mit 1 bis 2" bezeichnet sind. Der andere Abschnitt 12 der Speicheranlage 10 enthält Uberlaufblocks, die mit OVFLl bis OVFL2*bezeichnet sind. Jeder dieser Uberlaufblocks gehört zu dem entsprechenden Hauptblock im Abschnitt 11 der Speicheranlage 10. Jeder der Überlaufblocks enthält dabei ebenfalls wieder eine bestimmte Anzahl von Speicherplätzen, die mit 1 bis 2y bezeichnet sind. Weiterhin ist ein Adressenregister 13 vorhanden, das in dem Abschnitt 14 und in dem Abschnitt
15 zur Aufnahme von 1 bis η Bits bzw. von 1 bis χ Bits geeignet ist, und weiterhin in den Abschnitt
16 unterteilt ist. Das Bit 16 dient für den Zugriff zum Überlaufabschnitt der Speicheranlage 10. Die Adressenbits im Abschnitt 15 ermöglichen den Zugriff zu einem einzelnen der 2* Hauptblocks. Die Adressenbits im Abschnitt 14 ermöglichen den Zugriff zu einem der 2" Speicherplätze in einem Hauptblock. Das Bit in der Position 16 vom Adressenregister 13 ermöglicht den Zugriff zu den Blocks und zu den Speicherplätzen in dem Überlaufabschnitt 12 der Speicheranlage 10. Außerdem enthält die Speicheranlage 10 ein Datenregister 17, das zum Einlesen bzw. zum Auslesen von Daten in die bzw. aus der Speicheranlage 10 dient. Die Speicherkapazität dieses Registers stimmt dabei mit der Speicherkapazität eines jeden Speicherplatzes innerhalb der Speicheranlage 10 überein. Die Übertragung der Daten zwischen der Speicheranlage 10 und irgendeiner anderen Einheit erfolgt dabei über die Leitungen 18 und 20 sowie über die Torschaltungen 19. Im folgenden wird nun erklärt, mit welchen Mitteln Zugriff zu Speicherplätzen erlangt wird, die bedingt durch defekte Speicherelemente nicht mehr in der Lage sind, ein ganzes Wort zu speichern. Die schadhaften Speicherplätze werden durch eine Erkennungsschaltung 21, die mit dem Datenregister 17 in Verbindung steht, erkannt. Das Datenregister 17 nimmt alle Daten an, die in eine angesteuerte Speicherzelle eingegeben bzw. aus einer Speicherzelle ausgelesen werden. In bekannten Speicheranlagen, die beim Lesen die gespeicherte Information in der Speicherzelle zerstören, wird die Regeneration bzw.
ίο das Wiedereinschreiben von Daten vorgenommen, wenn diese zu einem anderen Teil innerhalb der Datenverarbeitungsanlage übertragen werden. Wenn hingegen die Daten von einer äußeren Einheit in den Speicher eingeschrieben werden, dann werden die vernichteten Daten nicht regeneriert, aber die neuen Daten werden in die vorher zerstörte Speicherzelle eingeschrieben. Sowohl beim Schreiben als auch beim Lesen werden die Inhalte von jeder angesteuerten Speicherzelle in das Datenregister 17 über die Erkennungsschaltung 21 eingetragen, unabhängig davon, ob die Speicherzelle ein Datenwort aufnehmen kann oder nicht.
Die Mittel, durch die die Erkennungsschaltung 21 ein Signal zur Erkennung einer schadhaften Speicherzelle auf Leitung 22 erzeugt, können sehr verschieden sein.
Zum Beispiel kann die Speicheranlage 10 in der, Weise aufgebaut sein, daß den Speicherzellen eine weitere Bitstelle zugeordnet ist, welche den Zustand Eins oder Null annehmen kann, um anzuzeigen, daß die betreffende Speicherzelle in Ordnung oder schadhaft ist. Wird durch die Schaltung 21 in der Zusatzbitstelle einer angesteuerten Speicherzelle eine binäre Eins erkannt, dann wird auf der Leitung 22 ein Signal erzeugt. Dieses Signal steuert die Torschaltungen 19, um die Übertragung von Daten zwischen dem Datenregister 17 und der verwendeten Einheit zu sperren. Außerdem sind in F i g. 1 mehrere Schaltungen enthalten, die Informationen auf Grund von Datenübertragungsbefehlen von der Datenverarbeitungsanlage annehmen. Diese Schaltungen enthalten einen Blockadressenzähler 23, ein Wortzählregister 24 und einen Blockzähler 25. Der Blockadressenzähler 23 empfängt Daten über die Leitungen 26, die die Adresse vom Hauptblock in der Speicheranlage 10 darstellen, der für den Datentransport angesteuert wird. Der Blockzähler 25 empfängt Daten über die Leitung 27, die die Anzahl der Hauptblocks in die während einer Übertragungsoperation übertragen wird, angibt. Das Wortzählregister 24 enthält die Daten von der Übertragungsinstruktion auf Leitung 28, die die Anzahl der Speicherzellen angibt, die im letzten Speicherblock zum Übertragen angesteuert werden. Wenn der Inhalt von der höchsten Speicherzelle vom letzten Block übertragen worden ist, steht das Wortzählregister 24 auf Null. Außerdem ist mit den genannten Adressierungsschaltungen ein Wortadressenzähler 29 verbunden. Dieser Wortadressenzähler 29 erhält ein Signal über Leitung 30, welches diesen bei jeder Blockübertragung auf Null stellt. Die andere Eingangsleitung
31 vom Wortadressenzähler 29 bewirkt, daß der Adressenwortzähler um Eins modifiziert wird, wodurch die Speicherzellen von 1 bis 2" in dem durch den Blockadressenzähler 23 adressierten Block durchlaufen werden.
Außerdem sind in F i g. 1 noch die Torschaltungen
32 und ein Wortzähler 33 zu sehen. Der Wortzähler
33 besitzt einen Eingang 34, der bewirkt, daß der In-
halt des Zählers um Eins erhöht wird, und außerdem besitzt er eine zweite Eingangsleitung 35, die bewirkt, daß der Inhalt des Wortzählers 33 um Eins verringert wird. Der Wortzähler 33 hat eine Zählkapazität von 0 bis 2". Die Torschaltung 23, die zur Übertragung des Inhaltes vom Wortzählregister 24 zum Wortzähler 33 dient, ist nur dann im Betriebszustand, wenn der letzte Datenblock übertragen werden soll. Dies wird durch ein Signal vom Zähler 25 angezeigt, und das Wortzählregister 24 gibt einen Wortzählwert, der von Null verschieden ist, an. In anderen Worten, wenn weniger als 2" Inhalte von Speicherzellen des letzten Blocks zu übertragen sind, wird der Inhalt vom Wortzählregister 24 zum Wortzähler 33 übertragen. Andernfalls wird der Wortzähler 33 auf lauter Einsen gesetzt, wodurch angezeigt wird, daß die Blockübertragung bis zu 2" Speicherplätze enthält.
Die Schaltung nach Fig. 1 enthält weiterhin eine Überlaufschaltung 36 sowie ein Verschieberegister 37 mit den Stellen η bis y. Die Überlaufschaltung kann die Zustände Eins oder Null annehmen, wodurch das Überlaufbit 16 im Adressenregister 13 ebenfalls auf Null oder Eins gesetzt wird; abhängig davon, ob die Speicherzelle im Hauptspeicher-Blockbereich 11 oder einer Speicherzelle im Uberlaufbereich 12 angesteuert ist.
Wenn sich die Überlaufschaltung 36 im NuII-Zustand befindet, was anzeigt, daß vom Hauptblockbereich 11 der Speicheranlage 10 Übertragungen stattfinden, werden die Ac-Adressenbits in dem Adressenzähler 23 für das ,Verschieberegister 23 zu den Adressenbits 1 bis χ im Abschnitt 15 des Adressenregisters 13 übertragen. Wenn die Überlaufschaltung 36 im Eins-Zustand steht, was anzeigt, daß ein Zugriff zum Überlaufbereich 12 der Speicheranlage 10 besteht, wird bewirkt, daß die Blockadressenbits um eine Anzahl von Bitstellen, die gleich η bis y betragen können, nach rechts im Adreßregister 13 verschoben werden. „Die Bitstellen waren durch die λ:-Adressenbits im Abschnitt 15 gelöscht. Wenn die Blockadresse um n-1 Positionen nach rechts verschoben wurde, kann der Überlaufblock, der mit dem adressierten Hauptblock zusammengehört, im Uberlaufbereich erkannt werden.
Um eine richtige Operation der Adressierungsschaltungen ohne die Verschiebung um n-y zu bewirken, wird, wenn die Bitposition 16 gleich Eins ist, jeder der Übe rl auf blocks eine Kapazität von 2" Speicherstellen haben, selbst wenn nur 2y Speicherzellen zur Übertragung von einem Hauptblock von 2" Speicherplätzen erforderlich wären. Die n-y Verschiebungen ermöglichen die Schaffung von Uberlaufbereichblocks von einer Größe, die genügt, um die ermittelte Anzahl der schadhaften Speicherplätze unterzubringen. Wenn mehr als ein Block auf Grund einer einzelnen Ubertragungsinstruktion zu übertragen ist, wird der Blockadressenzähler 23 über die Leitung 38 weitergeschaltet und der Blockzähler 25 über die Leitung 39 zurückgeschaltet. Verschiedene andere Signalleitungen, die in der Fig. 1 dargestellt sind und deren Wirkung in der Schaltung bisher nicht beschrieben wurde, werden in Zusammenhang mit den Fig. 2 und 3 im nachfolgenden näher erläutert.
Die Fig. 2 wird zur Erklärung verschiedener logischer Verknüpfungen verwendet, die während des Eintragens von Werten in die verschiedenen Zähler und während des Transportes von Daten aus Hauptblöcken oder Uberlaufblöcken bei der Ausführung einer Ubertragungsinstruktion erforderlich sind.
Es soll hier bemerkt werden, daß auf Schaltungsdetails der Zähler und Register sowie der verwendeten Torschaltungen nicht näher eingegangen wird, da deren Aufbau bekannt ist.
In F i g. 2 sind sechs miteinander verbundene Funktionsblocks zu sehen, die die einzelnen Steuerfunktionen und logischen Funktionen erfüllen, die zur Durchführung einer Datenübertragung zwischen der
ίο Speicheranlage 10 und einer diese benutzenden Datenverarbeitungsanlage erforderlich sind. Der erste Block, bezeichnet mit WAIT, wird zur Darstellung des Vorliegens einer Befehlsanforderung von der Datenverarbeitungsanlage verwendet. Während des WAIT-Status wird kein Speicher-Schreib- bzw. Speicher-Lese-Zyklus durchgeführt. Sobald die Datenverarbeitungsanlage eine Befehlsanforderung angibt, wird die Schaltung vorbereitet, um einen Übergang der Speicheranlage zu dem mit SET-UP bezeichneten Block durchzuführen. Wird zu dieser Zeit eine Datenübertragungsinstruktion angefordert, bestimmt diese Instruktion den Wert des Blockadressenzählers 23, des Blockzählers 25 und des Wortzählregisters 24 in Fig. 1. In dem vorliegenden SET-UP-Zustand bestimmen der Blockzähler 25 und das Wortzählregister 24, ob ein einzelner Block zu übertragen ist oder nicht oder ob nur ein Teil eines Blockes zu übertragen ist. Wenn dies der Fall ist, wird der Wortzähler 33" auf denselben Stand gebracht wie das Wortzählregister
24. Andererseits wird der Wortzähler 33 auf lauter Einsen gesetzt. Der Wortadressenzähler 29 wird auf lauter Nullen gesetzt, um zur ersten Stelle im adressierten Block einen Zugriff zu ermöglichen. Die Adresse des Blocks wird dabei durch den Blockadressenzähler 23 angegeben. Zu diesem Zeitpunkt wird die Anlage zu dem mit Hauptblock-Übertragung bezeichneten Block eine Übertragung vornehmen. Während der Übertragung von Speicherstellen vom Hauptblock wird der Adressenzähler 29 bei jedem Zugriff zu einer Speicherstelle weitergeschaltet. Abhängig vom Ausgangssignal der Schaltung 21 zum Feststellen einer schadhaften Speicherzelle wird der Wortzähler 33 um Eins zurückgeschaltet, wenn vom Adressenzähler 29 eine gute Speicherzelle angerufen worden ist. Der Wortzähler 33 wird nicht um Eins zurückgeschaltet, wenn aus einer Speicherstelle ausgelesen werden soll, deren Kennzeichenbit anzeigt, daß eine schadhafte Speicherstelle vorliegt. Liegt ein Hauptblock-Übertragungs-Status vor, dann wird der Wortadressenzähler 29 weitergeschaltet und der Wortzähler 33 für eine gute Speicherstelle zurückgeschaltet, so lange, wie der Wortzähler nicht auf Null steht und die Wortadresse nicht 2""1 ist. Wenn der Wortzähler 33 im Hauptblock-Ubertragungs-Status auf Null schaltet, wird dadurch angezeigt, daß eine komplette Datenübertragung stattgefunden hat, und der Status der Anlage wird abhängig von der Instruktionsanforderung von der Datenverarbeitungsanlage auf den WAIT-Status oder den SET-UP-Status umschalten.
Die Operation im Hauptblock-Übertragungs-Status wird so lange fortgesetzt, bis der Wortadressenzähler 29 anzeigt, daß der letzte Speicherplatz im Block 2"~' angesteuert wird. Zu diesem Zeitpunkt geht der Status der Anlage zu dem mit »Hauptblock letzte Übertragung« bezeichneten Block über. Während dieses Operationszyklusses müssen verschiedene Entscheidungen getroffen werden. Der Wortadres-
senzähler 23 wird nach dem Zugriff zur letzten Speicherzelle zurückgeschaltet und steht nun auf lauter Nullen. Der Wortzähler 33 wird nur zurückgeschaltet, wenn die letzte Speicherzelle eine nicht schadhafte ist. Wenn der Wortzähler 33 auf den Wert Null während des Zugriffs zur letzten Speicherzelle im Block zurückgeschaltet und der Inhalt des Blockadressenzählers 23 um Eins erhöht. Diese Situation tritt auf, wenn der eingetragene Block Zugang gefunden hat, ohne daß er auf schadhafte Speicherstellen getroffen ist. Wenn der Wortzähler 33 auf Null steht und der Blockzähler 25 ebenfalls auf Null, wodurch angezeigt wird, daß alle Übertragungen entsprechend der angegebenen Übertragungsinstruktion stattgefunden haben, wird auf den WAIT-Status oder auf den SET-UP-Sta- *5 tus geschaltet, je nachdem, ob von der Datenverarbeitungsanlage eine Instruktionsanforderung vorliegt oder nicht. Wenn der Wortzähler 33 auf Null steht und der Blockzähler 25 nicht, dann fordert die vorliegende Übertragungsinstruktion zusätzliche Block-Übertragungen, und eine Übertragung zu dem Hauptblock-Übertragungs-Status wird vorgenommen. Wenn der Blockzähler 25 auf Eins zurückgeschaltet worden ist, wodurch der Start der Übertragung vom letzten Block angezeigt wird, muß das Wortzählregister 24 geprüft werden, ob dessen Inhalt verschieden von Null ist. Wenn das Wortzählregister 24 keine Null hat, wird zu dem Hauptblock-Ubertragungs-Status übergegangen, begleitet durch eine Übertragung des Inhaltes des Wortzählregisters 24 über die Tor-Schaltung 32 zum Wortzähler 33. Wenn das Wortzählregister 24 auf Null steht, wird angezeigt, daß der letzte Block eine volle Blockübertragung ist, und der Wortzähler 33 wird auf lauter Einsen gesetzt. Bei der Vollendung eines »Hauptblock letzte Ubertragung«-Zyklus wird der Inhalt des Wortzählers 33 geprüft, und wenn der Inhalt von Null verschieden ist, dann wird die Überlaufstelle 16 im Adressenregister 13 wirksam und veranlaßt einen Zugriff zum Uberlaufspeicherbereich 12 der Speicheranlage 10. Auch das Rechtsverschieberegister 37 verschiebt die Blockadressenbits 1 bis χ nach rechts, um einen Zugriff zum zugehörigen Überlaufblock im Bereich 12 der Speicheranlage 10 zu ermöglichen. Bei der Übertragung aus dem »Hauptblock letzter Übertrag«-Status zum Überlaufbereich muß eine Entscheidung vorgenommen werden, die auf dem Inhalt des Wortzählers 33 passiert, der größer Eins oder gleich Eins sein kann. Wenn der Wortzähler 33 einen Wert 1 beinhaltet, dann wird dadurch angezeigt, daß mehrere Speicherplätze im Überlaufbereich Zugriff haben, und es wird dadurch zum Überlaufblock-Ubertragungs-Status übergegangen. Der Wortadressenzähler 29 wurde während des »Hauptblock letzte Übertragung«-Status um Eins weitergeschaltet, so daß er nun auf Null steht, und der erste Speicherplatz in dem angesteuerten Überlaufblock wird zugängig.
Der Zähler 29 wird für jeden Uberlaufblock-Übertragungszyklus um Eins weitergeschaltet, um zu allen Speicherplätzen im Überlauf block Zugriff zu schaffen. Für jeden guten Wortspeicherplatz, der zugänglich ist, wird der Inhalt des Wortzählers 33 um Eins vermindert. Solange wie der Inhalt des Wortzählers 33 nicht gleich Eins ist, wird der Uberlaufblock-Übertragungszyklus fortgesetzt. Wenn der Wortzähler 33 auf Eins steht, wird in den Uberlaufblock letzten Übertragungs-Status übergewechselt. Während dieses Status wird die letzte Speicherzelle, zu der zu übertragen ist, zugänglich sein. Wie aus F i g. 2 hervorgeht, kann der »Überlaufblock letzte Übertragungs«-Status entweder in den »Überlaufblock-Übertragungs«-Status oder in den »Hauptblock letzte Ubertragung«-Status übergehen. Wenn der Wortzähler 33 im »Hauptblock letzte Ubertragung«-Status auf Eins steht, was anzeigt, daß Zugriff zu nur einer Speicherstelle vom Überlaufblock besteht, wird die Übertragung zum »Uberlaufblock letzte Ubertragung«-Zyklus ausgeführt.
Während dieses Zyklusses wird der Wortadressenzähler 29 um Eins weitergeschaltet, um zur nächstfolgenden Speicherstelle im Speicherblock einen Zugriff zu schaffen, bis die erste gute Speicherzelle zugänglich gemacht wird. Sobald dies geschehen ist, wird der Wortzähler 33 auf Null geschaltet, der Inhalt des Blockzählers 25 um Eins vermindert, der Blockadressenzähler 23 um Eins weitergeschaltet und die Überlaufstelle 16 im Speicheradressenregister 13 wird auf Null gesetzt. Die Übertragung auf eine gute Speicherzelle während des »Uberlaufblock letzte Übertragung«-Zyklusses verursacht, daß der Wortadreß-Zähler 29 bei Null ankommt, wodurch angezeigt wird, daß die spezifische Anzahl von Speicherzellen in den letztadressierten Block transportiert wurden.
Während des »Überlaufblock letzte Ubertragung«-Status wird der Blockzähler 25 überprüft,/ob er auf Null oder Eins steht. Wenn der Blockzähler auf Eins steht, ist die vorhergehende Übertragungsinstruktion komplett und es muß die Entscheidung getroffen werden, ob in Abhängigkeit von der Instruktionsanforderung von der Datenverarbeitungsanlage auf den WAIT-Status oder auf den SET-UP-Status übergegangen wird.
Wenn der Blockzähler 25 nicht auf Null steht, und zu dieser Zeit geht der Wortzähler 32 auf Null, dann wird auf den »Hauptblock-ÜbertragungSÄ-Status übergegangen. Dies zeigt an, daß die zusätzlichen Übertragungsblocks für die vorhergehend angegebene Übertragungsinstruktion erforderlich waren. Wird zu dieser Zeit zum Hauptblock-Ubertragungs-Status übergegangen, dann wird der Blockzähler 25 auf den Wert Eins geprüft, der anzeigt, daß der »Hauptblock-ÜbertragungSÄ-Status zur Übertragung des letzten Blocks vorliegen wird. Das Wortzählregister 24 wird auf den Wert verschieden von Null geprüft. Wenn der Inhalt des Blockzählers 25 gleich Eins ist und der Inhalt des Wortzählregisters ungleich Null, dann werden die Inhalte vom Wortzählregister 24 zum Wortregister 33 übertragen, wodurch die Anzahl der Speicherzellen angezeigt wird, die im letzten Block zur Übertragung zugänglich sind. Wenn das Wortzählregister 24 auf Null steht, wird dadurch angezeigt, daß ein voller Block transportiert wurde, und der Wortzähler 33 wird auf lauter Einsen gesetzt.
In F i g. 3 ist ein Zeitdiagramm für eine spezifische Datenübertragungsinstruktion dargestellt, die angibt, daß zwei Datenblocks zu übertragen sind, worin nur zwei Speicherplätze vom letzten Block zu übertragen sind. Ebenfalls wird die Situation beschrieben, wobei drei schlechte Speicherstellen im ersten Hauptblock auftreten, wodurch drei Zugänge zu dem zugehörigen Überlaufblock angefordert werden. Während des SET-UP-Zyklusses werden der Blockadressenzähler 23 auf die Blockadresse eingestellt, der Blockzähler 25 auf Zwei und das Wortzählregister 24 ebenfalls auf Zwei. Der Wortadressenzähler 29 wird auf Null gesetzt. Weil der Blockzähler 25 nicht auf Eins steht,
309 525/368
wird der Wortzähler 33 auf lauter Einsen gesetzt. Der nächste Zyklus ist ein Hauptblock-Übertragungs-Zyklus (Fig. 2).
Der Hauptblockübertragungszyklus wird so lange durchgeführt, bis die letzte Speicherstelle im Hauptblock erreicht ist. Bis zu diesem Zeitpunkt sind zwei schlechte Wortspeicherstellen erkannt und übersprungen, die dritte schadhafte Wortspeicherstelle wird durch die letzte Speicherstelle in diesem Hauptblock eingenommen. Ein Hauptspeicher letzte Übertragung-Zyklus wird bei der letzten Speicherstelle im Hauptblock ausgeführt. Wenn dieser Zyklus beginnt, steht der Wortzähler 33 auf Drei. Wird in diesem Zyklus eine schadhafte Wortspeicherstelle gefunden, verbleibt der Wortzähler 33 im Zustand Drei. Weil 1S der Wortzähler einen Inhalt größer Eins hat, wird als nächster Zyklus ein Uberlaufblock-Ubertragungs-Zyklus durchgeführt.
Der Wortadressenzähler 29 wird von Eins auf Null geschaltet. Im Überlaufblock-Zyklus wird nur der Adressenzähler 29 zur Erzeugung 2y Wortadressen benötigt, wenn die Operation im Uberlaufblockzyklus immer dadurch festgelegt wird, daß der Wortzähler den Zustand Null erreicht. Die Blockadresse wird um n-y Positionen nach rechts verschoben. ^5
Sind zwei der Überlaufblock-Übertragungszyklen ausgeführt, dann sind zwei der verbleibenden drei Wörter übertragen, und der Wortzähler 33 steht auf Eins. Durch den Zählerstand wird verursacht, daß der nächste Zyklus ein »Uberlaufblock letzte Übertragung«-Zyklus ist. Ein einziger solcher Zyklus überträgt das letzte Wort vom Logikblock. Während dieses Zyklusses wird der Blockadressenzähler 23 um Eins erhöht und der Blockzähler 25 von Zwei auf Eins geschaltet. Das Wort-Zählregister 24 steht seit Beginn der Instruktion auf Zwei. Dadurch, daß am Ende dieses Zyklusses der Blockzähler auf Eins steht und das Wortzählregister nicht auf Null steht, wird bewirkt, daß der Inhalt vom Wortzählregister 24 in den Wortzähler 33 gelangt. Wenn der Blockzähler 25 nicht auf Null steht, dann wird der nächste Zyklus als Hauptblock-Übertragungs-Zyklus durchgeführt. Sind zwei Hauptblock-Übertragungs-Zyklen ausgeführt, dann sind dadurch zwei Worte des Logikblocks übertragen. Während des ersten Zyklusses erreicht der Wortzähler 33 den Zustand Null und zeigt damit das Ende dieser Instruktion an. Der nächste Zyklus ist wieder ein WAIT- oder ein SET-UP-Zyklus, abhängig davon, ob eine andere Instruktionsanforderung vorliegt.
Hierzu 1 Blatt Zeichnungen

Claims (2)

Patentansprüche:
1. Schaltungsanordnung mit Vergleichern und Zählern zum Erkennen und automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern, insbesondere in mit Ferritkernen aufgebauten Matrixspeichern, die in eine Anzahl von Datenblocks, die wiederum eine feste Anzahl Wortzellen umfassen, unterteilt sind, durch den einzelnen Wortzellen zugeordnete Fehlermarkierungsbits, die durch ihren Zustand die Verwendbarkeit einer Speicherstelle anzeigen, dadurch gekennzeichnet,daß jedem Datenblock (11) ein Überlaufblock (12) im Speicher (10) zugeordnet ist, daß die Ansteuerung und die Zählung der Speicherblocks (11) bekannterweise von einem Blockadressenzähler (23), der die jeweilige Anfangsblockadresse beinhaltet und einem Blockzähler (25), der die übertragenen Datenblöcke zählt, sowie durch einen Wortadressenzähler (29), der die Wortzellen (1 bis 2") innerhalb eines Blokkes durch Weiterschalten um Eins bestimmt und einen Wortzähler (33), der die übertragenen Worte zählt, erfolgt, und daß eine Schaltung (21) bei Vorliegen einer schadhaften Wortzelle innerhalb eines Blockes (11) ein Signal erzeugt, das die Weiterschaltung des Wortzählers (33) zu diesem Zeitpunkt verhindert, wodurch nach Aufruf aller Wortzellen (1 bis 2") in einem Block (11) der Wortzähler (33) nicht auf dem Sollwert steht und über vorhandene bekannte Adressierungsschaltungen (36 und 37) die Übertragung der restlichen Worte eines Datenblockes in einen zugeordneten Überlaufblock (12) steuert.
2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, daß ein Datenblock (11) des Speichers (10) 2" Wortzellen umfaßt und ein jeweils zugeordneter Überlaufblock (12) im Speicher (10) 2y Wortzellen umfaßt und daß die Adressierungsschaltung für die Überlaufblocks ein Verschieberegister (37) umfaßt, das zur Verschiebung des Inhaltes des Blockadressenzählers (23) um n-y Stellen nach rechts im Adressenregister (13) dient.
DE1524788A 1966-06-08 1967-05-26 Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern Expired DE1524788C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US55609866A 1966-06-08 1966-06-08

Publications (3)

Publication Number Publication Date
DE1524788A1 DE1524788A1 (de) 1969-11-13
DE1524788B2 true DE1524788B2 (de) 1973-06-20
DE1524788C3 DE1524788C3 (de) 1974-01-24

Family

ID=24219888

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1524788A Expired DE1524788C3 (de) 1966-06-08 1967-05-26 Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern

Country Status (4)

Country Link
US (1) US3444526A (de)
DE (1) DE1524788C3 (de)
FR (1) FR1523564A (de)
GB (1) GB1117905A (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1963895C3 (de) * 1969-06-21 1973-11-29 Licentia Patent-Verwaltungs-Gmbh, 6000 Frankfurt Datenspeicher und Datenspeicher anste'uerschaltung
US3681757A (en) * 1970-06-10 1972-08-01 Cogar Corp System for utilizing data storage chips which contain operating and non-operating storage cells
US3774168A (en) * 1970-08-03 1973-11-20 Ncr Co Memory with self-clocking beam access
US3654610A (en) * 1970-09-28 1972-04-04 Fairchild Camera Instr Co Use of faulty storage circuits by position coding
US3805243A (en) * 1971-02-22 1974-04-16 Cogar Corp Apparatus and method for determining partial memory chip categories
US3735368A (en) * 1971-06-25 1973-05-22 Ibm Full capacity monolithic memory utilizing defective storage cells
US3781826A (en) * 1971-11-15 1973-12-25 Ibm Monolithic memory utilizing defective storage cells
US3781829A (en) * 1972-06-16 1973-12-25 Ibm Test pattern generator
US3845476A (en) * 1972-12-29 1974-10-29 Ibm Monolithic memory using partially defective chips
US3803560A (en) * 1973-01-03 1974-04-09 Honeywell Inf Systems Technique for detecting memory failures and to provide for automatically for reconfiguration of the memory modules of a memory system
US3800294A (en) * 1973-06-13 1974-03-26 Ibm System for improving the reliability of systems using dirty memories
US3917933A (en) * 1974-12-17 1975-11-04 Sperry Rand Corp Error logging in LSI memory storage units using FIFO memory of LSI shift registers
JPS5721799B2 (de) * 1975-02-01 1982-05-10
US4010450A (en) * 1975-03-26 1977-03-01 Honeywell Information Systems, Inc. Fail soft memory
FR2426938A1 (fr) * 1978-05-26 1979-12-21 Cii Honeywell Bull Dispositif de detection de secteurs defectueux et d'allocation de secteurs de remplacement dans une memoire a disques
US6381707B1 (en) * 1998-04-28 2002-04-30 Micron Technology, Inc. System for decoding addresses for a defective memory array
US6381708B1 (en) 1998-04-28 2002-04-30 Micron Technology, Inc. Method for decoding addresses for a defective memory array

Family Cites Families (4)

* Cited by examiner, † Cited by third party
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
US3245049A (en) * 1963-12-24 1966-04-05 Ibm Means for correcting bad memory bits by bit address storage
US3350690A (en) * 1964-02-25 1967-10-31 Ibm Automatic data correction for batchfabricated memories
US3331058A (en) * 1964-12-24 1967-07-11 Fairchild Camera Instr Co Error free memory

Also Published As

Publication number Publication date
DE1524788A1 (de) 1969-11-13
US3444526A (en) 1969-05-13
FR1523564A (fr) 1967-05-03
GB1117905A (en) 1968-06-26
DE1524788C3 (de) 1974-01-24

Similar Documents

Publication Publication Date Title
DE1524788C3 (de) Schaltungsanordnung zum Erkennen und zum automatischen Ersetzen von schadhaften Speicherstellen in Datenspeichern
DE2523414C3 (de) Hierarchische Speicheranordnung mit mehr als zwei Speicherstufen
DE2550339C2 (de) Speichersystem mit einem langsam arbeitenden Hauptspeicher großer Kapazität und mit zumindest einem schnell arbeitenden Pufferspeicher geringer Kapazität
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE2163342C3 (de) Hierarchische binäre Speichervorrichtung
DE1951552A1 (de) System zur Speichersicherung
DE3932474A1 (de) Platten-steuervorrichtung und plattenzugriff-steuerverfahren
DE1249926B (de) Einrichtung zum Umadressieren fehlerhafter Speicherstellen eines beliebig zuganglichen Hauptspeichers in einer Datenverarbeitungsanlage
DE2331589A1 (de) Datenverarbeitungsanordnung
DE2142634B2 (de) Assoziativspeicher
DE1901806A1 (de) Schaltungsanordnung zur Kompensation schadhafter Speicherzellen in Datenspeichern
DE2317576A1 (de) Einrichtung zur ausfallbedingten umordnung von speichermoduln in einer datenverarbeitungsanlage
DE2703559C2 (de)
DE2458525A1 (de) Speichersystem mit haupt- und pufferspeicher
DE2554502A1 (de) Verfahren und anordnung zum speichern binaerer datenelemente
DE1296429B (de) Datenbearbeitungsanlage
DE2328025B2 (de) Verfahren zum magnetischen Aufzeichnen von digitalen Informationen in einem Magnetplattenspeicher
DE1499286B2 (de) Datenbearbeitungsanlage
EP0353660B1 (de) Verfahren zur Fehlersicherung in Speichersystemen von Datenverarbeitungsanlagen, insbesondere Fernsprechvermittlungsanlagen
DE2004934A1 (de)
DE2242279B2 (de) Schaltungsanordnung zur Ermittlung von Fehlern in einer Speichereinheit eines programmgesteuerten Datenvermittiungssystems
DE1449816C3 (de) Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher
EP0036148A1 (de) Hybrid-Assoziativspeicher
DE2939412C2 (de) Schaltungsanordung zum Adressieren von Daten für Lese- und Schreibzugriffe in einer Datenverarbeitungsanlage
DE3016269C2 (de)

Legal Events

Date Code Title Description
C3 Grant after two publication steps (3rd publication)
E77 Valid patent as to the heymanns-index 1977
EHJ Ceased/non-payment of the annual fee