DE69329740T2 - Miller-Quadratdekoder mit Löschfahnenausgang - Google Patents

Miller-Quadratdekoder mit Löschfahnenausgang

Info

Publication number
DE69329740T2
DE69329740T2 DE69329740T DE69329740T DE69329740T2 DE 69329740 T2 DE69329740 T2 DE 69329740T2 DE 69329740 T DE69329740 T DE 69329740T DE 69329740 T DE69329740 T DE 69329740T DE 69329740 T2 DE69329740 T2 DE 69329740T2
Authority
DE
Germany
Prior art keywords
data
error
clock
transitions
signal
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 - Lifetime
Application number
DE69329740T
Other languages
English (en)
Other versions
DE69329740D1 (de
Inventor
Richard K. Brush
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.)
Ampex Corp
Original Assignee
Ampex 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 Ampex Corp filed Critical Ampex Corp
Application granted granted Critical
Publication of DE69329740D1 publication Critical patent/DE69329740D1/de
Publication of DE69329740T2 publication Critical patent/DE69329740T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1833Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
    • 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/14Digital recording or reproducing using self-clocking codes
    • G11B20/1403Digital recording or reproducing using self-clocking codes characterised by the use of two levels
    • G11B20/1423Code representation depending on subsequent bits, e.g. delay modulation, double density code, Miller code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/31Coding, 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 coding for error detection or correction and efficient use of the spectrum
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M5/00Conversion of the form of the representation of individual digits
    • H03M5/02Conversion to or from representation by pulses
    • H03M5/04Conversion to or from representation by pulses the pulses having two levels
    • H03M5/14Code representation, e.g. transition, for a given bit cell depending on the information in one or more adjacent bit cells, e.g. delay modulation code, double density code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Error Detection And Correction (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Analogue/Digital Conversion (AREA)

Description

    HINTERGRUND DER ERFINDUNG GEBIET DER ERFINDUNG
  • Diese Erfindung betrifft im allgemeinen Datenübertragungs- und Fehlerkorrektursysteme. Insbesondere betrifft sie eine Vorrichtung und ein Verfahren zum Erzeugen einer Datenfehler-Positionsinformation als Reaktion auf einen seriellen Binärdatenstrom unter Verwendung der Miller- Quadrat-Codierregeln, um die Fehlerkorrekturfähigkeit zu steigern.
  • BESCHREIBUNG DES STANDES DER TECHNIK
  • Die Datenzuverlässigkeit in einem Digitaldaten- Informationsübertragungskanal wird durch Fehlererkennung und -korrektur verbessert. Es stehen viele Verfahren zur Fehlerkorrekturcodierung (ECC) zur Verfügung, wie z. B. Reed-Solomon-Codes, Fire-Codes und Hamming-Codes, die alle zum Sicherstellen der Datensicherheit in dem Informationskanal dienen. Daten werden typischerweise an einem Übertragungsende des Informationskanals einer Redundanzcodierung durch einen ECC-Codierer unterzogen. Vor der Übertragung wird jedoch dieser ECC-codierte Datenstrom im allgemeinen gemäß einem Satz von Informationskanal- Datencodierregeln weiter codiert. Zwei der üblichen Kanalcodes sind Manchester-Codes und der Miller-Quadrat- (M²) Code. Der geeignete Kanalcode wird auf der Basis der Art des Informationskanals ausgewählt; beispielsweise findet der Miller-Quadrat- (M²) Code spezielle Anwendbarkeit auf Magnetaufzeichnungs- und -wiedergabekanäle, da er Taktinformationen in einen Datenstrom einbettet (Eigentaktung), der resultierende Codestrom gleichstromfrei und polaritätsunempfindlich ist. Eine vollständigere Beschreibung des Miller-Codes und des Miller-Quadrat-Codes kann durch Bezugnahme auf Miller US- Patent Re. 31 311, datiert auf den 12. Juli 1983 (Miller- Quadrat- oder M²-Code), und Miller US-Patent 3 108 261, herausgegeben am 22. Oktober 1963 (Miller-Code oder der M- Code), erhalten werden.
  • Der Miller-Quadrat-Code ist derart, daß entweder in der Mitte einer Datenzelle oder an der Grenze zwischen Datenzellen Übergänge auftreten können. Eine Datenzelle oder eine Bitzelle bezieht sich auf ein Zeitintervall, das durch separate Taktimpulse der seriellen Datenrate identifizierbar ist. Dieser Takt mit doppelter Frequenz wird als M²-Takt bezeichnet. Es gibt drei Regeln, Zwangsbedingungen oder Bedingungen in einem M²-Codestrom, wie z. B. einem Wiedergabecodestrom eines Magnetbandaufzeichnungsgeräts, der leicht geprüft werden kann, um unzulässige M²-Codesequenzen zu erkennen. Diese drei Bedingungen definieren den M²-Code nicht vollständig, sind jedoch eine Folge der M²-Codierregeln, wie im US- Patent Re. 31 311 definiert.
  • 1. Die minimale Lauflänge zwischen Übergängen im M²-Code ist eine Datenzelle oder zwei M²-Takte. Eine kürzere Lauflänge als diese zeigt einen Fehler in dem Wiedergabecodestrom an und wird als Kurzlaufverletzung bezeichnet.
  • 2. Die maximale Lauflänge zwischen Übergängen im M²-Code sind drei Datenzellen oder sechs M²-Takte. Eine längere Lauflänge als diese zeigt einen Fehler im Wiedergabedatenstrom an und wird als Langlaufverletzung bezeichnet.
  • 3. Sobald eine Lauflänge von zwei oder mehr Datenzellen (vier oder mehr M²-Takten) auftritt, tritt der den Lauf beginnende Übergang in der Mitte einer Datenzelle auf. Dies wird als M²-Synchronisationssequenz bezeichnet, da sie verwendet wird, um den Ort der Datenzellengrenzen im M²- Decodierer zu ermitteln. Wenn der Übergang an der Grenze von zwei Zellen auftritt, zeigt er einen Fehler im Wiedergabedatenstrom an und wird als unzulässige Synchronisationssequenz bezeichnet.
  • Eine unzulässige M²-Sequenz (oder eine Sequenz, die eine Regel oder Bedingung verletzt) ist das Ergebnis eines Fehlers im Wiedergabe-M²-Codestrom, der verursacht, daß ein Übergang verschoben wird; jedoch nicht alle Wiedergabefehler führen zu unzulässigen M²-Sequenzen. Wenn eine unzulässige M²-Sequenz auftritt, erzeugt der M²- Decodierer einen Fehler in den decodierten Ausgangsdaten, aber sein Ort ist unsicher, wobei er im allgemeinen in einem von zwei möglichen Datenbits auftritt. Somit ist es im allgemeinen erforderlich, zwei decodierte Datenbits als unsicher zu kennzeichnen, wenn eine unzulässige M²-Sequenz erkannt wird.
  • Zur Übertragung werden Daten, einschließlich sowohl Informationen als auch Fehlerkorrektur-Redundanzcodes, zuerst durch einen Satz von diskreten elektrischen Signalen gemäß dem Kanalcodierungsschema an einem Quellenanschluß codiert und werden anschließend an einem Datenempfangsanschluß decodiert. Dieses Kanalcodierungsschema formt die Daten um und gilt zusätzlich zu und unabhängig von dem verwendeten Fehlerkorrekturverfahren. Dieser Satz von Mustern von elektrischen Signalen beinhaltet das Festlegen von bestimmten Zeitbeziehungen unter den einzelnen Übertragungswellenformen. Der Quellenanschluß überträgt die einzelnen Signale unter Verwendung von vordefinierten Zeitbeziehungen, so daß der Empfangsanschluß jedes diskrete Signal erkennen kann, wenn es eintrifft. Diese Datenbits können aufgezeichnet oder übertragen oder können anderweitig auf einem Magnetband aufgezeichnet oder von diesem wiedergegeben werden.
  • Bei der Magnetbandaufzeichnung sind eine elektromagnetische Störung während der Übertragung, ein Medienausfall, ein schlechter Kontakt zwischen Kopf und Band, Gaußsches thermisches Rauschen und eine Bandoberflächenverunreinigung Quellen für Fehler. Magnetaufzeichnungsfehler kommen im allgemeinen in zwei Arten vor. Es gibt große Verstümmelungen, die Fehlerbündel genannt werden, wobei zahlreiche Bits zusammen in einem Bereich verstümmelt sind, der ansonsten fehlerfrei ist, und Zufallsfehler, die sich auf einzelne Bits auswirken. Welcher Mechanismus auch vorliegt, das Ergebnis ist, daß die empfangenen Daten nicht exakt dieselben sind wie die gesandten. Manchmal genügt es zu wissen, daß ein Fehler vorlag, wenn die Zeit erlaubt, daß ein nochmaliges Übertragen veranlaßt wird. Dies ist für Fernschreibnachrichten möglich, aber für andere, wie z. B. Ton- oder Videoübertragungen, sehr ungeeignet.
  • Jeder Fehlerkorrekturcode (ECC) umfaßt im allgemeinen Fehlererkennungs- und Fehlerkorrekturfunktionen. Bei einem beliebigen Fehlerkorrekturverfahren sollte der verwendete Schutzgrad für die Wahrscheinlichkeit, daß Fehler angetroffen werden, geeignet sein. Da eine gesteigerte Fehlerkorrekturfähigkeit im allgemeinen eine größere Redundanz und daher Kanalbandbreite sowie Komplexität erfordert, besteht bei der ECC-Gestaltung eine Abwägung.
  • Im allgemeinen sind zwei unabhängige Informationsangaben zum Aufklären von zwei Unbekannten erforderlich. Beim ECC sind die Position eines Fehlers und sein Wert kritische Informationsangaben. Wenn eine von ihnen, wie z. B. die Fehlerposition, irgendwie von einer externen Quelle, einer Quelle außerhalb des Bereichs des ECC-Decodierers, bekannt ist, dann kann eine fehlerbehaftete Nachricht hinsichtlich ihres exakten Inhalts korrigiert werden, selbst wenn die andere Informationsangabe, wie z. B. der korrekte Wert, die einzige Informationsangabe ist, die von dem verwendeten ECC-Decodierer ableitbar ist.
  • Ein üblicher ECC ist ein Reed-Solomon-Code. Bei einem Reed- Solomon-Code werden wie bei verschiedenen digitalen Systemen Datenbits zu Datenworten oder Zeichen zusammengesetzt. Ein Zeichen mit einer beliebigen Größe ist möglich, aber eine Zeichengröße von acht Bits wird üblicherweise verwendet, da sie bei byteorientierten Systemen zweckmäßig funktioniert. Acht-Bit-Zeichen ergeben eine maximale Sequenzlänge von 2&sup8;-1 = 255 Zeichen. Diese Sequenz von bis zu 255 Zeichen wird Codewort genannt. Wenn jedes Zeichen 8 Bits enthält, ist das Codewort bis zu 255 · 8 = 2040 Bits lang. Innerhalb des Codeworts ist eine Anzahl von Zeichen als Prüfzeichen festgelegt. Jedes Prüfzeichen stellt ein Redundanzniveau dar, das eine Fehlerinformationsangabe vorsehen kann, wie z. B. eine Fehlerposition oder einen Fehlerwert. Die gesamte Fehlerkorrektur beruht auf dem Hinzufügen von Redundanz zur Information zur Übertragung.
  • Als Erläuterung begrenzt ein Reed-Solomon-Codewort von 255 8-Bit-Zeichen mit 10 Prüfzeichen die Daten auf die restlichen 245 Zeichen. Da eine Fehlerkorrektur zwei Redundanzniveaus oder zwei Prüfzeichen (jeweils eines für die Position und den Wert) benötigt, kann ein ECC- Decödierer theoretisch bis zu 5 Fehler innerhalb dieses Codeworts erkennen und korrigieren. Bei einigen Video- und Audioanwendungen ist es eine bessere Strategie, einfach die Fehler zu erkennen, ohne sie zu korrigieren; dann können in diesem Fall bis zu 10 Fehler ohne Korrektur erkannt werden. Wenn die Position der Fehler durch irgendein anderes Mittel bekannt ist, können zweimal so viele Fehler für dieselbe Menge an Redundanz korrigiert werden. Dies ergibt den Namen der Löschkorrektur. Die Löschkorrektur bezieht sich auf die Korrektur von Fehlern, wenn ihre Orte bekannt sind, aber ihre Werte unbekannt sind. Potentiell kann das Vorliegen einer Löschinformation die Fehlerkorrekturfähigkeit verdoppeln.
  • Gemäß einem Aspekt der vorliegenden Erfindung wird ein neuer und verbesserter Miller-Quadrat-Decodierer bereitgestellt, der die Ausgabe eines Signals auf die Erkennung einer M²-Regelverletzung hin ermöglicht, wobei das Signal und der Datenstrom dann zur Fehlerkorrekturschaltung übertragen werden.
  • Der Stand der Technik wird durch US-A-3639900 veranschaulicht, welche einen Fehlerkorrektor verwendet, der ein Fehlersyndrom erzeugen kann, das sich über eine Vielzahl von parallelen Kanälen erstreckt, und entweder unzulässige Datengruppen oder eine Anzeige, wie z. B. eine übermäßige Phasenverschiebung oder Amplitude, erkennen kann, um einen Kanal zu identifizieren, in dem ein Fehler wahrscheinlich ist, so daß einer von zwei möglichen Fehlern, die durch das Syndrom gekennzeichnet werden, durch den Schnittpunkt in einer Datenmatrix von der dem Kanal entsprechenden Zeile und der dem Syndrom entsprechenden Diagonale identifiziert werden kann.
  • GB-A-2126849 offenbart die Erkennung einer speziellen Formatverletzung in einem gemäß einem Miller- oder einem anderen Code mit doppelter Dichte codierten Signal.
  • Die vorliegende Erfindung stellt eine Vorrichtung bereit für die Erkennung und Korrektur von Fehlern in einem seriellen Datenstrom, der aus einer Folge von Übergängen zwischen Binärzuständen besteht, die gemäß einem auf einer Regel basierenden Kanalcodeformat codiert werden, welches die zulässigen Positionen von Übergängen relativ zu einem Takt festlegt und Grenzen für die Dauer zwischen aufeinanderfolgenden Übergängen festlegt, wobei die Vorrichtung einen Fehlerkorrektor enthält, und die codierten Daten einen Fehlerkorrektur-Redundanzcode umfassen, der ermöglicht, daß der Fehlerkorrektor den Wert eines Datenfehlers kortigiert, wenn die Position des Fehlers bekannt ist. Die im umfassendsten Anspruch definierte Vorrichtung umfaßt ferner: ein Mittel zum Decodieren des Datenstroms; ein Mittel, das auf die Übergänge und den Takt reagiert, um festzustellen, ob die Folge von Übergängen eine Verletzung des Kanalcodeformats enthält, und um ein Hinweissignal zu erzeugen, das mindestens eine mögliche Position in einer Datenfolge angibt, in der ein entsprechender Datenfehler auftritt; und ein Mittel, das einen Synchronismus zwischen dem Hinweissignal und demjenigen Teil des decodierten Datenstroms vorsieht, der der Datenfolge entspricht, wobei das Hinweissignal und der Teil des decodierten Datenstroms gleichzeitig in den Fehlerkorrektor eingehen. Die Erfindung stellt auch ein entsprechendes Verfahren bereit.
  • In einer bevorzugten Form der Erfindung ist das Codeformat das Miller-Quadrat-Kanalcodeformat.
  • In herkömmlichen Systemen arbeiten ein M²-Decodierer und ein ECC-Decodierer unabhängig. Das heißt, der M²-Decodierer liefert keine Information zum ECC-Decodierer, um die Leistung des ECC-Decodierers zu verbessern. In der bevorzugten Form der Erfindung kann der M²-Decodierer Fehler im Wiedergabe-M²-Codestrom erkennen und die decodierten Datenbits, die fraglich sind, kennzeichnen, dann diese Information als "Lösch"-Kennzeichen zum ECC- Decodierer weiterleiten, um die Leistung des ECC- Decodierers zu verbessern. Diese Kennzeichen laufen synchron zusammen mit decodierten Daten auf einer separaten Leitung in die ECC-Logik. Im allgemeinen ist nur ein Prüfzeichen erforderlich, um eine Löschung zu korrigieren, wohingegen zwei Prüfzeichen erforderlich sind, um einen Fehler, der nicht gekennzeichnet ist, zu korrigieren. Somit können Löschungen potentiell die Anzahl der Fehler, die der ECC-Decodierer korrigieren kann, verdoppeln.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Fig. 1 ist ein Blockdiagramm eines Miller-Quadrat- Aufzeichnungs-/Wiedergabe-Datenkanals, der eine Fehlerkorrekturcodierung verwendet, die die vorliegende Erfindung anwendet.
  • Fig. 2 ist ein Logikschaltplan einer Form eines Miller- Quadrat-Decodierers des Standes der Technik.
  • Fig. 3 ist ein Ablaufdiagramm, das zu dem Miller-Quadrat- Decodierer von Fig. 2 gehört.
  • Fig. 4 ist ein Schaltplan eines Miller-Quadrat-Decodierers mit einer Kurzlaufverletzungslogik gemäß der vorliegenden Erfindung.
  • Fig. 5 ist ein Ablaufdiagramm von Signalwellenformen, das zu dem Miller-Quadrat-Decodierer von Fig. 4 gehört.
  • Fig. 6 ist ein Schaltplan eines Miller-Quadrat-Decodierers mit einer Logik für eine unzulässige Synchronisationsverletzung gemäß der vorliegenden Erfindung.
  • Fig. 7 ist ein Ablaufdiagramm von Signalwellenformen, das zu dem Miller-Quadrat-Decodierer von Fig. 6 gehört.
  • Fig. 8 ist ein Schaltplan eines Miller-Quadrat-Decodierers mit einer Langlaufverletzungslogik gemäß der vorliegenden Erfindung.
  • Fig. 9 ist ein Ablaufdiagramm von Signalwellenformen, das zum M²-Decodierer in Fig. 8 gehört.
  • BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSBEISPIELE
  • Mit Bezug auf die Zeichnungen und insbesondere auf Fig. 1 ist ein Blockdiagramm eines Systems zum Codieren und Decodieren von Binärdaten vor dem Eintritt in einen bzw. nach dem Austritt aus einem Informationskanal, das im allgemeinen mit 100 bezeichnet ist und das einen Miller- Quadrat-Decodierer 102 enthält, gezeigt, wobei der Decodierer 102 ein decodiertes Ausgangssignal über einen Weg 103 liefert und ferner ein Signalerzeugungsmittel enthält, das als Reaktion auf Datenfehler einen Hinweis, wie z. B. ein Löschkennzeichen, über einen Weg 104 zu einer Verwendungsschaltung, wie z. B. einem ECC-Decodierer 106, zur Fehlerkorrekturverbesserung liefert.
  • Daten in binärer Form von einer Datenquelle 110 werden an eine Codierlogik 112 (in gestrichelten Linien dargestellt) über einen Weg 114 angelegt. Die Daten der Datenquelle 110 können einer beliebigen Anzahl von gut bekannten Datenprotokollen, wie z. B. einem Datencode ohne Rückkehr auf den Nullpegel (NRZ-L) entsprechen, der das Signal auf einen 1-Pegel oder -Zustand für die gesamte Bitzelle, die ein "1"-Bit enthält, setzt und auf den 0-Pegel oder -Zustand schaltet, wenn ein "0"-Zustand in der Bitzelle . vorliegt. Somit gibt es nur Übergänge, wenn sich aufeinanderfolgende Bitzellen in verschiedenen Zuständen befinden. Ein codierter Datenstrom, der aus der Codierlogik 112 hervorgeht, läuft durch einen Informationskanal 116 und erreicht über einen Weg 118 eine Decodierlogik 120 (in gestrichelten Linien gezeigt) für die Datendecodierung. Der decodierte Datenstrom wird über einen Weg 122 zu einer Datensenke 124 zur anschließenden Verwendung übertragen.
  • Die Codierlogik 112 umfaßt einen ECC-Codierer 126, einen Taktgenerator 128 und einen M²-Codierer 130. Der ECC- Codierer 126 empfängt die Daten der Datenquelle 110 vor dem M²-Codierer 130, der mit diesem verbunden ist. Der Taktgenerator 128 erzeugt periodische Taktimpulse mit einer geeigneten Frequenz und Phase für den ECC-Codierer 126 und den M²-Codierer 130 über Wege 134, 136 bzw. 134. Die Daten auf dem Weg 114 werden in den ECC-Codierer 126 zur Datenredundanzverarbeitung, wie z. B. Anwenden des Reed- Solomon-Codes, zum Sicherstellen der Datensicherheit eingetaktet. Die ECC-codierten Daten laufen dann über einen Weg 138 seriell in den M²-Codierer 130 zur weiteren Codierung gemäß den M²-Kanal-Coderegeln ein. Dieser (doppelt) codierte Datenstrom, der über den Weg 140 übertragen wird, wird so codiert, um ihn von Natur aus zur Erkennung und Korrektur einer festen Anzahl von Datenfehlern in einem ECC-Codewort fähig sowie selbsttaktend, gleichstromfrei und polaritätsunempfindlich zu machen. Er wird an den Informationskanal 116 angelegt, der ein Magnetband-Aufzeichnungsgerät umfassen kann, wo die Information aufgezeichnet und später ausgelesen wird.
  • Das Ausgangssignal des Informationskanals 116 wird über den Weg 118 zur Decodierlogik 120 übertragen, die eine Taktrückgewinnungslogik 142, den M²-Decodierer 102 und den ECC-Decodierer 106 umfaßt. Die Taktrückgewinnungslogik 142 empfängt codierte Daten über den Weg 118, um Taktimpulse von M²-Codierphasenübergängen wieder herzustellen. Diese wiederhergestellte Taktinformation wird zum M²-Decodierer 102 weitergegeben, der die M²-Taktinformation sowie den seriellen codierten Datenstrom von der Taktrückgewinnungslogik 142 über einen Weg 144 empfängt. Ein Teil des M²-Decodierers 102 decodiert die eingehenden Daten gemäß den M²-Kanalcoderegeln, wobei die Daten in ihr ursprüngliches Protokoll zurückgebracht werden, wie z. B. das NRZ-L-Format. Ein weiterer Teil erkennt Datenfehler in dem Datenstrom als Reaktion auf unzulässige M²-Codemuster, und noch ein dritter Teil erzeugt anschließend Löschkennzeichen, die wahrscheinliche Fehlerstellen anzeigen. Diese Löschkennzeichen werden über den Weg 104 gesandt, der von dem entsprechenden Datenweg 103, welcher Daten in einer synchronen Weise mit diesem überträgt, unabhängig ist.
  • Sowohl Löschkennzeichen als auch M²-decodierte Daten laufen in den ECC-Decodierer 106, der die Löschkennzeichen verwendet, über die Wege 104 bzw. 103 ein. Der ECC- Decodierer 106 prüft durch die codierte Redundanz auf Datenfehler, wobei sowohl ihre Orte als auch Werte festgelegt sind. Die Löschkennzeichen, die wahrscheinliche Datenfehlerorte anzeigen, vom Weg 104 dienen potentiell zum Verdoppeln der Korrekturleistung des ECC-Decodierers 106 aus den vorstehend erwähnten Gründen, das heißt, der ECC- Decodierer 106 wird mit Informationen versehen, die einen Fehlerort anzeigen, eine Funktion, die, wenn sie vom Decodierer ausgeführt wird, eine zusätzliche Verarbeitung darin erfordert. Ein M²-ECC-decodierter Datenstrom von der Decodierlogik 120 wird dann an die Datensenke 124 über den Weg 122 zur anschließenden Verwendung angelegt.
  • Fig. 2 stellt in Logikschaltplanform einen herkömmlichen M²-Decodierer dar, der im allgemeinen mit 200 bezeichnet ist, während Fig. 3 ein Ablaufdiagramm darstellt, das die Operation der Schaltung von Fig. 2 beim Decodieren einer gültigen oder zulässigen M²-Codesequenz und die relevanten Signale derselben darstellt. Im allgemeinen stellt das Ablaufdiagramm von Fig. 3 Signalwellenformen dar, die auf die Operation der in Fig. 2 gezeigten Logik anwendbar sind, und wobei die Wellenformen vertikal mit der Zeit in Beziehung stehen. In den Ablaufdiagrammen gibt ein "*" einen fehlenden "1"-Übergang gemäß den M²-Codierregeln an. Ein "?" zeigt ungewisse Daten infolge eines Datenfehlers oder von Datenfehlern an. Ein "X" zeigt falsche Daten infolge eines Datenfehlers oder von Datenfehlern an. Eine Zeile, die als RUN LEN bezeichnet ist, z. B. Fig. 3(e), die unter der Wellenformlinie M² CODE in dem Diagramm erscheint, bezieht sich auf die Codelauflänge M² CODE, die zu den speziellen Übergängen gehört.
  • Ein Aufzeichnungsdatenstrom REC DATA [3(c)] enthält zwei Sequenzen "101" nahe dem Start, die die korrekte Phase des NRZ-Takts des Decodierers festlegen. Es gibt auch eine Codelauflänge von 2-1/2 und 3 Datenzellen, die die Erkennung einer "fehlenden 1" darstellen. Wie vorher erläutert, ist eine Lauflänge einer Datenzelle das Äquivalent einer Periode eines NRZ-Takts [3(p)], wie in Fig. 3 dargestellt, oder von zwei M²-Taktintervallen.
  • Wie in Fig. 2 gezeigt, empfängt der M²-Decodierer 200 ein Signal M² CLK [3(a)] über den Weg 202 und einen M²- codierten Datenstrom M² CODE [3(d)] über einen Weg 204. Das ursprüngliche Datenprotokoll vor der M²-Codierung, wie z. B. NRZ-L, und sein zugehöriger Takt wird als Ausgangssignal des M²-Decodierers 200 wiederhergestellt, welches einen NRZ-L- [3(q)] Datenstrom DATA OUT (siehe NRZ DATA) auf dem Weg 206 und ein Signal CLK OUT (siehe NRZ CLK) auf dem Weg 208 aus den Flip-Flops FF8 bzw. FF9 umfaßt, wie beschrieben wird.
  • Eine Logik 210 zum Erkennen eines M²-Signal-Phasenübergangs mit Flip-Flops FF1, FF2 und einem Exklusiv-ODER-Gatter G1 ist dazu ausgelegt, ein Signal XD1 auszugeben, wie in Fig. 3(h) gezeigt, wobei das Signal XD1 diskrete Impulse aufweist, die jeweils einen M²-Datencodeübergang darstellen. Der D-Anschluß des Flip-Flops FF1 empfängt das Signal M² CODE und der D-Anschluß des Flip-Flops FF2 ist mit dem Q-Anschluß des Flip-Flops FF1 verbunden. Beide Flip-Flops FF1 und FF2 werden über Zuleitungen 211 bzw. 213 durch das Signal M² CLK auf der Zuleitung 202 getaktet. Während die Flip-Flops FF1 und FF2 ein 2-Bit- Schieberegister bilden, verarbeitet das Exklusiv-ODER- Gatter G1, das auf M -Datencode-Phasenübergänge reagiert, zwei Q-Anschluß-Ausgangssignale QD1 [3(f)] und QD2 [3(g)], wie in Fig. 3 gezeigt, die jeweils aus seinen zugehörigen Flip-Flops FF1 und FF2 hervorgehen. Das Ausgangssignal XD1 des Exklusiv-ODER-Gatters G1 ist "1" für einen Mz-Takt, sobald ein Übergang im M²-Codestrom vorliegt.
  • Eine Datenverschiebeeinrichtung 220, die aus einer hintereinandergeschalteten Reihe von Flip-Flops FF3, FF4, FF5 und FF6 besteht, wird jeweils durch das Signal M² CLK über die Wege 202, 221; 202, 223; 202, 225; bzw. 202, 227 getaktet, die Datenverschiebeeinrichtung 220 empfängt das Signal XD1 in einem Anschluß D des Flipflops FF3. Die Q- Anschluß-Ausgangssignale QT1 [3(i)], QT2 [3(j)], QT3 [3(k)] und QT4 [3(1)] der Flip-Flops, wie in Fig. 3 gezeigt, werden jeweils an einen D-Anschluß des nachfolgenden Flip- Flops angelegt, mit Ausnahme des letzten Flip-Flops FF6. Diese vier Flip-Flops bilden ein 4-Bit-Schieberegister, das ein Muster von M -Datencodeübergängen enthält. Die Signale QT1-QT4 werden anschließend im M²-Decodierer 200 verwendet, um die ursprüngliche NRZ-Daten-Wellenform und Taktinformation zu ermitteln.
  • Eine Daten-1-Erkennungslogik 240 umfaßt ein UND-Gatter G2 und ein ODER-Gatter G3. Die Signale QT1-QT4 werden in das UND-Gatter G2 eingegeben und sein Ausgangssignal, ein Signal MISSING-1 [3(m)], das eine unterdrücke "1" anzeigt, über einen Weg 242 wird durch das ODER-Gatter G3, das auch das Signal QT3 als anderes Eingangssignal über einen Weg 244 erhält, verarbeitet, was ein Signal DATA-1, wie in Fig. 2 gezeigt, auf einem Weg 246 ergibt. Das Signal QT3 ist "1", wenn ein Übergang in der Mitte einer Datenzelle vorliegt, was normale Daten "1" anzeigt. Das Signal MISSING-1 ist "1", wenn eine Lauflänge von 2,5 oder 3 Datenzellen vorliegt, was ebenfalls Daten "1" anzeigt, die gemäß den M²-Codierregeln unterdrückt werden. Dies wird auch als "fehlender 1-Übergang" bezeichnet. Es sind in Fig. 3 zwei "fehlende 1-Übergänge" vorhanden, die beide mit "*" markiert sind. Das Signal DATA-1 [3(n)] ist "1", wenn eine Bedingung, die normalen Daten "1" oder die fehlenden Daten "1", was Daten "1" anzeigt, wahr ist.
  • Ein UND-Gatter G4 mit Signalen QT1, QT2, QT3 und QT4 als Eingangssignale, gibt ein Signal M² SYNC, wie in Fig. 3(0) gezeigt, über einen Weg 262 aus, der zu einer Synchronisationsschaltungslogik 270 führt, die durch das Signal M² CLK über Wege 202, 203 getaktet wird. Das Signal M² SYNC ist "1" für einen oder mehrere M²-Takte, wenn ein Übergang, gefolgt von einer Lauflänge von zwei oder mehreren Datenzellen, vorliegt. Dieses Signal M² SYNC wird typischerweise durch eine "101"-Datensequenz erzeugt und ermöglicht, daß die Phase des Decodierer-NRZ-Takts korrekt synchronisiert wird. Ein Signal CLOCK-PHASE (in Fig. 3 nicht gezeigt) von der Synchronisationsschaltungslogik 270 über einen Weg 272 wird in ein Exklusiv-ODER-Gatter G5 eingegeben, dessen Ausgangssignal, ein Signal NRZ CLK [3(p)], über einen Weg 274 in die Synchronisationsschaltungslogik 270 zurückkehrt. Die Synchronisationsschaltungslogik 270 stellt sicher, daß das Signal NRZ CLK auf einem hohen Pegel liegt, wenn das Signal M² SYNC auf einem hohen Pegel liegt, welches die Bedingung für einen korrekten Phasenabgleich des Signals NRZ CLK ist. Wenn das Signal NRZ CLK mehrere aufeinanderfolgende Zeiten auf einem niedrigen Pegel liegt, wenn das Signal M² SYNC auf einem hohen Pegel liegt, dann wird das Signal CLOCK- PHASE gekippt, was die Phase des Signals NRZ CLK invertiert. Ein Flip-Flop FF9, der ebenfalls durch das Signal M² CLK über Wege 202, 203 und 251 getaktet wird, ist als Frequenzteiler konfiguriert, der ein Signal CLK OUT, den Takt mit der gewünschten NRZ-Frequenz, erzeugt. Der Q- Anschluß des FF9 ist mit dem eigenen D-Anschluß des FF9 über Wege 208, 252, 254 und mit dem Exklusiv-ODER-Gatter G5 über Wege 208, 252, 256 verbunden. Das Signal NRZ CLK aktiviert über einen Weg 274, 282 einen Flip-Flop FF7, der das Signal DATA-1 in seinem D-Anschluß über den Weg 246 empfängt und ein Signal NRZ DATA, wie in Fig. 2 gezeigt, an seinen Q-Anschluß ausgibt. FF7 wird durch das Signal M² CLK über Wege 202, 203 und 281 getaktet. Der Flip-Flop FF9 wird jeden zweiten M²-Takt, wie durch das Signal NRZ CLK gezeigt, während der Zeit aktiviert, wenn das Signal QT3 der Mitte der Datenzelle entspricht. Das Signal NRZ DATA wird durch einen Flip-Flop FF8 gepuffert, bevor es zum Signal DATA OUT, den gewünschten Daten, wird, Der Flip-Flop FF8 taktet erneut die decodierten Daten, was jegliche "Störimpulse" im Ausgangssignal beseitigt, wenn das Signal CLK PHASE die Phase ändert.
  • Mit Bezug auf Fig. 4 und 5 wird gemäß der vorliegenden Erfindung ein M²-Decodierer von Fig. 2 bereitgestellt, wobei eine Schaltung zum Erkennen und Kennzeichnen von Kurzlaufverletzungsfehlern hinzugefügt ist. Für Deutlichkeitszwecke sind die Synchronisationsschaltungslogik 270 und die Logik FF8, FF9 und G5 von Fig. 2 nicht dargestellt. Die Kurzlaufverletzungslogik 400 umfaßt Flip-Flops FF10 und FF11, UND-Gatter G6, G7, G8 und G9 und ein ODER-Gatter G10. Die Datenverschiebeeinrichtung 220 von Fig. 2 wurde in Fig. 4 auf ein 5-Bit-Schieberegister FF3, FF4, FF5, FF6 und FF11 erweitert. Von diesen gibt FF11 QT5 an seinem Q-Anschluß aus, welches als Eingangssignal in das UND-Gattei G9 dient. Außerdem sind die UND-Gatter G6 - G9 und das ODER-Gatter G10 hinzugefügt, um Kurzlaufverletzungen zu erkennen.
  • Fig. 5 ist ein Ablaufdiagramm, in dem Wellenformen vertikal mit der Zeit in Beziehung stehen, welches die Operation der Schaltung von Fig. 4 darstellt. REC DATA in Fig. 5(c), das den ursprünglichen Dateninhalt darstellt, und REC CODE [5(d)], das die entsprechenden M²-Codeseguenzen darstellt, sind zur Bezugnahme enthalten, obwohl der Decodierer sie nicht "kennt". M² CODE in Fig. 5(e) enthält zwei Kurzlaufverletzungen. Jede Verletzung besteht aus einem Paar von M²-Codeübergängen, die um einen M²-Takt getrennt sind. Es gibt zwei mögliche Fehlerorte, die beide mit (?) markiert sind, da der Decodierer nicht weiß, welcher Übergang verschoben wurde. In der Datenverschiebeeinrichtung 220 FF3 - FF6 und seinem Zusatz FF11 gibt es zwei aufeinanderfolgende Abgriffe, die auf einem hohen Pegel liegen, und vier mögliche Fehlerorte für jede Verletzung infolge der Operation des Exklusiv-ODER- Gatters G1. Das Ausgangssignal des UND-Gatters G6 liegt auf einem hohen Pegel, wenn die Abgriffe QT1 [5(i)] und QT2 [5(j)] beide auf einem hohen Pegel liegen. Das Ausgangssignal des UND-Gatters G7 liegt auf einem hohen Pegel im folgenden M²-Takt, wenn die Abgriffe QT2 [5(j)] und QT3 [5(k)] beide auf einem hohen Pegel liegen. Ebenso liegen die UND-Gatter G8 und G9 in den nächsten zwei M²- Takten jeweils auf einem hohen Pegel. Das Ausgangssignal des ODER-Gatters G10 SHORT_ERR [5(r)] liegt auf einem hohen Pegel, sobald irgendeines der UND-Gatter G6-G9 auf einem hohen Pegel liegt. Somit liegt SHORT_ERR für vier M²-Takte oder zwei Datenzellenperioden auf einem hohen Pegel, sobald eine Kurzlaufverletzung auftritt. Dies verursacht, daß zwei decodierte Datenbits als unsicher gekennzeichnet werden. Das Signal SHORT_ERR wird durch den Flip-Flop FF10 gepuffert, bevor es zu einem Signal FLAG [5(w)] wird, dem gewünschten Ausgangssignal, das die Datenfehlerposition anzeigt.
  • Mit Bezug auf Fig. 6 und 7 liegt ein weiteres Ausführungsbeispiel der vorliegenden Erfindung vor. Fig. 6 stellt einen M²-Decodierer von Fig. 2 dar, wobei eine Schaltung zum Erkennen und Kennzeichnen von unzulässigen M²-Synchronisationssequenzen hinzugefügt ist. Für Deutlichkeitszwecke sind die Synchronisationsschaltungslogik 270 und die Logik FF8, FF9 und G5 von Fig. 2 nicht dargestellt. Die Logik 600 für die unzulässige Synchronisationsverletzung umfaßt Flip-Flops FF12, FF13 und FF14, ein UND-Gatter G11 und ein ODER-Gatter G12. Die hinzugefügte Schaltung ist von gestrichelten Linien umgeben. Das 4-Bit-Schieberegister (FF3-FF6) von Fig. 2 wurde in Fig. 6 auf ein 6-Bit-Schieberegister (FF3- FF6, FF12, FF13) erweitert. Von diesen gibt FF12 QT5 und FF13 gibt QT6 an ihren Q-Anschlüssen aus. Beide von diesen werden in ein UND-Gatter G11 mit QT3 und QT4 eingegeben. Außerdem wurden Gatter G11-G12 und ein Flip-Flop FF14 zum Erkennen von unzulässigen M² -Synchronisationssequenzen hinzugefügt.
  • Fig. 7 ist ein Ablaufdiagramm mit Wellenformen darin, die vertikal mit der Zeit in Beziehung stehen, welches die Operation der Schaltung von Fig. 6 darstellt. Wieder sind zur Bezugnahme REC DATA [7 (c)] und REC CODE [7 (d)] enthalten. M² CODE in Fig. 7(e) enthält eine unzulässige M²-Synchronisationssequenz, die aus einem Paar von M²- Codeübergängen besteht, die um vier M²-Takte getrennt sind, wobei der anfängliche Übergang auf die Grenze zwischen zwei Datenzellen fällt. Es gibt zwei mögliche Fehlerorte, die beide mit (?) markiert sind, da der Decodierer nicht weiß, welcher Übergang verschoben wurde. Im Schieberegister FF3- FF6 und FF12-FF13 sind vier mögliche Fehlerorte aufgrund der Operation des Exklusiv-ODER-Gatters G1 vorhanden. Das Ausgangssignal des UND-Gatters G4 M² SYNC [7(p)] liegt auf einem hohen Pegel, wenn der Abgriff QT4 [7(1)] auf einem hohen Pegel liegt und die Abgriffe QT1 [7(i)], QT2 [7(j)] und QT3 [7(k)] alle auf einem niedrigen Pegel liegen. Das Ausgangssignal des UND-Gatters G11 M² SYNC1 [7(q)] liegt zwei M²-Takte später auf einem hohen Pegel. Das Ausgangssignal BAD SYNC [7(r)] des ODER-Gatters G12 liegt auf einem hohen Pegel, wenn entweder M² SYNC oder M² SYNC1 auf einem hohen Pegel liegt. Die Zeitbeziehung von BAD SYNC und NRZ CLK ist derart, daß BAD SYNC auf einem hohen Pegel und NRZ CLK auf einem niedrigen Pegel anzeigt, daß die M²- Synchronisationssequenz unzulässig ist. Somit werden zwei decodierte Datenbits als unsicher gekennzeichnet, sobald eine unzulässige M²-Synchronisationssequenz auftritt. Das Signal BAD SYNC wird durch den Flip-Flop FF14 gepuffert, bevor es zu einem Signal FLAG [7(u)] wird, dem gewünschten Ausgangssignal, das die Datenfehlerposition anzeigt.
  • In einem gültigen M²-Code ist die längste Lauflänge zwischen einem Paar von Übergängen sechs M²-Takte. Wenn ein Wiedergabefehler verursacht, daß entweder der erste Übergang früher oder der zweite Übergang später auftritt, tritt eine Langlauflängenverletzung auf. Der erste Fall führt auch zu einer unzulässigen M²-Sequenz, die durch die Logik von Fig. 6 erkannt und gekennzeichnet wird. Somit muß nur der zweite Fall separat erkannt werden.
  • Mit Bezug auf Fig. 8 und 9 ist dies ein weiteres Ausführungsbeispiel der vorliegenden Erfindung. Fig. 8 stellt den M²-Decodierer von Fig. 2 dar, wobei eine Schaltung zum Erkennen und Kennzeichnen von Langlaufverletzungen hinzugefügt ist. Für Deutlichkeitszwecke sind die Synchronisationsschaltungslogik 270 und die Logik FF8, FF9 und G5 von Fig. 2 nicht dargestellt. Die Langlaufverletzungslogik 800 umfaßt Flip-Flops FF15-FF19, UND-Gatter G13 und G14 und ein ODER-Gatter G15. Die hinzugefügte Schaltung ist von gestrichelten Linien umgeben. Das 4-Bit-Schieberegister (FF3-FF6) von Fig. 2 wurde in Fig. 6 auf ein 8-Bit-Schieberegister (FF3-FF6, FF15-FF18) erweitert. Jedes Ausgangssignal des Q- Anschlusses der Flip-Flops FF15-FF18, QT5, QT6, QT7 und QT8, wird in die Langlaufverletzungslogik 800 eingespeist. Außerdem wurden Gatter G13-G15 und ein Flip-Flop FF19 zum Erkennen von Langlaufverletzungen hinzugefügt.
  • Fig. 9 mit Wellenformen, die vertikal mit der Zeit in Beziehung stehen, ist ein Ablaufdiagramm, das die Operation der Schaltung von Fig. 8 darstellt. M² CODE in Fig. 9(e) enthält eine Langlaufverletzung, die aus einem Paar von M²- Codeübergängen besteht, die um sieben M²-Takte getrennt sind. Der Fehlerort ist mit einem (X) markiert. In diesem Fall weiß der Decodierer, daß der Endübergang verschoben wurde, da der Anfangsübergang in der Mitte einer Datenzelle auftritt. Im Schieberegister FF3-FF6 und FF15-FF18 befinden sich sechs aufeinanderfolgende Abgriffe, die auf einem niedrigen Pegel liegen, und zwei Fehlerorte infolge der Operation des Exklusiv-ÖDER-Gatters G1. Es sind zwei falsch decodierte Datenbits vorhanden. Eines entspricht einem falschen Bit am Schieberegisterabgriff QT3 [9(k)]. Das andere tritt auf, da das Ausgangssignal MISSING-1 [9(q)] des Gatters G2 fälschlich auf einem hohen Pegel liegt, entsprechend einem falschen Nullbit am Schieberegisterabgriff QT1 [9(i)]. Das Ausgangssignal des UND-Gatters G13 liegt auf einem hohen Pegel, wenn die Abgriffe QT1-QT6 [9(i-n)] alle auf einem niedrigen Pegel liegen. Das Ausgangssignal des UND-Gatters G14 liegt zwei M²-Takte später auf einem hohen Pegel. Das Ausgangssignal LONG RUN [9(s)] des ODER-Gatters G15 liegt auf einem hohen Pegel, wenn entweder G13 oder G14 auf einem hohen Pegel liegt. Die Zeitbeziehung zwischen LONG RUN und NRZ CLK [9(w)] ist derart, daß, sobald LONG RUN auf einem hohen Pegel liegt, NRZ CLK auf einem hohen Pegel liegt, wenn der Fehler am Beginn der Langlaufverletzung aufgetreten ist, und NRZ CLK auf einem niedrigen Pegel liegt, wenn der Fehler am Ende der Langlaufverletzung aufgetreten ist. Der erste Fall wird von der Schaltung von Fig. 6 erkannt und im zweiten Fall kennzeichnet die Schaltung von Fig. 8 die zwei decodierten Datenbits, die falsch decodiert werden.
  • Um verschiedene Arten von unzulässigen M²-Sequenzen zu erkennen und zu kennzeichnen, sollte die geeignete Schaltung von Fig. 4, 6 und 8 mit der Schaltung von Fig. 2 kombiniert und zu dieser hinzugefügt werden. In einem solchen Fall können Signale FLAG von Fig. 4, 6 oder 8 durch eine ODER-Logik kombiniert werden, äquivalent können die ODER-Gatter G10, G12 und G15 in Fig. 4, 6 bzw. 8 zu einem einzelnen ODER-Gatter kombiniert werden. Ferner können die Signale FLAG und NRZ DATA in Fig. 4, 6 und 8 jeweils durch einen als FF8 in Fig. 2 konfigurierten Flip-Flop für eine bessere Signalqualität erneut getaktet werden.
  • Die vorliegende Erfindung und ihre verschiedenen Ausführungsbeispiele können in verschiedenen Arten von Digitallogikfamilien oder einer Digitallogiktechnik implementiert werden. Logikverringerungs- und -umformungsverfahren können verwendet werden, um andere Anordnungen von Gattern oder Logikelementen zu verwenden, die zu der hier beschriebenen funktionell äquivalent sind. Überdies kann die Erfindung auf andere Codierschemen als Miller-Codes, aber mit ähnlichen relevanten Eigenschaften angewendet werden.

Claims (14)

1. Vorrichtung für die Erkennung und Korrektur von Fehlern in einem seriellen Datenstrom, der aus einer Folge (3d) von Übergängen zwischen Binärzuständen besteht, die gemäß einem auf einer Regel basierenden Kanalcodeformat codiert werden, welches die zulässigen Positionen von Übergängen relativ zu einem Takt festlegt und Grenzen für die Dauer zwischen aufeinanderfolgenden Übergängen festlegt, wobei die Vorrichtung einen Fehlerkorrektor (106) enthält, und die codierten Daten einen Fehlerkorrektur- Redundanzcode umfassen, der ermöglicht, daß der Fehlerkorrektor (106) den Wert eines Datenfehlers korrigiert, wenn die Position des Fehlers bekannt ist, wobei die Vorrichtung ferner umfaßt:
ein Mittel (210, 200, 220, 240, FF1-FF8) zum Decodieren des Datenstroms;
ein Mittel (400; 600; 800), das auf die Übergänge und den Takt reagiert, um festzustellen, ob die Folge von Übergängen eine Verletzung des Kanalcodeformats enthält, und um ein Hinweissignal (5w; 7u; 9w) zu erzeugen, das mindestens eine mögliche Position in einer Datenfolge angibt, in der ein entsprechender Datenfehler auftritt; und
ein Mittel (FF7; FF10, FF14, FF19), das einen Synchronismus zwischen dem Hinweissignal und demjenigen Teil des decodierten Datenstroms (5v; 7t; 9v) vorsieht, der der Datenfolge entspricht, so daß das Hinweissignal und der Teil des decodierten Datenstroms gleichzeitig in den Fehlerkorrektor eingehen.
2. Vorrichtung nach Anspruch 1, wobei das Codeformat das Miller-Quadrat-Kanalcodeformat ist.
3. Vorrichtung nach Anspruch 2, wobei der decodierte Datenstrom Binärdaten im NRZ- (ohne Rückkehr nach Null) Format mit einem NRZ-Takt mit der halben Miller-Quadrat- Taktfrequenz darstellt.
4. Vorrichtung nach Anspruch 2 oder 3, wobei ein Datenfehler angezeigt wird, wenn zwei aufeinanderfolgende Signalübergange um weniger als zwei Taktintervalle, die durch die Miller-Quadrat-Taktfrequenz definiert sind, getrennt sind.
5. Vorrichtung nach einem der Ansprüche 2 bis 4, wobei ein Datenfehler angezeigt wird, wenn zwei aufeinanderfolgende Signalübergange um mehr als sechs Taktintervalle, die durch die Miller-Quadrat-Taktfrequenz definiert sind, getrennt sind.
6. Vorrichtung nach einem der Ansprüche 2 bis 5, wobei ein Datenfehler angezeigt wird, wenn ein erster Signalübergang zwischen Datenzellen, die durch die Miller- Quadrat-Taktfrequenz definiert sind, auftritt und vom nächsten Signalübergang um mindestens vier Taktintervalle, die durch die Miller-Quadrat-Taktfrequenz definiert sind, beabstandet ist.
7. Vorrichtung nach einem der Ansprüche 1 bis 5, wobei das Hinweissignal zwei mögliche Positionen für den Datenfehler angibt.
8. Verfahren für die Erkennung und Korrektur von Fehlern in einem seriellen Datenstrom, der aus einer Folge von Übergängen zwischen Binärzuständen besteht, die gemäß einem auf einer Regel basierenden Kanalcodeformat codiert werden, welches die zulässigen Positionen von Übergängen relativ zu einem Takt festlegt und Grenzen für die Dauer zwischen aufeinanderfolgenden Übergängen festlegt, wobei die codierten Daten einen Fehlerkorrektur-Redundanzcode umfassen, der ermöglicht, daß ein Fehlerkorrektor den Wert eines Datenfehlers korrigiert, wenn die Position des Fehlers bekannt ist, wobei das Verfahren umfaßt:
Decodieren des Datenstroms;
Reagieren auf die Übergänge und den Takt, um festzustellen, ob die Folge von Übergängen eine Verletzung des Kanalcodeformats enthält, und um ein Hinweissignal zu erzeugen, das mögliche Positionen in einer Datenfolge angibt, in der ein entsprechender Datenfehler auftritt;
Vorsehen eines Synchronismus zwischen dem Hinweissignal und demjenigen Teil des decodierten Datenstroms, der der Datenfolge entspricht, so daß das Hinweissignal und der Teil des decodierten Datenstroms gleichzeitig in den Fehlerkorrektor eingehen; und
Korrigieren des Datenfehlers mit Hilfe des Fehlerkorrektors.
9. Verfahren nach Anspruch 8, wobei das Codeformat das Miller-Quadrat-Kanalcodeformat ist.
10. Verfahren nach Anspruch 9, wobei der decodierte Datenstrom Binärdaten im NRZ- (ohne Rückkehr nach Null) Format mit einem NRZ-Takt mit der halben Miller-Quadrat- Taktfrequenz darstellt.
11. Verfahren nach Anspruch 9 oder 10, wobei ein Datenfehler angezeigt wird, wenn zwei aufeinanderfolgende Signalübergange um weniger als zwei Taktintervalle, die durch die Miller-Quadrat-Taktfrequenz definiert sind, getrennt sind.
12. Verfahren nach einem der Ansprüche 9 bis 11, wobei ein Datenfehler angezeigt wird, wenn zwei aufeinanderfolgende Signalübergange um mehr als sechs Taktintervalle, die durch die Miller-Quadrat-Taktfrequenz definiert sind, getrennt sind.
13. Verfahren nach einem der Ansprüche 9 bis 12, wobei ein Datenfehler angezeigt wird, wenn ein erster Signalübergang zwischen Datenzellen, die durch die Miller-Quadrat- Taktfrequenz definiert sind, auftritt und vom nächsten Signalübergang um mindestens vier Taktintervalle, die durch die Miller-Quadrat-Taktfrequenz definiert sind, beabstandet ist.
14. Verfahren nach einem der Ansprüche 8 bis 12, wobei das Hinweissignal zwei mögliche Positionen für den Datenfehler angibt.
DE69329740T 1992-04-03 1993-04-01 Miller-Quadratdekoder mit Löschfahnenausgang Expired - Lifetime DE69329740T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/863,602 US5390195A (en) 1992-04-03 1992-04-03 Miller-squared decoder with erasure flag output

Publications (2)

Publication Number Publication Date
DE69329740D1 DE69329740D1 (de) 2001-01-18
DE69329740T2 true DE69329740T2 (de) 2001-08-02

Family

ID=25341383

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69329740T Expired - Lifetime DE69329740T2 (de) 1992-04-03 1993-04-01 Miller-Quadratdekoder mit Löschfahnenausgang

Country Status (6)

Country Link
US (1) US5390195A (de)
EP (1) EP0564283B1 (de)
JP (1) JPH06318929A (de)
KR (1) KR100296072B1 (de)
AT (1) ATE198109T1 (de)
DE (1) DE69329740T2 (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2740280B1 (fr) * 1995-10-20 1997-11-21 Cga Hbs Systeme permettant un decodage correct, sous forme d'un message binaire, d'un code magnetique enregistre sur une piste magnetique
US5875202A (en) * 1996-03-29 1999-02-23 Adtran, Inc. Transmission of encoded data over reliable digital communication link using enhanced error recovery mechanism
US5812603A (en) * 1996-08-22 1998-09-22 Lsi Logic Corporation Digital receiver using a concatenated decoder with error and erasure correction
US5875199A (en) * 1996-08-22 1999-02-23 Lsi Logic Corporation Video device with reed-solomon erasure decoder and method thereof
US5953636A (en) * 1996-10-30 1999-09-14 Lsi Logic Corporation Single-chip DBS receiver
EP0885499B1 (de) * 1996-12-18 2004-06-16 Koninklijke Philips Electronics N.V. Übertragungs- und aufzeichnungssystem mit vereinfachtem symboldetektor
US6219814B1 (en) 1996-12-23 2001-04-17 International Business Machines Corporation Method and apparatus for selectively varying error correcting code (ECC) power in a direct access storage device (DASD)
JP3502559B2 (ja) * 1999-02-05 2004-03-02 松下電器産業株式会社 消失訂正方法、及び消失訂正回路
US6799294B1 (en) * 2000-04-06 2004-09-28 Lucent Technologies Inc. Method and apparatus for generating channel error flags for error mitigation and/or concealment in source decoders
US20020199153A1 (en) * 2001-06-22 2002-12-26 Fall Thomas G. Sampling method for use with bursty communication channels
KR100519771B1 (ko) * 2003-07-10 2005-10-07 삼성전자주식회사 에러 정정 디코딩 방법 및 그 장치
US7689132B2 (en) * 2005-06-07 2010-03-30 Industrial Technology Research Institute Interference-rejection coding method for an optical wireless communication system and the optical wireless communication system thereof
US7743309B2 (en) * 2006-03-17 2010-06-22 Microsoft Corporation Distributed source coding with context
US9082457B2 (en) * 2013-05-23 2015-07-14 Kabushiki Kaisha Toshiba Data decoding control apparatus, data storage apparatus and data decoding method
CN104639179B (zh) * 2013-11-13 2018-08-14 上海华虹集成电路有限责任公司 通过二进制本原bch码的缩短码检测特殊错误模式的方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3108261A (en) * 1960-04-11 1963-10-22 Ampex Recording and/or reproducing system
US3639900A (en) * 1970-05-27 1972-02-01 Ibm Enhanced error detection and correction for data systems
US3786439A (en) * 1972-12-26 1974-01-15 Ibm Error detection systems
US3810111A (en) * 1972-12-26 1974-05-07 Ibm Data coding with stable base line for recording and transmitting binary data
USRE31311E (en) * 1976-03-19 1983-07-12 Ampex Corporation DC Free encoding for data transmission system
US4234897A (en) * 1978-10-05 1980-11-18 Ampex Corporation DC Free encoding for data transmission
US4437086A (en) * 1978-10-05 1984-03-13 Ampex Corporation Limited look-ahead means
NL8003474A (nl) * 1980-06-16 1982-01-18 Philips Nv Werkwijze voor het coderen van databits op een regis- tratiedrager, inrichting voor het uitvoeren van de werkwijze en registratiedrager voorzien van een informatiestructuur.
US4357702A (en) * 1980-11-28 1982-11-02 C.N.R., Inc. Error correcting apparatus
US4454499A (en) * 1981-12-21 1984-06-12 Sri International Digital Miller decoder
US4502142A (en) * 1982-09-07 1985-02-26 Lockheed Electronics Company, Inc. Apparatus for detecting errors in a digital data stream encoded in a double density code
US5109385A (en) * 1989-04-27 1992-04-28 International Business Machines Corporation Enhanced data formats and machine operations for enabling error correction
GB8912471D0 (en) * 1989-05-31 1989-07-19 Int Computers Ltd Data transmission code

Also Published As

Publication number Publication date
US5390195A (en) 1995-02-14
KR100296072B1 (ko) 2001-10-24
JPH06318929A (ja) 1994-11-15
EP0564283A2 (de) 1993-10-06
DE69329740D1 (de) 2001-01-18
ATE198109T1 (de) 2000-12-15
KR930022763A (ko) 1993-11-24
EP0564283B1 (de) 2000-12-13
EP0564283A3 (en) 1996-05-22

Similar Documents

Publication Publication Date Title
DE69329740T2 (de) Miller-Quadratdekoder mit Löschfahnenausgang
DE69319997T2 (de) Modulationsverfahren, Modulationsvorrichtung und Demodulationsvorrichtung
US4027335A (en) DC free encoding for data transmission system
DE3854292T2 (de) Decoder.
DE69325151T2 (de) Datenaufnahmeverfahren und Datenaufnahmegerät
DE69923841T2 (de) Verfahren und vorrichtung zur modulation und demodulation von daten mittels eines kodes variabler länge
DE69330591T2 (de) Differentiell kodierte Pulspositionsmodulation mit Schutzintervall für die Anwendung in Kommunikationsnetzwerken
DE3125529C2 (de) Verfahren zum Umkodieren einer Folge von Datenbits in eine Folge von Kanalbits, Anordnung zum Dekodieren der nach diesem Verfahren kodierten Kanalbits und Aufzeichnungsträger mit einer gemäß diesem Verfahren erzeugten Informationsstruktur
US4234897A (en) DC Free encoding for data transmission
DE69228353T2 (de) Fehlerkorrekturgerät für digitale Daten und Digitalsynchronisationsdetektierungsgerät
USRE31311E (en) DC Free encoding for data transmission system
DE2847800A1 (de) Digitale blocksynchronisierschaltung
DE69320720T2 (de) Detektion eines Synchronisationssignals und Datendemodulation
DE3222658A1 (de) Verfahren und vorrichtung zum unterdruecken von fehlerhaften daten
DE69033834T2 (de) Für das Kopieren von Daten geeignete Kodierungs- und Dekodierungsvorrichtung
DE3226642A1 (de) Datenlesegeraet zur verwendung bei der datenuebertragung
DE3786449T2 (de) Verfahren und Gerät zur Erkennung vorübergehender Fehler.
DE3407832C2 (de) Verfahren zum Kodieren und Dekodieren binärer Daten
DE3852867T2 (de) Verfahren und System zur Rastersynchronisierung.
DE3122763C2 (de)
DE3724572C2 (de)
DE69015865T2 (de) Einrichtung und Verfahren zur richtigen Dekodierung in einem Kodierer/Dekodierer.
DE3500115A1 (de) Verfahren zum codieren eines datenbitmusters, anordnung zur durchfuehrung des verfahrens und anordnung zum decodieren des mit dem verfahren erhaltenen kanalbitflusses
DE2718691C3 (de) Umsetzereinrichtung zum Aufzeichnen und Auslesen von binären Zahlen
EP0315130B1 (de) Verfahren zur Übertragung eines Digitalsignals

Legal Events

Date Code Title Description
8364 No opposition during term of opposition