Tape storage technology


Codierungen

NRZ

Die "Non Return to Zero" Codierung ist simpel: Das Band wird wird für "0" in die eine Richtung magnetisiert, für "1" in die andere:

Browser
NRZ Codierung

Nachteil dieser Codierung ist die fehlende Taktinformation. Folgen mehrere gleiche Bits aufeinander, wird die Decodierung schwierig.



PE

"Phase Encoding" fügt diesen Takt hinzu indem die Bits durch Flanken statt durch Pegel codiert werden. Eine "0" wird durch eine fallende Flanke dargestellt, eine "1" durch eine steigende Flanke. Folgen zwei gleiche Bits aufeinander, wird eine weiter Flanke auf der Bitzellengrenze eingefügt:

Browser
PE Codierung



FM

"Frequency Modulation" wurde meines Wissens nicht für Bandlaufwerke verwendet, soll hier aber trotzdem erwähnt werden als Basis für MFM. FM funktioniert ähnlich wie PE, nur daß hier eine vorhandene Flanke eine "1" codiert, eine fehlende Flanke eine "0". Die Flanken auf den Bitzellengrenzen sind dagegen immer vorhanden um die Taktinformation zur Verfügung zu stellen.

Browser
FM Codierung

Der Name kommt daher, daß die Anzahl der Flusswechsel doppelt so gross ist, wenn Einsen anstatt von Nullen codiert werden. Dadurch ist auch die resultierende Signalfrequenz doppelt so groß, wenn aufeinanderfolgende Einsen codiert werden (im Vergleich zur Frequenz bei aufeinanderfolgenden Nullen).



MFM

"Modified Frequency Modulation" ist eine vergleichsweise alte Codierung. Sie wurde für Disketten und teilweise auch für Festplatten verwendet. Bei Bandlaufwerken kommt sie ausschliesslich für Laufwerke mit Shugart Floppy Interface zum Einsatz.

Browser
MFM Codierung

Wie man sieht wurde die pauschale dedizierte Taktinformation auf den Bitzellengrenzen weggelassen. Stattdessen werden die Flanken der Einsen als Takt mitverwendet. Flanken auf den Bitzellgrenzen werden nur noch eingefügt, wenn mehrere Nullen hintereinander liegen (um sicherzustellen, daß auch bei aufeinanderfolgenden Nullen noch Taktinformation zur Verfügung steht). Dazu muss lediglich der Zustand des letzten Bits im Encoder gespeichert werden. Um die Daten zu decodieren, kann der Takt mittels einer PLL-Schaltung zurückgewonnen werden.

Ein MFM codiertes Signal hat dann im Schnitt nur die halbe Anzahl an Flusswechseln wie ein FM oder PE codiertes Signal. Daraus resultiert eine Verdoppelung der Bandkapazität gegenüber PE (bzw. FM) Codierung.



GCR

Das "Group Code Recording" war lange Zeit bei Bandlaufwerken sehr verbreitet. Es wurde durch die bei Festplatten verwendeten Verfahren RLL und später PRML abgelöst.



RLL

"Run Length Limited" ist der Nachfolger von MFM und lebt heute in PRML weiter. RLL erweitert das Schema von MFM (Reduktion der Taktinformation) noch weiter. RLL bezeichnet nur das Prinzip der Codierung an sich, es gibt diverse Arten von RLL Codes. Characteristisch für RLL sind zwei Nummern die normalerweise in Klammern angegeben sind. Die erste ist der Mindestabstand zweier Flusswechsel, die zweite deren maximaler Abstand. Beide Parameter werden von der Hardware vorgegeben: Der minimale Abstand hauptsächlich von Band und Kopf, der maximale von der PLL, d.h. der Taktrückgewinnungsschaltung.

Funktionsprinzip:
Statt der Codierung einzelner Bits werden immer Gruppen von Bits codiert. Hier ein Beispiel für einen RLL(2,7) Code:

Nutzdaten     Code ('X': Flusswechsel, '-': kein Flusswechsel)
--------------------------------------------------------------
   11         X---
   10         -X--

   011        --X---
   010        X--X--
   000        ---X--

   0010       --X--X--
   0011       ----X---
         
Alle Codes enden auf "--", d.h. es auch bei beliebiger Mischung garantiert, daß der Mindestabstand "2" eingehalten wird. Der Maximalabstand "7" ergibt sich aus den gewählten Codes.

Beispiel mit Nutzdaten "10001111":

FM Code      : XX X- X- X- XX XX XX XX   (13 Flusswechsel)
MFM Code     : -X -- X- X- -X -X -X -X   (7 Flusswechsel)
RLL(2,7) Code: -X-- ----X--- X---        (3 Flusswechsel)
         
Im Vergleich zu MFM passen mit RLL(2,7) etwa eineinhalb mal so viele Daten auf ein Band.



PRML

"Partial Response Maximum Likelyhood" wurde für Festplatten entwickelt und verwendet eine normale Codierung wie z.B. RLL als Basis. Allerdings wird die Codierung so heftig gewählt, z. B. RLL(0,15), daß ein normaler RLL Decoder aufgrund von Rauschen und Überlagerung der Flußwechsel nichts mehr damit anfangen könnte. Stattdessen werden die analogen Kopfsignale vor der Dekodierung quantisiert (abgetastet). Dann werden mathematische Algorithmen (Digitalfilter) verwendet, um die Daten zu dekodieren. Dies kann nicht mehr mit einfacher Logik geschehen, es wird ein digitaler Signalprozessor (DSP) verwendet.

Der sogenannte Viterbi Algorithmus, der auf dem DSP läuft, ermittelt durch probieren aller Möglichkeiten das Code Muster, das mit der grössten Wahrscheinlichkeit das richtige ist und liefert die zugehörigen dekodierten Daten. Damit holt PRML im Vergleich zu RLL(1,7) - bei gleicher oder besserer Fehlerrate - 20-40% mehr Nutzdaten aus dem gleichen Band heraus.



TCPR

"Trellis Codes Partial Response" wird von Sony für AIT2 verwendet. Es soll angeblich für Bandlaufwerke besser geeignet sein als PRML.



NPML

"Noise Predictive Maximum Likelyhood" wird für Ultrium 6 (LTO) verwendet.




Browser        IDFC        Last update: 2014-10-14        michael.baeuerle@gmx.net