DE2608435A1 - Vorrichtung zur fehlererkennung und fehlerkorrektur in digitalen datenverarbeitungsanlagen - Google Patents

Vorrichtung zur fehlererkennung und fehlerkorrektur in digitalen datenverarbeitungsanlagen

Info

Publication number
DE2608435A1
DE2608435A1 DE19762608435 DE2608435A DE2608435A1 DE 2608435 A1 DE2608435 A1 DE 2608435A1 DE 19762608435 DE19762608435 DE 19762608435 DE 2608435 A DE2608435 A DE 2608435A DE 2608435 A1 DE2608435 A1 DE 2608435A1
Authority
DE
Germany
Prior art keywords
error
track
data
vector
parity
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.)
Withdrawn
Application number
DE19762608435
Other languages
English (en)
Inventor
William H Bunker
Juan A Rodriguez
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.)
Storage Technology Corp
Original Assignee
Storage Technology Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Storage Technology Corp filed Critical Storage Technology Corp
Publication of DE2608435A1 publication Critical patent/DE2608435A1/de
Withdrawn 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
    • 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)
  • Glass Compositions (AREA)

Description

[ fc. PATENTANWÄLTE
SCHIFF ν. FÜNER STREHL SCHÜBEL-HOPF EBBINoHAUS
MÖNCHEN 9O, MARIAHILFPLATZ 2*3 POSTADRESSE: D-8 MÜNCHEN Θ5, POSTFACH 95 OI 6O
Storage Technology Corporation
- DlPU. CHEiM. DH. OTMAR DITTMANN (t 1975)
KARL LUDWIG SCHIFF DIPL. CHEM. DR. ALEXANDER V. FÖNER DIPU INS. PEiTER STREHL DIPU CHEM. DR. URSULA SCHO&EU-HUPF DIPL. INU. DIETER EbBINSHAUS
telefon (obs) 40 2os4 telex 5-23 665 auro d
auromarcpat München
Priorität: 3. April 1975, USA, Nr. 564,741
DA-Kl503
zur Fehlererkennung und Fehlerkorrektur in digitalen Datenverarbeitungsanlagen
Die Erfindung betrifft eine Vorrichtung der im Oberbegriff des Patentanspruchs 1 genannten Axiz, insbesondere eine Vorrichtung und ein in dieser Vorrichtung verkörpertes Verfahren zur Fehlererkennung und Fehlerkorrektur in einer einzigen Datenspur und zur Fehlerkorrektur in zwei erkannten fehlerhaften Datenspuren. Da jedes Datenbit wesentlich zur Bedeutung der codierten Information beiträgt/kann eine fehlerhafte Erkennung und bzw. oder Verarbeitung auch eines einzigen Datenbits zu schwerwiegenden Fehlern führen. Angesichts der ausserordentlich hohen Anzahl der einzelnen zu verarbeitenden Bits ist das Auftreten von Fehlern bei einem oder mehreren Bits statistisch durchaus wahrscheinlich.
.Um dem Auftreten bestimmter Fehlerarten nach Möglichkeit zu begegnen, sind zahlreiche Korrekturverfahren entworfen worden. So werden die Daten häufig redundant verarbeitet und unabhängig voneinander erhaltene Ergebnisse miteinander verglichen. Dieses Verfahren ist jedoch sehr unwirtschaftlich. Statt einer Datenverarbeitungsanlage werden in der Regel mindestens zwei Systeme benötigt. Andere Versuche, dem Auftreten von Fehlern entgegen-
. S09Ö/.3/071 a
26Q843S
zuwirken,sehen die Verwendung eines FehTsrp ruf codes vor. Diese Prüfcodes sind zum Teil jedoch so komplex, dass sie selbst ■eine unangemessen grosse digitale Datenmenge benötigen.
In jüngerer Zeit ist eine Aufzeichnungsstruktur zur gruppencodierten Aufzeichnung mit einer Speicherdichte von 2461 bit·cm vorgeschlagen worden. Das Format dieser Aufzeichnungsnorm erfordert eine aus sieben Datenzeichen und einem Fehlerprüfcodezeichen bestehende Datengruppe. Jedes dieser sieben Datenzeichen besteht aus einem Byte zu je 8 bit und einem Paritätsbit. Für jedes Bit ist eine Spur vorgesehen, so dass die Aufzeichnung also neunspurig erfolgt. Das Fehlerkorrekturzeichen ist aus einem Polynom siebenter Ordnung gebildet. Die Koeffizienten jedes Terms dieses Polynoms enthalten eines der Datenzeichen. Jedes der Datenzeichen D1-D7 ist also Koeffizient einer der Polynomterme. Die Koeffizienten werden den in fallender Ordnung angeordneten Polynomtermen in steigender Ordnung zugeordnet. Durch Addition der so eineinander zugeordneten Koeffizienten und Polynomterme und Multiplikation .der erhaltenen Summe mit einem Generatorpolynom wird dann schliesslich das Fehlerk<x:skturzeichen erzeugt. Während aber die mathematische Beziehung zwischen dem Fehlerkorrekturzeichen und der in den Datenbytes codierten Information bekannt ist, sind weder die Nutzbarmachung des so abgeleiteten Fehlerkorrekturzeichens noch Mittel zu seiner Nutzbarmachung offenkundig geworden.
Der Erfindung liegt die Aufgabe zugrunde, für das zuvor beschriebene Gruppencodierungsformat für die Speicherdichte von 2461 bit-cm" (entsprechend 6250 Zeichen je Zoll), das Vornormstandard hat, eine Vorrichtung und ein Verfahren zur Fehlererkennung und Fehlerkorrektur unter Verwendung des der Vornorm entsprechenden Fehlerprüfcodes zu schaffen, bzw. ganz allgemein eine Vorrichtung und ein Verfahren zur Fehlererkennung und Fehlerkorrektur für eine Spur einer mehrspurigen Datengruppenspeicherung unter Verwendung
609S43/07U
eines Fehlerkorrekturzeichens und zur Korrektur von zwei fehlerhaften Spuren einer solchen Datengruppe zu schaffen, wobei diese fehlerhaften Spuren durch Markierungswerte kenntlich gemacht sind.
Zur Lösung dieser Aufgabe wird eine Vorrichtung vorgeschlagen, -die erfindungsgemäss die im Patentanspruch 1 genannten Merkmale aufweist.
Zusammengefasst schafft die Erfindung also Mittel zum Erkennen und Korrigieren von Fehlern in einer oder in zwei Spuren einer aus mehreren Bits zusammengesetzten und in mehreren Spuren angeordneten Datengruppe unter Verwendung eines Fehlerkorrekturzeichens. Die einlaufende Datengruppe wird gleichzeitig gespeichert und auf einen Fehlerkorrekturzeichengenerator gegeben. In diesem Generator wird auf jedes Datenbyte ein Operator B in der Heise zur Einwirkung gebracht, dass ein Fehlerkorrekturzeichen erzeugt wird. Durch erneute Anwendung des Operators B wird das zunächst abgeleitete Fehlerkorrekturzeichen zu einem neuen Zeichen umgesetzt, das als Fehlervektor E bezeichnet wird. Wenn alle eingelaufenen Datenzeichen richtig sind, sind alle Datenbits des Fehlervektors E Null. Der Fehlervektor kann der Einwirkung des Operators B regressiv unterzogen werden und sequenziell mit einem lokal erzeugten Paritätsvektor Pn verglichen werden. Tritt eine fehlerhafte Spur auf, so wird sie durch die Anzahl der Zyklen des Operators B erkannt, die erforderlich sind, um einen Fehlervektor zu erhalten, der dem Paritätsvektor identisch ist* Treten mehr als nur eine fehlerhafte Spur auf» eo werden die einzelnen Spuren durch Markierungen gekennzeichnet und eowohl die Spuren als auch die Abstände zwischen den Spuren festgestellt. Ausserdem wird ein Divisor erzeugt» der auf die zuvor erhaltene Kombination des Fehlervektors und des Paritätsvektors einwirkt. Der erhaltene Dividend enthält einen Fehlefvektor für die niedrigstwertige
|6U843b
Spur und wird über eine Korrekturmatrix zur Korrektur dieser Spur verwendet. Der Fehlervektor der niedrigstwertigen Spur wird ausserdem mit einer lokal erzeugten Parität kombiniert und liefert dadurch einen Fehlerkorrekturvektor für die höchstwertige Spur. Dieser wird auf eine Korrekturmatrix zur Einwirkung gebracht und dient über diese der Inversion der fehlerhaften Datenbits in der jeweiligen Spur, die vom Speicherregister mit fehlerhafter Information eingelaufen ist.
Ein Aspekt der Erfindung zur Lösung der gestellten Aufgabe liegt also in der Schaffung einer Vorrichtung zur byteweisen Einwirkung auf eingelaufene Datenzeichen zur Erzeugung eines Fehlerkorrekturzeichens unter Anwendung eines an sich bekannten Polynoms. Das dabei erhaltene Fehlerkorrekturzeichen wird dann durch einen Operator in einen als "Fehlervektor" bezeichneten Vektor überführt, der dann seinerseits regressiv der Einwirkung desselben Operators B ausgesetzt wird. Das Ergebnis jeder i-ten Operation stellt einen Fehlervektor eni dar, der bitweise mit einem lokal erzeugten, die gerade Parität prüfenden Paritätsvektor Pn verglichen wird. Eine Übereinstimmung zwischen beiden· Vektoren zeigt das Vorliegen eines Fehlers an. Fehlen die für zwei oder mehr Spuren gesetzten Markierungen, so folgt eindeutig, dass der festgestellte Fehler in der i-ten Spur liegt. Der Fehlervektor eni wird über eine Korrekturmatrix zur Korrektur der fehlerhaften Spur verwendet. Liegen zwei Spurenmarkierungen vor, so unterliegt der Vektor en der Operation i-mal, wobei i gLeich der Stelle der höchstwertigen Spur ist. Die Summe des Fehlervektors und des Paritätsvektors wird anschliessend durch einen Term dividiert, der durch den Abstand zwischen den fehlerhaften Spuren bestimmt ist. Ausserdem werden der Fehlervektor eni für die höchstwertige Spur und der Fehlervektor enj für die niedrigstwertige Spur erzeugt und auf eine Datenkorrekturmatrix zur Einwirkung gebracht, um so
609843/0712
die fehlerhaften Spuren i und j zu korrigieren.
Die Erfindung ist im folgenden anhand eines Ausführungsbeispiels in Verbindung mit den Zeichnungen näher beschrieben. Es zeigen:
Fig. 1' das Blockschaltbild eines Ausführungsbeispiels der Erfindung;
Fig. 1a eine Konkordanzliste/ die die nachfolgenden Figuren angibt, in denen die in Fig. 1 gezeigten Baugruppen im einzelnen dargelegt sind und
Figuren
2 bis 13 schematische Schaltbilder spezieller
logischer Baugruppen und deren Verknüpfung in der in Fig. 1 gezeigten Vorrichtung.
Ein Ausführungsbeispiel der Vorrichtung der Erfindung zum Erkennen und Korrigieren von Fehlern in digitaler Information ist in Fig. 1 dargestellt. Von einer Quelle, beispielsweise einem Band oder einer Platte, laufen digitale Signale oder Bits ein. Sie werden in an sich bekannten Eingangsstufen verarbeitet, die gebräuchlicherweise einen Analog-Digital-Umsetzer, eine Normierungsstufe und einen Formatprüfer enthalten." Nach dieser gebräuchlichen und an sich nicht erfindungswesentlichen Eingangsverarbeitung werden die einlaufenden Signale bitweise auf einen Einlaufdatenspeicher 2 und einen Fehlerkorrekturzeichengenerator 3 gegeben. Vorzugsweise ist ein Spurenfolgeinverter 4 zwischen die Einlaufsignalquelle und den Fehlerkorrekturzeichengenerator geschaltet.
Im Rahmen dieser Beschreibung wird davon ausgegangen, dass
609843/07ia
die einlaufenden Daten einer bestimmten Formatnorm bzw. einem bestimmten Formatstandard entsprechen/ beispielsweise dem eingangs beschriebenen und für Magnetbandaufzeichnungen für den Informationsaustausch vorgeschlagenen, einer Aufzeichnungsdichte von 2461 bit-cm (6250 bpi) entsprechenden Norm, die die ANSI-Vornbrmkennzeichnung X3B1-665 erhalten hat. Diese Norm soll ein Format zur neunspurigen Aufzeichnung auf 12,7 mm breitem Magnetband schaffen. Dieses Band, die zugehörigen Kommunikationssysteme und das in diesem Rahmen verwendbare Gerät, das in Verbindung mit der genannten Aufzeichnungsnorm verwendbar sein soll, unterliegt dem US-amerikanischen Normblatt X3.4-1968 (mit Anhängen) für den Informationsaustausch. Das in diesem Ausführungsbeispiel angenommene Format bezieht sich auf eine gruppencodierte Aufzeichnung mit einer Dichte von 2461 bit'crn" und eine aus sieben Datenzeichen und zusätzlich einem Fehlerkorrekturzeichen bestehende Datengruppe. Jedes dieser Datenzeichen enthält ein Byte, das seinerseits aus acht Bit besteht, von denen jedes auf einer von insgesamt acht aus neun zueinander parallelen Bandspuren aufgezeichnet ist. In der neunten Spur ist ein Paritätsbit für jedes Byte aufgezeichnet, und zwar auch für das Fehlerkorrekturzeichenbyte.
Wie zuvor bereits beschrieben, ist das Fehlerkorrekturzeichen direkt mit dem Wert der Datengruppe verknüpft. Es sei angenommen, dass jedes der Datenzeichen D1-D7 ein Polynomkoeffizient sei, und zwar in folgender Weise:
X7D! + X6D2 + X5D3 + X4D4 + X3D5 + X2D6 + X1D7 (1)
Das Polynomzeichen E wird aus den Datenpolynomkoeffizienten D1-D7 unter Verwendung eines Generatorpolynoms G berechnet, wobei G
X0 + X3 + X4 + X5 + X8 (2)
609843/0711
ist, so dass folgender Ausdruck erhalten wird:
E = (X7DI + X6D2 + X5D3 + X4D4 + X2D5 + X2Dg+
X1D7)G (3)
Unter Zugrundelegung der zuvor beschriebenen mathematischen Beziehungen lässt sich ein logisches Format angeben, das die Erzeugung des Fehlerkorrekturzeichenterms E ermöglicht. Zum leichteren Verständnis der Erfindung sei weiterhin davon ausgegangen und darauf hingewiesen, dass die Spurzahlen, denen die Polynomkoeffizienten zugeordnet sind, nicht notwendigerweise mit der Potenz des Polynomterms übereinstimmen. Für das hier beschriebene Ausführungsbeispiel gelte beispielsweise folgende Zuordnung:
Polynomterm Spurindex
X1 5
X4 7
X7 3
X3 2
X6 ' 1 X0 . 0
X2 6
X5 4
Aus Gründen der verständlichen Darstellung ist der dem Polynomterm mit dem niedrigsten Koeffizienten zugeordnete Spurterm bzw. die diesem zugehörige Spur als die höchstwertige Spur bezeichnet..Sollen zwei Spuren gegenüber den übrigen Spuren hervorgehoben werden, so wird der Spurindex bzw. die Spur, die mit dem Polynomterm mit dem höheren Koeffizienten zugeordnet ist, als "niedrigstwertige* Spur bezeichnet.
Wenn die acht Bits eines beliebigen Bytes Dn auf den Spuren
609843/0711
I b Ü 8 4 3 b
ta-t8 gleichzeitig auf den Fehlerkorrekturzeichengenerator (Fig. 1) gegeben werden, berechnet der Generator ein Fehlerkorrekturzeichen, das alle zu diesem Zeitpunkt verarbeiteten Bytes DI-Dn kumulativ abbildet. Nach der Verarbeitung von sieben Bytes ist also das am Ausgang des Fehlerkorrekturzeichengenerators 3 auftretende Signal das Fehlerkorrekturbyte selbst. . Die Einwirkung einer einzigen weiteren dieser Operationen auf das Fehlerkorrekturzeichen liefert ein Byte, dessen Bits sämtlich Null sind, wenn das Fehlerkorrekturzeichen aus fehlerfreien Datenzeichen erzeugt worden ist. Das Zeichen E d:.ent also der Prüfung, ob sämtliche Bits der eingelaufenen Zeichen fehlerfrei sind.
Die am Ausgang des Generators 3 auftretenden Signale werden dann byteweise parallel auf einen Fehlerkorrekturmustergenerator 5 gegeben. Die im Fehlerkorrekturmustergenerator ausgeführte Operation ist im wesentlichen die Umkehrung der im Fehlerkorrekturzeichengenerator 3 ausgeführten Operation. Bringt also der Fehlerkorrekturzeichengenerator 3 den Operator B einmal auf jedes eingelaufene Informationsbyte zur Einwirkung, so bringt der Fehlerkorrekturmustergenerator den Operator B auf die Ausgangsgrösse E des Fehlerkorrekturzeichengenerators -i-mal zur Einwirkung und erzeugt so einen Vektor
EB"1 (4)
Auch die neunte Spur, die Paritätsspur P, wird auf den Einlaufdatenspeicher 2 gegeben. Gleichzeitig gelangt sie auf einen lokalen, gerade Parität erzeugenden Paritätsgenerator 6. Der Paritätsgenerator 6 erzeugt eine Reihe von Bits, und zwar je ein Bit je Byte. Diese Bits erzeugen eine gerade Parität für jedes Byte und deren zugeordnetes, ursprünglich ungerade Parität erzeugendes Bit. Die Paritätsbits für jede der Spuren 1 bis 8 werden jeweils zusammen mit den einzelnen Bits jeweils eines 8 bit-Zeichens, das
609843/0711
am Ausgang des Fehlerkorrekturmustergeneiators 5 auftritt, jedoch in umgekehrter Reihenfolge zu diesen, auf die Eingänge einer Vektorkombinationsmatrix 7 gegeben. Auf diese Weise wird das achte Bit der erzeugten Parität mit dem ersten Bit des Fehlerkorrekturmustergeneratorzeichens kombiniert, das siebente Paritätsbit mit dem zweiten Zeichen u.s.w. Das mit KB"1 bezeichnete Ausgangssignal des Fehlerkorrekturmustergenerators wird also termweise mit der lokal erzeugten Parität Pn ergänzt. Die so erhaltene termweise Kombination wird auf ein Vektorspeicherregister 8 gegeben. Das Register kann ein gebräuchliches Schieberegister mit einer Aufnahmekapazität für acht seriell eingeschriebene Bytes zu je acht Zeichen sein. Dadurch können also die acht Ausgangsgrössen des Fehlerkorrekturmustergenerators sequenziell und termweise mit dem örtlich erzeugten Paritätsvektor Pn verglichen werden und die Ergebnisse dieses Vergleichs sequenziell im Register 8 gespeichert werden.
Von einer in den Figuren nicht gezeigten Schiebeimpulsquelle werden Schiebesignale auf den Fehlerkorrekturmustergenerator 5 in der Weise gegeben, dass dieser zeitlich koordiniert die vom Fehlerkorrekturzeichengenerator 3 einlaufenden Bytes verarbeiten kann. Die Schiebesignale werden auch auf einen Zähler 9 gegeben, dessen Ausgangssignale sowohl auf die als Vergleicher wirkende Vektorkombinationsmatrix 7 als auch auf weitere Folgekreise, die weiter unten beschrieben sind, gegeben werden. Die Vektorkombinationsmatrix 7 weist ausserdem logische Verknüpfungen auf, die ein Schiebeendsignal erzeugen, sobald alle eingelaufenen acht Bytes sequenziell mit dem lokal erzeugten Paritätsvektor Pn verglichen worden sind oder wenn die Addition eines der Fehlervektoren mit dem Paritätsterm ein Nullbyte liefert, dessen Stellen alle den logischen Pegel L besitzen. Das so erzeugte Schiebeendsignal wird dann auf den Schiebesignalgenerator gegeben, so dass die Verschiebung im
GQ9843/O712
Fehlerkorrekturmustergenerator 5 eingestellt wird.
Die in Fig. 1 gezeigte Vorrichtung enthält weiterhin ein in Digitalanlagen heute an sich gebräuchliches Fehleranzeigesystem 10, das Fehleranzeigen aus den verschiedensten Systembereichen aufnimmt. Unter einer "Fehleranzeige" oder einer "Fehlermarkierung" ist dabei lediglich ein Signal, im einfachsten Fall ein einzelnes Fehlerbit, zu verstehen, das das Auftreten eines bestimmten Fehlers bezeichnet und signalisiert. Der Fehler kann dabei sowohl elektrischer als auch mechanischer Art sein und beispielsweise auf Fehler des Lesewandlers beim Abtasten der aufgezeichneten Datenbits, auf eine Phasenverschiebung der Bits in einer oder mehreren Aufzeichnungsspuren oder auf beliebige andere Ursachen zurückführbar sein. Der Systemtechniker kann durch solche Fehleranzeigen prinzipiell jede beliebige mögliche Fehlerart kennzeichnen und zur Anzeige bringen, von der er meint, dass sie im Fehlererkennungssystem berücksichtigt werden sollte. So wird ein auf das Fehleranzeigesystem geschaltetes Eingangssignal aus der Datenkorrekturmatrix 11 abgeleitet, die die Ausgangsstufe des in Fig. 1 gezeigten Systems zur Fehlererkennung und Fehlerkorrektur bildet. Andere Fehleranzeigen können aus der Eingangsstufe, den Analog-Digital-Umsetzern oder den Entzerrern abgeleitet werden. Vorzugsweise sind alle Fehleranzeigen so ausgebildet, dass sie die jeweilige Spur oder die jeweiligen Spuren des Bandes kennzeichnen, mit denen der aufgetretene und festgestellte Fehler verbunden ist. Das Fehleranzeigesystem kann also eine einfache Decodiermatrix sein, die einlaufende Signale auf einen eindeutig zugeordneten Ausgang leitet. Dieser Ausgang entspricht dann der oder den Spuren, die als fehlerhaft erkannt worden sind. In dem hier beschriebenen Ausführungsbeispiel ist ein Spurenabstandsprüfer 12 mit acht Eingangskanälen versehen, von denen jeder eindeutig einer Datenspur zugeordnet ist. Die Eingangskanäle des Spurenabstandsprüfers 12 werden
SC9843/0712
2ÜU8435
vom Fehleranzeigesystem 10 beaufschlagt. Gleichzeitig sind die acht Ausgangskanäle des Fehleranzeigesystems 10 auf zugeordnete Eingangsanschlüsse eines Spurenprüfers 13 geschaltet. Auf den Spurenprüfer 13 werden ausserdem der im Spurenabstandsprüfer 12 ermittelte Spurabstand und das Ausgangssignal des Binärzählers 9 gegeben. Das Ausgangssignal des Binärzählers 9 bildet die Anzahl der Stellenverschiebungen oder Operationen ab, die während der Verarbeitung eines bestimmten Datenzeichens im Fehlerkorrekturmustergenerator 5 ausgeführt worden sind.
Wenn der Phasenabstandsprüfer 12 einen Zustand erreicht hat, in dem der Phasenabstand berechnet werden kann, gelangt ein Steuersignal auf den Zähler 14, das dienen anhält. Das Ausgangssignal des Zählers 14 ist inzwischen auf einen Divisorgenerator 15 gelangt, um dort die sequenzielle Ausgabe aus einem Festwertspeicher im Divisorgenerator 15 in das Divisionswerk 16 zu steuern.
Die kombiniert auf den Spurenprüfer 13 auflaufenden Eingangssignale bewirken, dass auf den Ausgangsanschlüssen des Spurenprüfers 13 ein Signal· auftritt, das die Anzahl der Spuren abbildet, die die beiden durch die Fehleranzeige als fehlerhaft gekennzeichneten Spuren voneinander trennt ("Spurenabstand11). Dieser Spurenabstand sei als i-j bezeichnet. Der Spurenabstand wird auf den Divisorgenerator gegeben, um den Term im Festwertspeicher zu bestimmen, der für das Divisionswerk 16 auszulesen ist. Gleichzeitig wird ein die niedrigstwertige Spur j kennzeichnendendes Signal (LST) auf eine Korrekturvektormatrix 17 für die Korrektur der niedrigstwertigen Spur gegeben.
In der weiter unten näher beschriebenen Weise dient das vom Divisionswerk 16 erzeugte Ausgangssignal der Identifizierung eines mit der niedrigstwertigen fehlerhaften
609843/0713
Spur j verbundenen Fehlervektors. Dieses Signal gelangt auf die Korrekturvektormatrix 17 für die niedrigstwertige Spur und gleichzeitig auf das Additionswerk 18, wo es termweise mit der lokal erzeugten Parität Pn additiv verknüpft wird. Das Ergebnis dieser Verknüpfung ist ein Fehlervektor eni für die höchstwertige Spur. Dieser Fehlervektor eni gelangt auf die Fehlerkorrekturvektormatrix 19 für die höchstwertige Spur, und zwar gleichzeitig mit -dem Ausgangssignal des Zählers 9, der die höchstwertige Spur anzeigt und kennzeichnet. Entweder von einer oder von beiden der Korrekturvektormatrizen 19 und 17 wird dann bitparallel ein 8 bit-Korrekturterm auf die Datenkorrekturmatrix 11 gegeben. Beim Auftreten der Terme auf den Ausgangskanälen beider Korrekturvektormatrizen 19 und 17 gelangen beide Korrekturterme gleichzeitig auf die Datenkorrekturmatrix 11. Wie dies auch der Fig. 1 entnehmbar ist, erhält die Datenkorrekturmatrix 11 byteweise sämtliche Bits jedes einzelnen Datenbytes Dn. Die Bytes werden in einem Register in der Fehlerkorrekturstufe zwischengespeichert und mit den Ausgangssignalen der Matrizen 17 und 19 zur Korrektur der fehlerhaften Spuren verknüpft. Die korrigierten Spuren treten dann, unter Steuerung durch logische Verknüpfungsglieder, auf acht zueinander parallelen Ausgangskanälen am Ausgang der Datenkorrekturmatrix 11 auf. Sie werden dann bitparallel als sequenzielle Datenbytefolge zur gebräuchlichen und in den Figuren nicht gezeigten Weiterverarbeitung übertragen.
Eine Paritätskorrekturstufe 20 zur Korrektur der Paritätsspur weist Eingangsanschlüsse auf, auf denen die Ausgangssignale der Vektorkombinationsmatrix 7, in der der Fehlervektor und der Paritätsvektor addiert werden, einlaufen. Auf weiteren Eingängen der Paritätskorrekturstufe 20 .laufen Signale ein, die aktuell in das Einlaufdatenspeicherregister 2 eingeschriebene Parität abbilden, die die vom Einlaufdatenspeicherregister 2.erzeugte gerade Parität
26UH435
abbilden, die die vom Paritätsgenerator 6 erzeugte gerade Parität abbilden, ein Signal, das die niedrigstwertige und die höchstwertige Datenspur und den Fehler anzeigt, und ein Signal, das aus den Fehleranzeigesignalen abgeleitet ist und anzeigt, ob Fehler in drei oder mehr Spuren vorliegen. Das Ausgangssignal der Paritätskorrekturstufe 20 gelangt dann auf den Spurenabstandsprüfer 12. Gleichzeitig tritt auf einem Ausgangskanal der Paritätskorrekturstufe die korrigierte Paritätsspur auf.
Wie oben angedeutet, wird das Fehlerkorrekturcodezeichen unter Verwendung des Generatorpolynoms G gemäss Ausdruck (2) aus dem Datenpolynom D1-D7 berechnet. Das lokal erzeugte Paritätssignal Pn enthält Information sowohl über die erhaltenen Datensignale als auch über die mit jedem Datenbyte verbundenen Paritätsbits. Durch die Einwirkung bestimmter mathematischer Operationen auf die eingelaufenen Daten werden byteweise ein Fehlervektor E und Fehlerkorrekturzeichen erzeugt, wobei das vorletzte Byte das Fehlerkorrekturzeichen enthält. Wenn die Daten-, zeichen fehlerfrei sind, hat der erhaltene Fehlervektor E den Wert Null.
Wenn in irgendeinem der Datenbytes Dn in der Spur i ein Fehler auftritt, kann der Fehlervektor eni dadurch dem Fehlerhauptvektor E gleichgesetzt werden, dass mit dem Fehlervektor E durch i-maliges Einwirken des Operators B eine Regression durchgeführt wird, wobei i der Lage der Spur entspricht. Es ist also
eni = EB"1 (5)
Tritt ein Fehler nur in einer Spur auf, so ist der Fehlervektor eni gleich der lokal erzeugten geraden Paritätsspur:
eni = Pn (6)
LUS843/D712
2 b ΐ J B 4 3 b
Treten zwei fehlerhafte Informationsspuren i und j auf, so bezeichnet i diejenige Spur, die dem Polynomterm der niedrigsten Ordnung am nächsten ist ("höchstwertige Spur") und bezeichnet j diejenige Spur, die von diesem Term am weitesten entfernt ist ("niedrigstwertige Spur"). In diesem Fall ist
eniB1 + enj B3 = E (7) und
eni + enj = Pn (8)
Durch Erweiterung mit dem Faktor B erhält man aus Gleichung 7
eni + enjB"^1"^ = EB-1 (9)
Die Auflösung dieser Gleichung nach der niedrigstwertigen Spur liefert
EB~X+Pn
Aus der Gleichung 4 kann dann die höchstwertige fehlerhafte Spur durch die Beziehung
eni = Pn + enj (11)
abgeleitet werden.
Die entsprechenden Ausdrücke für eine einzige fehlerhafte Spur werden aus den vorstehenden Gleichungen erhalten, wenn manfsnj = 0 setzt. In diesem Fall ist der Fehlervektor für die i-te Spur eni = EB"1.
6 0 9843/0711
Der Term SB"1 entspricht dem Ausgangssignal des Fehlerkorrekturmustergenerators 5, der dem i-mal durch den Operator B regredierten ("verschobenen") Term E entspricht. Die Verknüpfung der Grosse EB*"1 mit dem Paritätsvektor Pn in der Vektorkombinationsmatrix 7 führt termweise zu dem Ergebnis Null. Dieses Ergebnis zeigt an, dass ein Fehler nur in einer einzigen Spur vorliegt, also kein Spurabstand bestimmt zu werden braucht. Die mit der Spurabstandsprüfung und der Bestimmung der niedrigstwertigen Spur verbundenen Stufen, insbesondere der Spurabstandsprüfer 12, werden verriegelt. Die fehlerhafte Spur i ist durch die Anzahl der im Fehlerkorrekturmustergenerator 5 durchgeführten Regressionen bestimmt und daher gleich der Anzahl der Schiebeimpulse, die zur Erzeugung des Fehlervektors eni auf dem Fehlerkorrekturmustergenerator 5 bis die Kombination mit der lokal erzeugten Parität Pn Null ist, aufgelaufen sind. Die Anzahl der Schiebeoperationen wird im Zähler 9 summiert. Der Wert im Zähler 9 kennzeichnet die einzige und dementsprechend höchstwertige fehlerhafte Spur. Dieser Wert gelangt auf die Korrekturvektormatrix 19, die schliesslich die Korrektur der fehlerhaften Spur in der Datenkorrekturmatrix 11 bewirkt.
Wenn der Restwert im Fehlerkorrekturmustergenerator Null ist, gleichzeitig aber das Ausgangssignal des lokalen Paritätsgenerators 6 ungleich Null ist, zeigt diese Diskrepanz eine fehlerhafte Spur an. Da der Ausgang mit dem Wert Null am Fehlerkorrekturmustergenerator anzeigt, dass in den Datenspuren kein Fehler vorliegt, muss die fehlerhafte Signalspur also die Paritätsspur TP sein. Bei dieser Konstellation wird eine Fehleranzeige erzeugt, die das Vorliegen eines Fehlers in der Paritätsspur anzeigt und kennzeichnet. In der Datenkorrekturmatrix 11 werden die fehlerhaften Bits der Paritätsspur .umgekehrt.
S09843/Q712
Ib UH 4 3 b
Weiterhin sei der Fall angenommen, dass ausserhalb des betrachteten Korrektursystems zwei fehlerhafte Spuren, ihre Identität und ihr Abstand voneinander festgestellt und durch Fehleranzeigen signalisiert werden. Es ist bereits oben ausgeführt, dass Fehleranzeigen, die die fehlerhaften Spuren anzeigen, auf die Eingangsanschlüsse des Spurabstandsprüfers 12 gegeben werden, der in Fig. 6 im Detail gezeigt ist. Die Signale, die das Vorliegen einer Fehleranzeige für die verschiedenen Spuren anzeigen, werden sequenziell durch ein siebenstelliges Schieberegister gegeben. Als Schiebeimpulse dienen die Schiebeimpulse des Fehlerkorrekturmustergenerators. Die Fehleranzeigesignale sind nach Massgabe der Exponenten der Polynomterme, denen sie zugeordnet sind, in steigender Ordnung angeordnet. Die erste Spurenfehleranzeige, die im letzten, in der Figur 6 untersten Registerausgang 7 auftritt, entspricht der höchstwertigen Spur (MST). Zu diesem Zeitpunkt tritt am Ausgang 8 des Registers ein Haltesignal auf, das auf den Zähler 14 gelangt. Der Zähler 14 bewirkt gleichzeitig eine zyklische Verschiebung in den verschiedenen Signalverarbeitungsstufen, so im Fehlerkorrekturmustergenerator 5, in der Vektorkombinationsmatrix 7 und auch im Digitalzähler 14, wobei diese Funktion jedoch beim Auftreten und Einlaufen des Haltessignals eingestellt wird. Der im Zähler 14 auftretende Wert wird auf den Festwertspeicher des Divisorgenerators gegeben. Durch Vergleich der Stellen, in denen die Fehleranzeigesignale im Schieberegister des Spurabstandsprüfers auftreten und Ableitung der Differenz zwischen diesen Stellen wird der Spurabstand (i-j) bestimmt, der nach entsprechender Codierung im Spurenprüfer 13 auf den Festwertspeicher des Divisorgenerators 15 gegeben wird (Figuren 1 und 12). Dadurch wird der Festwertspeicher für alle möglichen Werte von (i-j) zur Ausgabe des entsprechenden Wertes
1 + B~i:L~j) (12)
609843/0711
veranlasst, der in dem hier beschriebenen Ausführungsbeispiel sieben Zeichen entspricht. Das jeweils ausgewählte Zeichen entspricht der vom Spurenprüfer 13 einlaufenden Differenz (i-j). Das ausgelesene Zeichen gelangt gemäss Gleichung 10 auf das Divisionswerk 16, wo der entsprechende Fehlervektor enj zur Korrektur der Fehler in der j-ten Spur der Datenzeichen erzeugt wird. Der Fehlervektor enj gelangt dann auf die Korrekturvektormatrix 17 für die niedrigstwertige Spur, die die niedrigstwertige mit einem Fehler behaftete Spur ansteuert und die Information zum entsprechenden Zeitpunkt auf die Datenkorrekturmatrix 11 gibt.
Der Fehlervektor eni zur Korrektur der höchstwertigen fehlerhaften Spur i wird im exklusiven ODER-Verknüpfungsglied 18 erhalten und auf die Korrekturvektormatrix 19 für die höchstwertige Spur gegeben, und zwar zusammen mit dem die höchstwertige Spur i kennzeichnenden Term, der am Ausgang des Zählers 9 auftritt. Das dabei an der Korrekturvektormatrix 19 erhaltene Ausgangssignal wird dann ebenfalls auf die Datenkorrekturmatrix 11 gegeben, wo die Korrektur der höchstwertigen fehlerhaften Spur vorgenommen wird.
Ein weiterhin interessierender Fall ist der, dass zwei fehlerhafte Spuren auftreten, von denen eine die Paritätsspur ist. In diesem Fall ist der mit der niedrigstwertigen Spur verbundene Fehlervektor enj Null. Wie im Fall des Auftretens eines Fehlers nur in einer einzigen Datenspur ist der Fehlervektor für die höchstwertige Spur eni gleich dem Fehlerhauptvektor E, der entsprechend der Spurposition i i-mal regrediert ("verschoben") ist, so dass
eni = EB"1 (5)
Ausserdem gilt die Beziehung
Pn = eni
6ü9843/071J
2 B U 8 U 3 b
Dabei wird der Paritätsvektor Pn lokal erzeugt und enthält Information über fehlerhafte Terme in allen Spuren, einschliesslich der Paritätsspur. Das Auftreten des hier behandelten Spezialfalls ist dann gegeben, wenn das Fehleranzeigesysteia das Auftreten von Fehlern in zwei Spuren anzeigt, im Schieberegister des Spurabstandsprüfers 12 Jedoch nur ein Fehleranzeigesignal auftritt, wenn also der Spurabstand (i-j) Null ist. Diese Konstellation zeigt an, dass nur eine Datenspur fehlerhaft ist, so dass also die zweite fehlerhafte Spur die Paritätsspur sein muss.
Die Paritätskorrekturstufe 20 verarbeitet den vom Einlaufdatenspeicherregxster 2 einlaufenden Paritätsvektor P, die lokal erzeugte Parität, die vom Generator 6 einläuft, und den vom exklusiven ODER-Verknüpfungsglied 18 einlaufenden Fehlervektor eni. Diese Information ermöglicht also nicht nur die Erkennung eines in der Paritätsspur TP auftretenden Fehlers, sondern auch die Ableitung der richtigen und tatsächlichen Parität für das korrigierte Datenwort aufgrund des bekannten Fehlers in der Datenspur i.
Ein Vorteil der in Fig. 1 gezeigten Vorrichtung liegt weiterhin darin, dass sie aus an sich bekannten, gebräuchlichen und verfügbaren logischen Bauelementen und Baugruppen ohne weiters aufbaubar ist. Eine dem in Fig. 1 gezeigten Blockschaltbild entsprechende und dessen angegebene Funktions- · weise realisierende Schaltung kann dementsprechend im Detail auch vielfältig variiert aufgebaut sein. Eine mögliche der vielen denkbaren Schaltungen zum Aufbau der in Fig. 1 dargestellten Vorrichtung ist in den Figuren 2 bis 11 im einzelnen dargestellt und erläutert. Das im Zusammenhang mit diesen Figuren erläuterte System entspricht einer Anlage, wie sie von der Anmelderin erstellt und erfolgreich mit zahlreichen Testläufen betrieben worden ist. Die im Zusammenhang mit dem in Fig. 1 gezeigten Blockschaltbild
6Q9843/Ö712
26U8435
erläuterte Erfindung ist jedoch nicht auf das in den Figuren 2 bis 11 beschriebene Ausführungsbeispiel beschränkt.
In der Fig. 2 ist ein Einlaufdatenspeicherregister gezeigt, das aus acht achtstelligen Schieberegistern 21a bis 21h aufgebaut ist. Jedes dieser Schieberegister 21a bis 21h ist mit einer Eingabestufe verbunden, die die Daten von einer bestimmten Datenspur empfängt. Jede der acht Stellen jedes der Schieberegister entspricht einem bestimmten Datenbyte D1-D8 in der Weise, dass die Bits der acht Datenbytes sequenziell in den zugehörigen Schieberegistern gespeichert werden können. Weiterhin sind ein zusätzliches achtstelliges Schieberegister 21 j zur Aufnahme der von der Paritätsspur einlaufenden Paritätsdaten P und ein ebenfalls achtstelliges Schieberegister 21k zur Aufnahme der lokal erzeugten geraden Parität Pn vorgesehen. Ein Neunkanalparitätsgenerator 22 erhält die Eingangssignale von acht Datenspuren und der Paritätsspur und erzeugt ein Bit zur Herstellung der geraden Parität für jedes Datenbyte, das im achtstelligen Schieberegister 21k gespeichert ist. Die Bits des lokal erzeugten Paritätsvektors Pn stehen dann auf den acht Ausgangskanälen des Registers 21k zur Verfügung.
Die von den Schieberegistern 21a bis 21h ausgegebenen Signale laufen dann auf ein Leitwerk 23. Das Leitwerk 23 enthält eine Gruppe von UND-Verknüpfungsgliedern 23a bis 23p, deren Ausgänge paarweise auf zweifüssige ODER-Verknüpfungsglieder 24a bis 24h in der in Fig. 2 gezeigten Weise geschaltet sind. Ein auf den Anschluss 24 geprägtes Freigabesignal dient der Freigabe derjenigen UND-Glieder 23a bis 23p, die in den ungeraden Stellen liegen. Dadurch wird die Reihenfolge umgekehrt, in der die aufgegebenen Spursignale auf den Ausgangskanälen der logischen Gruppe auftreten. Dies ist erforderlich, wenn der Aufzeichnungsträger, beispielsweise das Magnetband, auch rückwärts lesbar sein soll.
009843/071*
Es sei daran erinnert/ dass die einzelnen Spuren nicht aufsteigend, sondern in der Weise gemischt numeriert sind, dass bei Umkehr ein Signal, das beispielsweise auf der Spur "1" gestanden hat, dann auf der Spur "5" auftritt. Um die einlaufenden Signale dann mit der richtigen Spur zu identifizieren, wird die UND-Verknüpfung 23a bis 23p benötigt. Wenn nicht erforderlich ist, dass der Aufzeichnungsträger auch rückwärts lesbar ist, kann die Gruppe 23 der UND-Verknüpfungen auch entfallen.
Die auf die Schieberegister 21a-21h einlaufenden und gegebenenfalls durch die Verknüpfungen 23 umgeordneten unkorrigierten Daten werden dann auf den in Fig. 3 im einzelnen gezeigten Fehlerkorrekturcodegenerator 3 gegeben. Der Fehlerkorrekturcodegenerator besteht im wesentlichen aus mehreren aus einer Gruppe von exklusiven ODER-Gliedern 25a-25h bestehenden Einheit, die in der in Fig. 3 gezeigten Weise miteinander verbunden sind und deren Ausgänge auf Flipflops 26a-26h geschaltet sind. Der Ausgang des Flipflops 26h ist auf einen der Eingänge des exklusiven ODER-Gliedes 25a rückgekoppelt und gleichzeitig über zusätzliche exklusive ODER-Glieder 27a-27c auf die exklusiven ODER-Verknüpfungsglieder 25d-25f rückgekoppelt. Die Funktion dieser so miteinander verknüpften logischen Schaltelemente kann man sich anhand einer Entscheidungstafel leicht verdeutlichen. Dabei ist ohne weiteres zu erkennen, dass sie die Wirkung eines Operators B erzielen oder, was dieser Wirkung gleichwertig ist, byteweise auf seriell einlaufende Datenbytes nach Massgabe des in Gleichung 3 angegebenen Polynoms einwirken. Dieser Verknüpfung sind UND-Glieder 28a-28h nachgeschaltet, auf deren jeweils einen Eingang der Ausgang des jeweils zugeordneten Flipflops 26a-26h und deren jeweils anderer Eingang auf einem gemeinsamen Schaltungspunkt liegen, an dem vom Zähler 14 ein Freigabesignal auftritt. Dadurch werden zu einem bestimmten Zeitpunkt die an den Ausgängen der Flipflops auftretenden Signale
309843/Q712
I b U 8 4 3
in den Fehlerkorrekturmustergenerator 5 übertragen.
In der Fig. 4 sind die den Zähler 9 aufbauenden logischen Schaltelemente dargestellt. Ein vierstelliger Binärzähler 101 wird vom Zähler 14 mit Taktsignalen und vom Divisorgenerator 15 mit Rücksetzsignalen gespeist. Ausserdem wird zusätzlich ein bei Rückwärtslauf des Aufzeichnungsträgers vom Transportsystem erzeugtes Rücklaufsignal, das auch als Freigabesignal verwendet wird, eingesetzt. Da die Art, in der solche Signale erzeugt werden, an sich bekannt und nicht erfindungswesentlich ist, ist ihre Erzeugung hier auch nicht näher beschrieben.
Der der Dezimalzahl 8 entsprechende Ausgang der vierten Stelle des Binärzählers 101 tritt am Ausgang des Zählers auch mit seinem Komplement auf. Dieses Signalpaar zeigt an, ob im Fehlerkorrekturmustergenerator 5 acht Verschiebungen aufgetreten sind. Die Ausgangskanäle 1,2 und 4 der drei niederwertigen Stellen des Zählers 101 dienen der Kennzeichnung der höchstwertigen Spur, in der Fehler aufgetreten sind. Das diese Spur kennzeichnende Signal MST wird auf exklusive ODER-Verknüpfungsglieder 102a-102c gegeben, deren andere Eingangsanschlüsse mit dem Rücklauf-Freigabesignal beaufschlagbar sind. Auf diese Weise ist die Folge der Spurnumerierung während des Rückwärtslaufes des Datenträgers umgekehrt.
In der Fig. 5 sind die logischen Bauelemente gezeigt, die den Fehlerkorrekturmustergenerator bilden und den Operator B gemäss dem Polynom der Gleichung 3 bilden. Eine Reihe von acht JK-Flipflops 29a-29h sind in der aus Fig. 5 ersichtlichen Weise zu einem Ring zusammengeschaltet. Der Ausgang des Flipflops 29h ist auf das Flipflop 29a und über die exklusiven ODER-Verknüpfungen 30a-30c auf die Eingänge der Flipflops 29c-29e geschaltet.
609843/0713
2bU343b
Die am Ausgang des Spurenfolgeinverters 4 auftretenden 7 Bits sind auf die Kanäle 1-8 gegeben und gelangen über diese auf die Eingangsanschlüsse der Flipflops 29a-29h. Beim Auftreten jedes Informationsbytes schaltet jedes Bit des Bytes je eines der Flipflops. Die Flipflops werden durch den vom Fehlerkorrekturmustergenerator gelieferten Schiebeimpuls über den Anschluss 31 ausgelöst und dann schlLesslich über ein ebenfalls vom Fehlerkorrekturmustergenerator 5 geliefertes Rücksetzsignal über den Anschluss 32 rückgesetzt. Die Ausgänge der einzelnen Flipflops sind über NICHT-Verknüpfungsglieder 33a-33h verknüpft und auf einen der Füsse der exklusiven ODER-Verknüpfungsglieder 34a-34h geschaltet. Die anderen Eingänge dieser exklusiven ODER-Glieder sind einzeln auf je einen der Ausgangskanäle des Paritätsgenerators 6 (Fig. 1) geschaltet, der ebenfalls ein Schieberegister ist. Für jedes am Ausgang der Flipflops auftretende Informationsbyte, das in den NICHT-Gliedern invertiert wird, tritt also auch ein einzelnes Bit für ein Paritätsbyte Pn auf. Die exklusiven ODER-Verknüpfungen bilden so eine Matrix zur Verknüpfung des Vektors EB und des Vektors Pn. Diese Verknüpfung ist in der Vektorkombinationsmatrix 7 der Fig. 1 schematisch dargestellt. Das erhaltene Kombinationssignal gelangt auf die Ausgangsflipflops 35a-35h, deren Ausgängen NICHT-Glieder nachgeschaltet sind. Die Funktion der Flipflops 35a-35h ist durch Signale gesteuert, die auf die Anschlüsse 36 und 37 geprägt werden. Auf diese Weise kann das erzeugte Fehlersignal en in die Flipflops zu jedem beliebigen Zeitpunkt geschrieben werden. Diese Flipflop-Gruppe bildet das in Fig. 1 schematisch dargestellte Vektorspeicherregister 8.
Die an den Ausgängen der NICHT-Glieder 33a-33h auftretenden Signale werden ausserdem auf ein achtfüssiges UND-Verknüpfungsglied 38 gegeben. Am Ausgang des UND-Verknüpfungsgliedes 38 tritt ein Signal H auf, wenn das nicht invertierte
SQ9S43/0712
26Ü843S
Ausgangssignal des Fehlerkorrekturmustergenerators gleich Null ist. Dieser Nullzustand zeigt an, dass die eingelaui<_ Datengruppe fehlerfrei ist.
In gleicher Weise werden die an den Ausgängen der exklusiven ODER-Verknüpfungsglieder 34a-34h auftretenden Signale auf ein neunfüssiges UND-Verknüpfungsglied 39 gegeben, und zwar zusammen mit einem am Anschluss 40 auftretenden zusätzlichen Signal, das das Vorliegen von Fehleranzeigen für zwei Informationsspuren anzeigt. Das Auftreten der Ziffer 1 am Ausgang des UND-Gliedes 39 zeigt an, dass der am Ausgang des Paritätsschieberegisters auftretende Wert gleich dem am Ausgang des Fehbrkorrekturmustergenerators auftretenden Wert ist, dass also zwei Fehler vorliegen. Dieser Konstellation ist insofern Rechnung zu tragen, da beim Auftreten von Fehlern in verschiedenen Spuren ein und desselben Bytes das Byte trotz richtiger Parität falsch sein kann.
Die vorstehend beschriebenen Figuren beschreiben also Schaltungen zur Erzeugung eines Fehlervektors en durch sequenzielles Einwirken bestimmter Operatoren und Operationen auf die eingelaufenen Datenbytes Di-Dn und zur Erzeugung eines Fehlerkorrekturcodezeichens zur Ableitung eines Fehlerterms E, zur Einwirkung auf den Vektor E in der beschriebenen bestimmten Weise, zur anschliessenden Kombination des erhaltenen Fehlervektors mit einem Paritätsausdruck Pn und schliesslich zur Erstellung des Zählers des in Osichung 6 wiedergegebenen Bruchs. Zur Erzeugung bzw. Ableitung des Nenners dieses Ausdrucks ist es für den allgemeingültigen Fall erforderlich, den Spurabstand (i-j) der als fehlerhaft erkannten Spuren zu bestimmen.
In Fig. 6 sind die wichtigsten Bauelemente und Baugruppen des Spurabstandsprüfers 12 gezeigt. Fehleranzeigen für die
809843/0712
2BU8435
acht Informationsspuren gelangen über die Anschlüsse T0-T7 in der in Fig. 6 dargestellten Weise auf eine Gruppe von UND-Verknüpfungsgliedern 41a-41p. Die jeweils nebeneinanderliegenden UND-Glieder sind paarweise auf zweifüssige ODER-Verknüpfungsglieder 42a-42h geschaltet, deren Ausgangsanschlüsse auf ein siebenstelliges Schieberegister 43 geschaltet sind. Auf dieses Schieberegister werden weiterhin Taktsignale, die dem Rücksetzen des Fehlerkorrekturmustergenerators entsprechen, und Signale, die das Vorliegen von zwei Fehleranzeigen anzeigen, sowie ein Ladesignal für den Fehlerkorrekturmustergenerator gegeben. Ausserdem wird der Fehlerkorrekturmustergenerator-Schiebeimpuls auf das Register gegeben. Dieser Schiebeimpuls dient der zyklischen Verschiebung der Ausgangssignale der ODER-Glieder 42a-42h nach Massgabe der vorliegenden Spurfehleranzeigen. Zusätzlich wird über ein NICHT-Verknüpfungsglied 44 ein Rücklaufsignal auf die Schaltung gegeben, das jedes zweite der UND-Glieder 41a-41p sperrt. Dadurch wird die Spurfolge umgekehrt und entspricht in dieser Umkehrung der beim Rücklauf des Bandes vorliegenden Spurfolge. Dies ist oben beschrieben.
Beim zyklischen Umlauf des Inhalts der Schieberegister 43 werden die die Spurfehleranzeigen wiedergebenden Bits sequenziell durch das Register geschoben, wobei ihre Anordnung der exponentiellen Ordnung der Terme entspricht, die den jeweiligen Spuren in der durch den Ausdruck 1 wiedergegebenen Weise zugeordnet sind. Dabei ist die erste Anzeige des Spurfehleranzeigers in der tiefsten Stelle des Schieberegisters mit der höchstwertigen Spur (MST)i verbunden.
Wenn in der tiefsten Stelle des. Schieberegisters 43 eine Anzeige der höchstwertigen fehlerhaften Spur auftritt, wird in der gezeigten Weise ein Haltesignal für die ■ höchstwertige gefundene Spur erzeugt. Der Wert (i-j)
609843/0712
urch die GDER-Verkiiujjlungsglieder 44a-44c und die NICHT-Glieder 45a-45c binär codiert. Zusätzlich wird vorzugsweise ein Binärausdruck erzeugt, der das Vorliegen einer Fehleranzeige in der Paritätsspur bezeichnet. Dies kann durch Setzen aller drei ODER-Verknüpfungsglieder des Paritätsspur-Fehleranzeigesignals erfolgen.
Der den Bandabstand anzeigende Binärausdruck läuft anschliessend über die Bandabstandverknüpfung 90a-90c (Fig. 13), deren Taktung durch Ladesignale und von der Anlage erzeugte Rücksetzsignale gesteuert wird, die in der in Fig. 13 gezeigten Weise auf die RS-Anschlüsse der Flipflops 90a-90c gegeben werden. In der in Fig. 12 gezeigten Weise wird der Wert (i-j) auf einen Festwertspeicher 47 gegeben, der 64 Adressen zu je acht Zellen besitzt. Der Fehlerkorrekturcode-Schiebeimpuls wird auf einen Binärzähler 48 gegeben, der den Festwertspeicher synchron zur Anlage taktet. Der Festwertspeicher ist so vorprogrammiert, dass er den Nenner des Bruchs der Gleichung 10 liefern kann, der mit dem Inhalt des Registers 8 in an sich bekannter Weise über die UND-Verknüpfungsglieder 49a-49h verknüpft werden kann. Der 8 bit-Ausgang der acht UND-Glieder 49a-49h wird dann auf eine dreistufige exklusive ODER-Kaskade 50 gegeben, deren einzelne exklusive ODER-Glieder in an sich gebräuchlicher Weise so miteinander verknüpft sind, dass ein Ausgang H auftritt, wenn an den Ausgängen der UND-Glieder 49a-49h eine ungerade Anzahl von Η-Pegeln auftritt. Der Ausgang der exklusiven ODER-Kaskade 50 bildet dann einen Fehlerkorrekturvektor enj und enthält die erforderlichen Bits zur Korrektur der niedrigstwertigen fehlerhaften Spur der eingelaufenen Daten. Ausserdem wird das erhaltene Signal im exklusiven ODER-Glied 18 mit den Bits des Bytes 1 des Paritätsschieberegisters 6 verknüpft, wobei der Fehlervektor eni zur Korrektur der höchstwertigen fehlerhaften Spur i erzeugt wird.
60^843/071 2
In der Fig. 7 sind die wichtigsten logischen Bauelemente und Baugruppen der Korrekturvektormatrix 17 für die niedrigstwertige Spur gezeigt. Das die niedrigstwertige Spur anzeigende binäre Signal läuft vom Spurabstandsprüfer 12 und dem Spurenprüfer 13 auf je einen Eingang der UND-Glieder 52-52c ein. Die übrigen Eingänge der UND-Glieder werden mit einem Signal beaufschlagt, das das Vorliegen von Fehleranzeigen in zwei fehlerhaften Spuren anzeigt, das weiterhin anzeigt, dass eine Korrektur für die niedrigstwertige Spur erforderlich ist und das Fehlen einer Fehleranzeige für die lokal erzeugte Paritätsspur P anzeigt. Die drei UND-Glieder dienen in Verbindung mit den NICHT-Gliedern 54a-54c als 3-8-Decodierer zur Aktivierung des jeweiligen UND-Gliedes der Gruppe 56a-56h. Das aktivierte UND-Verknüpfungsglied entspricht der niedrigstwertigen fehlerhaften Spur.
Die Korrektur der höchstwertigen fehlerhaften Spur wird mit Hilfe der Korrekturvektormatrix 19 bewirkt, die in Fig. 8 im Detail gezeigt ist. Ein vom Zähler 9 erzeugtes Binärsignal kennzeichnet die höchstwertige Spur i. Dieses Binärzeichen gelangt auf jewei-ls einen der beiden Eingangsanschlüsse der UND-Verknüpfungsglieder 58a-58c. Die jeweils anderen Eingangsanschlüsse dieser UND-Glieder sind mit Signalen belegt, die anzeigen, dass im Fehlerkorrekturmustergenerator noch keine acht Schiebeoperationen abgeschlossen durchgeführt sind und dass die Korrektur der höchstwertigen Spur erforderlich ist, und sind ausserdem mit einem Steuersignal belegt. Die drei UND-Glieder sind in gebräuchlicher Weise mit NICHT-Gliedern 60a-60c verknüpft, wobei diese Verknüpfung einen 3-8-Decodierer bildet. Dadurch wird in der eindeutig zugeordneten Weise jeweils eines der acht UND-Verknüpfungsglieder 62a-62h zur Anzeige der höchstwertigen zu korrigierenden Spur angesteuert bzw. durchgeschaltet. Die Achtkanalausgänge der in den Figuren 7 und 8 gezeigten Verknüpfungen sind auf die Datenkorrekturmatrix 11 geschaltet,
6 0 9843/0712
ORIGINAL INSPECTED
' - 27 -
2bUkA3b
deren prinzipieller Aufbau in der Fig. 9 gezeiqt ist. Die Ausgangskanäle der Korrekturvektormatrizen (Figuren 7 und 8) sind entsprechend ihrer Wertigkeit auf die ODER-Verknüpfungsglieder 64a-64h geschaltet, und zwar in der Weise, dass jeweils einer der Eingänge jedes dieser ODER-Glieder mit einem Kanal von der Korrekturvektormatrix für die höchstwertige Spur und der andere Eingang von dem Kanal der gleichen Stelle der Korrekturvektormatrix für die niedrigstwertige Spur belegt ist. Die acht Ausgänge dieser ODER-Gruppe 64 sind auf die Eingänge einer Gruppe von exklusiven ODER-Verknüpfungsgliedern 66a-66h geschaltet, deren einzelne Glieder auf dem jeweils anderen Eingang die den entsprechenden Spuren zugeordneten Ausgangssignale vom Einlaufdatenspeicherregister 2 erhalten (vgl. auch Fig. 1). Auf diese Weise gelangen die unkorrigierten Datenzeichen byteweise in die Gruppe der exklusiven ODER-Glieder 66a-66h. Durch Verknüpfung mit den entsprechenden Spurkorrektursignalen über die ODER-Glieder 64a-64h kehren die exklusiven ODER-Verknüpfungsglieder 66a-66h in an sich bekannter Weise die Polarität bzw. den binären Pegel der einzelnen korrekturbedürftigen vom Register 2 eingelaufenen Impulse um. Um beispielsweise die Polarität eines auf der Spur 1 eines vom Einlaufdatenspeicherregister 2 aufgelaufenen Bytes zu verändern, braucht lediglich ein Signal H auf den unteren Eingang des exklusiven ODER-Gliedes 66a gegeben zu werden. Wenn in diesem Fall beispielsweise auf der Spur vom Register 2 der Wert H auftritt, wird im exklusiven ODER-Glied 66a der Wert L erzeugt. Umgekehrt führt der Wert L auf dem der Spur 1 entsprechenden Kanal vom Register 2 zur Ausgabe eines Signals mit dem Wert H. Zur Korrektur der fehlerhaften Bytes ist es also erforderlich, dass auf den entsprechenden Ausgangskanälen der ODER-Glieder 64a-64h der Signalpegel H auftritt, der dann zur Umkehr des auf den anderen Eingangsanschluss des entsprechenden exklusiven ODER-Gliedes der Gruppe 66a-66h vom Einlaufdatenspeicher-
6 0-9 843/0712
register gegebenen Bits führt. Auf diese Weise können die einzelnen Bits jedes beliebigen Datenbytes problemlos korrigiert werden.
In der Fig. 10 sind die wichtigsten Bauelemente und Baugruppen der Paritätskorrekturstufe 20 gezeigt. Das gleichzeitige Auftreten des Impulses CLKa und einer Fehleranzeige, die das Auftreten eines Fehlers in der Paritätsspur anzeigt, löst das Flipflop 68 aus, das ein Spurfehleranzeigesignal erzeugt. Dieses Signal schaltet zusammen mit einem Signal, das die Korrektur der niedrigstwertigen Spur fordert und dem Ausgangssignal des Flipflops 74 das UND-Verknüpfungsglied 69 durch, was zum Auftreten eines Paritätsspurkorrektursignals am Ausgang eines nachgeschalteten ODER-Verknüpfungsgliedes 70 führt. Der Ausgangsanschluss des ODER-Verknüpfungsgliedes 70 ist auch dann aktiviert, wenn am UND-Verknüpfungsglied 71 gleichzeitig ein Paritätsschieberegisterbytesignal und ein am Ausgang eines Flipflops 72 auftretendes Signal H liegen. Das Flipflop 72 ist dann aktiviert, wenn im Fehlerkorrekturmustergenerator acht Verschiebungen ausgeführt worden sind, keine zwei Spurfehleranzeigen vorliegen und der Fehlerkorrekturmustergenerator sich noch immer, im Nullzustand befindet. Diese Verknüpfung wird durch das UND-Glied 73 durchgeführt. Die Koinzidenz von zwei Fehleranzeigewerten am Flipflop 74 zusammen mit einem Fehlerkorrekturmustergenerator-Ladesignal auf dem Kanal CLKa aktiviert das Flipflop 74, das ein Zweispuren-Fehleranzeigesignal auf die Korrekturvektormatrix 17 für die niedrigstr- wertige Spur und den Fehlerkorrekturmustergenerator 3 gibt. Ein die Korrektur entweder der niedrigstwertigen Spur oder der höchstwertigen Spur forderndes, vom Divisionswerk 16 und dem exklusiven ODER-Glied 18 erzeugtes Signal aktivieren das ODER-Verknüpfungsglied 75, das seinerseits das Flipflop 76 setzt, das durch einen Fehlerkorrekturcode-Schieberegisterimpuls getaktet ist. Am Ausgang des Flipflops
609843/0712
260043b
tritt dann ein die durchgeführte Korrektur anzeigendes Signal auf. In Verbindung mit einem Schreibsignal, das im Antriebsteil des Aufzeichnungsträgers erzeugt wird/ erzeugt das die erfolgte Korrektur anzeigende Signal durch Verknüpfung im UND-Glied 77 ein Nachbandfehlererkennungssignal zur doppelten überprüfung ("Nachbandkontrolle") der Genauigkeit des auf den Aufzeichnungsträger geschriebenen Datenbyte.
Die Aktivierung des Flipflops 78 signalisiert das Auftreten eines nicht korrigierbaren Fehlers. Das Flipflop 78 wird durch die Impulse CLKc vom Zähler 14 getaktet. Es wird durch eine Fehleranzeige, die das Auftreten von Fehlern in drei oder mehr Spuren anzeigt, gesetzt. Auch bei Koinzidenz von acht abgeschlossenen Schiebeoperationen im Fehlerkorrekturmustergenerator und dem Auftreten eines Musters ungleich Null am Ausgang dieses Generators wird das Flipflop 78 gesetzt.
Die Vorrichtung der Erfindung kann also unabhängig von der Anzahl der vorliegenden fehlerhaften einzelnen Bytes stets zwei fehlerhafte Datenspuren korrigieren. Wenn mehr als drei Spuren fehlerhaft sind, reicht die zur automatischen Korrektur der Fehler erforderliche Information im System nicht aus. Dennoch wird aber auch dieser Zustand erkannt und angezeigt. Zu diesem Zweck wird ein die anderweitige Fehlerkorrektur ermöglichendes Signal erzeugt, das in Gegenwart eines Korrektursignals für die niedrigstwertige Spur über das exklusive ODER-Verknüpfungsglied die Korrekturvektormatrix 19 für die höchstwertige Spur aktiviert.
In der Fig. 11 sind die wichtigsten logischen Schaltelemente und Baugruppen für den Aufbau des Zählers 14 gezeigt. Das Flipflop 79 wird von extern vom Transportmechanismus des Aufzeichnungsträgers erzeugten Signalen gesetzt, getaktet
609843/071 2
und rückgesetzt. Bei Vorliegen der aus Fig. 11 ohne weiteres ableitbaren Signalkombination tritt am Ausgang des dreifüssigen UND-Verknüpfungsgliedes 18 das Signal CLKa auf. In gleicher Weise tritt durch Setzen des Flipflops 82 am Ausgang des dreifüssigen UND-Verknüpfungsgliedes 81 das Signal CLKb auf. Dazu muss gleichfalls ein Signal vorliegen, das das Fehlen eines Korrektursignals für die höchstwertige Spur anzeigt, das die zyklische Schiebeoperation des Fehlerkorrekturmustergenerators anzeigt und das schliesslich das Fehlen einer Koinzidenz der örtlich erzeugten Parität Pn mit dem Fehlervektor en anzeigt. Die beim Vorliegen dieser Bedingungen dann letzte erforderliche Bedingung zur Aktivierung des Ausganges des UND-Gliedes ist das Auftreten eines Taktimpulses einer der beiden externen Haupttaktgeber der Anlage. Schliesslich tritt am Ausgang des UND-Verknüpfungsgliedes 84 ein Signalimpuls CLKc auf, sobald ein Schiebestartsignal, ein Taktsignal vom zweiten Systemtaktgeber, Signalpegel H von den Flipflops und 79 und ein Η-Pegel zumindest an einem der Eingangsanschlüsse des ODER-Gliedes 82a vorliegen.
In der Fig. 13 ist der Aufbau .des Spurenprüfers 13 (Fig. 1) aus gebräuchlichen Bauelementen gezeigt. Wie zuvor beschrieben, werden die Flipflops 90a-90c durch einen Registerladebefehl vom Zähler 14 gesetzt. Dadurch gelangen binärcodierte Spurabstandssignale auf den Divisorgenerator 15.
Das Auftreten eines eine höchstwertige fehlerhafte Spur kennzeichenden Signals (MST) zu einem Zeitpunkt, zu dem zwei Fehleranzeigen vorliegen, aktiviert die in ersichtlicher Weise angesteuerten UND-Verknüpfungsglieder 92a-92c und NICHT-Glieder 93a-93c. Die Verknüpfung dieser UND-Glieder und NICHT-Glieder bildet einen 3-8-Umsetzer und aktiviert in ersichtlicher Weise je nach Ansteuerungsmuster bestimmte dreifüssige UND-Verknüpfungsglieder der Gruppe 91a-91h.
609843/0712
2608A35
Diese Ansteuerung entspricht der höchstwertigen fehlerhaften Spur. Wird nur eine fehlerhafte Spur gefunden, so sind selbstverständlich keine zwei Fehleranzeigen vorhanden, so dass keines der UND-Glieder 91a-91h aktiviert ist. Der Fall, dass nur eine Spur fehlerhaft ist, ist oben behandelt und benötigt weder eine Spurabstandsprüfung noch die Aktivierung der für die niedrigstwertige Spur vorgesehenen Verarbeitungsstufen.
Sämtliche vom Fehleranzeigesystem 10 erzeugten Spurfehleranzeigen, die einer der Spuren 1 bis 8 zugeordnet sind, werden über NICHT-Glieder 94a-94g in der gezeigten Weise auf UND-Glieder 95a-95g gegeben. Die jeweils anderen Eingänge dieser UND-Glieder sind auf die zugeordneten Ausgänge der UND-Glieder 91b-91h geschaltet, so dass S.gnale an den UND-Verknüpfungsgliedern der Gruppe 95a-95g auftreten, wenn sowohl die Ausgangsanschlüsse der entsprechenden UND-Glieder 91b-91h den Pegel H führen als auch an den entsprechenden NICHT-Gliedern 94a-94g der Pegel H auftritt, der das Fehlen einer Fehleranzeige anzeigt. Das codierte Signal für die höchstwertige fehlerhafte Spur und die mit ihm gleichzeitig auftretenden invertierten Fehleranzeigesignale schalten dann die UND-Verknüpfungsglieder 96a-96c durch, die ein binärcodiertes Dreikanalsignal liefern, das die niedrigstwertige fehlerhafte Spur kennzeichnet. Dieses die niedrigstwertige Spur kennzeichnende Signal wird dann unter Steuerung durch die Registerladesignale über die Flipflops 97a-97c auf die Korrekturvektormatrix für die Korrektur der niedrigstwertigen Spur gegeben.
Die vorstehend anhand eines Ausführungsbeispiels beschriebene Erfindung ist also eine Vorrichtung oder ein System zur Fehlererkennung und zur Fehlerkorrektur in einer oder zwei Spuren von Datenzeichengruppen, die in einem bestimmten Format angeordnet sind und ein Fehlerprüfzeichen enthalten, das in vorgegebener Weise mit den Datenzeichen verknüpft ist.
6098437071a
2SU8A3S
Auf diese Weise erkennt und korrigiert die Vorrichtung rasch Fehler, die in einer Datenspur auftreten. Die Art und Weise, in der diese Korrektur erfolgt und die dieser Korrektur zugrunde liegenden mathematischen Beziehungen sind vorstehend erläutert. Beim Vorliegen von Fehlern in zwei Datenspuren können diese ebenfalls erkannt werden. Die Kennzeichnung der erkannten fehlerhaften Spuren erfolgt, um deren Korrektur zu ermöglichen, durch Setzen begJeLtender Fehleranzeigen.
Die vorstehende Beschreibung macht deutlich, dass die Erfindung nicht auf bestimmte Ausführungsdetaxls des beschriebenen Beispiels beschränkt ist und einzelne Verknüpfungen vom Fachmann ohne weiteres verändert werden können.
60984 3/0712

Claims (2)

  1. Patentansprüche .. O U ü ^ ö j
    MJ Vorrichtung zum Erkennen und Korrigieren von Fehlern in ein oder in zwei digitalen Informationsspuren, die zu einer Gruppe von Informationsspuren gehören, die von einem mehrspuren Aufzeichnungsträger gelesen wurden, wobei die (1 bit/Spur) parallelen Datenbits aller Spuren ein Byte bilden, eine der Spuren eine Paritätsspur ist, die Bytes η Datenbytes DI-Dn und ein Fehlerprüfcodebyte zu je i bit enthalten, und der Fehlerprüfcode mit den Datenbytes gemäss folgender Beziehung
    n=7
    ΐα=1 .
    E = (Z Dn Xm) (X0 + X3 + X4 + X5 + χ8)
    n=1 m=7
    verknüpft ist, gekennzeichnet durch eine .logische Verknüpfung zur sequenziellen Einwirkung auf jedes der erhaltenen η Datenbytes und ein Fehlerprüfcodeby te zur Erzeugung eines Fehlervektors E, der den Wert Null in Abwesenheit eines Fehlers in den zur Prüfung erhaltenen Datenbytes und dem Fehlerprüfcodebyte aufweist, durch eine zweite logische Verknüpfung zur -i-maligen regredierenden Einwirkung auf diesen Fehlervektor unter Erzeugung eines Vektors EB , durch eine Stufe zur Erzeugung eines Paritätszeichens Pn, das in Kombination
    609843/071*
    ORIGINAL JNSPECTED
    260843b
    mit einem Datenbyte Dn eine gerade Anzahl von Datenbits erster Art erzeugt, durch ein Verknüpfungsnetz zur bitweisen logischen Verknüpfung eines regredierten Fehlervektors mit einem Paritätsvektor Pn unter Bildung des Ausdrucks EB +Pn, durch eine Stufe zur Korrektur der i-ten Datenspur nach Massgabe des Paritätsvektors, wenn der Wert des regredierten Fehlervektors gleich dem Wert des Paritätsvektors ist, durch eine Stufe zur Erzeugung von Spurfehleranzeigen, die das Vorliegen eines Fehlers in einer bestimmten der Spuren anzeigen und den Korrekturteil der Vorrichtung sperren, wenn Fehler in drei oder mehr Spuren vorliegen, durch einen Spurabstandsprüfer zur Bestimmung des Abstands (i-j) zwischen der höchstwertigen fehlerhaften Spur i, die mit dem niedrigerwertigen Polynomterm verknüpft ist, und der niedrigstwertigen fehlerhaften Spur j, die mit dem höherwertigen Polynomterm (dem Polmomterm höherer Ordnung) des Polynoms
    m=1
    n=7
    Σ Dn Χ™
    m=7 n
    n=1
    verbunden ist, durch einen Divisorgenerator, der mit dem Spurabstandsprüfer gekoppelt ist und nach Massgabe des Spurabstandes (i-j) der Auswahl des Terms 1 +B -* dient, durch ein Divisionswerk zur Division des regredierten Vektors durch den am Ausgang des Divisorgenerators
    ö ü 9 8 A 3 / 0 7 1 2
    ' - 35 -
    auftretenden Wert zur Bildung eines Fehlervektors ^efrp -$ ^ für Daten in der niedrigstwertigen fehlerhaften Spur j, durch eine logische Verknüpfung zur bitweisen Kombination des erzeugten Paritätsbytes Pn und des Fehlervektors enj zur Bildung eines Fehlervektors eni für Daten in der höchstwertigen fehlerhaften Spur i, durch eine Stufe die die Fehlervektoren eni und enj den entsprechenden Datenspuren i bzw. j zuordnen kann, und durch eine Datenkorrekturmatrix, die die unkorrigierten Daten und die Fehlervektoren aufnimmt und so miteinander verknüpft, dass der Signalpegel (die Polarität) der fehlerhaften Bits in den unkorrigierten Daten nach Massgabe der Eigenschaften der Fehlervektoren invertiert werden.
  2. 2. Vorrichtung nach Anspruch 1, gekennzeichnet durch eine Stufe zur Aufnahme einer Fehleranzeige, die einen Fehler in einer auf die Vorrichtung gegebenen Paritätsspur anzeigt, und durch eine logische Verknüpfung, die die Paritätsspur nach Massgabe des Fehlervektors eni korrigieren kann.
    609843/071 2
    ORIGINAL INSPECTED
DE19762608435 1975-04-03 1976-03-01 Vorrichtung zur fehlererkennung und fehlerkorrektur in digitalen datenverarbeitungsanlagen Withdrawn DE2608435A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/564,741 US3982226A (en) 1975-04-03 1975-04-03 Means and method for error detection and correction of digital data

Publications (1)

Publication Number Publication Date
DE2608435A1 true DE2608435A1 (de) 1976-10-21

Family

ID=24255691

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19762608435 Withdrawn DE2608435A1 (de) 1975-04-03 1976-03-01 Vorrichtung zur fehlererkennung und fehlerkorrektur in digitalen datenverarbeitungsanlagen

Country Status (5)

Country Link
US (1) US3982226A (de)
JP (1) JPS51129151A (de)
DE (1) DE2608435A1 (de)
FR (1) FR2306477A1 (de)
GB (2) GB1539073A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2853892A1 (de) * 1977-12-23 1979-06-28 Ibm Verfahren und schaltungsanordnung zur codierung und decodierung von pruefbits

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE30187E (en) * 1972-11-15 1980-01-08 International Business Machines Corporation Plural channel error correcting apparatus and methods
US4241446A (en) * 1978-10-16 1980-12-23 Honeywell Information Systems Inc. Apparatus for performing single error correction and double error detection
JPS5815843B2 (ja) * 1979-11-16 1983-03-28 株式会社東芝 再生信号処理方式
US4363125A (en) * 1979-12-26 1982-12-07 International Business Machines Corporation Memory readback check method and apparatus
US4334309A (en) * 1980-06-30 1982-06-08 International Business Machines Corporation Error correcting code system
US4506365A (en) * 1982-11-22 1985-03-19 Ncr Corporation Error correction system
US4513420A (en) * 1982-11-22 1985-04-23 Ncr Corporation Error detecting system
US5153928A (en) * 1989-06-09 1992-10-06 Casio Computer Co., Ltd. Method and apparatus for recording/reproducing mesh pattern data
CA2076238C (en) * 1991-08-21 1997-12-30 Yoshihide Kuroda Sonet transmission signal processing method and sonet transmission signal processing apparatus
WO2001076075A1 (en) * 2000-03-31 2001-10-11 Koninklijke Philips Electronics N.V. Error correcting integrated circuit and method
US6732317B1 (en) * 2000-10-23 2004-05-04 Sun Microsystems, Inc. Apparatus and method for applying multiple CRC generators to CRC calculation
JP3861874B2 (ja) * 2003-12-16 2006-12-27 株式会社デンソー Ad変換器の故障検出装置
TWI307100B (en) * 2006-11-07 2009-03-01 Macronix Int Co Ltd Memory and method for reading error checking thereof
US9086992B1 (en) 2012-06-08 2015-07-21 Digital Ordnance Storage, Inc. System and method for interconnecting storage elements
KR102324769B1 (ko) 2015-06-29 2021-11-10 삼성전자주식회사 반도체 메모리 장치의 에러 정정 회로, 반도체 메모리 장치 및 이를 포함하는 메모리 시스템
CN113535659B (zh) * 2021-06-28 2024-05-10 中铁工程设计咨询集团有限公司 轨道位置数据库生成方法、装置、设备及可读存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3675200A (en) * 1970-11-23 1972-07-04 Ibm System for expanded detection and correction of errors in parallel binary data produced by data tracks
US3697948A (en) * 1970-12-18 1972-10-10 Ibm Apparatus for correcting two groups of multiple errors
US3745526A (en) * 1971-12-20 1973-07-10 Ibm Shift register error correcting system
US3745528A (en) * 1971-12-27 1973-07-10 Ibm Error correction for two tracks in a multitrack system
US3868632A (en) * 1972-11-15 1975-02-25 Ibm Plural channel error correcting apparatus and methods
US3851306A (en) * 1972-11-24 1974-11-26 Ibm Triple track error correction
US3800281A (en) * 1972-12-26 1974-03-26 Ibm Error detection and correction systems

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2853892A1 (de) * 1977-12-23 1979-06-28 Ibm Verfahren und schaltungsanordnung zur codierung und decodierung von pruefbits

Also Published As

Publication number Publication date
GB1530651A (en) 1978-11-01
FR2306477A1 (fr) 1976-10-29
GB1539073A (en) 1979-01-24
US3982226A (en) 1976-09-21
JPS51129151A (en) 1976-11-10

Similar Documents

Publication Publication Date Title
DE2060643C3 (de) Schaltungsanordnung zur Korrektur von Einzelfehlern
DE2608435A1 (de) Vorrichtung zur fehlererkennung und fehlerkorrektur in digitalen datenverarbeitungsanlagen
DE2364212C3 (de) Schaltungsanordnung zur Codierung von Binärziffern
DE2357004C3 (de) Verfahren und Einrichtung zur Fehlerkorrektur für Daten
DE2421112A1 (de) Speicheranordnung
DE2260850A1 (de) Fehlerkorrektursystem
DE2622184A1 (de) Fehlerkorrekturverfahren
DE1474094B (de) Programmgesteuerte Datenverarbeitungs anlage
DE2157829C2 (de) Anordnung zum Erkennen und Korrigieren von Fehlern in Binärdatenmustern
DE2048365A1 (de) Verfahren und Vorrichtung zur Erzeugung von Prufkodesegmenten auf das Auftreten von Quelldaten hin und zur Ermittelung von Feh lern in den Quelldaten
DE2749888A1 (de) Einrichtung zur fehlermeldung
DE2047868A1 (de) Schaltung zur Korrektur von Einzel fehlern in den Wortern eines zyklischen (n, k) Codes
DE2816771A1 (de) Verfahren und schaltungsanordnung zur feststellung und unterscheidung von fehlern, insbesondere in ladungsgekoppelten speichern und magnetischen einzelwanddomaenenspeichern
DE1168129B (de) Verfahren zur Verarbeitung von Daten
DE2454745A1 (de) Binaerzaehler mit fehlererkennung und korrektur voruebergehender fehler
DE2138877A1 (de) Schaltungsanordnung zur Wiedergewin nung von Informationsworten, die auf einem magnetischen Aufzeichnungsmedium redundant aufgezeichnet sind
DE2403593A1 (de) Anordnung zur beseitigung von schraeglaufeffekten bei datensignalen in einem mehrspur-aufzeichnungssystem
DE1449388B2 (de) Schaltungsanordnung zur korrektur von faelschlich versetzt auftretenden impulsen einer auf mehreren parallelen kanaelen dargestellten informationen
DE2100887B2 (de) Verfahren zur Überwachung des Infor mationsinhalts eines Umlaufspeichers
DE1943859C3 (de) Verfahren und Vorrichtung zur Prüfung und/oder Korrektur von Datenwörtern und/ oder zur Erzeugung von Prüfziffern
DE1926502C (de) Codeumsetzer mit Selbstuberwachung
DE1236247B (de) Serienrechenmaschine
DE1931246C (de) Verfahren zur Störverminderung bei der maschinellen Erkennung von spaltenweise abgetasteten Schriftzeichen und Schaltungs anordnung zur Durchfuhrung des Verfahrens
AT222919B (de) Verfahren und Schaltungsanordnung zur Überprüfung und Korrektur von aus codierten Zeichen bestehenden Worten und Informationsblöcken
DE2549676A1 (de) Anordnung zum bilden von pruefinformation

Legal Events

Date Code Title Description
8128 New person/name/address of the agent

Representative=s name: VON FUENER, A., DIPL.-CHEM. DR.RER.NAT. EBBINGHAUS

8141 Disposal/no request for examination