DE2554502C3 - Verfahren und Anordnung zum Adressieren eines Speichers - Google Patents
Verfahren und Anordnung zum Adressieren eines SpeichersInfo
- Publication number
- DE2554502C3 DE2554502C3 DE2554502A DE2554502A DE2554502C3 DE 2554502 C3 DE2554502 C3 DE 2554502C3 DE 2554502 A DE2554502 A DE 2554502A DE 2554502 A DE2554502 A DE 2554502A DE 2554502 C3 DE2554502 C3 DE 2554502C3
- Authority
- DE
- Germany
- Prior art keywords
- memory
- arrangement
- address
- partial address
- modules
- 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
Links
Classifications
-
- 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/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Hardware Redundancy (AREA)
Description
Die Erfindung betrifft ein Verfahren nach dem
Ό Oberbegriff des Anspruchs 1 sowie Anordnungen zur
Durchführung des Verfahrens.
Beim Auslesen eines Speichers wird gelegentlich ein früher darin eingeschriebenes Speicherwort verändert
ausgelesen. Dies kann durch zufällige Störungen in dem Speicher auftreten, aber auch infolge eines Defekts in
einer Speicherstelle oder in der Adressieranordnung. Aus diesem Grunde isi es bekannt, die Speicherwörter
mit Prüfzeichen zu versehen, mit denen die Richtigkeit eines Speicherworts feststellbar ist und gegebenenfalls
ein fehlerhaftes Speicherwort auch rekonstruiert werden kann. Es können jedoch auch unkorrigierbare
Fehler auftreten. Wird ein unkorrigierbarer Fehler detektier*, so kann man darauf die Speicheranordnung
außer Betrieb setzen. Dies ist für die Leistungen eines Rechenmaschinensystems, von dem die Speicheranordnung
ein Teil ist, sehr nachteilig. Man kann auch die defekte Speichereinheit getrennt außer Betrieb setzen
und von einem Servicetechniker eine einwandfreie Ersatzspeichereinheit einsetzen lassen. Dieser Vorgang
fordert viel Zeit, und es ist nahezu sicher, daß in dieser Zeit die versagende Speichereinheit adressiert werden
wird: derartige Speichereinheiten bilden üblicherweise den sogenannten Hauptspeicher eines Rechenmaschinensystems,
dessen Kapazität aus wirtschaftlichen Gründen immer knapp gehalten wird.
Inzwischen ist es bekanntgeworden, die Adresse der versagenden Speichereinheit zusammen mit einer
Ersatzadresse für die entsprechende Zeit zu vermerken. Das wiederholte Anrufen dieses Adressenhinweis·
Speichers erfordert jedoch viel Zeit.
Aufgabe der Erfindung ist es. ein Verfahren zum Adressieren eines eingangs genannten Speichers anzugeben,
bei dem ein Speichermodul mit einem unkorrigierbaren Fehler nicht mehr adressiert und die übrigen
Speichermoduln auf möglichst einfache Weise weiterhin adressiert werden können. Diese Aufgabe wird erfindungsgemäß
durch die im Kennzeichen des Hauptanspruchs angegebenen Verfahrensschi itte gelöst. Auf
diese Weise wird die Reihenfolge bezüglich der Adressierung der einzelnen Speichermoduln so geändert,
daß der Speichermodul mit einem unkorrigierbaren Fehler automatisch dem höchsten Wert der ersten
Teiladresse zugeordnet und damit nicht mehr adressiert wird, während die anderen Speichermoduln automatisch
in einer entsprechend geänderten Folge adressiert werden. Die Speicherkapazität des Speichers wird dabei
nur geringfügig beeinträchtigt.
Eine Ausgestaltung des erfindungsgemäßen Verfahrens für den Fall, daß unkorrigierbare Fehler in einem
oder mehreren der noch adressierten Speichermoduln auftreten, ist im Anspruch 2 gekennzeichnet. Durch die
zusätzlichen Invertierungen, wobei dann die höchste zulässige Teiladresse entsprechend verringert wird,
bleiben auch in ungünstigen Fällen, d. h. bei ungünstigen
*■> Kombinationen fehlerhafter Speichermoduln, noch eine
Anzahl einwandfreier Speichermoduln ohne besondere zusätzliche Maßnahmen weiterhin adressierbar.
Speicheranordnungen zur Durchführung des erfin-
Speicheranordnungen zur Durchführung des erfin-
dungsgemäßen Verfahrens sind in den weiteren Unteransprüchen gekennzeichnet Darin kann die
Inversionssteueranordnung ein elektronischer Speicher sein. In bestimmten Fällen kann sie jedceh auch mit
Vorteil eiektromechanische Komponenten enthalten, beispielsweise Schalter, deren Stellungen den gespeicherten
Wert angeben. Dadurch entsteht keine Verzögerung. Weil außerdem nur die ersten binären
Teiladressen geändert werden, ist eine schnelle Wirkung möglich. Wenn beispielsweise eine vollständige
Speichereinheit gelesen wird, braucht nur einmal eine Inversion binärer Adressensignale zu erfolgen. Die
Inversionsanordnung kann je Teiladressenstelle ein invertierendes Gatter enthalten, so daß die entstehende
Verzögerung der Adressensignale sehr klein bleiben '5
kann.
Durch die Begrenzung der erzeugbaren Teiladressen bei mehreren fehlerhaften Speichermoduln gemäß dem
Anspruch 5 wird automatisch erreicht, daß je nach der Kombination fehlerhafter Speichermoduln insgesamt
nur 1, 2, 3, 5, 9, 17 usw. Speichermoduln nicht länger adressiert werden können, während die übrigen
aufeinanderfolgend adressierbar bleiben, wie später erläutert wird.
Ein weiterer Vorteil der Erfindung besteht darin, daß nach Reparatur bzw. Eratz der fehlerhaften Speichermoduln
durch eine einfache Rückstellung der Inversionssteueranordnung automatisch die volle Kapazität
der Speicheranordnung wieder vorhanden ist.
Ausführungsbeispiele der Erfindung werden nächstehend
anhand der Zeichnung näher erläutert. Es zeigt
Fig. 1 in einer Tabelle die verschiedenen Möglichkeiten
bei der Verwendung von sechzehn Moduln für die Rangfolge,
Fig.2 verschiedene Möglichkeiten, wenn zwei
unbrauchbare Moduln vorhanden sind,
F i g. 3 ein Blockschaltbild einer erfindungsgemäßen Speicheranordnung,
Fig.4 eine detaillierte dargestellte Schaltung nach
der Erfindung und
Fig. 5 eine andere Ausführung eines Inversionselementes.
Fig. 1 zeigt in einer Tabelle die verschiedenen Möglichkeiten für die Rangfolge von sechzehn Moduln
nach der Erfindung. Die erste Spalte gibt die Dezimalzahlen von 0 bis 15. In der zweiten Spalte ist der
entsprechende Binärkode gegeben, wobei der Kode mit dem bedeutsamsten Bit anfängt. Dieser Binärkode hat
die Bedeutung, daß ein Adressenbit invertiert wird, wenn an der Stelle mit entsprechender Signifikanz des
Binärkodes eine binäre Information »0« vorhanden ist. Der Kode der letzten Zeile lautet 1111 (dezimal 15),
was bedeutet, daß die Moduln in der natürlichen Reihenfolge von 0, 1 bis 15 adressiert werden. Dies ist
auf der zugehörigen Zeile verzeichnet. Wenn der Modul 15 defekt ist, kann er ohne weitere Maßnahmen außer
Betrieb gesetzt werden, unter der Bedingung, daß die höchste Moduladresse 1110 (14) ist. Wenn jeder
Modu1 mehrere Adressen enthält, enthalten die Adressen nach F i g. 1 davon die bedeutsamsten &o
Adressenteile. Ist der Modul ; »efekt, wird nach der Zeile 14 nur das unbedeutsamste Adressenbit (auf
Modulpegel) invertiert. Je Paar aufeinanderfolgender Moduln wird jeweils die Stelle gewechselt, so daß der
Modul 14 als letzter adressiert ist. Wenn die höchstzulässige (unmodifizierte) Moduladresse 14 ist
(damit wird dann der Modul 15 adressiert), ist der defekte Modul ohne weitere KomDÜkalionen außer
Betrieb gesetzt Ist beispielsweise der Modul 9 defekt, werden die zwei mittleren Adressenbits invertiert. Es
wechseln dabei aufeinanderfolgende Vierzahlen und außerdem in jeder Vierzahl noch einmal aufeinanderfolgende
Modulpaare die Stelle. So ist tatsächlich der Modul 9 als letzter adressierbar. Die Figur gibt die
sechzehn verschiedenen Möglichkeiten, bei denen die Adresse des versagenden Moduls die zu invertierenden
Adressenbits angibt: eine gespeicherte Information »0« gibt an, daß das entsprechende Adressenbit invertiert
wird. Der übrigbleibende Adressenraum enthält 16 — 1 = 15 Moduln. Bei anderen Binärkodes ist die
Methode auch anwendbar (so z. B. bei einem Ein-Wechselkode
oder Gray-Kode).
Fig.2 gibt die 120 verschiedenen Möglichkeiten,
wenn zwei unbrauchbare Moduln aus einer Gesamtzahl von sechzehn vorhanden sind. Wenn beispielsweise die
Moduln 2 und 11 defekt sind (erste Spalte), geben die
zweite und dritte Spalte die Informationen 0 0 11 (dezimal 3) bzw. 1 0 1 0 (dezimal 10). Durch Invertierung
des ersten und zweiten oder des zweiten und vierten Adressenbits werden die defekten Moduln als die
Nummern 7 bzw. 14 adressiert. So sind die Moduln 0 bis 6 immer aufeinanderfolgend adressierbar (faktisch
werden dabei die an den ersten sieben Stehen stehenden Moduln der Zeilen 3 bzw. 10 nach Fig. 1 adressiert).
Wenn dagegen die Moduln 3 und 10 defekt sind, können
die ersten sieben Moduln der Zeilen 2 und 11 nach Fig. 1 anschließend adressiert werden. Dabei werden
das erste, zweite bzw. vierte und nur das zweite Adressenbit invertiert. Die vierte Spalte in Fig.2 gibt
die Anzahl anschließend adressierbarer Moduln für alle 120 Fälle. Diese Anzahl schwankt zwischen 7 und 14. Im
Falle willkürlichen Ausfalls zweier Moduln bleiben etwa 60Vo der Speicheranordnung verfügbar. Bei nur einem
defekten Modul ist dieser Prozentsatz 15/16, ist etwa 94%. Bei drei defekten Moduln ist der verfügbare Teil
der Speicheranordnung minimal 7/16, ist etwa 44%. Dies ist leicht wie folgt ersichtlich: bei jeder
Kombination dreie- defekter Moduln ist bei einer Hälfte der Moduln (also beispielsweise die Hälften 0 — 7 und
8-15) höchstens einer defekt. Durch eine geeignete Wahl aus den Zeilen 0-7 oder 8—15 in Fig. 1 kann
dieser defekte Modul gerade als achter in der Rangfolge adressiert werden. Dabei sind also die ersten sieben
Moduln anschließend adressierbar. Wenn alle drei defekten Moduln in der gleichen Hälfte liegen, wird die
Anzahl anschließend adressierbarer Moduln größer, bis maximal 13.
Das Verfahren läßt sich leicht auf mehrere defekte Speichereinheiten erweitern. Es sei angenommen, daß
die Moduln 0, 2, 8 und 13 defekt sind. In diesem Falle kann die Inversion durch die Daten 10 0 0 oder 10 10
gesteuert werden. In beiden Fällen sind dabei noch fünf der Moduln anschließend adressierbar.
Nachstehend wird ein einfacher Algorithmus zur Bestimmung der zu invertierenden Adressenbits gegeben.
Es wird nicht immer die maximale Anzahl anschließend adressierbarer Moduln erreicht, weil eine
einfache Anordnung angestrebt ist. in der nicht alle ursprünglichen Adressen defekter Moduln gemerkt
werden. Bei der Detektion eines defekten Moduls wird seine Adresse gespeichert, wobei die gespeicherten
Adressenbits »0« eine Inversion später folgender Adressensignale steuern. Wird ein zweiter defekter
Modul detektiert, wird seine Adresse Bit für Bit mit der bereits zuvor gespeicherten Adresse verglichen. Wenn
ab dem bedeutsamsten die Adressenbits jeweils
übereinstimmen, geschieht nichts in der gespeicherten Information. Das bedeutsamste Adressenbit, das nicht in
Übereinstimmung ist, wird auch nicht geändert, aber alle Adressenbits noch niedrigerer Signifikanz werden in die
entsprechenden des Moduls geändert, der kürzest zuvor defekt befunden worden ist.
Einige Beispiele: Zunächst wird der Modul 6 defekt und die Adresse 0 110 wird gespeichert, so daß dieser
Modul die letzte (nicht adressierbare) Stelle in der Rangfolge bekommt. Danach wird der Modul 1 defekt
und die Adresse 0 0 0 1 wird mit der gespeicherten Adresse verglichen: das zweite Bit ist verschieden, so
daß die letzten zwei Bits 0 1 der gespeicherten Adresse zugefügt werden, die lautet: 0 10 1. Im umgekehrten
Fall wird zunächst 0 0 0 1 gespeichert und davon die letzten zwei Bits in 1 0 geändert. Dies gibt die zwei
Möglichkeiten, die in der Tabelle nach F i g. 2 bei der Kombination 1^6 defekter Moduln (zwanzigste Zeile
der Tabelle) erwähnt sind. Jetzt sind noch elf Moduln anschließend adressierbar, und zwar 16-1-4, wobei
das bedeutsamste Bit der Binärkodierung der Ziffer »4« dem obenerwähnten bedeutsamsten nicht übereinstimmenden
Adressenbit entspricht.
Weiter: Zunächst wird der Modul 15 defekt und die Adresse 1111 wird gespeichert. Darauf wird der
Modul 0 defekt und die letzten drei Bits der Adresse 0 0 0 0 werden der gespeicherten Adresse zu 10 0 0
zugefügt: denn das bedeutsamste nicht übereinstimmende Adressenbit war das erste. Die Anzahl anschließend
adressierbarer Moduln ist jetzt: 16-1—8 = 7, wobei der Binärkode der Ziffer »8« dem obenerwähnten
bedeutsamsten nicht übereinstimmenden Adressenbit entspricht.
Die Methode läßt sich wie folgt auf mehr als zwei defekte Moduln erweitern. Es sei angenommen, daß
hintereinander die Moduln 0 und 4 defekt werden, wonach die Information 0 10 0 zur Steuerung der
Inversion gespeichert ist. Weil die letzten zwei Bits überschrieben sind (sei es durch die identische
Information), sind dann 16-1—4 = 11 Moduln anschließend adressierbar. Wenn nun darauf der Modul 3
defekt wird (Adresse 0 0 11) darf jetzt die gespeicherte Adresse durch 0 111 unter der zusätzlichen Bedingung
ersetzt werden, das jetzt nicht 11 Moduln anschließend
adressierbar sind: wie aus F i g. 1 ersichtlich ist, sind dabei nämlich nur acht (16 — 4 — 4) anschließend
adressierbar: das zweitbedeutsamste Adressenbit ist jetzt 2 χ zwischen aufeinanderfolgenden Adressen
verschieden gewesen. Auf gleiche Weise ist es jedoch dabei erlaubt, die gespeicherte Adresse ungeändert zu
lassen. Aus der F i g. 1 ist ersichtlich, daß in diesem Falle die optimal gespeicherte Adresse 0 ö ö ö mit i i
anschließend adressierbaren Moduln wäre, aber mit dem skizzierten Algorithmus (der wegen seiner
Einfachheit ausgewählt wurde) ist dies nicht durchführbar. Denn, nach dem skizzierten Algorithmus konnten
im obigen Fall auch die Kombinationen 0—5, 0 — 6 und 0-7 mit der Adresse 0 100 und 11 anschließend
adressierbarer Moduln defekt sein. Wenn nun darauf beispielsweise der Modul 13 (1 10 1) defekt wird, wird
die gespeicherte Adresse zu 0 1 0 1 mit 7 anschließend adressierbaren Moduln überschrieben. Wenn danach ein
Modul mit der Adresse < 7 (0...) defekt wird, geschieht
nichts. Wenn ein weiterer Modul mit der Adresse > 8 defekt wird (1...), kann entweder ein Fehlersignal
erzeugt werden (die Kapazität kann dabei noch um höchstens 6/16 der ursprünglichen werden und im
ungünstigsten Fall sogar nur noch 3/16) oder durch geeignete Maßnahmen die Anzahl leicht und anschließend
adressierbarer Moduln hoch gehalten werden.
F i g. 3 zeigt eine Blockschaltung einer erfindungsgemäßen Speicheranordnung, die eine Eingangsadressenleitung
1, ein Adressenregister 2 mit vier binären Stufen 3... 6, eine Steuerleitung für Lese/Schreibbefehlssignale
7, eine Ansteuerungseinheit einschließlich Dateneingangsregister 8 mit Dateneingangsleitung 36, eine
Speicheranordnung 9 mit weiteren nicht detaillierten
ίο Moduln 10 ... 25, einen Dekoder 27, ein Datenregister
26, eine Datenausgangsleitung 28, eine Detektionsanordnung 29, eine Inversionsanordnung 30 mit Inversionselementen
31... 34 und eine Inversionssteueranordnung 35 enthält. Die Speicheranordnung 9 enthält
sechzehn Speichermoduln, von denen die Daten über das Datenregister 26 abführbar sind. Auf der Adressenleitung
1 kommt eine Vier-Bit-Adresse an, die im Adressenregister 2 gespeichert wird und über die
möglicherweise von der Inversionssteueranordnung 35 aktivierten Iversionseinheiten 31... 34 beim Dekoder
27 ankommt. Dadurch ist einer der Moduln 10 bis 25 adressierbar (einfachheitshalber sind nur acht Adressenleitungen
angegeben). Die Adressierung beispielsweise eines Wortes in einem Modul ist nicht weiter
angegeben; sie kann gegebenenfalls für alle Moduln zusammen durchgeführt werden. Über die Leitung 7
wird die Ansteuereinheit 8 angesteuert, wodurch es klar ist, ob es sich um eine Lese- oder um eine
Schreiboperation handelt und die Moduln entsprechend gesteuert werden. Die zu speichernde Information wird
nötigenfalls über die Leitung 36 zugeführt. Die Ansteuerinformation kann Taktimpulsdaten enthalten.
Die Figur gibt den einfachen Fall, daß von der Detektionsanordnung 29 delektiert wird, ob die im
Datenregister 26 aus dem Speicher gelesene Information einwandfrei ist, z. B. die richtige Parität hat. Dazu
empfängt die Detektionsanordnung 29 ein Signal aus der Ansteueranordnung 8, z. B. zum Synchronisieren.
Wird ein Fehler detektiert, empfängt die Inversions-Steuereinheit 35 ein Signal, wodurch die dabei noch an
den Ausgängen des Adressenregisters 2 verfügbare Adresse in der Einheit gespeichert wird, die gleichfalls
merkt, »daß ein Versagen aufgetreten ist«. Wenn ein Modul versagt hat. ist die Information dieses ganzen
Moduls danach als unzuverlässig zu betrachten. Dies übt seinen Einfluß auf die Wirkung der vollständigen
Speicheranordnung aus: möglicherweise muß durch diesen Fehler ein Datenblock aus einem vorhandenen
Hintergrundspeicher herbeigeführt werden, um die Operation des Rechenmaschinensystems fortsetzen zu
können, von dem die beschriebene Speicheranordnung ein Teil isi. Ei kann auch sein, da" eine bestimmte
vorliegende Aufgabe erneut gestartet werden muß, aber auf diese Angelegenheiten bezieht sich die Erfindung als
solche nicht Weiter wird die zentrale Steueranordnung geeignete Maßnahmen treffen müssen, um die Bearbeitungen
dem jetzt verfügbaren kleineren Speicherraum anzupassen. Unter der Steuerung des erwähnten
Algorithmus, der in der Anordnung 35 verkörpert ist, werden die Inversionseinheiten 31 ...34 selektiv gesteuert
Gleiches gilt beim Detektieren der folgenden versagenden Moduln, was bei der Beschreibung für die
Fig.4 näher erläutert wird. Die Leitung 37 dient
beispielsweise zum Aktivieren der Detektionsanordnung 29. Fig.4 gibt eine weiter ausgearbeitete
Schaltung nach der Erfindung, die das bei Fig.3 erwähnte Adressenregister 2 und den Dekoder 27
enthält Weiter enthält die Schaltung zwei Signalein-
gangsklemmen 40 und 41, eine Signalausgangsklemme 42, vierzehn logische UND-Gatter 46...56, 80...82,
sieben logische ODER-Gatter 59... 64,84, drei logische
EXKLUSIV-ODER-Gatter 65 ... 67, vier Umkehrstufen 68 ... 71 und neun bistabile Elemente 72... 79, 83.
Zunächst können die Datenflipflops 72... 75 die »1«-Stellung und die Setz-Rückstell-Flipflops 76...79
die »O«-Stellung einnehmen. So sind jetzt die Gatter 46, 48, 50 und 52 für die aus dem Adressenregister 2
herrührenden vier Adressenbits durchlässig, die über die ODER-Gatter 59... 62 den Dekoder 27 erreichen. Die
Adresse wird somit nicht geändert. Das bedeutsamste Adressenbit erscheint im Registerelement 3, das
unbedeutsamste in Element 6. Wenn ein Fehler eintritt, wird die Steuerklemme 40 für einige Zeit hoch. Diese
Klemme ist mit einem Ausgang der nicht dargestellten Detektionsanordnung 29 (Fig. 3) verbunden. UND-Gatter
55 empfängt jetzt zwei hohe Eingangssignale und erregt die Taktimpulseingänge der Datenflipflops
72... 75 über die ODER-Gatter 63, 64, 84, die als Trennelement arbeiten. Dabei wird die dann gültige
Adresse aus dem Adressenregister 2 in den Datenflipflops 72... 75 gespeichert, wodurch diese Adresse die
letzte der Folge wird und als solche nicht adressierbar ist. Im Falle der Adresse 0 0 0 0 z. B. werden die
»0«-Ausgänge der Flipflops jeweils hoch, wodurch die logischen UND-Gatter 47,49,51 und 53 für die von den
Umkehrstufen 68... 71 invertierten Adressenbits aus dem Adressenregister 2 durchlässig werden. Diese
Signale erreichen dann, erneut über die ODER-Gatter 59... 62, den Dekoder 27. Auf diese Weise ist, wie in
F i g. 1 erste Zeile, die Adresse 0 0 0 0 als letzte adressiert. Die Adresse 0 0 0 0 kann weiter dadurch
gesperrt werden, daß das Signal am 1-Ausgang des Flipflops 76 die Steueranordnung des Rechenmaschinensystems,
in das die erfindungsgemäße Speicheranordnung aufgenommen wird, signalisiert, daß die höchst
zulässige Adresse jetzt 1110 ist. Bekanntlich kann in
Rechenmaschinen eine höchst zulässige Adresse getrennt gespeichert werden. Das Fehlersignal an der
Klemme 40 wird niedrig, bevor der »!«-Ausgang des Flipflops 76 hoch wird. Gegebenenfalls kann es sich um
ein Meister-Sklave-Flipflop 76 handeln. Dadurch bleiben fürs erste die UND-Gatter 80... 82 gesperrt. Wenn
ein folgender Fehler eintritt, empfängt die Klemme 40 erneut ein hohes Signal, wodurch das UND-Gatter 54
ein hohes Signal liefert und weiter die Gatter 56, 80, 81 und 82 entblockt werden. Weiter wird vom Ausgangssignal
des Gatters 54 der JK-Flipflop 83 in die »1 «-Stellung gebracht, wodurch signalisiert wird, daß
zwei versagende Moduln (oder mehr, siehe weiter unten) aufgetreten sind. Wenn keins der drei logischen
EXKLUSIV-ODER-Gatter 65...67 jetzt ein hohes Signal abgibt, bedeutet dies, daß der als fünfzehnte
rangmäßig adressierte Modul einen Fehler aufgewiesen hat Die gespeicherte Adresse in den Flipflops 72... 75
ändert sich dabei nicht Das hohe Signal am »!«-Ausgang des Flipflops 83 signalisiert daß weiterhin
höchstens vierzehn aufeinanderfolgende Moduln anschließend adressierbar sind. Wenn dagegen eines der
EXKLUSIV-ODER-Gatter 65, 66 oder 67 ein hohes Signal liefert beinhaltet dies ein nicht übereinstimmendes
Adressenbit und geschieht folgendes. Ein hohes Signal vom Gatter 67 erreicht über das UND-Gatter 80
den Flipflop 79 und bringt ihn in die »1«-Stellung. Das Ausgangssignal »1« dieses Flipflops signalisiert danach,
daß weiterhin höchstens dreizehn Moduln anschließend adressierbar sind. Außerdem bringt der Ausgangsimpuls
vom Gatter 80 über das ODER-Gatter 84 den Flipflop 75 in die Stellung, die dem Wert des unbedeutsamsten
Adressenbits im Adressenregister 2 entspricht. Ein hohes Signal vom Gatter 66 erreicht über das
UND-Gatter 81 und die ODER-Gatter 64 und 84 die Flipflops 74,75 und 78. Die »1 «-Stellung des Flipflops 78
signalisiert danach, daß nur noch höchstens elf Moduln anschließend adressierbar sind. Die Flipflops 74 und 75
werden in die Stellung gebracht, die den Werten der
ίο zwei unbedeutsamsten Adressenbits im Adressenregister
2 entspricht. Ein hohes Signal vom EXKLUSIV-ODER-Gatter 65 deutet an, daß das bedeutsamste
Adressenbit nicht übereinstimmt. Dieses Signal erreicht über das UND-Gatter 82 den Flipflop 77. Die
»1 «-Stellung des Flipflops 77 signalisiert danach, daß nur noch sieben Moduln aufeinanderfolgend adressierbar
sind. Außerdem werden über die ODER-Gatter 63, 64 und 84 die Flipflops 73, 74, 75 in die Stellung
gebracht, die den Werten der drei unbedeutsamsten Adressenbits im Adressenregister 2 entspricht Dabei
gilt für die Flipflops 72, 73, 74, 75 und 77, daß sich das Ausgangssignal erst ändern darf, wenn das Fehlersignal
an der Klemme 40 verschwunden ist. Die gleichen Maßnahmen wie beim Flipflop 76 können dazu
getroffen werden.
Wenn nun danach wiederum ein Fehler eintritt, empfängt das UND-Gatter 56 zwei logische Signale und
es erscheint an der Ausgangsklemme 42 ein Alarmsignal, um anzugeben, daß die Kapazität der Speicheran-Ordnung
zu klein wird. Dies geschieht bei der beschriebenen Anordnung erst nach mindestens drei
und höchstens sechs versagenden Moduln. Wenn der Fehler später durch Reparatur beseitigt worden ist,
empfängt die Klemme 41 einen Rückstellimpuls, wodurch die Flipflops 76, 77, 78, 79 und 83 in die
»0«-Stellung eintreten. Gegebenenfalls können auch die Flipflops 72... 75 durch dieses Signal am Rückstelleingang
85 in die »1 «-Stellung zurückgestellt werden, aber dies ist nicht immer notwendig, weil die Reihenfolge der
Adressierung der physikalischen Moduln nicht wesentlich wichtig ist. Für diese Flipflops ist die Rückstellimpulsleitung
daher punktiert dargestellt.
Eine Erweiterung läßt sich noch dadurch erreichen, daß das Register der Flipflops 72...85 mehrfach
gemacht wird. Dabei ist das erste Register wie in F i g. 4 an den Gattern 46... 53 aktivierend tätig. Das zweite
Register ist ein Blindregister, das im Falle zweier versagender Moduln die Adresse der beiden versagenden
Moduln getrennt merkt. Wenn danach ein dritter Modul versagt werden alle drei Adressen wie zuvor Bit
für Bit miteinander verglichen. Übereinstimmende Adressenbits werden als solche im aktiven Register
gespeichert Vom ersten nicht übereinstimmenden Adressenbit wird ein Mehrheitsurteil gebildet und der
entsprechende Wert im entsprechenden der Flipflops 72... 75 gespeichert Von den weniger bedeutsamen
Bits (weniger bedeutsam als das erste) wird dann der mit der Adresse der Minderheit übereinstimmende Wert
gespeichert Beispiel: Moduln 0, 9 und 10 werden in dieser Reihenfolge defekt Nach dem ersten defekten
Modul ist im Steuerregister 0 0 0 0, im ersten Hilfsregister 0 0 0 0 und im zweiten nichts gespeichert während
fünfzehn Moduln anschließend adressierbar sind. Wenn der Modul 9 defekt wird, wird im Steuerregister 0 0 0 1
gespeichert und das zweite Hilfsregister enthält 10 0 1. Wenn der Modul 10 defekt wird (1 0 1 0), ist das
bedeutsamste nicht übereinstimmende Adressenbit das erste. Es folgt die Mehrheit: 1, die folgenden folgen der
»Minderheit«-Adresse 0 0 0. Dabei bleiben ungeändert sieben Moduln aufeinanderfolgend adressierbar. Mehrheitsbildende
logische Gatter sind bekannt sowie die übrigen zu verwendenden Bausteine.
F i g. 5 gibt eine andere Ausführungsform eines Inversionselementes, das eine Signaleingangsklemme
100, zwei Spannungseingangsklemmen 101 und 102, eine Signalausgangsklemme 103, einen Widerstand 105,
einen Schalter 106, vier logische NICHT-UND-Elemente
107, 108, 109 und 110 und zwei Differenzverstärker 111 und 112 enthält. An die Klemme 102 ist eine
Speisespannung beispielsweise von +5 Volt und an die Klemme 101 eine positive (niedrigere) Bezugsspannung
angelegt. Wenn der Schalter 106 geschlossen ist, ist der obere Eingang des Gatters 106 ununterbrochen niedrig
und dadurch der obere Eingang des Gattereiemenis lös ununterbrochen hoch sowie der untere Eingang des
Elements 108. Wenn das Eingangssignal an der Klemme 100 höher als die Bezugsspannung an der Klemme 101
ist, liefert der Verstärker 112 ein hohes Signal, oder das
Element 108 empfängt zwei hohe Signale und liefert ein niedriges Signal. Dadurch liefert das Element 109 ein
hohes Signal. Ist die Eingangsspannung verhältnismäßig niedrig, liefert auch der Verstärker 112 ein niedriges
Signal, wodurch das Element 108 ein hohes Signal gibt. Das Element 109 empfängt dabei zwei hohe Signale und
liefert ein niedriges Signal. Auf diese Weise ist also die nicht invertierende Wirkung implementiert. Der Schalter
106 kann von Hand bedienbar sein.
Wenn der Schalter 106 geöffnet ist, führt der obere Eingang des Gatters 107 über den Widerstand 105 ein
hohes Potential; dieses Signal wird vom Element UO invertiert, so daß der untere Eingang des Elements 108
ununterbrochen ein niedriges Potential führt, wodurch der untere Eingang des Gatters 109 ununterbrochen ein
hohes Potential führt. Wenn das Eingangssignal an der Klemme 100 höher als die Bezugsspannung an der
Klemme 101 ist, liefert der Differenzverstärker 111 ein niedriges Signal und dadurch das Element 107 ein hohes
Signal. Das Element 109 empfängt zwei hohe Signale
ίο und das Ausgangssignal ist somit niedrig. Wenn das
- Eingangssignal an der Klemme 100 niedriger als die Bezugsspannung ist, gibt der Verstärker 111 ein hohes
Signal ab. Das Element 107 empfängt jetzt drei hohe Signale und liefert somit ein niedriges Signal. Dadurch
liefert das Element 109 ein hohes Ausgangssignal. Auf diese Weise ist eine invertierende Wirkung implementiert.
Gemäß obiger Beschreibung kann dabei immer eine große Anzahl von Moduln geschlossen adressierbar
sein. Für jedes Adressenbit ist dabei ein derartiger Schalter vorgesehen. Die Schaltung nach F i g. 4 arbeitet
vollautomatisch und also sehr schnell, wobei in manchen Fällen nicht immerzu die höchst mögliche Anzahl von
Moduln geschlossen adressierbar ist. In bestimmten Fällen kann es vorteilhaft sein, den Vorgang selbsttätig
neu einzuleiten, z. B. wenn ein bestimmter Modul vorübergehend Fehler aufweist, z. B. durch zu hohe
Temperatur. Wenn die Temperatur gefallen ist, könnte er wieder funktionieren. Inzwischen ist dabei ein großer
Teil der Speicheranordnung brauchbar und aktiv geblieben.
Hierzu 5 Blatt Zeichnungen
Claims (5)
1. Verfahren zum Adressieren eines Speichers, der aus einer Anzahl getrennt auswechselbarer
Speichermoduln besteht, die durch erste Teiladressensignale adressiert werden, wobei die Speicherstellen
innerhalb der Speichermoduln durch zweite Teiladressensignale adressiert werden und ein
unkorrigierbarer Fehler in einem Speichermodul detektierbar ist, dadurch gekennzeichnet,
daß beim Detektieren eines unkorrigierbaren Speicherfehlers in einem Speichermodul die ersten
Teiladrussensignale dieses fehlerhaften Speichermoduls
gespeichert werden, daß abhängig von den gespeicherten Teiladressensignalen weitere zugeführte
Teiladressensignale mindestens teilweise derart invertiert werden, daß die fehlerhafte
Speichereinheit der höchsten ersten Teiladresse zugeordnet ist, und daß die Erzeugung der höchsten
ersten Teiladresse gesperrt wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
daß beim Detektieren eines unkorrigierbaren Speicherfehlers in einem weiteren, noch
adressierten Speichermodul dessen erste Teiladressensignale mit den gespeicherten Teiladressensignalen
kombiniert und gespeichert werden und daß •bhängig von den kombinierten Teiladressensignalen
weitere Teile von später zugeführten Teiladressensignalen invertiert werden.
3. Speicheranordnung zur Durchführung des Verfahrens nach Anspruch 1 aus einer Anzahl
austauschbarer Speichermoduln mit Eingängen für erste Teiladressensignale, die die Speichermoduln
adressieren, und für zweite Teiladressensignale, die pro Speichermodul binäre Speicherelemente adressieren,
und mit einer Detektionsanordnung zum Detektieren eines auftretenden unkorrigierbaren
Speicherfehlers, dadurch gekennzeichnet, daß zwischen die Eingänge (1) für die ersten Teiladressen
und den Speichermoduln (10-25) der Speicheranordnung (9) eine Inversionsanordnung (30) eingefügt
ist, daß eine Inversionssteueranordnung (35) durch ein Signal der Dptektionsanordnung (29) bei einem
unkorrigierbaren Fehler die erste Teiladresse des fehlerhaften Speichermoduls speichert und die
Inversionsanordnung (30) so ansteuert, daß bei den nachfolgend zugeführten Teiladressen diejenigen
Stellen invertiert werden, in denen die Teiladresse des fehlerhaften Speichermoduls den binären Wert
»0« hatte, und daß die Inversionssteueranordnung (35) ein Signal abgibt, das die Erzeugung der
höchsten Teiladresse sperrt.
4. Speicheranordnung nach Anspruch 3, dadurch gekennzeichnet, daß die Inversionssteueranordnung
(35) bei einem weiteren Signal der Detektionsanordnung (29) infolge eines unkorrigierbaren Fehlers in
einem noch adressierten Speichermodul (10-25) dessen Teiladresse mit der gespeicherten Adresse
stellenweise von der höchsten Stelle ausgehend vergleicht und diejenigen Stellen der zweiten
Teiladresse, die nach der höchsten Stelle folgen, bei der beide Teiladressen unterschiedlich sind, zur
Ansteuerung der Inversionsanordnung (30) speichert.
5. Speicheranordnung nach Anspruch 4, dadurch gekennzeichnet, daß die Inversionssteueranordnung
(35) ein der Nummer der höchsten Stelle, bei der beide Teiladressen unterschiedlich sind, anzeigendes
Signal abgibt, daß die Erzeugung der höchsten Teiladressen bis zu einer dem anzeigenden Signa'
entsprechenden Teiladresse sperrt.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7415966A NL7415966A (nl) | 1974-12-09 | 1974-12-09 | Werkwijze en inrichting voor het opslaan van binaire informatie-elementen. |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2554502A1 DE2554502A1 (de) | 1976-06-10 |
DE2554502B2 DE2554502B2 (de) | 1980-04-10 |
DE2554502C3 true DE2554502C3 (de) | 1980-12-04 |
Family
ID=19822607
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2554502A Expired DE2554502C3 (de) | 1974-12-09 | 1975-12-04 | Verfahren und Anordnung zum Adressieren eines Speichers |
Country Status (6)
Country | Link |
---|---|
US (1) | US4028539A (de) |
JP (1) | JPS5183430A (de) |
DE (1) | DE2554502C3 (de) |
FR (1) | FR2294486A1 (de) |
GB (1) | GB1529367A (de) |
NL (1) | NL7415966A (de) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS51139735A (en) * | 1975-05-28 | 1976-12-02 | Hitachi Ltd | Data processors |
US4088876A (en) * | 1976-12-17 | 1978-05-09 | Burroughs Corporation | Error correcting circuits and methods for shift register type memories |
US4103823A (en) * | 1976-12-20 | 1978-08-01 | International Business Machines Corporation | Parity checking scheme for detecting word line failure in multiple byte arrays |
US4435754A (en) | 1981-06-30 | 1984-03-06 | Ampex Corporation | Method of selecting PROM data for selective mapping system |
US4506364A (en) * | 1982-09-30 | 1985-03-19 | International Business Machines Corporation | Memory address permutation apparatus |
EP0253161B1 (de) * | 1986-06-25 | 1991-10-16 | Nec Corporation | Prüfschaltung für eine Speichereinrichtung mit willkürlichem Zugriff |
US4922451A (en) * | 1987-03-23 | 1990-05-01 | International Business Machines Corporation | Memory re-mapping in a microcomputer system |
US5067105A (en) * | 1987-11-16 | 1991-11-19 | International Business Machines Corporation | System and method for automatically configuring translation of logical addresses to a physical memory address in a computer memory system |
DE19507312C1 (de) * | 1995-03-02 | 1996-07-25 | Siemens Ag | Halbleiterspeicher, dessen Speicherzellen zu einzeln adressierbaren Einheiten zusammengefaßt sind und Verfahren zum Betrieb solcher Speicher |
JP3059076B2 (ja) * | 1995-06-19 | 2000-07-04 | シャープ株式会社 | 不揮発性半導体記憶装置 |
US6678836B2 (en) * | 2001-01-19 | 2004-01-13 | Honeywell International, Inc. | Simple fault tolerance for memory |
JP4001280B2 (ja) * | 2002-10-22 | 2007-10-31 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 記憶装置、記憶装置を制御するプログラム、記憶装置の制御方法、及び記録媒体 |
US7927313B2 (en) | 2004-05-27 | 2011-04-19 | Baxter International Inc. | Medical device configuration based on recognition of identification information |
US8961461B2 (en) | 2004-05-27 | 2015-02-24 | Baxter International Inc. | Multi-state alarm system for a medical pump |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3781826A (en) * | 1971-11-15 | 1973-12-25 | Ibm | Monolithic memory utilizing defective storage cells |
US3796996A (en) * | 1972-10-05 | 1974-03-12 | Honeywell Inf Systems | Main memory reconfiguration |
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 |
US3872291A (en) * | 1974-03-26 | 1975-03-18 | Honeywell Inf Systems | Field repairable memory subsystem |
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 |
-
1974
- 1974-12-09 NL NL7415966A patent/NL7415966A/xx unknown
-
1975
- 1975-11-20 US US05/633,575 patent/US4028539A/en not_active Expired - Lifetime
- 1975-12-04 DE DE2554502A patent/DE2554502C3/de not_active Expired
- 1975-12-05 GB GB49998/75A patent/GB1529367A/en not_active Expired
- 1975-12-09 FR FR7537660A patent/FR2294486A1/fr active Granted
- 1975-12-09 JP JP50146005A patent/JPS5183430A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
DE2554502A1 (de) | 1976-06-10 |
JPS5183430A (en) | 1976-07-22 |
US4028539A (en) | 1977-06-07 |
GB1529367A (en) | 1978-10-18 |
NL7415966A (nl) | 1976-06-11 |
JPS5612960B2 (de) | 1981-03-25 |
FR2294486A1 (fr) | 1976-07-09 |
FR2294486B1 (de) | 1980-07-18 |
DE2554502B2 (de) | 1980-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE2554502C3 (de) | Verfahren und Anordnung zum Adressieren eines Speichers | |
DE3111447C2 (de) | ||
DE2556556A1 (de) | Verfahren und anordnung zur speicherung von informationen ueber den ort eines oder mehrerer fehlerhafter bits in einem einzelne fehler korrigierenden halbleiter-hauptspeicher | |
DE3209679C2 (de) | ||
DE2128790A1 (de) | Einrichtung zum Verwenden mehrerer betriebsfähiger Schaltungen in einem in tegrierten Schaltungsplättchen | |
EP0038947A2 (de) | Programmierbare logische Anordnung | |
DE3876459T2 (de) | Speicher und deren pruefung. | |
DE2225841C3 (de) | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers | |
DE2357168C2 (de) | Schaltungsanordnung für einen Speichermodul | |
DE2144870A1 (de) | Verfahren und Schaltungsanordnung zur Kompensation schadhafter Speicherstellen in Halbleiterspeichern | |
DE2157829C2 (de) | Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern | |
EP1113362A2 (de) | Integrierter Halbleiterspeicher mit einer Speichereinheit zum Speichern von Adressen fehlerhafter Speicherzellen | |
EP1008993A2 (de) | Schreib/Lesespeicher mit Selbsttestvorrichtung und zugehöriges Testverfahren | |
EP0615211B1 (de) | Verfahren zum Speichern sicherheitsrelevanter Daten | |
DE2752377A1 (de) | Fehlerpruefeinrichtung | |
DE69100796T2 (de) | Integrierte Speicherschaltung mit Redundanz und verbesserter Adressierung in Testbetriebsart. | |
EP2063432B1 (de) | Verfahren zum Prüfen eines Arbeitsspeichers | |
DE19922786B4 (de) | Halbleiterspeicher mit Testeinrichtung | |
DE69323076T2 (de) | Verfahren zur Erkennung fehlerhafter Elemente eines redundanten Halbleiterspeichers | |
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 | |
DE69300165T2 (de) | Verfahren zur Reparatur defekter Elemente in einem Redundanzspeicher. | |
DE69000302T2 (de) | Redundanzschaltung mit speicherung der position des ausgangs. | |
DE69626625T2 (de) | Verfahren, um redundante fehlerhafte Adressen in einer Speicheranordnung mit Redundanz zu erkennen | |
DE69637427T2 (de) | Verfahren und Gerät zur Erkennung doppelter Eintragungen in einer Nachschlagtabelle |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |