DE3040004C2 - - Google Patents
Info
- Publication number
- DE3040004C2 DE3040004C2 DE3040004A DE3040004A DE3040004C2 DE 3040004 C2 DE3040004 C2 DE 3040004C2 DE 3040004 A DE3040004 A DE 3040004A DE 3040004 A DE3040004 A DE 3040004A DE 3040004 C2 DE3040004 C2 DE 3040004C2
- Authority
- DE
- Germany
- Prior art keywords
- data
- parity
- words
- word
- line
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000015654 memory Effects 0.000 claims description 60
- 238000000034 method Methods 0.000 claims description 27
- 230000006835 compression Effects 0.000 claims description 12
- 238000007906 compression Methods 0.000 claims description 12
- 238000001514 detection method Methods 0.000 claims description 11
- 230000003111 delayed effect Effects 0.000 claims description 10
- 238000012360 testing method Methods 0.000 claims description 10
- 230000001934 delay Effects 0.000 claims description 6
- 238000012937 correction Methods 0.000 description 50
- 208000011580 syndromic disease Diseases 0.000 description 21
- 238000007792 addition Methods 0.000 description 6
- 125000004122 cyclic group Chemical group 0.000 description 6
- 238000003780 insertion Methods 0.000 description 5
- 230000037431 insertion Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000003321 amplification Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000004069 differentiation Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000001771 impaired effect Effects 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1806—Pulse code modulation systems for audio signals
- G11B20/1809—Pulse code modulation systems for audio signals by interleaving
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1876—Interpolating methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Description
Die Erfindung bezieht sich auf ein Verfahren gemäß dem
Oberbegriff des Patentanspruchs 1 sowie eine Vorrichtung
zur Durchführung dieses Verfahrens.
Es wurden bereits verschiedene Versuche unternommen, die
Häufigkeit von insbesondere bei Verwendung eines magnetischen
Aufzeichnungsmaterials auftretenden Signalausfällen
und den hierdurch bedingten Fehlern der magnetisch aufgezeichneten
digitalen Daten dadurch zu verringern, daß aus
den aufzuzeichnenden Daten Prüfworte codiert und der Datenblock
derart zusammen mit den Prüfworten aufgezeichnet
wird, daß bei der Wiedergabe der aufgezeichneten Signale
Fehler erkannt und korrigiert werden können. Wird allerdings
eine Vermischung der Fehlerkorrektur-Prüfworte mit
den zugeordneten Datenworten in Betracht gezogen, so resultiert
eine erhebliche Steigerung der Redundanz sowie
der Datendichte auf dem Aufzeichnungsmaterial, was ein
komplexes Aufzeichnungs- und Auswertungssystem erfordert.
Hinzu treten Probleme bei Einsatz des elektronischen Bandschnitts,
bei dem ohne tatsächlichen Bandschnitt die entsprechenden
Daten elektronisch zusammengesetzt werden.
Aufgrund der Ungenauigkeiten des Bandantriebssystems ist
es allerdings wegen des sehr geringen Datenbit-Abstands
nahezu unmöglich, die Datenbits am Schnittpunkt exakt
zusammenzufügen. Daher muß bei bekannten Verfahren der
gesamte Datenblock ausgeschieden werden, in dem der
Schnittpunkt auftritt. Zur Vermeidung dieser Schwierigkeit
wurde bereits überlegt, zwischen aufeinanderfolgenden
Datenblöcken Blocklücken (IBG) vorzusehen, in die die
Schnittpunkte gelegt werden können. Hierbei ist der erzielbare
Codierwirkungsgrad allerdings relativ gering.
Aus der GB-OS 20 12 460 ist ein Verfahren gemäß dem
Oberbegriff des Patentanspruchs 1 bekannt, bei dem ein
digitalisiertes analoges Signal in alternierende Blöcke
A und B umgesetzt wird, aus denen zusätzliche Paritätsprüfbits
gebildet werden. Allen Blöcken ist CRCC-Prüfcode
angehängt.
Aus der US-PS 38 00 281 ist ein Verfahren bekannt, bei
dem jedes Datensegment in zwei Gruppen aufgeteilt und
nach jeder zweiten Gruppe Checkbits angeordnet sind.
Im Anschluß an die Datenwortgruppen sind mehrere weitere
Prüfbits zu einem Prüffeld zusammengefaßt.
Schließlich ist aus der DE-OS 29 08 373 bekannt, bei
einer Mehrspuraufzeichnung mit einem vertikalen Paritätskanal
zusätzlich zwei weitere Paritätsbits zu diagonal
über die Kanäle verteilten Datenbits zu ermitteln.
Der Erfindung liegt die Aufgabe zugrunde, ein Verfahren
gemäß dem Oberbegriff des Patentanspruchs 1 zu schaffen,
bei dem ohne Redundanzsteigerung eine gute Fehlerkorrektur
erreichbar ist, sowie eine Vorrichtung zur Durchführung
dieses Verfahrens anzugeben.
Diese Aufgabe wird mit den im kennzeichnenden Teil der
Ansprüche 1 bzw. 2 genannten Maßnahmen sowie mit den
Merkmalen der Ansprüche 6 bzw. 8 gelöst.
Vorteilhafte Weiterbildungen der Erfindung sind in den
Unteransprüchen angegeben.
Die Erfindung wird nachstehend an Hand von Ausführungsbeispielen
unter Bezugnahme auf die Zeichnungen näher erläutert.
Es zeigt:
Fig. 1 eine Darstellung eines Datenformats
gemäß einem ersten Ausführungsbeispiel,
Fig. 2 eine Darstellung eines Magnetaufzeichnungs-
und -Wiedergabesystems, bei dem
aus Ursprungsdaten Prüfworte entsprechend
dem Format nach Fig. 1 codiert werden,
Fig. 3 Einzelheiten einer Fehlerkorrekturschaltung
des Systems nach Fig. 2,
Fig. 4 eine Darstellung eines Datenformats
gemäß einem zweiten Ausführungsbeispiel
für eine Mehrkanal-Datenquelle,
Fig. 5 Eine Darstellung des Datenformats
nach Fig. 4, wobei Modulo-2-Kombinationen
von Datenworten mit unterschiedlichen
Schraffierungen markiert sind,
Fig. 6 ein Magnetaufzeichnungs- und
-Wiedergabesystem, bei dem aus Ursprungsdaten
Prüfworte entsprechend dem Datenformat
gemäß den Fig. 4 und 5 codiert
werden,
Fig. 7 Einzelheiten einer Verzögerungsspeichereinheit
und eines Q-Paritätsgenerators
des Systems nach Fig. 6,
Fig. 8 Einzelheiten einer Fehlerkorrekturschaltung
des Systems nach Fig. 6.
Fig. 9 eine Darstellung von Modulo-2-
Kombinationen von Datenworten für
Q₁-, Q₂- und Q₃-Paritätsprüfworte und
zugeordnete P-Paritätsprüfworte, die in
einem Muster aus Zeilen und Spalten angeordnet
sind, wobei mit Kreisen Fehlerstellen
in einem der schwerwiegendsten Fälle
bezeichnet sind,
Fig. 10 die Datenworte nach Fig. 9 im Falle
unkorrigierbarer Fehler, wobei zur Vereinfachung
die Bezeichnungen der Datenworte
weggelassen sind,
Fig. 11 ein weiteres Datenformat, das eine
Abwandlung des Datenformats nach Fig. 5
darstellt,
Fig. 12 die Datenworte und die Prüfworte
für Modulo-2-Kombinationen in P- und
Q-Parität nach Fig. 11 in Anordnung
in einem Muster aus Zeilen und Spalten und
Fig. 13 ein Blockschaltbild einer Schaltung
zur Codierung von Prüfworten entsprechend
dem Format nach Fig. 11.
Fig. 1 zeigt ein Aufzeichnungsformat eines
Datenblocks, der entsprechend dem Codierschema bei einem
ersten Ausführungsbeispiel auf einem Magnetband aufgezeichnet
ist. Der Datenblock ist in ein Datenfeld und
ein Paritätsprüffeld aufgeteilt.
Das Datenfeld ist in 2K Teilblöcke (im folgenden Raster
genannt) aus Datenworten aufgeteilt, die Rasterstellen # 1 bis
# 2K zugeordnet sind, wobei K eine ganze Zahl gleich oder
größer "1" ist, während das Paritätsfeld in K Raster (Teilblöcke) von
Paritätsprüfcodes bzw. Korrekturcodes unterteilt ist, die
Rasterstellen # (2K + 1) bis # 3K zugeordnet sind. Zur
Bildung eines Datenrasters in Zeilen-Spalten-Anordnung
werden zeitlich aufeinanderfolgende Nachrichten-Datenworte
d auf Spuren # 1 bis # 4 in Richtung quer zur Bewegungsrichtung
des Bands aufgezeichnet, wobei der jeweilige Index
von d die Reihenfolge des Auftretens eines jeweiligen Datenworts
angibt. Jeder Datenraster hat ferner mehrere Raster-
Synchronisiercodes S mit einem bestimmten Bitmuster, die
jeweils in der ersten Spalte angeordnet sind, und mehrere
zyklische Fehlererkennungs-Blocksicherungscodes (CRCC),
die jeweils in der letzten Spalte angeordnet sind. Jeder
Paritätsraster ist aus Paritätsprüfworten bzw. Paritätsprüfcodes
P i,j (p r ) zusammengesetzt, die durch Modulo-2-
Addition der Datenworte einer jeden Spalte des Datenrasters
# i und der Datenworte einer entsprechenden Spalte
des Datenrasters # j erzeugt werden, was durch die folgende
Gleichung ausgedrückt ist:
D i (d r ) ⊕ D j (d r ) = P i,j (p r ) (1)
wobei i im Bereich von 1 bis K, j im Bereich von
K + 1 bis 2K und r im Bereich von 1 bis 4n liegt und
n die Anzahl der Spalten je Raster bezeichnet. Im einzelnen
werden jeweils aus den Datenworten d₁ bis d₄ des Datenrasters
# 1 und den Datenworten d₁ bis d₄ des Datenrasters
# (K + 1) Paritätsprüfworte
P i,K+1(p 1), P 1,K+1(P 2), P 1,K+1(p 3) und P 1,K+1(p 4)
abgeleitet. Auf gleichartige Weise werden die Paritätsprüfworte
der letzten Spalte des Rasters # (2K + 1) aus den
Datenworten der letzten Spalte des Rasters # 1 und den
Datenworten der letzten Spalte des Rasters # (K + 1) erzeugt,
während die Paritätsprüfworte bzw. Paritätsprüfcodeworte
des Rasters # 3K aus den in den Rastern
# K und # 2K enthaltenen Datenworten erzeugt werden. Damit
haben die Datenworte, die ein Paritätsprüfwort bilden,
in Bewegungsrichtung des Bands einen Abstand von K
Rastern. Wie bei den Datenrastern geht den Paritätsprüfworten
einer jeden Zeile ein Raster-Synchronisiercode
S′ voraus, während ein zyklischer Blocksicherungscode
nachfolgt. Der Synchronisiercode S′ hat ein von dem Datenraster-
Synchronisiercode S verschiedenes Bitmuster, um
eine Unterscheidung zu ermöglichen.
Fig. 2 zeigt ein Magnetaufzeichnungs- und
-Wiedergabesystem, bei dem der Codiervorgang entsprechend
dem Datenformat nach Fig. 1 ausgeführt wird. Das System
nach Fig. 2 weist ein Tiefpaßfilter 2 auf, daß von einem
Eingangsanschluß 1 ein Analogsignal aufnimmt und unerwünschte
Signalkomponenten mit Frequenzen von mehr als
20 kHz unterdrückt. Das Ausgangssignal des Tiefpaßfilters
2 liegt an einem Analog-Digital-Umsetzer 3 an,
dessen Ausgangssignal einem als Zeitverdichtungs-Speicher
dienenden Schreib-Lese-Speicher 4 zugeführt wird. Der
Speicher 4 wird mittels einer (nicht gezeigten) gemeinsamen
Taktsignalquelle im Takt
so gesteuert, daß die von dem Umsetzer 3 zugeführten Datenworte
in Spaltenrichtung synchron mit der Analog-Digital-
Umsetzzeitsteuerung eingeschrieben werden, um damit die
Datenworte eines Felds in einem Muster aus vier Zeilen
und 2Kn Spalten einzuspeichern, wobei n die Anzahl der
Spaltendaten jedes Rasters bezeichnet. Der Speicher 4
enthält ein weiteres Speicherfeld, in das auf die gleiche
Weise nachfolgend erzeugte Datenworte eingespeichert werden.
Während die nachfolgenden Daten eingeschrieben werden,
wird aus dem Speicher das vorangehende Datenfeld
in Zeilenrichtung auf Spalten-Grundlage ausgelesen, so
daß sich ein Satz von vier Zeilen bzw. Reihen von Datenworten
ergibt, wobei die Datenreihen jeweils der Aufzeichnungsspur
# 1bis # 4 entsprechen. Die
abgegebenen Datenworte sind daher zeitlich so
komprimiert bzw. verdichtet, daß zeitliche Lücken für das
spätere Einfügen der Raster-Synchronisiercodes und der
Blocksicherungscodes sowie eines Paritätsprüfrasters
zur Fertigstellung eines Datenblocks gebildet sind
An die Ausgänge des Zeitverdichtungs-Speichers 4
ist ein erster Verzögerungsspeicher 5 angeschlossen, der
den wiedergewonnenen Datenreihen eine Verzögerung um
ein Intervall von K Rastern aufprägt. Die verzögerten
Datenworte werden einem Paritätsgenerator 6 bekannten
Aufbaus zugeführt, der gleichzeitig mit den von dem Speicher
4 abgegebenen unverzögerten Datenworten gespeist wird.
Dieser Paritätsgenerator ergibt zur Erzeugung eines Paritätsprüfworts
P i,j (p r ) die Modulo-2-Addition eines jeden
Datenworts des i-ten Rasters" und eines Datenworts entsprechender
Zeile bzw. eines dementsprechenden Zeilen-
Datenworts des j-ten Rasters. Auf diese Weise wird ein
Satz aus vier Reihen von Paritätscodeworten bzw. Paritätsprüfworten
erzeugt und einem zweiten Verzögerungsspeicher
7 zugeführt, in dem die Paritätscodeworte um ein Intervall
von K Rastern verzögert werden. Die verzögerten
Paritätsprüfworte werden dann an eine erste Mischschaltung 8 angelegt,
an der auch die unverzögerten Datenworte aus dem
Speicher 4 anliegen. Auf diese Weise werden die
Paritätsprüfworte in die Rasterstellen # (2K + 1) bis
# 3K eingesetzt, die den vorhergehenden Datenworten in
den Rastern # 1 bis # 2K unmittelbar folgen.
An die Ausgänge der Mischschaltung 8 ist ein
Blocksicherungscode- bzw. CRCC-Generator 9 angeschlossen,
der auf bekannte Weise im wesentlichen Schieberegister
und Exklusiv-ODER-Glieder bzw. Antivalenzglieder aufweist.
Dieser Blocksicherungscode-Generator ist zur Erzeugung
eines Polynom-Codes ausgebildet, der durch X¹⁶ + X¹⁵ +
X² + 1 ausgedrückt ist (und der üblicherweise bei der
Magnetplattenaufzeichnung und der Kassettenbandaufzeichnung
verwendet wird); damit wird die Division eines jeden
Rasters von Zeilenworten durch das erzeugte Polynom herbeigeführt.
Der Divisions-Rest wird in eine mittels des
Zeitverdichtungs-Speichers gebildete Zeitlücke eingefügt,
die der letzten bzw. n-ten Spalte der Datenworte und
Paritätsprüfworte einer entsprechenden Zeile folgt. Diese
Einfügung wird mittels einer zweiten Mischschaltung 11
bewerkstelligt, die an die Ausgänge der ersten Mischschaltung
8 und die Ausgänge des Blocksicherungscode-Generators
9 angeschlossen ist. Die zweite Mischschaltung 11 empfängt
auch Raster-Synchronisiercodes S und S′, die mittels eines
Rastersynchronisier-Generators 10 erzeugt werden. Diese
Synchronisiercodes haben voneinander verschiedene, nicht
zyklische Bitmuster, so daß die gegenseitige Unterscheidung
von Datenrastern und Paritätsprüfrastern ermöglicht
ist, und werden unter geeigneter Zeitsteuerung so erzeugt,
daß sie in jeweilige Zeitlücken eingefügt werden können,
die den ersten Spaltenworten der Datenraster und der
Paritätsraster vorangehen; dadurch wird ein Datenblock
gemäß der Darstellung in Fig. 1 fertiggestellt.
Auf diese Weise wird eine Reihe von Datenblöcken
erzeugt und an einen Modulator 12 angelegt, der die Daten
in eine für die magnetische Aufzeichnung und Wiedergabe
geeignete Form umsetzt. Im einzelnen wird das (bei der
magnetischen Aufzeichnung häufig angewandte)
abgewandelte Frequenzmodulationsverfahren verwendet, durch
das die Aufzeichnungsfrequenz und die Hälfte der Taktfrequenz
verringert werden kann. Die frequenzmodulierten Daten für eine
jede Spur werden jeweils über einen Linear-Verstärker
13 einem jeweiligen Aufzeichnungskopf 14 zugeführt,
der hinsichtlich eines Magnetbands 15 ausgerichtet ist
(wobei zur Vereinfachung nur einer der vier Aufzeichnungsköpfe
gezeigt ist).
Während der Wiedergabe wird das auf einer jeweiligen
Spur aufgezeichnete digitale Signal mittels eines
zugeordneten Wiedergabekopfs 16 erfaßt und nach Verstärkung
und Kurvenformung mittels eines zugeordneten Wiedergabeverstärkers
17 einem Demodulator 18 zugeführt. Der
Demodulator 18 setzt die wiedergegebenen digitalen Signale
in Datenreihen ohne Nullrückkehr bzw. NRZ-Datenreihen
um, die dann in eine Synchronisier-Abtrennstufe 19 eingegeben
werden. Diese Abtrennstufe weist im wesentlichen
Bit-Vergleicher auf, mit denen bei Übereinstimmung mit
den Synchronisier-Bitmustern die Raster-Synchronisiercodes
S und S′ aus den empfangenen Datenreihen ausgesondert
werden. Die ausgesonderten Synchronisiercodes
werden einem Gleichlaufstörungs-Abfangspeicher 20 zugeführt,
an den auch die Datenreihen des Demodulators
18 angelegt werden. Dieser Abfangspeicher ermöglicht es,
entsprechend den Ausgangssignalen Synchronisier-
Abtrennstufe 19 den Schreibvorgang bei Empfang eines
jeden Datenrasters und Paritätsrasters einzuleiten.
Nachdem ein Raster in dem Speicher 20 gespeichert ist,
wird dieses mittels eines nicht gezeigten, hinsichtlich
der Frequenz stabilisierten Oszillators taktgesteuert,
um die gespeicherten Rasterworte so wiederzugewinnen,
daß die wiedergewonnenen Daten keine Gleichlaufschwankungs-
Komponenten mehr enthalten, die aufgrund von
als langsame und schnelle Gleichlaufschwankungen bekannten
Schwankungen der Bandbewegungsgeschwindigkeit entstehen
könnten.
Die hinsichtlich des Gleichlaufs störungsfreien
Datenreihen werden einer Fehlererkennungsschaltung 21
zugeführt, die ein Polynom X¹⁶ + X¹⁵ + X² + 1 erzeugt
und damit die Wortbits des Rasters dividiert, um das
Vorhandensein eines Fehlers dadurch zu ermitteln, daß
der Divisionsrest nicht gleich Null ist. Wenn ein Fehler
ermittelt wird, wird ein Fehleradreßcode erzeugt, der
die Nummern des Rasters und der Spur der fehlerhaften
Worte angibt. Der Fehleradreßcode wird an eine Fehlerkorrekturschaltung
25 sowie an eine Interpolationsschaltung
26 angelegt. Die Fehlererkennungsschaltung 21
erzeugt ferner Einschaltsignale, die in Abhängigkeit von
der Anzahl und Lage der ermittelten Fehler bestimmen, ob
die Fehlerkorrekturschaltung 25 oder die Interpolationsschaltung
26 einzuschalten ist. Wenn im einzelnen ein
Fehler in dem i-ten oder dem j-ten Datenraster und in
dem entsprechenden Paritätsraster entdeckt wird, erfolgt
in der Fehlerkorrekturschaltung 25 eine Paritätskorrektur;
wenn in diesen Rastern mindestens zwei Fehler entdeckt
werden, wird die Interpolationsschaltung 26 eingeschaltet,
um die Fehler durch Interpolation zu korrigieren. Der
Fehleradreßcode und die Einschaltsignale werden jeweils
über Leitungen 21 a und 21 b an die zugeordneten Schaltungen
angelegt.
Die von Gleichlaufstörungen befreiten Datenreihen
werden weiterhin einem 1-Raster-Verzögerungsspeicher 22 zugeführt,
von wo aus sie an einen ersten Eingang der Fehlerkorrekturschaltung
25 und ferner an einen K-Raster-
Verzögerungsspeicher 23 angelegt werden. Der 1-Raster-
Verzögerungsspeicher 22 bewirkt, daß alle Eingangssignale
der Fehlerkorrekturschaltung 25 und der Interpolationsschaltung
26 hinsichtlich ihrer Phase ausgerichtet sind.
Die Ausgangssignale des K-Raster-Verzögerungsspeichers
23, die bezüglich der dem ersten Eingang der Fehlerkorrekturschaltung
25 zugeführten Daten um ein Intervall
von K Rastern verzögert sind, werden direkt einem zweiten
Eingang der Fehlerkorrekturschaltung 25 und auch
einem zweiten K-Raster-Verzögerungsspeicher 24 zur Abgabe
von um weitere K Raster verzögerten Datenreihen
an einen dritten Eingang der Fehlerkorrekturschaltung 25
zugeführt, so daß die am ersten bis dritten Eingang der
Fehlerkorrekturschaltung 25 anliegenden Datenworte des i-ten
und j-ten Rasters sowie die Paritätsprüfworte des entsprechenden
Rasters hinsichtlich ihrer Phase ausgerichtet
sind. Im einzelnen treten die Paritätsprüfworte der
Raster # (2K + 1) bis # 3K am ersten Eingang der Schaltung
25 jeweils in genauer zeitlicher Übereinstimmung mit den
Datenworten der Raster # (K + 1) bis # 2K an dem zweiten
Eingang und mit den Datenworten der Raster # 1 bis # K
an dem dritten Eingang auf.
Bei Empfang eines Einschaltsignals der
Fehlererkennungsschaltung 21 erzeugt die Fehlerkorrekturschaltung
25 ein Syndrom
S i,j (s r ) = D i (d r ) ⊕ D j (d r ) ⊕ P i,j (p r )
und bewirkt die Inversion aller Bits des fehlerbehafteten
Worts.
In Fig. 3 ist die Fehlerkorrekturschaltung
25 in Einzelheiten dargestellt. Die Korrekturschaltung
25 weist einen Syndromgenerator 25 a und eine Paritätsprüfstufe
25 b auf, die die drei Sätze von Eingabe-
Datenreihen aus den Verzögerungsspeichern 22, 23 und
24 aufnimmt. Der Syndromgenerator 25 a spricht auf
den auf den Leitungen 21 a zugeführten Fehleradreßcode
an und erzeugt ein entsprechendes Syndrom, wenn in
dem i-ten und j-ten Datenraster und dem entsprechenden
Paritätsraster nur ein Fehler erfaßt wird, was durch
das aus der Fehlererkennungsschaltung 21 an der Leitung
21 b zugeführte Einschaltsignal angezeigt wird. Das
erzeugte Syndrom wird der Paritätsprüfstufe 25 b zugeführt.
Diese Paritätsprüfstufe setzt das empfangene
Syndrom S i,j (s r ) derart um, daß das fehlerbehaftete
Wort in den aus den Verzögerungsspeichern 22 bis 24
empfangenen Datenreihen bestimmt und danach beispielsweise
die Modulo-2-Addition
D i (d r ) ⊕ S i,j (s r ) = D i ′(d r )
ausgeführt wird, falls der Fehler in dem i-ten Raster
aufgetreten ist, wobei
D i ′(d r )
das richtige Datenwort ist. Dies wird durch Invertierung
des falschen Datenbits erreicht.
Falls in mindestens zwei Rastern aus dem i-ten
und dem j-ten Datenraster und dem entsprechenden Paritätsraster
Fehler entdeckt werden, schaltet die Fehlererkennungsschaltung
21 die Interpolationsschaltung
26 ein und gibt einen Adreßcode ab, der die Lage der
den falschen Worten benachbarten Zeilen-Worte angibt.
Die Interpolationsschaltung 26 errechnet die Durchschnittswerte
der benachbarten Worte hinsichtlich der
jeweiligen fehlerhaften Bits und setzt sie in die Stellen
der falschen Worte ein.
Die korrigierten Datenreihen aus der Fehlerkorrekturschaltung
25 oder der Interpolationsschaltung 26
werden an einem Zeitdehnungs-Schreib/Lese-Speicher
(RAM) 27 angelegt. Falls kein Fehler ermittelt wurde,
gibt die Fehlerkorrekturschaltung 25 die Eingabedatenreihen
direkt an den Speicher 27 ab.
Der Zeitdehnungs-Speicher 27 wird zum zeilenweisen Einschreiben
des Datenblocks taktgesteuert. Die gespeicherten Daten werden dann aus dem Speicher
27 in Richtung der Spalten desselben in Aufeinanderfolge
von einer Spalte zur nächsten wiedergewonnen. Während
des Auslesevorgangs wird der Speicher 27 so taktgesteuert,
daß alle redundanten Bits ausgeschieden werden.
Die wiedergewonnenen Datenbits werden einem Digital-
Analog-Umsetzer 28 eingegeben und von dort einem Tiefpaßfilter
29 zugeführt, das bei der Digital-
Analog-Umwandlung erzeugtes Rauschen unterdrückt
und das Analogsignal an einen Ausgangsanschluß 30 abgibt.
Bei dem elektronischen Schneiden werden zwei Systeme
nach Fig. 2 verwendet, wobei beide Systeme in Wiedergabe-
Betriebsart und synchron arbeiten.
Wenn ein gewünschter Datenpunkt oder Schnittpunkt erreicht
ist, schaltet die Bedienungsperson eines der
Systeme von der Wiedergabe-Betriebsart auf die Aufnahme-
bzw. Aufzeichnungsbetriebsart, um die Daten des anderen
Systems zu überspielen. Die Wahl dieses Schnittpunkts
erfolgt auf elektronische Weise mit Hilfe eines nicht
gezeigten Speichers, in welchen eine Gruppe von Daten
um den Schnittpunkt herum eingespeichert wird. Dieser
Speicher wird so gesteuert, daß der Betrieb des Systems,
in das die Daten überspielt werden sollen, von Wiedergabe
auf Aufzeichnung unmittelbar nach dem Abschluß
eines Datenrasters geschaltet wird, so daß der nachfolgende
Paritätsraster gelöscht wird. Aufgrund des Verlustes
des Paritätsrasters werden bei der Wiedergabe
die zugeordneten Datenraster als solche mit zwei oder
mehr Fehlern ermittelt, so daß die Interpolationsschaltung
26 diese Fehler durch die vorstehend beschriebene
Interpolation korrigieren kann.
Gemäß einem zweiten Ausführungsbeispiel des Formatierungsverfahrens
bzw. der Formatierungsvorrichtung wird das
Datenformat so abgeändert, wie es in den Fig. 4 und
5 gezeigt ist. Bei diesem Ausführungsbeispiel besteht
das Nachrichtensignal aus einem Vierkanal-Tonfrequenzsignal.
Zur Vereinfachung der Erläuterung wird das
Ausführungsbeispiel jedoch nur anhand des Signals für
den Kanal Nr. 1 beschrieben. Gemäß der Darstellung
in Fig. 4 wird das erste Kanalsignal auf die bei dem
vorangehenden Ausführungsbeispiel beschriebene Weise
in Datenworte umgesetzt und drei Aufzeichnungsspuren
anstelle von vier Spuren zugeordnet. Für Datenworte
einer jeden Spalte werden jeweils Paritätsprüfworte
durch folgende Modulo-2-Summationen gebildet:
Die Datenworte d einer jeden Zeile eines Rasters bilden
ein Gruppendatenwort D i (wobei i von 1 bis 42 beträgt),
während ein Satz von drei Gruppendatenworten D i , D i+1
und D i+2 eines jeden Rasters ein Rasterdatenwort bilden.
Die Paritätsprüfworte p einer jeden Zeile für die Länge
eines Rasters bilden ein P-Paritätsprüfwort P j (wobei
j im Bereich von 1 bis 14 liegt). Wie nachstehend beschrieben
wird, werden Q-Paritätsprüfworte Q₁ bis Q₆
erzeugt und den drei Spuren der beiden Raster # 15
und # 16 zugeordnet. Zusätzlich werden aus den Q-Paritätsprüfworten
Q₁ bis Q₃ bzw. Q₄ bis Q₆ P-Paritätsprüfworte
P₁₅ und P₁₆ erzeugt und in den Rastern # 15 und
# 16 der gleichen Spur wie die P-Paritätsprüfworte
P₁ bis P₁₄ zugeordnet. Jedes Q-Paritätsprüfwort bzw.
Paritätswort umfaßt so viele q-Paritätsworte, wie Datenworte
d in jedem Gruppendatenwort D vorhanden sind.
Jedes der P-Paritätsworte P₁₅ und P₁₆ umfaßt p-Paritätsworte
p₁, bis p n , die aus den folgenden Gleichungen
abgeleitet sind:
Wie bei dem vorangehenden Ausführungsbeispiel geht
den Gruppendatenworten D und den P-Paritätsworten P₁
bis P₁₄ jeweils ein Raster-Synchronisiercode S voraus
und es folgt diesen Worten ein zyklischer Blocksicherungscode,
während den Q-Paritätsworten und den P-Paritätsworten
P₁₅ und P₁₆ jeweils ein Raster-Synchronisiercode
S′ vorangeht und ein zyklischer Blocksicherungscode
nachfolgt.
Die Gruppendatenworte D und die P-Paritätsprüfworte,
die in Richtung der Spuren angeordnet sind,
haben in Richtung quer zum Spurenverlauf einen 3-Spuren-
Abstand, so daß jede Gruppe von Worten im Gruppenverlauf
der Spur # (a + mb) zugeordnet ist, wobei a die Kanalnummer,
b die Anzahl der für Datenworte D und ein
P-Paritätswort eines jeden Rasters zur Verfügung stehenden
Spuren (bei diesem Beispiel 4)
und m eine ganze Zahl von 0 bis 3 bezeichnen. Daher sind die
Daten- und Paritätsworte des Kanalsignals # 1 der Spur
# 1, # 5, # 9 und # 13 zugeordnet.
Die Ableitung der Q-Paritätsworte wird nun anhand
Fig. 5 beschrieben. Zur Ableitung eines Satzes
von sechs Q-Paritätsworten Q₁ bis Q₆ werden
Gruppendatenworte D₁ bis D₄₂ zu einem Satz von sechs
Kombinationen gleichartig markierter Rechteckflächen
so gruppiert, daß jede Kombination sieben Gruppendatenworte
von diagonal angeordneten Flächen enthält.
Im einzelnen werden die Q-Paritätsworte durch die folgenden
Modulo-2-Additionen erzeugt:
wobei beispielsweise D₁(d₁) das Datenwort d₁ der Datenwortgruppe
D₁ darstellt (Fig. 4 und 5).
Aus Fig. 5 ist ersichtlich, daß die Datenworte,
die ein jeweiliges Q-Paritätswort bilden, in Längsrichtung
der Bandbewegung um eine Strecke von zwei Rastern
und ferner in Querrichtung um eine Strecke von N Spuren
versetzt sind, wobei N die Anzahl der Kanäle darstellt;
dadurch kann der Abstand zwischen den Datenworten zur
Bildung eines jeweiligen P-Paritätsworts auf ein Maximum
gebracht werden.
Fig. 6 stellt ein praktisches Ausführungsbeispiel
der Codiervorrichtung dar, bei dem die vorstehend
erläuterte Codierung erfolgt. Das System weist einen
Zeitverdichtungs-Schreib/Lese-Speicher 34 auf, der
digital umgesetzte Vierkanal-Signale aus nicht gezeigten
jeweiligen Analog-Digital-Umsetzern speichert.
Zur Vereinfachung der Erläuterung ist nur der Schaltungsaufbau
für die Daten des Kanals # 1 dargestellt,
da die den anderen Kanälen zugeordneten Schaltungen
im Aufbau mit der Schaltung für den Kanal # 1 identisch
sind. Wie bei dem vorangehenden Ausführungsbeispiel
werden unabhängig von den Einschreibvorgängen der anderen
Kanäle die Daten des Kanals # 1 in Spaltenrichtung
eingespeichert und in Zeilenrichtung auf Spalten-Grundlage
zurückgeholt, so daß die wiedergewonnenen Daten
einen Satz von drei Reihen aus 14 Rastern mit Datenworten
d 1, d 4 . . . d 3n-2 (d 2, d 3n-1; d 6, . . .
d 3n ) bilden, die zur Einfügung von redundanten Worten
seitlich komprimiert sind. Die Ausgabedaten in den
drei Reihen für die jeweiligen Aufzeichnungsspuren
werden an eine Verzögerungsspeichereinheit 35 und an
einen Mischpunkt 37 angelegt. Wie nachstehend beschrieben
wird, führt die Verzögerungsspeichereinheit 35
verschiedene Verzögerungen ein, von denen jede ein
ganzzahliges Vielfaches eines 2-Raster-Intervalls ist,
wobei die ganze Zahl von 1 bis 7 beträgt. Ein
Satz von sieben Datenreihen wird so erzeugt, daß die
Datenworte, die das zugeordnete Q-Paritätswort bilden,
in Phase an den Eingängen eines Q-Paritätsgenerators
36 erscheinen, damit dieser bei geeigneten Zeitlücken
die Q-Paritätsworte Q₁ bis Q₆ erzeugt, die dann an
dem Mischpunkt 37 in die drei Datenreihen bzw. Datenfolgen
eingefügt werden.
In Fig. 7 sind die Verzögerungsspeichereinheit
35 und der Q-Paritätsgenerator 36 in Einzelheiten gezeigt.
Die Verrzögerungsspeichereinheit 35 weist drei
Gruppen 35 a, 35 b und 35 c von digitalen Speicherverzögerungselementen
auf. Jede Speichergruppe hat sieben
Verzögerungselemente, wobei die Zahlen in einem jeden
Elemente-Bezeichnungsblock die Verzögerungsintervalle
in Rastern ausgedrückt angeben. In der Gruppe 35 a werden
die der Spur # 1 zugeordneten Datenworte d 1, d 4, . . . ,
d 3n-2 um Intervalle von 14, 8 bzw. 2 Rastern verzögert,
während die der Spur # 5 zugeordneten Datenworte d 2,
d 5, . . . , d 3n-1 um Intervalle von 12 bzw. 6 Rastern
und auf gleichartige Weise die der
Spur # 9 zugeordneten Datenworte d 3, d 6, . . . , d 3n um
Intervalle von 10 bzw. 4 Rastern verzögert werden.
Auf diese Weise werden für das Q-Paritätswort Q₂ die
Gruppendatenworte D₁, D₈, D₁₅, D₁₉, D₂₆, D₃₃ und
D₃₇ hinsichtlich der Phase ausgerichtet. In gleicher
Weise werden beim nächsten Raster f das Q-Paritätswort Q₅
(nach der Phasenausrichtung der Gruppendatenworte für
das Paritätswort Q₁) die Gruppendatenworte D₄, D₁₁,
D₁₈, D₂₂, D₂₉, D₃₆ und D₄₀ hinsichtlich der Phase ausgeglichen.
Die danach hinsichtlich der Phase ausgerichteten
Gruppendatenworte D werden einem Q₂-Q₅-Paritätsgenerator
36 a zur Erzeugung von Paritätsworten Q₂ bzw.
Q₅ durch Modulo-2-Summation der zugeführten Datenworte
D zugeführt. Die erzeugten Paritätsworte Q₂ und Q₅
werden jeweils an dem Mischpunkt 37 in die Raster # 15
bzw. # 16 der Spur # 5 eingesetzt
Auf gleichartige Weise ergibt die Gruppe 35 b der
Verzögerungselemente eine Phasenausrichtung der Gruppendatenworte
D₂, D₉, D₁₃, D₂₀, D₂₇ D₃₁ und D₃₈ für das
Q-Paritätswort Q₃ und die nachfolgende Phasenausrichtung
der Gruppendatenworte D₅, D₁₂, D₁₆, D₃₀ D₃₄ und D₄₁
für das Q-Paritätswort Q₆. Ein Q₃-Q₆-Paritätsgenerator
36 b erzeugt in Aufeinanderfolge die Paritätsworte Q₃
und Q₆ zum jeweiligen Einsetzen in die Raster # 15
bzw. # 16. Die Gruppe 35 c der Verzögerungselemente
führt die Phasenausrichtung der Gruppendatenworte D₃,
D₇, D₁₄, D₂₁, D₂₅, D₃₂ und D₃₉ für das Q-Paritätswort
Q₁ und die nachfolgende Phasenausrichtung bezüglich
der Gruppendatenworte D₆, D₁₀, D₁₇, D₂₄, D₂₈, D₃₅ und
D₄₂ für das Q-Paritätswort Q₄ aus. Ein Q₁-Q₄-Paritätsgenerator
erzeugt in Aufeinanderfolge die Paritätsworte
Q₁ und Q₄ für das Einsetzen in das Raster # 15 bzw.
# 16 der Spur # 1.
Gemäß Fig. 6 werden die Ausgangssignale des Mischpunkts
37 einem P-Paritätsgenerator 38 und ferner einem
zweiten Mischpunkt 39 zugeführt, an den die Ausgangssignale
des Paritätsgenerators 38 angelegt werden.
Mittels dieses Paritätsgenerators 38 werden die Datenwortgruppen
eines jeden Rasters unter Modulo-2-Summation
addiert, um die P-Paritätsworte P₁ bis P₁₄ zu bilden. Der
Paritätsgenerator 38 addiert auch die Q-Paritätswortgruppen eines jeden Rasters
unter Modulo-2-Summation, um die P-Paritätsworte
P₁₅ und P₁₆ zu bilden. Die auf diese Weise abgeleiteten
P-Paritätsworte werden in die Datenspur # 13 eingesetzt.
Wie bei dem vorangehenden Ausführungsbeispiel werden
an einem Verknüpfungspunkt 42 in die Datenworte und
die Prüfworte mittels eines Blocksicherungscode- bzw.
CRCC-Generators 40 zyklische Blocksicherungscodes sowie
mittels eines Raster-Sychronisiergenerators 41 Raster-
Synchronisiercodes S und S′ eingefügt, um damit einen
Datenblock fertigzustellen, der dann über den Modulator
den Aufzeichnungsköpfen zugeführt wird.
Die vom Demodulator wiedergegebenen Daten
werden zunächst einem Gleichlaufschwankungs-Abfangspeicher 50
und einer Synchronisier-Abtrennstufe 49 zugeführt,
um damit die Gleichlaufschwankungs-Komponenten auszuscheiden,
und dann wie bei dem ersten Ausführungsbeispiel an
einen 1-Raster-Verzögerungsspeicher 52 und eine Fehlererkennungsschaltung
51 angelegt.
Die verzögerten Daten aus dem Verzögerungsspeicher
52 werden an eine Interpolationsschaltung 56 und eine
Fehlerkorrekturschaltung 55 angelegt, an die auch von
der Fehlererkennungsschaltung 51 ein Fehlerstellenanzeigecode
bzw. Fehleradreßcode angelegt wird.
Die Einzelheiten der Fehlerkorrekturschaltung
55 werden nun anhand der Fig. 8 beschrieben. Die Fehlerkorrekturschaltung
55 weist allgemein eine erste und
eine zweite P-Paritätskorrekturschaltung 58 a bzw. 58 b
und eine erste und eine zweite Q-Paritätskorrekturschaltung
59 a bzw. 59 b auf, wobei die erste P-Paritätskorrekturschaltung
58 a und die erste Q-Paritätskorrekturschaltung
59 a eine erste Stufe zur P-Q-Paritätskorrektur
bilden und der zweite Satz von Korrekturschaltungen
58 b und 59 b eine nachfolgende Stufe zur Wiederholung
der P-Q-Paritätskorrektur darstellen. Jede P-Paritätskorrekturschaltung
weist eine logische Steuerschaltung
60, einen Syndromgenerator 61 und eine P-Paritätsprüfschaltung
62 auf. Die Steuerschaltung 60 empfängt Eingangsdaten
aus der Fehlererkennungsschaltung 51 und
wertet den Rasteradreßcode aus, um zu erfassen, ob
nur ein Fehler in einem der Gruppendatenworte aufgetreten
ist; daraufhin gibt die Steuerschaltung an den
Syndromgenerator 61 einen Befehl zur Wahl eines entsprechenden
Syndroms ab, das dann vom Generator
erzeugt wird. Nimmt man an, daß das Datenwort d₁ der
Datenwortgruppe D₉ fehlerhaft ist, so wird von dem Syndromgenerator
61 die Wahl des Syndroms Sp 3(1) aus dem
folgenden Satz von Syndromen befohlen:
Die prüfschaltung 62 führt die folgende Modulo-
2-Addition aus:
D 9(d 1) ⊕ Sp 3(1) = D 9(d 1)′
wobei sie die fehlerhaften Daten D 9(d 1) dadurch korrigiert,
daß sie sie durch D 9(d 1)′ ersetzt. Falls beispielsweise
ein zusätzlicher Fehler in den Daten D 37(d 1)
ermittelt wird, wird an dem Syndromgenerator 61 darauffolgend
die Wahl des Syndroms Sp 13(1) aus den durch
die Gleichungen (5) gegebenen erzeugten Sybdromen befohlen,
damit die P-Paritätsprüfschaltung 62 diesen
Fehler durch die Modulo-2-Addition
D 37(d 1) ⊕ Sp 13(1) = D 37(d 1)′
korrigieren kann. Bei jedem Korrekturvorgang
mittels der Paritätsprüfschaltung 62 bringt
die logische Steuerschaltung 60 einen Fehleradreßplan
auf den letzten Stand, um damit die Fehleradresse zu
löschen. Wenn alle durch die P-Parität korrigierbaren
Fehler in der Paritätsprüfschaltung 62 korrigiert wurden,
schaltet die logische Steuerschaltung 60 weiter und
überträgt die Plandaten an die Q-Paritätskorrekturschaltung
59 a
Jede Q-Paritätskorrekturschaltung weist Verzögerungsspeicher
63 und 64, eine logische Steuerschaltung
65, einen Syndromgenerator 66 und eine Q-Paritätsprüfschaltung
67 auf. Die Daten aus der P-Paritätsprüfstufe
62 werden an den Verzögerungsspeicher 64 angelegt,
während die Daten aus der Steuerschaltung 60 an den
Verzögerungsspeicher 63 angelegt werden. Der Verzögerungsspeicher
64 führt verschiedene Verzögerungen aus,
die im wesentlichen mit denjenigen der Verzögerungsspeichereinheit
35 identisch sind, so daß daher die
zeitlich seriellen Datenworte hinsichtlich der Phase
mit dem zugeordneten Q-Paritätswort ausgerichtet werden.
Der Verzögerungsspeicher 63 führt eine Verzögerung
um ein Intervall von 14 Rastern ein, um damit die Eingangsplandaten
hinsichtlich der Phase mit den an der
Q-Paritätsprüfschaltung 67 und dem Syndromgenerator
66 eingetroffenen Datenworten auszurichten. Die logische
Steuerschaltung 65 gibt nur dann an den Syndromgenerator
66 Befehle ab, wenn nur ein Fehler in einer Gruppe
der Q-Paritätsdatenworte vorliegt. Falls beispielsweise
das Datenwort D 9(d 1) als fehlerhaft befunden wurde,
erhält der Syndromgenerator 66 den Befehl, das Syndrom
Sq 3(1) aus den folgenden Syndromen zu wählen:
D 1(d 1) ⊕ D 8(d 1) ⊕ D 15(d 1) ⊕ D 19(d 1) ⊕ D 26(d 1)
⊕ D 33(d 1) ⊕ D 37(d 1) ⊕ Q 2(q 1) = Sq 2(1)
D 2(d 1) ⊕ D 9(d 1) ⊕ D 13(d 1) ⊕ D 20(d 1) ⊕ D 27(d 1) ⊕ D 31(d 1) ⊕ D 38(d 1) ⊕ Q 3(q 1) = Sq 3(1) (6)
D 3(d 1) ⊕ D 7(d 1) ⊕ D 14(d 1) ⊕ D 21(d 1) ⊕ D 25(d 1) ⊕ D 32(d 1) ⊕ D 39(d 1) ⊕ Q 1(q 1) = Sq 1(1)
D 2(d 1) ⊕ D 9(d 1) ⊕ D 13(d 1) ⊕ D 20(d 1) ⊕ D 27(d 1) ⊕ D 31(d 1) ⊕ D 38(d 1) ⊕ Q 3(q 1) = Sq 3(1) (6)
D 3(d 1) ⊕ D 7(d 1) ⊕ D 14(d 1) ⊕ D 21(d 1) ⊕ D 25(d 1) ⊕ D 32(d 1) ⊕ D 39(d 1) ⊕ Q 1(q 1) = Sq 1(1)
Danach führt die Q-Paritätsprüfschaltung 67 die Modulo-
2-Summation
D 9(d 1) ⊕ Sq 3(1) = D 9(d 1)′
aus und setzt das Ergebnis in das fehlerhafte Datenwort
ein. Eine gleichartige Korrektur findet auch statt,
wenn ein zusätzlicher Fehler in einem Datenwort vorliegt,
das nach dem vorgenannten Datenwort auftritt. Die logische
Steuerschaltung 65 bringt bei jeder
Q-Paritätskorrektur ihren Adressenplan auf den letzten
Stand. Falls ein weiterer Fehler oder mehrere weitere
Fehler in dem auf den letzten Stand gebrachten Plan
entdeckt werden, die durch die P-Paritäts-Modulo-2-
Rechnung korrigiert werden können, überträgt die logische
Steuerschaltung 65 ihre Plandaten zu der P-Paritätskorrekturschaltung
58 b, so daß der vorstehend beschriebene
Korrekturvorgang wiederholt wird, bis alle Fehler
behoben sind, die mit Syndromen durch aufeinanderfolgende
P- und Q-Paritäts-Modulo-2-Rechenvorgänge korrigierbar
sind.
Die vorstehend beschriebenen Korrekturvorgänge
gehen am deutlichsten aus der folgenden Beschreibung
der Fig. 9 hervor, gemäß der die Datenworte
der Modulo-2-Kombinationen für die Q₁-, die Q₂- und
die Q₃-Parität in ein Zeilen-Spalten-Muster so umgeordnet
sind, daß den jeweiligen Zeilendaten ihr Q-Paritätswort
zugeordnet ist. Wenn gemäß der Markierung durch
Kreise sechs Fehler aufgetreten sind, was einen der
schwerwiegendsten Fälle darstellt, erfolgt zuerst
die P-Paritätskorrektur bezüglich des Datenworts bzw.
Gruppendatenworts D₃₇, da die logische Steuerschaltung
60 das fehlerhafte Paritätswort P₁₁ ausscheidet. Nach
der P-Paritätskorrektur des Gruppendatenworts D₃₇ kommt
die Q-Paritätskorrekturschaltung 59 a zur Wirkung und
führt die Korrektur des Datenworts D₃ und des nachfolgenden
Datenworts D₉ aus, da in jeder dieser Zeilen nur
ein Fehler vorliegt. Nach der aufeinanderfolgenden
Korrektur der Datenworte D₃ und D₉ wird die P-Paritätskorrekturschaltung
58 b in Betrieb gesetzt, um das Datenwort
D₁ und darauffolgend das Datenwort D₈ zu korrigieren.
Auf diese Weise können durch die wiederholten
P- und Q-Paritätskorrekturvorgänge die meisten der
möglichen Fehler korrigiert werden.
Falls jedoch gemäß der Darstellung in Fig. 10
gleichzeitig in zwei Zeilen und zwei Spalten mehr als
ein Fehler vorliegt, kann der vorstehend beschriebene
Korrekturvorgang nicht angewandt werden. In diesem
Fall gibt die Fehlererkennungsschaltung 51 Befehle
an die Interpolationsschaltung 56 ab, derartige Fehler
durch Interpolation zu korrigieren, wie es bei dem
vorangehenden Ausführungsbeispiel beschrieben wurde.
Die hinsichtlich der Fehler korrigierten Datenreihen
werden wie bei dem vorangehenden Ausführungsbeispiel
an einen Zeitdehnungs-Schreib/Lese-Speicher (RAM)
57 zum Ausscheiden der redundanten Bits und zur zeitlichen
Zusammenfassung der Datenworte angelegt.
Da jedes der Q-Paritätsprüfworte aus einer Kombination
diagonal angeordneter Datenworte abgeleitet ist,
sind die aufgezeichneten Daten insbesondere gegenüber
zeitlich geballt auftretenden Störungen unempfindlich,
die auf der Bandstrecke aufzutreten pflegen.
Das zweite Ausführungsbeispiel des Codierverfahrens
bzw. der Codiervorrichtung erlaubt es, den elektronischen
Schnittpunkt in die Mitte des 15. oder 16. Rasters
(und damit des Rasters # 1 der # 2 des Q-Paritätsfelds)
zu legen, um damit wegen der langsamen und schnellen
Gleichlaufschwankungen einen Verlust von Raster-Synchronisiercodes
zu vermeiden. Obgleich dies den Verlust
eines Q-Paritätsfelds darstellt, ergibt das
Vorliegen der P-Paritätsspur eine Sicherung gegenüber
einem Einzelfehler bei jeweiligen Spaltendaten in diesem
Block. Da der Verlust der Q-Parität nur in einem einzigen
Datenblock des "geschnittenen" Bands auftritt, wird
die Fehlerkorrekturfähigkeit bei diesen Codierungs-
Vorgehen nicht wesentlich beeinträchtigt.
Eine Abwandlung des Datenformats des zweiten Ausführungsbeispiels
ist in Fig. 11 dargestellt, gemäß
welcher Datenworte in vier Spuren angeordnet sind und
P-Paritätsworte in einem P-Paritätsfeld angeordnet
sind, das an einer dem Datenfeld folgenden Stelle aufgezeichnet
wird, wobei das Q-Paritätsfeld an einer dem
P-Paritätsfeld folgenden Stelle aufgezeichnet wird.
Gemäß dieser Abwandlungsform werden die P-Paritätsworte und
die Q-Paritätsworte durch die folgenden Modulo-2-Summationen
gewonnen.
Es ist ersichtlich, daß ein Datenblock zehn Raster
mit sechs Datenrastern, zwei P-Paritätsrastern und
zwei Q-Paritätsrastern aufweist. Jedes P-Paritätswort
wird aus einer Kombination von Datenworten abgeleitet,
die an diagonal versetzten Stellen liegen, wobei die
Datenworte in Längsrichtung um einen Abstand von zwei
Rastern und quer um einen Abstand von mindestens 2n
Spuren versetzt sind (wobei n die Anzahl der Spuren
für einen jeden Kanal ist), so daß keine Datenwort-
Kombination vorliegt, die in der Querrichtung bzw.
der Spaltenrichtung ausgefluchtet ist. Die Q-Paritätsworte
werden jeweils aus einer Kombination von
Datenworten abgeleitet, die gleichfalls an diagonal
versetzten Stellen liegen, wobei die Datenworte einer
jeden Spur gegeneinander um einen Abstand von vier
Rastern versetzt sind.
Fig. 12 verdeutlicht die Anordnung der Worte
in einem Zeilen-Spalten-Muster, wobei die Zeilen die
Q-Paritätsworte Q₁ bis Q₈ darstellen, während die Spalten
die P-Paritätsworte P₁ bis P₈ zeigen. Die in den
Klammern angegebenen P-Paritätsworte sind nur den an
der linken Seite des Musters angegebenen
Q-Paritätsworten zugeordnet. Es ist daher ersichtlich,
daß gemäß der vorangehenden Beschreibung der
Fig. 10 die mittels der P- und der Q-Paritätsworte
unkorrigierbaren Fehler dann auftreten, wenn jede der
zwei oder mehr P-Paritätsspalten zwei oder mehr Fehler
enthält, die auch in den gleichen Q-Paritätszeilen
auftreten. In einem solchen Fall wird die Interpolations-
Korrektur vorgenommen.
Das elektronische Schneiden kann an einem Q-Paritätsraster
vorgenommen werden, was zu dem Verlust des
Q-Paritätsfelds führt. Die P-Paritätsworte bleiben
jedoch unbeeinträchtigt, so daß die P-Paritätskorrektur
sichergestellt ist.
Fig. 13 zeigt ein praktisches Ausführungsbeispiel
der Codiervorrichtung für das abgewandelte Datenformat.
Ein Verzögerungsspeicher 70 ergibt die Phasenausrichtung
der Datenworte der vier Spuren dadurch, daß
er den Datenworten, die ein jeweiliges P-Paritätswort
bilden, Verzögerungen in Intervallen von 2, 4 und 6
Rastern erteilt. Ein P-Paritätsgenerator 71 erzeugt
einen Satz von P-Paritätsworten P₁ bis P₄ in der siebten
Rasterstelle und einen Satz von P-Paritätsworten P₅
bis P₈ in der achten Rasterstelle. Die P-Paritätsworte
werden an einem Mischpunkt 72 in die Datenreihe aus
dem Zeitverdichtungs-Speicher eingefügt. Die hinsichtlich
der P-Parität codierten Datenreihen werden in einem
zweiten Verzögerungsspeicher 73 eingegeben, der Verzögerungen
wie bei dem Verzögerungsspeicher 70 herbeiführt.
Die hinsichtlich der Phase ausgerichteten Daten und
P-Paritätsworte werden in einen Q-Paritätsgenerator
74 eingegeben, der Q-Paritätsworte Q₁ bis Q₄ in der
neunten Rasterstelle und Q-Paritätsworte Q₅ bis Q₈
in der zehnten Rasterstelle erzeugt, die dann einem
Mischpunkt 75 zugeführt werden, wo sie in die Datenreihe
aus dem Mischpunkt 72 eingefügt werden.
Gemäß der vorstehenden Beschreibung werden somit bei
dem Formatierungsverfahren bzw. bei der Formatierungsvorrichtung Ursprungsdaten
bzw. Quellendaten mittels eines Zeitverdichtungs-
Speichers in eine Vielzahl von aufeinanderfolgenden
Gruppen aus Datenworten aufgegliedert, die in einem
Muster aus Zeilen und Spalten angeordnet sind, wobei
die Zeilen jeweiligen Aufzeichnungsspuren entsprechen.
Den Datenwort-Gruppen nachfolgend wird eine Vielzahl
aufeinanderfolgender Gruppen von Paritätsprüfworten
in dem gleichen Muster aus Zeilen und Spalten
wie bei den Datenworten gebildet. Jedes Paritätsprüfwort
wird in einem Paritätsgenerator durch Modulo-2-
Summationen von Datenworten abgeleitet, die aus voneinander
verschiedenen Datenwort-Gruppen gewählt werden.
Den Daten- und Prüfworten einer jeden Zeile einer jeweiligen
Gruppe geht jeweils ein von einem Synchronisiergenerator
gelieferter Synchronisiercode voraus, der
die Unterscheidung zwischen Daten- und Paritätsgruppen
erlaubt, und es folgt jeweils ein von einem Blocksicherungscode-
bzw. CRCC-Generator erzeugter zyklischer
Redundanzprüfcode bzw. Blochsicherungscode (CRCC),
der die Ermittlung eines Fehlers in den Datenworten
oder Prüfworten dieser Zeile ermöglicht. Das Paritätsprüfwort
wird dazu verwendet, auf die Ermittlung eines
Fehlers hin den durch den Blocksicherungscode benannten
Fehler zu korrigieren.
Claims (10)
1. Verfahren zur fehlergesicherten Formatierung von wortweise
anfallenden Daten durch Bildung von Blöcken mit
jeweils einem Daten- und einem Paritätsprüffeld, wobei
zumindest das Datenfeld aus einer Anzahl von Teilblöcken
besteht, und alle Teilblöcke zeilenweise mit einem fehlererkennenden
Paritätszeichen abgesichert sind, dadurch
gekennzeichnet, daß die Datenworte fortlaufend ein Wort
pro Zeile in aufeinanderfolgenden Zeilen angeordnet sind,
daß das Paritätsprüffeld halb so viele Teilblöcke wie das
Datenfeld aufweist, die pro Zeile ebensoviele Worte aufweisen,
wie eine Zeile eines Teilblocks des Datenfelds, und
daß jedes Wort einer Zeile eines Teilblocks des Paritätsprüffeldes
durch modulo-2-Addition des entsprechenden
Datenworts in derselben Zeile des zugeordneten Teilblocks
in der ersten Hälfte des Datenfelds und des entsprechenden
Datenworts in derselben Zeile des zugeordneten Teilblocks
in der zweiten Hälfte des Datenfeldes gebildet ist.
2. Verfahren zur fehlergesicherten Formatierung von wortweise
anfallenden Daten durch Bildung von Blöcken mit
jeweils einem Daten- und einem Paritätsprüffeld, wobei
zumindest das Datenfeld aus einer Anzahl von Teilblöcken
besteht, und alle Teilblöcke zeilenweise mit einem fehlererkennenden
Paritätszeichen abgesichert sind, dadurch
gekennzeichnet, daß die Datenworte fortlaufend ein Wort
pro Zeile in aufeinanderfolgenden Zeilen angeordnet sind,
daß die Worte von zyklisch aufeinanderfolgenden Zeilen von
gleich beabstandeten Teilblöcken des Datenfeldes zur wortweisen
Erzeugung der im Zyklus anschließenden Zeilen der
Teilblöcke des Paritätsfeldes modulo-2-addiert werden,
wobei die Zahl der jeweils addierten Worte gleich der
halben Anzahl der Teilblöcke des Datenfeldes ist, und daß
alle Teilblöcke des Daten- und des Paritätsprüffeldes
durch eine zusätzliche Zeile gleicher Struktur ergänzt
werden, die durch wortweise modulo-2-Addition über die
vorhandenen Zeilen gebildet wird.
3. Verfahren nach Patentanspruch 1 oder 2, dadurch gekennzeichnet,
daß zu Beginn jedes Teilblocks ein Synchronisiercode
(S, S′) eingefügt wird, der für das Datenfeld
bzw. das Paritätsprüffeld jeweils verschieden ist.
4. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß
Blöcke verschiedener Datenquellen zeilenweise zyklisch
verschachtelt werden.
5. Verfahren nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet, daß bei Erkennen von korrigierbaren
Fehlern die Daten entsprechend korrigiert werden und
daß bei unkorrigierbaren Fehlern die Daten mittels benachbarter
Werte interpoliert werden.
6. Vorrichtung zur Durchführung des Verfahrens nach
Anspruch 1, gekennzeichnet durch einen Zeitverdichtungs-
Speicher (4) zum Speichern der Daten, einen mit dem Zeitverdichtungs-
Speicher (4) verbundenen Verzögerungsspeicher
(5), der die vom Zeitverdichtungsspeicher (4) ausgegebenen
Daten um ein der halben Anzahl der Teilblöcke des Datenfelds
entsprechendes Zeitintervall verzögert und ausgangsseitig
mit einem Paritätsgenerator (6) verbunden ist, der
über einen weiteren Eingang mit dem Zeitverdichtungsspeicher
(4) gekoppelt ist und die von ihm erzeugten Paritätsworte
an einen nachgeschalteten Verzögerungsspeicher (7)
abgibt, der die Paritätsworte um ein der halben Anzahl der
Teilblöcke des Datenfelds entsprechenden Zeitintervall
verzögert und diese dann an eine Mischschaltung (8) anlegt,
deren anderer Eingang direkt mit dem Zeitverdichtungsspeicher
(4) verbunden ist und die die Teilblöcke des
durch die Paritätsworte gebildeten Paritätsprüffelds im
Anschluß an die Teilblöcke des Datenfelds anhängt.
7. Vorrichtung nach Anspruch 6, dadurch gekennzeichnet,
daß mit dem Ausgang der Mischschaltung (8) eine weitere
Mischschaltung (11) verbunden ist, die zusätzliche Signale
eines Blocksicherungscode-Generators (9) und eines Rastersynchronisier-
Generators (10) empfängt und die Synchronisierdaten
des Rastersynchronisier-Generators (10) vor
jedem Teilblock einfügt, während sie die Blocksicherungscodes
des Blocksicherungscode-Generators (9) im Anschluß
an die letzten Daten- bzw. Paritätsprüfworte einer jeweiligen
Zeile anfügt.
8. Vorrichtung zur Durchführung des Verfahrens nach
Anspruch 2, gekennzeichnet durch einen Zeitverdichtungsspeicher
(34), mit dessen Ausgang eine Verzögerungsspeichereinheit
(35) verbunden ist, die die vom Zeitverdichtungsspeicher
(34) abgegebenen Datenworte jeweils mehrfach
um ganzzahlige Vielfache eines zwei Teilblöcken entsprechenden
Intervalls verzögert und die derart verzögerten
Datenworte an mehrere Eingänge eines Q-Paritätsgenerators
(36) abgibt, der hierzu jeweils ein Q-Paritätswort bildet,
das jeweils über eine Mischschaltung (37) den zur
Bildung des jeweiligen Q-Paritätsworts herangezogenen
Datenworten zyklisch nachfolgend angefügt wird, und daß
mit der Mischschaltung (37) ein P-Paritätsgenerator (38)
verbunden ist, der aus den in gleichen Spalten stehenden
Datenworten bzw. Q-Paritätsprüfworten zusätzliche P-Paritätsprüfworte
erzeugt, die über eine weitere Mischschaltung
(39) in einer zusätzlichen Zeile angefügt werden.
9. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet,
daß die Verzögerungsspeichereinheit (35) drei Gruppen
(35 a, 35 b, 35 c) von jeweils 7 digitalen Speicherverzögerungselementen
aufweist, die jeweils gestaffelte Verzögerungszeitintervalle
besitzen und jeweils zyklisch mit
einer von drei Ausgangsleitungen des Zeitverdichtungsspeichers
(34) verbunden sind, und daß der Q-Paritätsgenerator
(36) aus drei Paritätsgeneratoren besteht, von denen jeweils
einer mit einer entsprechenden Gruppe (35 a, 35 b,
35 c) der digitalen Speicherverzögerungselemente verbunden
ist.
10. Vorrichtung nach einem der Ansprüche 6 bis 9, dadurch
gekennzeichnet, daß eine Aufzeichnungseinrichtung (12, 13,
14) vorhanden ist, der mehrkanalig Datenwörter zugeführt
werden, und die die Datenwörter jedes Kanals jeweils auf
mehrere Spuren eines Aufzeichnungsmaterials aufzeichnet,
die mit den Spuren der anderen Kanäle derart verschachtelt
sind, daß sie jeweils durch Spuren anderer Kanäle voneinander
getrennt sind.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP13712279A JPS5661072A (en) | 1979-10-24 | 1979-10-24 | Digital signal recording system |
| JP2558880A JPS56124108A (en) | 1980-02-29 | 1980-02-29 | Digital signal recording system |
| JP7955880A JPS576417A (en) | 1980-06-11 | 1980-06-11 | Error correction system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE3040004A1 DE3040004A1 (de) | 1981-05-07 |
| DE3040004C2 true DE3040004C2 (de) | 1987-05-21 |
Family
ID=27285065
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE19803040004 Granted DE3040004A1 (de) | 1979-10-24 | 1980-10-23 | Verfahren und vorrichtung zum codieren von pruefworten geringer redundanz aus ursprungsdaten |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US4375100A (de) |
| DE (1) | DE3040004A1 (de) |
| GB (1) | GB2061575B (de) |
Families Citing this family (87)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4692913A (en) * | 1980-11-26 | 1987-09-08 | News Log International, Inc. | Method and apparatus for reading a data record carrier |
| JPS5845613A (ja) * | 1981-09-11 | 1983-03-16 | Hitachi Ltd | Pcmレコ−ダ |
| GB2107496B (en) * | 1981-09-30 | 1985-11-20 | Hitachi Ltd | Error flag processor |
| US4503514A (en) * | 1981-12-29 | 1985-03-05 | International Business Machines Corporation | Compact high speed hashed array for dictionary storage and lookup |
| JPH07101482B2 (ja) * | 1982-01-23 | 1995-11-01 | ソニー株式会社 | ディジタル信号記録装置 |
| JPS58198935A (ja) * | 1982-05-15 | 1983-11-19 | Sony Corp | デ−タ伝送方法 |
| FR2528613B1 (fr) * | 1982-06-09 | 1991-09-20 | Hitachi Ltd | Memoire a semi-conducteurs |
| GB2122778B (en) * | 1982-06-29 | 1985-09-11 | Sony Corp | Digital audio signal processing |
| US4534031A (en) * | 1982-08-02 | 1985-08-06 | News Log International | Coded data on a record carrier and method for encoding same |
| JPH07118159B2 (ja) * | 1982-12-06 | 1995-12-18 | ソニー株式会社 | Pcm信号記録方法 |
| US4525838A (en) * | 1983-02-28 | 1985-06-25 | International Business Machines Corporation | Multibyte error correcting system involving a two-level code structure |
| JP2533076B2 (ja) * | 1983-04-30 | 1996-09-11 | ソニー株式会社 | エラ−訂正のための符号化方法 |
| GB2143659B (en) * | 1983-07-19 | 1986-11-05 | Sony Corp | Methods of and apparatus for correcting errors in binary data |
| US4584685A (en) * | 1983-12-22 | 1986-04-22 | General Electric Company | Method for improving message reception from multiple sources |
| US4593393A (en) * | 1984-02-06 | 1986-06-03 | Motorola, Inc. | Quasi parallel cyclic redundancy checker |
| US4675754A (en) * | 1984-02-21 | 1987-06-23 | Mitsubishi Denki Kabushiki Kaisha | Magnetic recorder/reproducer |
| CA1265250A (en) * | 1985-03-04 | 1990-01-30 | Alan Douglas Clark | Data transmission |
| FR2583240B1 (fr) * | 1985-06-05 | 1994-02-04 | France Telediffusion | Procede de transmission en blocs de mots d'information numerique |
| US4796243A (en) * | 1985-06-21 | 1989-01-03 | Nec Corporation | Time base correcting apparatus |
| JPS6260174A (ja) * | 1985-09-10 | 1987-03-16 | Mitsubishi Electric Corp | デ−タ記録方法 |
| US4706250A (en) * | 1985-09-27 | 1987-11-10 | International Business Machines Corporation | Method and apparatus for correcting multibyte errors having improved two-level code structure |
| US4796110A (en) * | 1986-02-18 | 1989-01-03 | Irwin Magnetic Systems, Inc. | System and method for encoding and storing digital information on magnetic tape |
| EP0276991B1 (de) * | 1987-01-30 | 1992-05-13 | Sony Corporation | Verfahren und Gerät zum Kodieren von aufgezeichneten Daten mit einem Identifikationskode und einem Fehlerprüfkode |
| US4899232A (en) * | 1987-04-07 | 1990-02-06 | Sony Corporation | Apparatus for recording and/or reproducing digital data information |
| US5161034A (en) * | 1989-07-18 | 1992-11-03 | Wnm Ventures Inc. | Branching table for interactive video display |
| JPH03198544A (ja) * | 1989-12-27 | 1991-08-29 | Nec Corp | パリティ計数回路 |
| NL9000281A (nl) * | 1990-02-06 | 1991-09-02 | Philips Nv | Werkwijze en inrichting voor het optekenen van signalen op een registratiedrager. |
| US5194996A (en) * | 1990-04-16 | 1993-03-16 | Optical Radiation Corporation | Digital audio recording format for motion picture film |
| US5375128A (en) * | 1990-10-18 | 1994-12-20 | Ibm Corporation (International Business Machines Corporation) | Fast updating of DASD arrays using selective shadow writing of parity and data blocks, tracks, or cylinders |
| US5285456A (en) * | 1991-05-15 | 1994-02-08 | International Business Machines Corporation | System and method for improving the integrity of control information |
| US6228125B1 (en) * | 1992-01-21 | 2001-05-08 | Minolta Co., Ltd. | Image processing apparatus for parallel image processing and method therefor |
| RU2159966C2 (ru) * | 1995-04-03 | 2000-11-27 | Матсусита Электрик Индастриал Ко., Лтд. | Носитель для записи информации, способ и устройство передачи информации, а также способ и устройство воспроизведения |
| CA2192062C (en) * | 1995-04-04 | 2002-10-29 | Shin-Ichi Tanaka | Recording medium, recording method and apparatus, and reproduction method and apparatus |
| JP3457093B2 (ja) * | 1995-04-14 | 2003-10-14 | 松下電器産業株式会社 | 記録媒体並びにデジタル変復調方法およびその装置 |
| US6459331B1 (en) * | 1997-09-02 | 2002-10-01 | Kabushiki Kaisha Toshiba | Noise suppression circuit, ASIC, navigation apparatus communication circuit, and communication apparatus having the same |
| US5986574A (en) * | 1997-10-16 | 1999-11-16 | Peco Energy Company | System and method for communication between remote locations |
| US20020120569A1 (en) * | 1997-10-16 | 2002-08-29 | Day Mark E. | System and method for communication between remote locations |
| JP2000251419A (ja) * | 1999-02-26 | 2000-09-14 | Sony Corp | 読み出し制御装置、再生装置、記録装置およびその方法 |
| US6405343B1 (en) * | 1999-05-04 | 2002-06-11 | Oak Technology, Inc. | ECC Q-parity checkbyte indexing |
| US6934676B2 (en) * | 2001-05-11 | 2005-08-23 | Nokia Mobile Phones Ltd. | Method and system for inter-channel signal redundancy removal in perceptual audio coding |
| EP1293978A1 (de) * | 2001-09-10 | 2003-03-19 | STMicroelectronics S.r.l. | Kodierung/Dekodierungsprozess und entsprechendes Gerät, zum Beispiel für Festplattengerät |
| US6851082B1 (en) | 2001-11-13 | 2005-02-01 | Network Appliance, Inc. | Concentrated parity technique for handling double failures and enabling storage of more than one parity block per stripe on a storage device of a storage array |
| US7346831B1 (en) | 2001-11-13 | 2008-03-18 | Network Appliance, Inc. | Parity assignment technique for parity declustering in a parity array of a storage system |
| US7613984B2 (en) * | 2001-12-28 | 2009-11-03 | Netapp, Inc. | System and method for symmetric triple parity for failing storage devices |
| US7640484B2 (en) * | 2001-12-28 | 2009-12-29 | Netapp, Inc. | Triple parity technique for enabling efficient recovery from triple failures in a storage array |
| US7073115B2 (en) * | 2001-12-28 | 2006-07-04 | Network Appliance, Inc. | Correcting multiple block data loss in a storage array using a combination of a single diagonal parity group and multiple row parity groups |
| US8402346B2 (en) * | 2001-12-28 | 2013-03-19 | Netapp, Inc. | N-way parity technique for enabling recovery from up to N storage device failures |
| US6993701B2 (en) | 2001-12-28 | 2006-01-31 | Network Appliance, Inc. | Row-diagonal parity technique for enabling efficient recovery from double failures in a storage array |
| US7080278B1 (en) | 2002-03-08 | 2006-07-18 | Network Appliance, Inc. | Technique for correcting multiple storage device failures in a storage array |
| US7539991B2 (en) | 2002-03-21 | 2009-05-26 | Netapp, Inc. | Method and apparatus for decomposing I/O tasks in a raid system |
| US7200715B2 (en) * | 2002-03-21 | 2007-04-03 | Network Appliance, Inc. | Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes |
| US7437727B2 (en) * | 2002-03-21 | 2008-10-14 | Network Appliance, Inc. | Method and apparatus for runtime resource deadlock avoidance in a raid system |
| US7254813B2 (en) * | 2002-03-21 | 2007-08-07 | Network Appliance, Inc. | Method and apparatus for resource allocation in a raid system |
| US6976146B1 (en) | 2002-05-21 | 2005-12-13 | Network Appliance, Inc. | System and method for emulating block appended checksums on storage devices by sector stealing |
| US7185144B2 (en) * | 2003-11-24 | 2007-02-27 | Network Appliance, Inc. | Semi-static distribution technique |
| US7328364B1 (en) | 2003-03-21 | 2008-02-05 | Network Appliance, Inc. | Technique for coherent suspension of I/O operations in a RAID subsystem |
| US7664913B2 (en) | 2003-03-21 | 2010-02-16 | Netapp, Inc. | Query-based spares management technique |
| US7143235B1 (en) | 2003-03-21 | 2006-11-28 | Network Appliance, Inc. | Proposed configuration management behaviors in a raid subsystem |
| US7111147B1 (en) | 2003-03-21 | 2006-09-19 | Network Appliance, Inc. | Location-independent RAID group virtual block management |
| US7424637B1 (en) | 2003-03-21 | 2008-09-09 | Networks Appliance, Inc. | Technique for managing addition of disks to a volume of a storage system |
| US7275179B1 (en) | 2003-04-24 | 2007-09-25 | Network Appliance, Inc. | System and method for reducing unrecoverable media errors in a disk subsystem |
| TWI309776B (en) * | 2003-10-24 | 2009-05-11 | Hon Hai Prec Ind Co Ltd | Secure storage system and method for solid memory |
| US7328305B2 (en) | 2003-11-03 | 2008-02-05 | Network Appliance, Inc. | Dynamic parity distribution technique |
| US7366837B2 (en) * | 2003-11-24 | 2008-04-29 | Network Appliance, Inc. | Data placement technique for striping data containers across volumes of a storage system cluster |
| US7647451B1 (en) | 2003-11-24 | 2010-01-12 | Netapp, Inc. | Data placement technique for striping data containers across volumes of a storage system cluster |
| US7263629B2 (en) * | 2003-11-24 | 2007-08-28 | Network Appliance, Inc. | Uniform and symmetric double failure correcting technique for protecting against two disk failures in a disk array |
| DE102004036383B4 (de) * | 2004-07-27 | 2006-06-14 | Siemens Ag | Codier-und Decodierverfahren , sowie Codier- und Decodiervorrichtungen |
| US20060075281A1 (en) * | 2004-09-27 | 2006-04-06 | Kimmel Jeffrey S | Use of application-level context information to detect corrupted data in a storage system |
| US7331010B2 (en) * | 2004-10-29 | 2008-02-12 | International Business Machines Corporation | System, method and storage medium for providing fault detection and correction in a memory subsystem |
| US8826093B2 (en) * | 2005-01-19 | 2014-09-02 | Qualcomm Incorporated | Power saving method for coded transmission |
| US7398460B1 (en) | 2005-01-31 | 2008-07-08 | Network Appliance, Inc. | Technique for efficiently organizing and distributing parity blocks among storage devices of a storage array |
| US7823048B2 (en) * | 2005-05-31 | 2010-10-26 | Nokia Corporation | Buffering of data from a data stream having error correction elements |
| US8560503B1 (en) | 2006-01-26 | 2013-10-15 | Netapp, Inc. | Content addressable storage system |
| EP1887446A1 (de) * | 2006-08-02 | 2008-02-13 | Siemens Aktiengesellschaft | Verfahren zur seriellen asynchronen Übertragung von Daten in einer Anordnung zur Überwachung, Steuerung und Regelung einer betriebstechnischen Anlage eines Gebäudes |
| US7822921B2 (en) | 2006-10-31 | 2010-10-26 | Netapp, Inc. | System and method for optimizing write operations in storage systems |
| US7613947B1 (en) | 2006-11-30 | 2009-11-03 | Netapp, Inc. | System and method for storage takeover |
| US7647526B1 (en) | 2006-12-06 | 2010-01-12 | Netapp, Inc. | Reducing reconstruct input/output operations in storage systems |
| US8209587B1 (en) | 2007-04-12 | 2012-06-26 | Netapp, Inc. | System and method for eliminating zeroing of disk drives in RAID arrays |
| US7840837B2 (en) * | 2007-04-27 | 2010-11-23 | Netapp, Inc. | System and method for protecting memory during system initialization |
| US8898536B2 (en) * | 2007-04-27 | 2014-11-25 | Netapp, Inc. | Multi-core engine for detecting bit errors |
| US7836331B1 (en) | 2007-05-15 | 2010-11-16 | Netapp, Inc. | System and method for protecting the contents of memory during error conditions |
| CN101312349B (zh) * | 2007-05-26 | 2010-08-25 | 华为技术有限公司 | 信息块编码及同步检测的方法和装置 |
| US7975102B1 (en) | 2007-08-06 | 2011-07-05 | Netapp, Inc. | Technique to avoid cascaded hot spotting |
| US9158579B1 (en) | 2008-11-10 | 2015-10-13 | Netapp, Inc. | System having operation queues corresponding to operation execution time |
| US8495417B2 (en) * | 2009-01-09 | 2013-07-23 | Netapp, Inc. | System and method for redundancy-protected aggregates |
| US9804925B1 (en) * | 2014-02-25 | 2017-10-31 | Google Inc. | Data reconstruction in distributed storage systems |
| US11016848B2 (en) | 2017-11-02 | 2021-05-25 | Seagate Technology Llc | Distributed data storage system with initialization-less parity |
Family Cites Families (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US3800281A (en) * | 1972-12-26 | 1974-03-26 | Ibm | Error detection and correction systems |
| US3913068A (en) * | 1974-07-30 | 1975-10-14 | Ibm | Error correction of serial data using a subfield code |
| US4052698A (en) * | 1975-03-17 | 1977-10-04 | Burroughs Corporation | Multi-parallel-channel error checking |
| JPS5380105A (en) * | 1976-12-24 | 1978-07-15 | Sony Corp | Digital signal transmission method |
| GB2012460A (en) * | 1977-11-03 | 1979-07-25 | British Broadcasting Corp | Apparatus for Processing a Digitized Analog Signal |
| 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 |
| US4205324A (en) * | 1977-12-23 | 1980-05-27 | International Business Machines Corporation | 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 |
| JPS54118748A (en) * | 1978-03-07 | 1979-09-14 | Ibm | Error channel correcting device |
| JPS54137204A (en) * | 1978-04-17 | 1979-10-24 | Sony Corp | Digital signal transmission method |
| US4211997A (en) * | 1978-11-03 | 1980-07-08 | Ampex Corporation | Method and apparatus employing an improved format for recording and reproducing digital audio |
-
1980
- 1980-10-23 US US06/199,703 patent/US4375100A/en not_active Expired - Lifetime
- 1980-10-23 GB GB8034233A patent/GB2061575B/en not_active Expired
- 1980-10-23 DE DE19803040004 patent/DE3040004A1/de active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| DE3040004A1 (de) | 1981-05-07 |
| US4375100A (en) | 1983-02-22 |
| GB2061575A (en) | 1981-05-13 |
| GB2061575B (en) | 1984-09-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE3040004C2 (de) | ||
| DE3418912C2 (de) | Verfahren zum Umgruppieren digitaler Informationsdaten für eine Fehlerermittlung und/oder -korrektur | |
| DE3119669C2 (de) | ||
| DE2915459C2 (de) | Verfahren und Vorrichtung zur fehlerkorrigierenden Codierung serieller wortweise strukturierter Daten, Verfahren und Vorrichtung zur Decodierung derart codierter Signale sowie Aufzeichnungsträger für derart codierte Signale | |
| DE3486219T2 (de) | Verfahren und vorrichtung zum aufzeichnen digitaler datensignale. | |
| DE3124425C2 (de) | Verfahren und Vorrichtung zu Fehlererkennung und Fehlerkorrektur | |
| DE2942825C2 (de) | ||
| DE2757401C2 (de) | Verfahren und Vorrichtung zur Fehlererkennung und -korrektur von wortweise parallel anfallenden Datenbits | |
| DE69609509T2 (de) | Trelliskodierung mit verminderter fehlerverbreitung | |
| DE3382713T2 (de) | Verfahren, Anordnung und Aufzeichnungsträger zur Fehlerkorrektur. | |
| DE3123978C2 (de) | Verfahren zum Decodieren und zur Korrektur von blockweisen digitalen Informationsworten und Anwendung des Verfahrens | |
| DE3416047C2 (de) | Fehlerkorrekturverfahren für digitale Informationsdaten | |
| AT393429B (de) | Speicherschaltung zur speicherung eines digitalsignals | |
| DE3128599C2 (de) | Verfahren und Vorrichtung zur Fehlererfassung und Fehlerkorrektur | |
| DE2847801C2 (de) | Kodier- und Korrektureinrichtung zum Korrigieren von seriell auf einem Aufzeichnungsträger aufgezeichneten digitalen Daten | |
| DE3685991T2 (de) | Anordnung zur dekodierung eines fehler korrigierenden codes. | |
| DE3106855C2 (de) | "Rekursives Verfahren zum Fehlercodieren sowie Vorrichtung hierfür" | |
| DE3783253T2 (de) | Fehlerkorrekturverfahren. | |
| DE3038066A1 (de) | Verfahren und vorrichtung zur uebermittlung digitaler informationsworte mittels fehlerkorrekturcodierung | |
| DE3131764A1 (de) | Digitalsignal-uebertragungssystem | |
| DE2821305C2 (de) | ||
| DE2427463C3 (de) | ||
| DE69023808T2 (de) | Verfahren und Aufzeichnungs- und Wiedergabegerät mit einem rotierenden Kopf. | |
| DE3784745T2 (de) | Verfahren zur uebertragung und aufzeichnung von daten. | |
| DE3735979A1 (de) | Pcm-signalwiedergabevorrichtung mit fehler/loeschkorrekturschaltung |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 8110 | Request for examination paragraph 44 | ||
| 8125 | Change of the main classification | ||
| 8126 | Change of the secondary classification | ||
| D2 | Grant after examination | ||
| 8364 | No opposition during term of opposition | ||
| 8339 | Ceased/non-payment of the annual fee |