DE2357233C2 - Adressenumwandlungseinrichtung - Google Patents
AdressenumwandlungseinrichtungInfo
- Publication number
- DE2357233C2 DE2357233C2 DE2357233A DE2357233A DE2357233C2 DE 2357233 C2 DE2357233 C2 DE 2357233C2 DE 2357233 A DE2357233 A DE 2357233A DE 2357233 A DE2357233 A DE 2357233A DE 2357233 C2 DE2357233 C2 DE 2357233C2
- Authority
- DE
- Germany
- Prior art keywords
- error
- memory
- address
- circuit
- shift register
- 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
- 230000015654 memory Effects 0.000 claims description 43
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000012937 correction Methods 0.000 claims description 15
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 238000001514 detection method Methods 0.000 claims description 12
- 230000009466 transformation Effects 0.000 claims 1
- 230000002950 deficient Effects 0.000 description 7
- 238000000034 method Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/88—Masking faults in memories by using spares or by reconfiguring with partially good memories
Description
Die FMindung betrifft eine Adreßumwandlungsciniuhhing
für einen Speicher, zur Umwandlung der Adresse der angesteuerten Datenworte in eine andere
Adresse derart, daß die angesteuerten Datenworte im Fehlerfalle nurmehr soviele Fehler aufweisen, wie eine
im Speicher enthaltene Fehlererkennungs- und Korrekturschaltung korrigieren kann, wobei der Speicher aus
Speichermatrizen aufgebaut ist, in denen jeweils die gleiche Bitposition der zu speichernden Datenworte
gespeichert ist, und bei dem jede Matrix mit einem Adreßdekoder zur Auswahl einer Bitposition eines
bestimmten Datenwortes versehen ist
Der Zweck einer solchen Adressenumwano.ungseinrichtung besteht darin, angebotene Speicheradressen
derart umwandeln, daß Speicherworte mit unkorrigierbaren Fehlern in solche mit korrigierbaren Fehlern
umgewandelt werden.
Fehlerfeststellungs- und Korrigiereinrichtungen zur Codierung von Daten sind allgemein bekannt Eine
solche Einrichtung kann mehr Fehler feststellen, als sie
korrigieren kann. Für den Fall eines 64 Bit Datenwortes z. B. kann mit 8 Prüfbits erreicht werden, daß ein
einzelner Fehler korrigiert und ein Doppelfehler festgestellt werden kann. Die Stelle des einzelnen
korrigierbaren Bit; kann dabei willkürlich in dem
72 Bitwort liegen. Mit den 8 Prüfbits kann somit die fehlerhafte Bitstelle identifiziert und der korrekte Wert
des Bits angegeben werden. Falls zwei Bits fehlerhaft sind, kann ein solcher Fehler wohl angezeigt aber die
Stelle der fehlerhaften Bits jedoch nicht identifiziert werden. Die beider'. Bits können somit auch nicht im
allgemeinen Falle korrigiert werden.
Es sind Einfachfehler-Korrigiercode bekannt geworden, mit denen auch bestimmte Arten von Mehrfachfehlern, wie z. B. Fehler in benachbarten Bitpositionen,
korrigiert werden können. In bestimmten Situationen, wie z. B. bei der 0ber'.3gung von Datenblöcken über
einen Übertragungskanal, oder bei Verwendung eines Magnetbandspeichers können solche Code von großem
Wert sein, jedoch stellen sie kein allgemeingültiges Lösungsmittel zur Fehlerkorrektur dar.
In der US-PS 36 44 902 wird eine Einrichtung beschrieben, die es gestattet, Doppelfehler, welche wohl
feststellbar aber nicht korrigierbar sind, in zwei Einzelfehler umzuwandeln, welche jeweils auch korri
gierbar sind. Der Speicher in dieser Patentschrift besteht aus einer Anzahl Matrizen, wobei jede dieser
Matrizen das Bit einer bestimmten Bitposition der binären Speicherworte speichert. Jede dieser Matrizen
wird durch einen eigenen Adreßdecodierer angesteuert. In der bekannten Einrichtung wird vorgeschlagen, zur
Vermeidung von Mehrfachfehlern die angebotene Speicheradresse permanent so umzuwandeln, daß
Datenbits zwischen Speicherworten durch physikalischen Umtausch von Speichermatrix-Karten ausgetauscht
werden. Auch die Adressenverdrahtung muß an geeigneter Stelle von Hand aus geändert werden, so daß
die beschriebene Fehlcrkorrekturmethode nur durch einen herbeigerufenen Techniker bei Stillstand der
Anlage ausführbar ist.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, in einer Adreßumwandlungseinrichtung der
im Oberbegriff des Anspruchs I angegebenen Art eine rasche Umwandlung der Adressen, ohne Stillstand der
Anlage zu ermöglichen.
Diese Aufgabe wird durch die im Kennzeichen des Hauptanspruches beschriebene Einrichtung gelöst.
Die Erfindung schlägt eine Moclifizierungsmethodc
der Speicheradresse vor. welche elektronisch und dynamisch ausgeführt werden kann. Hierbei wird die
dem Adressendecodicrer angebotene Adresse durch
logische Schaltungen als Funktion von in einem Schieberegister gespeicherten Daten modifiziert Für
jede Bitposition ist dabei ein solches Schieberegister vorgesehen. Wenn Mehrfach-Fehler in einem Datenwort
festgestellt werden, wird die in jedem Schieberegister gespeicherte Information derart verändert, daß die
Datenbits des Datenwortes in solcher Weise geändert werden, daß die festgestellte Mehrfachfehlersituation
aufgehoben wird.
Das Schieberegister ist vorzugsweise als lineares Rückkopplungsschieberegister ausgeführt und steuert
ein Exklusiv-ODER-Glied für jeden der Eingänge des Adressendecodierers der betreffenden Bitposition.
Jedes der Exklusiv-ODER-Glieder empfängt als Eingänge
ein Bit der Wortadresse und den Ausgang einer der Stufen des linearen Rückkopplungsschieberegisters. Am
Ausgang liefert das Exklusiv-ODER-Glied ein Signal, welches den Eingang des Adreßdecodierers bildet.
In den Schieberegistern werden verschiedene Galoisfeld-Zahlen
gespeichert Dabei wird mit der Zahl 0 im Schieberegister der ersten Bitposition begonnen und in
den aufeinanderfolgenden Schieberegistern mit aufeinanderfolgenden
Zahlen des Galoisfeldes bis zur höchsten benötigten Zahl im Schieberegister der letzten
Bitposition fortgefahren. Der Austausch der Bits zwischen den Worten erfolgt dann als orthogonale
Lateinquadrate. Der Austausch kommt dadurch zustande, daß jedes Schieberegister mit Ausnahme des
Schieberegisters der ersten Bitposition um eine Galoiszahl weitergeschaltet wird, wenn ein Mehrfachfehler
von der Fehlererkennungsschaltung festgestellt wird. Auf diese Weise wird erreicht, daß die
festgestellten Mehrfachfehler in einem einzigen Wort auf Einfachfehler in zwei oder mehr verschiedene
Adressen aufgeteilt werden. Bezüglich der mathematischen Eigenschaften von Galoisfeldern und Lateinquadraten
wird auf die nachfolgende Beschreibung des Ausführungsbeispieles der Erfindung verwiesen.
Die Erfindung hat den Vorteil, daß ein Austesten des Speichers zur Feststellung der schadhaften Bitstellen
entfallen kann. Der festgestellte Mehrfachfehler wird dabei in einem einzigen Vorgang eliminiert. Die Art und
Weise der Korrektur bringt es mit sich, daß es höchst unwahrscheinlich ist, daß durch die Korrektur andere
Mehrfachfehler geschaffen werden.
Ein anderer Vorteil der Erfindung besteht darin, daß
in einem vorhandenen Speicher nui· geringfügige Änderungen notwendig werden, um die automatische
Adressenumwandlung durchführen zu können. Es müssen lediglich das Schieberegister und Exklusiv-ODER-Glieder
für jede Bitpusition hinzugefügt werden. Ein weiterer Vorteil besteht darin, daß durch die
Korrektureinrichtung die Bitkapazität des Speichers nicht eingeschränkt wird, aber trotzdem die Verwendung
von schadhaften Speicherteilen, wie z. B. Halbleiterchips mit schadhaften Bitstellen, möglich wird. Die
erfindungsgemäße Einrichtung ist auch nicht den Randbedingungen von bekannten Einrichtungen unterworfen,
das Fehler in einem Viertel oder einem Achtel eines Chips auftreten müssen, wobei nur die restlichen
drei Viertel oder sieben Achtel des Chips im Speicher verwendet werden können.
Ein Ausführungsbeispiel der Erfindung soll anhand von Figuren beschrieben werden. Es zeigt
F i g. I eine schematische Darstellung, wie Mehrfachfehler
in einem einzigen Wort in einzelne Fehler in zwei oder mehr Worten umgeändert werden können,
F i β. 2 eine SDeichernr 'r\x. welche durch einen Decodierer adressiert wird,
Fig.3 eine Speichermatrix mit einer Adressenumwandlungseirrichtung
zur Umwandlung der angebotenen Adresse in eine Galoisfeldzahl,
Fig.4 eine Tabelle, welche den Zusammenhang zwischen den Decodieren) der F i g. 1 und F i g. 2 zeigt,
und
Fig.5 eine Adressenumwandlungseinrichtung für einen 4 · 4 Speicher.
Der in Fig. i gezeigte Speicher enthält eine Mehrzahl von Datenworten, welche jeweils vier Bits
aufweisen. Jedes Datenbit einer bestimmten Bitposition aller Worte ist dabei in einer Speichermatrix gespeichert
Zum Beispiel enthält das Wort 10 vier Datenbits 12a bis 12c/, welche in den Matrizen 14, 16, 18 und 20
gespeichert sind. Das Wort 22 weist vier Bits 24a bis 24c/ auf, und das Wort 26 enthält die Bits 28a bis 28c/. Bei dem
Speicher handelt es sich also um einen Speichsr, welcher in jedem Basismodul ein Bit einer bestimmten
Bitposition speichert
In einer solchen Anordnung kann eir ;;hlerhaftes Bit
relativ leicht ersetzt werden. Zum Beispiel soli angenommen werden, daß das Bit \2b schadhaft ist.
Wenn die Matrix 16 als Ganzes ausgewechselt wird, d. h. nur mit einwandfreien Chips versehen wird, kann der
Speicher wieder fehlerfrei arbeiten. Ein solcher Ersatz ist jedoch umständlich. Deshalb ist in modernen
Speichern eine Fehlererkennungs- und Korrektureinrichtung vorgesehen, welche automatisch ein Datenwort
mit einem fehlerhaften Bit korrigiert. Die bekannten Einrichtungen stellen auch zwei oder mehr
fehlerhafte Bits fest, können jedoch die Daten in dem Wort nicht mehr automatisch korrigieren. Die Fehlererkennungsschaltung
würde im obigen Beispiel einen Doppelfehler im Wori 22 feststellen, in dem die Bits 24a
und 24c/ schadhaft sind, könnte jedoch diesen Fehler nicht korrigieren, da die Anzahl der verwendeten
Prüfbits es nicht gestattet, die Stelle der schadhaften Bits anzugeben. Eine Korrektur könnte z. B. auf die
Weise erfolgen, die in der eingangs genannten US-PS 36 44 902 beschrieben ist. Nach dieser Methode wäre es
nicht notwendig eine der Matrizen 14 bis 20 auszuwechseln, sondern man würde die angebotenen
Speicheradressen umwandeln, d. h. die Worte würden nicht dasselbe Bit in jeder der Matrizen enthalten. So
könnte z. B. ein Doppelfehler im Wort 22 dadurch eleminiert werden, daß in das Wort 22 das Bit 28c/
anstelle des Bits 24c/aufgenommen wird und das Wort 26 würde dann das Bit 24c/ anstelle des Bits 28c/
D° enthalten. Auf diese Weise könnte jedes der Worte 10,
22 und 26 nur einen einzigen Fehler enthalten und könnte somit die Fehlererkennungsschaltung des
Speichers diesen einzelnen Fehler automatisch korrigieren. In der bekannten Einrichtung erfolgt die Adressenumwandlung
durch physikalische Änderung der Verdrahtung des Speicher?:.
In Fig. 2 ist eine typische Speichermatrix mit den Adressierungseinrichtungen gezeigt. Die Bits 30 sind in
einer 4 · 1 Matrix angeordnet, wobei jedes Bit am Kreuzungspunkt einei der Wortleitungen 32 bis 38 mit
der Bitleitung 40 angeordnet ist. Eine der vier Wortleitungen wird dadurch ausgewählt, daß die
Adressensignale r\ und rl durch einen Decodierer 48 decodiert werden. Wenn beide Bits rl und rl den
h1 binären Wert 0 haben, wird die Wortleitung «Ό
ausgewählt. '-.Venn /1 -- I ist und rl = 0. wird dij
Wortleitung w 1 ausgewählt. Wenn r 1 = 0 und rl = I
ist. wird die Wortleitunc w 2 ausgewählt und. schließlich.
wenn beide Bits r\ und r2 I sind, wird die Wortleitung
it 3 ausgewählt. Bei einer Leseoperation würde dann
das Bit 30 auf der bestimmte) Wortleitung 32, 34, 36 oder 38 in den Leseverstärker 49 aufgelesen werden.
Die oben beschriebene bekannte Einrichtung wird im vorliegenden Ausführungsbeispiel der Erfindung durch
die in F i g. 3 gezeigte Umwandlungseinrichtung ergänzt. Die Einrichtung 50 weist ein zweistufiges lineares
Rückkopplungsschieberregister (LFSR) 52 und zwei Exklusiv-ODER-Glieder 54 und 56 auf, welche eine κ
Exklusiv-ODER-Operation mit den beiden Datenbits
el und c2. welche in den Stufen des Schieberregisters
gespeichert sind und mit den Adressenbits rl und r2
des Wortauswahldecodlersignales ausführen. Die bestimmte
Wortleitung, 0. 1, 2 oder 3 dieser Matrix, welche ι:
von den Signalen rl und r2 ausgewählt werden soll,
hängt von den Daten, die im Schieberegister 52 gespeichert sind, ab. Wenn z. B. in beiden Stufen des
Schieberegisters je eine binäre 0 gespeichert ist, erfolgt flip ΠρΓΤ\Ηίρπιησ wip rvhpn im '/ncammpnhnncr mil rtpr ?(]
bekannten Einrichtung (F i g. 2) beschrieben. Das heißt, wenn beide Bits rl und r2 0 sind, wird die
Nullwortleitung ausgewählt, usw. Wenn jedoch in einer der beiden Stufen des Schieberegisters nicht eine 0
gespeichert ist, wird eine verschiedene Kombination 2>
von Wortleitungen ausgewählt. Es soll z. B. angenommen werden, daß in der ersten Stufe des Schieberegis:ers
52 eine ! gespeichert ist, während die zweite Stufe des Schieberegisters eine 0 enthält. Wenn in diesem
Falle beide Bits rl und r2 = 0 sind, sind die F.ingangssignale zum Decodierer a 1 und a 2 gleich I
und 0. Auf diese Art wird dann die Wortleimng 1 des Speichers ausgewählt.
Die linke Tabelle in Fig.4 zeigt die resultierenden Adressen a 1, a 2, welche sich durch die verschiedenen J5
Kombinationen von rl. r2, el und c2 ergeben,
während die rechte Tabelle in F i g. 4 anzeigt, welche Worte durch die verschiedenen Kombinationen von r 1.
r2, c 1 und c 2 ausgewählt werden.
Die Zahlen 00, 10, 01 und Il stellen dabei eine *o
Galoisfeld-Elementsequenz dar. Es ist bekannt, daß ein lineares Schieberegister, wie z. B. das Zweitbitschieberegister
52, Zahlen in einer Galoisfeld-Elementsequenz produziert, wenn es von Position zu Position weitergeschoben
wird. Ein solches lineares Schieberegister kann Ji
also als Galoiszähler betrachtet werden. Zur Beschreibung der Wirkungsweise eines solchen Zählers soll nun
angenommen werden, daß eine 1 in der ersten Stufe 58 und eine 0 in der zweiten Stufe 60 des Registers
gespeichert ist. Wenn nun ein Schiebepuls an die ">o
Klemme 62 angelegt wird, werden die Daten in der. Stufen verschoben. Durch diese Verschiebung wird der
Inhalt der Stufe 60 in die Stufe 58 verschoben, während das Bit in der Stufe 58 im Exklusiv-ODER-Glied 63 mit
dem Bit in der Stufe 60 in einer Exklusiv-ODER-Opera- «
tion verknüpft wird und das Resultat in die Stufe 60 eingeschrieben wird. Nach der Verschiebeoperation ist
also eine 0 in der Stufe 58 und eine I in der Stufe 60 gespeichert. Wenn nun nochmals ein Schiebepuls an die
Klemme 62 angelegt wird, werden die Daten im h0
Register wiederum verändert, und sind schließlich in beiden Stufen 58 und 60 je eine 1 gespeichert. Wenn nun
schließlich noch ein Schiebeimpuls angelegt wird, kehrt das Schieberegister zu der Ausgangssituation zurück
und speichert eine 1 in der ersten Stufe 58 und eine 0 in *">
der zweiten Stufe 60. Die Daten im Schieberegister verändern sich also wie im Diagramm 68 in Fig. 5
gezeigt.
Die drei Zahlen in der Sequenz stellen drei der vier
Zahlen in der Galoisfeld-Llementseqiien/. welche oben
beschrieben wurde, dar. Damit kann für einen Speicher mit vier Worten zu je vier Bits eine Mehrfp.chfehlerkorrektur
erzielt werden |edes Bit eines der Worte ivO bis
iv 3 des Speichers ist einer verschiedenen Matrix
gespeichert und jede Matrix wird durch eine Wortadreßleiüing
über den Galoisiimwandlungscodierer 50 und Decodierer 48 adressiert.
ι In F i g. 5 stellen ivO, η 1, ic 2 und w 1 die Worte dar,
welche durch die Adreßbits rl und r2 angewählt werden, während die Zahlen in den Spalten Γ1. T2 und
Γ3 die Worte '!»rstellen, welche tatsächlich in der
betreffenden Mairix 14, 16, 18 oder 20 adressiert werden. Im Schieberegister 52 der Matrix 14 werden
zwei binäre Nullen gespeichert. In dieser Matrix ist das erste Bit jedes der Worte w0 bis w3 gespeichert und
die Daten in diesem Schieberegister werden im gezeigten Beispiel nicht verändert. Die Eingangssignale
Γ \ lind Γ 2 ?.!If dcn AHrpftliMtuntJpn nassiprpn aUn dip
Exklusiv-ODER-Glieder 54a und 56a unverändert und das erste Bit jedes der Worte ist zugleich dasselbe Bit
wie es in den Spalten 7"l,7~2und 7~3 dargestellt ist.
Zu Beginn wird eine binäre I in der ersten Stufe 586
und eine binäre 0 in der zweiten Stufe 606 des
Schieberegisters der Matrix 16 gespeichert. Diese Matrix enthält das zweite Bit jedes der Speicherworte.
Damit werden die Bits der Worte wie in Spalte T\ urnarr»'^iert, so daß wenn die Adressenbits r 1 und r2
das Wort κΌ adressieren, das Bit des Wortes w \
erhalten wird, usw.
Eine andere Umwandlung der Bits erfolgt in der
Matrix 18, in der eine 0 in der ersten Stufe 58c und eine 1 in der zweiten Stufe 6Of gespeichert ist, und in der
Matrix 20, in dem eine 1 in beiden Stufen des Schieberegisters 52t/ gespeichert ist. Damit sind die
Adressenbits a 1 und a 2, welche dem Decodierer angeboten werden, verschieden für jede Matrix, wenn
die angebotenen Adressenbits r\ und r2 identisch für alle Speichermatrizen sind.
Die Daten werden in den Schieberegistern dadurch gespeichert, daß ein Impuls an die Klemme 64 angelegt
wird. Zuerst wird eine binäre I an die Klemme 64d angelegt, und ein Schiebepuls an die Klemme 62. Sodann
wird eine binäre 1 an der Klemme 64ceingeführt und ein zweiter Schiebeimpuls an die Klemme 62 angelegt.
Schließlich wird eine binäre 1 an der Klemme 640 eingeführt, und ein dritter Schiebeimpuls an die Klemme
62 angelegt. Nach dem dritten Schiebeimpuls speichern die Schieberegister 52a bis 52d die oben angeführten
Daten.
Es soll nun angenommen werden, daß ein Dop; :lfehler
in einem der Speicherworte durch die Fehlererkennungsschaltung 66 festgestellt wird. Daraufhin wird ein
Schiebeimpuls an die Klemme 62 durch die Schaltung 66 angelegt und damit die in jedem der Schieberegister 52
gespeicherten Daten in Obereinstimmung mit der bei 68 gezeigten Sequenz verändert
Die in der Speicherkarte 16 gespeicherten Schieberegisterdaten werden also von 10 auf 01 verändert, die in
Karte 18 gespeicherten Daten von 01 auf 11, und die in
Karte 20 gespeicherten Daten von 11 auf 10, während die Bits im Schieberegister 52a in der Karte 14
unverändert bleiben.
Aus der Betrachtung der Spalte T2 in allen Karten
ergibt sich, daß eine vollständige Umordnung der Bits im Speicher durchgeführt wird. Zur iiiustration, wie
damit ein Doppelfehler eliminiert werden kann, soll
angenommen werden, daß das Bit der Wortleitung 2 auf
der Karte 16 und das Bit der Wortleitung 0 auf der Karle 20 schadhaft sind. Ein Doppelfehler besteht also
im adressierten Wort 3. Wenn nun der .Schiebeimpuls an die Schieberegister 52b bis 52d angelegt wird, befinden
sich diese fehlerhaften Bits nicht mehr im Wort 3, sondern es würde nunmehr eines im Wort 0 und das
andere im Wort I zu finden sein. d. h. es liegen nun zwei Einze';-hlersituationen vor, welche durch die gebräuchliche
Felilererkennungs- und Korrekturschaltung korrigiert werden können.
Es soll nun angenommen werden, daß ein zusätzlicher
Fehler im Wort 3 der Karte 16 auftritt, wodurch sich ein Doppelfehler im adressierten Wort 1 ergibt, welcher das
Wort 3 in Karte 16 und das Wort 0 in Karte 20 betrifft. F.s wird sodann ein zweiter Schiebeimpuls von der
Fehlererkennungsschaltung 66 angelegt, wodurch sich eine Bitanordnung in jeder der Karten ergibt, welche in
Späht- Γ3 der Karten gezeigt ist. Eine Prüfung dieser 7~1 7pipt c\ai\ nun in inlpm iipr Wnrlp pin ->n Aa
ein Lateinquadrat dar, da eine bestimmte Ziffer in jeder Zeile und in jeder Spalte genau cininiil vorkommt. Ob
zwei verschiedene Laleinquadrate orthogonal sind. kann dadurch festgestellt werden, daß man sie sich als
■") iibcreinandergelegt vorstellt. Dabei ergeben sich in jedem Kreuzungspunkl des entstehenden Quadrats ein
Zahlenpaar, welches aus der Zahl des ersten Lateinquadrates und der Zahl des entsprechenden Kreuzungspunktes im anderen Lateinquadrat besteht. Die beiden
to Lateinquadrate sind dann orthogonal, wenn ein bestimmtes Zahlenpaar in dem entstehenden Lateinquadrat
genau einmal vorkommt.
Es ist ersichtlich, daß in dem obigen Ausführungsbeispiel bei Durchlaufen der beschriebenen Sequenz ein
i) solches orthogonales Lateinquadrat entsteht. Falls
jedoch ein dritter Doppelfehler auftritt und ein dritter .Schiebeimpuls an die Klemme 62 angelegt würde, dann
würde die ursprüngliche Fehlersituation wieder entstehen. Hierbei ist jedoch zu beachten, daß aus Gründen
rl»r narctolluntr nr»H A&r I I
Einfachfehler vorliegt, welcher von der Einrichtung korrigiert werden kann.
Es wurde somit gezeigt, daß nach dem obigen Verfahren, in dem binäre Zahlen in einer Galoisfeld-Transformationssequenz
benutzt werden und die 2S Zahlen, wie oben beschrieben, in der Sequenz
weitergeschaltet werden, nicht korrigierbare Fehler in solche Fehler umgewandelt werden können, die von der
Fehlererkennungs- und Korrekturschaltung des Speichers korrigiert werden können. Wenn dabei nach der in
Feststellung eines ersten Doppelfehlers ein zweiter Dopp 'fehler auftritt und die oben beschriebene
Fehlerumwandlung vorgenommen wird, ist dabei sichergestellt, daß durch die Umwandlung des zweiten
Fehlers nicht die erste Doppelfehlersituation wieder π geschaffen wird. Dies wird dadurch erzielt, daß die
durch die Galois-Transformationssequenz geschaffene Adressensequenz Ausdrücke von orthogonalen Lateinquadraten
darstellt.
Die bereits oben beschriebene F i g. 4 stellt nämlich der gezeigte Speicher nur sehr geringen Umfang hat. In
einer tatsächlichen, praktisch verwendeten Ausführung, würde die Anzahl der auf einer Speicherkarte
gespeicherten Bits in die Hunderte oder Tausende gehen. Dementsprechend wären dann auch die nötigen
Galoisfeld-Transformationssequenzen aus viel längeren binären Zahlen zusammengesetzt. Die Wahrscheinlichkeit,
nur eine Zahlenkombination in der Sequenz
wiederholen zu müssen, ist daher sehr klein.
Zum besseren Verständnis der beschriebenen Einrichtung sei daran erinnert, daß ein Galoisfeld aus einem
Residuum-Klassenring modulo m besteht, worin m eine
Primzahl ist. Für eine genauere Beschreibung von Galoisfeldern kann auf das Buch von W. W. Perterson
»Error Correcting Codes«, 1961, MIT Press Cambridge, Mass.. verwiesen werden.
Eine Beschreibung der Eigenschaften von orthogonalen Lateinquadraten ist in dem Buch von H. B. Mann.
»Design and Analysis of Experiments«, 1949, Dover Publications, N. Y., enthalten.
Hierzu 2 Blatt Zeichnungen 308 108/48
Claims (5)
1. Adressenumwandlungseinrichtung für einen
Speicher, zur Umwandlung der Adresse der angesteuerten Datenworte in eine andere Adresse
derart, daß die angesteuert«. Datenworte im Fehlerfall nunmehr sovielc- Fehler aufweisen, wie
eine im Speicher enthaltene Fehlererkennungs- und Korrekturschaltung korrigieren kann, wobei der
Speicher aus Speichermatrizen aufgebaut ist, in denen jeweils die gleiche Bitposition der zu
speichernden Datenworte gespeichert ist, und bei dem jede Matrix mit einem AdreBdecoder zur
Auswahl einer Bitpcsition eines bestimmten Datenwortes versehen ist, dadurch gekennzeich-
net, daß für jede Matrix eine eigene Umwandiungsschaltung (50) vorgesehen ist, durch die die
binären Adressenbits (rl, r2) des angesteuerten Datenworts in binäre Adressenbits (at, a2)
umgewandelt werden, die eine binäre Zahl in einer Galoisfeld Transformationssequenz darstellen, wobei jede Umwandlungschaltung (SO) Exklusiv-ODER-Schaltungen (54,56) enthält, deren Ausgänge
die umgewandelten Adressenbits (al, a 2) den Adressendecodern (48) anbieten, und deren erste
Eingänge mit den umzuwandelnden Adressenbits (r 1, r2) verbunden sind, und deren zweite Eingänge
mit den Ausgängen von entsprechenden Stufen (58, 60) von als Galoiszählern ausgebildeten Schieberegistern (52) verbunden sind, welche jeweils beim
Auftreten eines von der Fehlererkennungs- und Korrekturschaltung (66) zwar erkennbaren, aber
nicht korrigierbaren Mehrfachfehlers durch einen von der Fehlererkenßangs- u;<d Korrekturschaltung
(66) gelieferten Schiebv.iir.puls um eine Bitposition
weitergeschaltet wird.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Galoiszähler als lineare Rückkopplungsschieberegister ausgeführt sind.
3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Schieberegister zwei Stufen (58,60)
aufweisen, welche über eine Exklusiv-ODER-Schaltung (63) verbunden sind, wobei der zweite Eingang
dieser Exklusiv-ODER-Schaltung vom Ausgang der zweiten Stufe (60) gesteuert wird und daß der
Eingang der ersten Stufe (58) mit dem Ausgang einer ODER-Schaltung verbunden ist, deren einer Eingang
mit dem Ausgang der zweiten Stufe (60) und deren zweiter Eingang mit einer Klemme (64) zum
externen Einspeichern von Daten in die Stufen des Schieberegisters verbunden ist.
4. Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß in alle Stufen des Schieberegisters (52)
einer einzigen, bestimmten Matrix (14) eine binäre 0 gespeichert wird und daß der Inhalt des Schieberegisters
bei Auftreten eines Vielfachfehlcrs nicht verändert wird.
5. Einrichtung nach Anspruch 1, dadurch gekennzeichnet,
daß die FEK-Schaltung (66) einen Doppelfehler erkennen und einen Einfachfehler korrigieren
kann.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US00316163A US3812336A (en) | 1972-12-18 | 1972-12-18 | Dynamic address translation scheme using orthogonal squares |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2357233A1 DE2357233A1 (de) | 1974-06-20 |
DE2357233C2 true DE2357233C2 (de) | 1983-02-24 |
Family
ID=23227784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2357233A Expired DE2357233C2 (de) | 1972-12-18 | 1973-11-16 | Adressenumwandlungseinrichtung |
Country Status (7)
Country | Link |
---|---|
US (1) | US3812336A (de) |
JP (1) | JPS5230336B2 (de) |
CA (1) | CA1002663A (de) |
DE (1) | DE2357233C2 (de) |
FR (1) | FR2210793B1 (de) |
GB (1) | GB1400650A (de) |
IT (1) | IT999371B (de) |
Families Citing this family (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2316693A1 (fr) * | 1975-07-01 | 1977-01-28 | Cit Alcatel | Memoire numerique d'image |
US4943967A (en) * | 1982-02-15 | 1990-07-24 | Hitachi, Ltd. | Semiconductor memory with an improved dummy cell arrangement and with a built-in error correction code circuit |
JPS58139399A (ja) | 1982-02-15 | 1983-08-18 | Hitachi Ltd | 半導体記憶装置 |
US5177743A (en) * | 1982-02-15 | 1993-01-05 | Hitachi, Ltd. | Semiconductor memory |
US4461001A (en) * | 1982-03-29 | 1984-07-17 | International Business Machines Corporation | Deterministic permutation algorithm |
US4489403A (en) * | 1982-05-24 | 1984-12-18 | International Business Machines Corporation | Fault alignment control system and circuits |
US4485471A (en) * | 1982-06-01 | 1984-11-27 | International Business Machines Corporation | Method of memory reconfiguration for fault tolerant memory |
US4483001A (en) * | 1982-06-16 | 1984-11-13 | International Business Machines Corporation | Online realignment of memory faults |
US4479214A (en) * | 1982-06-16 | 1984-10-23 | International Business Machines Corporation | System for updating error map of fault tolerant memory |
US4488298A (en) * | 1982-06-16 | 1984-12-11 | International Business Machines Corporation | Multi-bit error scattering arrangement to provide fault tolerant semiconductor static memories |
US4453248A (en) * | 1982-06-16 | 1984-06-05 | International Business Machines Corporation | Fault alignment exclusion method to prevent realignment of previously paired memory defects |
US4506364A (en) * | 1982-09-30 | 1985-03-19 | International Business Machines Corporation | Memory address permutation apparatus |
US4520453A (en) * | 1982-11-01 | 1985-05-28 | Ampex Corporation | Address transformation system having an address shuffler |
US4534029A (en) * | 1983-03-24 | 1985-08-06 | International Business Machines Corporation | Fault alignment control system and circuits |
US4584682A (en) * | 1983-09-02 | 1986-04-22 | International Business Machines Corporation | Reconfigurable memory using both address permutation and spare memory elements |
US4653050A (en) * | 1984-12-03 | 1987-03-24 | Trw Inc. | Fault-tolerant memory system |
JPH071640B2 (ja) * | 1987-06-03 | 1995-01-11 | 三菱電機株式会社 | 半導体記憶装置の欠陥救済装置 |
DE3726570A1 (de) * | 1987-08-10 | 1989-02-23 | Siemens Ag | Verfahren und schaltungsanordnung fuer halbleiterbausteine mit in hochintegrierter schaltkreistechnik zusammengefassten logischen verknuepfungsschaltungen |
US5265098A (en) * | 1990-08-03 | 1993-11-23 | International Business Machines Corporation | Method and means for managing DASD array accesses when operating in degraded mode |
US5485588A (en) * | 1992-12-18 | 1996-01-16 | International Business Machines Corporation | Memory array based data reorganizer |
TW312763B (de) * | 1995-04-05 | 1997-08-11 | Siemens Ag | |
US5873126A (en) * | 1995-06-12 | 1999-02-16 | International Business Machines Corporation | Memory array based data reorganizer |
US5867612A (en) * | 1996-03-27 | 1999-02-02 | Xerox Corporation | Method and apparatus for the fast scaling of an image |
US5889893A (en) * | 1996-03-27 | 1999-03-30 | Xerox Corporation | Method and apparatus for the fast rotation of an image |
EP2727114B1 (de) * | 2011-06-28 | 2020-04-22 | Hewlett-Packard Enterprise Development LP | Umschaltbarer speicher |
EP2771885B1 (de) | 2011-10-27 | 2021-12-01 | Valtrus Innovations Limited | Schaltbarer speicher zur unterstützung von atomaren operationen |
WO2013062562A1 (en) | 2011-10-27 | 2013-05-02 | Hewlett-Packard Development Company, L.P. | Shiftable memory supporting in-memory data structures |
KR101634191B1 (ko) | 2011-10-28 | 2016-07-08 | 휴렛 팩커드 엔터프라이즈 디벨롭먼트 엘피 | 금속-절연체 상전이 플립-플롭 |
US9589623B2 (en) | 2012-01-30 | 2017-03-07 | Hewlett Packard Enterprise Development Lp | Word shift static random access memory (WS-SRAM) |
US9431074B2 (en) | 2012-03-02 | 2016-08-30 | Hewlett Packard Enterprise Development Lp | Shiftable memory supporting bimodal storage |
US9542307B2 (en) | 2012-03-02 | 2017-01-10 | Hewlett Packard Enterprise Development Lp | Shiftable memory defragmentation |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3644902A (en) * | 1970-05-18 | 1972-02-22 | Ibm | Memory with reconfiguration to avoid uncorrectable errors |
-
1972
- 1972-12-18 US US00316163A patent/US3812336A/en not_active Expired - Lifetime
-
1973
- 1973-10-05 GB GB4655573A patent/GB1400650A/en not_active Expired
- 1973-10-23 FR FR7338727A patent/FR2210793B1/fr not_active Expired
- 1973-10-30 CA CA184,628A patent/CA1002663A/en not_active Expired
- 1973-11-06 JP JP48124103A patent/JPS5230336B2/ja not_active Expired
- 1973-11-14 IT IT31282/73A patent/IT999371B/it active
- 1973-11-16 DE DE2357233A patent/DE2357233C2/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
DE2357233A1 (de) | 1974-06-20 |
FR2210793A1 (de) | 1974-07-12 |
JPS4991131A (de) | 1974-08-30 |
JPS5230336B2 (de) | 1977-08-08 |
CA1002663A (en) | 1976-12-28 |
US3812336A (en) | 1974-05-21 |
IT999371B (it) | 1976-02-20 |
GB1400650A (en) | 1975-07-23 |
FR2210793B1 (de) | 1976-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2357233C2 (de) | Adressenumwandlungseinrichtung | |
DE2030760C2 (de) | Paritätsprüfschaltung für eine Speicherschaltung | |
DE2260850C2 (de) | Schaltungsanordnung zur Erkennung von Einzel- und Mehrfachfehlern und zur korrektur von Einzel- und bestimmten Mehrfachfehlern | |
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE2442191C2 (de) | Verfahren zur Fehlerortsbestimmung in einem Arbeitsspeicher und Anordnung zur Durchführung des Verfahrens | |
DE3329022C2 (de) | ||
DE2532149A1 (de) | Fehlerkorrekturanordnung | |
DE2256135C3 (de) | Verfahren zum Prüfen von monolithisch integrierten Halbleiterschaltungen | |
DE2556556A1 (de) | Verfahren und anordnung zur speicherung von informationen ueber den ort eines oder mehrerer fehlerhafter bits in einem einzelne fehler korrigierenden halbleiter-hauptspeicher | |
DE2132565B2 (de) | ||
DE2456709C2 (de) | Schaltungsanordnung zur Fehlererkennung und -korrektur | |
DE3128729A1 (de) | Halbleiter-speichersystem | |
DE1284996B (de) | Leseschaltung fuer einen Speicher | |
DE1906940A1 (de) | Speicher mit Redundanz | |
DE2554502C3 (de) | Verfahren und Anordnung zum Adressieren eines Speichers | |
DE2549392C3 (de) | Verfahren zur Erhöhung der Zuverlässigkeit von integrierten Speicherbausteinen und zur Verbesserung der Ausbeute von nach außen hin fehlerfrei erscheinenden Speicherbausteinen bei ihrer Herstellung | |
DE1234054B (de) | Byte-Umsetzer | |
DE2454745A1 (de) | Binaerzaehler mit fehlererkennung und korrektur voruebergehender fehler | |
DE2826454A1 (de) | Faksimilesignal-codiersystem | |
DE3319710A1 (de) | Speichersteueranordnung, insbesondere fuer ein fehlertolerantes fernsprech-vermittlungssystem | |
DE2004934B2 (de) | Speicheranordnung mit schaltungen zur fehlererkennung und fehlerkorrektur | |
DE2134529A1 (de) | Verfahren zur fehlererkennung und -korrektur in aus dem speicher einer programmgesteuerten datenverarbeitungsanlage ausgelesenen informationswoertern | |
EP0453609B1 (de) | Verfahren zum Testen einer kleinsten adressierbaren Einheit eines RAM's auf über einer bestimmten Zahl liegende Bitfehler | |
DE3528902C2 (de) | Durch einen EDC-Code gesichertes Speichersystem | |
DE2742881C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |