Run Length Limited

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania

RLL (ang. Run Length Limited) – jest popularną metodą kodowania danych zapisywanych na dysk twardy. RLL umożliwia upakowanie do 50% więcej danych na dysku (przy takiej samej częstotliwości maksymalnej sygnału) niż metoda MFM.

Historia[edytuj | edytuj kod]

Kodowanie RLL zostało wprowadzone przez IBM, do zapisu danych na dyskach stacji roboczych.

Idea[edytuj | edytuj kod]

Grupy bitów są zamieniane na ciągi innych bitów tak, by uzyskać jednoznaczne kodowanie przy ograniczonym minimalnym i maksymalnym czasie bez zmiany sygnału. Zgodnie z tą ideą można uzyskać wiele wersji kodowania. Wersje te oznaczane są cyfrowo np. technika RLL 2.7 oznacza, że najkrótszy czas bez zmiany sygnału wynosi 2 takty, a najdłuższy 7 taktów. Pierwsza liczba decyduje o maksymalnej częstotliwości jaka wystąpi na głowicy zapisującej (tu częstotliwość taktowania / (2+1)), natomiast druga o minimalnej częstotliwości (maksymalnym czasie między zmianami). Zwiększenie pierwszej liczby umożliwi zwiększenie częstotliwości taktowania przy niezmienionej częstotliwości na głowicy zapisującej, ale wymaga to zwiększenia drugiej liczby. Zwiększenie drugiej liczby oznacza zwiększenie maksymalnych czasów. Nie można jednak ich zbytnio zwiększać, bo niedokładności w obrotach talerza dysku mogą spowodować nieprawidłowe rozpoznawanie długości sygnału.

Bity Wejściowe Bity Wyjściowe
000 000100
10 0100
010 100100
0010 00100100
11 1000
011 001000
0011 00001000
Tabela kodowania RLL 2.7

W bitach wyjściowych zero oznacza "nie zmieniać kierunku prądu", jedynka - "zmienić kierunek prądu".

Przykładowy 010011 ciąg bitów zostanie rozbity na grupy i zakodowany:

010 – 100100

011 – 001000

Powyższe 100100001000 odpowiada przebiegowi prądu głowicy ---_______---, do zakodowania 6 bitów wystarczyły 3 zmiany kierunku prądu, najkrótszy czas między zmianami jest równy 3 takty, a najdłuższy 7. Dla porównania w metodzie FM maksymalna liczba zmian jest równa 2 na bit, w MFM 1 na bit, a w RLL 2.7 – 1 na 2 zapisywane bity.