-
Die vorliegende Erfindung betrifft ein Decodierverfahren oder ein
Codefehlerkorrekturverfahren in einem Gerät, in dem digitale Signale
aufgezeichnet und wiedergegeben werden, und insbesondere ein
Codefehlerkorrekturverfahren, das geeignet ist zum Verbessern der Decodiereffizienz
in dem Doppelcodiersystem.
-
In einem Gerät zum Aufzeichnen und Wiedergeben digitaler Signale
werden allgemein Fehlerkorrekturcodes benutzt, um die
Systemzuverlässigkeit zu erhöhen. Derartige Codes sind beispielsweise angewandt
worden auf eine digitale Audioplatte (CD) und einen digitalen VTR, in
dem Audio- und Videosignale für die Aufzeichnungs- und die
Wiedergabeoperation digitalisiert werden. In diesen Geräten findet aus Gründen
wie beispielsweise einem Ausfall ein geringfügiger Zufallsfehler und ein
darauffolgender Codefehler (auf den im nachfolgenden als Burst-Fehler
Bezug genommen wird) statt. Bei einem Gerät, bei dem diese Arten von
Codefehlern zur gleichen Zeit auftreten können, wird in vielen Fällen
das Doppelcodier-Codesystem einschließlich von Fehlerkorrekturcodes
angelegt, die in einer zweidimensionalen Konfiguration angeordnet sind.
In dem Doppelcodier-Codesystem kann die Fehlerkorrektur in zwei
Stufen erreicht werden, wenn die Codes decodiert werden, was eine
Codekonfiguration realisiert, die eine sehr hohe Effizienz in bezug auf
einen komplexen Fehler hat.
-
Techniken nach dem Stand der Technik zum Korrigieren von
Codefehlern sind beispielsweise in der JP-A-57-24143 und der JP-A-57-10557
beschrieben worden.
-
EP-A-0 098 082 offenbart ein Verfahren und ein Gerät zum Verarbeiten
eines digitalen Audio-Signals. Nach einer vertikalen Paritätskorrektur und
einer horizontalen Paritätskorrektur ist durch die Endstufe eine weitere
vertikale Paritätskorrektur gezeigt. Bei dieser Stufe ist eine weitere
Fehlererfassung implementiert, um die Möglichkeit unerfaßter Fehler zu
untersuchen. Die Korrektureinheit wird, wenn alle Korrekturen (eine
vertikale Paritätskorrektur, eine horizontale Paritätskorrektur und eine
weitere vertikale Paritätskorrektur) zur weiteren Verarbeitung zu einem
Ausgang geführt. Diese weitere Verarbeitung kann ein Verstecken der
restlichen Fehler umfassen.
-
Figur 4 ist ein schematisches Diagramm, das ein Beispiel einer
Anordnung zeigt, die Daten 11 und erste Paritätssymbole 12A und zweite
Paritätssymbole 12B in dem Doppelcodier-Codesystem enthält. Die ersten
Paritätssymbole 12A umfassen zwei Paritätssymbole A10 und A20 für
eine Gruppe von zehn Symbolen, die vertikal als 00, 10, 20, , 80, und
90 angeordnet sind, wobei jedes Symbol aus 8 Bit zusammengesetzt ist.
Die zweiten Paritätssymbole 12B enthalten zwei Paritätssymbole B00 und
B01 fuhr eine Gruppe von zehn horizontal angeordneten Symbolen 00, 01,
02, , und 09. Als Code kann beispielsweise der Reed-Solomon-Code
benutzt werden, der auf einem Galois-Feld GF (2&sup8;) definiert ist. Das
Galois-Feld ist ein Feld mit einer endlichen Anzahl von Symbolen.
Beispielsweise zeigt GF (2&sup8;) an, daß das Feld Symbole hat, deren
Anzahl 2&sup8;-1=255 ist. Weiterhin besteht jedes Symbol aus 8 Bit. Wenn
dieser Code auf die Parität in der Code-Konfiguration der Fig. 4
angewendet wird, wird eine Funktion geschaffen, um einen Fehler von
höchstens einem Symbol in der vertikalen oder der horizontalen Richtung zu
korrigieren.
-
Beim Aufzeichnen und Wiedergeben (oder Übertragen) der Daten in
einer derartigen Anordnung werden Daten der ersten Zeile 00, 01, ,
09, B00, B01, die ein Codewort bilden, zuerst für eine Wiedergabe
aufgezeichnet, und die darauffolgenden Daten werden ähnlich dazu als
ein Codewort der zweiten Zeile, ein Codewort der dritten Zeile, , und
eine Codewort der zwölften Zeile aufgezeichnet, und zwar in dieser
Reihenfolge. Das heißt, daß ein Codewort hier die Symbole anzeigt, die
eine Zeile oder eine Spalte der Figur 4 bilden.
-
Ein Zufallsfehler tritt in einem willkürlichen Symbol auf, während ein
Burst-Fehler fortlaufend in der horizontalen Richtung (entlang der Zeile)
stattfindet. Figur 5 zeigt ein Beispiel eines derartigen Burst-Fehlers. In
diesem Fall kann die Funktion zum Korrigieren von Fehlern weiter
verbessert werden durch Spezifizieren der Zeile, in der der Fehler
aufgetreten ist. Wenn beispielsweise in dem Fall der Figur 5 die Anzahl
von Zeilen, in denen Fehler aufgetreten sind (die Anzahl von Lösch-
Flags) höchstens zwei ist, können alle Fehler durch Anwendung der
ersten Parität 2A (in der vertikalen Richtung) korrigiert werden. Die
Anzahl ist auf zwei begrenzt, da die Anzahl von Paritätssymbolen A1j
und A2j der vertikalen Parität 2A zwei ist. Diese Operation wird eine
Löschkorrektur genannt. Die Löschkorrektur hat eine sehr hoch
entwikkelte Fähigkeit zum Korrigieren von Burst-Fehlern; wenn sich jedoch die
Anzahl von Zufallsfehlern erhöht, taucht ein Problem auf, daß sich die
Fehlerkorrekturfähigkeit schnell erniedrigt. Figur 6 ist ein schematisches
Diagramm, das ein Beispiel darstellt, das eine größere Anzahl von
Zufallsfehlern enthält. In diesem Fall ist, da die Anzahl von Zeilen, in
denen Fehler aufgetreten sind, d.h. die Anzahl von Lösch-Flags, drei oder
mehr ist, die Löschkorrektur unmöglich.
-
Andererseits kann bei einer Zufallsfehlerkorrektur nur die vertikale
Parität benutzt werden, um den 1-Symbolfehler zu korrigieren. Nämlich
in einem Fall, wo nur die Zufallsfehler der Figur 6 aufgetreten sind,
findet der 1-Symbolfehler in der vertikalen Richtung statt, und daher
können alle Fehler korrigiert werden. Für einen derart langen Burst-
Fehler, wie es in Figur 5 gezeigt ist, tritt jedoch ein 2-Symbolfehler in
der vertikalen Richtung auf, und somit ist die Fehlerkorrektur unmöglich.
-
Oben ist beschrieben, daß, obwohl mehrere Fehlerkorrektursysteme zum
Decodieren der Codes des Doppelcodier-Codesystems in Erwägung
gezogen werden können, diese Korrektursysteme jeweils von Vorteilen und
Nachteilen begleitet sind.
-
Wenn sich die Anzahl von Codefehlern aufgrund einer Verschlechterung
der Zustände des Geräts und des Mediums erhöht, können Probleme in
Erscheinung treten, daß ein Fehler nicht erfaßt werden kann oder die
korrigierten Daten fälschlicherweise der Fehlerkorrektur ausgesetzt werden
(Fehl-Korrektur). Um diese Probleme zu lösen, wird ein Verfahren auf
solche Geräte angewandt, bei denen Codefehler über die
Korrekturfähigkeit der Geräte hinaus erfaßt werden, um durch Signale mit einer
strengen Korrelation ersetzt (versteckt) zu werden (beispielsweise
Bilddaten, die in dem vorangehenden Feld enthalten sind), was die
Wahrscheinlichkeit der Fehl-Korrektur und des Fehlererfassungsfehlschlags
reduzieren kann. Wenn jedoch die Anzahl von Symbolen, die zu ersetzen
ist, erhöht ist, existieren solche Probleme, daß die Signalverschlechterung
in einem Teil auftritt, wo sich der Bildschirm ändert (keine Korrelation).
-
Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Codefehler-
Erfassungsverfahren zu schaffen, das eine effiziente Codefehlerkorrektur
beim Decodieren digitaler Daten und Symbole in dem Doppelcodier-
Codesystem ermöglicht.
-
Gemäß der vorliegenden Erfindung wird eine horizontale Fehlererfassung
und/oder Korrektur zuerst in einem Block erreicht, und dann wird eine
Überprüfung durchgeführt, um den Fehlerzustand unter Verwendung eines
Ergebnisses der vertikalen Fehlerkorrektur zu bestimmen; danach wird
das Korrektursystem gemäß dem Ergebnis der Überprüfung umgeschaltet.
Hier wird ein Block erhalten durch willkürliches Aufteilen eines
Bildschirms und durch Addieren der horizontalen und vertikalen
Paritätssymbole dazu.
-
Nimmt man nun bezug auf Figur 1, wird das Prinzip des
Codefehlerkorrekturverfahrens gemäß der vorliegenden Erfindung beschrieben.
Nachdem die Fehlerkorrektur/-erfassung in der horizontalen Richtung
durchgeführt ist, wird die vertikale Fehlererfassung unter Verwendung der
vertikalen Parität erreicht. In Abhängigkeit von dem Ergebnis der
vertikalen Fehlererfassung werden die so erfaßten Spalten (Linien in der
vertikalen Richtung) überprüft, um zu bestimmen, ob die ihnen
zugeordneten Nummern sukzessiv sind oder nicht. Wenn mindestens einige
Nummern aufeinanderfolgend sind, wird angenommen, daß die
Wahrscheinlichkeit eines Auftretens eines Burstfehlers ziemlich hoch ist, und
die Fehlerkorrektur wird in der vertikalen Richtung durchgeführt. Wenn
die mit den erfaßten Fehlern in Verbindung stehenden Nummern nicht
sukzessiv sind, d.h. die Nummern zufällig verteilt sind, wird angenommen,
daß ein Zufallsfehler aufgetreten ist, und die Zufallsfehlerkorrektur wird
in der vertikalen Richtung (für eine 1-Symbolkorrektur) bewirkt.
-
Gemäß dem oben beschriebenen Verfahren kann eine effiziente
Codefehlerkorrektur sowohl bei Zufalls- als auch bei Burstfehlern erreicht
werden.
-
Die vorliegende Erfindung wird klar werden aus der folgenden
detaillierten Beschreibung, genommen in Verbindung mit den beigefügten
Zeichnungsseiten, wobei:
-
Fig. 1 ein erklärendes Diagramm zum Erklären des Prinzips des
Codefehler-Korrekturverfahrens gemäß der vorliegenden
Erfindung ist;
-
Fig. 2 ein schematisches Schaltungsblockdiagramm ist, das den
Aufbau des Ausführungsbeispiels der Fig. 1 darstellt;
-
Fig. 3 ein Flußdiagramm ist, das einen Decodieralgorithmus des
Ausführungsbeispiels zeigt;
-
Fig. 4 ein erklärendes Diagramm ist, das ein Beispiel der
Doppelcodier-Codekonfiguration darstellt;
-
Fig. 5 ein erklärendes Diagramm ist, das ein Auftreten eines
Burstfehlers zeigt;
-
Fig. 6 ein erklärendes Diagramm ist, das ein Auftreten eines
Zufallsfehlers zeigt; und
-
Fig. 7A-7B erklärende Diagramme zum Erklären des
Burstfehlererfassungssystems sind.
-
Ein Ausführungsbeispiel des bevorzugten Ausführungsbeispiels gemäß der
vorliegenden Erfindung wird beschrieben werden.
-
Figur 2 ist ein schematisches Schaltungsblockdiagramm eines
Ausführungsbeispiels der vorliegenden Erfindung. In diesem Blockdiagramm werden
so zuerst Wiedergabedaten A einer
Horizontal-Fehlerkorrektur-/-erfassungsschaltung
1 eingegeben, die Fehler in den Daten A korrigiert und/oder
erfaßt. Im Falle einer Datenkonfiguration von Figur 4 wird ein Fehler in
der horizontalen Richtung erfaßt, oder eine 1-Symbolfehlerkorrektur wird
erreicht. Ausgangsdaten B von der
Horizontal-Fehlerkorrektur-/-erfassungsschaltung 1 werden einer Vertikal-Fehlererfassungsschaltung 2, einer
Vertikal-Zufallsfehler-Korrekturschaltung 4 und einer
Vertikal-Löschkorrektur-Schaltung 5 eingegeben.
-
Die Vertikal-Fehlererfassungs-Schaltung 2 bewirkt eine Fehlererfassung
unter Anwendung der vertikalen Parität. Wenn ein Fehler erfaßt wird,
wird eine Nummer C eines Symbols oder einer Spalte, in dem bzw. der
ein Fehler aufgetreten ist, zu der Burstfehler-Überprüfschaltung 3
ausgegeben. Die Burstfehler-Überprüfschaltung 3 bestimmt, ob die
Spaltenpositionen der den erfaßten Fehlern zugeordneten Spalten sukzessiv sind
oder nicht und gibt ein Korrekturmodus-Umschaltsignal D zu der
Umschaltschaltung 6 aus. Die Vertikal-Zufallsfehler-Korrekturschaltung 4
korrigiert einen 1-Symbolfehler in der vertikalen Richtung und gibt
Ausgangsdaten E aus; darüberhinaus wird, wenn ein Fehler auftritt, der
die Korrekturfähigkeit übersteigt, ein Fehlerflag F zu einer
Versteckschaltung 7 ausgegeben. Zusätzlich fiihrt die
Vertikal-Löschkorrekturschaltung 5 eine Löschkorrektur für irgendeinen Fehler aus, einschließlich
höchstens zweier fehlerhafter Symbole in der vertikalen Richtung, und
zwar durch Verwendung der Ausgangsdaten B von der
Horizontal-Fehlerkorrektur-/-erfassungsschaltung 1 und gibt einen Ausgang G aus;
weiterhin wird für einen Fehler, der die Korrekturfähigkeit übersteigt, ein
Fehlerflag H zu der Versteckschaltung 7 ausgegeben.
-
Die Umschaltschaltung 6 wählt die Ausgangsdaten E nach der vertikalen
1-Symbolfehlerkorrektur aus oder die Ausgangsdaten G nach der
Vertikal-Löschkorrektur, in Abhängigkeit von dem
Korrekturmodus-Umschaltsignal
D, und gibt Ausgangsdaten I aus. Darüberhinaus ändert die
Versteckschaltung 7 die Symbole, die bestimmt sind, durch diese
Korrekturschaltungen nicht korrigiert werden zu können, zu den Symbolen mit
einer Korrelation und gibt End-Ausgangsdaten J aus.
-
Figur 3 ist ein Flußdiagramm des Decodier-Algorithmus des
Ausführungsbeispiels. Nachdem ein horizontaler Fehler korrigiert oder erfaßt ist
(Schritt 1), wird ein vertikaler Fehler unter Verwendung der vertikalen
Parität erfaßt, und der Fehlerzustand wird bezüglich eines Zufalls- oder
Burstfehlers gegengeprüft (Schritt 2). Als Beurteilungskriterium kann
beurteilt werden, daß ein Burstfehler aufgetreten ist, wenn beispielsweise
ein Fehler in der vertikalen Richtung (entlang der Spalte) sukzessiv
aufgetreten ist, d.h., daß die Spaltennummern der mit den erfaßten
Fehlern verbundenen Spalten sukzessiv sind (Fig. 7A). Zusätzlich ist es,
um die Genauigkeit zur Erfassung des Burstfehlers zu verbessern, nur
notwendig, eine 1-Symbol-Zufallsfehlerkorrektur in der vertikalen Richtung
zu schaffen und zu erfassen, ob die Positionen der erfaßten Fehler in
der horizontalen Richtung sukzessiv sind oder nicht (Fig. 7B). Die
Figuren 7A-7B sind schematische Diagramme, die die vertikalen
Korrekturdaten in den Fällen zeigen, wo Zufalls- und Burstfehler zur gleichen
Zeit auftreten. In jedem System kann der Teil, in dem der Burstfehler
aufgetreten ist, spezifiziert werden.
-
Geht man nun zurück zu Figur 3 wird, wenn ein Burstfehler als ein
Ergebnis der Vertikal-Fehlerzustands-Überprüfung in Schritt 2
angenommen wird, eine Burstfehlererfassung bewirkt; andererseits wird eine
Zufallsfehlerkorrektur durchgeführt. Vor einem Durchführen der
Fehlerkorrekturen überprüft das System, ob die Korrektur möglich ist oder
nicht (Schritte 3 und 5). Wenn die Korrektur für unmöglich gehalten
wird, werden korrelierte Bilddaten (beispielsweise Bilddaten des
vorangehenden
Feldes) für die Fehlersymbole ersetzt (Schritt 8). Wenn die
Korrektur möglich ist, wird die Zufallsfehlerkorrektur in der vertikalen
Richtung ausgeführt (Schritt 4) oder die Löschkorrektur wird in der
vertikalen Richtung erreicht (Schritt 6). Nachdem die Auswahl zwischen
diesen Korrekturen durchgeführt ist (Schritt 7), wird eine
Ausgabeoperation ausgeführt.
-
Für die Bedingung zur Beurteilung des Burstfehlers kann beispielsweise
eine Änderung der Umhüllenden des Wiedergabesignals und eine andere
analoge Information verwendet werden.
-
Obwohl das Ausführungsbeispiel unter Bezugnahme auf einen Fall der
Codekonfiguration der Figur 4 beschrieben worden ist, ist das
Doppelcodier-Codesystem nicht durch die Codekonfiguration der Figur 4
beschränkt, sondern die Konfigurationen der verketteten Codes und der
Produktcodes können auch angewendet werden. Die Benutzungscodes sind
nicht auf die Reed-Solomon-Codes beschränkt. Dazu kommt, daß, da die
Codekorrekturfähigkeit erhöht ist, wenn die Anzahl von Paritätssymbolen
zwei oder mehr ist, verschiedene Korrektursysteme für die Codekorrektur
entsprechend kombiniert werden können.
-
Gemäß der vorliegenden Erfindung wird beim Wiedergeben von Daten
mit der Codekonfiguration in dem Doppelcodier-Codesystem der
Codefehlerzustand überprüft, um zu bestimmen, ob der Zustand einen
Burstfehler oder einen Zufallsfehler anzeigt, und darauffolgend kann ein
optimales Decodiersystem in Abhängigkeit von dem Ergebnis der
Überprüfung ausgewählt werden. Folglich kann eine Fehlerkorrektur effektiv
erreicht werden, sogar in einem Fall, wo der Burst- und der Zufallsfehler
zur gleichen Zeit auftreten.