DE2132565B2 - - Google Patents
Info
- Publication number
- DE2132565B2 DE2132565B2 DE2132565A DE2132565A DE2132565B2 DE 2132565 B2 DE2132565 B2 DE 2132565B2 DE 2132565 A DE2132565 A DE 2132565A DE 2132565 A DE2132565 A DE 2132565A DE 2132565 B2 DE2132565 B2 DE 2132565B2
- Authority
- DE
- Germany
- Prior art keywords
- bits
- parity
- data
- error
- check
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 claims abstract description 62
- 208000011580 syndromic disease Diseases 0.000 claims abstract description 52
- 238000012937 correction Methods 0.000 claims abstract description 49
- 238000001514 detection method Methods 0.000 claims abstract description 21
- 239000011159 matrix material Substances 0.000 claims description 74
- 238000012360 testing method Methods 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 8
- 238000012546 transfer Methods 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 230000006870 function Effects 0.000 abstract description 6
- 230000007246 mechanism Effects 0.000 abstract description 2
- 238000013519 translation Methods 0.000 abstract description 2
- 230000000644 propagated effect Effects 0.000 abstract 1
- 238000000638 solvent extraction Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 8
- 230000000295 complement effect Effects 0.000 description 7
- 230000015572 biosynthetic process Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 101100116570 Caenorhabditis elegans cup-2 gene Proteins 0.000 description 1
- 101100116572 Drosophila melanogaster Der-1 gene Proteins 0.000 description 1
- 244000228957 Ferula foetida Species 0.000 description 1
- 101150034459 Parpbp gene Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 235000000396 iron Nutrition 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
Description
Die Erfindung betrifft einen Umsetzzer nach dem
Oberbegriff des PAI.
Während vieler Jahre ist in der Computerindustrie
der dreidimensionale Magnetkernspeicher als schneller Arbeitsspeicher verwendet worden. Den Magnetkernspeichern und ihren Herstellungsverfahren ist ein hoher
Grad von Zuverlässigkeit eigen Dies bedeutet, daß es äußerst selten vorkam, daß ein Magnetkernspeicher
nach der Herstellung nicht hundertprozentig benutzbar war. Dies liegt an einer Reihe von Faktoren. Der
wichtigste ist der, daß jede einzelne BitspeicherstHle oder jeder Kern vor dem Einbau in den Speicher
getrennt prüfbar ist.
Daher sind einzelne fehlerhafte Bitsfllen in Magnetkernspeichern ungewöhnlich. Die in ihnen normalerweise auftretenden Fehlerarten beziehen sich auf eine
vollständige Zeile oder Spalte des Speichers aufgrund
von Fehlern in den Treiberschaltungen oder der Verdrahtung.
Seit dem Aufkommen neuerer, äußerst kurze Zugriffszeiten aufweisender Halbleiterspeicher, die
gewöhnlich als integrierte Speicher bezeichnet werden, ist es normalerweise nicht möglich, die einzelnen
Bitspeicherstellen zu prüfen, da gewöhnlich eine ganze Ebene mit Speicherelementen gleichzeitig hergestellt
wird. Aufgrund des Herstellungsprozesses eines derarti- to gen integrierten Halbleiterspeichers kann ein derartiger
Speicher normalerweise nicht eher geprüft werden, als er vollständig hergestellt ist Es ist daher nicht möglich,
einzelne fehlerhafte Bitspeicherelemente durch fehlerfreie zu ersetzen. Es ist daher ersichtlich, daß es
erwünscht ist, in integrierten Halbleiterspeichern einen bestimmten Prozentsatz fehlerhafter Bitspeicherelemente zu tolerieren. Um die Benützung fehlerhafter
Bitspeicherelemente zu verhindern, ist nach dem Stand der Technik ein großer Aufwand an Bauteilen und
Programmierung für die Speicherzuteilung erforderlich.
Zu diesem Verfahren mußte man jedoch im Felle vieler
Fehler in einem solcnen Halbleiterspeicher, in dem ein größerer Teil unbrauchbar ist, greifen. Eine andere
Möglichkeit besteht in der Verwendung fehlerkorrigierender Codes, wie z.B. der Hamming-Codes, wobei
einem Datenwort Redundanzbits beigegeben werden, und durch Kombination der Datenbits mit den
Redundanzbits festgestellt werden kann, ob ein ausgelesenes Datenwort fehlerfrei ist und ob erkannte )o
Fehler aufgrund der Codeeigenschaften korrigiert werden können. Das Codierverfahren nach Hamming
hat in der Nachrichtentechnik vielfache Anwendung gefunden. Auf dem Feld der Datenverarbeitung hat die
Fehlererkennung und -korrektur nur begrenzte Anwen- r> dung gefunden, weil zusätzliche Bitspeicherstellen
erforderlich sind und umfangreiche zusätzliche Verknüpfungsschaltungen, um die Fehlererkennung und
-korrektur durchzuführen.
Es sei bemerkt, daß in einem Datenverarbeitungssystern Paritätsprüfungen erforderlich sind, um die
Fehlerfreiheit der zu den verschiedenen Teilen der Anlage, wie den Registern und Rechenscnaltungen,
übertragenen Daten zu prüfen. Wenn ein Paritätsfehler erkannt wird, wird ein Signal erzeugt und eine neue <r>
Übertragung der Daten gefordert In der Mehrheit aller
Fälle erhält man dadurch die richtige Information. Bei Speichern jedoch, bei denen ein Fehler normalerweise
nicht durch Störimpulse, wie in dem eben genannten Fall, verursacht ist, liefert eine Paritätsprüfung zwar r>"
eine Fehleranzeige, aber da die meisten Fehler durch fehlerhafte Schaltungsteile verursacht werden, gibt es
keine Möglichkeit, mit Hilfe der Paritätsprüfung das fehlerhafte Speicherelement zu lokalisieren. Aus diesem
Grunde muß ein fehlerkorrigierender Code, wie v> beispielsweise ein Hamming-Code benutzt werden,
wenn eine Fehlerkorrektur erfolgen soll. Wie bereits erwähnt, erfordert die Mehrheit der in der Datenverarbeitungsindustrie angewandten FchKsrkorrekturverfahren umfangreiche und teure Verknüpfungsschaltungen.
Außerdem mußten in Jen meisten Fehlererkennungsund -korrekturschaltungen besondere Paritätsgeneratoren zusätzlich zu der Fehlererkennungs- und -korrekturschaltung verwendet werden, um aus einem Speicher
stammende Daten, die zu einer anderen Stelle der ··■ Datenverarbeitungsanlage übertragen werden sollten,
mit einem Paritätsbit zu versehen. Ferner mußte eine Schaltung vorgesehen werden, die die erforderlichen
Pröfbits für jedes in den Speicher einzuschreibende
Worte erzeugte. Daher ist ersichtlich, daß für die Feblererkeunungs- und -korrekturschaltung sowie die
verschiedenen Schaltungen zur Partitätsbiterzeugung und Paritätsprüfung eine große Anzahl logischer
Schaltungen erforderlich war, da bisner die genannten Schaltungen alle als besondere Einheiten ausgeführt
wurden.
Aus den genannten Gründen wurden Fehlererkennungs- und -korrekturschaltungen bisher nur in sehr
teuren und hochgradig zuverlässigen Datenverarbeitungsanlagen eingebaut, bei denen der Benutzer den
notwendigen hohen Preis zu zahlen gewillt war.
Der Erfindung liegt die Aufgabe zugrunde, den für eine Fehlererkennungs- und -korrekturschaltung erforderlichen Aufwand zu verringern. Die genannte
Aufgabe wird durch einen Umsetzer der eingangs genannten Art gelöst, der durch folgende Merkmale
gekennzeichnet ist:
a) ein erstes Register zum wahlweisen Speichern entweder von aus dem Speicher gelesenen Daten-
und Prüfbits oder von in den Speicher einzuschreibenden Daten- und Byteparitätsbits,
b) mehrere erste mehrstufige EXKLUSIV ODER-Schaltungen zur Erzeugung von Ftedundanzbits
(Priilibits bzw. Paritätsbits), deren Eingänge jeweils
über eine Verbindungsmatrix an ausgewählte Stufen des ersten Registers angeschlossen sind,
c) ein zweites Register zur Speicherung der ursprüngliehen Datenbits und der von den ersten mehrstufigen EXKLUSIV ODER-Schaltungen erzeugten
Redundanzbits,
d) mehrere zweite mehrstufige EXKLUSIV ODER-Schaltungen zur Prüfung der Parität der Datenbytes und der zugehörigen Redundanzbits,
e) ein drittes Register zur Speicherung der Ausgangssignale der zweiten mehrstufigen EXKLUSIV
ODER-Schaltungen, dessen Stufen bei erfüllter Paritätsbedingung der Datenbytes umd ihrer Paritätsbits einen vorgegebenen Binärwert speichern,
f) eine Prüfschaltung zur Prüfung der von den zweiten mehrstufigen EXKLUSIV ODER-Schaltungen gelieferten Ergebnisse und eine Anzeigeschaltung zur Anzeige eines Datenbit- oder eines
Prüfbitfehlers, wenn die Fehlerursach ? im Speicher liegt
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird nachfolgend näher
beschrieben. Es zeigt
F i g. 1A und 1B eto Blockschaltbild der vorliegenden
Fehlererkennungs- und Datenumsetzschaltung mit der. wichtigsten Funktionsblocks und dem Datenfluß des
Syslem.»,
F i g. 2A bis 2J ein genaueres Blockschaltbild, das die
wesentlichen Merkmale der erfindungsgemäßen Schaltung zeigt
Fig.3 ein Opcretions-Ablaufdiagramm für einen
Speicher-Schreibzugriff,
Fig.4 den CH^Taktgeber, der im wesentlichen die
Systemoperation bei einem Speicher-5>i:hr>;ibzyklus
steuert,
Fig. 5 ein Operations-Ablaufdiagramm für einen
Speicher-Lesezugriff,
F i g. 6 den C'W-Taktgeber, der das System bei einem
Speicher-Lesezyklus steuert,
EXKLUSIV ODER-Schaltungen mit 19 Eingängen, die
in Fig. 20 dargestellt sind und von denen jede 19
Eingänge aufweist,
Fig. 8 ein genaueres Blockschaltbild des /4-Taktgebers,
der das Übertragen der Daten und Syndrombits durch die Korrekturschaltung steuert,
F i g. 9 eine Paritiits-Prüfmatrix,
Fig. 10 die Paritäts-Prüfmatrix der Fig.9 in ihren
eirzelnen Phasen, die dazu dient, die tatsächliche Verbindung der in Fi g. IA dargestellten Paritätsmatrix
anzugeben,
F i g. 11 ein Blockschaltbild der Syndrom-Erzeugungsschaltung,
die benötigt wird, wenn die Anzahl der Bytes und der Prüfbits verschieden ist.
Der Aufgabenlösung nach der vorliegenden Erfindung liegt allgemein ein System zugrunde, bei dem in
einen und aus einem Hamming-Code zur Einzelfehlerkorrektur- und Doppelfehlererkennung, im folgenden
kurz als EFK/DFE-Hamming-Code bezeichnet, und Byteparitätscode umgesetzt wird und bei den im
Hamming-Code vorliegenden Daten Einzelfehler korrigiert und Doppelfehler erkannt werden. Das System
umfaßt Speichereinrichtungen zur vorübergehenden Speicherung von Daten und Sonderbits, die aus einem
zugehörigen Speicher gelesen oder in diesen geschrieben werden. Die Codeumsetzschaltung ist an besagten
Speicher angeschlossen zur Umsetzung in den EFK/ DFE-Hamming-Code und Byteparitätscode und zur
Erzeugung eines anderen Satzes von Sonderbits und zum Speichern dieser Bits in besagtem Speicher. Im
vorliegenden Ausführungsbeispiel verfügt der Speicher darstellungsgemäß über zwei Sätze von Registern. Mit
entsprechenden Taktgebereinrichtungen und Torschaltungen kommt man jedoch mit einem Satz aus.
Zusätzliche Einrichtungen zur Paritätserzeugung aus den Originaldatenbits und einem ausgewählten Satz von
Sonderbits sind vorgesehen. Die Ergebnisse der genannten Einrichtungen werden einem Speicher
zugeführt. Schließlich spricht eine Erkennungsschaltung auf besagte Erzeugungseinrichtung an und zeigt einen
Fehler an, wenn eine vorgegebene Paritätsbedingung bei den Datenbits und den ausgewählten Sonderbits
nicht erfüllt ist.
Die Ausgangssignale besagter Erzeugungseinrichtung umfassen eine Gruppe zusätzlicher Bits, die in
einem Speicher-Schreibzyklus einfache Paritätsanzeigen
sind und im FaIi eines Speicher-Lesezyklus Syndrombits für die nachfolgende Fehlererkennung und
-Korrektur. Eine zusätzliche Schaltung ist vorgesehen, um zwischen einem Prüfbitfehler, einem einzelnen
Datenbitfehler, einem doppelten Datenbitfehler oder einem Paritätsfehler in Abhängigkeit vom jeweils
ausgeführten Speicherzyklus zu unterscheiden.
Das wichtige Merkmal der vorliegenden Erfindung ist das Vorsehen der Codeumsetzschaltang, die mit einer
einzigartigen Paritäts-Prüfmatrix und einem entsprechenden Hamming-Code versehen ist, wodurch der
Codeumsetzschaltung die Erzeugung von Prüfbits aus Paritätsbits und Datenbits und von Syndrom- und
Paritätsbits aus Prüfbits und Datenbits ermöglicht wird Außerdem gestattet der Aufbau des vorliegenden
Systems die Erzeugung einer AnzaH dieser Bits im wesentlichen auf parallelem Wege und spart dadurch
beträchtliche Zeit und Ausführungsschritte, während die Doppelfunktionsschaltung offensichtlich eine große
Menge an Bauteilen einspart, da der überwiegende Teil der Logikschaltungen sowohl in der Übertragungsrichtung
von der Zentraleinheit ZE(Fig. 1) zum Speicher.
als auch vom Speicher zur Zentraleinheit verwende!
wird.
Die folgende allgemeine Beschreibung der Theorie der Hamming-Codes und dann die Weiterführung dieser
Theorie zur Konstruktion einer Doppelfunktions-Codeumsetzschaltung
zeigt klar die Grundprinzipien der vorliegenden Erfindung. Anschließend wird der allgemeine
technische Aufbau des Ausführungsbeispieles im Zusammenhang mit der Fig. 1 in den Fig. 3 bis 8
in erklärt. Die Erklärung der Arbeitsweise des in den
Fig. 2A bis 2J gezeigten Ausführungsbeispieles erläutert
die genaue Arbeitsweise des vorliegenden Systems beim Lesen und Schreiben des Speichers und beschreibt
die Art, in welcher die Korrektur durch eine typische
ι ί Hamming-Code-Korrekturschaltung ausgeführt wird.
Fig. 1 ist ein allgemeines Blockschaltbild des vorliegenden Systems, welches dessen Hauptfunktionseinheiten
zusammen mit dem allgemeinen Datenfluß zeigt. Die aus den Fig. IA und IB zusammengesetzte
_'o Hgur zeigt dall Daten aus dem Speicher über das
Register MR dem Kabel 116 zugeführt werden und sowohl die acht Datenbytes als auch die acht Prüfbits
des EFK/DFE-Hamming-Codes umfassen. Das Register MR kann auch von der Zentraleinheit, im folgenden
2> kurz als ZE bezeichnet, geladen werden, enthält in
diesem Fall jedoch acht Datenbytes und acht Byte-Paritätsbits. Kabel 116 wird für einen Lesezugriff und Kabel
118 für einen Schreibzugriff zum Speicher verwendet. Die aclu Datenbytes aus je acht Bits zuzüglich der acht
in Prüfbits oder Paritätsbits sind nur für das Ausführungsbetspiel
gewählt. Abhängig von Größe und Anzahl der Datenbytes ist eine entsprechende Anzahl von Prüfbits
vorzusehen. Im Falle eines Lesezugriffs werden
bestimmte ausgewählte Datenbits und Prüfbits der
π Implementierung einer Paritäts-Prüfmatrix, nämlich der Verbindungsmatrix zugeführt. Im Falle eines Schreibzugriffes
werden dieselben ausgewählten Datenbits und das Paritätsbit auf der Verbindungsmatrix zugeführt.
Die Ausgänge der Verbindungsmatrix führen über die
4i) EXKLUSIV ODER-Schaltungen zum Kabel 120,
welches dann über die Torschaltung 124 an das Register MDR führt. Die Ausgangssignale auf dem Kabel 120
umfassen acht neue Bits und die Datenbits werden über das Kabel 122 zum Register MDR übertragen. Wie
3 bereits oben im Zusammenhang mit dem Lesezugriff gesagt wurde, setzen die Verbindungsmatrix und die
EXKLUSIV ODER-Schaltungen Prüfbits in Paritätsbits um. während im Falle eines Schreibzugriffes dieselbe
Verbindungsmatrix und die EXKLUSIV ODER-Schaltungen die Paritätsbits in Prüfbits umsetzen. Bei einem
Schreibzyklus wird das Register MDR direkt von der ZE geladen und in diesem Fall besteht das in das
Register MDR geladene Wort aus den acht Datenbytes zuzüglich der acht Paritätsbits. Diese Information wird
über das Kabel 128 geführt Bei einem Schreibzugriff werden das Register MR und das Register MDR direkt
von der ZE über die Kabel 118 bzw. 128 geladen, und
zwar weil zuerst einmal die von der ZE kommenden
Daten auf richtige Parität überprüft werden müssen und dann die acht Paritätsbits in acht Prüfbits umgewandelt
werden müssen, um das Wort im richtigen EFK/DFE-Hamming-Code zu speichern. Wie bereits gesagt
erfolgt dies durch Zuführen des Inhaltes des Registers MR über die Verbindungsmatrix zum Register MDR,
wo das Wort über das Kabel 130 für den Speicher im Hamming-Code zur Verfugung steht
In F i g. 1 ist ein mit Fehlererkennungsschaltung bezeichneter Block gezeigt der an den Ausgang des
Registers MDR angeschlossen ist. Dieser Block enthält im wesentlichen eine Doppelfunktions EXKLUSIV
ODER-Schaltung, mit welcher einmal die Paritätsprüfung bei einem Schreibzugriff ausgeführt wird und die
/um anderen schließlich die paritätscodierten Daten, die ί im Register MDR erscheinen, bei einem Lesezugriff in
einen Satz von Syndrombits umsetzt, mit denen die Art
des evtl. vorhandenen Fehlers signalisiert und eine Einzti.ehlerkorrektur vorgenommen wird.
Wie bereits gesagt wurde, muß der Ausgang der in
Fehlererkennungsschaltung bei der Paritätsprüfung die Byteparität in jedem Byteabschnitt des Registers MDR
prüfen. Da mit ungerader Parität gearbeitet wird, kann
ein einfaches UND-Glied diese Prüfung durchführen. Bei einem Lesezugriff ist die Erkennung insofern etwas r.
komplizierter, als die Schaltung zwischen einem Prüfbitfehler unterscheiden muB, dann werden die
Daten als richtig erkannt, einem Einzel-Datenbitfehler, dann muß ein Korrekturalgorithmus eingeleitet werden
und einem Doppelfehler, in weichem FaIi der Betrieb des Systems unterbrochen werden muß, und diese
Tatsache bekannt gemacht werden muß. Schließlich muß die Schaltung noch feststellen können, daß kein
Fehler erkannt wurde und daß die gegenwärtig im Register MDR stehenden Daten an die ZE übertragen
werden können.
Der mit Einzelfehler-Erkennungsschaltung bezeichnete Block benutzt die von der Fehlererkennungsschaltung auf im wesentlichen konventineller Weise, die
nachfolgend im Zusammenhang mit F i g. 2 näher in beschrieben wird, erzeugten Syndrombits schließlich
zur Korrektur.
Aus der obigen allgemeinen Beschreibung der F i g. 1 ist zu ersehen, daß bei Lese- und Schreibzugriffen zum
Speicher im wesentlichen dieselbe Schaltung verwendet j?
wird für Codeübersetzung, Paritätsprüfung, Syndrombiterzeugung usw, was im Gegensatz zu bisher
gebräuchlichen Anlagen und Verfahren große Ersparnisse bei der Schaltung mit sich bringt.
Im folgenden wird zuerst ein Schreibzugriff im Zusammenhang mit dem Ablaufdiagramm nach F i g. 3
und der als Taktgeber dienenden monostabilen Kippschaltung nach Fig.4 beschrieben. Die in Fig.4
gezeigte Schaltung dient nur der Illustration und stellt eine mögliche Anordnung zur Taktgabe für das
vorliegende System dar. Statt dessen kann auch jeder geeignete andere Taktgeber verwendet werden. Während eines Schreibzugriffes wird ein Impuls auf die
Startleitung gegeben, der die Ablauffolge startet, Gemäß der Darstellung im Ablaufdiagramm in F i g. 3
veranlaßt der Startimpuls die Eingabe in das Register S. Über jedem Block in Fig.3 ist angegeben, welcher
Schritt des CW-Taktgebers den jeweiligen Operationsschritt ausführt In Fig.4 weist eine Anzahl von
Eingängen Bezugszahlen auf, die die Quelle bestimmter Einschaltimpulse bezeichnen. Diese Bezugszahlen sind
ebenfalls in den Fig.2A bis 2J verwendet worden. Zu
Beginn eines Schreibzugriffs werden die beiden Register MR und MDR mit Daten und Paritätsbits von
der Z/fgeladen. Die Eingabe ins Register Sbewirkt eine
Paritätsprüfung der gegenwärtig im Register MDR stehenden Daten durch. Der nächste durch CW-2
veranlaßte Schritt wird auf einen Fehler geprüft Lautet die Antwort nein, verzweigt das Programm zum Schritt
ClW und erzeugt Prüfbits. Dadurch werden die im
Register MR gespeicherten Daten und Paritätsbits der Verbindungsmatrix und den EXKLUSIV ODER-Schaltungep zugeleitet und automatisch Prüfbits erzeugt und
die Originaldatenbits zuzüglich der neu erzeugten Prüfbits in das Register MDR übertragen. Im Schritt
CW-5 werden gültige Daten zum Speicher übertragen und das Programm verzweigt dann zum Ende. Wenn
nach dem Schritt CW-2 ein Fehler angezeigt wurde, hätte der närhste Schritt den Taktschritt CW-3
eingeleitet und eine Unterbrechung hervorgerufen. Dabei handelt es sich um eine konventionelle Unterbrechung, die zu einer erneuten Übertragung oder einer
anderen Fehlersuch- oder Korrekturroutine im System führt. Da es sich um einen Paritätsfehler handelt, kann er
nicht korrigiert werden und die Daten können in der offensichtlichen falschen Form nicht im Speicher
gespeichert werden. Damit sind die Grundschritte eines Schreibzugriffs beschrieben.
Im Zusammenhang mit den F i g. 5 und 6 wird jetzt ein
Lesezugriff beschrieben. Im Ablaufdiagramm der F i g. 5 sind die einzelnen Taktschritte des in F i g. 6 gezeigten
Cfl-Taktgebers, den verschiedenen einzelnen Operationen zugeordnet, die in F i g. 5 aufgezeichnet sind. Auch
hier ist der als Ausfuhrungsbeispiel gewählte Taktgeber nach Fig.6 insofern nicht der allein mögliche, als die
Taktfolgen durch andere Schaltungen als die dargestellten monostabilen Kippschaltungen erzeugt werden
können. Die Bezugszahlen bezeichnen das Einschalten der verschiedenen monostabilen Kippstufen und sind
dieselben wie in den Fig.2A bis 2J. Die Startleitung
oben in F i g. 5 führt zum ersten Block »Eingabe in MDR und Register S«. Da es sich um einen Speicherlesezyklus
handelt, wird das Register MDR mit Datenbits und von der Verbindungsmatrix erzeugten Paritätsbits geladen.
Anschließend wird der Inhalt des Registers MDR den EXKLUSIV ODER-Schaltungen zugleitet, welche diese
Information gemäß obiger Erklärung in Syndrombits umwandeln und sie im ^Register speichern.
Im Schritt CR-2 wird die Frage gestellt »Liegt ein
Fehler vor?« und durch Prüfen des Inhaltes des S-Registers beantwortet, wie vorher beschrieben.
Bekanntlich können dabei vier Fälle auftreten. Im ersten liegt kein Fehler vor, im zweiten Fall ein Prüfbitfehler,
im dritten ein einzelener Datenfehler und im vierten Fall ein Doppelfehler. Liegt kein Fehler vor, verzweigt das
System zum Schritt CRA und liefert ein Signal »gültige Daten zur ZE senden« und beendet diese Taktroutine.
Wenn ein Fehler vorliegt, verzweigt das System zum Taktschritt CR-3 und stellt mit einer Prüfung fest
»Handelt es sich um einen Einzelfehler?«. Wird diese Frage verneint, liegt ein Doppelfehler vor und das
System verzweigt zum Schritt CR-S und es wird eine Unterbrechung erzeugt, womit diese Taktfolge beendet
ist. Handelt es sich um einen Einzelfehler, verzweigt das System zum Schritt CR-6 und stellt mit einer Prüfung
fest »Liegt ein Prüfbitfehler vor?«. Wenn das der Fall ist, verzweigt das System zum Schritt CR-I und veranlaßt
eine Korrektur der vorher erzeugten Paritätsbits. Liegt der Fehler nicht im Prüfbit, verzweigt das System zu
dem mit »Byte korrigieren« bezeichneten Schritt Die Leitung 404, welche zur Taktgeberstufe A-X führt, leitet
den Korrekturschritt für ein einzelnes Datenbit ein. Nachdem Paritätsbit und Datenbit korrigiert sind,
verzweigt das System dann zum Taktschritt CRA zurück, in welchem die jetzt gültigen Daten an die ZE
oder eine andere Stelle im System übertragen werden und danach ist der Lesezugriff beendet Der gerade
erwähnte Λ-Taktgeber ist in F i g. 8 gezeigt und ist ein sehr einfacher dreistufiger Taktgeber. Die Ausgangssignaie der drei Stufen sind die einzigen, die benötigt
werden, wie aus der nachfolgenden Beschreibung der
Fig. 2A bis 2J hervorgeht, da bei einer notwendigen
Korrektur das ganze Datenwort zusammen mit den zugehörigen Syndrombits parallel in die Korrekturschaltung
gelesen und parallel wieder in das Register MR zurückübertragen und von dort dem Register MDR
mit korrigierten Paritätsbits zugeführt wird.
Fig. 7 ist ein genaueres Blockschaltbild eines der in
den Fig.2D u.d IA gezeigten EXKLUSIV ODER-Schaltungen,
wie im einzelnen im Zusammenhang mit Fig. 2A bis 2J erklärt wurde, verfügt jede dieser
EXKLUSIV ODER-Schaltungen über 19 Eingänge und einen Ausgang. Die Arbeitsweise einer EXKLUSIV
ODER-Schaltung wird als bekannt vorausgesetzt und bewirkt, daß bei einer ungeraden Zahl von »!«-Signalen
auf den Eingangsleitungen diese Schaltung eine r, ungerade Parität oder ein »!«-Ausgangssignal auf der
Ausgangsleitung erzeugt.
F i g. 8 zeigt den 4-Taktgeber, der die im Prinzip in
Fig.21 gezeigte Korrekturschaltung steuert Dieser
Taktgeber ist im wesentlichen genauso aufgebaut wie >n der C/f-Taktgeber und der CW-Taktgeber. die aus
mehreren (3) monostabilen Kippschaltungen bestehen, deren Einschaltung einen bestimmten Taktimpuls
erzeugt und deren Rückkehr in den stabilen Zustand entweder zum Ende des Schrittes führt oder die nächste 2
> monostabile Kippschaltung einschaltet, abhängig von der jeweils ablaufenden Routine. Die Arbeitsweise
dieses Taktgebers und der Korrekturschaltung wird im einzelnen im Zusammenhang mit den Fig.2A bis 2J
beschrieben. in
Die Arbeitsweise des Umsetzers (so genannt, weil er
Prüfbits aus Paritätsbits oder umgekehrt Paritätsbits aus Prüfbits erzeugen kann in Abhängigkeit davon, ob aus
dem Speicher gelesen oder in ihn geschrieben wird, wobei die Datenbits auch an der Umsetzung teilneh- r>
men) beruht auf der Paritäts-Prüfmatrix. Die Paritäts-Priifmatrix ist aus der Literatur bekannt
Zuerst wird ein einfaches Beispiel einer üblichen Verwendung einer Paritäts-Prüfmatrix behandelt, wie es
sich bei der Anwendung in einem elementaren Nachrichtensystem Findet Es wird angenommen, daß
das Nachrichtensystem aus einem Sender binärer Signale, einem Empfänger für diese Signale und einen
mit dem Buchstaben »K« bezeichneten Kanal besteht Der Kanal ist zwangsläufig wesentlich unzuverlässiger 4->
als der Sender oder der Empfänger. Somit unterliegt der Kanal Störungen, die ein gesendetes Bit komplementieren, d. h. eine gesendete I wirJ als 0 empfangen oder
eine gesendete Oiis I.
Diese Situation ist direkt analog der Situation eines Speichers, in welchem die Speicher-Schreibschaltung
das Analogon zum Sender und die Speicher-Leseschaltung das Analogon zum Empfänger ist.
In einer solchen Situation wird der EFK/DFE-Code wie folgt verwendet. Ein Wort (ein Satz Bits) wird
codiert, gesendet, geprüft mit nachfolgender Korrektur oder Erkennung eines Fehlers innerhalb der Möglichkeiten
des EFK/DFE-Codes und erscheint ;n decodierter
Form am Ausgang des Empfängers. De' Code wird durch die folgende Paritäts-Prüfmatrix H charakterisiert:
0 I I I I U 0 0
H =
ΙΟΙ I 0 I 0 0
I I 0 I 0 0 I 0
I I I 0 0 0 0 I
I I 0 I 0 0 I 0
I I I 0 0 0 0 I
In dieser Matrix entspricht jede Spalte den Datenbits d\, di, di und dt und den Prüfbit! c\, C2.C3.CA. Das Wort
»entspricht« ist in diesem Zusammenhang so zu verstehen, daß die Entsprechung darin besteht, daß eine
»1« in einer gegebenen Zeile dem Erscheinen des Daten- oder Prüfbits einer Spalte in der Paritätsgleichung für diese Zeile erscheint Dadurch wird gezeigt,
daß ein Fehler lokalisiert (und korrigiert) werden kann, wenn wahlweise die Parität verschiedener Untergruppen der Datenbits festgestellt wird und wenn man
beobachtet, welche dieser Paritätsbits den entgegengesetzten Wert zu den Werten aufweisen, die sie bei
Fehlerfreiheit haben. Das ist deshalb möglich, weil die Muster dieser Paritätsbits für den richtigen und falschen
Wert eines jeden Datenbits bekannt sind.
Die Frage ist jetzt, wie P'aritäts-Prüfmatrix die
Paritätsbits bestimmt und eine Fehlerlokalisierung ermöglicht Die Beantwortung dieser Frage muß einer
anderen »Entsprechung« entnommen werden, nämlich der der Paritätsbits oder Syndrome, wie sie auch
genannt werden, zu den einzelnen Zeilen der Paritäts-Prüfmatrix. Zur Beantwortung dieser Frage sollen jetzt
die durch die Paritäts-Prüfmatrix vorgeschriebenen Paritätsgleichungen aufgezeichnet werden.
I.Zeile: 0 1 I 1 I 0 0 0
i 1 I 1 I 1 I I
1. Gleichung: 0 · dt © I - d2 © I - d3 © 1 · rf4 @ I · c, Θ0 · C2 ©0 · c3 ©0 · c4 = S1
oder
d2 ®d3 ©dl» θc, = Si, worin S1 dasSyndrom für die !.Zeile ist.
Das Prüfbit c\ ist so gewählt, daß Si = 1 für den bo und
fehlerfreien Fall bei ungerader Parität gilt Die anderen
drei Gleichungen sind folgende:
2. Zeile- dt © d3 © dA ® c2 = S2
3. Zeile: «f, ©4 ©d* @c3 = S3
4. Zeile: dx @d2 ®d3 ©c4 = S4
= Si = St = I bezeichnet die fehlerfreie
Bedingung für ungerade Parität Somit IaBt sich die
Antwort auf die Frage, wo det Fehler sich befindet, jetzt durch die obigen Gleichungen ausdrücken. Aus diesen
Gleichungen ist zu ersehen, daß d\ nur in den Paritätsgleichungen für die Zeilen 2, 3 und 4 erscheint
Somit ist d\ das einzige Bit, welches bei falschem
Empfang nach der Decodierung die Syndrome entsprechend folgender Tabelle verändert
2t 32 565
Il
richtig empfangen
.7, .V2 S, S. I I 1 I
(Z1 fehlerhalt empfangen 10 0 0
Es ist zu beachten, daß sich S\ nicht verändert, da es in seiner Bildung von c/i unabhängig ist, wie aus der obigen
Gleichung für die Zeile I zu ersehen ist.
Für ein Beispiel wird jetzt angenommen, daß auf der Senderseite die Datenbits d\ - I, d2 = 0. dj = 0 und d<
— 1 vorliegen. Die aus den Bits du cfe, c/j, cA bestehende
Nachricht hat also folgendes Aussehen: I 0 0 1. Es ist somit:
so daß für c\ zur Erfüllung dieser Gleichung der Wert 0
angenommen wird.
Sender &
Codierung S, = I -t c, θ I ©0 © I = >
c, = I
Sj = 1 =- <·., © I θ 0 Φ I =
> fj = I S4 = I = c4 © I © 0 φ 0 - >
C4 = 0
Aus der Nachricht wird
</, d2 ι/, (U <·| C2 «'.ι <4
I 0 0 I 0 I 10
Wenn jetzt angenommen wird, da3 der Kanal einer Fehlerbedingung unterliegt, so daß die Störung
ausschließlich d\ invertiert, führt das zu folgender
Daten- und Prüfbitreihe.
λ. λ ,ι .ι ..
-I -i "J "4 1I ·-! "-J l4
OCOIO
S1 = c, Φ d2 φ (/., © ί/4 = I
Empfang S2 = C1 ® ί/, φ d3 © i/4 =- 0
& Decodierung S, = c, Φ rf, ©</2 ©^4 = 0 wie oben vorhergesagt
S4 - C4 © J1 Φ dz φ ί/, = 0
Dieses eindeutige Syndrommuster läßt sich nur unter der Bedingung erzielen, daß d\ fehlerhaft ist. Die
Korrektur ist trivial. Sie besteht darin, daß das Bit d\ lediglich logisch invertiert wird (weil bekannt ist, daß die richtige Version von d\ nur das Gegenteil des jetzigen
Wertes sein kann). Die Schaltung zur Korrektur von d\ ist folgende:
L.
OI Ji J3 Λ4
I I I I
UND
I i
EO
du, ist das korrigierte Bit
Folgende klare Tatsache läßt sich jetzt feststellen: Bei ungerader Parität ist das Syndrommuster, welches d\
korrigiert (invertiert), einfach das Komplement (die logische Verneinung) d«r Spalte in der Paritäts-Prüfmatrix, welche d, entspricht (die erste Spalte). Und
grundsätzlich ist also das Syndrommuster, welches du di,
di oder d* korrigiert das Komplement der Spalte 1,2,3
oder 4. Die Korrekturen für die Prüfbits ei, C2, a oder C1
finden sich einfach in den Spalten 5, 6, 7 oder 8 der
Paritäts-Prüfmatrix, wenn eine solche Korrektur gerechtfertigt ist Bei gerader Parität erscheint das
Syndrom nicht als Komplement (als Komplement), wenn die Matrixeintragung eine 1 (0) ist
Ein Doppelfehler wird durch ei« Syndrommuster gekennzeichnet, welches sich nicht als Spalte in der
Paritäts-Prüfmatrix und auch nicht als Muster für »kein Fehler« findet Somit sind die Muster, welche einen
Doppelfehler anzeigen, folgende:
(S1, S2, S3, S4) = (0,0,0,0), (0,0, 1, I), (0, 1,0, H
(0,1,1,0), (1,0,0,1), (1,0,1,0), (1,1,0,0).
welchen zwei Syndrome sich gegenüber ihrem erwarte- und cj? Somit kann bei Empfang eines Musters wie des
tem Wert verändert haben. Es ist jedoch nicht möglich, oben gezeigten nur ein Doppelfehler erkannt werden,
die Schuldigen anzugeben: Wenn (0,0,1,1) empfangen außer der Abgabe eines Alarmsignals können jedoch
keine weiteren Schritte unternommen werden.
Die Paritäts-Prüfmatrix für die Minimalschaltung bringt eine subtilere Beziehung zwischen der Parität
eines gewählten Datenbyte und der Parität über einem ausgewählten Teilsatz von Datenbits und genau einem
Prüfbit mit sich, welches eindeutig zu dem gewählten Datenbyte gehört. Die Untersuchung der in F i g. 9 und
10 gezeigten Paritäts-Prüfmatrix legt eine wichtige Beziehung klar.
Bei der verwendeten Codierung und Decodierung (die durch die Paritäts-Prüfmatrix spezifiziert ist)
erscheint ein Satz von Einsen in jeder Zeile, betrachtet als eine Untergruppe aller Einsen in dieser Zeile, in der
Weise, daß die Parität über allen Bits eines vollständigen
Bytes (in dem Datenwort) in der Bildung der Syndrome eingeschlossen ist, die dieser Zeile entsprechen, wenn
die normale Schaltung zur Implementierung der Parität der Zeile τα verwenden war. Eine Vorschrift der für eine
grobe Auslegung des vorliegenden Umsetzers zu Beginn benutzten Technologie besagte jedoch, daß ein
Bytegrößenregister automatisch die Byteparität für jede in dieses Register geladene information liefert Für den
vorliegenden Fall wurde das nicht angenommen, es erklärt jedoch teilweise, warum es möglich ist, die
Paritätserzeugung als Teil des Decodierprozesses in diesen einzuschließen und warum dieselbe Schaltung für
Lese- und Schreibprozesses verwendet werden kann. Die hier angegebene Rotations-Paritäts-Prüfmatrix
wird grundsätzlich abgeleitet durch Angabe von Spalten mit nur einer 1 als Prüfbitspalten und unter Verwendung
von acht Spalten mit drei, fünf usw. Einsen, für den Teil
der zum ersten Byte gehörenden Paritäts-Prüfmatrix und anschließende vertikale Drehung in aufsteigender
Reihenfolge für jedes der sieben aufeinanderfolgenden Bytes. Die später zu gebende Beschreibung der
Paritäts-Prüfmatrix zeigt, warum diese Rotationseigenschaft nützlich, aber nicht notwendig ist für den
allgemeinen Fall der Bildung der Paritäts-Prüfmatrix. Es muß besonders darauf geachtet werden, daß man eine
Zeile aus lauter Einsen für das erste Byte vor den sieben Drehungen erhält und es muß insbesondere sichergestellt werden, daß kein* zwei Spalten ein identisches
Muster aus Einsen und Nullen haben. Damit sind die Grundlagen für die Bildung der Rotations-Paritäts-Prüfmatrix erklärt. Normale Korrektur kann durch Interpretation dieser Rotationsraatrix als übliche Paritäts-Prüfmatrix erfolgen.
Anschließend wird die Implementierung und Anwendung der Rotationsparitätscodes <n einem Speichenimsetzer beschrieben, wie er hier offenbart wird. Zuerst
wird der Leseprozeß betrachtet Die Grundschritte sind folgende:
1. Unter Verwendung der Paritäts- Prüf matrix sowie der Daten und Prüfbits ist ein -Paritatsbit (ür jedes
Byte zu bilden.
2. Datenbyte und Paritätsbit sind au» dem Register MR in das Register MDK für jedes Byte des Wortes
zu laden.
3. Syndrome sind aufgrund der Prüfung der Byteparität und ihres Paritätsbits (in Schritt 1 gebildet) für
jedes Datenbyte zu bilden.
4. Es ist festzustellen, ob eine Fehlerbedingung in den
ausgelesenen Daten vorliegt. Wenn 'die Daten keinen Fehler enthalten, ist das Wort an die ZE
weiterzuleiten; sonst ist jeder Einzelfehler zu korrigieren oder der ZE das Vorliegen von
Doppelfehlern anzuzeigen.
Jeder der vier obengenannten Grundschritte wird anschließend genauer erklärt Zuerst wird das Paritätsbit für jedes Byte erzeugt, indem man die Parität eines
ausgewählten Satzes von Datenbits zuzüglich genau
eines Prüfbits bestimmt Die erste Zeile der Rotationsprüfmatrix in Fig. 10 enthält acht Einsen in einer Zeile
in den den Bits d\, di-.-<k entsprechenden Spalten. In
der Spalte (erste Zeile) unter ο (Spalte 65 in einer Rotations-Paritäts-Prüfmatrix mit acht Bytes und acht
ίο Bits pro Byte) steht eine einzige Eins. Eine Gruppe von
Einsen entsprechend anderen Datenbits (weder für c\
noch Datenbits im ersten Byte) ist ebenfalls vorhanden und hiermit als Paritätsuntergruppe der ersten Zeile
definiert Ähnliche Erläuterungen können über den
Aufbau einer jeden derartigen Zeile einer Rotations-Paritäts-Prüfmatrix gemacht werden. Es bleibt jedoch
noch zu zeigen, wie das Paritätsbit zu erzeugen ist Daher werden die folgenden Veränderlichen definiert:
2O-Vj- die Parität der Paritätsuntergruppc der ersten
Zeile,
χι — die Parität des ersten Bytes,
Pi — das Paritätsbit zur Aufrechterhaltung der ungeraden Parität für das erste Byte.
Es ist der hier getroffene Unterschied zwischen der Parität eines Byte und dem Paritätsbit für dasselbe Byte
zu beachten. Wenn die Parität (die Anzahl von Einsen) für ein Byte gerade ist (eine gerade Zahl von Einsen
jo unter den Bits des Datenbytes), ist das Paritätsbit eine 1,
wenn für die Fehlerkorrektur eine ungerade Parität gefordert ist Die folgenden Gleichungen leiten sich aus
obigen Betrachtungen für die Verwendung der ungeraden Parität in einer Rotations-Paritäts-Prüfmatrix her.
χ, ©>·, θ cx - I,
λ, θρ, = I
Durch Addition dieser beiden Gleichungen zueinander (Addition Modulo 2) ergibt sich die Summe
X1 © >·, © c, © x, © p, = I ® I =0
und
.χ, ©y, ®c, Θ.Χ, ©p, = χ, φχ, ®(>ί ©c,) ©ρ,
= Pt Θ0ί Θ C1) = 0.
Dann ist, wenn y, ®c, auf beiden Seiten der Gleichung addiert wird:
p{
= y. ®<Ί
μ Paritätsbit fur das erste Datenbyte aus der Parität der
zu erzeugen is( (und daß dazu flicht die Bifs des efslen
Datenbyt'iS herangezogen werden müssen).
hj Hing werden direkt in die ßyieparitätsstellen des
Wenn die Paritätsbits einmal aus y\ © c\ erzeugt und
gespeichert sind, werden die acht Datenbits eines jeden Bytes (mit der Parität x\) und das zugehörige Paritätsbit
als Eingangssignal für eine Paritäts- (oder EXKLUSIV
ODER-]Schaltung benutzt Da y\ © C\ = p\ und x\ ®p\
= 1 sind, ist das Ausgangssignal 51 dieser Parität-Schaltung eine 1, wenn kein Fehler im Byte vorliegt Das
Erzeugen eines Satzes von Syndrambits geschieht in folgender Weise; Für das Ausführungsbeispiel ergibt
sich ein Syndrom aus jedem Byte und seinem zughörigen Paritätsbit Wenn jedoch im ersten Byte ein
Fehler Hegt ist X\ ® p\ = 0 = S\ und eine
Fehlerbedingung wird angezeigt Damit ist Schritt 3 abgeschlossen und es folgt Schritt 4. Solange kein Fehler
vorliegt ist 5i = 5? = ... 5g = 1 (für ungerade Parität)
und ein mit KF bezeichnetes Signal kann gebildet werden als KF = S1 - S2 - S, ... · Sj. Wenn KF = 1
ist enthält das Datenwort keinen Fehler. Somit braucht die normale Ausgabe des gegenwärtig im MDR
gespeicherten Wortes zur ZE nicht gestört zu werden. Wenn jedoch KF = 0 ist muß die Übertragung des
Wortes ausgesetzt werden, die Fehlerart bestimmt werden — Einzel- oder Doppelfehler — und entsprechende Schritte unternommen werden. Ein Einzelfehler
wird aus der Kenntnis erzeugt daß KF Φ 1 ist weil KF
= 1 das Vorliegen einer Fehlerbedingung im Datenwort
anzeigt Der Ausdruck Fehlerbedingung sagt jedoch
nicht, ob es sich um einen Einzel- oder einen Doppelfehler handelt Die Klassifizierung der Fehlerbedingung erfordert die Ausnutzung einer Eigenschaft der
Paritäts-PrOfmatrix, Wenn ein einzelner Datenfehler vorliegt, ändert sich eine ungerade Zahl von Syndromen. Wenn sich nur ein Syndrom ändert liegt der Fehler
in einem Prüfbit Bei diesem Umsetzer brauchen Fehler im Prüfbit nicht berüchtigt zu werden, das durch die
ίο Verwendung des fehlerhaften Prüfbits erzeugte Paritätsbit muß jedoch auf seinen richtigen Wert hin
invertiert werden. Somit Hegt die Notwendigkeit für diese Korrektur vor und sie wird bei allen Paritätsbits im
Befarfsfall durchgeführt indem man sie mit dem
is Komplement der Syndrome antivalent verknüpft Eine
besondere Schaltung zeigt den Bedarf für diese Korrektur an.
Wenn z.B.die acht Paritätsbitsp\,pi,...p»gegeben
sind als pi = \,pi = 0,P3 = 0,P4 = l.ps = l.ps = 0,pj =
μ l.pg = 0 und die Syndrome als S\ = 1,S2 = 0,S3 = S1 =
S5 = S6 = Sj = St=X, bedeutet das, daß das zweite
Paritätsbit falsch ist weil S2 = 0 ist Zur Korrektur der
Paritäten werden diese_dann_ersetzt durch p@S, wobei
P = fpi.p2 ···/*) und S"= (Sx, S2,... 5) ist Für dieses
obige Beispiel gilt dann
ρ @S = (1 ®0, 0 θ 1,0 Θ0, 1 Θ0, 1 ©0.0 Θ0. 1 Θ0, 0 ®0) = (1, 1,0.1, 1,0,1,0)
und das ist dann die ursprüngliche Paritätsbitgruppe mit
Ausnahme des zweiten Bit, welches aus dem oben gegebenen Wert p? durch Invertieren gewonnen wurde.
Im vorliegenden Ausführungsbeispiel ist aus_F_i g. 2 J zu
ersetzen, daß die Gruppe S über die Kabel 100,102,... 114 dem Register AiDR zugeleitet wird.
Für jeden anderen Daten-Einzelfehler ändert sich eine ungerade Anzahl von Syndromen, die größer als 1
ist (in jeder Spalte der Paritäts-Prüfmatrix steht eine
ungerade Anzahl von Einsen). Somit kann ein Einzelfehlersignal gebildet werden, wenn:
1. das Fehlersignal eine I ist (ATF*- I),
2. die Parität der Syndrome sich ändert.
Für den zweiten Fall ist für acht Syndrome (acht Bytes) die Parität der Syndrome normal, bei Fehlerfreiheil ist sie gerade, d. h.. acht Syndrome sind alle
identisch 1. Wenn sich jedoch eine ungerade Zahl ändert, ändert sich die Parität auch auf ungerade Parität.
Somit gilt für das Einzelfehlersignal EF
EF = KF(S, if)S2®...® S,).
Wenn EF - 1 ist, liegt ein Einzelfehler in dem aus dem Speichger gelesenen Datenwort vor. Wenn ein Fehlersignal (KT - 1) vorliegt und es sich nicht um ein
Einzelfehlersignal (EF = 1) handelt, ist es ein Doppelfehler, DE = KF λ EF = I und ein Alarmsignal
kann an die Zugegeben werden.
Wenn die Datenbits im Register MDR (Einzeldatenfehler) korrigiert werden können und müssen, werden
die Datenbits der Korrekturschaltung zugeleitet beim Taktimpuls A-I und über das Register MR und die
Knrrcktiirmatnx liem ^eaisiw Muff hr\ den "T.-. -.11r;·
pulsen Λ-2 und den 1 ,iktimpnUen A-\ /uii'-leitei. v. ir
spill er noch erkliiri wird. [);is I i.itenwn: t V .ι;, π d;inn um I
iillcn angefiigien l'intütsbits der // /utrctiinrl '·'. erden.
/:\ diesem /eitp· Vi-: M n.iüi'iich ''δ? ■ "lh·:! erkliiMi·
r 'U-(Jk(I ι r neu"'' .s:. i_f'*iiihr' w ; nlen
I1 r Sf'hrribr"'"!!,· ι fin It·;, SncnK ■ be· Hl "ί
Empfangen einer Gruppe paritätscodterter Datenbytes von der ZE (über eine Sammelleitung), in der Prüfung
der Parität für jedes Byte, dem Umcodieren der Datenbits unter Verwendung der Verbindungsschaltung
und dem Speichern des umcodierten Wortes in einem Register zur Eingabe in den Speicher.
Zur Erleichterung r\-r beiden ersten Schritte eines
Schreibzyklus und _jr Vermeidung komplizierter
Kontrollen und überflüssiger Datenbewegungen wird
das ankommende Wort in das Register MDR und das
Register MR geladen. Das Wort wird in beiden Registern mit allen angefügten Paritätsbits gespeichert
Das in das Register MDR gebrachte Wort wird so dort gespeichert daß die Paritätsbits für jedes Byte mit den
vorhandenen EXKLUSIV ODER-Paritätsprüfschaltungen geprüft werden können, die beim Leseprozeß zur
Erzeugung der Syndrome aus den vorher erzeugten Paritätsbits und den Datenbits benutzt werden. Beim
Schreiben besteht die aus den EXKLUSIV ODER-
Schaltungen für jedes Byte kommende Information
(oder sie sollte es wenigstens) aus einem Satz von Einsen, die anzeigen, daß die Parität für jedes Byte
stimmt oder aus Nullen in den Paritätsstellen, an denen die Byteparität für das zugehörige Byte nicht stimmt.
Vi Wenn die Parität nicht stimmt, wird eine erneute
Übertragung der Information angefordert. Wenn jedoch keine Fehler angezeigt wird, ist das Wort für die
Neucodierung und die Rücksetzung in den Speicher bereit.
M> Das umzucodierende zu speichernde Wort steht im
Register MR. (Andernfalls hätte das im Register MDR stehende Wor; in (his Roister MR iibiTiragen werden
niT.scn. du die l'nril.itsprnfiin^ nieht so wirksam ist.)
Wenn die im Register \//)/i sieh- iv:le Version des
V,'. 1I1IOS fiir die Npc'hemng herci1
<··\. können die I'1 ..ihns fr die ιinii ί .!er11' l'orni nni' "rwendung (Vr
"■ ίκι'ΊΐΜ)' cr/eiipt u -,-iim die /iiT" ,;piemenlieren der
1'.Kiiriis l'iiii'uiinnx fiir iii'" -.e/UKnff >
·>ι gesehen
ist Die Datenbits und die Paritätsbits gehorchen folgenden Gleichungen
χ, θ yv ©c, = 1
Χχ Θ Pj = I1
die bereits oben für die erste Zeile der Paritäts-Prüfmatrix bei einem Lesevorgang angegeben wurden. Für die
übrigen Zeilen und Datenbytes gelten wieder ähnliche Überlegungen.
Die obigen Gleichungen können so umgeformt werden, daß aus ihnen die Erzeugung von Prüfbits aus
Daten- und Paritätsbits hervorgeht Die umgeformten Gleichungen lauten:
P1 ©3Ί ®ct = 0
Für den Lesefall wurde diese Gleichung umgeordnet zu
Für den Lesefall wurde diese Gleichung umgeordnet zu
C1 ®yt «ft.
Für den SchreiWafl wird die Gleichung umgeordnet zu
Für den SchreiWafl wird die Gleichung umgeordnet zu
Pi ®yx «c,.
Diese Gleichung zeigt daß mit dem Wort im Register MR geschieht Das Paritätsbit für jedes Byte und die
durch y\ in obiger Gleichung für das erste Byte
bezeichnete Paritätsuntergruppe werden antivalent miteinander verknüpft und ergeben die durch die
Datenbits jedes Bytes vor dem Speichern geforderten Prüfbits. Die Prüfte werden dann in den Paritätsbitstellen
des Registers MDR gespeichert Wenn die Prüfbits einmal erzeugt sind, kann das Wort (Daten und
Prüfbits) aus dem Register MR eiu/srnt werden, in
welches es während der Umcodierung oeim Schreibprozeß
geladen und gespeichert wurde.
Die folgende Beschreibung der grundlegenden Paritätsmatrix 9 und der daraus entwickelten vollen
Pari täls-Prüf matrix der Fig. 10 zeigt insbesondere die
Art in welcher die in den F i g. 1 und 2 gezeigte Verbindungsmatrix gebildet wird. Die theoretische
Erörterung der Grundlagen einer solchen Priifmatrix muß herangezogen werden, wenn man zu der
gewünschten Doppelfunktionsschaltung gelangen will. Die Art, in der sie gewonnen wird, wurde soeben
beschrieben. Die nachfolgende Beschreibung zeigt nur die besondere Anwendung einer bestimmten Matrix mit
den gewünschten Eigenschaften, die für das vorliegende Ausführungsbeispiel geeignet ist.
Zur Bildung der in den Fig. 1A und 1B als Block und
im einzelnen in den Fig. 2A, 2B, IC und 2D dargestellten Verbindungsmatrix, wird folgendes Verfahren
benutzt In Fig.9 wird zuerst eine Matrix mit acht Spalten und acht Zeilen gebildet die dann in das in
F i g. 10 gezeigte Rechteck 410 kopiert wird.
Das bedeutet nicht, daß die obere Zeile mit lauter Einsen zum Verständnis der mathematischen Regeln,
welche dieser Erfindung zugrunde liegen, nicht wichtig ist Für den Sonderzweck der Konstruktion der
obenerwähnten Verbindungstnatrix wird die obere Reihe von Einsen nicht berücksichtigt.
In Fig. 10 gibt das untere rechte Rechteck 426 die
Lage der Prüfbits an. Zur Bildung der im Rechteck 412 der Fig. 10 gezeigten Matrix wird die Matrix im
Rechteck 410 nach oben gedreht, mit anderen Worten, die erste Zeile wird durch die zweite /eile ersetzt, die
zweite durch die dritte usw. Die oberste oder erste Zeile geht naeh unten oder in die achte Zeile, Die im Rechteck
414 dargestellte Matrix ist die Matrix des Rechteckes 415, welche wieder gemäß obiger Beschreibung einmal
vertikal nach oben gedreht wurde. Das die Matrix 416
enthaltende Rechteck wird durch Drehen der Matrix 414 um eine Stelle nach oben gebildet und auf diese
Weise entstehen auch die Matrizen in den Rechtecken 418, 420, 422 und 424, Somit wird die Matrix des
Rechteckes 410 zur Gewinnung des Rechtecks 412
ίο einmal, des Rechtecks 414 zweimal, des Rechtecks 416
dreimal, des Rechtecks 418 viermal, des Rechtecks 420
fünfmal, des Rechtecks 422 sechsmal und des Rechtecks 424 siebenmal gedreht
Faßt man die neun Rechtecke in der Fig. 10 mit der
Bezeichnung 410 bis 426 als eine Matrix aus acht Zeilen
uno 72 Spalten auf, so entspricht diese Matrix genau der Anordnung in den Fig.2A, 2B, 2C und 2D. Die 72
Spalten in Fig. 10 entsprechen den 72 Bits im Register MR. Die acht Zeilen der Fig. 10 entsprechen den acht
Leitungen 204 bis 218. Jede Zeile in F i g. 10 enthält 19
Einsen. Jede Eins in einer Zeile der Matrix entspricht dem i -Ausgangssigna! des genauso numerierten Flipflops des Registers MR So erscheint z. B. die erste 1 in
der Zeile 1 in Spalte 9. Aus F i g. 2A ist zu ersehen, daß der 1-Ausgang des Flipflops 9 an das Kabel 204
angeschlossen ist Die Verbindungen des Kabels 204 mit den übrigen Flipflops sind aus der Matrix zu ersehen und
so sind die Flipflops für die Bits 11,13,17,18 usw. alle mit
dem Kabel 204 verbunden. Die Anschlüsse der anderen
jo Kabel werden genauso durch Bezug auf die Zeilen der Matrix der F i g. 10 abgewählt
Es folgt eine allgemeine Erörterung des Aufbaus einer
Paritäts-Prüfmatrix, wenn unterschiedliche Bytezahlen (Byte-Paritätsbits) und Prüfbits vorhanden sind. Wenn
« /π Bytes aus b Bits vorhanden sind, ergibt das mb = K
Datenbits. Wenn K gegeben ist errechnet sich die Anzahl der Prüfbits mach der bekannten Hamming-Beziehung.
Alle Pari tälb-Prüf matrizen haben K + r
Spalten und r Zeilen. Die letzten r Spalten enthalten eine 1 und (r— 1) Nullen, die so cngeor.£net sind, daß die
r Spalten eine 1 in der ersten, zweiten ... r-ten Zeile haben. Jede Spalte entspricht einem Prüfbit.
Teile die m Bytes gleichmäßig in /-Gruppen T>
Wenn m = dr+e0<e<r ist, setze d + 1 Bytes in die
ersten eGruppen Tu ... Te und d Bytes in die letzten
(r= e) Te+ 1,... T„ Die Gruppe T, soll dem Aten Prüfbit
und der /-ten Zeile entsprechen. Beginne durch Setzen von b(d + 1) in die erste Zeile unter T\, b(d + 1) Einsen
in die zweite Zeile unter Ti und fahre so fort für die
r>n ersten eGruppen. Jetzt setze bdEinsen in die (e + l)-te
Zeile unter die Gruppe Te+S und fahrt fort bis unter
jeder Gruppe b(d + I) oder bd Einsen jeweils in einer separaten Zeile stehen.(In Fig. 1, Zeilen 1 bis 8 und in
F i g. 4, Zeilen I bis 7 mit acht Bits in Zeile 1, vier in den
v> restlichen.)
Es gibt
Es gibt
G)
verschiedene Wege, um drei Einsen in r Stellen zu setzen und
{r - IMr - 2)
Kombinationen von drei Einsen mit einer Eins in einer
besonderen Zeile. Es sind alle Kombinationen dieser
drei Bits zu verwenden, da umso weniger Verbindungen c) FehlersignaJe sind wie vorher zu bilden und, falls
und EXKLUSIV ODER-Schaltungen verwendet wer- erforderlich, ist die Korrektur unter Verwendung
den, je weniger Einsen sich in einer Paritäts-Prüftjiatrix von Syndrom- und Paritätsbits wie vorher durchzu-
finden, fOhrea
nen und 32 werden für F i g, 4 benötigt Eine mögliche Siehe hierzu das Beispiel in Tabelle IH mit Bytes
/jjbenötigt werden, gibt es
G)-
r(r- l)(r-2)(r-3)(r-4) 120
10
m > r
In diesem Fall entspricht jedes Prüfbit einer Gruppe Möglichkeiten mit fünf Eisen, U) mit sieben, (A mit Datenbits und jede Gruppe von Datenbits enthält eines
\7 / \9i
oder mehrere Bytes. Tabelle IV und F ι g. 11 zeigen ein
neun Eisen usw.
Die Einsen wählt man am besten so, daß ihre Anzahl
in jeder Zeile gleich ist, so daß die durch die Schaltung
hervorgerufene Verzögerungen ungefähr gleich sind. Eine Möglichkeit besteht z.B. darin, die Spalte 1 in
Tabelle I zu wählen, dann den Inhalt der Spalte in allen
Bytes zu drehen, dann eine zweite Spalte zu wählen, ihren inhalt wieder zu drehen usw. Dabei ist auf
Verschiedenheit zu achten. Die Bytes sind aus am Rest
zu wählen, indem man Spalten bei Bedarf verschiebt.
Beispiel 1 m < r
Das Beispiel mit zwei Bytes und sechs Prüfbits in Tabelle II dient zur Erklärung folgender Feststellungen: to
a) In Fällen, in welchen ein Prüfbit unter Verwendung
aller Datenbits in einem Byte (im Beispiel c, und C4) gebildet wird, sind Paritätsbit und Syndrombit wie
vorher zu bilden.
b) Die anderen Syndrombits sind wie gewöhnlich zu r,
bilden, z. B. durch EXKLUSIV ODER-Schaltung der entsprechenden Untergruppe von Datenbits
für jedes Prüfbit (im Beispiel S2, Sj,
m = 8, b = A, k = 8 χ 4 = 32, r = 7
is Beispiel fflr diesen Fall einschließlich der zur Bildung
von Syndromen aus Untergruppen von Datenbits entsprechend der Paritäts-Prüfmatrix erforderlichen
Schaltung.
a) Ein Paritätsbit für die ganze Gruppe wird unter Verwendung eines Prüfbits und des Umsetzers wie
vorher erzeugt
b) Jede π Bytes (zwei oder mehr} enthaltende Gruppe
ist in η Teile aufzuteilen. Erzeuge n-1 Paritätsbits
für die ersten /?—1 Bytes und benutze dieses Paritätsbit für die Byteparitätsprüfung. Das n-te
Byte benutzt das Original-Paritätsbit
c) Die erzeugten Paritätsbits sind einer EXKLUSIV ODER-Verknüpfung zu unterwerfen, und es ist die
n-te Paritätsprüfung durchzuführen (welche das aus der Umsetzung gewonnene Paritätsbit benutzt), um
das dem Prüfbit entsprechende Syndrombit zu erhalten.
d) Alle Fehlersignale sind wie vorher zu erzeugen und Korrekturen sind unter Verwendung der Syndrombits und Gleichungen wie vorher durchzuführen.
e) Jede Anzahl von Bits kann ein Byte bilden, wie es in dem obigen Beispiel mit Bytes aus drei Bit gezeigt
wird.
I 2 3 4 5 6 7 8
I I I I 1 1 I I
I 0 I 0 I O 0 0
I I 0 I 0 0 0 0
0 I I 0 0 I I 0
0 0 C I I 10 1
0 0 0 0 0 0 0 1
0 0 0 0 0 0 10
k = 16, r = 6, π = 22, 2 Bytes
L=. IiLi + i
9 K)II 12 13 14 15 16 17 1X19 20 2122 23:4
00000000 OOOIOIOO
I I I I 0 0 0 0
I 0 I 0 I I I I
I I 0 I I 0 I 0
0 I 1 0 I I 0 I
0 0 0 I 0 I 10
0 0 0 0 0 0 0 I
0 0 0 0 0 0 1 I
0000000
1 1 I I 0 0 0 I 0 I 0 I 1 I I
I I 0 I I 0 I OiIOMOI
25 26 27 28 29 3O3I 32
I I 0 0 I 0 I 0
OMOMOI
0 0 0 10 1 10
0 0 0 0 0 0 0 I
000 0 0000
1 I I 10 0 0 0
I 0 I M I M
I 0 I M I M
d A1 d, <i4 ι/.
</.. </■- i/h
I 2 3 4 ^ f, 7 κ
</„ </,u </,, ti,,
</,. dH d,*. (/,,.
') Ml Il i: 13 14 15 ld
33 34 35 36 37 38 39
I 0 0 0 0 0 0
0 10 0 0 0 0
0 0 10 0 0 0
0 0 0 10 0 0
0 0 0 0 1 0 0
0 0 0 0 0 10
0 0 0 0 0 0 1
<l C1 Ij C4 C5 C1,
17 IX I') :o 21 22
.S1 I I I I I I I I
.S\ I ! I I 0 0 0 0
ο idol ο ο ο
0 I 0 0 I 0 I
I 0 0 0 0 0
0 I 0 (I 0 0
21 22
lortsct/υημ
I 2 .1 4 < (1 " X ') ld I I 12 I.' It I5 ld 17 IX I1J 2Il 11 22
Pari läts-Verbind ungs-Matrix
S, I O t) O I I I O O O O I O O I I 0 0 10 0 0
.S4 0 I 0 0 I 0 0 Ο I I I I I I ! I 0 0 0 10 0
55 OOIOOiOI 1 t 1 10 0 0 0 000 0 10
56 OOOIOOII 10000000 000001
κ — Ίό. r = π. η = 22, 4 Bytes
2 ' J | 5 | </, | 1 | i | </; | I | ds | 1 | d, | 1 | ■) | io Ii | df | </„ | d- | ti. | !5 | i/o | </,., | du | Ju | 19 | '■' | :i | ^14 | 15 | </,„ | 23 24 | «Ί | ι.' | I | ■■> | ('4 | r, | I*. | |
I I 1 | I | 1 | I | 0 | 2 | 1 | -1 | 0 | 4 | 0 | 0 | 0 0 | 5 | 7 | S | 0 | 9 | IO | Il | 12 | 1 | I | 0 | 14 | I | 16 | 0 I | 17 | 18 | 0 | 19 | 20 | 21 | ΤΪ | ||
O I O | 1 | 1 | 1 | 0 | 1 | 1 | I | 1 I | 0 | 0 | 0 | 0 | 0 | 0 | I | I | 0 | 0 | 0 | 1 | 0 | 1 | 0 | I 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |||||
1 O I | 1 | 0 | 1 | 1 | I | 0 | 1 | O 1 | I | 1 | I | 1 | I | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | I I | 0 | I | 0 | 0 | 0 | 0 | 0 | |||||
I 1 O | I | 0 | I | 0 | 0 | 0 | 0 | I I | I | I | 0 | I | I | 0 | 0 | 0 | I | 0 | 0 | 0 | 0 | 0 | I | 0 0 | 0 | 0 | 0 | I | 0 | 0 | D | |||||
O O I | I | 0 | I | 0 | 0 | ! | I | 0 1 | I | 0 | 1 | 0 | 0 | I | I | I | I | 1 | I | 1 | 0 | 1 | 0 | 0 0 | 0 | 0 | 0 | 0 | I | 0 | 0 | |||||
0 0 0 | 0 | 0 | I 1 | 0 | 1 | I | 0 | I | I | I | 0 | 0 | 1 | 1 | I | 0 | 1 | 1 I | 0 | 0 | 0 | 0 | I | 0 | ||||||||||||
7 | 0 | I) | 0 | 1 | I | 0 | 1 | I | I | 1 | 0 | 0 | 0 | 0 | 0 | I | ||||||||||||||||||||
0 | 0 | 20 | ||||||||||||||||||||||||||||||||||
1 | I | 12 | :.' 14 | 16 | I | 22 | 26 | 28 29 | Ί | |||||||||||||||||||||||||||
S, | 1 | 0 | I | 0 0 | 0 | I I | 1 | 1 | 0 | 0 | 0 0 | 0 | ||||||||||||||||||||||||
S2 | 1 | 1 | 1 | 0 0 | 0 | 0 0 | 0 | I | 1 | 0 | 0 0 | 0 | ||||||||||||||||||||||||
s, | 0 | 1 | 0 | 1 I | 0 | 0 0 | 0 | 0 | 0 | I | 0 0 | 0 | ||||||||||||||||||||||||
S, | 0 | 0 | 1 | I 0 | 1 | I 1 | I | 0 | 0 | 0 | I 0 | 0 | ||||||||||||||||||||||||
S, | 1 | I 1 | I | 0 1 | 0 | 0 | 0 | 0 | 0 I | 0 | ||||||||||||||||||||||||||
S, | I | I) 1 | I | 1 0 | I | 0 | 0 | 0 0 | I | |||||||||||||||||||||||||||
Tabelle IV | ||||||||||||||||||||||||||||||||||||
I | ||||||||||||||||||||||||||||||||||||
i | ||||||||||||||||||||||||||||||||||||
1 | ||||||||||||||||||||||||||||||||||||
O | ||||||||||||||||||||||||||||||||||||
O | ||||||||||||||||||||||||||||||||||||
O |
Im folgenden werden der Datenfluß vom Eingangsre- acht Datenbytes aus je acht Bits und die Bits 65 bis 72 für
gister MR durch die Verbindungsmatrix zum Register die acht Prüfbits benutzt. Die besonders in F i g. 1
MDR, der DatenfluB und die einzelnen Schaltungsteile 55 dargestellte Verbindungsmatrix ist im Ausführungsbei
für die Erzeugung der Syndrombits, die Schaltung zur spiel der F i g. 2 durch die acht Kabel mit den Nummerr
Unterscheidung der verschiedenen Fehlerbedingungen 204, 206, 208, 210, 212, 214, 216 und 218 dargestellt
und schließlich die Schaltung für die Datenbitkorrektu- Jedes dieser Kabel ist an 19 Stufen des Registers Mf
ren beschrieben. Bei allgemeiner Bezugnahme werden angeschlossen, wie bereits früher erwähnt. Achtzehr
der Einfachheit halber die Fig. 2A bis 2 J als Fig. 2 6o dieser 19 Stufen spdehern Datenbits, eine ein Prüfbit
bezeichnet, bei Bezugsnahme auf bestimmte Schaltun- Jedes dieser Kabel ist an die EXKLUSIV ODER-Schal·
gen wird die jeweils zutreffende Figur erwähnt. tung angeschlossen. Es sind acht solcher Schaltunger
Das Register MR erscheint oben in Fig. 2 und mit der Nummerierung 172 bis 186 vorhanden. Wie
erstreckt sich über die F i g. 2A, 2B, 2C und 2D. Es wird bereits gesagt, sind Einzelheiten einer solchen EXKLU
angenommen, daß Torschaltungen im Speicher und der 65 SIV ODER-Schaltung mit 19 Eingängen in Fig.;
ZE vorhanden sind, um dieses Register zu laden, auch gezeigt. Die acht Datenbytes aus je acht Bits im Registe
wenn diese nicht besonders dargestellt sind in diesem MR werden über die acht Torschaitungen iss bis 20;
Register werden die Bits mit der Nummer 1 bis 64 für geleitet Diese acht Torschaitungen entsprechen de:
Torschaltung 124 in Fig. IA und werden alle durch
Zuführen der Signale CR-X, CWi oder ,4-3 zum
ODER-Glied 125 durchgeschaltet, welches seinerseits einen Ausgangsimpuls auf der Leitung 126 erzeugt. Die
Ausgangssignale der EXKLUSIV ODER-Schaltungen 172 bis 186 werden ebenfalls den Torschaltungen 188 bis
202 zugeleitet. Im rechten Teil der Fig. 2D ist die Leitung 156 gezeigt, die das Paritätsbit für das Byte 1
wewerleitet. Auf der Leitung 158 erscheint das Paritätsbil für das Byte 8. Auf der Leitung 160 erscheint
das Paritätsbit für das Byte 7. Auf der Leitung 162 erscheint das Paritätsbit für das Byte 6. Auf der Leitung
164 erscheint das Paritätsbit für das Byte 5. Auf der Leitung 166 erscheint das Paritätsbit für das Byte 4. Auf
der Leitung 168 erscheint das Paritätsbit für das Byte 3 und auf der Leitung 170 erscheint das Paritätsbit für das
Byte 2. Wie bereits gesagt wurde, sind die Verbindungen der Verbindungsmatrix bezüglich der jeweiligen Daten-
und Prüfbits direkt aus der Paritäts-Prüfmatrix in Fig. 10 zu bestimmen. Während eines Lesezugriffs mit
der CÄ-Taktgeber gestartet, kurz nachdem das Register MR geladen ist. Der Impuls CR-X wird über ein
ODER-Glied 125 auf die Leitung 126 gegeben, um das Register MDR zu laden und auch der Torschaltung 340
zugeführt, um das in Fig.2] gezeigte 5-Register zu
laden, welches zum Speichern der Syndrombit benutzt wird. Das Register MDR besteht aus acht Abschnitten
von je neun Bits. Jeder Abschnitt enthält acht Datenbits und ein Paritätsbit. Jeder neun Bit große Abschnitt ist an
eine der EXKLUSIV ODER-Schaltungen 222 bis 236 angeschlossen. Diese EXKLUSIV ODER-Schaltungen
unterscheiden sich von der in Fig. 7 gezeigten dadurch, daß sie anstelle der in F i g. 7 gezeigten 19 Eingänge nur
neun Eingänge haben. Die acht Ausgänge der eben erwähnten EXKLUSIV ODER-Schaltungen werden
zum Speichern der acht Syndrombits in das in Fig. 2J
gezeigte S-Register benutzt.
Nach dem Taktimpuls CR-X liefert der Taktgeber den
Taktimpuls CR-2. Dieser Impuls wird zum Prüfen auf das Vorliegen eines Fehlers benutzt. Bei ungerader
Parität wird kein Fehler angezeigt, wenn alle 5 Bits den
Binärwert ? aufweisen. Die in Fig. 2J gezeigte Leitung
238 wird also erregt, wenn kein Fehler vorliegt und die Leitung 240, wenn ein Fehler vorhanden ist Das
UND-Glied 237 wird nämlich dadurch eingeschaltet, daß im 5-Register lauter Einsen erscheinen. Der Impuls
CR-2 wird der Torschaltung 242 zugeführt, um den Zustand der Leitungen 238 und 240 zu prüfen. Wenn
kein Fehler vorliegt, erscheint ein Impuls auf der Leitung 396. Dadurch wird das System beauftragt, im
Register MDR erscheinende Daten zur Zfoder zu einer anderen Stelle im System zu übertragen, da kein Fehler
vorliegt. Liegt jedoch ein Fehler vor, erscheint ein Ausgangsimpuls auf der Leitung 398. Die ebenfalls in
der Fig.6 gezeigten Leitungen 396 und 398 bewirken dort die Erzeugung der Taktimpulse CR-A bzw. CR-3.
Wenn die Leitung 240 erregt ist, zeigt sie notwendigerweise einen vorliegenden Fehler an und es muß dann
geprüft werden, ob es sich um einen Einzelfehler handelt
oder nicht Diese Prüfung erfolgt durch den an die Torschaltung 244 in Fig.21 angelegten Taktimpulse
CR-3. Liegt ein Einzelfehler vor, liefert die EXKLUSIV ODER-Schaltung 246 ein 1-Ausgangssigna], da eine
ungerade Zahl von Einsen im Register 5 steht, wenn ein Einzelfehler vorliegt Das UND-Glied 248 liefert ein
Ausgangssignal, weil die Leitung 240 erregt ist Wenn
das UND-Glied 248 zu dem Zeitpunkt ein Ausgangssignal hat, an welchem der Taktimpuls CR-3 der
Torschaltung 244 zugeleitet wird, erscheint auf der Leitung 400 ein Impuls und zeigt damit einen
Einzelfehler an. Wenn das UND-Glied 248 keinen Ausgangsimpuls zu dem Zeitpunkt liefert, zu dem der
Impuls CR-3 der Torschaltung 244 zugeführt wird, erscheint auf der Leitung 402 ein Impuls. Die Leitungen
400 und 402 sind auch in der CW-Taktgeberschaltung der
F i g. 6 gezeigt. Der Taktimpuls CR-S führt zu einer Systemunterbrechung, weil ein Doppelfehler vorliegt,
welcher nicht korrigiert werden kann. Dementsprechend muß zu diesem Zeitpunkt vom Betriebssystem ein
anderer Mechanismus aufgerufen werden. Wenn angenommen wird, daß die Leitung 400 erregt war, so wird
dann der Taktschritt CR-6 eingeleitet, der das Korrekturverfahren beginnt.
Zuerst muß festgestellt werden, ob es sich bei dem Einzelfehler um einen Prüfbitfehler handelt, welcher nur
eine Korrektur des betroffenen Prüfbits erfordert, die als eine Paritätsbitkorrektur im Register MDR vorzunehmen ist, oder ob es sich um einen Einzeldatenfehler
handelt Diese Feststellung wird getroffen durch Anlegen des Impulses CR-6 an die in Fig.2J gezeigte
Torschaltung 405. Die in Fig.2J gezeigte Verknüpfungsschaltung 407 ist mit den Null-Ausgängen des
Registers 5 verbunden. Bekanntlich zeigt ein einzelner Syndrombitfehler ein falsches Prüfbit an und 3,5 oder 7
Syndrombitfehler einen einzelnen Datenbitfehler. Wenn die Schaltung 407 also ein Ausgangssignal erzeugt
bedeutet das, daß ein Prüfbitfehler festgestellt und die Leitung 354 erregt wurde, welche den Taktimpuls CR-7
einleitet Dieser Taktimpuls wird auf die Leitung 254 in den Fig. 2E, 2F, 2G und 2H gegeben. Dieser
Taktimpuls wird jede der Torschaltungen zugeführt, welche wie die Torschaltung 255 unter der Bitspeicherstelle des Registers MDR erscheint Dieser Impuls
verknüpft den Komplementinhalt des Registers 5 mit dem Inhalt der Paritätsspeicherstelle des Registers
MDR antivalent in EXKLUSIV ODER-Schaltungen, wie z. B. der EXKLUSIV ODER-Schaltung 257. Die
Ausgänge dieser Schaltungen sind mit den Torschaltungen 255 verbunden und jedes in einer Paritätsbit
Speicherstelle des Registers MDR gespeicherte Paritätsbit wird bei Zuführen eines Taktimpulses CR-7
mittels der oben beschriebenen Schaltung unter der Voraussetzung geändert, daß das zugehörige Syndrombit für diese spezielle Byteparität den Wert 0 besitzt Als
Beispiel wird für die im linken Teil der Fig.2E erscheinende Bytespeicherstelle 1 des Registers MDR
angenommen, daß das Paritätsbit den Wert 1 besitzt Wenn weiterhin angenommen wird, daß die Syndrombitstelle 1 einen Prüfbitfehler in dieser Stelle angezeigt
und dadurch die Leitung 100 erregt hat so liegt der Fall
vor, daß kein Ausgangsimpuls von der EXKLUSIV ODER-Schaltung 257 kommt, wodurch wiederum der
Inverter 259 einen Ausgangshnpuls erzeugt, welcher die
Torschaltung 255 beim Auftreten des Taktimpulses CR-7 durchläuft und die Bitstelle Ober das ODER-Glied
261 auf 0 zurückstellt In all denjenigen Paritätsbitsteilen, in denen das entsprechende Syndrombit im Register
S den Wert 1 hat, wird das Paritätsbit durch die gerade beschriebene Schaltung bei Anlegen des Taktimpulses
CR-7 nicht verändert
Wenn jetzt angenommen wird, daß ein Einzelfehler festgestellt wurde und die Korrektur vorzunehmen ist,
dann wird die Leitung 404 durch Anlegen des Taktimpulses CR-6 an die Torschaltung 405 erregt Die
Erregung der Leitung 404 startet einen in Fig.8 gezeigten Λ-Taktgeber. Wie bereits gesagt, handelt es
sich hierbei um einen einfachen dreistufigen Taktgeber,
der die gegenwärtig im Register MDR gespeicherten. Datenbits direkt im Taktschritt /4-1 über das Kabel 312
in die im unteren Teil der Fig. 2J dargestellte Korrekturschaltung leitet. Der Taktimpuls /4-2 veranlaßt
dann die Übertragung der im Register 500 gespeicherten, korrigierten Daten in das Register MR.
Das ist erforderlich, da eine Anzahl von während des vorhergehenden Zyklus erzeugten Paritätsbits falsch ist.
Auf den Taktimpuls /4-2 folgt der Taktimpuls /4-3, der an
die ODER-Schaltung 125 angelegt wird, um den Inhalt des Registers MR über die Verbindungsmatrix den
EXKLUSIV ODER-Schaltungen zuzuführen und neue richtige Paritätsbits zu erzeugen. Auf den Taktimpuls
/4-3 folgt der Taktimpuls CR-A, welcher signalisiert, daß
die gegenwärtig im Register MDR stehenden Daten für die Übertragung an die Zfjetzt bereit sind.
Die Korrekturschaltung umfaßt ein UND-Glied 502 für jedes Datenbit und auch ein EXKLUSIV ODER-
Register MDR und zur EXKLUSIV ODER-Verknüpfung
dieses Bits mit dem Ausgangssignal des UND-Gliedes 502 Diese Art der Korrektur ist allgemein bekannt.
Die Eingangssignale für die verschiedenen UND-Glieder stellen die im Register 5 gespeicherten und
entweder in regulärer oder in komplementärer Form zugeführten Syndrombits dar. In der dargestellten
Korrekturschaltung werden alle Datenbits, d. h. d\ bii du, parallel der Korrekturschaltung zugeführt und über
den >4-Taktgeber auch im wesentlichen parallel korrigiert
Wenn die Korrektur beendet ist, wird das Register 500 mit den korrekten Daten geladen und danach wird
beim Taktimpuls /4-2 dieser korrigierte Datensatz in das Register AfA und beim Taktimpuls /4-3 über die
Verbindungsmatrix dem Register MDR zugeführt
Nach Beschreibung eines Lesezugriffs wird jetzt ein Schreibzugriff beschrieben, wobei der Vorgang im
Zusammenhang mit den F i g. 3 und 4 bereits beschrieben wurde ebenso wie der das System bei einem
Schreibzugriff steuernde CW-Taktgeber. Vor einem Schreibzyklus werden bekanntlich das Register MDR
und das Register MR mit den von der ZE gelieferten Daten- und Paritätsbits geladen. Zuerst muß jedoch mit
einer Prüfung festgestellt werden, ob die Parität der ins Register MDR übertragenen Daten stimmt. Zu diesem
Zweck erscheint der Taktimpuls CW-\ auf der Leitung 145, um das Register S über die EXKLUSIV
ODER-Schaltungen 222 bis 236 zu laden. Wie bereits beschrieben wurde, wird damit nur eine Paritätsprüfung
durchgeführt, und wenn man die Anwendung der ungeraden Parität voraussetzt, ist dai Register S jetzt
mit lauter Einsen geladen. Nach dem Taktimpuls CW-X
erscheint der Taktimpuls CW-2 auf der Leitung 148 in
F i g. 21. Dieser Impuls bewirkt das Prüfen des Inhaltes des Registers 5 auf richtige Parität (nur Einsen) durch
Überprüfen des Ausgangssignales des UND-Gliedes 237. Wenn die Leitung 238 erregt ist, bedeutet das, daß
das Register S richtig lauter Einsen enthält und kein
r4.-~ 2(1 F-m-r
. 1... | —t. | -J— | ι aivuiiiuuia | /-•II/ Λ | |
TV/l HUgI1 | , TTVAlUI | 1,11 | UCI | ||
eingeleitet wird. Wenn andererseits ein Paritätsfehler festgestellt wird, wird der Taktimpuls CW-3 erzeugt, der
dem Datenverarbeitungssystem anzeigt, daß ein Paritätsfehler festgestellt wurde und die Daten erneut in die
Register AiA und MDR übertragen werden müssen.
Wenn angenommen wird, daß kein Fehler auftrat, ist die Leitung 149 in der F i g. 21 erregt Das Signal auf
dieser Leitung betätigt dann die Taktstufe CW-A, deren Taktimpuls über die Leitung 126 dem ODER-Glied 125
zugeführt wird und den Inhalt des Registers MR der Verbindungsmatrix zuleitet, um die erforderlichen
Prüfbits zu erzeugen und sie an den entsprechenden Prüfbitstellen im Register MDR zu speichern. Die
Leitung 126 kommt vom ODER-Glied 125 in F i g. 2D. Nach dem Taktimpuls CW-A erscheint der Taktimpuls
CWS, der ein Schreibsignal »gültige Daten« an den Speicher sendet, wodurch der ganze Inhalt des
Registers MDR, das jetzt die richtigen Datenbits und auch die erzeugten Prüfbits enthält, zum Speicher
übertragen wird.
Hierzu 17 Blatt Zeichnungen
Claims (1)
- Patentansprüche;1. Umsetzer für zwischen dem Speicher und der Zentraleinheit einer Datenverarbeitungsanlage zu s übertragende, aus einzelnen Bytes bestehende Datenwörter, wobei in der Richtung zum Speicher (Schreibvorgang) aus den Datenbits und den zu den Bytes gehörigen Paritätsbits Prüfbits nach einem Einzelfehler-Korrektur- und Doppelfehler-Erkennungs-Hamming-Code erzeugt und mit den Datenbits gespeichert werden, und in der Richtung vom Speicher (Lesevorgang) aus den Daten- und Prüfbits Syndrombits und zu den Bytes gehörige Paritätsbits erzeugt werden, gekennzeichnet durch folgende Einrichtungen:a) ein erstes Register (MR, F i g. la) zum wahlweisen Speichern entweder von aus dem Speicher gelesenen Daten- und Prüfbits oder von in den Speicher einzuschreibenden Daten- und Byteparitätsdts,b) mehrere erste EXKLUSIV ODER-Schaltungen zur Erzeugung von Redundanzbits (Prüfbits bzw. Paritätsbits), deren Eingänge jeweils über eine Verbindungsmatrix (Fig. IA) an ausgewählte Stufen des ersten Registers angeschlossen sind,c) ein zweites Register (MDR, F i g. 1 B) zur Speicherung der ursprünglichen Datenbits und der von den ersten mehrstufigen EXKLUSIV jo ODER-Schaltungen erzeugten Redundanzbits,d) mehrere zweite mehrstufige EXCLUSIV ODER-Schaltungen zur Prüfung der Parität der Datenbytes und der zugehörigen Redundanzbits, J5e) ein drittes Register (S, F i g. 2J) zur Speicherung der Ausgangssignale der zweiten mehrstufigen EXKLUSIV ODER-Schaltungen, dessen Stufen bei erfüllter Paritätsbedingung der Datenbytes und ihrer Paritätsbits einen vorgegebenen Binärwert speichern,f) eine Prüfschaltung zur Prüfung der von den zweiten mehrstufigen EXCLUSIV ODER-Schaltungen gelieferten Ergebnisse und eine Anzeigeschaltung zur Anzeige eines Datenbit- oder eines Prüfbitfehlers, wenn die Fehlerursache im Speicher liegt2. Umsetzer nach Anspruch 1, dadurch gekennzeichnet, daß die Prüfschaltung eine Schaltung zur Anzeige eines bei einem Schreibzugriff zum vt Speicher festgestellten Paritätsfehlers und eine Schaltung zur Anzeige eines bei einem Lesezugriff erkannten Datenbit-Einzelfehler, eines Prüfbit-Einzelfehlers oder eines Doppelfehlers enthält.3. Umsetzer nach den Ansprüchen I und 2, « dadurch gekennzeichnet, daß die ersten mehrstufigen EXKLUSIV ODER-Schaltungen wahlweise entweder aus den Datenhit» gewonnene Paritätsbits und Prüfbits im Falle eines Lesezugriffs oder aus den Datenbus und Byteparitätsbits gewonnene Prüfbits wi im Falle eines Schreibzugriffs liefern,4. Umsetzer nach den Ansprüchen I bis 3. dadurch gekennzeichnet, daß erste Torschaltungen zur direkten Fingabe der Bytes und ihrer Paritätsbits in das erste und zweite Register bei einem Schreibzu- hi griff und zweite Torschaltungen zur Ausgabe von Daten- und Paritätsbits über die zweiten EXKLUSIV ODI· «-Schaltungen zur Prüfung der Byteparitätder empfangenen Daten vorgesehen sind,Umsetzer nach den Ansprüchen 1 bis 4, dadurch gekennzeichnet, daß weitere Torschaltungen vorgesehen sind, um nach einer erfolgreichen Payritätsprüfung die empfangenen Daten- und Paritätsbits aus dem ersten Register den ersten mehrstufigen EXKLUSIV ODER-Schaltungen zur Erzeugung von Prüfbits zuzuleiten und diese mit den Datenbits dem Speicher,6. Umsetzer parh den Ansprüchen 1 bis 5, dadurch gekennzeichnet, daß den ersten mehrstufigen EXKLUSIV ODER-Schaltungen bei einem Lesezugriff die Daten- und Prüfbits zugeführt werden, daß Mittel vorgesehen sind, um den Wert eines erzeugten Paritätsbits zu ändern, wenn die Prüfschaltung einen Prüfbit-Einzelfehler aufgrund der Ausgangssignale der zweitem mehrstufigen EXKLUSIV ODER-Schaltungen feststellt, wobei das geänderte Paritätsbit von derjenigen der zweiten mehrstufigen EXKLUSIV ODER-Schaltungen erzeugt wird, die das Fehlersignal lieferte.7. Umsetzer nach Ansprüchen 1 bis 6, dadurch gekennzeichnet, daß eine Prüfeinrichtung zum Feststellen der Anzahl der fehlerhaften unter den von den zweiten mehrstufigien EXKLUSIV ODER-Schaltungen erzeugten Syndirombits vorgesehen ist und daß an die Prüfeinrichtung eine Anzeigeeinrichtung zur Anzeige eines Prülibit-Einzelfehlers, wenn nur ein Syndrombit fehlerhaft ist, zur Anzeige eines Datenbit-Einzeifehlers. wenn eine ungerade Anzahl größer als Eins von Syndrombits fehlerhaft ist und zur Anzeige eines Doppelfehlers, wenn eine Gerade Anzahl von Syndrombits fehlerhaft ist8. Umsetzer nach den Ansprüchen 1 bis 7, dadurch gekennzeichnet, daß an die Anzeigeeinrichtung Torschaltungen angeschlossen sind, die bei der Anzeige eines Datenbit-Einzelfehlers die Datenbits und Syndrombits der Fehlerkorrekturschaltung zuführen und die korrigierten Datenbits wieder speichern, ohne daß die gespeicherten Prüfbits geändert werden.9. Umsetzer nach den Ansprüchen 1 bis 8, dadurch gekennzeichnet, daß eine Einrichtung zur Erzeugung neuer Byteparitätsbits aus den korrigierten Daten vorgesehen ist, die Torschaltungen enthält zum Zuführen der korrigierten Datenbits und der unveränderten Prüfbits zu den ersten mehrstufigen EXKLUSIV ODER-Schaltungen.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US5130270A | 1970-06-30 | 1970-06-30 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2132565A1 DE2132565A1 (de) | 1972-01-13 |
DE2132565B2 true DE2132565B2 (de) | 1980-07-03 |
DE2132565C3 DE2132565C3 (de) | 1981-04-02 |
Family
ID=21970451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2132565A Expired DE2132565C3 (de) | 1970-06-30 | 1971-06-30 | Umsetzer |
Country Status (6)
Country | Link |
---|---|
US (1) | US3648239A (de) |
JP (1) | JPS5226104B1 (de) |
CA (1) | CA934061A (de) |
DE (1) | DE2132565C3 (de) |
FR (1) | FR2109584A5 (de) |
GB (1) | GB1293488A (de) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3755779A (en) * | 1971-12-14 | 1973-08-28 | Ibm | Error correction system for single-error correction, related-double-error correction and unrelated-double-error detection |
US3825893A (en) * | 1973-05-29 | 1974-07-23 | Ibm | Modular distributed error detection and correction apparatus and method |
US3800294A (en) * | 1973-06-13 | 1974-03-26 | Ibm | System for improving the reliability of systems using dirty memories |
JPS5440187B2 (de) * | 1973-07-25 | 1979-12-01 | ||
US3949208A (en) * | 1974-12-31 | 1976-04-06 | International Business Machines Corporation | Apparatus for detecting and correcting errors in an encoded memory word |
US4005405A (en) * | 1975-05-07 | 1977-01-25 | Data General Corporation | Error detection and correction in data processing systems |
US4646312A (en) * | 1984-12-13 | 1987-02-24 | Ncr Corporation | Error detection and correction system |
IT1202527B (it) * | 1987-02-12 | 1989-02-09 | Honeywell Inf Systems | Sistema di memoria e relativo apparato di rivelazione-correzione di errore |
US4979173A (en) * | 1987-09-21 | 1990-12-18 | Cirrus Logic, Inc. | Burst mode error detection and definition |
US5140595A (en) * | 1987-09-21 | 1992-08-18 | Cirrus Logic, Inc. | Burst mode error detection and definition |
US4868829A (en) * | 1987-09-29 | 1989-09-19 | Hewlett-Packard Company | Apparatus useful for correction of single bit errors in the transmission of data |
JPH04342459A (ja) * | 1991-05-16 | 1992-11-27 | Toyota Motor Corp | チタン酸鉛系圧電セラミックス材料 |
US5313475A (en) * | 1991-10-31 | 1994-05-17 | International Business Machines Corporation | ECC function with self-contained high performance partial write or read/modify/write and parity look-ahead interface scheme |
US5539754A (en) * | 1992-10-05 | 1996-07-23 | Hewlett-Packard Company | Method and circuitry for generating syndrome bits within an error correction and detection circuit |
ATE216096T1 (de) * | 1994-02-22 | 2002-04-15 | Siemens Ag | Flexible fehlerkorrekturcode/paritätsbit- architektur |
US5822339A (en) * | 1996-05-30 | 1998-10-13 | Rockwell International | Data decoder and method to correct inversions or phase ambiguity for M-ary transmitted data |
US6003144A (en) * | 1997-06-30 | 1999-12-14 | Compaq Computer Corporation | Error detection and correction |
US6301680B1 (en) * | 1998-09-24 | 2001-10-09 | Sun Microsystems, Inc. | Technique for correcting single-bit errors and detecting paired double-bit errors |
CA2437927A1 (en) * | 2003-08-14 | 2005-02-14 | Ramesh Mantha | Adaptive coding for a shared data communication channel |
US8832523B2 (en) * | 2006-03-03 | 2014-09-09 | Ternarylogic Llc | Multi-state symbol error correction in matrix based codes |
US7243293B2 (en) * | 2003-12-23 | 2007-07-10 | International Business Machines Corporation | (18, 9) Error correction code for double error correction and triple error detection |
US9203436B2 (en) * | 2006-07-12 | 2015-12-01 | Ternarylogic Llc | Error correction in multi-valued (p,k) codes |
US8365048B2 (en) * | 2006-09-26 | 2013-01-29 | GM Global Technology Operations LLC | Vehicle communication system diagnostic using hamming code |
US8069392B1 (en) | 2007-10-16 | 2011-11-29 | Integrated Device Technology, Inc. | Error correction code system and method |
JP2010026896A (ja) * | 2008-07-23 | 2010-02-04 | Nec Electronics Corp | メモリシステム、及び、メモリエラー要因特定方法 |
JP5353655B2 (ja) * | 2009-11-18 | 2013-11-27 | 富士通株式会社 | エラー検出・訂正符号生成回路及びその制御方法 |
US10176040B2 (en) | 2016-04-05 | 2019-01-08 | Micron Technology, Inc. | Error correction code (ECC) operations in memory |
US10735199B2 (en) | 2018-01-02 | 2020-08-04 | Bank Of America Corporation | File based transmission validation and failure location identification system |
CN111858129B (zh) * | 2019-04-28 | 2024-02-23 | 深信服科技股份有限公司 | 一种纠删码读请求处理方法、系统、设备及计算机介质 |
US11886295B2 (en) | 2022-01-31 | 2024-01-30 | Pure Storage, Inc. | Intra-block error correction |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL79872C (de) * | 1950-01-11 | |||
US3163848A (en) * | 1959-12-22 | 1964-12-29 | Ibm | Double error correcting system |
US3478313A (en) * | 1966-01-20 | 1969-11-11 | Rca Corp | System for automatic correction of burst-errors |
US3492641A (en) * | 1967-01-11 | 1970-01-27 | Datamax Corp | Error correcting digital communication system |
-
1970
- 1970-06-30 US US51302A patent/US3648239A/en not_active Expired - Lifetime
-
1971
- 1971-04-29 FR FR7116472A patent/FR2109584A5/fr not_active Expired
- 1971-05-21 CA CA113588A patent/CA934061A/en not_active Expired
- 1971-05-28 GB GB07810/71A patent/GB1293488A/en not_active Expired
- 1971-05-28 JP JP46036416A patent/JPS5226104B1/ja active Pending
- 1971-06-30 DE DE2132565A patent/DE2132565C3/de not_active Expired
Also Published As
Publication number | Publication date |
---|---|
JPS5226104B1 (de) | 1977-07-12 |
DE2132565C3 (de) | 1981-04-02 |
FR2109584A5 (de) | 1972-05-26 |
US3648239A (en) | 1972-03-07 |
CA934061A (en) | 1973-09-18 |
GB1293488A (en) | 1972-10-18 |
DE2132565A1 (de) | 1972-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2132565C3 (de) | Umsetzer | |
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 | |
DE2060643C3 (de) | Schaltungsanordnung zur Korrektur von Einzelfehlern | |
DE2554945C2 (de) | Verfahren und Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in gespeicherten Datenwörtern | |
DE3111447C2 (de) | ||
DE2421112A1 (de) | Speicheranordnung | |
DE2430464A1 (de) | Einrichtung zur fehlergesicherten datenuebertragung | |
DE2247704A1 (de) | Aus monolithisch integrierten schaltkreisen aufgebaute datenverarbeitungsanlage | |
DE2659031B2 (de) | Fehlerkorrektur- und -Steuersystem | |
DE2357168A1 (de) | Speichermodul fuer eine datenverarbeitungseinheit | |
DE2153542A1 (de) | Codierer für eine binäre Informationsbitfolge | |
EP0219917A2 (de) | Vermittlungsanlage mit Fehlerkorrektur | |
DE2513262C3 (de) | Digitale Codeumwandlungsanordnung | |
DE1250163B (de) | Einrichtung zur Paritätsprüfung von Speicherworten | |
DE2450468A1 (de) | Fehlerkorrekturanordnung fuer einen speicher | |
DE1474576B2 (de) | Fehlererkennungseinrichtung fuer den zeitmultiplexbetrieb | |
DE2047868A1 (de) | Schaltung zur Korrektur von Einzel fehlern in den Wortern eines zyklischen (n, k) Codes | |
EP0443377A2 (de) | Einrichtung zur signaltechnisch sicheren Darstellung eines Meldebildes | |
DE2104132A1 (de) | Anordnung zur Fehlererkennung und Fehlerkorrektur | |
DE2628847A1 (de) | Selbstpruefende lese- und schreibschaltung | |
DE1234054B (de) | Byte-Umsetzer | |
DE69534316T2 (de) | Telekommunikationsanlage mit einem prozessorsystem und ein prozessorsystem | |
EP0127118A1 (de) | Speichersteueranordnung, insbesondere für fehlertolerantes Fernsprech-Vermittlungssystem | |
DE2826454A1 (de) | Faksimilesignal-codiersystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
8339 | Ceased/non-payment of the annual fee |