Kontroler napędu dysków elastycznych 231
Rozdział 5. Kontroler napędu dysków elastycznych
Zapis informacji na dyskietce
Modele IBM PC posługiwały się systemem zapisu magnetycznego określanym mianem FM (ang. Freąuency Modulatiori). Jest to bardzo prosty i zarazem mało wydajny sposób kodowania informacji na nośniku magnetycznym. Najstarsze modele jako pamięć zewnętrzną wykorzystywały magnetofon, ale ma to znaczenie wyłącznie historyczne, dlatego też nie będzie tutaj omawiane.
Pamiętajmy, że tylko zmiana namagnesowania podłoża magnetycznego dyskietki niesie z sobą informację. Stałe namagnesowanie nośnika nie wywołuje impulsów w głowicy napędu. Źródłem impulsów jest zmiana namagnesowania nośnika, przy czym stan początkowy namagnesowania nie ma absolutnie znaczenia (tzn. symboliczna zmiana N-»S i S-»N niesie tę samą informację).
Ideę zapisu magnetycznego FM można wyrazić następującymi regułami:
• na ciąg danych przeznaczonych do zapisywania nakładany jest prostokątnyprzebieg zegarowy, którego okres „pokrywa" jeden bit informacji wejściowej;
• każdy impuls zegara powoduje zmianę namagnesowania podłoża (Z);
• jeżeli w danym cyklu zegara ciąg danych wejściowych reprezentuje jedynkę,pomiędzy impulsami pochodzącymi od zegara wprowadzany jest dodatkowyimpuls (D).
Pokazano to na rysunku 5.1.
232
Anatomia PC
3
m
0 i 0
1 i i
0
i i Baj
t o wartości
66h i i
Rysunek 5.1.
Sposób zapisu informacji na dyskietce w standardach FMiMFM
©
-juinnnniuif®
Z D Z D Z i Z i Z D Z D Z • Z
FM
Di i i Z ! D i D
MFM
tfm
t MFM
Obecnie powszechnie stosowaną metodą zapisu danych na dyskietkach stał się konkurencyjny do systemu FM system MFM (ang. Modified Freąuency Modulatioń). Rysunek 5.1. przedstawia schematycznie różnicę między tymi dwoma systemami.
Zapis MFM rządzi się następującymi regułami:
• na ciąg danych przeznaczonych do zapisywania nakładany jest prostokątnyprzebieg zegarowy, którego okres „pokrywa" jeden bit informacji wejściowej.Impuls przemagnesowania dla jednego bitu (impulsu zegara) może pojawić siętylko raz;
• impuls zegara powoduje zmianę namagnesowania podłoża tylko wtedy, gdystowarzyszony z nim bit danych i poprzedni bit danych mają wartość zero (Z);
• jeżeli w danym cyklu zegara ciąg danych wejściowych reprezentuje jedynkę, togenerowany jest impuls do przemagnesowania nośnika (D).
Można to przedstawić następująco:
Ciąg danych
Impuls przemagnesowujący
00
tak
01
10
nie
11
Kontroler napędu dysków elastycznych 233
W obydwu metodach kodowania na ciąg impulsów wyjściowych będących źródłem przemagnesowywania podłoża składają się impulsy pochodzące od zegara (Z) i odkodo-wanych danych (D).
Widać wyraźnie, że liczba zmian namagnesowania nośnika przypadających na jeden bit informacji jest większa (teoretycznie dwukrotnie) dla zapisu FM. Materiał magnetyczny, którym pokryta jest dyskietka, wykazuje ziarnistość; istnieje ściśle określona dolna granica wielkości obszaru, który można indywidualnie przemagnesować. W przypadku dyskietek HD ta granica to około 2 um. Na tej samej długości ścieżki można więc w formacie MFM zmieścić dwukrotnie więcej informacji.
Do dekodowania impulsów MFM używa się dwóch bramek sterowanych przesuniętymip o pół okresu przebiegami o częstotliwości zegara. Obie bramki otrzymują też dekodo-
| wany sygnał MFM. Jedna z bramek odfiltrowuje składowe Z i kieruje je do układu
synchronizowania zegara, a druga wydziela dekodowane dane. Należy podkreślić, że przebieg MFM niesie w sobie informację o fazie i częstotliwości sygnału zegarowego tylko w ograniczonym stopniu. Aby zagwarantować właściwą pracę dekodera, co pewien czas należy wymuszać obecność sygnałów synchronizacyjnych. Dokonuje się tego wprowadzając pola zawierające same zera — ciąg taki, jak wiemy, powoduje generację sygnału zegarowego. Szczególnie narażone na rozsynchronizowanie są sektory zawierające tylko bajty o wartości FFh.
Fizyczna organizacja danych na dyskietce
Informacja nie jest zapisywana na dyskietce w postaci jednolitego ciągu bajtów, lecz zorganizowana jest w tzw. sektory. Każdy sektor zawiera 512 bajtów, co jest jednocześnie najmniejszą porcją informacji, jaka może być z dyskietki odczytana. Z punktu widzenia systemu operacyjnego logiczną strukturę dyskietki tworzą pliki i katalogi, zaś niektóre informacje (zapisane w ściśle określonym miejscu na dysku) mają specjalne znaczenie, np. sektor ładujący (ang. boot sector), katalog (ang. directory). Każdy sektor należy ponadto do tzw. jednostki alokacji (ang. cluster) o kolejnym numerze logicznym, a jednocześnie, z fizycznego punktu widzenia, wchodzi w skład ścieżki (ang. track). Na szczególną uwagę zasługuje tzw. tablica alokacji (ang. FAT - File Allocation Table), będąca specjalną „łańcuchową" strukturą informującą system, które jednostki alokacji (i w jakiej kolejności) składają się na dany plik.
System operacyjny korzysta bardzo intensywnie ze wsparcia kontrolera napędu dysków elastycznych, któremu powierza się zadanie administrowania fizyczną powierzchnią dyskietki. To kontroler musi wiedzieć, gdzie odszukać żądany sektor oraz jak radzić sobie z uszkodzonymi sektorami.
Operacja formatowania dyskietki nanosi na nią określoną fizyczną strukturę ścieżek i ich sektorów. Oprócz znanych nam 512-bajtowych sektorów logicznych, dyskietka zawiera wiele dodatkowych pól służących kontrolerowi do administracji sektorami (odnajdywania sektorów i przechowywania informacji o ich stanie) oraz pomagających korygować
234
niedokładności mechanicznego wykonania napędu i dyskietki, jak również wahania prędkości obrotowej dysku. Dodatkowe pola na ścieżce pomagają w uzyskaniu stabilnego ciągu impulsów synchronizacyjnych potrzebnych w obróbce danych (szczególnie MFM).
W pierwszym przybliżeniu fizyczna organizacja powierzchni dyskietki składa się z jednakowych, koncentrycznych ścieżek. Każda z nich zawiera znacznik początku ścieżki (ang. BOT — Beginning of Track), sektory w liczbie zależnej od rodzaju dyskietki oraz znacznik końca ścieżki (ang. EOT - End of Track). Budowę jednej ścieżki dyskietki obrazuje rysunek 5.2.
...
roman61