DE2908373A1 - Einrichtung zur codierung und decodierung von pruefbits - Google Patents

Einrichtung zur codierung und decodierung von pruefbits

Info

Publication number
DE2908373A1
DE2908373A1 DE19792908373 DE2908373A DE2908373A1 DE 2908373 A1 DE2908373 A1 DE 2908373A1 DE 19792908373 DE19792908373 DE 19792908373 DE 2908373 A DE2908373 A DE 2908373A DE 2908373 A1 DE2908373 A1 DE 2908373A1
Authority
DE
Germany
Prior art keywords
channel
error
syndrome
diagonal
channels
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19792908373
Other languages
English (en)
Other versions
DE2908373C2 (de
Inventor
Arvind Motibhai Patel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US05/884,463 external-priority patent/US4205324A/en
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE2908373A1 publication Critical patent/DE2908373A1/de
Application granted granted Critical
Publication of DE2908373C2 publication Critical patent/DE2908373C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Description

Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10504
lw/eb
Einrichtung zur Codierung und Decodierung von Prüfbits
Die Erfindung betrifft eine Einrichtung zur Codierung und Decodierung von Prüfbits gemäß Oberbegriff des Anspruchs 1.
In Magnetbandspeichersystemen haben Industrienormen die Bandgröße, das Datenformat und die Aufzeichnungsdichte bestimmt. Herkömmlicherweise werden 1/2 Zoll breite Bänder für die Aufzeichnung von neuen Spuren verwendet. Dabei werden die Daten üblicherweise bit-parallel und byte-seriell auf dem Band aufgezeichnet. Dies gestattet die Verwendung der gleichen Neunspurköpfe sowohl für die Aufzeichnung als auch das Auslesen der Daten von Bändern mit verschiedenen Aufzeichnungsdichten.
Ein Magnetband ist weich und biegsam. Im Gegensatz zu anderen Formen beweglicher magnetischer Speichermedien, wie etwa starrer Magnetplatten, verlangen Magnetbandspeichersysteme, die Bewegung des Bandes in nicht einheitlichem Kontakt mit einem oder mehreren festen Köpfen, während die Daten aufgezeichnet oder abgelesen werden. Lose Staubteilchen zwischen Kopf und Band oder Flecken auf dem Band mit fehlendem Eisenoxid führen
ur Abschwächung der Signalamplituden und zu Datenfehlern in einem oder mehreren Kanälen. Unter solchen Umständen kann der Lesetaktgeber im fehlerhaften Kanal außer Synchronisation mit den Daten in anderen Kanälen kommen und demzufolge kann die Aufzeichnung und Wiedergabe von Daten über sehr lange Strecken fehlerhaft sein. Insofern stellt die gestörte Länge des Bandes ein Datenkorrekturproblem dar, daß sich von der Einzelstörung und dem Störungsbündel unterscheidet. Solche durch Einzelstörungen oder Störungsbündel ausgelöste Fehler sind im allgemei-
SA 977 026 909838/0681
ten von begrenzter Dauer. Die Rekonstruktion der betroffenen Jäten ist durch zyklische Fehlerprüfcode möglich. Diese Code sind jedoch sowohl in der Theorie als auch in ihrer Verwendung !ehr kompliziert (siehe z. B. US-PS 3 868 632).
Die übliche Praxis besteht darin, zwei von neun Kanälen zur Aufzeichnung redundanter Information über die übrigen sieben Kanäle des Satzes zu reservieren. Dadurch können bis zu zwei fehlerhafte Kanäle nachträglich korrigiert werden. Neben der bereits oben genannten US-Patentschrift kann hierzu auch auf die US-Patentschrift Re 28 923 verwiesen werden. In diesen bekannten Einrichtungen muß jedoch die aufgezeichnete Information in aufeinanderfolgende Blöcke unterteilt und müssen zu jepem dieser Blöcke mit Hilfe der komplizierten zyklischen Codes 'Prüfbits errechnet werden. Die Prüfbits werden nach den Daten aufgezeichnet. Beim Auslesen der Daten werden die Prüfbits nochmals errechnet und verglichen. Dies resultiert in einem hohen Aufwand sowohl an Einrichtungen als auch an Zeit. Da die Prüfbits jeweils nur aus einem begrenzten Datenblock errechnet wurden, können sie nur hinsichtlich dieses Blockes und nicht auch zur Fehlererkennung und -Korrektur hinsichtlich anderer Blöcke verwendet werden.
Im IBM Technical Disclosure Bulletin, Band 14, Mai 1972, Seite 38 bis 46 ist eine Prüfeinrichtung mit einem vertikalen Paritätsbit und einem einzigen diagonalen Paritätsbit beschrieben. Die beiden Paritätsbits werden in zwei Redundanzkanälen aufgezeichnet und es können zwei fehlerhafte Kanäle mit dieser bekannten Einrichtung korrigiert werden. Auch diese bekannte Einrichtung verschafft also nicht die gewünschten Möglichkeiten, wie z. B. die Fähigkeit drei fehlerhafte Kanäle korrigieren zu können.
Der Erfindung liegt daher die Aufgabe zugrunde. Fehler großer Länge und in mehreren Kanälen mit einfachen Paritätsprüfbits
SA 977 026 903838/ÜS8t
erkennen und korrigieren zu können.
Diese Aufgabe wird erfindungsgemäß durch die im Kennzeichen des Hauptanspruches beschriebene Einrichtung gelöst.
Dadurch, daß die Erfindung im Gegensatz zu den bekannten Einrichtungen nicht die komlizierten zyklischen Codes verwendet, wird eine einfache Einrichtung und eine rasche Arbeitsweise erzielt. Beim Auslesen der Daten werden die Prüfbits zugleich mit den Daten ausgelesen und nicht erst am Ende eines Blockes, wie in den bekannten Einrichtungen. Dadurch kann die Arbeitsweise direkter und rascher gestaltet werden. Mit der erfindungs gemäßen Einrichtung sind bis zu drei fehlerhafte Kanäle korrigierbar. Obwohl die Erfindung speziell für Fehler größerer
änge geeignet ist, können mit der erfindungsgemäßen Einrichtung auch kürzere Fehler korrigiert werden. Die Erfindung gestattet außerdem zum Auffinden eines Fehlers die Verwendung äußerer Zeigerinformation, d.h. anderweitig erhaltenen Hinweisen auf einen fehlerhaften Kanal. Die Verwendung solcherer äußerer Zeiger ist jedoch nicht unbedingt notwendig.
Sine vorteilhafte Weiterbildung der Erfindung ist dadurch gekennzeichnet, daß die zwei weiteren Paritätsbits entweder in zwei weiteren Redundanzkanälen oder in einem weiteren Redunlanzkanal und einem in regelmäßigen Abständen quer zur Kanalrichtung gespeicherten Prüfbyte oder aber in einem Paar in regelmäßigen Abständen quer zur Kanalrichtung gespeicherten Prüfaytes gespeichert werden.
üierdurch wird eine flexible Anpassung an das erforderliche Datenformat erzielt.
iieitere vorteilhafte Ausbildungen der Erfindung sind den rest-Lichen Unteransprüchen zu entnehmen.
SA 977 026 909838/0881
Die Erfindung soll nun anhand eines in den Figuren gezeigten lUsführungsbeispieles näher beschrieben werden. Es zeigen:
Fig. 1 in einem Blockschema ein paralleles Vielkanal-Speichersystem mit einem Paritätscodierer für das Schreiben von Daten und einem Paritätsdecodierer für die Datenfehlerprüfung beim Lesen von Daten;
'ig. 2a Aufzeichnungsformate der Daten und der Prüfbits in bis 2d einzelnen Kanälen;
ig. 3 einen diagonalen Paritätscodierer;
ig. 4 eine Logikeinrichtung des Decodieres zur Syndromerzeugung, zur Syndrommodifikation und zur Erzeugung der Korrektursignale;
'ig. 5 einen Fehlerkorrigierer des in Fig. 4 gezeigten Decodierers;
Fig. 6a eine Logikeinrichtung für den ersten internen Zeigegenerator und
E1Ig. 6b einen zweiten Zeiger generator für einen Stand des c ersten Zeigegenerators von ungleich Acht und von gleich Acht.
Beschreibung des Ausführungsbeispieles
?ig. 1 zeigt in Form eines allgemeinen Blockdiagrammes ein paralleles Vielkanalspeichersystem, das die vorliegende Erfindung enthält. Information von der Informationsquelle 1 wird an die Puffersteuerung 3 gegeben. Die Steuerung koordiniert 3ie Formatierung der Daten, sichert die notwendige Paritätscodierung und sorgt dafür, daß besagte, formatierte und nach
sä 977 026 909838/0681
Parität codierte Daten in parallelen Kanälen im Speicher 5 aufgezeichnet werden. Entsprechend liest die Puffersteuerung 7 im betätigten Zustand vorher auf den parallelen Kanälen aufgezeich nete Daten, formatiert sie neu und decodiert die Daten, um sie an einen Informationsempfänger (11) weiterzugeben.
Im Betrieb wird Information vom Puffer 3 über die Bahn 2 einem Paritätsprüfcodierer 9 zugeführt, wo Paritätsprüfbit sequentiell für Informationssignalsätze, sogenannte Bytes, erzeugt werden. Nachdem die Paritätsprüfbits zusammen mit den Informationssignalen aufgezeichnet sind und beide vom Speicher 5 zurückgelesen wurden, kann jeder per Parität in der Information erkannte Fehler durch Ableitung von KorrekturSignalen unter Ausnutzung von Syndromen und Zeigern und Kombination der Korrektursignale mit der gelesenen Information korrigiert werden. Die Ableitung der Syndrome und Korrektursignale erfolgt im Decodierer 19. Der Decodierer leitet die Syndrome anhand von Prüfbits ab. Die Prüfbits erfassen aufgezeichente Informationsoder Datensignale in sogenannter vertikaler Richtung und in der Richtung eines dazu positiv oder negativ quer geneigten Kanales.
Nach Darstellung in Fig. 1 steht der Decodierer 19 in Wechselwirkung mit dem Puffer 7 beim Empfang von Daten über die Bahn 21 und bei der Rückgabe decodierter Daten über die Bahn 33. In diesem Zusammenhang wird auf das logische Diagramm in Fig. 4 verwiesen, das die Syndromerzeugung, - Modifikation und die rzeugung von Korrektursignalen im Decodierer darstellt. Über die Decodierereingangsbahn 21 angelegte Daten werden von den Elementen 23, 24 und 27 verarbeitet. Grundsätzlich werden Da-« ten mit Fehlern auf den parallelen Spuren auf parallele Leitungen der Bahn 21 gegeben und an den Syndromgenerator 23 geleitet. Dieser wiederum gibt die Daten weiter an den Syndromprozessor 25. Korrektursignale e„(i) vom Syndromprozessor 25 für einen Kanal (i = j) auf der Bahn 29 werden an den Fehler-
SA 977 026 909838/0881
_9_ 2308373
korrektor 27 gegeben. Für die Korrektur von zwei Kanälen werden Signale em(i) und e_(j) über die Bahnen 29 und 35 geleitet. Die kontinuierliche Syndrommodifikation erfolgt durch Rückkoppelung des Korrekturelementes auf den Syndrommodifizierer über die Bahn 601, so daß eine Wechselwirkung der neuen Syndrominformation entsteht, die an den Eingang des Syndromprozessors 25 vom Syndromgenerator 23 angelegt wird.
Aufzeichnungsformate und Prüfbits für Zwei-Kanal-Korrektur
In den Fign. 2a bis 2c sind verschiedene Formate zur Aufzeichnung neun paralleler Kanäle auf einem Band dargestellt. Der Kanal 8 ist laut Fig. 2a reserviert zur Aufzeichnung der Parität über den anderen 8 Kanälen. Ein solches Paritätsbit ist bekannt als vertikales Redundanzprüfbit. Jedes Byte B besteht aus 8 Bits und das vertikale Redundanzprüfbit (VRC-Bit) wird gleichzeitig in jedem der 9 Kanäle aufgezeichnet.
Sfenn in Fig. 2a mit B (k) das iti-te Bit im k-ten Kanal von links nach rechts bezeichnet wird und B ein auf einem Speichermedium wie etwa einem Magnetband auf den parallelen Kanälen 0 bis aufgezeichnetes Byte aus 8 Bits darstellt, dann kann man B ausdrücken wie folgt:
Bm= I Bm<°>' V1>' Bm(2> <
worin m = O bis M und M= 8 χ N.
B (8) ist die Byteparität von B , aufgezeichneten auf dem Kanal P.
ä. h. 7
V8) -
'(Ein Kreis über dem Summenzeichen bezeichnet eine Summe Modu-
SA 977 026 90 9 8 3 8/0681
5, Bg, B16, B34 ... BgN sind Prüfbytes, von denen jedes eine diagonale Paritätsprüfung für sieben Datenbytes auf seinen bei den Seiten liefert, so daß für jedes m gilt
7—k k
BnOc)- = ^1 Bm_t(k+t) Θ ^1 Bm+t(k-t) (3)
An den beiden Enden des Datensatzes existieren die Bytes B-1, B_2, ... B_7 und die Bytes Bgm+1, Bgm+2, ... Bgm+7 nicht und werden bei der Berechnung der Gleichung (3) als lauter Nullen angesehen. Die Paritätsprüfgleichungen (2) und (3) können somit neu geschrieben werden
Q B (k) = O (4)
k=O
<2 B ,(k) = O (5)
k=0 m"K
Die gelesenen Bytes können durch Fehler gestört sein. Wenn die
aritätsgleichungen (4) und (5) nicht erfüllt sind, nennt man das Ergebnis das Fehlersyndrom.
In dem in Fig. 2b und 2c dargestellten Format ist der Kanal O ebenfalls für die Paritätscodierung reserviert, und zwar für die Aufzeichnung der diagonalen Paritätsprüfung in der positiv geneigten Richtung. In Fig. 2d sind diagonale Paritätsprüfungen in positiv und negativ geneigter Richtung dargestellt. Die ormate der Fign. 2b und 2c sind auf die Korrektur von zwei Spuren ausgerichtet, während die Fig. 2d die Korrektur von drei jpuren betrifft.
Codierer für die Erzeugung diagonaler Prüfbits
η Fig. 3 ist der Codierer 9 zur Erzeugung der erforderlichen aritätsprüfungen für das in Fig. 2a dargestellte Format geeigt. Alle vertikalen Paritätsprüfungen werden durch eine ein-
977 026 909 8 3 8/0681
2S08373
fache Modulo-2-Addition der Kanalbitwerte in vertikaler Richtung (quer zum Kanal) implementiert. Da besagte vertikale Paritätsprüfungen ausführlich in der erwähnten US-Patentschrift beschrieben sind, werden sie hier nicht weiter behandelt, sondern nur der Teil des Codierers 9 dargestellt, der die diagonale Paritätsprüfung vornimmt. Er besteht aus einem Schieberegistercodierer, der die diagonale Paritätsprüfungen zur nachträglichen Aufzeichnung in der Puffer-Steuerung in den quer über die
pur liegenden Bytepositionen BQ, Bg, B^6, ... BgN erzeugen kann, um das Format der Fig. 2a zu erfüllen. Die vertikalen Paritätsprüfungen werden auf Kanal 8 aufgezeichnet (Spur P). Der diagonale Paritätsprüfteil des Codierers 9 besteht aus einem siebenstufigen Flip-Flop-Schieberegister FF1, FF2r ... FF6 und FF7. Zwischen jede Schieberegisterstufe ist ein Antivalenzglied (EXCLUSIV-ODER Glied) mit mehreren Eingängen und einem Ausgang geschaltet. Jedes der Antivalenzglieder 195, 197, 199, 201, 203 und 205 koppelt nicht nur eine Registerstufe mit einer anderen (FF3 mit FF2), sondern ist auch mit einem Eingang an ein Bit angeschlossen, das diagonal über den Kanälen des Satzes liegt. Das Antivalenzglied 193 schließt beispielsweise B m+.(0) ab, während das Antivalenzglied 205 das Bit von der Position B+.(6) empfängt. Der Bitwert von der Position B m+.(7) treibt die Stufe FF7 direkt. Dieser diagonale Schieberegister-Paritäts codierer implementiert die Gleichungen (3) und (5). In der Darstellung ist 0 ein Byte aus lauter Nullen.
Die Prüf bytes BQ, Bg, B.., usw. werden in einem kontinuierlichen Schiebe- und Eingabeprozeß bitweise am Ausgang des Schieberegisters 6 erzeugt, während das 0 Byte und das Datenbyte in der dargestellten Reihenfolge eingegeben werden. Das Prüfbyte B0 wird zuerst erzeugt, als nächstes Bg usw. Das bedeutet, daß zur Erzeugung von B , wobei m=0, 8, 16, 24 usw. ist, die Bytes in der Reihenfolge 0, Bm+1, B m+2, ... Bm+7 in das Schieberegister geschoben und eingegeben werden müssen. Wenn B. eingegeben wird, wird das i-te Bit von B am Ausgang 6 des Registers
SA 977 026 90983 8/0881
9 erzeugt. Soweit kann die Codierung mit der Kombination einer vertikalen Paritätsprüfung und einer diagonalen Paritätsprüfung an die Korrektur von bis zu zwei fehlerhaften Kanälen angepaßt werden.
Aufzeichnungsformat und Prüfung für Korrektur von drei fehlerhaften Kanälen
In Fig. 2d ist ein Format gezeigt, in dem bis zu drei fehlerhafte bekannte Kanäle von T Kanälen korrigiert werden können. Wie noch erklärt wird, braucht man dazu nur 2(T-1) Prüfbits zusätzlich zu den drei Prüfkanälen.
Bei dem in Fig. 2d dargestellten Format soll Zm(t) das m-te Bit im t-ten Kanal bezeichnen. Es gibt T+2 Spuren mit der Numerierung von O bis T+1. Der Bitpositionswert m läuft von 1 bis M. Die Kanäle O, T und T+1 sind für die Aufzeichnung von Paritätsprüfungen reserviert. Jedes Prüfbit im Kanal T+1 stellt die Modulo-2-Summe der Bits mit derselben Positionsnummer m in jedem der übrigen T+1 Kanäle dar. Diese Prüfung wird vertikale Paritätsprüfung genannt, die entsprechende Codiergleichung lautet:
Zn, (T+1) = Q Z (t) (A1)
t=O
Jedes Prüfbit im Kanal O liefert eine diagonale Paritätsprüfung mit positiver Richtung gemäß Darstellung in Fig. 2d. Ähnlich liefert jedes Prüfbit im Kanal T eine diagonale Paritätsprüfung mit negativer Neigung. Die m-te Diagonalprüfung mit positiver Neigung, genannt Prüfung dm + ist gegeben durch die Codierglei-" chung:
Vo) =
SA 977 026 909838/0681
Die m-te Diagonalprüfung mit negativer Neigung, genannt d ist gegeben durch die Codiergleichung:
T
Z_(T) = β Z . (T-t) (A-3)
Es ist zu beachten, daß am Anfang des Datensatzes die Berechnungen der diagonalen Prüfbits für die Positionen O bis T-I Datenbitwerte von leeren Positionen betreffen (mit negativen Positionszahlen). Diese Datenbitwerte werden der Einfachheit halber als binäre Nullwerte angesehen. Am Ende des Datensatzes werden die Prüfkanäle O und T um T-I Bits erweitert, um Diagonalprüfungen aller Bits in jedem Kanal zu bekommen. Die Prüfbits in diesen erweiterten Positionen betreffen auch einige Datenbitwerte von leeren Positionen, die ebenfalls als binäre Nullwerte angenommen werden.
Die Korrektur codierter Daten
Das Hauptziel der Erfindung ist die Erkennung und Korrektur von bis zu drei bekanntlich fehlerhaften Kanälen in einer gegebenen Gruppe. Anschließend werden zuerst die Fehlersyndrome und dann der Decodierprozeß beschrieben. Zur Beschreibung des Decodierprozesses gehören separate Beschreibungen der Korrektur von zwei fehlerhaften Kanälen mit Zeigern und einem fehlerhaften Kanal ohne Zeiger im Zusammenhang mit den in den Fign. 2a bis 2c gezeigten Formaten. Daran anschließend wird die Korrektur von drei Kanälen mit Zeigern und die Korrektur eines Kanals ohne Zeiger unter der Verwendung des in Fig. 2d gezeigten Formates beschrieben. Schließlich wird noch Bezug genommen auf die Rückwärts-Lesesymmetrie, die Fehlerkorrekturen beim Lesen in beiden Richtungen, nämlich vorwärts und rückwärts, gestattet.
SA 977 Q26 90 3838/0 681
Gelesene Bytes können Fehler enthalten. Wenn die in den Gleichungen (4) und (5) aufgezeichneten Paritätsprüfbedingungen nicht erfüllt sind, wird das Ergebnis Fehlersyndrom genannt.
in von Null verschiedenes Syndrom ist also eine klare Anzeige für das Vorhandensein eines Fehlers. Wenn B das m-te Byte aus acht Bits ist, das vom Speicher gelesen ist und B (8) die Byteparität, wie sie vom Medium gelesen ist, dann wird das m-te vertikale Paritätsprüfsyndrom Sv dargestellt nach der Relation
- 14 Syndrombestimmung für die Korrektur von zwei Kanälen
290837a
Das m-te diagonale Paritätsfehlersyndrom Sdm ist dann
7
Sdm = (3 Bm (k) (7)
m k=o m'k
Die Modulo-2-Differenz zwischen dem gelesenen B m(k) und dem geschriebenen Β~(1Ο ist. das Fehlermuster em(k) in der k-ten Position des m-ten Byte.
Vk) - Bm{k) Θ em(k)
Wenn die Gleichungen (4) und (6) und die Gleichungen (5) und
(7) kombiniert werden und e (k) für Bj11(IO ® B mfe) eingesetzt wird, dann ergibt sich
8 7
Sv = Θ [ B (k) Φ B (k) I = ö e Ck) (9)
m k=O m m k=O m
Sdm = ^0E Vk(k) Θ Bm-k{k)l - 1% em-k(k)
Durch Verarbeiten der Syndrome Sv und Sd können jetzt Fehler in einer unbekannten Spur oder bis zu zwei als fehlerhaft bekannten Spuren korrigiert werden.
977 026 909 8 3 8/ 0 681
- 15 Syndrombestimmung für die Korrektur von drei Kanälen
Die Syndromverarbeitung für das in Fig. 2d gezeigte Format folgt ähnlichen Linien, wie die Verarbeitung für das in Fig. 2a gezeigte Format. Zur Unterscheidung zwischen aufgezeichneten und gelesenen Daten, Syndromen und Korrektursignalen im Falle der Korrektur von drei Spuren (Fig. 2d), wird für den Rest die-
er Beschreibung eine andere Bezeichnung gewählt. Danach bezeichnet Z_(t) den Bitwert, der dem aufgezeichneten Z(t) entspricht. Diese gelesenen Bits können Fehler enthalten. Das Ergebnis der Paritätsprüfungen der Gleichungen (A-1), (A-2) oder (A-3), angewandt auf die gelesenen Daten, nennt man Fehlersyndrom.
Die m-te vertikale Paritätsprüfung ergibt das Syndrom T+1
Die m-te diagonale Paritätsprüfung mit positiver Neigung ergibt das Syndrom
Die m-te diagonale Paritätsprüfung mit negativer Neigung ergibt das Syndrom
Sdm -
Kombiniert man die Gleichungen (A-1) und (A-4), die Gleichun gen (A-2) und (A-5) und die Gleichungen (A-3) und (A-6), so ergibt sich
t—υ
SA 977 026 909838/0681
— J 6 —
ΓΠ
= % [V(t) Θ Vt(t)3 <A"8)
em(t) - Zm(t) φ Zm(t>
Setzt man die Gleichungen (A-10) in die Gleichungen (A-7), (A-8) und (A-9) ein, so ergibt sich
T+1
Sdm - t% em-t(t) <A"12)
Sd" = <2 e_ . (T-t) (A-13)
m t=0 m-x:
Durch Verarbeitung dieser Syndrome lassen sich viele verschiedene Fehlertypen korrigieren. Die vorherrschenden Fehler bei Magnetbändern sind Kanalfehler, die durch großflächige Defekte im magnetischen Medium verursacht werden. Der fehlerhafte Kanal kann durch Erkennen des SignalVerlustes, einen übermäßigen Phasenfehler, ein unzulässiges Aufzeichnungsmuster oder ähnliche externe Hinweise identifiziert werden. Wenn solche externe Hinweise fehlen, kann der fehlerhafte Kanal immer noch durch Verarbeitung der Syndrome identifiziert werden. Anschließend wird gezeigt, daß bis zu drei bekanntlich fehlerhafte Kanäle durch Verarbeitung der obigen Syndrome korrigiert werden können Beim Fehlen eines externen Hinweises kann immer noch ein fehlerhafter Kanal identifiziert und korrigiert werden. Wenn ein Hinweis auf einen fehlerhaften Kanal vorliegt, kann ein zweiter fehlerhafter Kanal identifiziert und beide Kanäle können korrigiert werden.
SA 977 026 9098 38/0681
Einrichtung und Verfahren zur Decodierung
Zum Decodierprozeß gehört die Adressierung und ihre übertragung aus mehreren parallelen Kanälen des Speichers 5 in die Puffer-Steuerung 7. Die Puffer-Steuerung 7 stellt hier zusammen mit dem Decodierer 19 fest, ob einer der Kanäle fehlerhaft ist und sie erzeugt entsprechende Korrektursignale. Bei der Fehlerkorrektur mehrerer Kanäle sei an den Kompromiß zwischen der Verwendung der Redundanz zur Feststellung der Tatsache, daß die Bits in einem gegebenen Kanal fehlerhaft sind und/oder der Benutzung der Redundanz zur Korrektur des Fehlers erinnert In diesem Sinne ist die Korrektur des Fehlers die Errechnung eines Datenwertes als Ersatz für einen entsprechenden fehlerhaften Wert.
Korrektur von zwei Kanälen mit Zeigern
— I / —
Wenn Fehler auf höchstens zwei bekannte Kanäle begrenzt werden können, die durch die Kanalfehlerzeiger i und j bezeichnet sind, wobei i kleiner j ist, dann können alle Fehler korrigiert werden. Die Gleichung (9) kann in diesem Zusammenhang neu geschrieben werden für Fehler im m-ten Byte als
Svm=emii}
Ähnlich ist auch jede diagonale Paritätsprüfung durch höchstens zwei Fehlermuster beeinflußt. Wenn angenommen wird, daß alle Fehler bis zur Bitposition (m-1) in jedem Kanal korrigiert werden und die Syndromgleichungen für alle korrigierten Fehlermuster eingestellt sind, dann kann gezeigt werden, daß die Fehler im m-ten Byte die Diagonalprüfungen (m+i) und (m+j) beeinflussen (wenn j ψ 8) und dann kann die Gleichung (10) neu geschrieben werden als
977 026 90983 8/0681
Sdm+i = e]
Sdm+i = e]
Die Gleichungen (11) und (12) ergeben die Fehlermuster:
= Sd (14)
m+r
Θ Svm (15)
Das Byte B wird dann wie folgt korrigiert unter Benutzung der Gleichungen (8), (14) und (15):
Bm{i) - Vi} · em(i) (16)
- 18 -
29Q8373
Wenn j ψ 8, dann wird das diagonale Syndrom (m+j) zur Berücksichtigung der Korrektur von B_(j) modifiziert, wie folgt:
Sdm+j < Sdm+. Θ em(3) wenn j φ 8 (18)
Das obige Korrekturverfahren wird dann auf das nächste Byte angewandt, wo m genauso um +1 erhöht wird. Die Indices des Kanalfehlerzeigers i und j können an jeder Byteposition m unter der Voraussetzung geändert werden, daß die neuen Werte von i und j nicht kleiner sind als die vorhergehenden entsprechenden Werte. I und j können jeden Wert bekommen, wobei i kleiner sein muß als j, wenn alle Kanäle für mindestens sieben aufeinander olgende Bytes vor der ZeigerwerteZuordnung fehlerfrei sind.
sä 977 026 909 8 38/0 681
Erzeugung eines internen Zeigers für einen fehlerhaften Kanal und Korrektur eines fehlerhaften Kanales
In diesem Fall ist der j-te Kanal fehlerhaft und j ist nicht bekannt. Ein Fehler im m-ten Byte beeinflußt die m-te vertikale Paritätsprüfung und die diagonale Paritätsprüfung (m+j), für welche die Gleichungen (9) und (10) neu geschrieben werden können als
Sv1n = em(j) (19)
Sdm+j = em(j) , wenn j φ 8 (2O)
Der Wert Sv = 1 zeigt das Vorliegen eines Fehlers an. Der Indexzeiger j ist die kleinste ganze Zahl von O bis 7, so daß:
Svm * 1 - Sdm+j
Wenn Sv = 1 und Sd. für alle j zwischen 0 und 7 den Wert O hat, dann ist j = 8. Das Byte B wird dann korrigiert als
Wenn j φ 8, dann wird das (später benutzte) Diagonalsyndrom (m+j) ι
folgt:
(m+j) modifiziert zur Wiedergabe der Korrektur von B m(j) wie
Sdm+j * em<3) (23)
Wenn sich herausstellt, daß der Index j von einem Byte zum anderen wechselt, dann sind die Fehler nicht auf eine Spur beschränkt. Solche Fehler sind ohne das Risiko einer Fehlkorrektur nicht korrigierbar. Ein neuer Wert für j kann nach mindestens sieben aufeinander folgenden fehlerfreien Positionen benutzt werden.
SA 977 026 909838/0681
Ausführungsbeispiel des Decodierers
Fig. 4 zeigt im einzelnen ein logisches Diagramm des Decodierers 19. Er besteht aus einem Syndromgenerator 23 und einem Syndromprozessor, Modifizierer und Fehlermustergenerator 25 und einem Fehlerkorrektor 27. Daten Bm+i (0) , B m+i(1), ···< B . (6), Bm+. (7) werden byte-seriell und bit-parallel an den Syndromgenerator 23 geleitet, der aus einem siebenstufigen
chieberegister (FF1 bis FF7) besteht, in dem das Eingangssignal zu allen Stufen (mit Ausnahme von FF7) die Modulo-2-Addition des Inhaltes der Schieberegisterstufe mit den angelegten Datenbits ist.
Zur selben Zeit zu der das Datenbyte Bm+g an den Syndromgenerator 23 angelegt wird, wird auch das Datenbyte Bm über die Leitung 21 an den Fehlerkorrektor 27 gegeben. Die Einzelheiten des in Fig. 5 gezeigten Fehlerkorrektors 27 weisen die logische Kombination (Modulo-2-Addition) der Fehlerkorrekturausgabe em(i) und/oder em(j) über die entsprechenden Bahnen 29 und 35 und von Komplementärelementen der Datenbytes auf, die die Datenkorrektur bewirken, die über die Datenbahn 33 ausgegeben wird.
Der Fehlermustergenerator 25 enthält einen Syndromprozessor und Leiteinrichtungen 22 und 26 zur Modifikation der im Syndroir prozessor 24 enthaltenen Syndrome und zur Erzeugung der Signale e (i) und/oder e (j) aus diesem Syndrom. Nach diesem Ausführungsbeispiel können bis zu zwei fehlerhafte Kanäle korrigiert werden.
Der Syndromprozessor 24 besteht aus einem achtstufigen Schieberegister (FF7 bis FFO), in das die Eingabe in alle Stufen mit Ausnahme der ersten die Modulo-2-Addition des Inhaltes der Schieberegisterstufe und der Syndrommodifikation ist, die aus der Leiteinrichtung 22 abgeleitet wird. Diese Leiteinrichtung
sä 977 026 9098 38/0681
gibt eine Fehlerkorrektur em(j) über die Bahn 601 an die Antivalenzglieder des Schieberegisters 24 verteilt nach den entsprechend betätigten Zeiger elementen J.. bis J7. In ähnlicher (Weise wird der Inhalt der Schieberegister FF7 bis FFO des Prozessors 24 durch die Leiteinrichtung 26 verteilt, gesteuert durch den anderem Fehler zeiger I0 bis I7.
Alle versetzten Werte von O bis 7 des diagonalen Syndroms Sdm+. werden durch die Schieberegisterstufen FF7 bis FFO und die zugehörigen Leitvorgänge der Leiteinrichtung 26 zur Verfügung estellt. Das die Stufen des Schieberegisters im Prozessor 24 !koppelnde Antivalenzglied modifiziert die gespeicherten SyndromJ-jwerte mit dem korrigierten Fehlermuster vom vorhergehenden !Zyklus, wenn die Syndromwerte in ihre neuen Positionen versetzt werden. Während jedes Zyklus wird für jedes in das Register 23 eingesetzte Byte ein Bit aus diesem Byte ausgeschoben und geht in die erste Stufe im Register 24. Nach Darstellung in der Leiteinrichtung 26 überträgt das UND-Glied 605 den Wert 3d . als Korrektursignal nur, wenn zwei fehlerhafte Kanäle korrigiert werden, und zwar durch Betätigung des UND-Gliedes 605. Dieses wiederum ist antivalent mit dem Syndrom verknüpft, äaß aus der vertikalen Parität am Eingang 63 abgeleitet ist and über die Bahn 601 angelegt wird. Wenn nur ein Kanal korrijiert wird, braucht natürlich die Modifikation über die Bahn 501 und die Leiteinrichtung 22 nicht aufgerufen zu werden, um ias im Syndromprozessor 24 enthaltene Syndrom zu modifizieren. 3ie Korrektur eines Kanales betrifft also nur das Korrektursignal e (i) über die Bahn 29 zum Fehlerkorrektor 27.
E und J stellen Zeiger zur Bezeichnung von höchstens zwei feh-Lerhaften Kanälen dar. Diese Zeiger sind entweder extern abgeleitet oder werden intern erzeugt. Die interne Erzeugung von Seigern wird anschließend beschrieben.
SA 977 026 909838/0681
_ 22 _ 29Q8373
TABELLE 1
KANALFEHLERZEIGERLOGIK
i-te Kanal P1 P 2 P 3
1O = P0 P1 P 2 P 3 P4
1I - po P1 P 2
J2 = po P1
J3 = po P5
X4 = po P6
1S = P7
1O = 56
1I = 57
j-te Kanal
J3 = P8
J7 = P8 P7 J6 = P8 P7 P6 J5 = P8 P7 P6 P5 J4 = h P4 J3 = I3 P3 J2 = Σ2 P2
J1 =
In Tabelle 1 ist die Beziehung zwischen den Zeigern I und J
und den Bool'schen Variablen PQ, P1, P2, ..., Pg gezeigt worini
Pk = 1 heißt k-ter Kanal fehlerhaft
Pfc = O heißt k-ter Kanal nicht fehlerhaft
0 < k < 8
Sowohl Syndromerζeugung als auch Fehlerkorrektur sind kontinuierliche Prozesse. B_, B1, ..., B , B .. werden in den Syndromjenerator 23 eingeschoben, eQ(i) und eQ(j) erscheinen, wenn Bg eingegeben wird. Im allgemeinen werden e (i) und em(j) an den Fehlerkorrektor 27 angelegt, wenn Bg in den Syndromgenerator 23 eingegeben wird.
SA 977 026 9098 38/0 681
_23_ 29Q8373
Erzeugung des ersten Kanalfehlerzeigers durch logische Einrichtungen
Der Index j des ersten fehlerhaften Kanales kann durch Aufsuchen des niedrigsten Wertes von m und j bestimmt werden, für die die Gleichung 21 gilt. Diesen Wert kann man durch logische Einrichtungen oder Zähler finden. In Tabelle 2 ist die Beziehung zwischen den vertikalen und diagonalen Syndromen in herkömmlicher Bool1scher Relation gezeigt, die den kleinsten Wert j so bezeichnet, daß
Svm = 1 und Sdm+j = 1
Ein mit Zählern arbeitendes Verfahren wird später in Verbindung mit dem allgemeineren Fall von T+1 Spuren beschrieben.
SA 977 026 909838/0681
1908373
TABELLE 2
FEHLERZEIGER UND SYNDROMBEZIEHUNGEN
Jo -
Jl =
Sv Sd
mm ■
Sv Sd Sd , ,
m m m+1
J2 - Sv Sd" SO" , , Sd ,τ
m m m+x m+<£
J3 = Sv Sd Sd , Sd -, Sd
m m m+1 m+ Z m+ j
J4 - Sv ScT S~d , Sd" ·_ Sd τ Sd ,
m m m+1 jr+δ m+J ni+4
J5 = m πι m+1 m+2 m+3 m+4
J6 β Sv Sd Sd Sd Sd Sd
πι m m+1 m+2 m+3 m+4
J7 = Sv Sd Sd Sd Sd Sd
J8 = Sv Sd Sd Sd nSd ,Sd
m m m+1 m+2 m+3 ' m+4
SdnH-6
Sdm+7
Sv wird in Tabelle 2 und an anderer Stelle als m-tes vertikales Paritätsprüfsyndrom und Sd als (m+i) diagonales Paritätsprüfsyndrom benutzt.
Korrektur von drei Kanälen mit Kanalfehlerzeiger
ur Decodierung wurde angenommen, daß Fehler auf höchstens dre fehlerhaft bekannte Kanäle beschränkt sind, die durch die Kanalfehlerzeiger i, j und k identifiziert sind, wobei i die kleinste k die höchste Kanalnummer unter den fehlerhaften Ka-
909838/0681
SA 977 026
nälen zwischen O und T ist. Kanal j ist der verbleibende fehlerhafte Kanal, so daß entweder i< j< k oder j = T+1 ist.
Wenn angenommen wird, daß alle Fehler bis zur Bitposition (m-1) in jedem Kanal korrigiert und die Syndromgleichungen an alle korrigierten Muster angepaßt werden, dann kann gezeigt werden, daß das Fehlermuster in der Position m der fehlerhaften Kanäle bestimmt werden kann aus den Syndromen Sd., Sd +T_k und Sv_. Die Gleichungen für diese Syndrome können abgeleitet werden aus den Gleichungen (A11), (A12) und (A13). Bei Elimination der den fehlerfreien Kanälen und den korrigierten Mustern bis zu den Positionen (m-1) entsprechenden bekannten Nullfehlermustern lassen sich die Syndromgleichungen neu schreiben als:
Sdm+i = em(i) (A14)
Sdm+T-k = em(k) (Ä15)
Svm - em(i) θ «*«> Θ em(k) (A16)
Die Gleichungen (A14), (A15) und (A16) ergeben die Fehlermuster:
«mW - Sdm+i (Ä17)
em(k> = 8Wk {A18)
em(j) = Svm Θ Sdm
Die Fehler in den m-ten Positionen können wie folgt korrigiert werden:
Zm(i)Zm(i) 9 em(i) (A20)
Zm(j) = Zm(j) * em(j) (A21)
SA 977 026 9098 3 8/0681
Zm (k) = Zm (k) Φ em(k) (A22)
Wenn nur zwei Kanäle fehlerhaft sind, dann kann jedem fehlerfreien Kanal ein Kanalfehlerzeiger zur Verarbeitung nach obigem Algorithmus zugeordnet werden. Das resultierende Fehlernauster für diesen fehlerfreien Kanal muß Null sein. Damit hat man eine weitere Prüfung von Fehlkorrekturen.
Bevor mit der Korrektur in der nächsten Position fortgefahren wird, müssen die durch diese Korrekturen betroffenen Syndrome modifiziert werden (insbesondere diejenigen, die später noch benutzt werden). Die Modifikation ist durch einen Pfeil vom vorher errechneten Wert eines Syndroms (mit seiner Modifikation) zu seinem neuen Wert dargestellt:
em(i) (A23)
(A24) (A25)
(A26)
Jetzt kann das obige Korrekturverfahren auf die nächste Bitpo sition angewandt werden, indem man den Wert von m um 1 erhöht
.uftreten und Benutzung von Zeigern
Sdm+k «~ em^k ) wenn j <T+1
Sdm+j <- em(3 ), , wenn j <T+1
Sdm+T-j ♦" m (j)
~Sdm+k Θ
-Sdm+j e
~ Sdm+T-j
eiger können extern abgeleitet oder intern erzeugt werden. Zur Ableitung externer Zeiger ist im allgemeinen eine Form der analogen Abfühlung der Wiedergabebedingung der auf einem Kaial aufgezeichneten Daten erforderlich. Einzelheiten dieser \rt gehen über den Rahmen der vorliegenden Erfindung hinaus, ienn externe Zeiger nicht vorhanden sind, sind nach der Erfin-
SA 977 026 9 0 9 8 3 8/0681
dung auch Einrichtungen zur Erzeugung eines oder mehrerer interner Zeiger für die Fehlerkorrektur, ebenso wie beim Vorhandensein von externen Zeigern vorgesehen.
Es sei angenommen, daß ein Datensatz zur späteren fehlerfreien Wiedergabe auf ein Magnetband geschrieben wird. Wenn das Band gestartet ist und der Datensatz bei m = 0 liegt, kann man annehmen, daß keine Fehler vorliegen und alle Zeiger aus sind. Wenn nach einer bestimmten Zeit in einem der Kanäle ein Fehler auftritt und kein externer Zeiger zur Bezeichnung des fehlerhaften Kanales gesetzt wurde, muß ein erster interner Fehlerzeige zur Indentifizierung des Kanales erzeugt werden.
Wenn der erste interne Zeiger einmal erzeugt ist, müßte er zur Korrektur von Fehlern in dem bezeichneten Kanal solange festgehalten werden, wie die Wiedergabe dauert. Eine solche Zuordnung eines Zeigers kann natürlich die Korrekturkapazität des Systems über Gebühr einschränken. Das gilt besonders, wenn in dem bezeichneten Kanal kein Dauerfehler vorliegt. In einigen Systemen ist es daher vorgesehen, einen Zeiger zu löschen, wenn in einem vorgegebenen Intervall nach dem ersten Erkennen eines Fehlers kein weiterer Fehler auftritt.
In diesem hypothetischen Beispiel ist das Auftreten eines Fehlers in einem Kanal angenommen worden. Die Kanalidentität wird entweder durch einen externen oder einen internen ersten Zeiger festgehalten. Daraus folgt, daß das Erkennen eines ersten fehlerhaften Kanales innerhalb der Korrekturmöglichkeit des ystems liegt. Weiterhin wird der erste Zeiger für die Korrektur von Fehlern in dem bezeichneten Kanal eingeschaltet gehalten. Wenn in einem anderen Kanal ein weiterer Fehler auftritt, cann dies ebenfalls durch einen zweiten Zeiger angezeigt werden ler Zeiger zu einem dritten fehlerhaften Kanal kann jedoch nur xtern erzeugt werden.
SA 977 026
909838/0681
2SOI373
Der erste interne Zeiger wird also eingeschaltet, wenn andere Zeiger fehlen. Ein zweiter interner Zeiger kann intern nur aktiviert werden, wenn ein erster Zeiger existiert. Der zweite interne Zeiger wird also ohne Rücksicht darauf erzeugt, ob der erste Zeiger intern oder extern generiert wird.
Obwohl die internen Zeiger für die zuverlässigsten gehalten werden, können höchstens zwei der drei im System des vorgezogenen Ausführungsbeispieles verfügbaren Zeiger intern erzeugt werden. Auch können zwei interne Zeiger nicht gleichzeitig erzeugt werden, weil der zweite interne Zeiger die Existenz eines ersten bekannten Zeigers als Vorbedingung voraussetzt. Die irzeugung interner Zeiger nutzt also den Vorteil der den Kanal erfassenden diagonalen und der vertikalen Paritätsprüfungen.
Erzeugung der Zeiger für den ersten und zweiten fehlerhaften Kanal
/ienn Zeiger auf fehlerhafte Spuren fehlen, wird angenommen, äaß Fehler auf nur eine Spur beschränkt sind. Diese fehlerhafte Spur kann identifiziert und die Fehler können korrigiert verden.
Sin von Null verschiedenes Muster in der m-ten Position einer Spur wird durch ein von Null verschiedenes Syndrom Sv für
. m
lie vertikale Paritätsprüfung bezeichnet. Wenn angenommen wird, laß dieser Fehler in der Spur mit dem unbekannten Index j liegt and andere Spuren fehlerfrei sind, dann ergibt sich aus den leichungen (A11) und (A12)
Svm - em(j) - 1 <A27>
Sdin+j = em(j) β 1' wenn j * T+1 (A28)
SA 977 026
909838/0681
Der Index j ist die kleinste ganze Zahl zwischen O und T, so daß
Sdm+j - Svm = 1 (A29)
Wenn Sv = 1 und Sdm+. ist O für alle j von O bis T, dann ist j=T+1.
In Fig. 6a ist ein erster Fehlerzeigergenerator gezeigt, von dem man einen Index eines ersten fehlerhaften Kanales beim Fehlen von anderen Zeigern erhält. Der Generator besteht aus einem Paar Verriegelungen 401 und 407, die einen Abwärts- Ringzähler 405 starten bzw. stoppen. Die Ausgabe des Ringzählers 405 stellt den Zeiger j dar. Die Verriegelungen 401 und 407 sprechen auf die Syndrome S^m+T und Svm an. Wenn Sdm+T = 1, wird die Verriegelung 401 verriegelt und die Zahl im Zähler 405 = T gesetzt. Für jeden Wechsel in der Bitposition m im Kanal wird der Zählerinhalt um 1 erhöht. Wenn aber im Gegensatz dazu Sv = 1 ist, wird die Verriegelung 407 verriegelt und der Zähler 405 gestoppt. Der Wert im Zähler an dieser Verbindung stellt den Zeiger j dar. Für den Sonderfall, in dem die Verriegelung 407 vor der Verriegelung 401 verriegelt wird, ist der Zählerindex j = T+1.
Das vorgezogene Ausführungsbeispiel des Generators für den zwei ten Fehlerzeiger besteht aus Zählern, die von verschiedenen Syndromen gespeist werden.
In Fig. 6b ist ein zweiter Fehlerzeigergenerator gezeigt, der zum Einsatz kommt, wenn der erste Zeiger auf einen anderen Kanal gerichtet, also auf den Kanal T+1. Der Generator besteht aus ein Paar Ringzählern 4O5 und 406, die entsprechend an den Ausgängen 415 und 417 die Zeiger i und j ausgeben. Die Verriegelung 401 verriegelt den Abwärts-Ringzähler 405 auf den Wert j, während die Verriegelung 407 den Aufwärts-Ringzähler 406 ebenfalls auf dem Wert j verriegelt. Stop- und Leitsignale wer-
SA977026 909838/0681
den über eine gemeinsame Bahn an beide Ringzähler gegeben, wenn das UND-Glied 413 durch die Verriegelung beider Verriegelungen betätigt wird. Der Ausgang 427 des UND-Gliedes 411 zeigt das Verriegeln des zweiten Zeigers auf den Wert j = T+1 nur an, wenn gleichzeitig die Ausgänge der Antivalenzglieder 423 und 425 nicht übereinstimmen. In diesem Fall wird durch die Diskrepanz der Eingänge Sv und Sd . auf den Bahnen 75 und 63 zum Antivalenzglied 423 die Verriegelung 401 verriegelt, während bei einer Diskrepanz der Eingänge Svm und sd m+m_-t auf der Bahn 71 und 63 zum Antivalenzglied 425 die Verriegelung 4O7 verriegelt.
In Fig. 6c ist ein zweiter Fehlerzeigergenerator gezeigt, der ■zum Einsatz kommt, wenn der erste Fehlerzeigergenerator auf den Kanal T+1 gerichtet ist. Dadurch soll ein zweiter Zeiger i !geschaffen werden, wenn der erste Zeiger j = T+1 gegeben ist. Der Generator besteht aus einem Aufwärts-Ringzähler, der durch die Verriegelung 427 auf 0 gesetzt wird, wenn der Eingang Sd_ gleich 1 ist. Der Zähler wird jeweils um 1 erhöht, wenn m um 1 erhöht wird. Am Anfang wird i auf 0 gesetzt und folgt dann dem Wert des Zählers durch Sd . =1 wird der Zähler gestoppt, wobei die Zahl gleich dem Zeigerindex ist.
SA 977 O26 9 0 9 8 3 8/0681

Claims (1)

  1. PATENTAN SP RÜCHE
    Einrichtung zur Codierung und Decodierung von Prüfbits in einem "parallelen Vielkanal-Speichersystem mit einem vertikalen Paritätskanal,
    /'.'dadurch gekennzeichnet daß, zwei weitere Paritätsbits zu diagonal über die Kanäle verteilte Datenbits ermittelt werden,
    daß aus der Fehleranzeige mit Hilfe der Syndromfunktion zu den vertikalen Paritätsbits und den sich in der Fehleranzeige schneidenden Syndromfunktionen zu den diagonalen Paritätsbits ein fehlerhaften Kanal aus der Entfernung auf dem Kanal von einer Fehleranzeige bis zur nächsten bestimmt wird.
    2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die zwei weiteren Paritätsbits entweder in zwei weiteren Redundanzkanälen oder in einem weiteren Redundanzkanal und in einem in regelmäßigen Abständen quer zur Kanalrichtung aufgezeichneten Prüfbyte, oder aber in zwei in regelmäßigen Abständen quer zur Kanalrichtung aufgezeichneten Prüfbytes gespeichert werden.
    3. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Prüfbitdecodierer (9) eine Kette von über EXCLUSIV-ODER Gliedern (193 bis 205) gekoppelte bistabile Kippschaltungen (FFI bis FF7) aufweist, wobei an den anderen Eingang der EXCLUSIV-ODER Glieder jeweils ein Bitsignal B ..(Q) bis BmJ^.(7) eines quer zur Kanalrichtung auf gezeichneten Bytes angelegt werden.
    4. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß der Prüfbitdecodierer (19) die folgenden Einrichtungen aufweist:
    SA 977 O26 909838/0681
    - einen aus einem Schiebregister aufgebauten Diagonal-Syndromgenerator (23, Fig. 4),
    - einen aus einem Schieberegister aufgebauten Syndromprozessor (24) ,
    - eine vom Syndromprozessor und von einem Zeiger (IO bis 17) gesteuerte Logikeinrichtung (26) zur Erzeugung eine Fehlerkorrektursignales (e (i) ) und
    - einen vom Fehlerkorrektursignal gesteuerten Fehlerkorrigier er (27) ,
    - wobei das Fehlerkorrektursignal und ein weiterer Zeiger
    (J1 bis J7) einer weiteren Logikeinrichtung (22) zugeführt werden, die den Syndromprozessor (24) steuert.
    Einrichtung nach Anspruch 1, gekennzeichnet durch einen Zähler (405, 406, Fig. 6), dessen Startwert auf die niedrigste Kanalnummer eingestellt wird, durch Einrichtungen (401, 4O7) zum Hinauf- oder Herunterzählen des Zählers, wobei diese Einrichtungen von den ermittelten Syndromen gesteuert werden, wobei der Zählwert nach dem Feststellen eines Fehlers mit Hilfe der entfernten diagonalen und vertikalen Syndrome erhöht wird und nach dem Feststellen eines Fehlers mit Hilfe der nahen diagonalen und vertikalen Syndrome erniedrigt wird, derart, daß der Zählwert bis zur nächsten Feststellung eines Fehlers mit Hilfe eines diagonalen und schneidenden vertikalen Syndroms verändert wird und somit nach Stillstand des Zählers der Zählstand eine Zeigerinformation darstellt.
    Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß von zwei einen Fehler anzeigenden Syndromen, dasjenige ausgewählt wird, daß sich am nächsten zu einem als fehlerhaft bekannten Kanal befindet.
    026 909838/0681
    7. Einrichtung nach Anspruch 5, dadurch gekennzeichnet, daß der Zählstand als Funktion der Bitpositionsdifferenz zwischen nicht Übereinstimmungen in den Paritätsbits der diagonalen und vertikalen Syndrome verändert wird.
    8. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, daß die Parität derjenigen Syndrome umgekehrt wird, die sich in einem Fehler eines als fehlerhaft bekannten Kanals schneiden.
    sä 977 026 §09838/0681
DE19792908373 1978-03-07 1979-03-03 Einrichtung zur codierung und decodierung von pruefbits Granted DE2908373A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/884,463 US4205324A (en) 1977-12-23 1978-03-07 Methods and means for simultaneously correcting several channels in error in a parallel multi channel data system using continuously modifiable syndromes and selective generation of internal channel pointers

Publications (2)

Publication Number Publication Date
DE2908373A1 true DE2908373A1 (de) 1979-09-20
DE2908373C2 DE2908373C2 (de) 1989-05-11

Family

ID=25384679

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19792908373 Granted DE2908373A1 (de) 1978-03-07 1979-03-03 Einrichtung zur codierung und decodierung von pruefbits

Country Status (4)

Country Link
JP (1) JPS54118748A (de)
DE (1) DE2908373A1 (de)
FR (1) FR2419543B1 (de)
GB (1) GB2016178B (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3040004A1 (de) * 1979-10-24 1981-05-07 Matsushita Electric Industrial Co., Ltd., Kadoma, Osaka Verfahren und vorrichtung zum codieren von pruefworten geringer redundanz aus ursprungsdaten
DE3216649A1 (de) * 1981-05-07 1982-11-25 Victor Company Of Japan, Ltd., Yokohama, Kanagawa Verfahren zum aufzeichnen von digitalen signalen auf mehrfachspuren eines aufzeichnungsbandes

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1212437A (en) * 1983-03-04 1986-10-07 Radyne Corporation Data transmission system with error correcting data encoding
GB2149156B (en) * 1983-11-04 1987-10-21 Gen Electric Co Plc A method of encoding and decoding
JPH07107781B2 (ja) * 1986-02-24 1995-11-15 松下電器産業株式会社 Ramのアドレス信号発生回路
US4908826A (en) * 1988-01-05 1990-03-13 Digital Equipment Corporation Stored data error correction system
JP2003317400A (ja) * 2003-02-14 2003-11-07 Fujitsu Ltd 磁気テープ装置の制御装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1318250A (en) * 1969-10-29 1973-05-23 Honeywell Inc Encoding detecting and or correcting of data

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3387261A (en) * 1965-02-05 1968-06-04 Honeywell Inc Circuit arrangement for detection and correction of errors occurring in the transmission of digital data
FR1580315A (de) * 1968-05-27 1969-09-05
US3958220A (en) * 1975-05-30 1976-05-18 International Business Machines Corporation Enhanced error correction
US4044328A (en) * 1976-06-22 1977-08-23 Bell & Howell Company Data coding and error correcting methods and apparatus
US4201976A (en) * 1977-12-23 1980-05-06 International Business Machines Corporation Plural channel error correcting methods and means using adaptive reallocation of redundant channels among groups of channels

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1318250A (en) * 1969-10-29 1973-05-23 Honeywell Inc Encoding detecting and or correcting of data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A.M. PATEL, S.J. HOUG "Optimal rectangular code for high density magnetic tapes", IBMJ Res. Develop., Nov. 1974, S.579-588 *
H.LOUIS, W.SPRUTH "Safeguarding of stored records against total loss", IBM Techn.Discl. Bull., Vol.14, No.12, Mai 1972, S.3846 *
P. PRUSINKIEWICZ, S. BUDKOWSKI "A double track error-correction code for magnetic tape", IEEE Trans. on Computers, Juni 1976, S.642-645 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3040004A1 (de) * 1979-10-24 1981-05-07 Matsushita Electric Industrial Co., Ltd., Kadoma, Osaka Verfahren und vorrichtung zum codieren von pruefworten geringer redundanz aus ursprungsdaten
DE3216649A1 (de) * 1981-05-07 1982-11-25 Victor Company Of Japan, Ltd., Yokohama, Kanagawa Verfahren zum aufzeichnen von digitalen signalen auf mehrfachspuren eines aufzeichnungsbandes

Also Published As

Publication number Publication date
DE2908373C2 (de) 1989-05-11
FR2419543B1 (fr) 1986-08-22
JPS6343833B2 (de) 1988-09-01
GB2016178A (en) 1979-09-19
FR2419543A1 (fr) 1979-10-05
JPS54118748A (en) 1979-09-14
GB2016178B (en) 1982-05-06

Similar Documents

Publication Publication Date Title
DE2853892C2 (de)
DE3125048C2 (de)
DE2421112C2 (de) Speicheranordnung
DE2357004C3 (de) Verfahren und Einrichtung zur Fehlerkorrektur für Daten
DE2921387A1 (de) Vorrichtung zur ermittlung von fehlerhaften sektoren und zuweisung von ersatzsektoren in einem plattenspeicher
DE2427463C3 (de)
DE2430464A1 (de) Einrichtung zur fehlergesicherten datenuebertragung
DE2260850A1 (de) Fehlerkorrektursystem
DE2132565A1 (de) Umsetzer
DE1295246B (de) Schaltungsanordnung zur fehlergesicherten Wiedergabe von parallel dargestellten digitalen Signalen
DE2622184A1 (de) Fehlerkorrekturverfahren
DE2364788A1 (de) Verfahren und vorrichtung zur fehlerkorrigierenden datenuebertragung oder -speicherung
DE1961554A1 (de) Fehlerkorrigierendes Sichersystem
DE2157829C2 (de) Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern
DE2536625C2 (de) Paritätsprüfschaltung für ein binär zählendes Register
DE2341952A1 (de) Verfahren und vorrichtung zur datenpruefung
DE2916619A1 (de) System zum uebertragen binaerer daten ueber eine anzahl von kanaelen
DE3539182A1 (de) Digitales datenwiedergabesystem
DE2320354C2 (de) Schaltungsanordnung zur Erkennung und Korrektur von Fehlern in Bitgruppen
DE2908373A1 (de) Einrichtung zur codierung und decodierung von pruefbits
DE2816771A1 (de) Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern
DE2053836A1 (de) Verfahren und Vorrichtung zur Korrek Datengruppen
DE2655653C2 (de) Anordnung zur Feststellung der richtigen Zuordnung von Adresse und Speicherwort in einem wortorganisierten Datenspeicher
DE2625365C3 (de) Vergleichseinrichtung fur eingegebene Daten
DE1293188B (de) Schaltungsanordnung zur UEbertragung von Pruefinformationen mit vorbestimmter Paritaet in Datenverarbeitungsanlagen

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8128 New person/name/address of the agent

Representative=s name: KINDERMANN, M., PAT.-ASS., 7030 BOEBLINGEN

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee