601 700


Wielu użytkowników ma problemy z rozróżnieniem 16-bitowych i 32-bitowych połączeń magistrali oraz 16-bitowych i 32-bitowych przyłączy dysku. Magistrala PCI pozwala na 32-bitowe (a prawdopo­dobnie w przyszłości 64-bitowe) połączenie pomiędzy adapterem hosta interfejsu ATA, który zwy­kle znajduje się w układzie mostka południowego płyty głównej lub układzie koncentratora kontro­lera l/O (ICH). Jednak interfejs ATA pomiędzy złączem adaptera hosta na płycie głównej a dyskiem jest interfejsem 16-bitowym. Dlatego dyski korzystające z równoległego interfejsu ATA korzystają z 16-bitowego transferu pomiędzy dyskiem a płytą główną. Mimo to szybkość zegara interfejsu ATA jest na tyle duża, że nawet dwa dyski nie są w stanie dostarczać takiej ilości danych danych, aby nasycić ten 16-bitowy kanał. To samo dotyczy interfejsu Serial ATA, który choć przesyła dane po jednym bicie, wykonuje to z ekstremalnie dużą szybkością.

Równoległy interfejs ATA jest 16-bitowy. co oznacza, że jednocześnie kablem przesyłanych jest 16 bitów. Interfejs szeregowy, nazwany Serial ATA, oficjalnie zaprezentowany został pod koniec 2000 r., a w kompu­terach zaczął pojawiać się od 2003 r. W interfejsie tym w danej chwili kablem przesyłany jest 1 bit, dzięki czemu możliwe jest zastosowanie cieńszych i mniejszych kabli, a także — ze względu na szybsze cykle — osiągnięcie wyższej wydajności. Interfejs SATA posiada zupełnie nową i uaktualnioną fizyczną konstrukcję. Jednocześnie na poziomie oprogramowania pozostaje zgodny z interfejsem ATA. W książce termin ATA do­tyczy zarówno szeregowej, jak i równoległej wersji interfejsu, natomiast określenia PATA (Parallel ATA) i SATA (Serial ATA) odnoszą się do określonej wersji. Na rysunku 7.1 porównano wielkość złączy danych i zasilania stosowanych w przypadku szeregowego interfejsu SATA i równoległego ATA.


0x08 graphic
Rysunek 7.1.

Złącze danych Serial A TA (na dole po prawej) jest znacznie mniejsze od stosowanego w przypadku interfejsu równoległego A TA (u góry po prawej). Z kolei złącza zasilania obu interfejsów są podobnej wielkości (po lewej)

Podstawową przewagą dysków ATA nad starszymi interfejsami opartymi na oddzielnych kontrolerach oraz nowszymi interfejsami magistral hosta, takimi jak USB, SCSI i IEEE 1394 (i.Link lub FireWire), jest koszt. Ponieważ wyeliminowano oddzielny kontroler lub adapter hosta i uproszczono połączenia kablowe, dyski ATA są znacznie tańsze od tradycyjnego kontrolera i kombinacji napędów.

► Zajrzyj do podrozdziału „Smali Computer System Interface", znajdującego się na stronie 655.

^ ^ Zajrzyj do podrozdziału „USB i IEEE 1394 (i.Link/FireWire)", znajdującego się na stronie 1043.

W kategoriach wydajności dyski ATA często zaliczają się do tych. które oferują najwyższą możliwą do uzy­skania efektywność. Jednak mogą znaleźć się też w grupie dysków o najniższej wydajności. Tak wyraźna sprzeczność jest wynikiem tego różnic między poszczególnymi napędami ATA. Nie można jednoznacznie wypowiedzieć się na temat wydajności dysków ATA, ponieważ każdy z nich jest niepowtarzalny. Droższe modele oferują jednak wydajność równą wydajności dostępnych na rynku dysków innego typu stosowanych w komputerach z systemem operacyjnym obsługiwanym przez jednego użytkownika wykonującego pojedyn­cze zadania lub nawet lepszą.

Standardy ATA

W chwili obecnej interfejs ATA jest kontrolowany przez niezależną grupę reprezentantów dużych producen­tów systemów PC, dysków i komponentów. Grupa ta nosi nazwę Technical Committee T13 (http://www.tl3.org) i jest odpowiedzialna za wszystkie standardy dotyczące równoległego i szeregowego interfejsu AT Attachment. Grupa T13 stanowi część komitetu National Committee on Information Technology Standards (NCTIS), któ­ry pracuje według zasad zatwierdzonych przez American National Standards Institute (ANSI), z ramienia rzą­du ustanawiającego zasady określające standardy w przemyśle komputerowym oraz innych działach techniki. Powstała również druga grupa, o nazwie Serial ATA Workgroup (http://www.serialata.org), która opracowuje standardy dla szeregowego interfejsu ATA. Standardy są następnie przekazywane grupie Technical Comittee Tl3 w celu dopracowania i opublikowania w ramach organizacji ANSI. Standard ATA-7 uwzględnia zarówno interfejs szeregowy, jak i równoległy ATA oraz wyznacza kres tego drugiego, ponieważ standard ATA-8 i jego następcy opierają się już wyłącznie na interfejsie szeregowym.

Zasady działania tych komitetów gwarantują, że dobrowolne standardy są tworzone na zasadzie porozumie­nia ludzi i organizacji działających w branży, której będzie dotyczył standard. NCITS tworzy standardy dla systemów przetwarzania informacji, natomiast ANSI aprobuje proces ich tworzenia i publikuje je. Ponieważ grupa Tl3 jest organizacją całkowicie publiczną, wszystkie robocze dokumenty, dyskusje i spotkania grupy są otwarte dla każdego.

Kopię każdego opublikowanego standardu można nabyć od organizacji ANSI lub firmy Global Engineering Documents. Robocze wersje standardów można pobrać z witryny WWW grupy Technical Committee Tl 3 lub Serial ATA Working Group.

Równoległy interfejs ATA rozwijał się poprzez kilka kolejnych wersji standardu. Kolejno były to:

Od czasów pojawienia się standardu AT A-l nowsze wersje interfejsu ATA i uzupełniający je BIOS obsłu­gują pojemniejsze i szybsze dyski twarde, a także innego typu urządzenia. W przypadku standardu ATA-2 i jego następców oryginalna wersja interfejsu ATA rozszerzona została w pięciu podstawowych obszarach. Oto one:

Każda wersja interfejsu ATA jest zgodna z poprzednimi wersjami. Inaczej mówiąc, stare urządzenia ATA-1 lub ATA-2 działają świetnie z interfejsami ATA-6 lub ATA-7. ATA-7 uwzględnia zarówno równoległy, jak i szeregowy interfejs ATA, natomiast ATA-8 tylko szeregowy. Nowsze wersje interfejsu ATA są tworzone na podstawie starszej wersji i z kilkoma wyjątkami mogą być traktowane jako rozszerzenia poprzedniej wersji. Oznacza to, że interfejs ATA-7 może być postrzegany jako ATA-6 z dodatkowymi możliwościami.

W tabeli 7.2 przedstawiamy różne standardy ATA. W kolejnych akapitach opiszemy bardziej szczegółowo wszystkie wersje tego interfejsu.

ATA-1

ATA-l definiuje oryginalny interfejs AT Attachment, który jest zintegrowanym interfejsem magistrali pomię­dzy napędem dysku a systemem korzystającym z magistrali ISA (AT). Podstawowymi funkcjami wprowadzo­nymi i udokumentowanymi w specyfikacji ATA-1 były:

Choć specyfikacja ATA-1 była w użyciu od 1986 r., prace mające na celu ustanowienie jej oficjalnym stan­dardem rozpoczęły się w 1988 r. pod nadzorem organizacji CAM (Common Access Method). Standard ATA-1 został ukończony i oficjalnie opublikowany w 1994 r. jako ANSI X3.221-1994, AT Attachment Interface for Disk Drives. Specyfikacja ATA-1 została oficjalnie wycofana 6 sierpnia 1999 roku.

Choć ATA-1 obsługiwała teoretycznie dyski o pojemności do 136,9 GB (228 - 220 = 267 386 880 sektorów), BIOS ograniczał tę pojemność do 528 MB (1024 x 16 x 63 = 1 032 192 sektory). Ograniczenia BIOS były rozwiązane w kolejnych wersjach interfejsu ATA, ponieważ w tym czasie nie były dostępne dyski o pojem­ności większej niż 528 MB.

ATA-2

Standard ATA-2, który po raz pierwszy pojawił się w roku 1993, został znacznie ulepszony w stosunku do pierwszego standardu ATA. Prawdopodobnie największą zmianą była zmiana funkcji interfejsu. Standard ATA-2 nie jest ograniczony jedynie do dysków twardych, definiuje on interfejs pomiędzy systemem a do­wolnym urządzeniem służącym do przechowywania danych. W porównaniu do oryginalnego standardu ATA, w ATA-2 zostały dodane między innymi następujące funkcje:

Najważniejszymi udoskonaleniami standardu ATA-2 były obsługa szybszych trybów PIO i DMA, jak również umożliwienie obsługi przez BIOS dysków o pojemności do 8,4 GB. Wspomaganie BIOS-u było niezbędne, ponieważ pozwalał on na obsługę dysków o maksymalnej pojemności 528 MB, mimo że sam standard ATA pozwalał na konstruowanie dysków o maksymalnej pojemności 136,9 GB. Dodanie funkcji translacji para­metrów umożliwiło obsługę przez BIOS dysków o pojemnościach do 8,4 GB. Funkcja ta zostanie dokładniej omówiona w dalszej części rozdziału.

W standardzie ATA-2 znalazły się również rozszerzenia polecenia Identify Drive, co pozwala na odczytywanie przez oprogramowanie dokładnej charakterystyki dysku. Usprawnienie to jest kluczowe dla działania techno­logii Pług and Play (PnP) oraz zgodności z kolejnymi wersjami standardu.

Tabela 7.2. Standardy ATA

Standard

Zapropo­nowany

Opubliko­wany

Wyco­fany

Tryby PIO

Tryby DMA

Tryby UDMA

Szybkość interfejsu równoległego (MB/s)

Szybkość interfejsu równoległego (MB/s)

ATA-1

1988

1994

1999

0-2

0

8,33

ATA-2

1993

1996

2001

0-4

0-2

16,67

ATA-3

1995

1997

2002

0-4

0-2

16,67

ATA-4

1996

1998

0-4

0-2

0-2

33,33

ATA-5

1998

2000

0-4

0-2

0-4

66,67

ATA-6

2000

2002

0-4

0-2

0-5

100

ATA-7

2001

2004

0-4

0-2

0-6

133

150

SATA-8

2004

300

SMART = Self-Monitoring, Analysis and Reporting Techology — technologia samoczynnego monitorowania,

analizy i raportowania uszkodzeń.

A TAPI = AT Attachment Packet Interface.

MB = Megabajt; milion bajtów.

GB = Gigabajt; miliard bajtów.

PB = Pelabajl; kwadrylion bajtów.

CHS - Cylinder, Head, Sector — cylinder, głowica, sektor. LBA = Logical błock address — adres bloku logicznego. PIO = Programmed l/O—programowalne wejście-wyjście. DMA = Direct Memory Access — bezpośredni dostąp do pamięci. UDMA = Ultra DMA.

Standard ATA-2 byl również znany pod nieoficjalną nazwą Fast-ATA lub Fast-ATA-2 (Seagate i Quantum) oraz EIDE (Enchanced IDE — Western Digital).

Choć prace nad standardem ATA-2 rozpoczęły się w 1993 r., oficjalnie został on opublikowany dopiero w 1996 r. jako ANSI X3.279-1996 AT Attachment Interface with Extensions. Standard oficjalnie wycofano w 2001 r.

ATA-3

Standard ten po raz pierwszy pojawił się w roku 1995 i był stosunkowo niewielkim rozszerzeniem standardu ATA-2. Zawierał on kilka zmian oraz wyjaśnień mających na celu uporządkowanie specyfikacji. Najwięk­szymi zmianami były:

Standard ten, oparty na ATA-2, pozwolił na zwiększenie niezawodności, szczególnie dla szybkiego trybu trans­misji PIO 4, choć standard ten nie definiował nowego, szybszego trybu transmisji. ATA-3 pozwalał na stoso­wanie prostego schematu bezpieczeństwa korzystającego z hasła, bardziej zaawansowanego systemu zarzą­dzania energią oraz technologii SMART Pozwala ona na wykrywanie problemów mogących spowodować awarię urządzenia. Technologia ta została opracowana w firmie IBM.

Prace nad standardem ATA-3 zaczęły się w 1995 r., a ukończono je w roku 1997, w którym oficjalnie opu­blikowano go jako ANSI X3.298-1997 AT Attachment 3 Interface. Standard oficjalnie wycofano w 2002 r.

Standard

Możliwości

ATA-1

Maksymalna pojemność dysku 136,9 GB; brak obsługi BIOS-u

ATA-2

Szybsze tryby PIO; translacja BIOS CHS/LBA zdefiniowana do 8,4 GB; PC-Card

ATA-3

SMART; ulepszona integralność sygnału; obowiązkowa obsługa LBA; usunięte tryby DMA na jednym słowie

ATA-4

Tryby Ultra-DMA; ATAPI Packet Interface; obsługa BIOS-u do 136,9 GB

ATA-5

Szybsze tryby UDMA; 80-pinowe kable z autodetekcją

ATA-6

Tryb UDMA 100 MB/s; pojemność dysku i obsługa BIOS-u do 144 PB

ATA-7

Tryb UDMA 133 MB/s; Serial ATA

SATA-8

Serial ATA II

ATA/ATAPI-4

Standard ATA-4 po raz pierwszy pojawił się w roku 1996 i zawierał kilka ważnych ulepszeń standardu ATA. Zawiera on polecenie Packet Command, które pozwala na skorzystanie z funkcji o nazwie AT Attachment Packet Interface (ATAPI). Funkcja ta pozwala na przyłączenie urządzeń takich jak: napędy CD-ROM i CD-RW, napędy dyskietek LS-120 SuperDisk, napędy Zip, napędy taśm i inne tego typu urządzenia. Do czasu opubli­kowania ATA-4, ATAPI było osobno publikowanym standardem. W standardzie ATA-4 dodano również tryb przesyłu z prędkością 33 MB/s, znany pod nazwą Ultra-DMA lub Ultra-ATA. Standard ATA-4 jest zgodny z ATA-3 i wcześniejszymi definicjami ATAPI.

Prace nad standardem ATA-4 zaczęły się w 1996 r., a ukończono je w roku 1998, w którym oficjalnie opu­blikowano go jako ANSINCITS 317-1998 ATAttachment-4 with Packet Interface Extension.

Głównymi rozszerzeniami ATA-4 były:

Wydajność i poziom obsługi standardu ATA w komputerach w większości zależny jest od układów płyty głównej. Większość z nich wykorzystuje komponent płyty głównej nazywany mostkiem południowym (ang. South Bridge) lub koncentratorem kontrolera wejścia-wyjścia (ang. I/O Controller Hub), który, oprócz innych funkcji, zawiera również interfejs ATA. Specyfikacja płyty głównej lub układów płyty głównej określa ob­sługiwane tryby: ATA/33, ATA/66, ATA/100 lub ATA/133. Innym sposobem na sprawdzenie dostępnych trybów jest uruchomienie trybu BIOS Setup i na ekranie ręcznego ustawiania parametrów dysku odczytanie dostępnych trybów Ultra-DMA. Większość płyt głównych z roku 1998 obsługuje ATA/33; w 2000 roku do­stępny był tryb ATA/66, a już na końcu 2000 większość płyt zapewniała obsługę ATA/100. Obsługa ATA/133 stała się powszechna w połowie 2002 r.

► ► Zajrzyj do punktu „Chipsety'' znajdującego się na stronie 292.

Do standardu ATA-4 została dołączona specyfikacja ATAPI. Dzięki temu stał się on interfejsem dla różnych ty­pów urządzeń. Do standardu ATA-4 dodano również nowe tryby Ultra-DMA (nazywane również Ultra-ATA) zapewniające wyższe prędkości przesyłu danych. Tryb o najwyższej przepustowości, nazwany UDMA/33. zapewniał transfer 33 MB/s — dwukrotnie więcej niż najszybszy tryb PIO lub najszybszy poprzednio obsłu­giwany tryb DMA. Oprócz wysokiej prędkości przesyłu osiągnięto dalsze zwiększenie wydajności systemu, ponieważ tryb UDMA powoduje mniejsze obciążenie procesora.

Dla potrzeb transferu w trybie UDMA/33 zaprojektowano opcjonalny 80-żyłowy kabel (wraz z funkcją cable select). Choć w oryginale kabel ten był elementem opcjonalnym, później okazało się, że jest on niezbędny dla szybszych trybów przesyłu: ATA/66, ATA/100 i ATA/133, wprowadzonych w specyfikacji ATA-5 i póź­niejszych. Wiele dysków twardych zakupionych w sklepie jest wyposażonych w 80-żyłowy kabel, natomiast innego typu urządzenia, takie jak napędy optyczne, dysponują jedynie kablem 40-żyłowym.

Za pomocą opcjonalnego polecenia SET MAX ADDRESS wprowadzono obsługę zarezerwowanego obszaru dysku, nazywanego przestrzenią HPA. Dzięki temu poleceniu część dysku przeznaczana jest na potrzeby opro­gramowania odzyskującego dane.

Dodano również obsługę poleceń kolejkowania, podobnych do zastosowanych w interfejsie SCSI-2. Pozwala to na lepszą obsługę wielozadaniowości w sytuacjach, gdy liczne programy wymagają komunikacji z dys­kiem ATA.

► ► Zajrzyj do punktu „SCSI kontra ATA" znajdującego się na stronie 657.

Kolejnym standardem zatwierdzonym w 1998 r. przez organizację Technical Committee T13 był ANSI NCITS 316-1998 1394 to ATAttachment — Tailgate. Jest to standard protokołu mostka łączącego magistralę IEEE 1394 (i.Link/FireWire) z interfejsem ATA. Protokół umożliwia przystosowanie napędów ATA do in­terfejsu FireWire. Tailgate jest adapterem (niewielka płytka obwodów drukowanych) zamieniającym interfejs IEEE 1394 (i.Link/FireWire) na interfejs ATA, dzięki czemu możliwe jest przede wszystkim podłączenie na­pędów ATA do magistrali FireWire. Rozwiązanie to umożliwiło producentom, takim jak Maxtor, Western Digital i inne firmy, w krótkim czasie stworzyć zewnętrzne napędy IEEE 1394 (FireWire) przeznaczone do archiwizacji i przechowywania danych na nośnikach wymiennych o dużej pojemności. Wewnątrz prawie każdego zewnętrznego napędu FireWire znajduje się urządzenie Tailgate i standardowy dysk ATA.

► ^ Zajrzyj do punktu „IEEE 1394" znajdującego się na stronie 1053.

ATA/ATAPI-5

Standard ATA-5 po raz pierwszy pojawił się w 1998 r. i oparty był na poprzednim standardzie interfejsu ATA-4. ATA-5 uwzględnia tryb Ultra-ATA/66 (inaczej Ultra-DMA lub UDMA/66), podwajający szybkość przesyłania danych, co jest osiągane przez zmniejszenie czasu przygotowania i zwiększenie częstotliwości zegara. Wyższa częstotliwość zwiększa zakłócenia wywołujące problemy ze zwykłym 40-żyłowym kablem stosowanym w przypadku interfejsów ATA i Ultra-ATA. W celu wyeliminowania szumów i zakłóceń obecnie w przypadku dysków zgodnych z trybem UDMA/66 lub jego szybszymi wersjami wymagane jest stosowanie nowszych 80-żytowych kabli ze złączem 40-pinowym. Po raz pierwszy kabel został zaprezentowany przy okazji standardu ATA-4. Obecnie użycie kabla jest wymagane w przypadku interfejsu ATA-5, obsługującego tryb Ultra-ATA/66. Kabel posiada 40 dodatkowych żył uziemienia, z których każda umieszczona jest pomiędzy pierwotnymi 40 żyłami uziemienia i danych. Pomaga to w odizolowaniu sygnałów od zakłóceń. Warto zauważyć, że za pomocą kabla można podłączyć starsze urządzenia niezgodne z Ultra-ATA, ponieważ nadal posiada on identyczne złącza 40-pinowe.

Prace nad standardem ATA-5 zaczęły się w 1998 r.. a ukończono je w roku 2000, w którym oficjalnie opu­blikowano go jako ANSI NCITS 340-2000 AT Attachment-5 with Packet Interface.

Głównymi zmianami w stosunku do poprzedniego standardu są:

Nowy, 40-pinowy i 80-żyłowy kabel obsługuje również funkcję cable select, a kolory złączy oznaczają ich funkcję. Niebieskie złącze powinno być włączone do gniazda interfejsu ATA (zwykle na płycie głównej). Złącze czarne (na drugim końcu kabla)jest przeznaczone dla urządzeń master i wpina sieje do podstawowego urządzenia. Złącze szare (pomiędzy powyżej wymienionymi) służy do podłączenia urządzenia slave.

Aby skorzystać z trybu UDMA/66 niezbędne jest posiadanie odpowiedniego interfejsu ATA, napędu, BIOS-u i kabla. Również system operacyjny musi obsługiwać transfer DMA. Windows 95 OSR2 i późniejsze, Win­dows 98/ME i Windows 2000/XP obsługują przesył DMA, ale starsze wersje Windows 95 i NT (bez Service Pack 3) dla pełnego wykorzystania szybszych trybów przesyłu wymagają zastosowania dodatkowych lub po­prawionych sterowników. W celu uzyskania najnowszych sterowników należy skontaktować się z producentem płyty głównej lub komputera.

W celu poprawienia niezawodności w trybie Ultra-DMA zastosowano mechanizm wykrywania błędów zwa­ny cyklicznym kodem nadmiarowym (CRC). CRC jest algorytmem obliczającym sumę kontrolną wykorzy­stywaną do wykrywania błędów w przesyłanym strumieniu danych. Suma kontrolna dla każdego przesyłu Ultra-DMA jest wyliczana zarówno w kontrolerze, jak i dysku. Po przesłaniu danych obie sumy kontrolne są porównywane i w przypadku wykrycia różnic kontroler może wybrać wolniejszy tryb przesyłu i powtórzyć żądanie przesłania danych.

ATA/ATAPI-6

Rozpoczęcie prac nad standardem ATA-6 nastąpiło w roku 2000. Standard zawiera tryb Ultra-ATA/100 (nazywany również Ultra-DMA lub UDMA/100), w którym osiągnięto większą szybkość przesyłu dzięki skróceniu czasów ustalania sygnału i zwiększeniu częstotliwości zegara. Podobnie jak w przypadku ATA-5. szybszy tryb przesyłu wymaga zastosowania kabla 80-żyłowego. Aby skorzystać z trybu ATA/100. należy mieć płytę główną i dysk obsługujący ten tryb.

Prace nad standardem ATA-6 zaczęły się w 2000 r., a ukończono je w roku 2002, w którym oficjalnie opu­blikowano go jako ANSI NCITS 361-2002 AT Attachment-6 with Packet Interface.

Głównymi zmianami i uzupełnieniami są:

Oprócz udostępnienia trybu UDMA 5, w standardzie ATA-6 znacznie powiększono rozmiar dysku. ATA-5 i wcześniejsze pozwalały na budowanie dysków o pojemności do 137 GB. Było to kłopotliwe ograniczenie, ponieważ dostępne były już dyski o większej pojemności. Dyski 3,5-calowe przekraczające 137 GB można było kupić już w roku 2001, ale na początku były oferowane jedynie w wersji SCSI, ponieważ interfejs SCSI nie posiada tych samych ograniczeń, co interfejs ATA. W standardzie ATA-6 limit adresowania został zwięk­szony z 228 do 248 sektorów. Oznacza to, że poprzednio adresowanie LBA korzystało z liczb 28-bitowych, a w przypadku ATA-6, jeżeli jest to konieczne, można korzystać z liczb 48-bitowych. W przypadku zastosowa­nia 512 bajtów na sektor podnosi to maksymalną pojemność dysku do 144,12 PB. Jest to ponad 144 kwadry-liony bajtów! Adresowanie 48-bitowe jest opcjonalne i niezbędne jedynie w przypadku dysków o pojemności większej nić 137 GB. W przypadku mniejszych dysków można stosować zarówno adresowanie 28-bitowe, jak i 48-bitowe.

ATA/ATAPI-7

Prace nad standardem ATA-7 rozpoczęły się pod koniec roku 2001 i trwają nadal. Podobnie jak wszystkie in­ne standardy, ATA-7 powstał w oparciu o poprzedni standard, do którego wprowadzono kilka ulepszeń.

Podstawowym ulepszeniem w ATA-7 jest kolejny tryb przesyłu noszący nazwę UDMA 6, który pozwala na osiągnięcie przepustowości 133 MB/s. Podobnie jak w przypadku UDMA 5 (100 MB/s) i UDMA 4 (66 MB/s), niezbędne jest zastosowanie 80-żyłowego kabla transmisyjnego. Wolniejsze tryby nie wymagają zastosowa­nia tego kabla, ale jego stosowanie zawsze jest zalecane.

Kolejną znaczącą zmianą wprowadzoną w standardzie ATA-7 było uwzględnienie w nim specyfikacji Serial ATA 1.0. Dzięki temu standard SATA stanowi oficjalną część standardu ATA. Prace nad standardem ATA-7 zaczęto w 2001 r., a ukończono je w roku 2004, w którym oficjalnie go opublikowano.

Należy zauważyć, że choć dzięki trybom UDMA zwiększyła się przepustowość pomiędzy kontrolerem napędu (na dysku) a płytą główną, w przypadku większości dysków ATA — nawet tych, które obsługują tryb UDMA 6 (133 MB/s) pomiędzy dyskiem a płytą główną— nadal maksymalny ciągły transfer odczytywanych danych utrzymuje się poniżej 60 MB/s. Oznacza to, że chociaż najnowsze dyski ATA potrafią transmitować dane po­między elektroniką dysku a płytą główną z prędkością 133 MB/s, dane z talerzy dysku do jego elektroniki są przesyłane o ponad połowę wolniej. Z tego powodu przyłączenie dysku UDMA 6 (133 MB/s) do płyty głów­nej, która obsługuje jedynie tryb UDMA 5 (100 MB/s), nie spowoduje zbytniego spowolnienia systemu. Po­dobnie wymiana adaptera ATA 100 MB/s na taki, który obsługuje 133 MB/s, nie zwiększy szybkości działa­nia systemu, ponieważ zastosowany dysk potrafi odczytywać dane ze swoich talerzy z prędkością o połowę mniejszą. Należy pamiętać, że ważniejsza od szybkości przesyłu przez interfejs jest szybkość odczytu danych z nośnika, ponieważ właśnie ona ogranicza maksymalną wydajność systemu.

Standard ATA-7 jest ostatnią wersją wiekowego równoległego standardu ATA. Standard ATA rozwija się pod postacią standardu Serial ATA, który uwzględniono w specyfikacji ATA-7 i szczegółowo omówiono w dalszej części rozdziału.

SATA/ATAPI-8

W 2004 r. rozpoczęły się prace nad standardem SATA-8, będącym nową wersją standardu ATA, opartą na poprzedniku — ATA-7. W nowym standardzie zostanie dodatkowo udoskonalony interfejs Serial ATA, usu­nięty natomiast zostanie całkowicie równoległy interfejs ATA.

Główne zmiany dokonane w standardzie SATA-8 to:

Najbardziej radykalną zmianą jest wyeliminowanie ze standardu SATA-8 równoległego interfejsu ATA. Celem tego nie jest jednak wycofanie z użycia tego typu interfejsu. Przy pracach nad standardem SATA-8 dąży się do udostępnienia w zgodnych z nim dyskach SATA nowych możliwości i funkcji, a jednocześnie także do umożliwienia dalszej produkcji dysków z interfejsem równoległym ATA, zgodnych ze standardem ATA-7. Innymi słowy, dyski z interfejsem równoległym nadal będą zgodne ze standardem ATA-7 i jego poprzedni­kami, natomiast dyski SATA — ze standardem ATA-7 i jego następcami. Uproszczenie w ten sposób stan­dardu ATA pozwala wyeliminować przestarzałe funkcje równoległego interfejsu ATA. Dokonano tego z my­ślą o przyszłych standardach, w których będzie można uzyskać bardziej przejrzysty i zwięzły opis interfejsu Serial ATA. Można oczekiwać, że prace nad standardem SATA-8 zakończą się w 2006 r. i wtedy zostanie on opublikowany.

Interfejs równoległy ATA

W porównaniu z interfejsem Serial ATA równoległy interfejs ATA posiada unikalne specyfikacje i wymagania dotyczące fizycznego interfejsu, kabli i złącz. W kolejnych punktach szczegółowo zostaną omówione funkcje równoległego interfejsu ATA.

Złącze równoległe ATA

Złącze równoległego interfejsu ATA jest 40-pinowym złączem szufladowym z pinami rozmieszczonymi co 0,1 cala (2,54 mm) i najczęściej ma zabezpieczenie przed włożeniem go odwrotną stroną (patrz rysunki 7.2 i 7.3.). W celu utworzenia takiej blokady, producenci najczęściej usuwają pin 20 z gniazda męskiego i blo­kują pin 20 w żeńskim złączu kabla. Zabezpiecza to przez odwrotnym zainstalowaniem kabla danych. Nie­które kable posiadają również występ na górze złącza żeńskiego, który trafia w wycięcie obudowie współpra­cującego z nim złącza męskiego w urządzeniu. Zalecane jest stosowanie blokowanych złączy i kabli. Odwrotne włączenie kabla ATA nie powoduje zwykle żadnych uszkodzeń, ale może sprawić, że systemu nie da się uruchomić.


0x08 graphic
Rysunek 7.2.

Typowe złącza dysku twardego ATA (IDE)

Rysunek 7.3.

Szczegóły budowy 40-pinowego złącza interfejsu A TA (IDE)


W tabeli 7.3 pokazane zostały funkcje poszczególnych pinów złącza równoległe interfejsu ATA (IDE).


Tabela 7.3. 40-pinowe złącze równoległe ATA

Nazwa sygnału

Pin

Pin

Nazwa sygnału

-RESET 1

2

GROUND

7 bit danych

3

4

8 bit danych

6 bit danych

5

6

9 bit danych

5 bit danych

7

8 10 bit danych

4 bit danych

9

10

11 bit danych

3 bit danych

11

12

12 bit danych

2 bit danych

13

14

13 bit danych

1 bit danych

15

16

14 bit danych

0 bit danych

17

18 15 bit danych

GROUND

19

20

Blokada (brakujący pin)

DRQ 3

21

22

GROUND

-IOW

23

24

GROUND

-IOR

25

26

GROUND

l/O CH RDY

27

28

CSELiSPSYNC1

-DACK

29

30

GROUND

IRQ 14

31

32

Zarezerwowane2

1 bit adresu

33

34

-PDIAG

0 bit adresu

35

36

2 bit adresu

-CS1FX

37

38

-CS3FX

-DA/SP

39

40

GROUND

+5V (elektronika)

41

42

+5V (silnik)

GROUND

43

44

Zarezerwowane

Pin 28 jest zwykle używany przez funkcję cable select, ale niektóre starsze dyski wykorzystują go do synchronizacji obrotów pomiędzy dyskami.

2Pin 32 był w standardzie A TA-2 zdefiniowany jako -IOCSl 6. ale nie jest już używany.

Znak „ - " poprzedzający nazwę sygnału (na przykład -RESET) wskazuje, że sygnał jest aktywny w stanie niskim.

Napędy 2,5 cala, stosowane w laptopach i notebookach, korzystają zwykle z mniejszego zintegrowanego gniazda 50-pinowego, którego piny są od siebie oddalone jedynie o 2 mm (0,079 cala). Główna 40-pinowa część złącza jest identyczna jak standardowe złącze ATA (poza rozstawem pinów), ale dodane są do tego złą­cza piny zasilające i służące do montowania zworek. Normalnie podłączany kabel ma 44 przewody i oprócz standardowych sygnałów ATA służy również do zasilania dysku. Na piny oznaczone na rysunku literami A-D zwykle nałożona jest zworka, której położenie określa ustawienia master, slave i cable select). Na rysunku 7.4 pokazane zostało zintegrowane 50-pinowe złącze używane do podłączania dysków 2,5 cala stosowanych w laptopach i notebookach.


0x08 graphic
Rysunek 7.4.

Budowa 50-pinowego zintegrowanego złącza równoległego interfejsu ATA (wykorzystywanego w 2,5-calowych napędach dysków A TA dla notebooków i laptopów, używających 44-pinowego kabla)


Należy zwrócić uwagę na zworkę na pinach A-D oraz usunięte piny E i F. Zworka umieszczona na pinach B i D najczęściej ustawia dysk w tryb cable select. W przypadku tego złącza pin 41 dostarcza napięcia +5V wykorzystywanego do zasilania układów elektronicznych dysku, a pin 42 dostarcza napięcia +5V wykorzy­stywanego do zasilania silnika (w dyskach 2,5 cala stosowane są silniki 5 V w przeciwieństwie do większych napędów, gdzie stosuje się zwykle silniki 12 V), natomiast na pinie 43 doprowadzona jest masa. Ostatni pin (44) jest zarezerwowany i nie jest wykorzystywany.

W tabeli 7.4 przedstawiono budowę 50-pinowego zintegrowanego złącza równoległego interfejsu ATA wy­korzystywanego w większości 2,5-calowych napędów dysków ATA (dla notebooków i laptopów).

Tabela 7.4. 50-pinowe zintegrowane złącze równoległego interfejsu ATA 2,5 cala (napędy dla notebooków i laptopów)

Nazwa sygnału

Pin

Pin

Nazwa sygnału

Zworka

A

Zworka

Zworka

C

D

Zworka

Blokada (brakujący pin)

E

F

Blokada (brakujący pin)

-RESET

1

2

GROUND

7 bit danych

3

4

8 bit danych

6 bit danych

5

6

9 bit danych

5 bit danych

7

8 10 bit danych

4 bit danych

9

10

11 bit danych

3 bit danych

11

12

12 bit danych

2 bit danych

13

14

13 bit danych

1 bit danych

15

16

14 bit danych

0 bit danych

17

18 15 bit danych

GROUND

19

20

Blokada (brakujący pin)

DRQ 3

21

22

GROUND

-IOW

23

24

GROUND

-IOR

25

26

GROUND

I/O CH RDY

27

28

CSEL

-DACK

29

30

GROUND

1RQ 14

31

32

Zarezerwowane

1 bit adresu

33

34

-PDIAG

0 bit adresu

35

36

2 bit adresu

-CS1FX

37

38

-CS3FX

-DA/SP

39

40

GROUND

+5V (elektronika)

41

42

+5V (silnik)

GROUND

43

44

Zarezerwowane

Kabel danych równoległego interfejsu ATA

Do przesyłania sygnałów pomiędzy układami adaptera magistrali i dyskiem (kontrolerem) stosowany jest 40-żyłowy kabel w postaci taśmy. W celu maksymalnego zwiększenia integralności sygnału i wyeliminowania potencjalnych problemów z zakłóceniami i opóźnieniami, kabel ten nie może być dłuższy niż 18 cali (46 cm). Testy pokazują, że z powodzeniem można korzystać z 80-żyłowego kabla o maksymalnej długości 69 cm.

Nie wszystkie kable i złącza są blokowane

Wielu producentów tanich płyt głównych i kabli nie stosuje tego mechanizmu. Tańsze płyty główne nie posiada­ją również usuniętego 20. pinu ze złącza ATA i konsekwentnie wykorzystują kabel bez zablokowanego otworu dla 20. pinu. Jeżeli nie zostanie zastosowane obudowane gniazdo z wycięciem i odpowiadającym mu wystę­pem na złączu kabla, nie istnieje żadne blokowanie i możliwe jest odwrotne przyłączenie kabli. Na szczęście jedyną konsekwencją nieprawidłowego połączenia jest to, że urządzenie nie działa do chwili prawidłowego przy­łączenia kabla.

Warto zauważyć, że w przypadku niektórych komputerów na ekranie nie jest nic wyświetlane do momentu za­reagowania napędów ATA na uruchamiające je polecenie. Polecenie nie może jednak zostać do nich przeka­zane, gdy kabel zostanie podłączony odwrotnie. A zatem, jeśli po zainstalowaniu napędu ATA pozbawionego blokad w złączu i włączeniu komputera ma się wrażenie, że komputer się „zawiesił" (nic nie pojawia się na ekranie), należy sprawdzić kabel ATA (na rysunku 7.6 pokazano przykłady kabli ATA posiadających w złączach blokady i kabli ich pozbawionych).

W rzadkich sytuacjach, gdy dopasowujemy różne elementy, może się zdarzyć, że kabel ma zablokowany 20. pin (tak jak powinno być), natomiast na płycie głównej istnieje pin 20. W tym przypadku można wyłamać tenże pin z płyty głównej lub usunąć blokadę z kabla. Niektóre kable posiadają tę blokadę zainstalowaną na stałe, jako część obudowy złącza, i w takim przypadku trzeba wyłamać pin 20. z płyty głównej lub skorzystać z innego kabla.

Należy pamiętać o prostej zasadzie, że pin 1. powinien być umieszczony obok gniazda zasilającego urządzenie i zwykle jest on oznaczony prążkiem na kablu.

0x08 graphic
Należy pamiętać, że napędy ATA obsługujące tryby transmisji o dużej szybkości przesyłu, na przykład PIO 4 i wszystkie tryby Ultra-DMA (UDMA), w przypadku gdy kable są zbyt długie, są szczególnie narażone na za­kłócenia integralności sygnału. Jeżeli kabel jest zbyt długi, dane mogą zostać uszkodzone lub będą występowały inne dokuczliwe problemy. Będą się one objawiać błędami odczytu i zapisu na dysku. Dodatkowo, wszystkie dyski korzystające z trybu UDMA 5 (66 MB/s), UDMA 6 (100 MB/s) lub UDMA 7 (133 MB/s) muszą ko­rzystać ze specjalnego 80-żyłowego kabla o lepszej jakości (kable takie są dodatkowo uziemione w celu zmniejszenia szumów). Polecam również stosowanie takich kabli w przypadku dysków pracujących w trybie UDMA 2 (33 MB/s) lub wolniejszych, ponieważ w żadnym przypadku to nie zaszkodzi, a może jedynie po­móc. Zawsze mam zapasowy kabel 80-żyłowy wysokiej jakości i stosuję go do testowania poprawności pracy dysków w przypadku, gdy podejrzewam problemy związane z długością lub jakością kabla. Na rysunku 7.5 pokazany jest typowy układ kabla ATA i jego wymiary.


Rysunek 7.5.

Kabel

równoległego interfejsu ATA (IDE) z 40-pinowymi złączami i 40 lub 80-żyłowym kablem (w wersji 80-żyłowej dodatkowe przewody są uziemione)


W przypadku większości kabli 40-żyłowych nie jest stosowane kodowanie kolorami, natomiast w przypadku kabli 80-żyłowych takie kodowanie stosowane jest zawsze.

W chwili obecnej stosowane są dwa rodzaje kabli równoległego interfejsu ATA: 40-żyłowy i 80-żyłowy (ry­sunek 7.6). Oba korzystają ze złączy 40-pinowych — dodatkowe przewody w kablu 80-żyłowym są po prostu uziemieniem. Dzięki tym dodatkowym przewodom zmniejszają się zakłócenia i interferencje. Kabel taki jest


0x08 graphic
Rysunek 7.6.

40-żylowy

(po lewej)

i 80-żyłowy

(po prawej)

kabel równoległego

interfejsu A TA


wymagany, jeżeli interfejs ma pracować z prędkością 66 MB/s (ATA/66) lub większą. Dysk oraz host adapter są zaprojektowane w taki sposób, aby wyłączać tryby ATA/66, ATA/100 lub ATA/133 w przypadku, gdy nie zostanie wykryty 80-żyłowy kabel. Jeśli w takim przypadku napęd ATA/66 lub szybszy zostanie podłączony do 40-żyłowego kabla, podczas uruchamiania komputera może pojawić się komunikat ostrzegawczy. Kabel ten może być również stosowany w przypadku wolniejszych trybów; nie jest to wymagane, ale polepsza się wtedy jakość sygnału. Dlatego zaleca się stosowanie kabli 80-żyłowych do podłączania wszystkich rodzajów dysków.

Kiedyś student zapytał mnie, jak odróżnić kabel 80-żyłowy od 40-żyłowego. Pomyślałem przez chwilę: „Czy to pytanie nie jest podchwytliwe?"'. Może student ów nie wiedział, że każda żyła kabla taśmowego jest iden­tyfikowana przez wypukłość kabla. Prostą odpowiedzią jest policzenie żył znajdujących się w kablu. Jeśli będzie ich 40, musi to być kabel 40-żyłowy. Jeśli natomiast okaże się, że żył jest 80, odpowiedzi można się samemu domyślić. Jeśli oba typy kabli położy się obok siebie, różnica między nimi stanie się oczywista. W porównaniu z wersją 40-żyłową kabel 80-żyłowy ma oczywiście większą liczbę wypukłości.

Należy zwrócić uwagę na blokady na złączach 80-żyłowego kabla, które mają za zadanie zapobiec jego odwrot­nemu podpięciu. Warto też zauważyć, że kiepskiej jakości 40-żyłowy kabel pokazany na powyższym rysunku jest pozbawiony blokad. Większość dobrze wykonanych kabli 40-żyłowych posiada takie blokady, jednak — ze względu na to, że ich używanie nie jest konieczne — wiele tanich kabli nie jest w nie wyposażonych. W przypadku kabli 80-żyłowych jest inaczej — tu stosowanie blokad jest nakazane w standardzie.

Kable dłuższe i „zaokrąglone"

Oficjalny standard równoległego interfejsu ATA ogranicza długość kabli do 46 cm. Jednak sprzedawanych jest wiele kabli o długości osiągającej 91 cm, a nawet więcej. Wielu Czytelników zadało mi pytanie: „Dlaczego sprzedawane są kable dłuższe niż 46 cm, jeśli standard na to nie zezwala?". Jeżeli coś znalazło się w sprzedaży, nie oznacza to, że zgodne jest ze standardem i poprawnie działa! Cały czas spotykam się z produktami nie­prawidłowo zaprojektowanymi, kiepskiej jakości i niezgodnymi z normami. Nadal wiele osób korzysta ze zbyt długich kabli i pomimo to ich komputery świetnie działają, ale miałem też do czynienia z kilkoma przy­padkami, w których zbyt długie kable stały się przyczyną problemów. W związku z tym postanowiłem do­kładniej przyjrzeć się tej kwestii.

Stwierdziłem, że bez obaw można korzystać z 80-żyłowego kabla o długości przekraczającej standardową i wynoszącej maksymalnie 69 cm. Jednak w przypadku kabla 40-żyłowego długość zgodnie ze standardem powinna wynosić 46 cm.

Tak naprawdę podjęto próbę dokonania zmian w standardzie równoległego interfejsu ATA, umożliwiających zastosowanie kabli o długości 69 cm. W dokumencie e00151r0.pdf dostępnym pod adresem http://www.tl3.org/ technical, można przeczytać o nieznacznych różnicach w integralności sygnałów trybu Ultra DMA 5 wystę­pujących pomiędzy 80-żyłowym kablem o długości 69 cm i 46 cm. Choć propozycja wprowadzenie kabla o zwiększonej długości pojawiła się już w październiku 2000 r„ nigdy nie została uwzględniona w standardzie. Nawet pomimo braku oficjalnej aprobaty informację zawartą w powyższym dokumencie traktuje się niczym empiryczny dowód możliwości bezproblemowego stosowania 80-żyłowego kabla o maksymalnej długości 69 cm.

Do powyższych informacji dodam kolejne zalecenie, odradzające w większości przypadków stosowanie „za­okrąglonych" kabli ATA. Użycie tego typu kabli nie zostało zaaprobowane w standardzie ATA. Co więcej, są dowody na to, że mogą one być przyczyną występowania przesłuchu i szumów. W przypadku 80-żyłowego kabla każda żyła danych kabla taśmowego przeplatana jest żyłą uziemienia. ..Zaokrąglanie" kabla powoduje tym­czasem, że część żył danych w losowy sposób do siebie przylega. W efekcie pojawia się przesłuch i szumy, powodujące występowanie błędów w sygnale.

Szukając informacji na ten temat, zapoznałem się z wywiadem udzielonym w marcu 2004 r. przez Rahula Sooda dla czasopisma CPU (http://www.computerpoweruser.com). Sood jest szefem działu technologicznego popularnego producenta zaawansowanych systemów, Voodoo PC (http://www.voodoopc.com). W wywiadzie Sood powiedział: „Nie popieram stosowania »zaokrąglonych« kabli. Kable SATA są oczywiście znakomite, natomiast kable »zaokrąglone« to już inna historia, ponieważ są potencjalnym źródłem szumów. Wszystkie testy wykonane przy użyciu tego typu kabli pokazały, że z czasem generują one błędy lub są wolniejsze od dobrej jakości płaskich kabli IDE".

Oczywiście wiele osób z powodzeniem korzysta z kabli „zaokrąglonych", ale moja wiedza na temat elektro­niki, a także standardu ATA, zawsze sprawiała, że używając ich, czułem się nieswojo. Choć nie dysponuję żadnymi wynikami testów przeprowadzonych przez Sooda, które potwierdzają jego wnioski, w przypadku własnych komputerów wolę pozostać przy 80-żyłowych kablach taśmowych o długości 69 cm lub mniejszej.

Sygnały równoległego interfejsu ATA

Opiszemy teraz najważniejsze sygnały interfejsu ATA, które mają wpływ na instalację i konfigurację dysku. Informacje te pomogą zrozumieć sposób działania funkcji cable select.

Pin 20. jest wykorzystywany jako klucz ustalający orientację kabla i nie jest on podłączony do interfejsu. Po­winien być on usunięty ze złączy ATA, natomiast od strony kabla nie powinno być otworu na ten pin, dzięki czemu nie można będzie odwrotnie włożyć kabla w złącze.

Przez pin 39. przesyłany jest sygnał aktywności dysku i wykrycia dysku slave (DASP); jest to sygnał o po­dwójnym znaczeniu, multipleksowany w czasie. W czasie inicjalizacji po uruchomieniu sygnał ten wskazuje, czy do interfejsu podłączony jest dysk slave. Po fazie inicjalizacji każdy z dysków wykorzystuje ten sygnał do wskazania, że trwa transmisja danych z dysku. Pierwsze dyski mogły nie posiadać funkcji multipleksowa-nia tego sygnału i wymagały zainstalowania specjalnej zworki wskazującej na pracę z drugim dyskiem. Stan­daryzacja tej funkcji zapewniającej prawidłową pracę systemu z dwoma dyskami jest jednym z elementów standardu ATA. Jest to powód, dla którego niektóre dyski posiadają zworkę slave present (SP) oznaczającą pracę z dyskiem slave, natomiast niektóre jej nie mają.

Pin 28. udostępnia sygnał cable select (CSEL). W niektórych starszych dyskach może być to również sygnał synchronizacji obrotów (SPSYNC), ale nie występuje on zwykle w nowych dyskach. Sygnał CSEL jest prze­znaczony do kontroli wyboru dysku master (dysk 0) i slave (dysk 1) bez konieczności ustawiania zworek na dysku. Jeżeli dysk wykryje na linii CSEL logiczne 0, ustawiany jest jako master, a jeżeli logiczną jedynkę, pracuje jako slave.

Można zainstalować specjalne okablowanie do selektywnego uziemiania sygnału CSEL. Najczęściej jest to realizowanie poprzez kabel typu Y, gdzie złącze magistrali znajduje się pośrodku, natomiast dyski na obu od­gałęzieniach. Jedno z odgałęzień Y posiada uziemioną linię CSEL, co wskazuje, że dysk pracuje jako master, natomiast drugie odgałęzienie ma niepodłączoną linię CSEL (przerwany lub usunięty kabel), co sprawia, że dysk pracuje jako slave.

Konfiguracja z dwoma dyskami ATA

Instalacja dwóch dysków ATA może sprawiać kłopoty, ponieważ każdy z dysków posiada własny kontroler i oba te kontrolery muszą poprawnie pracować mimo to, że są podłączone do tej samej magistrali. Nie można zapewnić, że na polecenie odpowie tylko jeden z kontrolerów.

Standard ATA posiada opcje pracy dwóch dysków połączonych w łańcuch. Dysk podstawowy (dysk 0) nosi nazwę master, natomiast dysk dodatkowy (dysk 1) nazywany jest slave. Można ustawić funkcję dysków master i slave przez ustawienie zworek na dysku lub przez wykorzystanie linii CS w interfejsie oraz ustawiając na dysku zworkę CS.

Gdy zainstalowany jest tylko jeden dysk, jego kontroler odpowiada na wszystkie polecenia z systemu. W przy­padku zastosowania dwóch dysków (i jednocześnie dwóch kontrolerów) oba kontrolery odbierają polecenia z systemu. Każdy kontroler musi być tak skonfigurowany, aby reagował jedynie na polecenia kierowane do niego. W takiej sytuacji jeden z kontrolerów jest ustawiany jako master, natomiast drugi jako slave. Gdy system wysyła polecenie do określonego dysku, kontroler na drugim dysku musi poczekać do czasu zakończe­nia pracy przez wybrany dysk i kontroler. Ustawienie zworki master lub slave uaktywnia rozróżnianie kon­trolerów przy wykorzystaniu specjalnego bitu (bitu DRV) w rejestrze Drive/Head bloku polecenia.

Konfigurowanie dysków ATA może być tak samo proste jak w przypadku instalacji z jednym dyskiem lub kłopotliwe — szczególnie gdy do jednego kabla trzeba przyłączyć dwa stare dyski różnych producentów.

Większość dysków ATA można skonfigurować do pracy w jednym z czterech trybów:

Wiele z dysków posiada uproszczoną konfigurację składającą się z trzech ustawień: master, slave i cable se­lect. Ponieważ każdy z dysków ATA posiada własny kontroler, należy określić, który z nich będzie pracował jako master, a który jako s!ave. Nie ma żadnej funkcjonalnej różnicy pomiędzy tymi dyskami poza tym, że dysk slave uaktywnia po uruchomieniu systemu sygnał DASP, informujący dysk master o jego obecności. Po wykryciu tego sygnału dysk master monitoruje linię aktywności dysku, która w przypadku niewykrycia dys­ku slave jest ignorowana. Ustawienie dysku jako slave często powoduje, że opóźnia on na kilka sekund roz­poczęcie procesu rozpędzania talerzy, zmniejszając w ten sposób obciążenie zasilacza komputera.

Do czasu opublikowania specyfikacji ATA nie wykorzystywano zbyt często konfiguracji z dwoma dyskami. Niektórzy producenci używali różnych metod synchronizacji dysków master i slave w różnych modelach swoich urządzeń. Z powodu tych niezgodności niektóre z dysków mogą działać ze sobą jedynie w określonej kolejności master-slave. Problem ten dotyczy wyłącznie urządzeń wyprodukowanych przed opublikowaniem specyfikacji ATA.

Większość dysków, które w pełni implementują specyfikację ATA, wymaga w czasie konfiguracji ustawienia tylko jednej zworki (master-slave). W niewielu niezbędna jest również zworka oznaczająca podłączenie dys­ku slave. W tabeli 7.5 pokazane są ustawienia zworek wymaganych przez większość dysków ATA.

Tabela 7.5. Ustawienia zworek dla większości dysków zgodnych ze standardem ATA w przypadku zastosowania zwykłego kabla (bez funkcji cable select

Nazwa zworki

Jeden dysk

Dwa dyski — master

Dwa dyski — slave

Master (M/S)

Wł.

Wł.

Wyl.

Slave Present (SP)

Wył.

Wł.

Wyl.

Cable Select (CS)

Wył.

Wył.

Wyl.


Jeżeli zastosowany jest kabel z funkcją cable select, zworka CS powinna być włączona, a pozosta­łe wyłączone. Funkcje dysków są wtedy określane przez poszczególne złącza kabla.


Na rysunku 7.7 pokazane są zworki typowego dysku ATA.

Zworka master określa, czy dysk pracuje jako master czy jako slave. Niektóre dyski wymagają zastosowania zworki Slave Present w przypadku pracy w konfiguracji dwudyskowej. Zworka ta informuje urządzenie, że podłączony jest s/ave. W przypadku wielu dysków ATA zworka master jest opcjonalna i może być usunięta. Zainstalowanie w takich przypadkach zworki pomaga jednak wyeliminować pomyłki; zalecam instalowanie zworek w sposób pokazany na rysunku.

0x08 graphic



Niektóre dyski mają zworki umieszczone na płycie z elektroniką i mogą nie być one widoczne od tyłu.

Aby wyeliminować pomyłki przy ustawianiu trybu pracy dysków, większość nowych systemów wykorzy­stuje funkcję cable select. Aby skorzystać z tej funkcji, należy zastosować specjalny kabel ATA, który posia­da wszystkie przewody oprócz 28. biegnącego od płyty głównej do obu dysków. Pin 28. jest wykorzystywany przez funkcję cable select i jest on podłączony do jednego złącza (nazwanego master), a nie jest on podłączo­ny do drugiego (nazwanego slave). Oba dyski muszą być odpowiednio skonfigurowane przez zastosowanie zworki CS na obu dyskach.

W przypadku zastosowania funkcji cable select, dysk, który otrzyma sygnał na pin 28. automatycznie jest konfigurowany jako master, natomiast drugi jako slave. W większości kabli funkcja ta jest realizowana przez usunięcie metalowej złączki otworu pinu 28. (co jest trudne do zauważenia) lub widoczne przecięcie kabla pinu 28. gdzieś na długości tasiemki. Ponieważ są to niewielkie modyfikacje kabla i mogą zostać one nieza­uważone, kable z funkcją cable select zwykle posiadają na wtyczkach napisy master, slave i system. Wszystkie 80-żyłowe kable UltraATA pozwalają na zastosowanie funkcji cable select.

W przypadku zastosowania funkcji cable select wystarczy umieścić zworkę CS na wszystkich dyskach, a na­stępnie włożyć do dysku, który ma być dyskiem master wtyczkę opisaną master, a do dysku mającego być dyskiem slave wtyczkę opisanąslave.

Jedyną wadą, jaką można zauważyć, jest ograniczenie swobody rozmieszczania kabli w obudowie lub wyboru miejsca, gdzie montowane są dyski, ponieważ muszą być one podłączone do określonych złączy kabla.

Tryby przesyłu danych PIO równoległego interfejsu ATA

Standardy ATA-2 i ATA-3 definiowały pierwsze tryby dużej przepustowości przesyłające dane do i z dysku za pośrednictwem równoległego interfejsu ATA. Te szybsze tryby transmisji były częścią nowej specyfikacji i przyczyniły się do opublikowania nowych wersji standardu. Omówimy teraz kolejno te tryby transmisji.

Tryby PIO (programowalne wejście-wyjście) określają szybkość transmisji danych z dysku i do niego korzy­stając z PIO. W najwolniejszym trybie PIO — PIO 0 — cykl transmisji danych nie może przekraczać 600 na-nosekund (ns). W jednym cyklu przesyłane jest 16 bitów, co daje teoretyczną prędkość trybu transmisji PIO 0 (czas cyklu 600 ns) 3,3 MB/s, natomiast w trybie PIO 4 (czas cyklu 120 ns) osiąga 16,6 MB/s.

W tabeli 7.6 zestawione są tryby PIO wraz z ich wydajnością.

Tabela 7.6. Tryby PIO i ich wydajności

Tryb PIO

Szerokość magistrali (bity)

Czas cyklu (ns)

Częstotliwość magistrali (MHz)

Cykle na takt zegara

Przepustowość (MB/s)

Specyfikacja ATA

0

16

600

1,67

1

3,33

ATA-1

1

16

383

2.61

1

5,22

ATA-1

2

16

240

4,17

1

8,33

ATA-1

3

16

180

5,56

1

11,11

ATA-2

4

16

120

8,33

16,67

ATA-2

ATA-2 nazywany jest również El DE (Enhanced IDE) lub Fast-AT A.

ns = nanosekundy (miliardowa część sekundy). MB = milion bajtów.

Większość płyt głównych z ATA-2 i nowszych posiada dwa gniazda kanałów IDE. Większość układów płyt głównych w mostku południowym ma interfejs ATA, który to komponent w większości systemów jest przy­łączony do magistrali PCI.

Starsze płyty główne 486 i niektóre pierwsze Pentium posiadająjedynie podstawowy kanał przyłączony przez systemową magistralę PCI. Dodatkowy kanał przyłączony jest najczęściej do magistrali i przez to ograniczo­ny do pracy jedynie w trybie PIO 2.

Dysk odpowiadający na polecenie Identify Drive zwraca między innymi dane na temat obsługiwanych przez niego trybów PIO i DMA. Większość zaawansowanych BIOS-ów automatycznie ustawia prawidłowy tryb dopasowany do możliwości dysku. Jeżeli zostanie ustawiony tryb szybszy niż obsługiwany przez dysk. może się przytrafić utrata danych.

Interfejs ATA-2 i nowsze obsługują również blokowy tryb PIO, co oznacza, że wykorzystywane jest polece­nie Read/Write Multiple, które znacznie zmniejsza ilość przerwań wysyłanych do procesora komputera. Obniża to obciążenie systemu i powoduje zwiększenie szybkości transmisji.

Tryby DMA równoległego interfejsu ATA

Dyski ATA obsługują również transfer DMA (bezpośredni dostęp do pamięci). Oznacza to, że dane są prze­syłane bezpośrednio pomiędzy dyskiem a pamięcią bez potrzeby użycia procesora jako pośrednika, jak dzieje się to w trybie PIO. Odciąża to procesor od obsługi transmisji danych, co daje możliwość wykonywania w tym czasie innych zadań.

Istnieją dwa różne typu bezpośredniego dostępu do pamięci: z jednym słowem (8-bitowy) i z wieloma słowa­mi (16-bitowy). Tryb DMA z jednym słowem został usunięty w specyfikacji ATA-3, ponieważ jest przesta­rzały. Tryby DMA są czasami określane jako ATA busmaster, ponieważ korzystają z adaptera hosta obsłu­gującego tryb busmaster. Zwykły tryb DMA korzysta ze starego kontrolera DMA znajdującego się na płycie głównej, który wykonuje operacje arbitrażu, zawłaszczenia magistrali systemowej i transmisji danych. W przy­padku DMA z busmasteringiem wszystkie te operacje są realizowane przez układ o wysokiej wydajności znaj­dujący się w interfejsie adaptera hosta (który również znajduje się na płycie głównej).

Systemy korzystające z układów Intel PIIX (PCI IDE ISA eXcelerator) i układów mostka południowego (lub spełniających ich funkcje) posiadają funkcję busmasteringu ATA. Tryby busmaster ATA z jednym słowem i dwoma słowami wraz z osiąganymi prędkościami transmisji są zestawione w tabelach 7.7 i 7.8.

Tabela 7.7. Tryby transmisji DMA z jednym słowem i ich prędkości transmisji

8-bitowy tryb DMA

Szerokość magistrali (bity)

Czas cyklu (ns)

Częstotliwość magistrali (MHz)

Cykle na takt zegara

Przepustowość (MB/s)

Specyfikacja ATA

0

16

960

1,04

1 ! 2,08

ATA-1*

1 ! 16

480

2,08

1

4,17

ATA-1*

2| 16

240

4,17

1

8,33

ATA-1*

*Tryb DMA z jednym słowem (8-bitowy) został usunięty ze specyfikacji ATA-3 i późniejszych. Tabela 7.8. Tryby transmisji DMA z dwoma słowami i ich prędkości transmisji

16-bitowy tryb DMA

Szerokość magistrali (bity)

Czas cyklu Częstotliwość (ns) magistrali (MHz)

Cykle na takt zegara

Przepustowość (MB/s)

Specyfikacja ATA

0

16

480

2,08

1

4,17

ATA-1

1

16

150

6,67

1

13,33

ATA-2*

2

16

120

8,33

1

16.67

ATA-2*

* ATA-2 jest również nazywane EIDE (Enhanced IDE) łub Fast-ATA.

Należy zwrócić uwagę, że tryby DMA z podwójnym słowem są również przez niektórych producentów na­zywane trybami busmaster DMA. Niestety, nawet najszybszy tryb DMA — tryb 2 z podwójnym słowem — osiąga taką samą prędkość przesyłu, 16,67 MB/s, co PIO 4. Jednak, mimo że prędkość transferu jest taka sama jak w przypadku PIO, DMA w mniejszym stopniu obciąża procesor, dzięki czemu całkowita wydajność systemu może być większa. Pomimo to tryby DMA z wieloma słowami nie stały się zbyt popularne i zostały zastąpio­ne nowymi trybami, Ultra-DMA, obsługiwanymi w napędach zgodnych ze specyfikacją ATA-4 do ATA-7.

W tabeli 7.9 zestawione są tryby Ultra-DMA obsługiwane w specyfikacjach ATA-4 do ATA-7. Warto za­uważyć, że aby było możliwe użycie trybu Ultra-DMA, konieczne jest zainstalowanie sterowników odpo­wiednich dla kontrolera i posiadanej wersji systemu Windows.

Tabela 7.9. Obsługa Ultra-DMA w ATA-4 do ATA-7

16-bitowy tryb DMA

Szerokość magistrali (bity)

Czas cyklu (ns)

Częstotliwość magistrali (MHz)

Cykle na takt zegara

Przepustowość (MB/s)

Specyfikacja ATA

0

16

240

4,17

2

16,67

ATA-4

1

16

160

6,25

2

25,00

ATA-4

2

16

120

8,33

2

33,33

ATA-4

3

16

90

11,11

2

44,44

ATA-5

4

16

60

16,67

2

66,67

ATA-5

5

16

40

25,00

2

100,00

ATA-6

6

16

30

33,00

2

133,00

ATA-7

Tryb A TA-4 UDMA 2 jest czasami nazywany Ultra-A TA/33 lub A TA-33.

Tryb ATA-5 UDMA 4 jest czasami nazywany Ultra-ATA/66 lub ATA-66.

Tryb A TA-6 UDMA 5 jest czasami nazywany Ultra-A TA/100 lub A TA-100.

Tryb ATA-7 UDMA 6 jest czasami nazywany Ultra-ATA/133 lub ATA-133.

Interfejs Serial ATA

Wraz z wprowadzeniem standardu ATA-7 stało się jasne, że historia równoległego interfejsu ATA, który był wykorzystywany przez ponad 10 lat, dobiegła końca. Przesyłanie danych z prędkością większą od 133 MB/s przez równoległy kabel w formie taśmy jest narażone na różne problemy spowodowane opóźnieniami sy­gnału, interferencjami elektromagnetycznymi i innymi zakłóceniami integralności sygnału. Rozwiązaniem tych problemów stał się szeregowy interfejs ATA, który jest rewolucyjnym, zgodnym wstecz następcą rów­noległego interfejsu ATA. Standard Serial ATA jest zgodny na poziomie oprogramowania z interfejsem rów­noległym ATA, co oznacza, że w pełni emuluje wszystkie polecenia, rejestry i sterowanie. Dzięki temu ist­niejące oprogramowanie może być uruchamiane na nowym sprzęcie bez żadnych modyfikacji. Inaczej mówiąc, istniejący BIOS, system operacyjny i programy narzędziowe działające z równoległym interfejsem ATA działają również z interfejsem szeregowym.

Urządzenia te oczywiście różnią się budową — nie można podłączyć równoległego napędu ATA do szerego­wego adaptera ATA i odwrotnie (jest to możliwe po zastosowaniu konwerterów sygnałów). Zmiany w war­stwie fizycznej poszły w dobrym kierunku, ponieważ szeregowy interfejs ATA korzysta z cienkich siedmio-żylowych kabli, które są łatwiejsze do ułożenia wewnątrz obudowy komputera oraz są łatwiejsze do montażu dzięki nowym, przeprojektowanym złączom. Projekt układu sterującego również został zmieniony i układ ten ma teraz mniej nóżek oraz potrzebuje niższego napięcia zasilania. Ulepszenia te zostały wprowadzone w celu wyeliminowania problemów na stałe związanych z równoległym interfejsem ATA.

0x08 graphic
Na rysunku 7.8 pokazano oficjalne logo organizacji Serial ATA Working Group, zajmującej się standardem Serial ATA. Logo służy do identyfikacji większości urządzeń SATA.


Rysunek 7.8.

Oficjalne logo identyfikujące


Choć interfejs SATA nie zastąpi od razu równoległego interfejsu ATA, większość nowych komputerów ob­sługuje oba standardy. W końcu interfejs Serial ATA (SATA) zastąpi równoległy interfejs ATA jako standar­dowy interfejs dla urządzeń pamięci masowej w komputerach PC. Jak pokazują rozwiązania stosowane obecnie w płytach głównych, przechodzenie z ATA do SATA jest stopniowe i w czasie trwania tego procesu możliwo­ści równoległego interfejsu ATA nadal będą dostępne. Można się spodziewać, ze w związku z ponad 10-letnią historią urządzenia ATA będą dostępne nawet wtedy, gdy w większości komputerów PC będzie stosowany tylko standard SATA.

Prace nad standardem Serial ATA rozpoczęły się od ogłoszenia na konferencji Intel Developer Forum w stycz­niu 2000 roku faktu powstania grupy Serial ATA Working Group. Pierwszymi członkami tej grupy były firmy APT Technologies, Dell, IBM, Intel, Maxtor, Quantum i Seagate. Pierwsza specyfikacja Serial ATA 1.0 została ukończona w listopadzie 2000 r„ a jej ostateczna wersja pojawiła się w sierpniu 2001 r. W październiku 2002 r. zaprezentowano specyfikację Serial ATA II. rozszerzającą specyfikację Serial ATA 1.0, dzięki której interfejs SATA mógt zostać użyty w przypadku sieciowych magazynów danych. Obie specyfikacje można pobrać z wi­tryny organizacji Serial ATA Working Group, znajdującej się pod adresem http://www.serialata.org. Od czasu zawiązania grupy dołączyło do niej ponad 150 firm z różnych branż. Pierwsze komputery wykorzystujące interfejs SATA zostały udostępnione pod koniec roku 2002. Zastosowano w nich układy i karty z interfejsem PCI. W końcu w kwietniu 2003 r. interfejs SATA został zintegrowany z chipsetem płyty głównej. Nastąpiło to wraz ze wprowadzeniem układu ICH5 (I/O Controller Hub 5), wchodzącego w skład chipsetu. Od tego czasu większość nowych chipsetów płyt głównych zawiera interfejs Serial ATA.

Choć wydajność interfejsu SATA jest imponująca, dostępne obecnie dyski twarde nie są w stanie wykorzystać w pełni oferowanej przez niego przepustowości. Istnieją trzy warianty standardu korzystające z takiego samego okablowania, a różniące się jedynie szybkością transmisji. Obecnie oferowane są tylko pierwsze dwie szyb­kości. Większe szybkości mają być dostępne w przyszłości. W tabeli 7.10 zawarto specyfikacje obecnych i pro­ponowanych wersji interfejsu SATA. Wersja następnej generacji o szybkości 300 MB/s nie pojawi się wcze­śniej niż w 2005 r. Z kolei wersja o szybkości 600 MB/s ma być dostępna w 2007 r.

Tabela 7.10. Specyfikacja standardów SATA

Typ interfejsu SATA

Szybkość

sygnalizacji (Gb/s)

Szerokość magistrali (bity)

Szybkość magistrali (MHz)

Cykle danych na cykl zegara

Przepustowość (MB/s)

SATA-150

1,5

1

1500

1

150

SATA-300

3,0

1

3000

1

300

SATA-600

6,0

1

6000

1

600

Z tabeli 7.10 wynika, że szeregowy interfejs ATA wysyła dane po jednym bicie. Wykorzystane kable mają tylko siedem przewodów (cztery sygnałowe i trzy uziemiające), są bardzo cienkie i zakończone złączami o sze­rokości tylko 14 mm. Eliminuje to problem obiegu powietrza wokół szerokich taśm interfejsu ATA. Każdy z kabli ma złącza na obu końcach i każdy kabel służy do bezpośredniego podłączenia urządzenia do adaptera hosta (zwykle na płycie głównej). Nie ma potrzeby ustawiania trybu master i slave, ponieważ każdy kabel służy do podłączenia tylko jednego urządzenia. Orientacja przewodów jest dowolna, wtyczka podłączana do płyty głównej jest identyczna jak wtyczka podłączana do urządzenia, więc oba końce kabla są identyczne. Maksymalna długość kabla SATA wynosi 1 metr (39,37 cali) co jest znacznie lepszym wynikiem niż 45 centymetrów (18 cali) kabla ATA. Wykorzystując te cieńsze, dłuższe i tańsze kable prędkość przesyłu danych wynosi 150 MB/s (niemal 13% więcej niż równoległy ATA/133). Interfejs Serial ATA II pozwala osiągnąć prędkość 300 MB/s, a nawet 600 MB/s.

Interfejs Serial ATA wykorzystuje do kodowania przesyłanych danych specjalny schemat kodowania zwany 8B/10B. Kod transmisji 8B/10B został wymyślony (i opatentowany) w firmie IBM na początku lat 80. Ten schemat kodowania jest w chwili obecnej wykorzystywany w wielu standardach transmisji o wysokiej pręd­kości, w tym GigabitEthernet, Fibrę Channel, FireWire i inne. Podstawowym zadaniem kodowania 8B/10B jest zagwarantowanie, że nigdy nie zostaną wysłane kolejno więcej niż cztery zera lub cztery jedynki. Jest to od­miana kodowania Run Length Limited (RLL) o nazwie RLL 0,4, gdzie 0 oznacza minimalną, a 4 maksymalną ilość kolejnych zer w każdym zakodowanym znaku.

Kodowanie 8B/10B zapewnia również, że nigdy nie wystąpi więcej niż sześć lub mniej niż cztery zera (lub jedynki) w każdym zakodowanym 10-bitowym znaku). Ponieważ zera i jedynki są przesyłane w postaci zmian napięcia, zapewnia to, że odstępy pomiędzy tymi zmianami będą odpowiednio zbalansowane i otrzymamy regularny i ustalony strumień impulsów. Daje to w efekcie bardziej równomierne obciążenie układów, dzięki czemu zwiększa się ich niezawodność. Konwersja z danych 8-bitowych na 10-bitowe wykorzystywane w trans­misji powoduje powstanie nieużywanych wzorców 10-bitowych. Wiele z tych wzorców jest wykorzystanych do kontroli przepływu, oznaczania pakietów danych, zapewniania kontroli błędów itp.

Złącza i kable Serial ATA

Fizyczny model transmisji interfejsu SATA korzysta z różnicowej metody NRZ (ang. Non-Return to Zero). Wykorzystana jest para przewodów, w których wysyłany jest sygnał plus lub minus 0,25 V. Sygnały są wy­syłane w taki sposób, że jeżeli w jednym przewodzie występuje napięcie +0,25 V, to w drugim -0,25 V — różnica napięć pomiędzy tymi przewodami wynosi 0,5 V. Oznacza to, że dla podanego przebiegu napięcia, przebieg przeciwnego napięcia jest przesyłany sąsiednim przewodem. Transmisja różnicowa minimalizuje promieniowanie elektromagnetyczne i ułatwia odczytanie sygnału na przeciwnym końcu przewodu.

W interfejsie SATA występuje opcjonalny 15-żyłowy kabel zasilania doprowadzający napięcie 3,3 V, oprócz 5 V i 12 V występujących w standardowym 4-pinowym gnieździe zasilającym. Choć posiada 15 pinów, nowe złącze zasilania ma tylko 24 mm szerokości. Dla każdego z napięć, 3,3 V, 5 V i 12 V przeznaczone są trzy piny, co pozwala na przesłanie prądu o natężeniu 4,5 ampera dla każdego z napięć. Jest to wystarczająco dużo nawet dla energochłonnych urządzeń. Aby zachować zgodność z istniejącymi zasilaczami, napędy SATA po­siadają standardowe 4-pinowe gniazdo zasilania, nowe 15-pinowe gniazdo lub oba. Jeżeli napęd nie posiada potrzebnego gniazda zasilania, można zastosować odpowiednie konwertery.

Na rysunku 7.9 pokazano wygląd nowych gniazd sygnałowych i zasilania.

0x08 graphic
Rysunek 7.9.

Złącza danych i zasilania interfejsu SATA (SerialATA) przeznaczone dla typowego dysku twardego SA TA

Na rysunku 7.10 przedstawiono kontrolery interfejsów SATA i równoległego ATA, umieszczone na typowej płycie głównej.

Rysunek 7.10.

Płyta główna z kontrolerami interfejsów SA TA i równoległego A TA

0x08 graphic

Funkcje pinów gniazda danych i zasilania są przedstawione w tabelach 7.11 i 7.12.

Tabela 7.11. Funkcje pinów złącza danych Serial ATA

Pin danych

Sygnał

Opis

SI

GND

Dłuższy pin

S2

A+

Nadawanie +

S3

A-

Nadawanie -

S4

GND

Dłuższy pin

S5

B-

Odbiór-

S6

B+

Odbiór +

S7

GND

Dłuższy pin

Wszystkie piny w jednym rzędzie są od siebie oddalone o 1,27 mm.

Wszystkie piny masy są dłuższe, więc wchodzą w gniazdo jako pierwsze, przed pinami sygnałowymi lub zasilania. Umożliwia to przyłączanie w czasie pracy systemu.

Konfiguracja urządzeń Serial ATA

Konfiguracja urządzeń Serial ATA jest o wiele prostsza, ponieważ w ich przypadku nie jest już wymagane określanie za pomocą zworek ustawień master/slave lub cable select, co było niezbędne przy równoległym interfejsie ATA.

Tabela 7.12. Funkcje pinów opcjonalnego gniazda zasilania interfejsu Serial ATA

Pin zasilania

Sygnał

Opis

PI

+3,3V

Zasilanie +3,3V

P2

+3,3V

Zasilanie +3,3V

P3

+3,3V

Zasilanie +3,3V

P4

GND

Dłuższy pm

P5

GND

Dłuższy pin

P6

GND

Dłuższy pin

P7

+5V

Zasilanie +5V

P8

+5V

Zasilanie +5V

P9

+5V

Zasilanie +5V

PIO

GND

Dłuższy pin

PI 1

GND

Dłuższy pin

P12

GND

Dłuższy pin

P13

+ 12V

Zasilanie +12V

P14

+ 12V

Zasilanie +12V

P15

+12V

Zasilanie +12V

Wszystkie piny w jednym rzędzie są od siebie oddalone o 1,27 mm.

Wszystkie piny masy są dłuższe, więc wchodzą w gniazdo jako pierwsze, przed pinami sygnałowymi lub zasilania. Umożliwia to przyłączanie w czasie pracy systemu.

Aby zapewnić przesyłanie maksymalnego prądu 4,5 amperów, zastosowano po trzy piny na każde napięcie zasilające.

Dość prosta jest też konfiguracja ustawień BIOS związanych z napędami Serial ATA. Ponieważ interfejs SATA bazuje na interfejsie ATA, w komputerach wyposażonych w złącza SATA automatyczna detekcja ustawień napędów wygląda identycznie, jak w przypadku systemów ze złączami ATA. W zależności od komputera interfejsy Serial ATA mogą być aktywne domyślnie lub może być wymagane włączenie ich przy użyciu pro­gramu BIOS Setup (więcej informacji zawarto w rozdziale 5„ ..BIOS").

Ze względu na to, że interfejs SATA oparty jest na równoległym interfejsie ATA, można — korzystając z kon­wertera, takiego jak HighPoint RocketHead 100 (rysunek 7.11) — podłączyć do kontrolera Serial ATA dyski twarde ATA-100 i ATA-133. Konwerter jest dołączany do kontrolerów HighPoint Serial ATA RAID i po­dobnych urządzeń, które można nabyć od mniejszych producentów.

0x08 graphic
Rysunek 7.11.

Konwerter HighPoint RocketHead 100 przedstawiony w dwóch widokach

Jeśli zależy Ci na zastosowaniu napędów Serial ATA, ale bez konieczności zakupu nowej płyty głównej wy­posażonej w kontroler SATA, można go w postaci oddzielnej karty umieścić w gnieździe PCI (rysunek 7.12). Większość tego typu kontrolerów oferuje funkcje ATA RAID.


0x08 graphic
Rysunek 7.12.

Typowe 2- (u góry) i 4-kanalowe (na dole) kontrolery Serial ATA RAID. Kontroler 2-kanalowy jest też wyposażony w funkcje kontrolera równoległego interfejsu A TA

Niektóre z pierwszych modeli kontrolerów Serial ATA wyprodukowane przez takie firmy, jak HighPoint i 3Ware, korzystają z mostka ATA-Serial ATA, który zużywa aż połowę dostępnej przepustowości. W kon­trolerach innych firm, takich jak Promise Technology, używane są osobne układy kontrolera SATA, co teo­retycznie jest lepszym rozwiązaniem, ponieważ pozwala przeznaczyć całą przepustowość na potrzeby dysków. Jednak obecnie dostępne napędy Serial ATA — podobnie do swoich „rówieśników" z równoległym interfej­sem ATA — nie są w stanie przesyłać danych z oferowaną przez kontroler szybkością zbliżoną do 150 MB/s. Średni transfer danych napędów Serial ATA o prędkości obrotowej 7200 obr./min zawiera się zwykle w prze­dziale od 40 do 50 MB/s.

Serial ATA II

Podobnie jak równoległy interfejs ATA, interfejs Serial ATA miał z założenia odgrywać rolę podstawowego interfejsu urządzeń pamięci masowej stosowanych w komputerach PC. Początkowo nie planowano stosowania go jako interfejsu zewnętrznego. Jednak wraz z pojawieniem się interfejsu Serial ATA II (SATA-8; obecnie trwają prace projektowe nad nim) Serial ATA swoim zakresem obejmie zewnętrzne połączenia, magazyny danych zawierające wiele dysków i rozgałęźniki portów umożliwiające podłączenie do jednego portu SATA maksymalnie 15 napędów tego rodzaju. Zewnętrzne połączenie obsługuje cztery tory. Na każdy z nich przy­pada przepustowość 300 MB/s, co w sumie daje 1200 MB/s. Stanowi to konkurencję dla zewnętrznych połączeń SCSI przeznaczonych dla macierzy RAID, ale najprawdopodobniej nie dla bardzo szybkich interfejsów ogól­nego zastosowania obsługujących zewnętrzne urządzenia, takich jak USB 2.0 i IEEE 1394 (i.Link/FireWire). Ze względu na niższy koszt i zajmujące mniej miejsca wewnętrzne kable bardzo prawdopodobne jest, że w ciągu kilku kolejnych lat interfejs Serial ATA zastąpi równoległy interfejs ATA zarówno w komputerach stacjonar­nych, jak i przenośnych.

Advanced Host Controller Interface

Interfejs Serial ATA został stworzony nie tylko z zamiarem zastąpienia równoległego interfejsu ATA, ale też w celu udostępnienia rozwiązania oferującego w porównaniu ze swoim poprzednikiem znacznie więcej moż­liwości i funkcji. Początkowo zgodność z interfejsem ATA była jedną z najważniejszych funkcji interfejsu SATA, ponieważ dzięki temu możliwe było łagodne i proste przejście z jednej technologii do drugiej. Zakres zgodności został rozszerzony do poziomu sterowników, w wyniku czego napędy Serial ATA korzystają z takich samych sterowników BIOS i oprogramowania, co starsze napędy ATA.

Choć zamierzeniem twórców interfejsu Serial ATA było umożliwienie łatwego przejścia z technologii rów­noległego interfejsu ATA, został on też zaprojektowany tak, aby możliwy był dalszy jego rozwój i zwiększanie możliwości. W tym celu opracowano najpierw rozszerzony interfejs programowy AHCI {Advanced Host Controller Interface). Interfejs stworzyła organizacja AHCI Contributor Group, kierowana przez firmę Intel i początkowo złożona z takich korporacji, jak AMD. Dell, Marvell, Maxtor. Microsoft. Red Hat. Seagate i StorageGear. W maju 2003 r. organizacja zaprezentowała wstępną wersję 0.95 specyfikacji AHCI. nato­miast w 2004 r. udostępniła jej ostateczną postać.

Specyfikacja AHCI definiuje standard interfejsu o dużej wydajności, komunikującego się ze sterownikami i apli­kacjami systemu operacyjnego w celu identyfikacji i zastosowania zaawansowanych funkcji SATA, takich jak kolejkowanie poleceń, podłączanie urządzeń w trakcie pracy systemu i zarządzanie energią. Interfejs AHCI został zintegrowany z chipsetami obsługującymi interfejs Serial ATA, które pojawiły się na rynku w 2004 r. Dodatkowo interfejs AHCI obsługiwany jest przez odpowiednie sterowniki systemu Windows.

Transfery danych interfejsu Serial ATA

W porównaniu z równoległym interfejsem ATA interfejs Serial ATA przesyła dane w całkiem inny sposób. Jak już wcześniej wspomniano, oferowane szybkości przesyłania danych to 150, 300 i 600 MB/s. Większość dostępnych obecnie napędów obsługuje szybkość 150 MB/s. Ze względu na zgodność wstecz interfejsu SATA z interfejsem ATA mogą pojawić się niejasności, ponieważ napędy SATA potrafią emulować tryby ATA. Oznacza to, że w celu zachowania zgodności wstecz z istniejącym oprogramowaniem napęd zwyczajnie „oszukuje".

Przykładowo wiele płyt głównych wykrywa napęd Serial ATA i informuje, że jest on zgodny z trybem Ultra DMA Mode 5 (ATA/100), będącym trybem równoległego interfejsu ATA o szybkości 100 MB/s. Oczywiście nie jest to prawdą, ponieważ nawet najwolniejszy tryb interfejsu Serial ATA (SATA-150) oferuje szybkość 150 MB/s, a tryby Ultra DMA po prostu nie dotyczą napędów SATA.

Choć interfejsy równoległy ATA i Serial ATA zupełnie różnią się pod względem specyfikacji elektrycznej i fizycznej, drugi z nich emuluje pierwszy w sposób całkowicie „przezroczysty" dla oprogramowania. Tak na­prawdę emulacja równoległego interfejsu ATA wykonywana przez interfejs Serial ATA jest zgodna ze specy-fikacjąATA-5.

Jest to szczególnie widoczne w przypadku polecenia IDENTIFY DEVICE, używanego przy wczytywaniu pa­rametrów napędu przez funkcje BIOS odpowiedzialne za automatyczną detekcję. W specyfikacji Serial ATA zaznaczono, że wiele pozycji (uwzględniających tryby i ustawienia Ultra DMA) zwróconych przez to polece­nie ma być ustawionych tak, jak w przypadku specyfikacji ATA/ATAPI-5.

W specyfikacji SATA 1 stwierdzono też, że emulacja zachowania urządzenia równoległego interfejsu ATA z perspektywy BIOS lub sterownika jest realizowana wspólnie przez urządzenia i kontroler Serial ATA. Emulowane jest zachowanie rejestrów Command and Control Błock, a także operacje przesyłania danych w trybach PIO i DMA, resetowanie i przerwania. Kontroler zawiera zestaw rejestrów Shadow Register Błock. powielających zawartość tradycyjnych rejestrów urządzeń. Wszystkie urządzenia SATA zachowują się jak urządzenia Device 0. Urządzenia powinny ignorować bit DEV pola Device/Head otrzymanych poleceń Register FIS. Korzystający z wartości bitu DEV kontroler odpowiedzialny jest za obsługę transmisji poleceń Register FIS do urządzeń.

Oznacza to, że rejestry Shadow Register Błock są „fałszywymi" rejestrami równoległego interfejsu ATA, umożliwiającymi emulowanie wszystkich poleceń i trybów ATA, Interfejs Serial ATA został zaprojektowany tak, aby na poziomie oprogramowania był w pełni zgodny ze specyfikacją ATA/ATAPI-5. Właśnie z tego powodu napęd SATA w pewien sposób może przekazywać informacje, tak jakby był zgodny z interfejsem ATA lub korzystał z jednego z jego trybów, nawet jeśli tak faktycznie nie jest.

Funkcje interfejsu ATA

Wersje standardu ATA pokonały długą drogę, zanim wyeliminowano niezgodności i problemy ze współpracą napędów IDE z magistralami PCI i ISA komputerów. Specyfikacje ATA definiują sygnały 40-pinowego złącza, funkcje tych sygnałów i ich taktowanie, parametry kabli itp. W tym podrozdziale omówiono niektóre ele­menty i funkcje zdefiniowane w specyfikacjach interfejsu ATA.

Polecenia ATA

Jedną z największych zalet interfejsu ATA jest szeroki zakres dostępnych poleceń. Interfejs ATA powstał na bazie kontrolera WD 1003 zastosowanego w oryginalnym systemie IBM AT. Wszystkie dyski ATA muszą bez żadnych wyjątków obsługiwać wszystkie polecenia kontrolera WD (osiem poleceń), dzięki czemu bardzo łatwo można je instalować we współczesnych systemach. Wszystkie systemy zgodne z komputerami IBM PC posiadają wbudowaną w ROM BIOS obsługę WD1003. a więc i obsługę ATA.

Oprócz obsługi wszystkich poleceń WD 1003, specyfikacja ATA definiuje wiele innych poleceń rozszerzają­cych możliwości dysków i poprawiających ich wydajność. Polecenia te są zdefiniowane w części opcjonalnej interfejsu ATA, ale kilka z nich jest wykorzystywanych w większości dzisiejszych dysków i są one bardzo ważne dla osiągnięcia wysokiej wydajności dysków ATA.

Prawdopodobnie najważniejszym poleceniem jest Identify Drive. Polecenie to powoduje przesłanie przez dysk 512-bajtowego bloku danych zawierających szczegółowy opis dysku. Dzięki temu poleceniu każdy program (w tym BIOS systemu) może odczytać typ podłączonego dysku, producenta, numer modelu, parametry robo­cze, a nawet numer seryjny egzemplarza. Wiele nowoczesnych BIOS-ów korzysta z tych danych do automa­tycznego odczytywania parametrów dysku i wprowadzania ich do pamięci CMOS, co pozwala uniknąć po­trzeby ręcznego wprowadzania tych parametrów podczas konfigurowania systemu. To ułatwienie chroni od pomyłek, które mogłyby prowadzić nawet do utraty danych w przypadku, gdy użytkownik nie zapamiętał, jakie parametry wpisał do konfiguracji.

Polecenie Identify Drive zwraca wiele informacji na temat dysku, w tym poniżej wymienione:

Istnieje kilka programów typu public-domain, które powodują wykonanie tego polecenia przez dysk i wy­świetlają na ekranie zwracane informacje. Kiedyś używałem programu IDEINFO (dostępny pod adresem http://www.tech-pro.co.uk/ideinfo.html). Jednak narzędzie to powstało niemal dekadę temu i nie dostarcza pełnych informacji na temat nowych dysków. Aby uzyskać aktualniejsze dane, należy skorzystać z programu IDEDIAG (dostępny pod adresem http://www.penguin.cz/~mhi/idediag) lub HWINFO, który można pobrać z witryny WWW, znajdującej się pod adresem http://www.hwinfo.com. Programy te są szczególnie przydatne w przypadku, gdy zachodzi potrzeba zainstalowania w komputerze dysku twardego, którego parametry należy wprowadzić samemu, a nie są one znane i nie jest dostępna funkcja automatycznej detekcji. Narzędzia te od­czytują niezbędne informacje bezpośrednio z dysku.

Kolejnymi ważnymi poleceniami są Read Multiple i Write Multiple. Polecenia te pozwalają na transfer da­nych z wielu kolejnych sektorów, co połączone z możliwością blokowego przesyłu w trybie PIO pozwala na osiągnięcie niewiarygodnych prędkości przesyłu, wielokrotnie większych niż osiągalne w jednosektorowych trybach transferu PIO. Niektóre starsze komputery wymagają podania poprawnej liczby sektorów używanych przez dysk. Większość nowych komputerów definiuje to ustawienie automatycznie.

Dostępne są również polecenia rozszerzone. Producenci często korzystają z tych poleceń do realizacji funkcji charakterystycznych tylko dla siebie. Najczęściej polecenia rozszerzone są wykorzystywane do realizacji funk­cji takich jak niskopoziomowe formatowanie i zarządzanie uszkodzeniami. Z tego powodu programy do nisko-poziomowego formatowania są przeznaczone dla dysków ATA określonych producentów. Wyjaśnia to też, dlaczego wielu producentów udostępnia własne tego typu programy.

ATA Security Mode

Funkcja obsługi haseł dysków twardych, nazywana ATA Security Mode, została w 1995 r. dodana do specy­fikacji ATA-3. Propozycja takiego rozszerzenia specyfikacji ATA została wysunięta przez firmę IBM, która zdefiniowała tę funkcję i zaczęła prace nad zastosowaniem jej w komputerach z serii ThinkPad wyposażo­nych w napędy 2,5-calowe. Ponieważ funkcja została dodana do oficjalnego standardu ATA-3 (ostatecznie zaprezentowanego w 1997 r.), zaadaptowała ją większość innych producentów napędów i komputerów, a zwłaszcza laptopów i napędów 2,5-calowych. Warto zauważyć, że hasła oferują duży stopień bezpieczeń­stwa. Jeśli sieje zgubi lub zapomni, zwykle nie jest możliwe ich przywrócenie, a zatem nigdy nie uzyska się już dostępu do dysku.

Hasła zabezpieczające dyski twarde są ustawiane za pomocą programu BIOS Setup. Nie wszystkie komputery to umożliwiają. W większości laptopów hasła są stosowane, ale przeważnie nie dotyczy to komputerów sta­cjonarnych. Jeśli funkcja jest dostępna, możliwe będzie ustawienie dwóch typów hasła — użytkownika i nad­zorcy. Hasło użytkownika blokuje i odblokowuje dysk, natomiast hasło nadzorcy służy tylko do odblokowy­wania. Możliwe jest ustawienie hasła użytkownika lub jednocześnie użytkownika i nadzorcy, ale ustawienie wyłącznie hasła nadzorcy —już nie.

Gdy zostanie zdefiniowane wyłącznie hasło użytkownika lub użytkownika i nadzorcy, dostęp do dysku jest blokowany (nawet po zainstalowaniu dysku w innym systemie) do momentu podania po włączeniu komputera hasła użytkownika lub nadzorcy.

Hasło nadzorcy jest dla administratorów systemów hasłem alternatywnym lub zapasowym, umożliwiającym odblokowanie dysku w trybie nadzorcy. Po ustawieniu zarówno hasła użytkownika, jak i nadzorcy, użytkow­nik otrzymuje tylko swoje hasło. W razie potrzeby może je zmienić, jednak administrator systemu nadal może wówczas uzyskać dostęp do dysku, korzystając z hasła nadzorcy.

Jeśli zdefiniowano hasto użytkownika lub też nadzorcy, odblokowane dysku jest konieczne podczas inicjali­zacji komputera. Polega to na wprowadzeniu hasła w okienku wyświetlonym przez BIOS. Wygląd okienka jest inny w różnych komputerach. W przypadku systemów firmy IBM ma ono postać graficzną. Na ekranie obok kłódki pojawia się ikona zawierająca cylinder, nad którym widoczna jest liczba identyfikująca numer napędu. Jeżeli pojawi się prośba o podanie hasła dysku twardego, należy je wprowadzić. W przeciwnym razie nie uzyska się dostępu do dysku i system nie zostanie uruchomiony.

Jak już wcześniej wspomniałem, po zapomnieniu hasła użytkownika lub zarówno użytkownika, jak i admini­stratora (gdy oba zostaną ustawione), uzyskanie dostępu do dysku nie będzie możliwe nawet wówczas, gdy zainstaluje się go w innym komputerze (i bez znaczenia jest, czy komputer ten obsługuje funkcję ATA Security Mode). W zasadzie taki dysk może posłużyć jedynie za obciążnik.

Podobnie jak w przypadku wielu funkcji zabezpieczeń, nawet i w razie zagubienia hasła można znaleźć roz­wiązanie problemu. Można wymienić co najmniej jedną firmę, która zajmuje się przywracaniem dysków do sprawności lub odzyskiwaniem zapisanych na nich danych. Jest to firma Nortek2 (więcej informacji można znaleźć pod adresem http: '.'www.nortek.on.ca). Operacja usunięcia hasła kosztuje od 300 do 1000 zł. Dodat­kowo do dostarczonego dysku należy dołączyć dowód praw własności do niego. Jak widać, cena przeważnie przekracza koszt nowego napędu, dlatego na operację taką warto się zdecydować tylko wówczas, gdy odzy­skanie danych jest absolutnie konieczne.

Hasła dysków twardych nie są wstępnie definiowane przez producenta, ale nie dotyczy to oczywiście używa­nych napędów. Przykładowo jest to często spotykane przy sprzedaży napędów lub komputerów w ramach serwisu aukcyjnego eBay. W tym przypadku sprzedający mogą ustawić dla dysków twardych hasła nadzorcy i pozostawić je aktywne do momentu otrzymania pełnej kwoty od kupującego. Można też się spotkać z uży­wanymi produktami, w przypadku których sprzedawca nie zna ustawionych haseł. W efekcie takie urządzenia stają się dla nabywcy bezużyteczne. Z tego powodu nigdy nie namawiam do zakupu używanego laptopa lub dysku twardego, jeśli nie ma się pewności, czy nie zdefiniowano hasła napędów lub administratora komputera.

W większości komputerów w programie Setup BIOS dostępne są inne hasła administracyjne lub wymagane po włączeniu komputera. Przeważnie po ustawieniu hasła administratora zostanie zdefiniowane identyczne hasło dysku twardego. W większości przypadków, jeśli hasło administratora jest takie samo, jak hasło użyt­kownika lub nadzorcy dysku twardego, po jego wprowadzeniu BIOS automatycznie zastosuje je jako hasło dysku. Oznacza to, że nawet jeśli ustawiono hasło dysku twardego, o jego istnieniu można nie wiedzieć, po­nieważ jest ono automatycznie wprowadzane razem z hasłem administratora. W związku z tym nie pojawi się oddzielny komunikat z prośbą o podanie hasła dysku twardego. Jeśli jednak później dysk zostanie wyjęty z komputera, nie będzie można go użyć w innym systemie, dopóki nie wprowadzi się poprawnego hasła, które dla niego ustawiono. Jeśli nie korzysta się z usług takich firm, jak Nortec, usunięcie hasła dysku twardego jest możliwe tylko wówczas, gdy zna się hasło administratora.

Host Protected Area

Większość komputerów PC dostępnych obecnie na rynku jest wyposażona w różnego typu funkcje automa­tycznego odtwarzania oprogramowania. Dzięki nim użytkownik z łatwością może przywrócić system opera­cyjny lub inne aplikacje do stanu, w jakim znajdowały się, gdy komputer był nowy. Początkowo możliwe to było za pośrednictwem jednego lub kilku awaryjnych dysków CD dołączonych do oprogramowania i zawie­rających automatycznie wykonywane skrypty, ponownie instalujące aplikacje znajdujące się na komputerze w chwili jego nabycia.

Niestety dyski CD mogą zostać zgubione lub uszkodzone, a ich użycie często jest problematyczne. Ponadto standardowe dołączanie dysków CD do oprogramowania było dla producentów bardzo kosztowne. W efekcie producenci komputerów PC umieścili oprogramowanie przywracające w ukrytej partycji startowego dysku twardego. Część przestrzeni dyskowej o pojemności od 1 do 3 GB została zatem przeznaczona na oprogra­mowanie przywracające, zajmujące wcześniej od jednego do czterech dysków CD. W przypadku dysków o pojemności 60 GB lub większej stanowi to 5% lub mniej całkowitej przestrzeni. Jednak nawet ukryta party­cja okazała się jeszcze mniej zadowalającym rozwiązaniem, ponieważ z łatwością mogła zostać uszkodzona lub zapisana przez oprogramowanie partycjonujące bądź inne narzędzia. Z tego względu nie było to rozwią­zanie bezpieczne.

1 W Polsce podobne usługi świadczy na przykład firma lbas Polska {http://www.ibas.com.pl) — przyp. tłum.

W 1996 r. firma Gateway zaproponowała zmodyfikowanie znajdującego się w fazie projektowej standardu ATA-4. Zmiana miała polegać na udostępnieniu zarezerwowanej przestrzeni napędu, nazwanej HPA (Most Protected Area). Zmiana została zatwierdzona i przestrzeń HPA uwzględniono w specyfikacji ATA-4, która ostatecznie pojawiła się w 1998 r. W 1999 r. rozpoczęto prace nad specyfikacją niezależnego interfejsu opro­gramowania sprzętowego BIOS nazwanego PARTIES (Protected Area Run Time Interface Ertension Servi-ces). Specyfikacja definiowała usługi, za pomocą których system operacyjny mógł uzyskać dostęp do prze­strzeni HPA. Standard PARTIES został ukończony i opublikowany w 2001 r. pod nazwą NCITS 346-2001, Protected Area Run Time Interface Extension Services.

Działanie przestrzeni HPA opiera się na użyciu opcjonalnego polecenia ATA SET MAX ADDRESS, które sprawia, że dla systemu operacyjnego dysk wydaje się być trochę mniej pojemny. Obszar znajdujący się po­między miejscem identyfikowanym przez nowy adres maksymalny (górny próg pojemności) i rzeczywistym końcem przestrzeni dyskowej jest uważany za przestrzeń HPA. do której dostęp możliwy jest tylko po użyciu poleceń standardu PARTIES. Przestrzeń HPA jest dużo bardziej bezpieczna od ukrytej partycji, ponieważ wszelkie dane znajdujące się poza końcem obszaru dysku nie mogą być widoczne dla zwykłej aplikacji, a nawet narzędzia partycjonującego, takiego jak PartitionMagic lub Partition Commander. Aby usunąć prze­strzeń HPA, należy skorzystać z ustawień programu BIOS Setup lub niezależnych poleceń modyfikujących adres maksymalny. Po dokonaniu zmian można, za pomocą takiego narzędzia, jak PartitionMagic lub Partition Commander, zwiększyć rozmiar partycji o sąsiadujący z nią uwolniony obszar zajmowany przez przestrzeń HPA, która wcześniej była ukryta i niedostępna.

Większość nowych komputerów korzystających z układu Phoenix FirstBIOS jest wyposażona w umiesz­czone w przestrzeni HPA oprogramowanie przywracające i diagnostyczne. Stanowi ono część nowego środowiska cME (core Managed Environment) układu Phoenix FirstBIOS. Od 2003 r. środowisko to wykorzystywane jest przez sporą ilość producentów OEM (w tym IBM) komputerów stacjonarnych i prze­nośnych.

► ► W celu uzyskania dodatkowych informacji na temat przestrzeni HPA i jej zawartości należy zajrzeć do podrozdziału „Środowisko przeduruchomieniowe", znajdującego się na stronie 489.

Interfejs pakietowy ATA

Interfejs pakietowy ATA (ATAPI) jest standardem zapewniającym obsługę poleceń niezbędnych do obsługi urządzeń takich jak napędy CD-ROM, napędy nośników wymiennych (SuperDisk i Zip) czy napędy taśm podłączanych do zwykłego złącza ATA (IDE). Podstawową zaletą sprzętu ATAPI jest niska cena i współpraca z istniejącym adapterem. W przypadku napędów CD-ROM osiąga się nieco niższe obciążenie procesora w porównaniu z dedykowanymi adapterami, ale nie zauważa się żadnego wzrostu wydajności. W przypadku napędów taśm ATAPI zapewnia doskonałą wydajność i niezawodność w porównaniu z popularnymi napę­dami taśm przyłączanymi do kontrolera dyskietek. Choć napędy ATAPI CD-ROM korzystają z interfejsu dysku twardego, nie oznacza to, że są podobne do zwykłych dysków twardych; z punktu widzenia oprogra­mowania jest to całkowicie inna klasa urządzeń. Najbardziej są one podobne do urządzeń SCSI. Wszystkie nowoczesne napędy CD-ROM IDE obsługują protokoły ATAPI, co powoduje, że nazwy te stały się synoni­mami. Inaczej mówiąc, CD-ROM ATAPI to CD-ROM ATA i odwrotnie.


0x08 graphic

Od 1998 r. większość komputerów była zgodna ze specyfikacją El Torito firmy Phoenix, umożli­wiającej załadowanie systemu przy użyciu napędu CD-ROM ATAPI lub DVD. Systemów bez ob­sługi El Torito w BIOS nie można uruchamiać z napędu CD-ROM ATAPI lub DVD. Jeśli nawet BIOS obsługuje ATAPI, nadal niezbędne jest ładowanie sterownika dla ATAPI w DOS lub Win­dows. Windows 95 i późniejsze (w tym 98 i Me) oraz Windows NT (w tym Windows 2000 i XP) posiadają własną obsługę ATAPI. Niektóre wersje systemów Windows 98, NT, 2000 i XP posia­dają instalacyjne płyty CD, które umożliwiają bezpośrednie uruchomienie tych systemów, co niezmiernie ułatwia instalację.


Zwykle zalecam podłączanie w osobnych kanałach różnych urządzeń ATA, z których korzystać się bę­dzie jednocześnie. ATA nie obsługuje bowiem dostępu „na zakładkę" — gdy obsługiwane jest jedno urządzenie, nie ma dostępu do drugiego. Podłączając CD-ROM i dysk w osobnych kanałach, można taki dostęp do nich zapewnić. Trzeba też wiedzieć, że jeśli inne urządzenie ATAPI (napęd CD lub DVD) działa jako master, urządzenie korzystające z równoległego interfejsu ATA, takie jak dysk twardy, mo­że nie być w stanie funkcjonować. A zatem w większości przypadków dla danego kabla powinno się skonfigurować dyski twarde ATA jako master (urządzenie 0), natomiast napędy ATA ATAPI jako slave (urządzenie 1).

Ograniczenia pojemności dysku ATA

Interfejs ATA aż do wersji ATA-5 posiadał ograniczenie pojemności dysku do około 137 GB. W zależności od wykorzystanego oprogramowania BIOS-u. ograniczenie to może się zmniejszać do 8.4 GB lub nawet do 528 MB. Dzieje się tak zarówno z powodu ograniczeń BIOS-u, jak i interfejsu ATA. które zestawione razem dają kolejne ograniczenia. Aby zrozumieć istotę tych ograniczeń, przyjrzymy się oprogramowaniu BIOS w po­łączeniu z interfejsem ATA.

Poza omówionymi w tym podrozdziale ograniczeniami BIOS i standardu ATA istnieją też różne re-^\ strykcje dotyczące systemów operacyjnych. Więcej informacji na ich temat można znaleźć w dal-szej części rozdziału.

Ograniczenia wpływające na działanie napędów ATA są sumą ograniczeń samego interfejsu oraz interfejsu BIOS-u wykorzystywanego do sterowania dyskiem. Ograniczenia te są przedstawione w tabeli 7.13.

Opiszemy teraz szczegółowo różnice pomiędzy różnymi metodami adresowania sektorów i związane z tym ograniczenia.

Prefiksy dla wielokrotności dziesiętnych i binarnych

Wielu Czytelników nie zna symboli MiB (mebibajty), GiB (gibibajty) itd, których będziemy używać w tym rozdziale oraz w innych rozdziałach książki. Stanowią one część standardu zaprojektowanego w celu uniknię­cia pomyłek pomiędzy liczbami binarnymi a dziesiętnymi, szczególnie tymi, które są stosowane w systemach komputerowych. Standard SI zakłada jednostki, które są wielokrotnościami 10. Założenie to sprawdza się do­skonale w wielu dziedzinach techniki poza komputerami, które operują na słowach binarnych, gdzie większość liczb korzysta z potęg liczby dwa. Stanowi to powód, dla którego ten sam prefiks stosuje się dla dwóch różnych wartości, na przykład 1 kB (kilobajt) może oznaczać 1000 (103) bajtów lub 1024 (210) bajtów. Aby wyelimi­nować pomyłki, w grudniu 1998 komisja International Electrotechnical Commission (IEC) przyjęła między­narodowy standard nazw prefiksów i symboli wielokrotności binarnych wykorzystywanych przy przetwarza­niu i transmisji danych. Niektóre z tych prefiksów są przedstawione w tabeli 7.14.

W standardowej terminologii MB (megabajt) to ł 000 000 bajty, natomiast MiB (mebibajt) to 1 044 576 bajtów.

Więcej informacji na temat standardów dotyczących prefiksów dziesiętnych i binarnych można zna-T^l leźć na witrynie National Institute for Standards and Technology (NIST) pod adresem physics.nist. gov/cuu/Units/prefixes.html.

Ograniczenia BIOS-u

Aby można było obsłużyć coraz pojemniejsze napędy, przez lata układy ROM BIOS płyt głównych były uaktualniane. W tabeli 7.15 zawarto najważniejsze daty wyznaczające moment zwiększenia maksymalnej po­jemności napędów.

W tabeli określono, kiedy osiągnięte zostały kolejne maksymalne progi pojemności. Układy BIOS sprzed sierpnia 1994 r. przeważnie obsługiwały dyski o pojemności nie przekraczającej 528 MB, natomiast w przy­padku układów BIOS sprzed stycznia 1998 r. było to 8,4 GB. Większość układów BIOS z 1998 r. lub now­szych obsługuje dyski o maksymalnej pojemności 137 GB. Z kolei układy BIOS z września 2002 r. lub now­sze powinny rozpoznawać dyski o pojemności przekraczającej pojemność 137 GB. Są to jednak tylko ogólne wytyczne. Aby dokładnie stwierdzić, jak to wygląda w przypadku określonego komputera, należy skontakto­wać się z producentem płyty głównej. Można też użyć narzędzia BIOS Wizard, dostępnego pod adresem http://www.unicore.com/hioswiz/index2.html. Program ten poinformuje o dacie powstania BIOS-u komputera i stwierdzi, czy jest on zgodny ze specyfikacją Enhanced Hard Disk Drive, która definiuje obsługę dysków o pojemności przekraczającej 8,4 GB.

Tabela 7.13. Ograniczenia pojemności ATA IDE dla różnych metod adresowania sektorów

Metoda adresowania sektorów

Obliczenie ilości sektorów

Maksymalna ilość sektorów

CHS: BIOS bez TL

1024x16x63

1 032 192

CHS: BIOS z bit-shift TL

1024x240x63

15 482 880

CHS. BIOS z LBA TL

1024x255x63

16 450 560

CHS: BIOS INT13h

1024x256x63

16 515 072

CHS: ATA-1 /ATA-5

65536x16x255

267 386 880

LBA: ATA-1 /ATA-5

2^28

268 435 456

LBA: ATA-6+

2^48

281 474 976 710 655

LBA EDD BIOS

2^64

18 446 744 073 709 551 600

BIOS = Basic input output system. ATA = AT Attachment (IDE).

CHS = Cylinder head seclor (cylinder głowica sektor).

LBA = Logical błock (sector) address (adres logicznego bloku).

TL = translacja.

INTl3h = Przerwanie 13 (szesnastkowo).

EDD = specyfikacja EnchancedDisk Drive (Phoenix/ATA).

Tabela 7.14. Standardowe nazwy prefiksów i symbole wielokrotności binarnych

Prefiksy dziesiętne:

Wielokrotność

Symbol

Nazwa

Wartość

103

k

Kilo

1 000

106

M

Mega

1 000 000

109

G

Giga

1 000 000 000

1012

T

Tera

1 000 000 000 000

1015

P

Peta

1 000 000 000 000 000

1018

E

Eksa

1 000 000 000 000 000 000

1021

Z

Zeta

1 000 000 000 000 000 000 000

Zwróć uwagę, że symbol dla kilo (k) jest zapisany małą literą (co jest zgodne ze standardem SI), natomiast pozostałe prefiksy dziesiętne są zapisywane wielkimi literami.

Tabela 7.15. Daty wyznaczające moment zmiany maksymalnej pojemności dysków obsługiwanych przez

układy ROM BIOS

Data pojawienia się układu BIOS

Maksymalna obsługiwana pojemność

Sierpień 1994

528 MB

Styczeń 1998

8,4 GB

Wrzesień 2002

137 GB

Jeśli BIOS nie jest zgodny z tą specyfikacją (obsługa pojemności przekraczających 8,4 GB), możliwe są na­stępujące trzy rozwiązania:

(http://www.maxtordirect.com).

♦ Zainstalowanie oprogramowania aktualizującego, dodającego obsługę pojemności przekraczających 8.4 GB.

Maksymalna pojemność (bajty)

Pojemność (dziesiętnie)

Pojemność (binarnie)

528 482 304

528,48 MB

504,00 MiB

7 927 234 560

7,93 GB

7,38 GiB

8 422 686 720

8,42 GB

7,84 GiB

8 455 716 864

8,46 GB

7,88 GiB

136 902 082 560

136,90 GB

127,50 GiB

137 438 953 472

137,44 GB

128.00 GiB

144 1 15 188 175 855 360

144,12 PB

128,00 PiB

9 444 732 965 739 290 430 000

9,44 ZB

8,00 ZiB

MB = megabajt (milion bajtów).

MiB = mebibajt.

GB = gigabajt (miliard bajtów/

GiB = gibibajt.

PB = pelabajt (kwadrylion bajtów).

PiB = pebibajt.

ZB = zetabajt (sekstylion bajtów).

ZiB = zebibajt.

Prefiksy binarne:

Wielokrotność

Symbol

Nazwa

Pochodzenie

Wartość

2 3

Ki

Kibi

Kilo binarne

1 024

26

Mi

Mebi

Mega binarne

1 048 576

29

Gi

Gibi

Giga binarne

1 073 741 824

212

Ti

Tebi

Tera binarne

1 099 511 627 776

215

Pi

Pebi

Peta binarne

1 125 899 906 842 624

218

Ei

Exbi

Eksa binarne

1 152 921 504 606 846 980

221

Zi

Zebi

Zeta binarne

1 180 591 620 717 411 300 000

Z wymienionych rozwiązań pierwsze jest najbardziej wskazane, ponieważ nie wiąże się z poniesieniem kosztów. W celu sprawdzenia, czy dostępna jest nowsza wersja BIOS (obsługująca dyski o większej pojem­ności) dla używanej płyty głównej, należy zajrzeć na stronę internetowąjej producenta. Jeśli takiej wersji nie ma, kolejnym zalecanym ruchem jest zastosowanie karty, takiej jak ATA Pro Flash firmy Micro Firmware lub Ultra ATA/133 PCI firmy Maxtor. Niemal nigdy nie polecam ostatniego rozwiązania, ponieważ polega ono na zainstalowaniu oprogramowania aktualizującego w sektorze rozruchowym dysku twardego. Może to być przyczyną kilku problemów pojawiających się w trakcie ładowania systemu z innych napędów, instalo­wania nowych dysków lub przywracania danych.

CHS kontra LBA

Istnieją dwie podstawowe metody adresowania (numerowania) sektorów na dysku ATA. Pierwsza metoda określana jest skrótem CHS (ang. Cylinder Head Sector) od trzech współrzędnych wykorzystywanych do za­adresowania każdego sektora na dysku. Druga metoda nazywana jest LBA (ang. Logical Błock Address) i do adresowania sektorów wykorzystuje ona tylko jedną liczbę. Metoda CHS korzysta ze specyfiki budowy dysku (i jego sposobu pracy), natomiast LBA rozwinęło się w kierunku prostszej, bardziej logicznej metody nume­rowania sektorów niezależnego od wewnętrznej budowy urządzenia.

► ► Więcej informacji na temat cylindrów, głowic i sektorów w dysku znajduje się w podrozdziale „Działanie dysku twardego", strona 717.

Podczas sekwencyjnego odczytywania danych z dysku w trybie CHS, proces rozpoczyna się od cylindra 0, gło­wicy 0 i sektora 1 (jest to pierwszy sektor na dysku). Następnie odczytywane są wszystkie sektory z pierwszej ścieżki i wybierana jest kolejna głowica; odczytywane są wszystkie sektory z tej ścieżki — i tak dalej przez wszystkie głowice tego cylindra. Następnie wybierany jest następny cylinder i sekwencja rozpoczyna się ponownie. Można porównać tę metodę do licznika kilometrów w samochodzie — trzeba przejść przez wszyst­kie numery sektorów przed zmianą numeru głowicy o jeden, trzeba również przejść przez wszystkie numery głowic przez zmianą o jeden numeru cylindra.

Proces odczytu sekwencyjnego dysku w trybie LBA rozpoczyna się od sektora 0, następnie odczytywany jest sektor 1, następnie 2 itd. Pierwszy sektor dysku w trybie CHS to 0,0,1, natomiast ten sam sektor w trybie LBA to po prostu 0.

Jako przykład wyobraźmy sobie dysk z jednym talerzem, dwoma głowicami (wykorzystane są obie strony talerza), dwiema ścieżkami na każdym talerzu (cylindry) i dwóch sektorach na ścieżkę. Dysk taki ma dwa cylindry (ścieżki na stronie), dwie głowice (strony) i dwa sektory na ścieżkę. Zatem dysk ma pojemność 8 sektorów (2 * 2 * 2). Numerowanie cylindrów i głowic rozpoczyna się od zera, natomiast sektorów od 1. Stosując adresowanie CHS możemy powiedzieć, że pierwszy sektor na dysku to cylinder 0, głowica 0 i sektor 1 (0.0,1); drugi sektor to 0,0,2; trzeci 0,1,1; czwarty 0,1,2; itd., aż do ostatniego sektora 1,1,2.

Teraz wyobraźmy sobie, że chcemy pobrać osiem sektorów i zamiast odwoływać się bezpośrednio do fizycz­nych cylindrów, głowic i sektorów, możemy odwoływać się do sektora 0.1,2 w trybie CHS jako sektora 3 w try­bie LBA. W tabeli 7.16 pokazane są odpowiadające sobie numery sektorów w trybie CHS i LBA dla naszego hipotetycznego ośmiosektorowego dysku.

Tabela 7.16. Numery sektorów CHS i LBA dla hipotetycznego dysku z dwoma cylindrami, dwoma głowicami i dwoma sektorami na ścieżkę (w sumie osiem sektorów)

Tryb

Odpowiadające sobie numery sektorów

CHS:

0,0,1

0,0,2

0,1,1

0,1,2

1,0,1

1,0,2

1,1,1

1.1,2

LBA:

0

1

2

3

4

5

6

7

Jak można się przekonać, analizując ten przykład, wykorzystanie adresowania LBA jest prostsze do stosowa­nia; jednak gdy powstawały pierwsze komputery PC, BIOS i interfejs ATA korzystały z adresowania CHS.

Konwersje CHS-LBA i LBA-CHS

Te same sektory mogą być adresowane w trybie CHS i LBA. Konwersja z CHS na LBA jest dla podanego dysku niesprzeczna, zawsze można skonwertować adres LBA na CHS i odwrotnie. Specyfikacja ATA-1 określa prosty wzór wykorzystywany przy konwersji adresu CHS na LBA:

LBA = (((C*HPC) + H) * SPT) + S -1

Przekształcając ten wzór, możemy konwertować adresy LBA na CHS:

C = int (LBA / SPT / HPC) H = int((LBA / SPT) mod HPC) S = (LBA mod SPT) + 1

W powyższych wzorach wykorzystano następujące skróty: LBA = logiczny adres bloku, C = cylinder, H = głowica. S = sektor,

HPC = głowice na cylinder (całkowita ilość głowic), SPT = sektory na ścieżkę,

intx = część całkowita liczby,

X mod Y = reszta z dzielenia X przez Y.

Korzystając z tych wzorów możemy policzyć adres LBA dla każdego adresu CHS i odwrotnie. W tabeli 7.17 pokazano odpowiadające sobie adresy CHS i LBA, zakładając użycie dysku z 16 383 cylindrami, 16 głowi­cami i 63 sektorami na ścieżkę.

Tabela 7.17. Odpowiadające sobie numery sektorów CHS i LBA dla dysku z 16 383 cylindrami, 16 głowicami i 63 sektorami na ścieżkę (w sumie 16 514 064 sektorów)

Cylinder

Głowica

Sektor

LBA

0

0

1

0

0

0

63

62

1

1

1

63

999

15

63

1 007 999

1 000

0

1

1 008 000

9 999

15

63

10 079 999

10 000

0

1

10 080 000

16 382

15

63

16 514 063

Polecenia BIOS a polecenia ATA

0x08 graphic
Oprócz dwóch metod adresowania sektorów (CHS i LBA) istnieją jeszcze dwa dodatkowe poziomy interfejsu, gdzie zachodzi adresowanie sektorów. Jednym poziomem interfejsu jest komunikacja systemu operacyjnego z BlOS-em (z wykorzystaniem poleceń BIOS), natomiast drugim komunikacja BIOS-u z dyskiem (z wykorzy­staniem poleceń ATA). Polecenia wykorzystywane na tych dwóch poziomach są różne, ale obsługują one za­równo tryb CHS, jak i LBA. Na rysunku 7.13 pokazano te dwa poziomy interfejsów.


Rysunek 7.13.

Związek występujący pomiędzy układem BIOS i adresowaniem fizycznych sektorów (na tym rysunku L-CHS należy rozumieć jako logiczny CHS, natomiast P-CHS jako fizyczny CHS)


Gdy system operacyjny komunikuje się z BlOS-em w celu odczytu lub zapisu sektora, wykonuje on polece­nie za pośrednictwem przerwania programowego INTl3h (nie jest tym samym, co przerwanie IRQ), które jest odpowiedzialne za wywoływanie procedur BIOS odpowiedzialnych za dostęp do dysku. Różne proce­dury INT13h pozwalają na odczyt lub zapis sektora przy wykorzystaniu adresowania CHS lub LBA. Proce­dury te konwertują polecenia poziomu BIOS-u na polecenia poziomu sprzętowego ATA, które są wysyłane przez porty magistrali I/O do kontrolera. Polecenia poziomu sprzętowego ATA mogą korzystać z adresowa­nia CHS lub LBA i. w zależności od rodzaju trybu, narzucane są różne ograniczenia. To, czy BIOS i dysk ko­rzystają z adresowania CHS czy LBA, zależy od pojemności dysku, zaawansowania oprogramowania BIOS-u, rodzaju dysku, ustawień BIOS-u i systemu operacyjnego.

Ograniczenia CHS (bariera 528 MB)

Oryginalny sterownik dysku twardego wbudowany w BIOS jest sterowany przy wykorzystaniu przerwania 13h (13 szesnastkowo). Posiada on funkcje odczytu i zapisu poszczególnych sektorów dysków. Standardowe funkcje INT13h wymagają stosowania adresowania sektorów z wykorzystaniem cylindra, głowicy i sektora — metoda ta znana jest pod nazwą adresowania CHS. Interfejs ten jest wykorzystywany do uzyskiwania do­stępu do dysku jedynie przez system operacyjny i niskopoziomowe narzędzia dyskowe. Interfejs dla BIOS-u korzystający z przerwania INT13h został stworzony w firmie IBM w roku 1983 na potrzeby kontrolera dysku twardego dla komputera PC XT i włączony został do BIOS-u płyty głównej komputera AT. W tabeli 7.18 przedstawione zostały ograniczenia i maksymalne wartości parametrów dla INT13h.

Tabela 7.18. Ograniczenia parametrów przerwania BIOS INT13h

Pole

Wielkość pola

Wartość maksymalna

Przedział wartości

Liczba wartości

Cylinder

10 bitów

1024

0-1023

1024

Głowica

8 bitów

256

0-255

256

Sektor

6 bitów

64

1-63

63

Określenie maksymalnych wartości reprezentowanych przez daną liczbę bitów jest proste. Na przykład, jeśli jest hotel z dwucyfrowymi numerami pokojów, to może być jedynie 100 (102) pokojów numerowanych od 0 do 99. Liczby w adresowaniu CHS wykorzystywanym w interfejsie BIOS INT13h są binarne i w przypadku liczby 10-bitowej wykorzystywanej do adresowania cylindrów, mamy maksymalnie 1024 (210) wartości nu­merowanych od 0 do 1023. Ponieważ głowica jest identyfikowana przez liczbę 8-bitową, maksymalna liczba głowic to 256 (28) numerowanych od 0 do 255. 1 na koniec, sektory na ścieżce są identyfikowane za pomocą liczby 6-bitowej, co normalnie daje 64 (26) sektory, ale ponieważ sektory są numerowane od 1 (zamiast od 0), rozmiar jest ograniczony do zakresu 1 - 63, co daje maksymalnie 63 sektory na ścieżce.

Te ograniczenia BIOS-u występują dla wszystkich jego odmian korzystających z adresowania CHS. Korzystając z adresowania CHS na poziomie BIOS-u, można zaadresować dowolny sektor dysku z 1024 cylindrami, 256 głowicami i 63 sektorami na ścieżce. Ponieważ sektor ma wielkość 512 bajtów, wynik jest następujący:

Maksymalna wartość

Cylindry

1024

Głowice

256

Sektory na ścieżkę

63

Całkowita ilość sektorów

16515072

Bajtów

8455716864

Megabajtów (MB)

8456

Mebibajtów (MiB)

8064

Gigabajtów (GB)

8.4

Gibibajtów (GiB)

7.8

Z tych obliczeń wynika, że maksymalna pojemność dysku adresowanego przez standardowy interfejs BIOS-u INT13h wynosi około 8,4 GB (gdzie GB to miliard bajtów) lub 7,8 GiB (gdzie GiB oznacza gibibajty).

Niestety, ograniczenia procedur BIOS INT13h nie sąjedynymi. Istnieją również ograniczenia w samym inter­fejsie ATA. Ograniczenia ATA CHS są zamieszczone w tabeli 7.19.

Tabela 7.19. Ograniczenia parametrów standardu ATA CHS

Pole

Wielkość pola

Maksymalna wartość

,

Przedział wartości

Liczba wartości

Cylinder

16 bitów

65536

0-65535

65536

Głowica

4 bity

16

0-15

16

Sektor

8 bitów

256

1 -255

255

Jak można zauważyć, interfejs ATA korzysta z innych wielkości pól do przechowywania wartości CHS. Zwróć uwagę, że w przypadku cylindrów ograniczenia ATA są mniejsze niż ograniczenie BIOS, natomiast w przypad­ku głowic ograniczenia są większe niż w BIOS. Ograniczenia pojemności w trybie CHS dla interfejsu ATA-1 do ATA-5 są następujące:

Maksymalna wartość

Cyl indry

65536

Głowice

16

Sektory na ścieżkę

255

Całkowita ilość sektorów 267386880

Bajtów

136902082560

Megabajtów (MB)

136902

Mebibajtów (MiB)

130560

Gigabajtów (GB)

136.9

Gibibajtów (GiB!

127.5

Gdy połączymy ograniczenia parametrów BIOS i ATA CHS, w wyniku otrzymamy wartości przedstawione w tabeli 7.20.

Tabela 7.20. Połączone ograniczenia BIOS i ATA CHS

Pole

Ograniczenie BIOS CHS

Ograniczenie ATA CHS

Wynikowe ograniczenie parametru CHS

Cylinder

1 024

65 536

1 024

Głowica

256

16

16

Sektor

63

255

63

Maksymalna liczba sektorów

16 515 072

267 386 880

1 032 192

Maksymalna pojemność

8,4 GB

136,9 GB

528 MB

Jak widać, wynikowe ograniczenia trybu CHS dają w efekcie maksimum 1024 cylindry, 16 głowic i 63 sektory, czyli maksymalna pojemność takiego dysku to 528 MB. Wielkość ta znana jest pod nazwą bariery 528 MB lub 504 MiB, która miała wpływ na niemal wszystkie komputery PC zbudowane przed rokiem 1993.

Translacja CHS (łamanie bariery 528 MB)

Istnienie bariery ograniczającej pojemność dysków do 528 MB nie było problemem do czasu, gdy nie były dostępne dyski o tak dużej pojemności. Jednak w roku 1994 technologia wytwarzania dysków rozwinęła się do tego stopnia, że możliwe było produkowanie tak dużych dysków, że niemożliwe stało się stosowanie adresowa­nia ograniczanego przez BIOS i interfejs ATA. Należało znaleźć rozwiązanie tego problemu.

W roku 1993 producent oprogramowania BIOS rozpoczął prace nad rozszerzeniem BIOS-u mającym na celu obejście ograniczeń adresowania CHS. W styczniu 1994 roku została opublikowana specyfikacja BIOS En-hanced Disk Drive (EDD), która została później ponownie opublikowana przez komitet Tl3 (odpowiedzialny za interfejs ATA) jako BIOS Enchanced Disk Drive Semices (EDD). Dokument EDD opisuje kilka metod obejścia ograniczeń poprzednich wersji BIOS bez powodowania problemów ze zgodnością z istniejącym oprogramowaniem. Metodami tymi są:

Metody obejścia problemu adresowania CHS nazywane są translacją, ponieważ stanowią one dodatkowe procedury BIOS-u dokonujące tłumaczenia parametrów CHS z maksimów ATA na maksima BIOS-u i od­wrotnie. Aby metody te stały się standardem w przemyśle PC, Phoenix udostępnił dokumentację EDD i po­zwolił na bezpłatne stosowanie tej technologii, nawet przez jego konkurentów, takich jak AMI i Award. Komitet Tl 3 przyjął standard EDD i włączył go do oficjalnych dokumentów standardu ATA.

Od roku 1994 większość BIOS-ów miała zaimplementowane metody translacji zaprojektowane przez firmę Phoenix, co umożliwiło stosowanie dysków o maksymalnej pojemności 8,4 GB. Poprawka ta wymaga stoso­wania translacji parametrów na poziomie BIOS. czyli takie modyfikacje numerów cylindrów, głowic i sekto­rów, aby mieściły się w zakresach udostępnianych przez BIOS. Istnieją dwa typy translacji. Pierwsza korzysta z techniki zwanej przesunięciem bitów CHS (często nazywana w programach BIOS Large lub Extended CHS), druga wykorzystuje technikę LBA (w programach BIOS-u nazywaną LBA). Techniki te odnoszą się do różnych matematycznych metod realizujących to samo zadanie: konwersję jednego zbioru adresów CHS na inny.

Translacja przesunięcia bitów CHS manipuluje numerami cylindrów i głowic, ale nie zmienia numerów sek­torów. Rozpoczynając od fizycznych cylindrów (zgłaszanych przez dysk) i korzystając z prostych działań dzielenia i mnożenia, osiąga się zmienione wartości numerów cylindrów i głowic. Wartości określające sek­tory nie są modyfikowane. Termin przesunięcie bitów pochodzi stąd, że operacje dzielenia i mnożenia są wy­konywane w programie BIOS przez przesuwanie bitów w adresie CHS.

W przypadku translacji z przesunięciem bitów CHS, zgłaszane przez dysk parametry są nazywane P-CHS. natomiast parametry zmienione przez BIOS — L-CHS. Po dokonaniu odpowiednich ustawień w programie konfiguracyjnym BIOS, adresy L-CHS są automatycznie tłumaczone przez BIOS na adresy P-CHS. Pozwala to systemowi operacyjnemu wysyłać do BIOS-u polecenia, korzystając z parametrów L-CHS, a BIOS auto­matycznie skonwertuje je na P-CHS podczas komunikacji z dyskiem wykorzystującej polecenia ATA. W ta­beli 7.21 przedstawiono zasady wyliczania translacji CHS z przesunięciem bitów.

Tabela 7.21. Zasady translacji CHS z przesunięciem bitów

Cylindry fizyczne (raportowane przez dysk)

Głowice fizyczne

Cylindry logiczne

Głowice logiczne

Maksymalna pojemność

1 < C <= 1 024

1 < H <= 16

C = C

H = H

528 MB

1 024 < C <= 2 048

1 <H<= 16

C = C72

H = Hx2

1 GB

2 048 < C <= 4 096

1< H <= 16

C = C/4

H = Hx4

2,1 GB

4 096<C<=8 192

1 < H <= 16

C = C/8

H = Hx8

4,2 GB

8 192<C<= 16 384

1 <H<= 16

C = C/16

H = Hxl6

8,4 GB

Liczba sektorów raportowana przez dysk nie jest modyfikowana.

W niektórych systemach operacyjnych, na przykład DOS, Win9x, Me, ilość logicznych głowic nie może przekraczać 255.

Translacja CHS z przesunięciem bitów polega na dzieleniu liczby fizycznych cylindrów przez potęgę dwójki w taki sposób, aby obniżyć tę wartość poniżej granicznej liczby 1024 sektorów narzucanej przez BIOS INT13h i mnożenie ilości głowic przez tę samą potęgę dwójki. Liczba określająca numer sektora pozostaje niezmie­niona. Wykorzystywana potęga dwójki zależy od całkowitej liczby cylindrów — zostało to przedstawione w tabeli 7.21.

Poniżej przedstawiony został przykład translacji CSH z przesunięciem bitów:

Parametry

Parametry L-CHS

P-CHS

z przesunięciem bitów

Cyl indry

8000

1000

Głowice

16

128

Sektory na ścieżkę

63

63

Razem sektorów

8064000

8064000

Razem bajtów

4128768000

4128768000

Megabajtów (MB) 4129 4129

Mebibajtów (MiB) 3938 3938

Gigabajtów (GB) 4.13 4.13

Gibibajtów (GiB) 3.85 3.85

Przykład ten przedstawia dysk z 8000 cylindrów i 16 głowicami. Liczba fizycznych sektorów znacznie prze­kracza ograniczenie BIOS-u — 1024, więc jeżeli w programie konfiguracyjnym BIOS uruchomiona zostanie translacja CSH z przesunięciem bitów. BIOS dzieli liczbę cylindrów przez 2, 4, 8 lub 16 tak, aby obniżyć tę liczbę poniżej 1024. W tym przypadku zastosowane zostanie dzielenie przez 8, co daje nową logiczną liczbę cylindrów 1000 — co jest wartością mniejszą od 1024. Ponieważ liczba cylindrów jest dzielona przez 8, o tyle samo mnożona jest liczba głowic, co w wyniku daje 128 głowic logicznych— liczba ta również jest mniejsza od limitu narzucanego przez BIOS.

Mimo że napęd raportuje 8000 cylindrów i 16 głowic, BIOS i oprogramowanie (w tym system operacyjny) widzi dysk mający 1000 cylindrów i 128 głowic. Liczba 63 sektorów na ścieżkę nie zmienia się w czasie tych przeliczeń. W wyniku przedstawionych operacji BIOS może obsłużyć cały dysk 4,13 GB i nie jest ograniczo­ny do pierwszych 528 MB.

Po zainstalowaniu dysku nie trzeba wykonywać żadnych obliczeń translacji — BIOS wykona je automatycz­nie. Należy jedynie pozwolić na wykrycie przez BIOS parametrów P-CHS i uruchomić translację w progra­mie konfiguracyjnym BIOS-u. Ustawienie opcji Large lub ECHS uruchamia translację CHS z przesunięciem bitów. Za pozostałą część zadań odpowiedzialny jest BIOS.

Translacja z przesunięciem bitów CHS jest prostym i szybkim schematem, który może działać ze wszystkimi dyskami, ale nie może prawidłowo przekształcać wszystkich teoretycznie możliwych geometrii dysków o po­jemności poniżej 8,4 GB. Aby rozwiązać ten problem, w specyfikacji ATA-2 został umieszczony dodatek nakazujący raportowanie określonych zakresów geometrii, tak aby zapewnić prawidłowe działanie translacji z przesunięciem bitów. Dlatego wszystkie dyski zgodne ze specyfikacją ATA-2 (lub kolejnymi) mogą korzy­stać z tej metody translacji.

Bariera 2,1 GB

Niektóre BlOS-y nieprawidłowo przydzielały 12. bit w polu cylindrów P-CHS i przez to maksymalna liczba cylindrów została ograniczona do 4096. W połączeniu ze standardowymi ograniczeniami do 16 głowic i 63 sek­torów, powodowało to niemożność obsługi dysków o wielkości większej niż 2,1 GB. Na szczęście ten problem ograniczył się do niewielkiej liczby systemów z oprogramowaniem BIOS z pierwszej połowy 1996 roku.

Bariera 4,2 GB

Nawet stosując translację z przesunięciem bitów, napotkano na kilka problemów. Z powodu wewnętrznej bu­dowy systemów DOS i Windows 9x/Me nie jest możliwa prawidłowa obsługa 256 głowic. Jest to problem do­tyczący obsługi dysków większych niż 4,2 GB, ponieważ translacja CHS z przesunięciem bitów zwykle daje w wyniku 256 logicznych głowic, tak jak pokazane jest to na poniższym przykładzie:

Parametry P-CHS

Parametry L-CHS z przes. bitów

Cylindry

12000

750

Głowice

16

256

Sektory na ścieżkę

63

63

Razem sektorów

12096000

12096000

Razem bajtów Megabajtów (MB)

Mebibajtów (MiB) Gigabajtów (GB)

Gibibajtów (GiB)

6193152000 6193 5906 6.19 5.77

6193152000 6193 5906 6.19 5.77

Sposób ten zawodzi, gdy próbujemy zainstalować Windows 9x/Me (lub DOS) na dysku większym niż 4.2 GB, ponieważ w parametrach L-CHS mamy wpisaną wartość 256 głowic. Każdy BIOS implementujący ten schemat spotyka się z barierą 4,2 GB. więc zainstalowanie większego dysku i wybranie translacji CHS z przesunięciem bitów powoduje, że dysk nie będzie działał prawidłowo. Problem ten nie występuje w Win­dows NT/2000/XP.

^

Przestawiony tu problem nie jest błędem BIOS-u; problem tkwi w kodzie systemu plików DOS, Win9x i Me, w których liczba sektorów na ścieżkę przechowywana jest w postaci wartości 8-bitowej. Licz­ba 256 powoduje problemy, ponieważ 256 = lOOOOOOOOb, co wymaga zastosowania 9 bitów. Największą możliwą wartością, jaką można zapisać w 8-bitowym rejestrze jest 255 = llllllllb i dlatego wartość ta jest maksymalną liczbą głowic obsługiwanych przez system operacyjny.

Aby rozwiązać ten problem, translacja CHS z przesunięciem bitów została zmieniona przez dodanie dodat­kowej reguły. Jeżeli napęd raportuje 16 głowic i więcej niż 8192 cylindry (co powoduje wygenerowanie 256 głowic po translacji), zakłada się, że ilość głowic P-CHS wynosi 15 (zamiast 16) i w celu kompensacji ilość cylindrów P-CHS jest mnożona przez 15/16. Skorygowane ilości cylindrów i głowic są poddawane normalnej translacji. Poniżej przedstawiamy przykład takiej operacji:

Parametry Parametry L-CHS Skorygowane parametry P-CHS z przes. bitów L-CHS z przes. bitów

Cylindry

12000

750

800

Głowice

16

256

240

Sektory na ścieżkę

63

63

63

Razem sektorów

12096000

12096000

12096000

Razem bajtów

6193152000

6193152000

6193152000

Megabajtów (MB)

6193

6193

6193

Mebibajtów (MiB)

5906

5906

5906

Gigabajtów (GB)

6.19

6.19

6.19

Gibibajtów (GiB)

5.77

5.77

5.77

Jak widać na tym przykładzie, napęd z 12 000 cylindrów i 16 głowicami przy użyciu standardowej translacji CHS daje w wyniku 750 logicznych cylindrów i 256 głowic. Zmodyfikowana metoda translacji wykonuje dwukrotną translację, na początku zmieniając 16 głowic na 15, a następnie mnożąc 12 000 cylindrów przez 16/15, co daje w wyniku 12 800 cylindrów. Następnie nowa liczba cylindrów jest poddawana translacji CHS z przesunięciem bitów poprzez podział tej liczby przez 16. co w wyniku daje 800 cylindrów logicznych. Po­dobnie 15 głowic jest mnożone przez 16. co daje w wyniku 240 głowic logicznych. Jeżeli liczba logicznych cylindrów przekracza 1024, jest obcinana do tej wartości. W rezultacie takich przekształceń 12 000 cylindrów i 16 głowic P-CHS zostało zamienione na 800 cylindrów i 240 głowic (zamiast 750 cylindrów i 256 głowic) L-CHS, dzięki czemu omija się błąd w systemach operacyjnych DOS, Win9x i Me.

Do tej pory nasze przykłady były bardzo proste — parametry L-CHS były przeliczane na parametry P-PCH dla tej samej pojemności. Niestety, nie zawsze da się działać w ten sposób. Kilka dysków 8,4 GB z firm Maxtor, Quantum, Seagate i innych raportują 16 383 cylindry i 16 głowic. W przypadku tych napędów translacja za­działa w sposób następujący:

Parametry Parametry L-CHS Skorygowane parametry

P-CHS z przes. bitów L-CHS z przes. bitów

Cylindry

16383

1023

1024

Głowice

16

256

240

Sektory na ścieżkę

63

63

63

Razem sektorów

16514064

16498944

15482880

Razem bajtów

8455200768

8447459328

7927234560


0x08 graphic


Zwróćmy uwagę, że zmodyfikowana translacja CHS daje w wyniku 7,93 GB z całkowitych 8.46 GB dostęp­nych na dysku. Faktycznie te parametry (z 240 głowicami) są absolutnym maksimum, jakie można obsłużyć, korzystając ze zmodyfikowanego schematu CHS z przesunięciem bitów. Na szczęście dostępny jest inny tryb translacji, który pozwala lepiej obsługiwać takie sytuacje.

Translacja korzystająca z LBA

Translacja korzystająca z LBA nie nakłada żadnych sztucznych limitów geometrii napędu, ale działa jedynie w przypadku dysków obsługujących adresowanie LBA na poziomie interfejsu ATA. Jednak, na szczęście, niemal wszystkie dyski ATA większe niż 2 GB obsługują LBA. Procedura translacji korzystająca z LBA po­biera parametry CHS raportowane przez dysk, mnoży je w celu obliczenia maksymalnej wartości adresu LBA (całkowita ilość sektorów dysku) i korzysta z tej wyliczonej wartości do wyprowadzenia przekształconych pa­rametrów CHS. W tabeli 7.22 pokazano zasady translacji korzystającej z LBA.

Tabela 7.22. Zasady translacji korzystającej z LBA

Całkowita liczba sektorów

Cylindry logiczne

Głowice logiczne

Sektory logiczne

1<T<= 1 032 192

T/l 008

16

63

1 032 192<T<=2 064 384

T/2 016

32

63

2 064 384<T<=4 128 768

T/4 032

64

63

4 128 768<T<=8 257 536

T/8 064

128

63

8 257 536 <T<= 16 450 560

T/16 065

255

63

T = Całkowita liczba sektorów obliczona przez pomnożenie raportowanych parametrów dysku P-CHS (C*H*S).

W przypadku translacji korzystającej z LBA liczba sektorów jest ustalona na 63, natomiast liczby cylindrów i głowic są mnożone i dzielone przez wyliczoną wartość zależną od całkowitej liczby sektorów. W wyniku ta­kiej operacji otrzymujemy zbiór parametrów L-CHS wykorzystywanych przez system operacyjny do komu­nikacji za pośrednictwem BIOS-u. Wartości L-CHS są następnie przekształcane na adresy LBA na poziomie kontrolera ATA. Ponieważ tryb LBA jest bardziej elastyczny przy translacji, powinien być on w większości przypadków wykorzystywany zamiast translacji CHS z przesunięciem bitów.

W typowej sytuacji zarówno translacja CHS z przesunięciem bitów, jak i korzystająca z LBA generuje tę sa­mą geometrię L-CHS. Powinno być to zawsze spełnione dla dysków raportujących 63 sektory na ścieżkę i 4, 8 lub 16 głowic. W kolejnym przykładzie oba schematy translacji dają identyczne wartości L-CHS.

Parametry

Parametry

Parametry

P-CHS

L-CHS z

L-CHS

przes. bitów

z LBA

Cyl indry

8192

1024

1024

Głowice

16

256

240

Sektory na ścieżkę

63

63

63

Razem sektorów

8257536

8257536

8257536

Razem bajtów

4227858432

4227858432

4227858432

Megabajtów (MB)

4228

4228

4228

Mebibajtów (MiB)

4032

4032

4032

Gigabajtów (GB)

4.23

4,23

4.23

Gibibajtów (GiB)

3.94

3.94

3.94

Jeżeli jednak dysk raportuje inną niż 63 liczbę sektorów na ścieżkę lub posiada inną niż 4, 8 lub 16 liczbę gło­wic, translacja z wykorzystaniem LBA nie daje tych samych parametrów co translacja CHS z przesunięciem bitów. W poniższym przykładzie pokazaliśmy różne wyniki translacji.

Parametry

Parametry

Parametry

P-CHS

L-CHS

L-CHS

z przes. bitów

z LBA

Cylindry

16383

1024

1024

Głowice

16

240

255

Sektory na ścieżkę

63

63

63

Razem sektorów

16514064

15482880

16450560

Razem bajtów

8455200768

7927234560

8422686720

Megabajtów (MB)

8455

7927

8423

Mebibajtów (MiB)

8064

7560

8033

Gigabajtów (GB)

8.46

7,93

8.42

Gibibajtów (GiB)

7.87

7.38

7.84

Translacja z wykorzystaniem LBA obsługuje 8,42 GB, co stanowi około 500 MB więcej niż zmodyfikowana translacja CHS z przesunięciem bitów. Ważniejsze jednak jest. że translacje te są różne, co może powodować problemy w przypadku zmiany trybu translacji dla dysku zawierającego dane. Jeżeli sformatujesz dysk, korzy­stając z translacji CHS z przesunięciem bitów, a następnie zmienisz ustawienie na translację z wykorzystaniem LBA, logiczna geometria może się zmienić i nie będzie można korzystać z dysku do czasu jego ponownego podzielenia na partycje i sformatowania (co spowoduje usunięcie danych). Dlatego nie planuj zmian sposobu translacji parametrów dysku bez sporządzenia kopii zapasowej danych na nim zapisanych.

Niemal wszystkie BlOS-y komputerów PC od roku 1994 posiadały możliwość uruchomienia w programie konfiguracyjnym BIOS translacji, jak również posiadały możliwość wyboru trybu translacji lub jego całko­witego wyłączenia. Jeżeli dostępne są tryby translacji CHS z przesunięciem bitów i LBA, powinieneś naj­prawdopodobniej wybrać metodę LBA, ponieważ jest bardziej efektywna i elastyczna. Translacja z wykorzy­staniem LBA pozwala również obejść błąd systemu operacyjnego związany z granicą 4,2 GB, ponieważ ze swojej natury korzysta z 255 logicznych głowic.

Najczęściej możesz sprawdzić, czy BIOS obsługuje translację przez podanie więcej niż 1024 cylindrów w pro­gramie konfiguracyjnym BIOS, ale takie rozwiązanie może prowadzić do błędów. Najlepszym wyjściem jest sprawdzenie parametrów ustawiania translacji na stronie z ustawieniami dysku IDE w programie konfigura­cyjnym BIOS. Więcej informacji na ten temat znajduje się w rozdziale 5., „BIOS". Jeżeli możesz wybrać ustawienie LBA lub ECHS (czasami nazywane Large lub Extended), wskazuje to na fakt, że BIOS zapewnia obsługę translacji. Większość BIOS-ów datowanych na 1994 rok lub nowszych posiada takie możliwości. Jednak w przypadku niektórych układów AMI BIOS z połowy lat 90. ubiegłego wieku ustawienie LBA znaj­dowało się w innym menu, niż ustawienia konfiguracyjne dysku twardego. Jeżeli Twój system nie wykorzy­stuje translacji parametrów, możesz pobrać poprawkę oprogramowania z witryny producenta dysku lub zain­stalować kartę BIOS zawierającego takie możliwości, na przykład ATA Pro Flash z firmy Micro Firmware. Kolejną kartą BIOS obsługującą dyski o pojemności powyżej 137 GB jest Ultra ATA/133 PCI Adapter Card firmy Maxtor. Karta oferuje też przepustowość najszybszych dysków ATA, wynoszącą 133 MB/s.

W tabeli 7.23 zestawione zostały cztery sposoby, w jakie dzisiejsze BlOS-y obsługują adresowanie sektorów na dysku: standardowy CHS (bez translacji), rozszerzone adresowanie CHS, translacja LBA i czyste adresowanie LBA.

Tabela 7.23. Metody adresowania sektorów dysku

Tryb BIOS

System operacyjny do BIOS

BIOS do napędu

Standard — bez translacji

P-CHS

P-CHS

Translacja CHS z przesunięciem bitów (ECHS)

L-CHS

P-CHS

Translacja z wykorzystaniem LBA (LBA)

L-CHS

LBA

Czyste LBA (EDD BIOS)

LBA

LBA

W przypadku standardowego CHS istnieje tylko jeden możliwy sposób translacji wewnątrz dysku. Prawdziwa geometria dysku jest całkowicie niewidoczna w przypadku nowoczesnych dysków ATA. Cylindry, głowice i sektory drukowane na etykiecie opisują czysto logiczną geometrię i nie określają aktualnych parametrów fizycznych. Standardowe adresowanie CHS ograniczone jest do 16 głowic i 1024 cylindrów, co daje górną granicę 504 MiB (528 MB).

W programach konfiguracyjnych BIOS-u ustawienie takie jest często nazywane Normal i jego wybranie po­woduje, że BIOS zachowuje się jak bardzo stary BIOS bez translacji. Ustawienie to można stosować w przy­padku dysków, które mają mniej niż 1024 cylindry lub jeżeli chcesz użyć dysku w systemie operacyjnym in­nym niż DOS, który nie obsługuje translacji.

Ustawienie ECHS lub Large w programie konfiguracyjnym BIOS uruchamia translację CHS z przesunięciem bitów i w większości BlOS-ów od roku 1997 stosowana jest metoda skorygowana (maksymalnie 240 logicz­nych głowic).

Ustawienie w programie konfiguracyjnym BIOS opcji LBA uruchamia translację korzystającą z LBA. a nie czysty tryb LBA. Opcja ta uaktywnia pracę oprogramowania z wykorzystaniem parametrów L-CHS, natomiast BIOS komunikuje się z napędem w trybie LBA.

Jeżeli masz dysk o pojemności 8,4 GB lub mniejszej i przełączysz się pomiędzy trybem Standard CHS, ECHS lub LBA, BIOS może zmieniać (tłumaczyć) geometrię. To samo stanie się, jeżeli prze­łożysz dysk sformatowany w starym komputerze nieobsługującym trybu LBA, do nowego, korzysta­jącego z trybu LBA. Powoduje to, że logiczna geometria CHS widziana przez system operacyjny zmienia się i dane znajdują się na niewłaściwych, z punktu widzenia aktualnej geometrii, miej­scach! Jeżeli nie będziesz ostrożny, może to spowodować utratę dostępu do danych. Zaleca się zapisywanie parametrów konfiguracji dysku, dzięki czemu można zawsze przywrócić oryginalne ustawienia. Nie dotyczy to dysków o pojemności większej niż 8,4 GB, ponieważ w tym przypadku automatycznie ustawiany jest czysty tryb LBA.

Jedynym sposobem na uruchomienie czystego trybu LBA na całej ścieżce od systemu operacyjnego aż do dysku jest użycie dysku większego niż 8,4 GB. Wszystkie dyski powyżej 137 GB muszą być adresowane w trybie LBA, zarówno na poziomie dysku, jak również na poziomie BIOS-u, ale większość BIOS-ów adre­suje w ten sposób również dyski większe od 8,4 GB. W takim przypadku niepotrzebne są żadne ustawienia w programie konfiguracyjnym BIOS-u; należy ustawić tryb Auto lub Autodetect.

Bariera 8,4 GB

Mimo że translacja CHS przełamała barierę 528 MB, napotkano kolejną barierę — 8,4 GB. Obsługa dysków o pojemności większej niż 8,4 GB wymaga porzucenia metody CHS i zmiany adresowania na poziomie BIOS-u na LBA. Interfejs ATA od zawsze obsługiwał adresowanie LBA, nawet w oryginalnej specyfikacji ATA-1. Jednym problemem było to, że obsługa LBA na poziomie interfejsu ATA była na początku opcjonal­na, ale ważniejszym problemem był brak obsługi LBA na poziomie BIOS-u. Można wybrać w programie konfiguracyjnym BIOS-u translację korzystającą z LBA, ale powoduje to jedynie konwersję adresów LBA na adresy CHS dokonywaną przez BIOS.

W firmie Phoenix Technologies zdano sobie sprawę, że interfejs BIOS musi zaniechać adresowania CHS na rzecz LBA i na początku roku 1994 opublikowano specyfikację BIOS Enhanced Disk Drive Speciflcation (EDD), w której zdefiniowano nowe, udoskonalone funkcje lNT13h, które operują na adresach LBA zamiast na adresach CHS.

Aby zapewnić akceptację tego standardu przez środowisko oraz aby uniknąć problemów ze zgodnością z no­wymi funkcjami BIOS-u, w roku 1996 firma Phoenix przedstawiła ten dokument komitetowi Tl3 National Committee on Informational Technology Standards (NCITS) w celu zatwierdzenia i zapewnienia mu dalsze­go rozwoju jako standardu o nazwie BIOS Enchanced Disk Drive Speciflcation (EDD). Od roku 1998 więk­szość producentów oprogramowania BIOS rozpoczęło instalowanie w swoich produktach obsługi EDD. co umożliwiło obsługę na poziomie BIOS-u trybu LBA w dyskach o pojemności większej niż 8,4 GB. Przypad­kowo (lub nie) nowe funkcje pojawiły się dokładnie wtedy, gdy były potrzebne, ponieważ właśnie w tym roku na rynku zaczęły się pojawiać dyski ATA o takiej lub większej pojemności.

Dokumentacja EDD definiuje nowe, rozszerzone polecenia przerwania INT13h BIOS-u, które pozwalają na adresowanie LBA do 264 sektorów, co w efekcie daje teoretyczną pojemność dysku ponad 9,44 ZB (zetabajtów lub kwadrylionów bajtów). Wielkość ta to, inaczej mówiąc, 9,44 tryliona GB — 9,44 * 1021 bajtów lub precy­zyjnie 9 444 732 965 739 290 430 000 bajtów! Jest to teoretyczna pojemność, ponieważ nawet w roku 1998, gdy BIOS mógł obsłużyć 264 sektorów, dyski ATA korzystały na poziomie interfejsu z adresowania 28-bitowego (22S sektorów). Ograniczało to dyski ATA do 268 435 456 sektorów, co daje pojemność 137 438 959 472 bajtów, czyli 137,44 GB. Dlatego, choć pokonana została bariera 8,4 GB, pozostała bariera 137 GB z powodu za­stosowania 28-bitowego adresowania LBA na poziomie interfejsu ATA. Dokładnie granica ta jest wyzna­czana przez następujące liczby:

Maksymalne wartości

Razem sektorów 268435456

Razem bajtów 137438953472

Megabajtów (MB) 137439

Mebibajtów (MiB) 131072

Gigabajtów (GB) 137.44

Gibibajtów (GiB) 128,00

Korzystając z nowych rozszerzonych poleceń INT13h trybu LBA na poziomie BIOS-u, jak również istnieją­cych 28-bitowych poleceń trybu LBA, na poziomie ATA nie jest wymagana żadna translacja i adresy LBA są przesyłane w niezmienionej postaci. Połączenie trybu LBA w BIOS oraz na poziomie interfejsu ATA spowo­dowało, że niewygodne adresowanie CHS w końcu odeszło w przeszłość. Oznacza to również, że gdy zain­stalujesz dysk ATA większy niż 8,4 GB w komputerze, który posiada BIOS z obsługą EDD (1998 rok lub późniejsze), zarówno BIOS, jak i dysk automatycznie skorzystają z trybu LBA.

Interesujące jest to, że, w celu zapewnienia zgodności wstecz, gdy uruchomiony zostanie stary system opera­cyjny, który nie obsługuje trybu LBA (DOS lub pierwsza wersja Win95), większość dysków o pojemności większej niż 8,4 GB raportuje 16 383 cylindry, 16 głowic i 63 sektory na ścieżkę, co daje 8,4 GB. Umożliwia to na przykład taką sytuację, że dysk 120 GB będzie widziany przez stare BlOS-y lub systemy operacyjne ja­ko dysk 8,4 GB. Wydaje się to dziwne, ale posiadanie dysku 120 GB widzianego jako 8,4 GB jest lepsze, niż sytuacja, kiedy dysk ten jest całkowicie niedostępny. Jeżeli chcesz zainstalować dysk większy niż 8,4 GB w systemie sprzed 1998 roku, zalecanym rozwiązaniem jest aktualizacja BIOS-u płyty głównej lub zastoso­wanie karty BIOS-u z obsługą EDD (produkowaną przez firmę MicroFirmware lub inne).

Bariera 137 GB i powyżej

W roku 2001 bariera 137 GB zaczęła stanowić problem, ponieważ 3,5-calowe napędy dysków twardych za­częły osiągać ten poziom pojemności. Rozwiązaniem stał się standard ATA-6, który powstał w tym samym roku. Aby umożliwić adresowanie dysków o ogromnej pojemności w ATA-6, funkcje LBA zostały unowo­cześnione i mogą teraz korzystać z większych, 48-bitowych liczb.

Specyfikacja ATA-6 rozszerzyła interfejs LBA i 48-bitowe adresowanie sektorów. Oznacza to, że maksymal­na pojemność została zwiększona do 24s (281 474 976 710 656) sektorów. Ponieważ każdy sektor przecho­wuje 512 bajtów, maksymalna pojemność dysku jest następująca:

Maksymalne wartości

Razem sektorów 281474976710656

Razem bajtów 144115188075855888

Megabajtów (MB) 144115188076

Mebibajtów (MiB) 137438953472

Gigabajtów (GB) 144115188

Gibibajtów (GiB) 134217728

Terabajtów (TB) 144115

Tebibajtów (Ti B) 131072

Petabajtów (PB) 144.12

Pebibajtów (PiB) 128.00

Jak widać, 48-bitowe ATA-6 pozwala na adresowanie nieco ponad 144 PB (petabajtów = kwadrylion bajtów)!

Ponieważ funkcje EDD BIOS-u korzystają z 64-bitowych adresów LBA, można z ich pomocą zaadresować dużo większe dyski:

Maksymalne wartości


Razem sektorów

18446744073709551600



Razem bajtów

Megabajtów (MB) Mebibajtów (MiB)

Gigabajtów (GB) Gibibajtów (GiB)

Terabajtów (TB) Tebibajtów (TiB)

Petabajtów (PB) Pebibajtów (PiB)

Eksabajtów (EB) Eksbibajtów (EiB)

Zetabajtów (ZB) Zebibajtów (ZiB)

9444732965739290430000 9444732965739291 9007199254740993 9444732965739 8796093022208 9444732965

8589934592

9444733

8388608

9445

8192 9.44 8.00


Choć funkcje BIOS-u korzystają z 64-bitowych adresów LBA (pozwalając na użycie 2 sektorów), całość systemu jest limitowana 144 petabajtami ograniczenia ATA-6. Powinno to wystarczyć najakiś czas.

Ponieważ dyski twarde podwajają swoją pojemność co 1,5 do 2 lat (prawo Moore'a) i zakładając, że dyski ATA o pojemności 200 GB i większej pojawiły się pod koniec 2003 roku, można oszacować, że technologia zbliży się do bariery 144 PB pomiędzy rokiem 2031 a 2041 (o ile technologia dysków twardych będzie jesz­cze wtedy stosowana). Podobnie aproksymując, można stwierdzić, że bariera 9,44 ZB istniejąca w BlOS-ie EDD będzie osiągnięta pomiędzy latami 2055 i 2073! W firmie Phoenix zakładano, że specyfikacja EDD przetrwa do roku 2020.

Bariera 137 GB okazała się trochę bardziej złożona od poprzednich, ponieważ poza kwestiami dotyczącymi BIOS konieczne było uwzględnienie zagadnień związanych z systemem operacyjnym.

Wewnętrzne dyski o pojemności przekraczającej 137 GB wymagają obsługi 48-bitowego mechanizmu LBA (logical błock address). Taka obsługa koniecznie musi być oferowana przez system operacyjny, ale może też. być obecna w układzie BIOS. Choć najlepszą sytuacjąjest obsługa oferowana zarówno przez BIOS, jak i system operacyjny, wystarczająca będzie tylko obsługa systemowa.

Aby system operacyjny obsługiwał 48-bitowe LBA, musi zostać spełniony jeden z poniższych warunków.

Aby skorzystać z układu BIOS obsługującego 48-bitowe LBA, musi zostać spełniony jeden z poniższych warunków.

Jeśli BIOS płyty głównej nie obsługuje 48-bitowego LBA i jej producent nie udostępnił odpowiedniego uaktualnienia, można skorzystać z odpowiedniej karty. Do kart obsługujących 48-bitowe LBA należy zali­czyć LBA Pro ISA firmy eSupport (http://www.esupport.com) i Ultra ATA/133 PCI firmy Maxtor (http:// www.maxtor.com). Karta firmy Maxtor posiada dwa dodatkowe porty ATA-133, umożliwiające podłączenie maksymalnie czterech napędów. Z kolei karta firmy eSupport zawiera tylko BIOS. W przypadku obu kart możliwe jest dalsze korzystanie z istniejących portów płyty głównej. BIOS kart będzie udostępniał obsługę 48-bitowe LBA zarówno w portach płyty głównej, jak i znajdujących się na karcie.

Warto zauważyć, że jeżeli 48-bitowe LBA obsługiwane jest przez BIOS i system operacyjny, dysk o dużej pojemności można instalować i używać jak każdy inny. Jeśli brak jest obsługi ze strony BIOS. a jest ona ofe­rowana jedynie przez system operacyjny, do momentu jego załadowania nie zostanie rozpoznana i nie będzie dostępna część przestrzeni dyskowej powyżej 137 GB. Jeśli system instalowany jest na czystym dysku twar­dym i ładowany z oryginalnego dysku CD systemu Windows XP (bez dodatku SP1) lub starszego, w trakcie instalacji konieczne będzie wykonanie partycjonowania dysku dla pierwszych 137 GB. Po pełnym zainstalo­waniu systemu operacyjnego i dodatku Service Pack można, korzystając ze standardowego systemowego na­rzędzia, dokonać partycjonowania tego obszaru dysku. Aby zwiększyć rozmiar pierwszej partycji do maksy­malnej pojemności dysku, można użyć niezależnych narzędzi partycjonujących, takich jak PartitionMagic lub Partition Commander. Jeśli system zostanie załadowany przy użyciu instalacyjnego dysku CD systemu Win­dows z już obecnym dodatkiem Service Pack 1 lub nowszym, możliwe będzie w trakcie instalacji systemu rozpoznanie i udostępnienie całego dysku i partycjonowanie go jako pojedynczej partycji o pojemności prze­kraczającej 137 GB.

Trzeba wiedzieć, że oryginalne wersje systemu Windows XP, a także Windows 2000/XP lub 95/98/Me nie oferują obsługi dysków twardych ATA o pojemności przekraczającej 137 GB. W związku z tym w przypadku systemu Windows XP konieczne jest zainstalowanie dodatku Service Pack 1 lub nowszego.

Ograniczenia związane z systemami operacyjnymi i innym oprogramowaniem

Należy pamiętać, że jeżeli korzystamy ze starego oprogramowania, na przykład programów narzędziowych, aplikacji, a nawet systemów operacyjnych, które używająjedynie parametrów CHS, dyski większe niż 8,4 GB będą widziane jako dyski o pojemności jedynie 8,4 GB. Potrzebujemy nie tylko nowego BIOS-u, ale również nowego oprogramowania, zaprojektowanego do bezpośredniego adresowania LBA, co pozwala obsługiwać dyski większe od 8,4 GB.

Ograniczenia systemów operacyjnych związane z dyskami o pojemności przekraczającej 8,4 GB przedsta­wione są w tabeli 7.24.

Tabela 7.24. Ograniczenia systemów operacyjnych

System operacyjny

Ograniczenia rozmiaru twardego dysku

DOS, Windows 3x

DOS 6.22 i starsze nie mogły obsługiwać dysków większych niż 8,4 GB. DOS 7.0 i nowsze (w tym Windows 95 i nowsze) obsługująjuż dyski ponad 8,4 GB.

Windows 9X/Me

Windows 95a (pierwsza wersja) nie obsługiwał rozszerzenia INT13h, co oznacza, że nie obsługiwał dysków większych niż 8,4 GB, jednak z powodu ograniczeń systemu plików FAT16, maksymalna wielkość partycji była ograniczona do 2 GB. Windows 95B/OSR2 i nowsze (w tym Windows 98/Me) obsługują rozszerzenie INT13h, co pozwala na stosowanie dysków ponad 8,4 GB, a FAT32 umożliwia obsługę partycji do maksymalnej pojemności dysku. Ze względu na ograniczenia w architekturze system Windows 95 nie obsługuje dysków twardych o pojemności przekraczającej 32 GB. Aby w systemie Windows 98 możliwe było partycjonowanie dysków o pojemności większej niż 64 GB, konieczne jest uaktualnienie programu FDISK.

Windows NT

Windows NT 3.5x nie obsługuje dysków większych niż 8.4 GB. Windows NT 4.0 obsługuje takie dyski, ale gdy jako pierwsze urządzenie rozruchowe zostanie wykorzystany dysk większy niż 8,4 GB, rozpoznawane jest tylko pierwsze 8,4 GB. Microsoft poprawił ten błąd w Service Pack 4.

Windows 2000/XP

Windows 2000 i XP obsługują dyski większe niż 8,4 GB.

OS/2 Warp

Niektóre wersje OS/2 mają ograniczoną wielkość partycji rozruchowej do 3,1 GB lub 4,3 GB. IBM udostępnił poprawkę Device Driver Pack umożliwiającą na tworzenie partycji rozruchowych do 8,4 GB. System plików HPFS stosowany w OS/2 obsługuje dyski do 64 GB.

Novell

NetWare 5.0 i nowsze obsługuje dyski większe od 8,4 GB.

W przypadku, gdy system operacyjny obsługuje dyski o pojemności większej niż 8.4 GB, ograniczenie pojem­ności dysku zależy od BIOS-u i standardu interfejsu dysku. Zamiast tego ograniczeniami stają się wielkości partycji i rozmiar plików, jakie mogą być tworzone i zarządzane przez różne systemy plików. Ograniczenia te są zależne nie tylko od systemu operacyjnego, ale również od systemu plików zastosowanego na partycji. W tabeli 7.25 zebrano minimalną i maksymalną wielkość partycji i plików w różnych wersjach systemu ope­racyjnego Windows.

Tabela 7.25. Ograniczenia wielkości partycji i pliku systemach plików systemów operacyjnych

Ograniczenia systemu operacyjnego

dla systemów plików

FAT16

FAT32

NTFS

Min. wielkość partycji (9x/Me)

2,092 MB

33,554 MB

Maks. wielkość partycji (95)

2,147 GB

33,554 MB

Maks. wielkość partycji (98)

2,147 GB

136,902 GB

Maks. wielkość partycji (Me)

2,147 GB

8,796 TB

Min. wielkość partycji (NT/2000/XP)

2.092 MB

33,554 MB

1000 MB

Maks. wielkość partycji (NT/2000/XP)

4,294 GB

8,796 TB

281,475 TB

Maks. wielkość pliku (wszystkie)

4,294 GB

4,294 GB

16,384 TB

— = nie dotyczy.

MB = megabajt = I 000 000 bajtów.

GB = gigabajt = 1 000 000 000 bajtów.

TB = terabajt = / 000 000 000 000 bajtów.

ATA RAID

RAID to skrót od angielskiego określenia redundant array of independent (inexpensive) disks, czyli nadmia­rowa macierz niezależnych (niedrogich) dysków. RAID został zaprojektowany na University of California w Berkeley w 1987 roku. Projekt zakładał połączenie grupy małych, niedrogich dysków, korzystając z odpo­wiedniego sprzętu i oprogramowania w taki sposób, aby były widziane przez system jako jeden duży dysk. Korzystając z wielu dysków działających identycznie jak jedno urządzenie, zwiększa się niezawodność sys­temu i można osiągnąć poprawę wydajności jego działania.

Na początku RAID miał jedynie łączyć poszczególne dyski w jeden dysk logiczny z przestrzenią roboczą roz­ciągającą się na poszczególne dyski składowe. Jednak zmniejszało to niezawodność i nie pomagało również poprawić wydajności. Na przykład, jeżeli w macierzy mamy cztery dyski działające jako jeden dysk logicz­ny, prawdopodobieństwo wystąpienia awarii jest cztery razy większe niż w przypadku pojedynczego dysku. Aby poprawić niezawodność i wydajność, naukowcy z Berkeley zaproponowali sześć poziomów (związanych z różnymi metodami) RAID. Na różnych poziomach skupiono się na różnych cechach: na odporności na awarie (niezawodności), pojemności, wydajności lub kombinacji powyższych.

W lipcu 1992 roku zawiązana została organizacja RAID Advisory Board (RAB), która postawiła sobie za cel standaryzację i rozpowszechnianie standardu RAID. Organizacja RAB opublikowała specyfikację RAID, pro­gram zgodności z różnymi poziomami RAID oraz program klasyfikacji sprzętu dla RAID.

W chwili obecnej zdefiniowano siedem standardowych poziomów RAID o nazwach od RAID 0 do RAID 6. Najczęściej RAID jest implementowany za pomocą układu kontrolera RAID, ale możliwe są również rozwią­zania programowe, choć te nie są zalecane. Zdefiniowano następujące poziomy RAID:

utracone żadne dane), ale w żaden sposób nie poprawia wydajności w porównaniu z jednym dyskiem. Do prawidłowego działania wymaga co najmniej dwóch dysków (o tej samej pojemności).

w przypadku awarii dysku najczęściej można odbudować dane. Wymaga co najmniej trzech dysków (dwa lub więcej na dane i jeden na kody parzystości).

Istnieją również inne poziomy RAID, ale nie są one obsługiwane przez RAID Advisory Board i są one własny­mi implementacjami poszczególnych producentów. Należy zwrócić uwagę, że wyższy numer niekoniecznie oznacza zwiększoną wydajność lub odporność na awarie; kolejność poziomów RAID jest całkowicie dowolna.

Swego czasu niemal wszystkie kontrolery RAID bazowały na SCSI i wykorzystywały dyski SCSI. Dla profe­sjonalnych zastosowań SCSI RAID jest najlepszym wyborem, ponieważ łączy zalety RAID z zaletami SCSI

— interfejsu, który był zaprojektowany do obsługi wielu dysków. Jednak w chwili obecnej dostępne są kon­trolery ATA RAID. co pozwala na budowanie tańszych implementacji RAID. Te kontrolery ATA RAID są głównie wykorzystywane w systemach jednoużytkownikowych. najczęściej w celu zwiększenia wydajności, a rzadziej dla zwiększenia niezawodności.

Większość implementacji ATA RAID jest dużo prostsza od rozwiązań stosowanych w profesjonalnych inter­fejsach SCSI RAID, jakie są używane w sieciowych serwerach plików. ATA RAID został zaprojektowany raczej dla indywidualnych użytkowników potrzebujących lepszej wydajności lub prostej metody mirrorowa-nia dysków. Gdy oczekiwane jest zwiększenie wydajności, adapter ATA RAID pracuje w trybie RAID po­ziom 0, który zapewni stripping danych. Niestety, w przypadku RAID 0 dzieje się to kosztem niezawodności

— w momencie awarii jednego dysku wszystkie dane zostają utracone. W przypadku RAID 0 wydajność jest zwiększana proporcjonalnie do ilości napędów w macierzy. Jednak jeżeli korzystasz z czterech dysków, wy­dajność niekoniecznie musi wzrosnąć cztery razy w stosunku do wydajności jednego dysku, będzie ona bliska wydajności ciągłego przesyłu. Niewielki narzut czasowy wprowadza sam kontroler — podział danych na dyski wymaga nieco czasu — ale i tak wydajność będzie znacząco wyższa, niż osiągana przy zastosowaniu pojedynczego napędu.

Gdy wymagana jest większa niezawodność, interfejs ATA RAID najczęściej pracuje w trybie RAID poziom 1, który zapewnia mirroring dysków. Wszystkie dane zapisywane na dysk są również zapisywane na jego dysk lustrzany. Jeżeli jeden z dysków ulegnie awarii, system może kontynuować pracę z jednym napędem. Niestety, nie zwiększa to w żaden sposób wydajności systemu, a dodatkowo wykorzystujemy tylko połowę do­stępnej pojemności dysków. Inaczej mówiąc, trzeba zainstalować dwa dyski, a wykorzystuje się tylko jeden (drugi stanowi wierną kopię). Jednak w czasach dużych pojemności i niskich cen dysków nie jest to większy problem. Jeżeli zależy Ci na wyeliminowaniu nadmiaru kabli, warto pod uwagę wziąć zastosowanie interfejsu Serial ATA RAID korzystającego z wąskich kabli SATA, zaprezentowanych wcześniej w tym rozdziale.

Łączenie zwiększonej wydajności i odporności na awarie wymaga zastosowania innych poziomów RAID — poziomu 3 lub 5. Na przykład niemal wszystkie profesjonalne kontrolery RAID wykorzystywane w serwerach plików pracują w trybie RAID 5. Kontrolery RAID 5 są droższe i dodatkowo trzeba zastosować co najmniej 3 dyski. Aby poprawić niezawodność, ale zmniejszyć koszt, wiele kontrolerów ATA RAID łączy poziomy RAID, na przykład 0 i 1. Wymaga to zwykle zastosowania czterech dysków, z których dwa zapewniają strip­ping według RAID 0, a dwa pozostałe dyski są wykorzystywane do mirroringu dysków roboczych w trybie RAID 1. Pozwala to niemal podwoić wydajność jednego dysku, a dane są dublowane na wypadek awarii pierw­szej pary dysków.

Dziś można kupić kontrolery ATA RAID lub Serial ATA RAID produkcji firm Arco Computer Products, Iwill, Promise Technology, HighPoint i innych. Typowy tani kontroler ATA RAID pozwala na podłączenie do czterech dysków, które mogą pracować w trybie RAID 0, 1 lub 0+1. Trzeba wiedzieć, że wydajność dys­ków (masterlslave) obsługiwanych przez pojedynczy kanał interfejsu równoległego ATA jest mniejsza. Wy­nika to stąd, że w danej chwili dane przesyłać może tylko jeden z dysków, co powoduje spadek wydajności o połowę. Dostępne są4-kanałowe karty ATA RAID. Większość nowych kart RAID jest jednak wyposażana w interfejs Serial ATA, który pozbawiony jest właściwych dla interfejsu ATA problemów związanych ze współużytkowaniem kanałów przez dyski masterislave. Karty Serial ATA RAID udostępniają dla każdego dysku niezależny kanał danych SATA. dzięki czemu możliwe jest osiągnięcie maksymalnej wydajności. Namawiam zatem do zastosowania takich kart.

Jeżeli chcemy zastosować kontroler ATA RAID (lub płytę główną ze zintegrowanym kontrolerem ATA RAID), należy zwrócić uwagę na następujące parametry:

Jeżeli chcesz eksperymentować bez konieczności wydawania pieniędzy, możesz implementować RAID bez dodatkowego kontrolera, lecz przy wykorzystaniu możliwości niektórych zaawansowanych systemów opera­cyjnych. Na przykład Windows NT/2000/XP lub Server 2003 posiadają programową obsługę RAID na po­ziomie zarówno strippingu, jak i mirroringu. W tych systemach operacyjnych program Disk Administrator może być wykorzystany do obsługi funkcji RAID i rekonstrukcji dysku po awarii. Zwykle jednak, gdy budu­jesz serwer, w którym niezwykle ważna jest wydajność i niezawodność zalecane jest zastosowanie kontrole­rów ARA lub SCSI RAID. obsługujących RAID poziom 3 lub 5.


Rozdział 8.

Interfejs SCSI

Small Computer System Interface

Nazwa tego interfejsu jest skrótem słów Smali Computer System Interface. które oznaczają interfejs dla ma­łych systemów komputerowych. Jest to interfejs ogólnego przeznaczenia używany do przyłączania różnych typów urządzeń do komputera PC. Interfejs ten wywodzi się od interfejsu SAS ł (ang. Shugart Associates System Interface) i jest stosowany najczęściej do przyłączania szybkich napędów dysków do komputerów PC o dużej wydajności, takich jak stacje robocze lub serwery sieciowe. Interfejs SCSI jest bardzo elastyczny; może być używany nie tylko jako interfejs dysków, ale również jako interfejs systemowy, pozwalający na przyłączanie za jego pośrednictwem różnych typów urządzeń. Magistrala SCSI obsługuje 7 lub 15 urządzeń. Istnieją również interfejsy wielokanałowe, obsługujące po 7 lub 15 urządzeń w każdym kanale.

Kontroler SCSI, nazywany adapterem hosta, stanowi bramę pomiędzy magistralą SCSI a magistralą systemo­wą komputera. Każde z urządzeń przyłączonych do magistrali ma wbudowany swój własny kontroler. Magi­strala SCSI nie komunikuje się bezpośrednio z urządzeniem; komunikacja jest realizowana za pośrednictwem kontrolera wbudowanego w urządzenie.

Pojedyncza magistrala SCSI może obsługiwać 8 lub 16 urządzeń fizycznych, określanych często jako SCSI ID. Jednym z tych urządzeń jest karta host adaptera, pozostałymi 7 lub 15 mogą być urządzenia zewnętrzne. Do jednej magistrali SCSI można przyłączyć dyski twarde, napędy taśm, napędy CD-ROM, skanery i inne urzą­dzenia. Większość systemów może obsłużyć do 4 adapterów, a do każdego można podłączyć 15 urządzeń, czyli daje to maksymalnie 60 możliwych do podłączenia urządzeń! Istnieją również adaptery dwukanałowe, które pozwalają podwoić tę liczbę.

SCSI jest interfejsem szybkim, odpowiednim dla stacji roboczych o dużej wydajności, serwerów lub innych systemów, w których wymagana jest duża prędkość działania dysków. Najnowsza wersja, Ultra (Ultra640), pozwala na osiągnięcie prędkości przesyłu do 640 MB/s! Dla porównania interfejs równoległy ATA (okre­ślany też nazwą IDE) gwarantuje 133 MB/s. a interfejs Serial ATA — 150 MB/s. Warto zauważyć, że podane wartości identyfikują szybkości samych interfejsów. Zwykle parametry poszczególnych urządzeń są znacznie niższe. Większe szybkości magistrali SCSI są wykorzystywane, gdy podłączonych jest do niej wiele urzą­dzeń. W takim przypadku operacje odczytu i zapisu wykonywane przez urządzenia mogą się pokrywać, dzięki czemu w większym stopniu jest wykorzystywana dostępna zwiększona przepustowość. Wolniejsze magistrale ATA obsługują tylko jedno lub dwa urządzenia. W tym przypadku większa przepustowość jest zbędna, po­nieważ nie zostałaby wykorzystana.

Kupując urządzenie SCSI, na przykład dysk SCSI, zwykle w jednym urządzeniu otrzymujemy kontroler, ad­apter SCSI i samo urządzenie; taki zestaw jest gotowy do przyłączenia do magistrali SCSI. Ten typ napędu jest nazywany wbudowanym urządzeniem SCSI — interfejs SCSI jest wbudowany w urządzenie. Dla przykła­du, większość dysków SCSI jest technicznie identyczna z ich odpowiednikami ATA, poza dodatkowymi układami adaptera magistrali SCSI (zwykle jest to jeden układ) umieszczonymi na płycie kontrolera. System nie komunikuje się bezpośrednio z kontrolerem, jak ma to miejsce w przypadku dysków ATA. Zamiast tego komunikacja realizowana jest poprzez adapter hosta SCSI zamontowany w magistrali systemowej, a następnie kontroler interfejsu SCSI znajdujący się na karcie logicznej napędu, a wreszcie przez kontroler urządzenia (też umieszczony na karcie logicznej) i dysk. Jedynym sposobem dostępu do dysku jest wykorzystanie proto­kołu SCSI.

Firma Apple uznała, że interfejs SCSI jest niedrogim sposobem na rozwiązanie problemu, jaki sama sobie zgotowała w przypadku komputerów Macintosh. Gdy projektanci zrozumieli, jaką pomyłkę popełnili, tworząc komputery Macintosh jako systemy zamknięte (bez złączy rozszerzeń), zdecydowali oni, że najłatwiejszym sposobem uzyskania rozszerzalności jest dodanie do systemu portu SCSI. W taki właśnie sposób do kompute­rów Macintosh były kiedyś przyłączane urządzenia zewnętrzne. Oczywiście, aby utrzymać tradycje firmy Apple, wykorzystali oni niestandardowe gniazdo SCSI. W chwili obecnej Apple projektuje systemy z gniazdami roz­szerzeń uniwersalnej magistrali szeregowej (USB) i FireWire (znanej też jako iLink lub IEEE 1394), a nie­standardowy interfejs Apple SCSI jest dostępny jedynie jako wyposażenie opcjonalne. Ponieważ systemy PC były od zawsze rozszerzalne, nie było więc tak dużych nacisków na rozwijanie SCSI. Wydawało się, że osiem różnych urządzeń podłączanych do jednej magistrali to zbyt dużo. Faktycznie, w nowoczesnych kom­puterach PC — zawierających niedrogie porty USB lub FireWire służące do podłączania zewnętrznych urządzeń — w większości przypadków zastosowanie interfejsu SCSI jest wymagane jedynie wówczas, gdy szybkość działania systemu lub jego niezawodność (poprawiana przy użyciu macierzy dysków, których wy­miana jest możliwa w czasie pracy komputera) jest bardzo ważna. Interfejsy USB 2.0 i IEEE 1394a/b (Fire­Wire) oferują jednak wydajność porównywalną z możliwościami wielu wersji interfejsu SCSI o mniejszej szybkości, w związku z czym mogą stanowić alternatywę dla takich urządzeń, jak zewnętrzne dyski twarde i skanery. Faktycznie, w każdym przypadku, z wyjątkiem serwerowych macierzy dyskowych, powinno się raczej zamiast interfejsu SCSI użyć jednego spośród innych dostępnych.

Początkowo interfejs SCSI był popularny w stacjach roboczych i serwerach, ponieważ zapewnia dużą wydaj­ność i rozszerzalność. Na rynku pierwszych komputerów PC akceptacja SCSI była blokowana przez brak prawdziwego standardu; SCSI było zaprojektowane przez jedną firmę i dopiero później przekształcone na po­stać publicznego standardu zaaprobowanego przez instytucję standaryzującą, która ostatecznie go rozszerzyła i uzupełniła. Dopiero od tego czasu żaden pojedynczy producent nie mógł kontrolować tego standardu.

Większość adapterów SCSI dostarczanych razem z urządzeniami takimi jak skanery, napędy CD-ROM lub DVD-ROM nie zawiera funkcji niezbędnych do obsługi wielu urządzeń SCSI lub uruchamiania systemu z dysku twardego SCSI. Nie ma to nic wspólnego z ograniczeniami standardu SCSI. Aby obniżyć koszty producenci po prostu dołączają ograniczone wersje adapterów SCSI. Posiadają one wszystkie funkcje niezbędne do obsługi urządzenia, do którego są dołączone, ale zwykle po­zbawione są układu ROM BIOS, zawierającego sterowniki niezbędne do uruchomienia dysków SCSI. Na szczęście, posiadając właściwy adapter i sterowniki, jedna karta SCSI może obsługi­wać wszystkie urządzenia w systemie, od dysków twardych do dysków optycznych, skanerów, na­pędów taśm itp.

Pierwsze adaptery SCSI nie posiadały funkcji uruchamiania systemu z napędu podłączonego do magistrali SCSI. Uruchamianie komputera z tych dysków i korzystanie z wielu systemów operacyjnych było problemem, który wynikał z braku standardu oprogramowania interfejsu. Standardowe oprogramowanie BIOS komputera PC jest zaprojektowane do współpracy z dyskami twardymi ST-506/412, EDSI i ATA. Interfejs SCSI na tyle różni się od interfejsu ATA, że do jego obsługi potrzebne były nowe funkcje ROM BIOS. To oprogramowa­nie BIOS jest przeznaczone do konkretnego adaptera SCSI, jeżeli więc adapter hosta nie jest wbudowany w płytę główną, opcja taka nie będzie dostępna w programie konfiguracyjnym BIOS-u. Zamiast tego dostęp­ne są adaptery SCSI z programem BIOS umożliwiającym uruchamianie systemu z dysków SCSI.

Z powodu prowadzonych przez Apple prac nad rozwojem obsługi SCSI w oprogramowaniu systemowym (sys­temy operacyjne i ROM), urządzenia przyłączane do systemów Apple są dosyć dobrze zestandaryzowane. Do niedawna brak było takiej firmy tworzącej standardy dla SCSI. Sytuacja zmieniła się po wprowadzeniu na ry­nek Windows 95 i kolejnych wersji systemu Windows, które zawierają sterowniki do najbardziej popularnych adapterów SCSI i urządzeń zewnętrznych dostępnych na rynku. W chwili obecnej Windows 98/Me oraz Win­dows NT/2000/XP zawierająjeszcze więcej sterowników obsługujących adaptery i urządzenia SCSI.

Wielu producentów PC standardowo stosuje SCSI w swoich najlepszych stacjach roboczych lub serwerach. W komputerach tych adapter SCSI jest umieszczany w jednym z gniazd PCI lub wbudowany jest w płytę główną. Projekt ten jest zbliżony do stosowanego w przypadku interfejsu ATA, ponieważ dysk SCSI jest podłączony do płyty głównej tylko jednym kablem. Interfejs SCSI obsługuje 7 lub 15 dodatkowych urządzeń na jedną magistralę (nie wszystkie muszą być dyskami twardymi), natomiast ATA pozwala na podłączenie tylko 4 urządzeń (2 na kontroler). Dodatkowo SCSI obsługuje więcej typów urządzeń niż ATA. Do interfejsu ATA można podłączyć tylko dyski twarde, napędy CD-ROM i taśm, napęd LS-120 lub LS-240 SuperDrive, napęd Zip itp. Systemy z dyskami SCSI są łatwe do rozbudowy, ponieważ do magistrali można podłączyć niemal dowolne urządzenie SCSI.

SCSI kontra ATA

Porównując wydajność i możliwości dysków z interfejsami ATA (AT attachment; czasami określany też jako IDE — integrated drive electronics) i SCSI, należy zwrócić uwagę na kilka czynników. Te dwa typy napędów są najpopularniejszymi dyskami używanymi w dzisiejszych komputerach PC i niektórzy producenci mogą produkować identyczne dyski dla obu interfejsów. Wybór najlepszego dysku do Twojego systemu jest trudny i zależy od wielu czynników.

W większości przypadków okazuje się, że napędy ATA korzystają z tych samych mechanizmów talerzy i głowic co napędy SCSI i napędy ATA jednego producenta w niektórych zadaniach lub programach testują­cych, działają niemal tak samo szybko lub nawet szybciej niż dyski SCSI. Jest to szczególnie widoczne w przy­padku korzystania z jednego dysku w systemie jednoużytkownikowym, na przykład Windows 9x i Me. Bardziej zaawansowane systemy operacyjne, na przykład Windows NT, Windows 2000 lub Windows XP mogą bardziej efektywnie korzystać z kolejkowania poleceń i innych funkcji SCSI i dzięki temu osiągać większą wydajność niż w przypadku dysków ATA — szczególnie w przypadku użycia kilku dysków.

Interesujące może się wydać, że SCSI rozwinęło się z ATA, a dokładniej, oba systemy powstały na podstawie używanych wcześniej interfejsów ST-506/412 i ESDI.

► ► Zajrzyj do punktu „Poprzednicy IDE" znajdującego się na stronie 603.

Historia i budowa dysków twardych SCSI

SCSI nie jest interfejsem dysku, ale magistralą obsługującą adaptery magistrali SCSI wchodzące w skład kon­trolera dysku i innych urządzeń. Pierwszymi napędami SCSI dla komputerów PC były standardowe napędy ST-506/412 lub ESDI z osobnym interfejsem magistrali SCSI (czasami nazywanym kontrolerem mostka) kon­wertującym interfejs ST-506/412 lub ESDI na SCSI. Interfejsy te miały postać dodatkowej płytki z układami, a całe urządzenie było często montowane w osobnej obudowie.

Kolejnym krokiem było wbudowanie płyty „konwertera" interfejsu magistrali SCSI bezpośrednio w płytę ukła­dów logicznych napędu. Obecnie takie napędy nazywa się zintegrowanymi napędami SCSI, ponieważ inter­fejs SCSI jest wbudowany w napęd.

W chwili obecnej nie ma potrzeby zachowywania zgodności ze specyfikacją ST-506/412 lub ESDI w we­wnętrznym interfejsie dysku, ponieważ jedyne urządzenie, z którym komunikuje się ten interfejs jest również wbudowane w napęd. Z tego powodu producenci układów kontrolerów i interfejsów dysków zaczęli projek­tować coraz lepsze układy, które choć oparte na interfejsie ST-506/412 lub ESDI, oferowały większą wydaj­ność oraz większy zbiór funkcji.

W typowej karcie logicznej dysku SCSI najczęściej można łatwo zidentyfikować układ służący jako kontroler dysku —jest to układ tego samego typu, co używany w napędach ATA.

Dla przykładu, napędy ATA muszą w pełni emulować systemowy interfejs kontrolera dysku wprowadzony w serii kontrolerów Western Digital WD 1003 użytych w 1984 r. przez firmę IBM w oryginalnym komputerze AT. Większość z tych wbudowanych kontrolerów ma bardziej rozbudowane możliwości niż kontrolery orygi­nalnej serii WD1003 (zwykle dostępne jako nowe polecenia), ale muszą realizować wszystkie polecenia użyte w kontrolerze WD1003.


W niektórych przypadkach producent oferuje napędy ATA i SCSI o takiej samej pojemności i parametrach, a także korzystające z identycznego zespołu dyskowo-głowicowego HDA (head disk assembly). Jeżeli do­kładnie przyjrzymy się tym niemal identycznym dyskom, jedyną większą różnicą, jaką można będzie za­uważyć, jest dodatkowy układ na płycie z elektroniką dysku SCSI, nazywany SCSI Bus Adapter Chip (SBAC) lub układem kontrolera SCSI.

Na rysunkach 8.1 i 8.2 pokazane są diagramy logiczne dysku ATA oraz SCSI tego samego producenta. Dyski te korzystają z tego samego HDA; różnią się jedynie układami elektronicznymi, choć płytki drukowane są niemal takie same (oprócz umieszczenia dodatkowego układu SBIC).


Rysunek 8.1.

Schemat blokowy typowego układu logicznego napędu A TA (IDE)

0x08 graphic


Trzeba jednak zauważyć, że nawet projekt połączeń w tych dwóch dyskach jest niemal taki sam. Oba dyski korzystają z układu LSI (ang. large scalę integrated circuit — układ o dużej skali integracji) o nazwie WD42 C22 Disk Controller and Buffer Manager (kontroler dysku i buforów). W napędzie ATA układ ten jest podłą­czony poprzez układ sterujący DMA bezpośrednio do magistrali ATA. W wersji SCSI do układów interfejsu dysku dodany jest kontroler magistrali SCSI WD33C92. Diagramy logiczne obu dysków różnią się jedynie tym, że wersja SCSI zawiera niemal cały układ dysku ATA z dodanym kontrolerem magistrali SCSI. Jest to bardzo mocno uproszczona wersja niegdyś stosowanego układu osobnego dysku i kontrolera mostka.

^ ^ Zajrzyj do punktu „Tryby DMA równoległego interfejsu ATA" znajdującego się na stronie 623.

Aby zakończyć ten przykład, przeanalizujmy diagram, zamieszczony na rysunku 8.3, układu WD 1006V-MM1, który jest kontrolerem ST-506/412 stosowanym w starszych systemach zgodnych z komputerem AT.

0x08 graphic
0x08 graphic
0x08 graphic
0x08 graphic


Jak można zauważyć, główny układ LSI jest identyczny jak układ kontrolera WD42C22 zastosowanego w dys­kach ATA i SCSI. Poniżej zamieszczamy opis tego układu znajdujący się w literaturze technicznej:

Układ WD42C22 łączy dużą wydajność i niską cenę architektury kontrolera Winchester. Układ WD42C22 integruje ze sobą główne elementy podsystemu kontrolera Winchester, takie jak interfejs hosta. sterowanie buforami, kontroler dysku, koder-dekoder, generator i kontroler CRC i ECC oraz interfejs dysku w jednym układzie PQFP (ang. Plastic Quad Fiat Pack) z 84 wyprowadzeniami.

Powinno być teraz jasne, że wiele dysków SCSI jest „zwykłymi" dyskami ATA z dodatkowym układem ma­gistrali SCSI. Fakt ten przypomnimy jeszcze raz w punkcie „Porównanie wydajności interfejsów SCSI i ATA — zalety i ograniczenia", w którym omówimy wydajność i inne zagadnienia różniące te interfejsy.

Przytoczmy jeszcze jeden przykład. Posiadam kilka starych dysków IBM 320 MB i 400 MB, które są zinte­growanymi dyskami SCSI-2; każdy z nich wykorzystuje kontroler dysku WD-10C00 w postaci 68-nóżkowego układu PLCC. Literatura techniczna tak opisuje ten układ:

U'kład ten obsługuje interfejsy ST412, ESDI i optyczny. Osiąga maksymalną prędkość przesyłu 27 Mb/s, posiada wewnętrzną, w pełni programowalną 48- lub 32-bitową obsługę ECC, 16-bitową obsługę CRC-CC1TT lub zewnętrzną, definiowaną przez użytkownika obsługę wielomianową ECC. w pełni programowalne wielkości sektorów i architekturę CMOS 1,25 mikrona o niskim zużyciu energii.

Dodatkowo, te zintegrowane dyski SCSI wykorzystują układ kontrolera magistrali SCSI 33C93, używany również w innych wspomnianych przeze mnie dyskach SCSI. Również w tym przypadku występuje osobny kontroler dysku, do którego dodany jest interfejs SCSI.

Jeszcze raz powtórzymy, że większość zintegrowanych napędów SCSI posiada wbudowany kontroler dysku (zwykle korzystający z projektu poprzednich układów ST-506/412 lub ESDI) oraz dodatkowe układy interfej­su kontrolera magistrali SCSI (czyli, mówiąc inaczej, wbudowany kontroler mostka). Przeanalizujmy teraz taki układ od strony wydajnościowej. Jeżeli dyski SCSI tak naprawdę są napędami ATA z dodanym układem kontrolera magistrali SCSI, to jaki wniosek można z tego wysnuć?

Po pierwsze, żaden dysk nie może wykonywać ciągłego przesyłu danych szybciej, niż można odczytywać dane z talerzy. To HDA ogranicza wydajność całego dysku. Dyski mogą przesyłać dane w małych pakietach z dużo większą prędkością, ponieważ mają one wbudowane pamięci buforowe oraz bufory odczytu wyprze­dzającego. Wiele z nowych dysków ATA i SCSI o dużej wydajności ma wbudowane 8 MB lub więcej pamię­ci buforowej. Jednak niezależnie od tego jak duży i jak bardzo inteligentny jest ten bufor, prędkość ciągłego przesyłu jest ograniczana przez układ HDA.

► ► Zajrzyj do podrozdziału „Standardy ATA" znajdującego się na stronie 608.

Dane przesyłane z HDA muszą przejść przez układy kontrolera dysku, które, jak widzieliśmy, są niemal iden­tyczne w podobnych dyskach ATA i SCSI. W napędach ATA dane ta są wysyłane bezpośrednio do magistrali systemowej. W dysku SCSI natomiast dane muszą przejść poprzez adapter interfejsu magistrali SCSI. przejść przez magistralę SCSI, a następnie przez kolejny adapter interfejsu magistrali SCSI w komputerze. Dłuż­sza droga w przypadku SCSI musi powodować, że ten typ przesyłu jest wolniejszy, niż bardziej bezpośredni przesył ATA (dotyczy komunikowania się z jednym urządzeniem).

Zazwyczaj uważa się, że SCSI jest zawsze znacznie szybsze niż ATA; niestety, przekonanie to jest zwykle błęd­ne. Nie można porównywać magistral ATA i SCSI, biorąc pod uwagę tylko ich prędkości przesyłu. Napęd z interfejsem Ultra4 SCSI może przesyłać dane z deklarowaną prędkością 320 MB/s, natomiast napęd ATA Ultra-ATA/133 z prędkością 133 MB/s. Patrząc na te surowe prędkości przesyłu, SCSI wydaje się dużo szyb­sze, ale prędkość przesyłu magistrali nie stanowi tu czynnika ograniczającego. Dyskutowaliśmy już poprzed­nio, że to HDA i układy kontrolera dysku ograniczają jego wydajność. Kluczowym parametrem, jaki należy sprawdzić dla dysku, jest prędkość przesyłu wewnętrznego lub przesyłu z nośnika. Dla przykładu, poniżej przedstawiamy specyfikację dwóch podobnych dysków (jednego ATA i jednego SCSI):

Dysk ATA

Dysk SCSI

Napęd

Maxtor DiamondMax+ 60 ATA

Napęd

IBM Ultrastar 73LZX SCSI

Interfejs

Ultra-ATA/100

Interfejs

Ultra4 (Ultra320) SCSI

Talerze

3

Talerze

6

Głowice danych

6

Głowice danych

12

Pojemność

60 GB

Pojemność

73,4 GB

Gęstość powierzchniowa (maksymalna)

15,4 Gb/calkw.

Gęstość powierzchniowa (maksymalna)

13,2 Gb/cal kw.

Prędkość obrotowa

7200 obr/mm

Prędkość obrotowa

10000 obr/min

Wielkość bufora wewnętrznego

2 MB

Wielkość bufora wewnętrznego

4 MB

Prędkość przesyłu interfejsu

do 100 MB/s

Prędkość przesyłu interfejsu

do 320 MB/s

Prędkość przesyłu z nośnika

do 57 MB/s

Prędkość przesyłu z nośnika

do 58 MB/s

Prędkość przesyłu ciągłego

28,5 MB/s - 57 MB/s

Prędkość przesyłu ciągłego

29,8 MB/s - 58 MB/s

Średnia prędkość przesyłu ciągłego

42,75 MB/s

Średnia prędkość przesyłu ciągłego

44,4 MB/s

Zauważ, że choć napęd SCSI może pochwalić się dużo większą prędkością przesyłu zewnętrznego. 320 MB/s. w porównaniu do 100 MB/s dysku ATA, w rzeczywistości dyski te działają niemal tak samo szybko. Prawdzi­wi specjaliści patrzą na dwa ostatnie wiersze tej tabeli, które wskazują, jak szybko dane mogą być odczytywa­ne z dysku. W praktyce prędkość ciągłego przesyłu jest rzeczywistą prędkością odczytu danych z tych dysków i, jak widać, parametry te są w porównywanych dyskach bardzo zbliżone. Na prawdziwą prędkość przesyłu da­nych z dysku ma wpływ: prędkość obrotowa, gęstość ścieżek oraz, dodatkowo, wielkość wewnętrznego bufora.

Trzeba również wiedzieć, że przedstawiony tu dysk SCSI kosztuje o 50% - 100% więcej niż jego odpowied­nik ATA. Nie bierzemy tu jeszcze pod uwagę kosztu adaptera hosta Ultra4, do którego będziemy przyłączać dysk. Przyzwoite adaptery SCSI, szczególnie wersje Ultra-SCSI mogą kosztować 800 zł i więcej, co stano­wi 2- lub 3-krotny koszt większości płyt głównych przeznaczonych dla zwykłych komputerów PC. Ponieważ interfejs Ultra-ATA i (lub) Serial ATA jest wbudowany w większość nowoczesnych płyt głównych, prawie zawsze wydawanie dużych pieniędzy na SCSI jest ich zwykłem marnowaniem.

Teraz przedstawimy przeciwny punkt widzenia. Choć te dwa dyski są swoimi odpowiednikami, wersja ATA jest jednym z najlepszych dysków ATA dostępnych na rynku w czasie pisania tej książki, natomiast przedsta­wiony tu napęd SCSI ma tylko średnia wydajność. Firma Hitachi i inne produkują dyski mające prędkości ob­rotowe 15 000 obr/min, zwiększoną gęstość ścieżek i większe bufory. Oczywiście dyski takie mają jeszcze wyż­sze ceny. Wniosek z tego jest następujący: jeżeli potrzebujesz absolutnie najszybszego dysku, musisz zaopa­trzyć się w wydajny dysk SCSI i adapter Ultra SCSI Wide. Jednak jeżeli wystarczy Ci dysk kosztujący 1/3 lub nawet 1/4 ceny i mający wydajność 3/4 lub więcej wydajności SCSI, należy pozostać przy dyskach ATA

Standard SCSI ANSI

Standard SCSI definiuje parametry fizyczne i elektryczne równoległej magistrali wejścia-wyjścia używanej do podłączenia komputera i urządzeń zewnętrznych. Standard definiuje parametry takich urządzeń jak dyski twarde, napędy taśm i napędy CD-ROM. Oryginalny standard SCSI (ANSI X3.131-1986) został zatwierdzony w roku 1986, SCSI-2 został zatwierdzony w styczniu 1994 roku, a pierwsze fragmenty SCSI-3 w roku 1995. Standard SCSI-3 jest obecnie bardzo rozbudowany i składa się z wielu części. Znajduje się on nadal w fazie rozwoju. Ponieważ podzielił się na wiele standardów, nie ma pojedynczego standardu SCSI-3.

Interfejs SCSI jest zdefiniowany jako standard ANSI (ang. American National Standards Institute) przez ko­mitet o nazwie T10. Jest to komitet techniczny działający pod egidą InterNational Comitee on Information Technology Standards (INCITS), który z kolei jest popierany przez ANSI i działa zgodnie z regułami zaapro­bowanymi przez ANSI. Zasady te mają zapewniać tworzenie standardów na zasadzie porozumienia między fumami działającymi w jednej branży. INCITS tworzy standardy dotyczące przetwarzania danych, nato­miast ANSI aprobuje proces ich powstawania i publikuje je. Kopie robocze wszystkich standardów doty­czących SCSI można pobrać z witryny komitetu technicznego T10, http://www.tlO.org.

Jednym z problemów związanych z oryginalną dokumentacją SCSI-1 była duża ilość opcjonalnych poleceń i funkcji i dlatego istniała niewielka szansa, że dane urządzenie będzie obsługiwało określone polecenie. Pro­blem ten spowodował, że zdefiniowano 18 podstawowych poleceń SCSI nazywanych Common Command Set (CCS), które stanowią minimalny zbiór poleceń obsługiwany przez wszystkie urządzenia. CCS stało się pod­stawą specyfikacji SCSI-2.

Oprócz formalnej obsługi CCS, SCSI-2 zawiera dodatkowe definicje poleceń pozwalających na obsługę na­pędów CD-ROM (i ich możliwości muzycznych), napędów taśm, dysków wymiennych, dysków optycznych i kilku innych typów urządzeń zewnętrznych. Dodatkowo zdefiniowano opcjonalną szybszą wersję nazywaną Fast SCSI-2 i wersję 16-bitową Wide SCSI-2. Inną funkcją SCSI-2 jest kolejkowanie poleceń, co pozwala na odczytanie przez urządzenie kilku poleceń i wykonywanie ich w najbardziej efektywnej dla urządzenia kolej­ności. Opcja ta jest szczególnie przydatna w wielozadaniowych systemach operacyjnych, które mogą wysyłać do magistrali SCSI kilka poleceń jednocześnie.

W sierpniu 1990 roku grupa 3T9 zaakceptowała standard SCSI-2 jako X3.131-1990. ale w grudniu 1990 do­kument został poddany ostatnim modyfikacjom przed końcową publikacją przez ANSI. Końcowe zatwierdze­nie dokumentu miało miejsce w styczniu 1994 roku, choć zawierał on niewiele zmian w stosunku do wersji z 1990 roku. Dokument ze specyfikacją SCSI-2 nazywa się teraz ANSI X3.131-1994. Oficjalny dokument jest dostępny z Global Engineering Documents oraz z komitetu ANSI. Wersje robocze można również pobrać z witryny komitetu TIO. której adres podaliśmy kilka akapitów wcześniej.

Większość firm twierdzi, że ich adaptery hosta są zgodne zarówno ze standardem ANSI X3.131-1986 (SCS1-1). jak i X3.131-1994 (SCSI-2). Trzeba wiedzieć, że ponieważ prawie wszystkie elementy SCSI-1 są obsługiwa­ne w SCSI-2. niemal każde urządzenie SCSI-1 może być traktowane jako urządzenie SCSI-2. Wielu produ­centów zamieszcza w reklamach stwierdzenie, że urządzenie jest zgodne ze standardem SCSI-2, ale bardzo często nie oznacza to. że obsługuje ono jakiekolwiek rozszerzenia wprowadzone w tym standardzie.

Na przykład, opcjonalna część specyfikacji SCSI-2 zawiera szybki tryb synchroniczny dwukrotnie powięk­szający prędkość standardowego trybu synchronicznego z 5 MB/s do 10 MB/s. Ten tryb przesyłu Fast SCSI może być łączony z 16-bitową wersją Wide-SCSI, co w efekcie daje prędkość przesyłu 20 MB/s. W specyfi­kacji SCSI-2 zdefiniowano również opcjonalną 32-bitową wersję, ale producenci komponentów uznali, że jest ona zbyt droga. Specyfikacja 32-bitowego interfejsu SCSI nie przyjęła się i została usunięta ze specyfika­cji SCSI-3. Większość implementacji SCSI to standardowy 8-bitowy interfejs SCSI lub 16-bitowy Fast/Wide SCSI. Nawet urządzenia nie obsługujące trybu Fast ani Wide mogą być traktowane jako SCSI-2.

SCSI-3 został podzielony na kilka standardów. Standard SCSI Parallel Interface (SPI) definiuje połączenia równoległe między urządzeniami SCSI i opis tej opcji stanowi dużą część tego rozdziału. Do tej pory powstało kilka wersji specyfikacji SPI, w tym SPI. SPI-2, SPI-3, SPI-4 i SPI-5.

Do opisywania nowych standardów SPI używane są różne określenia i, aby uniknąć pomyłek, zamieszczamy je w tabeli 8.1.

Aby jeszcze bardziej zwiększyć zamieszanie, standard SPI-3 lub Ultra3 SCSI określany jest mianem UltralóO bądź Ultral60+, SPI-4 lub Ultra4 SCSI — Ultra320, a SPI-5 lub Ultra5 SCSI — Ultra64o' Oznaczenie UltralóO odnosi się do urządzeń obsługujących pierwsze trzy z pięciu podstawowych wymienionych funkcji Ultra3 SCSI. Oznaczenie Ultral 60+ odnosi się do urządzeń obsługujących wszystkie pięć głównych funkcji Ultra3 SCSI. Ultra640 zawiera wszystkie funkcje Ultral60+, jak również dodatkowe.

Tabela 8.1. Standardy SPI (SCSI Parallei Interface)

Standard SCSI-3

Nazwa alternatywna

Prędkość

Wydajność

SPI

Ultra SCSI

Fast-20

20/40 MB/s

SPI-2

Ultra2 SCSI

Fast-40

40/80 MB/s

SPI-3

Ultra3 SCSI lub Ultral60(+)

Fast-80DT

160 MB/s

SPI-4

Ultra4 SCSI lub Ultra320

Fast-I60DT

320 MB/s

SPI-5

Ultra5 SCSI lub Ultra640

Fast-320DT

640 MB/s

W tabeli 8.2 zamieszczono maksymalne wartości prędkości przesyłu magistrali SCSI działającej z różnymi prędko­ściami zegara i różnymi jej szerokościami oraz wymieniono kable wymagane do zrealizowania trybów przesyłu.

Kabel A wymieniony w tabeli 8.2 to standardowy 50-pinowy kabel SCSI, natomiast kabel P to ka-bel 68-pinowy zaprojektowany do przesyłów 16-bitowych. Sygnalizacja High Voltage Differential (HVD) nigdy nie zdobyła popularności i obecnie jest zarzucona. W trybach Ultra2 i Ultra3 zastoso­wano sygnalizację Low Voltage Differential (LVD) pozwalającą zwiększyć wydajność i długości ka­bli. Funkcje poszczególnych pinów tych kabli są przedstawione w tabelach od 8.3 do 8.6. Na ry­sunkach od 8.8 do 8.10 pokazano złącza.

Interfejs SCSI jest zgodny zarówno wstecz, jak i w przód, to znaczy, że można uruchomić szybsze urządzenia w magistralach obsługiwanych przez wolniejsze adaptery i odwrotnie. W każdym przypadku cała magistrala będzie musiała się dostosować do najwolniejszego urządzenia. A zatem w przypadku tej samej magistrali moż­liwe jest jednoczesne stosowanie urządzeń o różnych szybkościach, ale szybsze i wolniejsze powinno się podłą­czyć do oddzielnych kontrolerów SCSI (lub złączy, gdy używane są kontrolery 2-magistralowe). Z tego powo­du, jak wcześniej wspomnieliśmy, niemal każde urządzenie SCSI-1 może być nazwane SCSI-2 (a nawet SCSI-3). ponieważ większość ulepszeń nowych wersji jest opcjonalnych. Oczywiście nie wykorzystamy możliwości szybkich modeli w starych wolnych adapterach. Podobnie nie ma sensu kupowanie adaptera SC­SI Ultra3 do obsługi starych urządzeń SCSI. Można nawet przyłączać urządzenia 8-bitowe i 16-bitowe do tej samej magistrali, korzystając z odpowiednich złączy.

SCSI-1

Interfejs SCSI-1 stanowi pierwszą implementację SCSI i oficjalnie występuje pod nazwą ANSI X3.131-1986. Poniżej wymienimy podstawowe funkcje interfejsu SCSI-1:

Interfejs SCSI-1 jest obecnie uważany za przestarzały i standard ten został wycofany przez ANSI i zastąpiony standardem SCSI-2.

SCSI-2

Interfejs SCSI-2 występuje pod oficjalną nazwą ANSI X.3131-1994. Specyfikacja SCSI-2 stanowi ulepszoną wer­sję SCSI-1 z uściślonymi niektórymi fragmentami specyfikacji oraz dodanymi nowymi funkcjami i opcjami. Urzą­dzenia SCSI-1 i SCSI-2 są ze sobą zgodne, ale urządzenia SCSI-I ignorują dodatkowe funkcje dostępne w SCSI-2.

Tabela 8.2. Typy SCSI, prędkości przesyłu i okablowania

Standard SCSI

Technologia SCSI

Określenie marketingowe

Częstotliwość zegara (MHz)

Szerokość l magistrali

ST/DT

SCSI-1

Async

Asynchronous

5

8 bitów

ST

SCSI-1

Fast-5

Synchronous

5

8 bitów j

ST

SCSI-2

Fast-5/Wide

Wide

5

16 bitów

ST

SCSI-2

Fast-10

Fast

10

8 bitów l

ST

SCSI-2

Fast-10/Wide

Fast/Wide

10

16 bitów i

ST

SCS1-3/SPI

Fast-20

Ultra

20

8 bitów i

ST

SCSI-3/SP1

Fast-20/Wide

Ultra/Wide

20

16 bitów j

ST

SCSI-3/SPI-2

Fast-40

Ultra2

40

8 bitów j

ST

SCSI-3/SPI-2

Fast-40/Wide

Ultra2/Wide

40

16 bitów j

ST

SCSI-3/SPI-3

FAST-80DT

UItra3 (Ultra 160)

405

16 bitów

DT

SCSI-3/SPI-4

FAST-160DT

Ultra4 (Ultra320)

805

16 bitów |

DT

SCS1-3/SPI-5

FAST-320DT

Ultra5 (Ultra640)

1605

16 bitów ;

DT

Długości kabli podano w metrach

SE Sygnalizacja asymetryczna

IIVD Sygnalizacja High Voltage Differential; przestarzała

LVD Sygnalizacja Low Voltage Differential

SPI ~ SCSI Parallel Interface; część specyfikacji SCSI-3

ST Single transition; jeden przesył na cykl zegara

DT Double transition; dwa przesyły na cykl zegara, tylko tryb 16-bitowy

Zmiany wprowadzone w SCSI-2 są stosunkowo niewielkie. Na przykład, SCSI-1 pozwala na opcjonalną reali­zację parzystości magistrali, natomiast SCSI-2 wymaga zrealizowania tej funkcji. Parzystość jest realizowana przez wysyłanie dodatkowego bitu weryfikującego, który ma zapewnić sprawdzanie integralności przesianych danych. Innym przykładem jest zapewnienie przez urządzenie inicjujące prądu dla terminatorów interfejsu, jednak większość urządzeń i tak działało w ten sposób.

SCSI-2 posiada również kilka opcjonalnych funkcji:

Interfejs Wide SCSI pozwala na równoległą transmisję po magistrali szerokości 16 bitów. Szersze połączenie wymagało zastosowania nowego typu kabla. Standardowy kabel 50-żyłowy (kabel 8-bitowy) nazywany jest kablem A. W specyfikacji SCSI-2 zdefiniowano nowy 68-żyłowy kabel P i w połączeniu z kablem A mial być używany do przesyłów 32 bitowych. Jednak z powodu braku zainteresowania ze strony przemysłu i zbyt drogich układów, 32-bitowa wersja SCSI nie została nigdy zaimplementowana i ostatecznie usunięta ze spe­cyfikacji SCSI-3. Dlatego dostępne są teraz dwa różne typu kabli SCSI — kabel A i kabel P. Kable A mają złącza 50-pinowe, natomiast kable P mają złącza 68-pinowe. Do przyłączenia urządzenia Wide SCSI. które ma pracować w trybie 16-bitowym, trzeba zastosować kabel P. Ten typ kabla został umieszczony w standar­dzie SCSI dopiero w wersji SCSI-3.

0x08 graphic

Określenie Fast SCSI odnosi się to trybu szybkiego przesyłu synchronicznego. Urządzenia Fast SCSI osiąga­ją prędkość przesyłu 10 MB/s w zwykłym 8-bitowym okablowaniu SCSI. Połączenie tego trybu z interfejsem Wide SCSI daje konfigurację zapewniającą prędkość przesyłu 20 MB/s (o nazwie Fast/Wide).

Złącza o dużej gęstości pinów pozwalają na produkcję mniejszych i bardziej efektywnych wtyków i kabli.

W SCSI-1 urządzenie inicjujące, jak na przykład adapter hosta, mogło wysyłać do urządzenia tylko jedno po­lecenie. W przypadku SCSI-2 adapter hosta może wysłać do urządzenia do 256 poleceń. Polecenia te są za­pamiętywane i przetwarzane bez wysyłania odpowiedzi. Urządzenie może nawet zmienić kolejność poleceń w celu zwiększenia efektywności. Jest to użyteczne szczególnie w środowiskach wielozadaniowych, takich jak OS/2 i Windows NT, które mogą skorzystać z tej funkcji.

Interfejs SCSI-2 realizuje zestaw poleceń Common Command Set, który był używany przez producentów sprzętu, jeszcze zanim stał się częścią oficjalnego standardu. Zestaw CCS został zaprojektowany głównie na potrzeby dys­ków twardych i nie zawiera specyficznych poleceń przeznaczonych dla innych typów urządzeń. W SCSI-2 wiele starych poleceń zostało opracowanych na nowo i dodano kilka innych. Dla napędów CD-ROM, dysków optycz­nych, skanerów, urządzeń komunikacyjnych i zmieniaczy nośników (ang. jukebox) dodano nowy zestaw poleceń.

Niesymetryczna magistrala SCSI, aby działać niezawodnie, wymaga bardzo dokładnego dopasowania termi­natorów. Niestety, oryginalne, 132-omowe terminatory pasywne zdefiniowane w standardzie SCSI-1 nie byty projektowane do pracy z. dużymi prędkościami transmisji synchronicznej. Pasywne terminatory mogą powo­dować odbicia sygnału i generować błędy w przypadku, gdy zwiększa się prędkość przesyłu lub gdy do ma­gistrali zostanie dołączonych więcej urządzeń. Specyfikacja SCSI-2 definiuje nowe, aktywne terminatory (regulowane napięciem), które zmniejszają impedancję do 110 omów i polepszają spójność sygnału. Trzeba również pamiętać, że urządzenia LVD SCSI wymagają zastosowania specjalnych terminatorów LVD. Jeżeli w magistrali, do której podłączone są urządzenia LVD, zostaną zastosowane terminatory SE, urządzenia nie będą działały, a jeżeli są to urządzenia wielofunkcyjne, będą one działały w trybie SE.

Opcja ta nie jest wymagana; jest ona opcjonalna w specyfikacji SCSI. Jeżeli do standardowego adaptera hosta SCSI podłączymy napęd Fast SCSI, interfejs będzie działał, ale jedynie ze standardowymi prędkościami SCSI.

SCSI-3

SCSI-3 to termin opisujący zbiór standardów będących w chwili obecnej jeszcze w trakcie tworzenia. W prze­ciwieństwie do SCSI-1 i SCSI-2, specyfikacja SCSI-3 nie jest jednym dokumentem opisującym wszystkie war­stwy i interfejsy SCSI —jest to zbiór dokumentów opisujących podstawowe polecenia, specyficzne zestawy poleceń, interfejsy oraz protokoły. Dostępne są zbiory poleceń dla dysków twardych, napędów taśm. polecenia dla kontrolerów macierzy RAID i inne. Dodatkowo istnieje ogólny model architektur}' SCSI (SAM) opisują­cy interfejsy fizyczne i elektryczne oraz standard SCSI Parallel Interface opisujący najczęściej używane od­miany SCSI. Każdy dokument standardu jest teraz publikowany osobno i ma swój własny numer wersji — na przykład, w ramach SCSI-3 opublikowano pięć wersji specyfikacji SCSI Parallel Interface. Najczęściej nie od­wołuje się do SCSI-3 jako całości, ale do specyficznych podzbiorów SCSI-3. na przykład SPI-3 (UItra3 SCSI).

Podstawowe nowości w SCSI-3 to:

Podzielenie definicji SCSI-3 na wiele mniejszych standardów pozwala na szybszy rozwój całości. Poszcze­gólne podstandardy mogą być publikowane częściej, bez konieczności oczekiwania na zatwierdzenie całości.

Na rysunku 8.4 zamieszczono dostępne dziś główne składowe standardu SCSI.


Rysunek 8.4. Architektura SCSI


0x08 graphic

Najnowszą zmianą wprowadzoną do standardu SCSI są tryby Ultra320 (Ultra4) i Ultra640 (Ultra5), oferujące przepustowość wynoszącą odpowiednio 320 i 640 MB/s. Ultra2 SCSI i szybsze tryby uwzględniają standard połączeń elektrycznych LVD, który pozwala na stosowanie kabli o większej długości. Starszy standard sy­gnalizacji HVD został zarzucony.

Gros użytkowników ma kłopoty ze zrozumieniem wielu wariantów prędkości SCSI. Częściowo problem ten jest spowodowany podawaniem prędkości jako częstotliwości zegara (MHz) lub prędkości przesyłu. W przypadku przesyłów 8-bitowych otrzymujemy 1 bajt na cykl, czyli jeżeli częstotliwość zegara wynosi 40 MHz (Fast-40 lub Ultra2 SCSI), prędkość przesyłu wynosi 40 MB/s. Jeżeli jednak użyjemy interfejsu Wide (16 bitowy), pręd­kość przesyłu zwiększy się dwukrotnie do 80 MB/s, choć częstotliwość zegara nadal wynosi 40 MHz. W przy­padku interfejsu Fast-80DT, prędkość zegara to również 40 MHz, jednak z powodu wykonywania dwóch prze­syłów na cykl, wynikowa prędkość przesyłu wynosi 160 MB/s. Tak samo jest w przypadku Ultra4 SCSI. który działa z częstotliwością 80 MHZ, przesyła 2 bajty jednocześnie, a w trakcie cyklu zegara wykonywane są dwa przesyły (przy przepustowości wynoszącej 320 MB/s). Standard UltraS podwaja częstotliwość do 160 MHz

— przesyła 2 bajty jednocześnie, a w: trakcie cyklu zegara wykonywane są dwa przesyły (przy przepustowości wynoszącej 640 MB/s).

Najczęstszą przyczyną pomyłek jest używanie przy określaniu szybkości i trybów zarówno nazw oficjalnych

— takich jak Fast-10, Fast-20, Fast-40, Fast-80DT i Fast-160DT —jak i nazw marketingowych, jak Fast. Ultra, Ultra2, Ultra3 (nazywany również UltralóO) i Ultra4 (Ultra320). W tabeli 8.2 zamieszczono wszystkie oficjalne i marketingowe nazwy odmian SCSI wraz z ich prędkościami.

Dalsza ewolucja najczęściej używanych odmian SCSI jest zdefiniowana w postaci standardów SPI wchodzą­cych w skład SCSI-3. Standardy SPI opiszemy w dalszej części rozdziału.

SPI lub Ultra SCSI

Interfejs SCSI Parallel Interface, opublikowany 1 stycznia 1995 r., jest pierwszym standardem SCSI wcho­dzącym w skład SCSI-3. Oficjalna nazwa standardu SPI brzmi ANSI/INCITS 253-1995 (wcześniej ANSI X3.253-1995). SPI przez większość działów marketingu jest nazywany Ultra SCSI. Standard ten definiuje złącza i sygnały elektryczne magistrali równoległej. Osobny dokument o nazwie SCSI Interlock Protocol (S1P) definiuje zbiór dostępnych poleceń. SIP został dodany do kolejnych standardów SPI-2 i SPI-3 i nie sta­nowi już osobnego dokumentu. Podstawowymi funkcjami dodanymi w SPI (Ultra SCSI) są:

SPI na początku określała prędkości do Fast SCSI (10 MHz), co pozwalało osiągać prędkości do 20 MB/s przy użyciu magistrali o szerokości 16 bitów. Później, jako dodatkowy dokument (ANSI/INCITS 253-1995 Amend-menl 1). dodany został tryb Fast-20 (20 MHz), często nazywany Ultra SCSI. który, korzystając z 16-bitowej magistrali, mógł osiągnąć prędkość 40 MB/s (nazywany często Ultra/Wide).

SPI-2 i Ultra2 SCSI

Interfejs SPI-2, nazywany również Ultra2 SCSI, został oficjalnie opublikowany 14 kwietnia 1998 r. jako do­kument ANSI/INCITS 302-1998, w którym uzupełniono poprzednią wersję o kilka nowych funkcji:

Najbardziej znaczącym usprawnieniem jest tryb o większej prędkości określany jako Fast-40. nazywany rów­nież Ultra2 SCSI, w którym magistrala pracuje z częstotliwością 40 MHz. Na wąskiej (8-bitowej) magistrali po­zwala to na osiągnięcie prędkości 40 MB/s, natomiast na szerokiej magistrali (16-bitowej) prędkości 80 MB/s

— tryb ten jest nazywany Ultra2/Wide.

Aby osiągnąć tę prędkość, należy zastosować nowy standard elektryczny interfejsu, nazywany LVD. Wolniej­szy interfejs elektryczny magistrali niesymetrycznej jest wystarczający, co najwyżej, dla trybu Fast-20; tryb Fast-40 wymaga pracy jako LVD. Sygnalizacja LVD umożliwia również stosowanie dłuższych kabli — do 12 metrów w przypadku podłączania wielu urządzeń i 25 metrów dla pojedynczego urządzenia. Urządzenia

LVD i SE mogą pracować z tą samą magistralą, ale w takim przypadku działa ona w trybie SE, jej długość jest ograniczona do 1,5 m. a tryb transmisji do Fast-20. Praca w trybie LVD wymaga zastosowania specjalnych terminatorów LVD lub wielofunkcyjnych LVD/SE. Jeżeli zostaną użyte terminatory wielofunkcyjne, taki ter­minator działa zarówno w magistrali SE, jak i LVD.

Standard SPI-2 zawiera również specyfikację SCSI Interlink Protocol (SIP) i definiuje złącze 80-pinowe Single Connector Attachment (SCA-2) przeznaczone dla macierzy, które można włączać i wyłączać bez wyłączania systemu. Zdefiniowano również nowe złącze Very High Density Connector (VHDC), które jest mniejsze niż poprzednio stosowane.

Sygnalizacja SCSI

Standardowy interfejs SCSI korzysta z techniki sygnalizacji nazywanej sygnalizacją SE (ang. single ended — niezrównoważona). Realizacja tej techniki jest tania, ale układ taki jest narażony na zakłócenia i ma niską wydajność.

Sygnalizacja SE jest nazywana sygnalizacją niezrównoważoną. Każdy sygnał jest przesyłany przez parę prze­wodów, najczęściej skręconych ze sobą w celu zmniejszenia zakłóceń. W przypadku SE jeden przewód jest uziemiony — najczęściej do wspólnej dla wszystkich przewodów masy — drugi przenosi zmiany wartości napięcia. Odbiornik umieszczony na drugim końcu kabla wykrywa zmiany w napięciu między kablami.

Niestety, ten typ sygnalizacji niezrównoważonej jest bardzo narażony na błędy powodowane zakłóceniami, interferencjami elektromagnetycznymi i upływnością do ziemi; problemy te narastają wraz ze wzrostem dłu­gości kabla. Dlatego właśnie długość magistrali Ultra SCSI jest ograniczona do 1,5 metra.

W standardzie SCSI wprowadzono również technikę sygnalizacji o nazwie High Yoltage Differential (metoda różnicowa wysokonapięciowa). Sygnalizacja różnicowa nazywana jest również sygnalizacją zrównoważoną i nadal jest realizowana przy użyciu pary przewodów. Pierwszy przewód tej pary przenosi ten sam sygnał co w przypadku SCSI SE, natomiast drugi przenosi inwersję logiczną tego sygnału. Urządzenie odbierające wy­krywa różnicę napięcia między przewodami pary (stąd różnica w nazwie). Używając przewodów w postaci pary zrównoważonej, odbiornik nie musi wykrywać wielkości napięcia, a jedynie różnicę między napięciami. Układy elektroniczne mogą to robić o wiele bardziej niezawodnie, co powoduje, że system taki jest bardziej odporny na zakłócenia i pozwala na stosowanie kabli o większej długości. Z tego powodu w przypadku róż­nicowego SCSI można korzystać z kabli o długości do 25 metrów, natomiast SCSI niesymetryczne pozwala na maksymalnie 6 metrowe lub jedynie 1,5 metrowe w przypadku szybszych trybów przesyłu.

0x08 graphic
Na rysunku 8.5 przedstawiona została różnica pomiędzy zrównoważonymi (różnicowymi) a niezrównoważo­nymi (niesymetrycznymi) liniami transmisyjnymi.

Rysunek 8.5.

Sygnalizacja zrównoważona

(różnicowa) i niezrównoważona

(asymetryczna)

Niestety, oryginalny standard sygnalizacji HVD korzysta z wysokiego napięcia między parą przewodów. Ozna­cza to, że nie da się wyprodukować małych specjalizowanych układów o niewielkim zużyciu energii. W ste­rowniku trzeba wykorzystać kilka układów. Zestaw taki jest wymagany po obu stronach, tzn. zarówno adap­ter hosta, jak i układy urządzenia muszą być duże i drogie.

Innym problemem związanym z HVD SCSI jest to, że choć kable i wtyczki wyglądają identycznie jak SE SCSI, oba typy urządzeń nie mogą być podłączane do jednej magistrali. Jeżeli wykonamy taką operację, wy­sokie napięcie z urządzenia HVD zniszczy układy odbiornika we wszystkich urządzeniach SE podłączonych do magistrali. Inaczej mówiąc, spalimy sprzęt, a to niezbyt miła perspektywa.

Ponieważ SE SCSI działa wystarczająco dobrze dla wymaganych jeszcze niedawno prędkości, sygnalizacja HVD SCSI nigdy nie zdobyła większej popularności. Była ona używana w minikomputerach i bardzo rzadko w komputerach PC. Z tego powodu, jak również z powodu niezgodności elektrycznej ze standardowymi urzą­dzeniami SE SCSI, sygnalizacja HVD została usunięta ze specyfikacji SCSI w ostatnich dokumentach SCSI-3. Dlatego możemy ją traktować jako przestarzałą.

Nadal jednak potrzebna była bardziej niezawodna technika sygnalizacji pozwalającej na stosowanie dłuższych kabli. Odpowiedzią na te potrzeby była sygnalizacja LVD. Nowa wersja umożliwiła produkowanie niedrogich układów SCSI o niewielkim zużyciu energii. Inną zaletą LVD jest użycie niskiego napięcia, dzięki czemu, je­żeli urządzenie LVD zostanie podłączone do magistrali SE, nic nie ulegnie uszkodzeniu. Dodatkowo opcjo­nalną częścią standardu jest możliwość konstruowania urządzeń wielofunkcyjnych, czyli współdziałających z magistralami LVD oraz SE. W przypadku dołączenia urządzenia wielofunkcyjnego LVD do magistrali SE. wykrywa ono ten fakt i przełącza się na tryb pracy SE.

Dzięki temu urządzenia wielofunkcyjne LVD/SE SCSI mogą być przyłączane zarówno do magistrali LVD, jak i SE. Jeżeli jednak do magistrali będzie przyłączone choć jedno urządzenie SE, wszystkie urządzenia LVD przełączą się do trybu SE. Ponieważ tryb SE pozwala na stosowanie częstotliwości taktowania do 20 MHz (Fast-20 lub UltraSCSI) i kabli o długości do 1,5 lub 3 metrów, urządzenia będą pracować z co najwyżej taką prędkością i mogą występować problemy z długimi kablami. Dlatego zakupienie napędu wielofunkcyjnego Ultra3 LVD/SE i podłączenie go do magistrali SCSI razem z urządzeniami SE, będzie powodowało, że nie będą wykorzystane możliwości szybszego urządzenia.

Należy zwrócić uwagę, że wszystkie urządzenia Ultra2 i Ultra3 obsługują sygnalizację LVD. ponieważ jest to jedyny sposób na osiągnięcie prędkości Ultra2 (40 MHz) i Ultra3 (80 MHz). Również urządzenia Ultra SCSI (20 MHz) lub wolniejsze mogą obsługiwać sygnalizację LVD, ale jest to rzadko spotykana sytuacja i LVD jest stosowana tylko w przypadku Ultra2 i Ultra3.

W zamieszczonej wcześniej tabeli 8.2 wymienione są wszystkie dostępne prędkości i maksymalne długości kabli dla wszystkich obsługiwanych technik sygnalizacji.

0x08 graphic
Ponieważ dla sygnalizacji SE, HVD, LVD i wielofunkcyjnych urządzeń SE/LVD stosowane są takie same wtyczki, a dołączenie do magistrali urządzenia HVD powoduje uszkodzenie urządzeń SE i LVD, trzeba wie­dzieć, w jaki sposób zapobiegać takiej awarii. Jednym ze sposobów jest sprawdzenie oznaczenia na urządze­niu; producenci stosują uniwersalne symbole dla urządzeń SE i różnicowego SCSI. Symbole te są przedsta­wione na rysunku 8.6.

Rysunek 8.6.

Uniwersalne symbole identyfikujące urządzenia SE, L VD, wielofunkcyjne L VD/SE i HVD

Jeżeli na urządzeniu nie ma odpowiednich symboli, za pomocą omomierza można sprawdzić oporność po­między pinami 21 i 22:

Mimo że przyłączając urządzenie HVD do magistrali LVD lub SCSI, można zniszczyć pozostałe urządzenia, najczęściej nie stanowi to problemu, ponieważ niemal wszystkie urządzenia przeznaczone dla komputerów PC są typu SE, LVD lub LVD/SE. Sygnalizacja HVD jest już uznana za przestarzałą i usunięta z standardu SCSI w specyfikacji Ultra3 SCSI (SPI-3).

SPI-3 lub Ultra3 SCSI (Ultral60)

Opublikowana 1 listopada 2000 r. specyfikacja SPI-3 — znana również jako Ultra3 lub UltralóO SCSI — jest utworzona w oparciu o poprzedni standard i dwukrotnie zwiększa prędkość w stosunku do Fast-80DT (podwójne przejście). Pozwala to na osiągnięcie maksymalnej przepustowości 160 MB/s. Podstawowymi funkcjami dodanymi w specyfikacji SPI-3 (Ultra3) są:

Taktowanie z podwójnym przejściem polega na przesyłaniu danych na zboczu narastającym i opadającym taktu zegara REQ/ACK. Pozwala to na osiągnięcie przez urządzenia Ultra3 SCSI prędkości przesyłu 160 MB/s. przy utrzymaniu częstotliwości zegara 40 MHz. Tryb ten jest dostępny jedynie dla magistrali o szerokości 16 bitów.

Kontrola parzystości CRC zapewnia kontrolę błędów danych przesyłanych przez interfejs Ultra3 SCSI. Po­przednie wersje SCSI do wykrywania błędów transmisji wykorzystywały prostą kontrolę parzystości. Metoda CRC jest efektywniejszym sposobem wykrywania błędów i działa o wiele lepiej w przypadku dużych pręd­kości przesyłu.

Kontrola domenowa umożliwia lepszą negocjację trybów i prędkości przesyłu. W przypadku stosowania wła­ściwej wersji SCSI, podczas inicjalizacji magistrali do każdego urządzenia wysyłane jest polecenie INQUIRY z najniższą możliwą prędkością 5 MHz, co pozwala na odczytanie maksymalnych prędkości, z jakimi mogą pracować poszczególne urządzenia. Opcja ta powstała w celu rozwiązania problemu niedostatecznej wydaj­ności jednego z urządzeń pośredniczących, co w przypadku zastosowania zbyt dużej prędkości transmisji mo­że spowodować to, że wolniejsze urządzenie może stać się niedostępne. W przypadku kontroli domenowej, po wynegocjowaniu prędkości pomiędzy komputerem a urządzeniem wykonywany jest test poprawności transmisji. Jeżeli zostaną wykryte błędy, prędkość jest obniżana, aż do uzyskania bezbłędnej transmisji. Jest to działanie podobne do negocjacji prędkości przez modemy i stanowi kolejny krok w kierunku polepszenia elastyczności i niezawodności interfejsu SCSI.

Pakietowanie to protokół pozwalający na bardziej efektywną transmisję pomiędzy urządzeniami SCSI. Trady­cyjny równoległy interfejs SCSI korzysta z kilku faz magistrali do przesyłania różnych typów danych: jednej na dane poleceń, dwóch na komunikaty, jednej na status i dwóch na dane. Dla odróżnienia, pakietowy SCSI przesyła te wszystkie dane, korzystając tylko z dwóch faz, po jednej w każdym kierunku. Znacząco zmniejsza to narzut na polecenia i protokół, co jest szczególnie ważne w przypadku coraz większych prędkości.

Pakietowy SCSI jest w pełni zgodny z tradycyjnym równoległym SCSI, dzięki czemu urządzenia pakietowe­go SCSI mogą korzystać z tej samej magistrali co tradycyjne urządzenia SCSI. Jeżeli host adapter obsługuje transmisję pakietową, może komunikować się z jednym urządzeniem za pomocą przesyłu pakietowego i z dru­gim, korzystając z tradycyjnego protokołu. Jednak nie wszystkie urządzenia Ultra3 lub UltralóO SCSI zawie­rają obsługę przesyłu pakietowego. Urządzenia Ultra3 obsługujące przesył pakietowy są często oznaczane Ultral60+ SCSI.

Funkcja Quick Arbitrate and Select (QAS) pozwala zmniejszyć czas arbitrażu magistrali poprzez rezygnację z czasu zużywanego na zwalnianie magistrali. QAS pozwala na przeniesienie kontroli nad magistralą do in­nego urządzenia bez fazy BUS FREE. Urządzenia SCSI zgłaszają zdolność do obsługi QAS za pomocą pole­cenia IN0JJIRY.

Ultral60 i Ultral60+

Ponieważ wszystkie pięć nowych funkcji wprowadzonych w Ultra3 SCSI jest opcjonalnych, producenci na­pędów mogą deklarować zgodność z Ultra3 bez zapewniania odpowiednich funkcji. Aby zmusić producen­tów do podawania prawdy w reklamach i zapewnienia minimalnego poziomu wydajności, grupa producentów połączyła siły w celu utworzenia podstandardu Ultra3 SCSI zapewniającego minimalny zestaw funkcji. Jest on nazwany UltralóO lub UltraI60+ — nazwa wskazuje osiąganą przepustowość 160 MB/s. Ten podstandard nie jest oficjalną częścią standardu SCSI. Ale mimo to, grupa go kontrolująca gwarantuje spełnienie specyfi­kacji i utrzymanie odpowiedniego poziomu wydajności.

UltralóO jest specyficzną implementacją Ultra3 (SPI-3) SCSI, która zawiera pierwsze trzy dodatkowe funkcje Ultra3 SCSI:

UltralóO SCSI działa w trybie LVD i jest zgodny z urządzeniami Ultra2 SCSI (LVD). Jedyną jego wadą jest brak możliwości współpracy z urządzeniami SE. Gdy do jednej magistrali dołączone są urządzenia Ultra2 i UltralóO (Ultra3), każde z nich może działać ze swoją maksymalną prędkością, niezależnie od innych urzą­dzeń. Magistrala dynamicznie przełącza się między trybami z jednym i dwoma przejściami, aby obsłużyć oba typy urządzeń.

Do Ultral60+ dodano pozostałe dwie funkcje, dzięki czemu zapewniono pełną implementację standardu Ultra3:

W przypadku UltralóO i Ultral60+ wymagany zakres funkcji zapewnia osiągnięcie minimalnego zadeklaro­wanego poziomu wydajności. Ultral60+ SCSI jest najwydajniejszym interfejsem dla urządzeń pamięci ma­sowej stosowanym w komputerach PC i najlepiej nadaje się do pracy w obciążonych systemach, takich jak wydajne serwery sieciowe lub stacje robocze. Skalowalność i elastyczność tego interfejsu pozwala na osiąga­nie dużej wydajności przy zachowaniu odpowiedniego poziomu niezawodności.

SPI-4 lub Ultra4 SCSI (Ultra320)

Opublikowana 1 grudnia 2002 r. pod nazwą ANSI/INCITS 362-2002 specyfikacja SPI-4 — znana również pod nazwą Ultra4 lub Ultra320 — posiada te same funkcje co poprzedni standard Ultra3 (UltralóO) i do­daje kilka nowych, mających za zadanie zapewnić niezawodne przesyłanie danych z dwukrotnie większą prędkością.

Specyfikacja Ultra320 SCSI zawiera funkcje pakietowego przesyłu danych i QAS dostępne już w specyfikacji Ultra] 60+ SCSI, ale tym razem są to funkcje obligatoryjne.

Do nowych funkcji Ultra320 należą:

♦ Prędkość transmisji. UItra320 przesyła 2 bajty danych (16 bitów), korzystając z zegara 80 MHz

i dwóch przesyłów na cykl (DT), dzięki czemu maksymalna prędkość przesyłu wynosi 320 MB/s.

W przypadku dużych szybkości taktowania sygnałów (tryb DT) z częstotliwością 80 MHz, stosowaną przez standard Ultra320, pojawiły się problemy z degradacją sygnału o dużej częstotliwości i ze zmianą jego syn­chronizacji, występujące w kablach i układach logicznych. Aby to skompensować, w standardzie Ultra320 korzysta się z jednej z dwóch dostępnych metod. W przypadku nadajników jest nią wstępna kompensacja przy zapisie WPC (write precompensation), natomiast w przypadku odbiorników — aktywne filtry z możliwością dopasowania AAF (adjustable active fillers). Przez zastosowanie — po zmianie cyklu zegarowego w stosunku do pierwszego bitu — silniejszego pola magnetycznego niż w przypadku kolejnych metoda WPC zmienia przesyłane sygnały. Gdy używane są odbiorniki z filtrami AAF, z metody WPC można zrezygnować. Filtry AAF są w stanie skompensować problemy związane z degradacją i zmianą synchronizacji sygnału, występu­jące w ścieżce transmisyjnej po stronie odbierającej. W przypadku stosowania filtrów AAF przed każdym kolejnym transferem danych wysyłane są specjalne sygnały informacyjne o wysokiej i niskiej częstotliwości. Ma to na celu umożliwienie odbiornikowi dynamiczne dostosowanie się do problemów z degradacją i zmianą synchronizacji sygnału o dużej częstotliwości. Filtry AAF są uważane za najlepszą metodę, ponieważ mają charakter dynamiczny i automatycznie dopasowują się, tak aby skompensować określone warunki panujące w magistrali w chwili wykonywania kolejnych transferów danych. Z tego powodu szybszy standard Ultra640 wymaga zastosowania filtrów AAF, natomiast wstępna kompensacja przy zapisie jest opcjonalna.

SPI-5 lub Ultra5 SCSI (Ultra640)

Standard SPI-5 (określany jest też jako Ultra5 lub Ultra640 SCSI) został opublikowany 10 lipca 2003 r. pod nazwą ANSI/INCITS 367-2003. Zakładane jest w nim dwukrotne zwiększenie szybkości w stosunku do po­przedniego standardu Ultra4 (Ultra320). Najistotniejszy jest fakt, że według organizacji Technical Committee T10 standard SPI-5 (Ultra640) jest uznawany za ostatni ze standardów równoległych interfejsów SCSI. Wraz z pojawieniem się standardu Ultra640 wspomniano o nowym standardzie SAS (Serial Attached SCSP), który w przyszłości miałby zająć miejsce równoległego interfejsu SCSI.

Standard Ultra640 oferuje takie same możliwości, jak standard Ultra320 SCSI. Ponadto dysponuje następują­cymi dodatkowymi funkcjami i stawia następujące wymagania:

W przypadku standardu Ultra640 SCSI maksymalna długość kabla taśmowego wynosi 2 m. Wynika to stąd. że w tego typu kablu pomiędzy sąsiednimi żyłami występuje duży przesłuch lub szumy towarzyszące prze­syłaniu sygnału. Jeżeli do ekranowanego kabla podłączono jedno urządzenie, jego maksymalna długość wy­nosi 20 m lub 10 m w pozostałych przypadkach.

Jest niemal pewne, że standard SPI-5 SCSI (Ultra640) będzie ostatnią generacją równoległych interfejsów SCSI. Tak naprawdę aktualnie na rynku nie ma żadnych produktów opartych na tym standardzie. Ponadto — ze względu na to, że pojawił się uważany za przyszłość SCSI standard SAS — produkty zgodne ze standar­dem Ultra640 mogą nigdy nie być dostępne. Ponieważ standard SAS korzysta z takiej samej podstawowej warstwy fizycznej i połączeń, jak standard Serial ATA, można oczekiwać, że będzie kolejną technologią sto­sowaną zarówno w urządzeniach SCSI, jak i zaawansowanych produktach opartych na standardzie SATA.

Serial Attached SCSI

Pojawienie się standardów Ultra320 i UItra640, wyznaczających kres technologii równoległego interfejsu SCSI, oraz wyjątkowa trudność i kosztowność związana z projektowaniem kolejnych szybszych wersji magi­strali równoległej sprawiły, że organizacja T10 bliżej zaczęła przyglądać się architekturom interfejsów szere­gowych i brać je pod uwagę jako ewentualne rozwiązania, które pojawią się w przyszłych standardach SCSI. W kwietniu 2002 r. zaczęto prace nad przyszłym standardem szeregowego interfejsu SCSI. Zamiast od­krywać koło na nowo, organizacja postanowiła zastosować takie same rozwiązania dotyczące sygnalizacji, okablowania i złączy, jakie wykorzystano w przypadku standardu SATA. Dodatkowo zdecydowano się na połączenie protokołu poleceń SCSI z nieznacznie zmodyfikowaną fizyczną warstwą interfejsu SATA. Efektem jest standard Serial Attached SCSI. oficjalnie opublikowany 30 października 2003 r. pod nazwą ANSI/INCITS 376-2003. Aktualnie trwają prace projektowe nad rozszerzoną wersją 1.1 standardu Serial Attached SCSI, zawierającą poprawki i dodatkowe udoskonalenia.

Przy tworzeniu standardu SAS skorzystano z już istniejącego fizycznego interfejsu, okablowania i złączy standardu SATA (co było korzystne z ekonomicznego punktu widzenia) i jednocześnie zachowano solidność oprogramowania oraz niezawodność interfejsu SCSI. SAS zaprojektowano jako rozszerzalny standard, mając na względzie oferowanie przez niego w przyszłości wyższych szybkości i wydajności. Podobnie jak w przy­padku standardu SATA, szeregowy interfejs SCSI jest samotaktujący, dzięki czemu możliwe jest uzyskiwanie coraz większych szybkości przesyłania danych. Do podstawowych funkcji standardu Serial Attached SCSI należy zaliczyć:

o przepustowości 150 MB/s. Dzięki temu płyta główna lub kontroler dysponujący złączami SAS może współpracować z dyskami SAS i SATA.

Najważniejszą funkcją standardu SAS jest obsługa dwóch typów dysków. Możliwe jest podłączenie do inter­fejsu SAS dysków SATA spełniających funkcję tanich magazynów danych i prawdziwych dysków SAS, któ­re można zastosować w bardziej wydajnych komputerach. Złącze SAS pozwala na podłączenie zarówno dys­ków SAS, jak i SATA. Niemożliwe jest jednak podłączenie dysku SAS do interfejsu SATA. Ponieważ sygnały złącza SATA stanowią podzbiór sygnałów SAS, dyski SATA będą współpracowały z kontrolerami SAS. Z kolei dyski SAS nie będą działały z kontrolerami SATA. Złącza SAS posiadają specjalne klucze, mające zapobiec podłączeniu ich do kontrolera SATA.

Standard SAS korzysta z trzech protokołów, z których każdy przesyła różnego typu dane. To, który z nich zostanie użyty, zależy od typu wykorzystywanego urządzenia. Oto one:

Uwzględnienie powyższych protokołów w standardzie SAS sprawiło, że jest on w pełni zgodny z istniejącymi urządzeniami i oprogramowaniem opartym zarówno na standardzie SCSI, jak i SATA. Zgodność wstecz stan­dardu SAS i korzystanie przez niego z fizycznych połączeń SATA sprawiają, że interfejs SAS może odegrać rolę uniwersalnej metody łączenia ze sobą urządzeń SAS i SATA. Jeżeli komputer dysponuje interfejsem SAS, użytkownik zamierzający zrezygnować z interfejsu SATA na rzecz SAS ma dwie możliwości. Pierwszą z nich jest zastąpienie dysku SATA dyskiem SAS, natomiast drugą pozostawienie dysku SATA i zainstalo­wanie w komputerze dysku SAS, a następnie jednoczesne korzystanie z obu. W celu dodatkowego zagwa­rantowania zgodności dysków twardych SAS i SATA na poziomie systemowym w styczniu 2003 r. organiza­cje STA (SCSI Trade Association) i Serial ATA II Working Group poinformowały o nawiązaniu współpracy.

Standard Serial Attached SCSI został zaprojektowany w celu uzyskania wyjątkowo dużej przepustowości. Szybkości transferu danych zaczynają się od 3 Gb/s (300 MB/s). Istnieją możliwości zwiększenia jej do 12 Gb/s (1200 MB/s). czyli niemal czterokrotnie w stosunku do szybkości oferowanej przez standard Ultra320 SCSI. Ponadto w przypadku standardu SAS wykorzystywane są połączenia typu punkt-punkt. Tego typu połączenia oferują każdemu dyskowi pełną przepustowość, a nie jej część (całkowita przepustowość jest dzielona po­między wieloma dyskami), tak jak w przypadku równoległego interfejsu SCSI. Urządzenia mogą też korzy­stać z połączeń Wide-Port. Oznacza to, że z jednym urządzeniem można nawiązać wiele połączeń. Całkowita przepustowość dostępna w takim przypadku jest zależna od liczby połączeń z urządzeniem.

W przypadku połączeń wewnętrznych używane są kable o maksymalnej długości 1 m. Są one podobne do kabli dysków SATA, z tą różnicą, że złącza mają inny klucz. Z kolei w przypadku połączeń zewnętrznych stosowane są kable typu Infiniband, obsługujące cztery połączenia. Za pomocą adaptera umieszczanego w wol­nym gnieździe rozszerzającym możliwe jest obsłużenie przez kabel zewnętrzny czterech połączeń wewnętrz­nych. Złącze urządzenia SAS wyglądem bardzo przypomina złącze dysku SATA, ale zawiera też klucz i do­datkowe opcjonalne sygnały obsługujące połączenia Wide-Port. Złącze kontrolera SAS zostało tak wykonane, aby możliwe było podłączenie do niego zarówno kabla SATA, jak i SAS. W przypadku każdego połączenia używanych jest 7 końcówek. Ich rozmieszczenie jest identyczne, jak w złączu SATA.

Na rysunku 8.7 pokazano ikonę identyfikującą urządzenia SAS i połączenia zgodne ze standardem SAS.

0x08 graphic
Rysunek 8.7.

Ikona identyfikująca urządzenie SAS (Serial Attached SCSI)

Kluczową funkcją standardu SAS jest możliwość jego rozszerzania. Urządzenia nazywane ekspanderami umożliwiają takie skalowanie interfejsu SAS, aby obsługiwał dużą liczbę dysków. Zasadniczo ekspandery są tanimi przełącznikami pozwalającymi zrealizować maksymalnie 128 połączeń punkt-punkt. W efekcie do jedne­go komputera za pośrednictwem wielu ekspanderów mogą zostać podłączone maksymalnie 16 384 urządze­nia SAS. Dla porównania równoległy interfejs SCSI ogranicza liczbę urządzeń znajdujących się w łańcuchu SCSI do 15 i w znacznym stopniu skraca całkowitą długość kabla.

Co prawda specyfikacja standardu SAS została zaprezentowana w październiku 2003 r., ale już w marcu tego samego roku po raz pierwszy firmy Seagate i HP zademonstrowały prototypy kontrolerów i dysków SAS. Moż­na oczekiwać, że w sprzedaży detalicznej urządzenia SAS (w tym kontrolery i dyski) dostępne będą w drugiej polowie 2004 r. Wszyscy więksi wytwórcy dysków twardych poinformowali o swoich planach dotyczących projektowania napędów dysków SAS. Interfejs SAS umożliwia też podłączenie istniejących dysków SATA.

Macierze dyskowe RAID

Większość serwerów, zwłaszcza przeznaczonych do bardziej profesjonalnych zastosowań niż obsługa grupy roboczej, zamiast dysków ATA korzysta z dysków SCSI, ponieważ oferują znakomitą wydajność. Tworząc macierz dyskową, można jeszcze bardziej poprawić wydajność i zwiększyć bezpieczeństwo danych. Techno­logie RAID (redundant array of inexpensive/independent disks) stosowane są zarówno w przypadku dysków SCSI. jak i ATA. Najnowsze macierze RAID oparte na dyskach SCSI obsługują przede wszystkim napędy Ultra320 i UltralóO. Stosuje sieje w tradycyjnych serwerach i w komputerach montowanych w specjalnych szafach. W celu zapoznania się z pełnym omówieniem poziomów RAID i terminologii należy zaglądnąć do rozdziału 7., „Interfejs ATA/IDE".

Fibrę Channel SCSI

Fibrę Channel SCSI to specyfikacja interfejsu szeregowego korzystającego ze światłowodów i zbioru poleceń SCSI. Zapewnia on prędkość 200 lub 400 MB/s z wykorzystaniem światłowodu, bądź kabla koncentrycznego na odcinku kilku kilometrów. Fibrę Channel jest zaprojektowany dla potrzeb połączeń długodystansowych

(kilkukiiomctrowycli) i łączenia różnych systemów. Standard stal się popularny w przypadku sieci pamięci masowej SAN (storage area network) i klastrów serwerów. Standard Fibrę Channel SCSI bardziej uzupełnia niż zastępuje standardy UltralóO i Ultra 320 SCSI, stworzone z myślą o obsłudze bezpośrednich połączeń z serwerami.

Wersja interfejsu Fibrę Channel SCSI oferująca szybkość 200 MB/s korzysta ze złącza GBIC {gigabit inter­face connector). Z kolei wersja o szybkości 400 MB/s w przypadku połączeń światłowodowych używa złącza SFP (smali form factor pluggable), natomiast przy zastosowaniu okablowania miedzianego — złącza HSSDC (high-speed serial data connector). Wymienione złącza pokazano w dalszej części rozdziału na rysunkach od

8.13 do 8.15.

Ponieważ interfejsy SAS i iSCSl przy niższym koszcie oferują bardzo podobną wydajność i korzyści co inter­fejs Fibrę Channel. można oczekiwać, że zastąpią go w wielu zastosowaniach, szczególnie w zaawansowanych

serwerach.

iSCSl

Standard iSCSl. będący kolejną odmianą interfejsu SCSI, oferuje wydajność napędów SCSI i sieciowe połą­czenia Ethernet o gigabitowej szybkości. Ponieważ do przesyłania danych pomiędzy systemami wykorzysty­wana jest technologia Ethernet, urządzenie pamięci masowej iSCSl może znajdować się w dowolnym miej­scu, będącym w zasięgu sieci Ethernet — może być podłączone nawet za pośrednictwem internetu. Standard iSCSl stwarza ponadto możliwości bezpiecznego zdalnego przechowywania danych w komputerach oddalo­nych od siebie o setki kilometrów. Ze względu na to, że technologia iSCSl może przesyłać dane w taki sam sposób, w jaki transportowane są w sieci Ethernet dane dowolnego typu, transfer jest możliwy nawet wów­czas, gdy niektóre połączenia pomiędzy serwerem i urządzeniami pamięci masowej nie są aktywne.

Można oczekiwać, że ostatecznie standard iSCSl zastąpi standard Fibrę Channel w takich zastosowaniach, jak urządzenia NAS (network attached storage), sieci pamięci masowej SAN i klastry pamięci masowej. Możliwe jest dostosowanie wersji karty iSCSl do istniejącej sieci Ethernet, podobnie jak w przypadku tech­nologii Fibrę Channel — w sprzedaży dostępne są bowiem wersje karty obsługujące okablowanie miedziane i światłowodowe. Pierwsze urządzenia iSCSl zostały wyprodukowane w połowie 2002 r. przez firmy Adaptec i Cisco Systems.

Kable i złącza SCSI


W przypadku kabli i złączy, standard SCSI jest bardzo specyficzny. Najczęściej stosowanym złączem zdefi­niowanym w tym standardzie jest 50-pinowe nieizolowane szpilkowe złącze czołowe stosowane do połączeń zewnętrznych i 50-pinowe obudowane złącze zatrzaskowe typu Centronics do połączeń zewnętrznych. Obu­dowane złącze typu Centronics jest również w oficjalnej specyfikacji nazywane Alternative 2. Dla magistrali asymetrycznych i różnicowych wymagane są terminatory pasywne lub aktywne (aktywne są zalecane). Kon­figuracja magistrali 50-przewodowej jest zdefiniowana w standardzie SCSI-2 jako kabel A.

Starsze adaptery SCSI (8 bitowe) i zewnętrzne urządzenia korzystają ze złącza typu Centronics o pełnej wiel­kości. Na rysunku 8.8 pokazane jest 50-pinowe złącze SCSI o małej gęstości.

Rysunek 8.8.

50-pinowe -łącze SCSI o małej gęstości

0x08 graphic

Standard SCSI-2 zawiera nowe 50-pinowe złącze dużej gęstości typu D dla kabli A. Złącze to nazywane jest Alternative 1. Na rysunku 8.9 pokazane jest 50-pinowe złącze SCSI o dużej gęstości.


0x08 graphic
Rysunek 8.9.

50-pinowe złącze SCSI o dużej gęstości

Złącze Alternative 2 typu Centronics pozostało niezmienione od zdefiniowania standardu SCSI-1. W specyfi­kacji SCSI-2 dodano kabel 68-żyłowy, zapewniający 16 i 32-bitowy transfer danych, jednak kabel ten musi być stosowany równolegle z kablem A. Producenci nie zaakceptowali tej opcji, więc kabel B został usunięty ze standardu SCSI-3.

Aby zastąpić kabel B, w specyfikacji SCSI-3 zdefiniowano nowy, 68-żyłowy kabel P. Dla kabli A i P zapro­jektowano nowe złącza typu D, zarówno w wersji z obudową, jak i bez niej. Obudowane złącza dużej gęsto­ści wykorzystują zatrzaski zaciskowe, a nie zatrzaski druciane, jak w złączach typu Centronics. Dla magistrali niesymetrycznej zdefiniowano również aktywne terminatory, które poprawiają integralność sygnału. Na ry­sunku 8.10 pokazane jest 68-pinowe złącze SCSI o dużej gęstości.

0x08 graphic
Rysunek 8.10.

68-pinowe złącze SCSI o dużej gęstości

Macierze dyskowe korzystają najczęściej ze specjalnych napędów SCSI ze złączem 80-pinowym Alternative-4. Złącze to obsługuje interfejs Wide SCSI i dodatkowo doprowadza zasilanie do urządzenia. Napędy ze złączem 80-pinowym są najczęściej typu hot swap — pozwalają na wyjmowanie i instalowanie dysków w macierzach bez wyłączania zasilania. 80-pinowe złącze Alt-4 jest pokazane na rysunku 8.11.


0x08 graphic
Rysunek 8.11.

80-pinowe złącze CSI Alt-4


Firma Apple i niektórzy inni producenci niestandardowych implementacji SCSI korzystają z kabla i złącza 25-pinowego. Jest to możliwe dzięki eliminacji z kabla większości linii uziemienia, co, niestety, powoduje nawiązanie zaszumionego i narażonego na zakłócenia połączenia. Nie zalecamy korzystania z kabli i złączy 25-pinowych — powinieneś w razie możliwości unikać ich stosowania. W przypadku tego typu połączeń sto­sowane jest złącze DB-25 identyczne jak w kablu równoległym do podłączania drukarki.

Niestety można uszkodzić sprzęt, włączając drukarkę do złącza SCSI DB-25, jak również włączając urządzenie SCSI do 25-pinowego złącza równoległego. Jeżeli więc wykorzystywany jest ten typ połączeń SCSI należy wyraźnie oznaczyć gniazda, ponieważ nie ma żadnego sposobu na odróżnienie złącza DB-25 SCSI od złącza DB-25 drukarki, patrząc jedynie na wtyczkę. Na rysunku 8.12 pokazane jest niestandardowe złącze SCSI DB-25.


0x08 graphic
Rysunek 8.12.

Niestandardowe złącze SCSI DB-25

Jeszcze raz namawiam do unikania wykonywania połączeń SCSI przy użyciu tego typu niestandardowego kabla lub złącza.

W zależności od rodzaju modułu GBIC znajdującego się w kontrolerze urządzenia Fibrę Channel SCSI ofe­rujące przepustowość 200 MB/s mogą łączyć się z różnego typu urządzeniami. Moduł może zawierać złącze SC (subscriber connector) obsługujące światłowody, bardzo szybkie złącze HSSDC lubprzeznaczone dla kabli

miedzianych złącze DB-9. Moduł GBIC może zostać wyjęty z kontrolera, co pokazano na rysunku 8.13. Jeśli jest używane okablowanie miedziane, urządzenia o przepustowości 400 MB/s mogą zostać podłączone do złącza HSSDC widocznego na rysunku 8.14. W przypadku zastosowania światłowodu urządzenia można podłączyć do złącza SFP. przedstawionego na rysunku 8.15.

0x08 graphic
Rysunek 8.13.

Moduł GBIC stosowany w przypadku interfejsu Fibrę Channel o przepustowości 200 MB/s, obsługujący złącza DB-9 (pokazane), SC lub HSSDC


Rysunek 8.14.

0x08 graphic
Ztącze HSSDC stosowane w przypadku wersji interfejsu Fibrę Channel o przepustowości 400 MB/s, opartego na okablowaniu miedzianym


0x08 graphic

Rysunek 8.15.

Złącze SFP stosowane w przypadku wersji interfejsu Fibrę Channel o przepustowości 400 MB/s, opartego na światłowodzie


Funkcje pinów złączy

i kabli równoległego interfejsu SCSI

Opiszemy teraz funkcje wszystkich pinów w różnych typach kabli i złączy SCSI. Istnieją elektrycznie różne wersje interfejsu SCSI — asymetryczny i różnicowy. Te dwie wersje są elektrycznie niezgodne i nie mogą być ze sobą łączone, w przeciwnym razie można uszkodzić sprzęt. Na szczęście dla komputerów PC istnieje bardzo niewiele urządzeń korzystających z interfejsu różnicowego, więc prawdopodobnie bardzo rzadko bę­dziesz mial z nimi do czynienia. Dla każdego typu SCSI (niesymetrycznego lub różnicowego) występują dwa podstawowe typu kabli SCSI:

Kabel A z 50 pinami jest używany w większości instalacji SCSI-1 oraz SCSI-2 i jest to kabel, z którym moż­na się najczęściej spotkać. Instalacje SCSI-2 Wide (16-bitowe) korzystają z kabla P, który ma 68 żył. Można łączyć urządzenia SCSI i Wide SCSI na jednej magistrali, korzystając ze specjalnych adapterów złączy. Insta­lacje SCSI-3 o szerokości magistrali 32-bitów miały korzystać z dodatkowego kabla Q, ale w końcu pomysł ten został zarzucony, ponieważ nie powstały żadne urządzenia korzystające z takiego interfejsu.

0x08 graphic
Kable SCSI są ekranowane w specyficzny sposób — przewody najważniejszych szybkozmiennych sygnałów są umieszczone w środku kabla, natomiast mniej ważne i przesyłające wolniej zmieniające się sygnały, w dwóch dodatkowych warstwach na obwodzie. Konstrukcja takiego kabla pokazana jest na rysunku 8.16.

Rysunek 8.16.

Przekrój typowego kabla SCSI

Taka konstrukcja powoduje, że kable SCSI są droższe oraz grubsze niż pozostałe typy kabli. Jednak taka bu­dowa kabla jest niezbędna jedynie w zewnętrznych kablach SCSI. Do łączenia urządzeń wewnątrz ekranowa­nej obudowy mogą być używane tańsze kable mające postać taśmy.

Kable A mogą mieć szpilkowe złącza czołowe (wewnętrzne), jak również zewnętrzne ekranowane złącza — każde z innymi wyprowadzeniami. Kable typu P mają takie same wyprowadzenia, niezależnie od tego, czy jest to połączenie wewnętrzne czy zewnętrzne.

Kable i złącza asymetrycznego SCSI

Asymetryczny interfejs elektryczny jest najczęściej stosowany w systemach PC. W tabelach 8.3 i 8.4 zamiesz­czone są opisy wszystkich kabli i pinów złączy. Kabel A występuje w dwóch wersjach — wewnętrznej nieekranowanej i zewnętrznej ekranowanej. Znak łącznika umieszczony przed nazwą sygnału wskazuje, że jest on aktywowany poziomem niskim. Linie RESERYED znajdują się w całej magistrali SCSI, natomiast mogą być niepodłączone w urządzeniach SCSI (mogą być również zwarte do masy) i zwarte do masy w ter­minatorach. W przypadku kabli P i Q linie RESERYED są niepodłączone w urządzeniach SCSI oraz termi­natorach magistrali.

Tabela 8.3. Złącza wewnętrznego niekranowanego złącza czołowego kabla A (interfejs asymetryczny)

Sygnał

Pin

Pin

Sygnał

GROUND

1

2

-DB(0)

GROUND

3

4

-DB(I)

GROUND

5

6

-DB(2)

GROUND

7

8

-DB(3)

GROUND

9

10

-DB(4)

GROUND

11

12

-DB(5)

GROUND

13

14

-DB(6)

GROUND

15

16

-DB(7)

GROUND

17

18

-DB(Parzystość)

GROUND

19

20

GROUND

GROUND

21

22

GROUND

RESERVED

23

24

RESERVED

Otwarty

25

26

TERMPWR

RESERVED

27

28

RESERVED

GROUND

29

30

GROUND

GROUND

31

32

-ATN

GROUND

33

34

GROUND

GROUND

35

36

-BSY

GROUND

37

38

-ACK

GROUND

39

40

-RST

GROUND

41

42

-MSG

GROUND

43

44

-SEL

GROUND

45

46

-C/D

GROUND

47

48

-REQ

GROUND

49

50

-I/O

Firma IBM umieszczała interfejs SCSI w niemal wszystkich systemach PS/2 wyprodukowanych po roku 1990. Systemy te korzystały z adaptera SCSI dla magistrali Micro-Channel lub miały SCSI Host Adapter wbudowany w płytę główną. W obu przypadkach interfejs SCSI firmy IBM wykorzystywał specjalne 60-pinowe złącze typu mini-Centronics, nie stosowane przez żadną inną firmę. Aby podłączyć to złącze do standardowych złączy typu Centronics używanych w urządzeniach zewnętrznych, niezbędny był specjalny kabel firmy IBM. W tabeli 8.5 opisane są sygnały wykorzystywane 60-pinowym złączu zewnętrznym firmy IBM. Należy zwrócić uwagę, że choć rozmieszczenie pinów jest nietypowe, to skojarzenie numeru pinu z sygnałem jest identyczne jak w standardowym wewnętrznym złączu czołowym SCSI. Firma IBM za­przestała stosowania tego rodzaju złącza po zakończeniu produkcji serii PS/2 i obecnie stosuje tylko stan­dardowe złącza SCSI.

Kable i złącza P (niesymetryczne) są stosowane do podłączania 16-bitowych urządzeń Wide SCSI-2 (roz­mieszczenie sygnałów jest opisane w tabeli 8.6.

Tabela 8.4. Złącza zewnętrznego złącza kabla A (interfejs asymetryczny)

Sygnał

Pin

Pin

Sygnał

GROUND

1

26

-DB(0)

GROUND

2

27

-DB(1)

GROUND

3

28

-DB(2)

GROUND

4

29

-DB(3)

GROUND

5

30

-DB(4)

GROUND

6

31

-DB(5)

GROUND

7

32

-DB(6)

GROUND

8

33

-DB(7)

GROUND

9

34

-DB(Parzystość)

GROUND

10

35

GROUND

GROUND

11

36

GROUND

RESERVED

12

37

RESERVED

Otwarty

13

38

TERMPWR

RESERVED

14

39

RESERVED

GROUND

15

40

GROUND

GROUND

16

41

-ATN

GROUND

17

42

GROUND

GROUND

18

43

-BSY

GROUND

19

44

-ACK

GROUND

20

45

-RST

GROUND

21

46

-MSG

GROUND

22

47

-SEL

GROUND

23

48

-C/D

GROUND

24

49

-REQ

GROUND

25

50

-MO

Sygnały High Voltage Differential SCSI

Interfejs High Yoltage Differential SCSI nie jest zwykle wykorzystywany w komputerach PC. ale jest bardzo popularny w systemach minikomputerowych, ponieważ można tworzyć magistrale o dużej długości, jednak wprowadzenie standardu Low Yoltage Differential SCSI pozwoliło wykorzystać zalety sygnalizacji różnico­wej w tańszych produktach SCSI.

Sygnalizacja różnicowa wymaga użycia sterowników na obu końcach magistrali, zarówno po stronie urządze­nia inicjującego, jak i docelowego. Działanie tej sygnalizacji można określić jako pchnij-pociągnij, w odróż­nieniu od sygnał-masa w standardowym niesymetrycznym SCSI. Pozwala to na stosowanie kabli o większej długości i eliminuje niektóre problemy z terminatorami.

Tabela 8.5. Zewnętrzne złącze IBM PS/2 SCSI

Nazwa sygnału

Pin

Pin

Nazwa sygnału

GROUND

1

60

niepodtączony

-DB(0)

2

59

niepodłączony

GROUND

3

58

niepodłączony

-DB(1)

4

57

niepodłączony

GROUND

5

56

niepodtączony

-DB(2)

6

55

niepodłączony

GROUND

7

54

niepodłączony

-DB(3)

oo

53

niepodłączony

GROUND

9

52

niepodłączony

-DB(4)

10

51

GROUND

GROUND

11

50

-I/O

-DB(5)

12

49

GROUND

GROUND

13

48

-REQ

-DB(6)

14

47

GROUND

GROUND

15

46

-C/D

-DB(7)

16

45

GROUND

GROUND

17

44

-SEL

-DB(Parzystość)

18

43

GROUND

GROUND

19

42

-MSG

GROUND

20

41

GROUND

GROUND

21

40

-RST

GROUND

22

39

GROUND

RESERVED

23

38

-ACK

RESERVED

24

37

GROUND

Otwarty

25

36

-BSY

TERMPWR

26

35

GROUND

RESERVED

27

34

GROUND

RESERVED

28

33

GROUND

GROUND

29

32

-ATN

GROUND

30

31

GROUND

Niemal wszystkie urządzenia peryferyjne dla komputerów PC wyprodukowane od czasu powstania interfejsu SCSI posiadają magistralę typu SE. Są one niezgodne z urządzeniami HVD, choć można użyć urządzeń HVD w magistralach SE, stosując odpowiednie (drogie) adaptery. Dla odróżnienia, urządzenia LVD mogą działać w magistrali SE, jeżeli są zaprojektowane jako urządzenia wielofunkcyjne, ale wtedy przełączają się do trybu SE. Jeżeli wszystkie urządzenia — w tym host adapter — obsługują tryb LVD, przełączają się w ten tryb, w którym mogą być używane dużo dłuższe kable i wyższe prędkości. Standardowe ograniczenie długości ma­gistrali SE SCSI wynosi 1,5 metra, a prędkości 20 MHz. Jeżeli magistrala działa w trybie LVD, jej maksymal­na długość może wynieść 12 metrów, a prędkość osiągnąć wartość 80 MHz. Maksymalną długość magistrali HVD SCSI to 25 metrów.

Trzeba pamiętać, że niemal wszystkie nowoczesne modele dysków twardych SCSI pracują w trybie Ultra2 lub L'ltra3, co oznacza, że są to urządzenia LVD lub wielofunkcyjne LVD/SE.

0x08 graphic
Tabela 8.6. Złącza wewnętrznego lub zewnętrznego obudowanego złącza kabla P (interfejs niesymetryczny)



Ekspandery

Ekspandery SCSI pozwalają na podział magistrali SCSI na więcej niż jeden segment fizyczny, z których każ­dy może mieć maksymalną długość dopuszczaną przez stosowaną metodę sygnalizacji. Zapewniają one całko­wite odtwarzanie sygnałów magistrali SCSI, co umożliwia zwiększenie długości kabli oraz współpracę w tej samej magistrali niezgodnych ze sobą urządzeń. Ekspander może być użyty do oddzielenia niezgodnych ze sobą fragmentów magistrali, na przykład do umieszczenia urządzeń SE i HVD SCSI w osobnych domenach.

Ekspandery są niezauważalne dla oprogramowania i nie zajmują żadnego identyfikatora urządzenia. Zazwy­czaj, jeżeli umieszczone są na końcach magistrali, pełnią one również funkcję terminatorów, a jeżeli znajdują się w środku magistrali, terminatory są zablokowane.

Ponieważ to drogie urządzenia, ekspandery są używane jedynie w ekstremalnych sytuacjach, w których nic ma możliwości zastosowania innego rozwiązania. W większości przypadków lepiej pozostać przy zalecanej długości kabli i magistrali i nie umieszczać niezgodnych urządzeń, jak na przykład urządzeń HVD, w magi­strali SE lub l.VD.

Zakańczanie magistrali

Ponieważ magistrala SCSI przenosi sygnały elektryczne o dużej częstotliwości, może być narażona na odbicia elektryczne, które mogą wystąpić w każdej linii transmisyjnej. Aby zminimalizować odbicia i szumy, stosuje się odpowiednio dobrane terminatory, które dodatkowo odpowiednio obciążają układy nadajnika magistrali. Aby zminimalizować problemy, terminatory są umieszczone na obu jej końcach.

Pomimo prostej zasady, że tylko terminatory muszą być umieszczone po obu końcach magistrali, okazuje się. że nieprawidłowe ich stosowanie jest najczęstszą przyczyna problemów w instalacjach SCSI.

Dostępne jest kilka typów terminatorów SCSI używanych w zależności od stosowanej sygnalizacji i wymaga­nej prędkości:

Pierwsze trzy typy są używane jedynie w asymetrycznych magistralach SCSI. Terminatory pasywne do ste­rowania zakończeniem magistrali wykorzystują zestaw oporników 220 omów i 330 omów. Powinny być one używane jedynie w wąskich (8-bitowych) magistralach SCSI działających z częstotliwością 5 MHz. Terminatory pasywne z opornikami wystarczają do pracy na niewielkich odległościach, od 60 cm do 1 metra, a w przy­padku większych odległości lub większych prędkości jedynym dobrym rozwiązaniem są terminatory aktywne. Terminatory aktywne są również wymagane do pracy w trybie Fast SCSI.

Terminatory pasywne mogą zostać podłączone do nieużywanego portu SCSI lub zintegrowane z wieloma powolnymi urządzeniami SCSI, takimi jak skanery, napędy optyczne i napędy z wymiennymi nośnikami. W przypadku tego typu urządzeń wbudowany terminator pasywny można włączać lub wyłączać za pomocą zworek, przełącznika pozycyjnego lub innej postaci elementu przełączającego.

Terminatory aktywne korzystają z wbudowanego układu regulatora napięcia połączonego z opornikami 110 omów. Terminatory aktywne wykorzystują najczęściej jeden lub kilka regulatorów napięcia do wytworzenia napięcia terminującego. Taki układ pozwala zapewnić, że sygnały SCSI zawsze są dopasowywane do właściwego poziomu napięcia. Terminatory aktywne często mają zamontowaną diodę świecącą wskazującą aktywność terminatorów. W specyfikacji SCSI zaleca się stosowanie terminatorów aktywnych na obu końcach magistrali i wymaga ich stosowania, jeżeli używane są urządzenia Fast lub Wide SCSI. Większość host adapterów o dużej wydajności ma funkcję „samoterminowania", jeżeli więc host adapter jest umieszczony na końcu magistrali, samoczynnie ją zakańcza.

Dla magistrali asymetrycznych dostępna jest odmiana terminatorów aktywnych — forced perfect termination (FPT). Jest to jeszcze doskonalsza postać terminatorów aktywnych, w których dodatkowo wykorzystane zo­stały diody poziomujące, eliminujące przesterowanie i niedosterowanie sygnału. Zamiast poziomować do na­pięcia +5 V i do masy, terminatory te poziomują sygnał do dwóch regulowanych napięć. Układ taki pozwala diodzie poziomującej wyeliminować przesterowanie i niedosterowanie sygnału, szczególnie przy większych prędkościach zmian sygnału i większych odległościach. Wymuszone doskonałe zakańczanie nie jest zawarte w specyfikacji SCSI, ale stanowi ono świetny rodzaj terminatorów dla magistral niesymetrycznych narażonych na duże zakłócenia.

Terminatory FPT są dostępne w kilku wersjach. Wersje FPT-3 i FPT-18 dostępne są dla magistral SCSI o sze­rokości 8 bitów, natomiast FPT-27 przeznaczone są dla 16-bitowego (Wide) SCSI. Wersja FPT-3 wymusza doskonale dopasowanie trzech najbardziej aktywnych sygnałów SCSI magistrali 8-bitowej, natomiast FPT-18 wymusza doskonale dopasowanie wszystkich sygnałów SCSI oprócz uziemienia. Terminatory FPT-27 zapew­niają doskonałe dopasowanie wszystkich sygnałów 16-bitowego Wide SCSI oprócz uziemienia.

Magistrale FFVD wymagają zastosowania terminatorów składających się z pasywnej sieci oporników 330 omów / 150 omów / 330 omów —jedynie takie terminatory pasują do kabla lub złączy urządzenia.

Jo samo dotyczy magistrali Low Yoltage Differential. Aby taka magistrala funkcjonowała poprawnie, wyma­gane jest zastosowanie terminatorów LVD. Dostępne są również terminatory wielofunkcyjne LVD/SE (ak­tywne). Działają one w magistrali LVD jako terminatory LVD i jako terminatory aktywne w magistrali SE. Trzeba pamiętać, że jeżeli do magistrali przyłączone jest chociaż jedno urządzenie SE, działa ona w trybie SE i nie korzysta z trybu LVD, ograniczając dopuszczalną długość i wydajność układu. Jeżeli zastosowany zo­stanie choć jeden terminator SE lub urządzenie SE, magistrala przełącza się w tryb SE.

► ► Zajrzyj do podrozdziału „Konfiguracja napędu SCSI", znajdującego się na stronie 684.

Kilka firm produkuje terminatory magistrali SCSI o wysokiej jakości, np. East/West Manufacturing T^i Enterprises Inc. (wcześniej Aeronics) i filia Methode — Data Mate. Obie firmy produkują różne terminatory. Pierwsza z wymienionych firm jest znana z kilku wersji terminatorów FPT specjalnie zale­canych dla konfiguracji wymagających większych długości kabli lub lepszej integralności sygnału. Jedną z najlepszych inwestycji w każdej instalacji SCSI są kable i terminatory wysokiej jakości.

Specjalne terminatory są wymagane również dla SCSI typu LVD i HVD, jeżeli więc korzystasz z tych inter­fejsów, powinieneś upewnić się, że terminatory, które posiadasz, są odpowiednie.

W przypadku magistral LVD i HVD nie ma większego wyboru między typami terminatorów, ale dla magi­strali niesymetrycznej (SE) do wyboru są co najmniej trzy ich typy.

Najlepszą zasadą przy zakupie kabli i terminatorów jest kupowanie najlepszych produktów. Osobi­ście nie zalecam stosowania terminatorów pasywnych; należy korzystać z aktywnych lub FPT. Jeżeli zależy Ci na maksymalnej niezawodności, wybierz terminatory FPT.

Konfiguracja napędu SCSI

Napędy SCSI nie są zbyt trudne w konfiguracji, choć nieco bardziej skomplikowane niż napędy ATA. Standard SCSI określa sposób, w jaki muszą być konfigurowane napędy. Podczas konfiguracji należy uwzględnić dwa lub trzy elementy:

Ustawienie SCSI ID jest bardzo proste. Do jednej wąskiej magistrali SCSI można dołączyć do 7 urządzeń, natomiast do szerokiej magistrali do 15 urządzeń i każde z nich musi posiadać jednoznaczny adres SCSI ID. Istnieje odpowiednio 8 i 16 adresów, ale adapter hosta zabiera jeden adres, więc dla urządzeń pozostaje wolne 7 lub 15 adresów. Większość adapterów SCSI ma ustawiony na stałe ID równy 7 lub 15, który jest adresem o najwyższym priorytecie. Pozostałe urządzenia muszą mieć tak przydzielone adresy ID, aby nie kolidowały ze sobą. Niektóre host adaptery potrafią uruchamiać system z dysku o określonym adresie ID. Starsze adaptery hosta firmy Adaptec wymagały, aby dysk startowy miał ID równy 0; nie dało się uruchomić systemu z dysku o dowolnym ID.

Ustawienie ID najczęściej wymaga zmiany zworek w napędzie. Jeżeli napęd jest zainstalowany w osobnej obudowie, może mieć ona umieszczony z tyłu przełącznik adresów. Przełącznik ten upraszcza wybór ID dzięki wciśnięciu odpowiedniego przycisku lub obróceniu kółka aż do pokazania się właściwego numeru ID. Jeżeli nie ma zewnętrznego przełącznika adresów, należy otworzyć obudowę i ustawić ID za pomocą zworek znajdujących się na napędzie.

Do ustawienia ID urządzenia SCSI wykorzystywane są trzy zworki; ustawienia dla poszczególnych adresów urządzeń korzystają z binarnej reprezentacji adresu. Na przykład, jeżeli wyjmiemy wszystkie trzy zworki, otrzymamy liczbę binarną OOOb, co przekłada się na ID równy 0. Binarna reprezentacja OOlb odpowiada ID równemu 1, 01 Ob to ID = 2, 01 lb to ID= 3 itd. (wymieniając te wartości dodaliśmy na koniec małe b, aby za­znaczyć wartość binarną).

Niestety, zworki te mogą być umieszczone zarówno z przodu, jak i z tyłu dysku, w zależności od tego, jak ustalił to producent. Aby nieco ułatwić konfigurację, zamieszczamy w poniższych tabelach różne możliwości ustawienia zworek ID. W tabeli 8.7 pokazane są ustawienia dla napędów, w których najbardziej znaczący bit (MSB) znajduje się po lewej stronie, natomiast w tabeli 8.8, zamieszczone są ustawienia dla napędów, w któ­rych zworka bitu MSB znajduje się po prawej stronie.

Tabela 8.7. Ustawienie zworek SCSI ID z najbardziej znaczącym bitem znajdującym się po lewej stronie

SCSI

ID

Zworka

Ustawienie

0

0

0

0

1

0

0

/

2

0

/

0

3

0

/

/

4

/

0

0

5

/

0

/

6

/

/

0

7 /

/

/

/ = zworka założona; 0 = zworka usunięta

Tabela 8.8. Ustawienie zworek SCSI ID z najbardziej znaczącym bitem znajdującym się po prawej stronie

SCSI

ID

Zworka

Ustawienie

0

0

0

0

1

/

0

0

2

0

/

0

3

/

/

0

4

0

0

/

5

/

0

/

6

0

/

/

7

/

/

/

/ - zworka założona; 0 = zworka usunięta

Zakańczanie magistrali SCSI jest bardzo proste. Bez wyjątku należy zakańczać oba końce magistrali. Jeżeli host adapter znajduje się na końcu magistrali, musi mieć uaktywnione terminatory. Jeżeli host adapter znaj­duje się w środku magistrali i występuje zarówno zewnętrzna, jak i zewnętrzna część magistrali, host adapter musi mieć wyłączony terminator, natomiast terminatory należy zainstalować w urządzeniach na obu końcach. Niestety, większość problemów z instalacjami SCSI wynika z niewłaściwego zakończenia magistrali.

Na rysunku 8.17 pokazano schemat magistrali SCSI z dołączonymi kilkoma urządzeniami. W tym przypadku host adapter znajduje się na jednym końcu magistrali, a napęd CD-ROM na drugim. Aby magistrala działała prawidłowo, urządzenia te muszą mieć zainstalowane terminatory, natomiast w pozostałych urządzeniach ter­minatorów być nie powinno

Rysunek 8.17.

Połączenia łańcuchowe magistrali SCSI; pierwsze i ostatnie urządzenie musi mieć zainstalowane terminatory


0x08 graphic

Instalując zewnętrzne urządzenie SCSI, zazwyczaj w jego obudowie znajdziemy się dwa terminatory — wej­ściowy i wyjściowy — dzięki czemu można łatwo dodać to urządzenie do łańcucha. Jeżeli urządzenie to bę­dzie umieszczone na końcu magistrali, w wyjściowym porcie SCSI trzeba umieścić moduł terminatora, który będzie zapewnia! właściwe dopasowanie tego końca magistrali (patrz rysunek 8.18).


0x08 graphic
Rysunek 8.18.

Terminator zewnętrznego urządzenia SCSI


Moduły terminatorów dostępne są w różnych konfiguracjach gniazd magistrali, w tym również jako przej-ściówki — niezbędne w przypadku, gdy dostępny jest tylko jeden port. Terminatory w formie przejściówek są również często używane w instalacjach wewnętrznych, jeżeli urządzenia nie mają wbudowanych oporni­ków zakańczających. Wiele dysków twardych korzysta z terminatorów w formie przejściówek w celu zaosz­czędzenia miejsca na płycie z elektroniką (patrz rysunek 8.19).


0x08 graphic
Rysunek 8.19.

Wewnętrzny

terminator

— przejściówka

ze złączem czołowym


Terminator z przejściówka jest również wymagany, jeżeli urządzenie znajduje się na końcu magistrali i do­stępne jest tylko jedno złącze SCSI.

Inne opcje konfiguracji napędu SCSI mogą być ustawione za pomocą zworek. Poniżej wymienione są najczę­ściej spotykane dodatkowe opcje:

Opcje te opiszemy w dalszej części rozdziału.

Polecenie Start on Command (opóźnione uruchamianie)

.leżeli w systemie zainstalowanych jest kilka dysków, warto je tak skonfigurować, aby nie rozpoczynały razem rozpędzania się po uruchomieniu systemu. Napęd dysków potrzebuje trzykrotnie lub czterokrotnie więcej prą­du podczas pierwszych kilku sekund po włączeniu zasilania niż podczas normalnej pracy. Silnik potrzebuje więcej prądu do szybkiego rozpędzenia talerzy. Jeżeli kilka dysków jednocześnie pobiera zwiększoną ilość prądu, zasilacz może zostać przeciążony, co z kolei może powodować zawieszanie się systemu lub okresowe problemy z jego uruchamianiem.

Niemal wszystkie dyski SCSI zapewniają możliwość opóźnienia rozpędzania dysku, więc problem ten można ominąć. Większość adapterów SCSI podczas inicjalizacji magistrali wysyła do kolejnych adresów ID polece­nie Start Unit. Ustawienie odpowiedniej zworki na dysku powoduje, że dysk nie rozpoczyna rozpędzania się do czasu otrzymania tego polecenia. Ponieważ adapter hosta wysyła to polecenie do kolejnych numerów ID, od adresu o największym priorytecie (ID 7) do adresu o najniższym priorytecie (ID 0), napęd o najwyższym priorytecie jest uruchamiany jako pierwszy, a następnie napędy o priorytecie coraz niższym. Ponieważ nie­które adaptery hosta nie rozsyłają polecenia Start Unit, niektóre napędy zamiast czekać na polecenie, które nigdy nie zostanie wysłane, mogą po prostu opóźnić rozpędzanie talerzy o stałą liczbę sekund.

Jeżeli napędy zamontowane są w osobnych obudowach i wykorzystują osobne zasilacze, funkcja opóźnione­go startu nie musi być stosowana. Przeznaczona jest ona jedynie dla dysków wewnętrznych podłączonych do tego samego zasilacza co pozostała część systemu. W przypadku gdy dysk jest zamontowany wewnątrz kom­putera, zalecam włączenie funkcji opóźnionego startu nawet wtedy, gdy zainstalowany jest jeden dysk SCSI; zmniejsza to obciążenia zasilacza, ponieważ, gdy dysk rozpoczyna rozpędzanie się, pozostała część systemu jest już uruchomiona. Metoda ta jest szczególnie zalecana dla komputerów przenośnych i innych, w których moc zasilacza jest ograniczona.

Parzystość SCSI

Parzystość SCSI to ograniczona postać kontroli błędów pomagająca w niezawodnym przesyłaniu danych. Nie­mal wszystkie adaptery hosta obsługują kontrolę parzystości, więc opcja ta powinna być uaktywniona w każ­dym urządzeniu. Jedynym powodem jej wyłączenia mogą być problemy we współpracy ze starymi adaptera­mi, które mogą nie działać, jeżeli kontrola parzystości jest uaktywniona.

Zasilanie terminatorów

Terminatory na końcach magistrali SCSI wymagają zasilania z co najmniej jednego urządzenia z magistrali. W większości przypadków to adapter hosta doprowadza zasilanie do terminatora, jednak w niektórych przy­padkach adapter tego napięcia nie podaje. Dla przykładu, adaptery hosta włączane do portu równoległego najczęściej nie dostarczają napięcia do terminatora. Jeżeli więcej niż jedno urządzenie dostarcza zasilanie, nie zachodzą żadne niekorzystne zjawiska, ponieważ każde źródło jest zabezpieczone za pomocą diody. Dla uproszczenia wielu użytkowników tak konfiguruje urządzenia, aby wszystkie dostarczały napięcie do termi­natorów. Jeżeli żadne urządzenie nie zapewni zasilania terminatorowi, magistrala nie będzie prawidłowo za­kończona i nie będzie prawidłowo działała.

Negocjacja synchroniczna

Magistrala SCSI może pracować w dwóch trybach: asynchronicznym (domyślnie) i synchronicznym. Magi­strala w czasie przesyłu przełącza tryby za pomocą protokołu nazywanego negocjacją synchroniczną. Przed przesłaniem danych przez magistralę SCSI urządzenie wysyłające dane (nazywane inicjatorem) i urządzenie odbierające (nazywane docelowym) negocjują sposób przesyłu. Jeżeli oba urządzenia obsługują przesył syn­chroniczny, rozpoznają ten fakt w procesie negocjacji i wykorzystują ten szybszy tryb.

Niestety, niektóre starsze urządzenia nie odpowiadają na żądanie przesyłu synchronicznego i mogą zostać za­blokowane po rozpoczęciu takiego przesyłu. Dlatego zarówno adapter hosta, jak i urządzenia obsługujące ne­gocjację synchroniczną posiadają zworkę ją wyłączającą, co pozwala na współpracę ze starszymi urządzeniami. Domyślnie wszystkie współczesne urządzenia obsługują negocjację synchroniczną, więc funkcja ta powinna być uaktywniona.

Plug and Play SCSI

Specyfikacja Plug and Play (PnP) SCSI została opublikowana w kwietniu 1994 roku. Mechanizm ten pozwa­la producentom produkować urządzenia PnP, które są automatycznie konfigurowane przez system operacyjny obsługujący ten mechanizm. Dzięki temu można łatwo przyłączać i konfigurować takie urządzenia zewnętrz­ne jak dyski twarde, napędy taśm i napędy CD-ROM.

Aby przyłączyć urządzenie SCSI do komputera PC, specyfikacja wymaga zastosowania adaptera hosta zgodnego z PnP SCSI, na przykład PnP ISA lub PCI. Karta rozszerzenia PnP pozwala systemowi operacyjnemu zgod­nemu z PnP automatycznie konfigurować sterowniki i przydzielać zasoby systemu dla interfejsu magistrali.

Specyfikacja PnP SCSI zawiera następujące ułatwienia:

Słowo „automagicznie" (ang. automagically) nie jest pomyłką. Jest ono użyte w oficjalnej nazwie specyfikacji, której komitet X3T9.2 nadał numer X3T9.2/93-109r5.

Specyfikacja ta ułatwia zwykłym użytkownikom korzystanie z interfejsu SCSI.

Każde urządzenie SCSI dołączone do magistrali SCSI (inne niż dysk twardy) wymaga do poprawnego działa­nia zewnętrznego sterownika. Tak naprawdę dyski twarde nie są tu wyjątkiem — odpowiedni dla nich sterow­nik stanowi zwykle część oprogramowania BIOS-u adaptera SCSI. Te zewnętrzne sterowniki są specyficzne nie tylko dla urządzenia, ale również adaptera.

W chwili obecnej stały się popularne dwa rodzaje adapterów hosta, co znacznie ogranicza ten problem. Zna­jąc standardowy sterownik adaptera, producenci mogą szybciej tworzyć nowe sterowniki obsługujące urzą­dzenia i komunikujące się ze standardowym sterownikiem. Konstrukcja taka eliminuje zależność od określo­nego typu adaptera. Te podstawowe lub uniwersalne sterowniki łączą host adapter z systemem operacyjnym.

Najbardziej popularnym sterownikiem uniwersalnym jest Advanced SCSI Programming Interface (ASPI) i większość producentów sprzętu tak tworzy swoje sterowniki, aby mogły komunikować się z ASPI. Litera A w ASPI oznaczała firmę Adaptec, która wprowadziła ten standard, ale inni producenci zakupili również prawo do korzystania z ASPI w swoich produktach. System DOS nie obsługuje bezpośrednio ASPI, ale moż­na załadować odpowiedni sterownik to umożliwiający. Systemy Windows 9x, Me, NT, 2000, XP i OS/2 2.1 i nowsze pozwalają na automatyczną obsługę ASPI dla kilkunastu host adapterów SCSI.

Firmy Futurę Domain (obecnie należąca do firmy Adaptec) oraz NCR utworzyły inny sterownik interfejsu o na­zwie Common Access Method (CAM). CAM jest zatwierdzonym przez ANSI protokołem umożliwiającym jednemu sterownikowi obsługę kilku kontrolerów. CAM jest powszechnie stosowany przez systemy opera­cyjne Linux i Unix przy komunikowaniu się z urządzeniem SCSI korzystającym ze sterowników z udo­stępnionym kodem źródłowym.

Rozwiązywanie problemów z konfiguracją SCSI

Instalując łańcuch urządzeń w jednej magistrali SCSI, sprawiamy, że system taki szybko się komplikuje. Jeżeli masz problemy w czasie instalacji, sprawdź następujące elementy:

Jeżeli system wykorzystuje tylko dyski SCSI i nadal nie można uruchomić z nich systemu:

w adapter hosta.

Zamieszczamy również kilka wskazówek pomagających w szybkiej i efektywnej konfiguracji systemu SCSI:

z terminatorów aktywnych, a nie tanich terminatorów pasywnych. Nawet w przypadku standardowych (wolnych) urządzeń SCSI zalecane jest stosowanie terminatorów aktywnych. Jeżeli do magistrali dołączone są jedynie urządzenia zewnętrzne lub tylko wewnętrzne, terminatory muszą być zainstalowane na adapterze hosta i na ostatnim urządzeniu w łańcuchu. Jeżeli dołączone są zarówno urządzenia wewnętrzne, jak i zewnętrzne, trzeba zainstalować terminatory na pierwszym i ostatnim urządzeniu, natomiast host adapter nie powinien mieć zainstalowanych terminatorów (ponieważ znajduje się w środku magistrali).

♦ Korzystaj z wysokiej jakości ekranowanych kabli SCSI. Upewnij się, że złącza kabla pasują do urządzeń. Korzystaj z wysokiej jakości kabli ekranowanych i zwracaj uwagę na ograniczenia długości magistrali SCSI. Korzystaj z kabli przeznaczonych do stosowania w instalacjach SCSI i, jeżeli jest to możliwe, używaj kabli tej samej marki. Kable różnych producentów mogą mieć inną impedancję; czasami powoduje to problemy w przypadku długich magistral lub przy wysokich prędkościach przesyłu.

Stosując się do tych prostych wskazówek, będzie można ograniczyć ilość problemów i budować niezawodne instalacje SCSI.

Porównanie wydajności interfejsów SCSI i ATA — zalety i ograniczenia

Nowoczesne systemy operacyjne są systemami wielozadaniowymi, a urządzenia SCSI (z dodanymi dodatko­wymi układami kontrolera), przeciwnie niż ATA, działają niezależnie od siebie. Dlatego dane mogą być jed­nocześnie odczytywane i zapisywane we wszystkich urządzeniach SCSI jednocześnie. Pomaga to w bardziej płynnej realizacji wielozadaniowości i zwiększa całkowitą przepustowość systemu. Najbardziej zaawansowane systemy operacyjne, takie jak Windows NT, 2000 i XP, umożliwiają również realizację funkcji strippingu dysków. Funkcja ta pozwala na utworzenie pojedynczego dysku logicznego rozciągającego się na dwa lub więcej urządzeń fizycznych. Dane są równo rozkładane na wszystkie urządzenia, co jeszcze bardziej zwiększa całkowitą przepustowość. Zwiększona odporność na awarie i wydajność jest bez trudu osiągana w macie­rzach dysków SCSI.

Dyski Ultra4 (Ultra320) mają kilka zalet w porównaniu z dyskami ATA. Interfejs Ultra4 SCSI jest o 140% szybszy niż ATA/133, który ma maksymalną prędkość przesyłu 133 MB/s. Interfejs Ultra320 SCSI w pełni obsługuje wielozadaniowość i może znacznie poprawić wydajność systemu w stacjach roboczych i serwerach pracujących pod kontrolą systemu operacyjnego Windows NT, 2000 i XP. Interfejs ATA ogranicza długość kabli do 45 centymetrów, co eliminuje możliwość podłączania urządzeń zewnętrznych, natomiast Ultra4 (Ultra320) SCSI pozwala na tworzenie zewnętrznych połączeń o długości do 12 metrów. Trzeba również pamiętać, że interfejs ATA pozwala na dołączanie 2 urządzeń do jednego kabla, natomiast Ultra320 SCSI pozwala na dołączenie do 15 urządzeń. Na koniec, funkcja kontroli domenowej dostępna w Ultra320 SCSI pozwala na prawidłowe rozwiązywanie problemów z szumami w magistrali, natomiast w przypadku ATA, jeżeli wystąpi problem z połączeniem (co występuje najczęściej w trybie UDMA/100 i 133), dysk po prostu przestanie działać.

Dyski ATA mają dużo mniejszy narzut danych na polecenia przesłania wybranego sektora niż SCSI. Dodatko­wo, oprócz narzutu na polecenia komunikacji pomiędzy dyskiem i kontrolerem, które muszą wykonywać za­równo dyski SCSI. jak i ATA, przesył SCSI wymaga: negocjacji magistrali SCSI. wybrania dysku docelowe­go, żądania danych, zakończenia transmisji na magistrali i, na koniec, konwersji adresu logicznego na wyma­gany adres CHS (cylinder, głowica, sektor). Daje to dyskowi ATA przewagę w przesyłach sekwencyjnych wykonywanych przez jednozadaniowe systemy operacyjne. W systemach wielozadaniowych, które potrafią skorzystać z dodatkowych funkcji magistrali SCSI, to interfejs SCSI osiąga lepszą wydajność.

Architektura SCSI ma znacznie więcej zalet w porównaniu z ATA i innymi dyskami. Ponieważ każdy dysk SCSI ma wbudowany własny kontroler, może działać niezależnie od procesora systemu, więc komputer może wykonywać równolegle polecenia na pozostałych dyskach zainstalowanych w systemie. Każdy z tych dysków może zapamiętać te polecenia w kolejce i wykonywać je równolegle z innymi dyskami. Dane mogą zostać buforowane w napędzie i przesłane z dużą prędkością po współdzielonej magistrali w dogodnym do tego czasie.

Choć dyski ATA również posiadają własne kontrolery, nie mogą one działać jednocześnie i nie obsługują kolej­kowania poleceń. W efekcie tego. dwa kontrolery w systemie z dwoma dyskami ATA działają naprzemiennie.

Interfejs ATA nie obsługuje nakładania i wielozadaniowego wejścia-wyjścia, które pozwala na pobieranie przez urządzenie wielu poleceń i niezależną ich realizację w kolejności innej niż zostały wysłane. Magistrala ATA czeka na zakończenie każdego polecenia przed przesłaniem następnego.

Jak widać, SCSI posiada zalety w porównaniu z ATA, szczególnie gdy pod uwagę brane jest rozszerzanie systemu oraz obsługa systemów wielozadaniowych. Niestety, koszt jego implementacji jest również większy.

Ostatnią zaletą interfejsu SCSI jest możliwość obsługi urządzeń zewnętrznych. Można z łatwością odłączyć zewnętrzny CD-ROM SCSI. napęd taśm, skaner lub nawet dysk twardy i przenieść go do innego systemu. Po­zwala to na łatwiejsze przenoszenie urządzeń pomiędzy systemami i może stanowić zaletę w przypadku, gdy urządzenia zewnętrzne mają być współdzielone w kilku komputerach. Dołączanie do systemu nowego ze­wnętrznego urządzenia SCSI jest dużo łatwiejsze, ponieważ nie trzeba otwierać obudowy komputera.

Oczywiście przeniesienie zewnętrznego urządzenia SCSI z jednego komputera do innego nie jest nawet w przy­bliżeniu tak łatwe jak w przypadku USB lub FireWire (IEEE 1394), co jest powodem, dla którego te interfejsy (szczególnie USB) łatwo zdobyły rynek. Urządzenia USB i FireWire są zgodne z technologią Plug and Play; można je także podłączać i odłączać w czasie pracy komputera. Ponadto nie jest wymagane określanie identy­fikatora urządzenia ani żadna dodatkowa konfiguracja. 8- i 16-bitowe urządzenia SCSI muszą być natomiast podłączane zazwyczaj po wyłączeniu komputera. Poza tym konieczne jest przydzielenie im unikalnego iden­tyfikatora urządzenia. Dla już używanych i nowych urządzeń trzeba ustawić odpowiedni terminator.

Zalecane host adaptery SCSI, kable i terminatory

W przypadku adapterów hosta SCSI najczęściej zalecam produkty firmy Adaptec. Te adaptery działają świetnie i są dostarczane z niezbędnym oprogramowaniem formatującym i sterownikami systemu operacyjnego. Win­dows 9x i Me, Windows 2000 i XP, a nawet OS/2 mają wbudowaną obsługę adapterów SCSI firmy Adaptec. Możliwość ta jest ważna, ponieważ uwalnia nas to od instalowania dodatkowych sterowników.

Standardowe interfejsy SCSI lub Fast SCSI mogą być obsługiwane przez już przestarzałą magistralę ISA, ale jeżeli masz zamiar zainstalować magistralę Wide SCSI — a szczególnie Ultra, Ultra2 lub Ultral60/320 — powinieneś myśleć jedynie o kontrolerze SCSI wykorzystującym lokalną magistralę PCI. Magistrala ISA pozwala na maksymalne prędkości przesyłu rzędu 8 MB/s, natomiast magistrala Fast-Wide SCSI działa z prędkością do 20 MB/s. Szybsze wersje, takie jak Ultra3 (UltralóO) lub UItra4 (Ultra320) SCSI działają z maksymalną prędkością 320 MB/s! W większości przypadków magistrala lokalna adaptera SCSI będzie magistralą PCI, która jest obsługiwana w większości obecnych systemów PC. Aby uzyskać maksymalną wydajność, powinno się skorzystać z 64-bitowego gniazda magistrali PCI o częstotliwości 66 MHz (jeśli dysponuje się odpowied­nim kontrolerem SCSI).

Podobnie jak w przypadku innych nowoczesnych kart PCI, także w przypadku SCSI obsługiwany jest standard Plug and Play. co oznacza, że niemal wszystkie funkcje na karcie mogą być konfigurowane programowo. Nie trzeba już szukać w podręcznikach przerwania, DMA, portu wejścia-wyjścia i innych ustawień zworek — wszystko jest sterowane programowo i zapamiętywane w pamięci Flash na karcie. Przedstawiamy teraz niektóre funkcje dostępne w najnowszych kartach SCSI:

Firma Adaptec zapewnia pełną obsługę PnP we wszystkich adapterach SCSI. Adaptery te mogą być konfigu­rowane automatycznie w każdym komputerze zgodnym z PnP lub ręcznie za pomocą dostarczonego oprogra­mowania w innych systemach. Adaptery PnP są zalecane, ponieważ mogą być konfigurowane bez otwierania obudowy komputera. Wszystkie funkcje są ustawiane programowo i dlatego nie potrzebne są żadne przełącz­niki. Większość producentów urządzeń na początek pisze sterowniki dla kart firmy Adaptec, więc w przypad­ku takiej karty nie ma zwykle żadnych problemów związanych ze zgodnością lub dostępnością sterowników.

Z kabli SCSI polecam wyroby firmy CS Electronics {http://www.scsi-cables.com), która dostarcza, lub może wy­produkować na zamówienie, niemal każdy rodzaj kabla SCSI. Wytwarza ona również szeroką gamę terminato­rów, podobnie jak firma East/West Manufacturing Enterprises Inc. (wcześniej Aeronics; http://www.ewme.com), która także jest godna polecenia.


Rozdział 9.

Świat urządzeń 0 zapisie magnetycznym

Zapis magnetyczny

Urządzenia do trwałego i częściowo trwałego przechowywania danych działają na zasadzie zapisu magnetycz­nego lub optycznego, a w niektórych przypadkach wykorzystywana jest kombinacja obu technik. W przypad­ku zapisu magnetycznego strumień danych binarnych (logiczne zera i jedynki) jest zapisywany przez odpo­wiednie magnesowanie małych cząstek metalu wbudowanych w powierzchnię dysku lub taśmy, co powoduje utworzenie pewnego wzoru reprezentującego dane. Ten wzór magnetyczny może zostać później odczytany

1 skonwertowany do postaci strumienia danych identycznego z tym, który zosta! użyty do utworzenia zapisu. Tematem tego rozdziału są podstawy zapisu magnetycznego.

Zasada zapisu magnetycznego jest dla wielu ludzi trudna do zrozumienia, ponieważ pola magnetyczne są nie­widoczne dla ludzkiego oka. W rozdziale tym przedstawimy podstawy, koncepcje i techniki wykorzystywane w nowoczesnych urządzeniach zapisu magnetycznego, dzięki czemu Czytelnik będzie mógł zrozumieć proce­sy przez nie wykorzystywane. Informacje te są przeznaczone dla tych użytkowników, którzy ciekawi są tego, jak działają posiadane przez nich urządzenia; informacje te nie są niezbędne do używania komputera PC. roz­wiązywania problemów, konserwacji i aktualizacji. Ponieważ jednak dane zapisywane na dyskach twardych, taśmach, dyskietkach i innych nośnikach zapisu magnetycznego są dużo ważniejsze niż same nośniki, wiedza na temat sposobu przechowywania informacji pozwala na większy komfort używania całego systemu. Wiedza na temat wykorzystywanych technologii może być pomocna w przypadku wystąpienia problemów.

W rozdziale tym opiszemy podstawy zapisu magnetycznego oraz stosowane technologie. Może być on uwa­żany jako wprowadzenie do kilku rozdziałów tej książki:

W rozdziałach tych znajdują się bardziej szczegółowe informacje na temat różnych typów nośników magne­tycznych i optycznych, jak również opisy instalacji i konfiguracji napędów.

Historia zapisu magnetycznego

Przed upowszechnieniem się zapisu magnetycznego podstawowym nośnikiem informacji były karty perforo­wane (wykonane z papieru, zawierające dziurkowane otwory identyfikujące znak lub dane binarne). Nadal zadziwia mnie, że straciłem kontakt z kartami perforowanymi w przeciągu roku; uczelnia, do której zacząłem uczęszczać, wycofała je w czasie moich pierwszych lat studiów, zanim miałem jakiekolwiek zajęcia związane z komputerami. Muszę wierzyć, że było to związane z ich budżetem i brakiem zainteresowania bieżącą tech­nologią (w roku 1979 nie stosowano już zbyt wiele czytników kart perforowanych) niż z moim wiekiem! Co prawda karty perforowane od dawna nie mają zastosowania związanego z komputerami, ale w dalszym ciągu w różnych postaciach można się z nimi spotkać w starszych urządzeniach służących do głosowania.

Historia zapisu magnetycznego rozpoczyna się w czerwcu 1949 roku, gdy grupa naukowców i inżynierów z firmy IBM zaczęła prace nad nowym urządzeniem zapisującym. Urządzenie opracowane przez tę grupę było pierwszym napędem magnetycznym dla komputerów i zrewolucjonizowało cały przemysł komputerowy. 21 maja 1952 roku firma IBM przedstawiła napęd taśm IBM 726 przeznaczony do urządzenia IBM701 Defense Calculator, co rozpoczęło przejście od kalkulatorów z czytnikami kart do elektronicznych komputerów.

Cztery lata później, 3 września 1956 roku, mała grupa inżynierów firmy IBM z San Jose w Kalifornii wprowa­dziła pierwszy system pamięci dyskowej wchodzącej w skład komputera 305 RAMAC (ang. Random Access Method ofAccounting and Control).

Napęd komputera 305 RAMAC mógł przechowywać 5 milionów znaków (to znaczy tylko 5 MB) danych na 50 dyskach o średnicy 24 cali każdy. W przeciwieństwie do napędów taśm, głowice systemu RAMAC mogły przesuwać się bezpośrednio do dowolnego miejsca na nośniku magnetycznym, bez konieczności odczytywa­nia pozostałych zapisanych danych. Ten swobodny dostęp wywarł głęboki wpływ na zwiększanie się prędko­ści działania komputerów, umożliwiając coraz szybszy zapis i odczyt danych w porównaniu do napędów taśm.

Od tego czasu technologia zapisu magnetycznego rozwinęła się do tego stopnia, że dziś można bez problemu zapisać ponad 75 GB na dysku 3,5 calowym, który pasuje do małej wnęki w obudowie komputera.

Wkład firmy IBM w rozwój urządzeń zapisu magnetycznego jest ogromny; większość rozwiązań jest wynikiem badań przez nią prowadzonych. W firmie IBM powstały nie tylko napędy taśm i dyski twarde, ale również dyskietki. Ten sam oddział w San Jose, gdzie powstał dysk twardy, wprowadził również w roku 1971 pierw­szy napęd dyskietek, który korzystał z dyskietek 8 calowych. Szefem zespołu projektantów by! Alan Shugart. legendarna postać w świecie inżynierów zajmujących się technologią zapisu magnetycznego.

W późniejszych latach firma IBM wprowadziła zaawansowane metody kodowania danych, takie jak Modified Freąuency Modulation (MFM) oraz Run Length Limited (RLL); projekty takich głowic jak cienkowarstwowe, magnetorezystywne (MR) i wykorzystujące tzw. gigantyczny efekt magnetorezystywny (GMR), technologie napędów takie jak Partial Response Maximum Likehood (PRML), zapis bez identyfikatora oraz Self-Monitoring Analysis and Reporting Technology (S.M.A.R.T.). W chwili obecnej spółka Hitachi Global Storage Tech­nologies (założona wspólnie przez firmy IBM i Hitachi) jest niekwestionowanym liderem w tworzeniu i implementacji nowych technologii napędów i zajmuje drugie miejsce pod względem sprzedaży napędów dla komputerów PC (za firmą Seagate Technology).

Wykorzystanie pól magnetycznych do przechowywania danych

Wszystkie urządzenia korzystające z zapisu magnetycznego odczytują i zapisują dane, korzystając z elektro­magnetyzmu. Jedna z podstawowych zasad fizyki twierdzi, że w czasie przepływu prądu przez przewodnik generowane jest wokół niego pole magnetyczne (patrz rysunek 9.1). Zwróć uwagę, że elektrony przepływają od elektrody ujemnej do dodatniej, jak pokazano na rysunku, choć tak naprawdę uważa się, że przepływ prądu zachodzi w odwrotnym kierunku.

0x08 graphic

Rysunek 9.1.

Pole magnetyczne generowane wokół przewodu w czasie przepływu prądu

Elektromagnetyzm został odkryty w 1819 roku przez duńskiego fizyka Hansa Christiana Oersteda, gdy za­uważył, że igła kompasu odchyla się od kierunku północnego, kiedy zbliży się do niej przewód z płynącym w nim prądem elektrycznym. Gdy prąd zostaje wyłączony, igła kompasu powraca do kierunku wyznaczanego przez ziemskie pole magnetyczne i znów wskazuje północ.

Pole magnetyczne generowane przez przewód może oddziaływać na materiał magnetyczny znajdujący się w tym polu. Gdy zmieniony zostanie kierunek przepływy prądu elektrycznego, polaryzacja pola magnetycz­nego zostanie odwrócona. Na przykład, silnik elektryczny korzystający z elektromagnetyzmu wywiera na­przemienne siły pchające i ciągnące na magnesy przytwierdzone do obracającej się osi.

Kolejny efekt elektromagnetyczny został odkryły w roku 1831 przez Michaela Faradaya. Zauważył on, że jeżeli przewodnik porusza się w polu magnetycznym, generowany jest prąd elektryczny. Po zmianie polaryzacji tego pola zmienia się również kierunek przepływu generowanego prądu (patrz rysunek 9.2).

Rysunek 9.2.

Generowanie prądu w czasie przesuwania przewodnika w polu magnetycznym

0x08 graphic

Dla przykładu, alternator działa poprzez obracanie elektromagnesów umieszczonych na osi obok nierucho­mych przewodów, co powoduje ciągle generowanie w nich dużych ilości prądu. Alternatory są powszechnie używane jako generatory prądu w samochodach. Ponieważ elektromagnetyzm działa w obie strony, silnik mo­że działać jako generator i odwrotnie. To właśnie ta dwukierunkowa natura pola elektromagnetycznego spra­wia, że możliwe jest zapisywanie informacji na dysku i ich późniejsze odczytywanie. W trakcie zapisywania głowice zmieniają impulsy elektryczne na pole magnetyczne, natomiast w czasie odczytu, głowice przekształ­cają zmiany pola magnetycznego na impulsy elektryczne.

Głowice zapisujaco-odczytujące w urządzeniu zapisu magnetycznego są kawałkami materiału przewodzące­go uformowanego w kształcie litery U, z oboma końcami litery U umieszczonymi bezpośrednio ponad po­wierzchnią nośnika. Na głowicę w kształcie litery U nawinięta jest cewka lub oplot z przewodu, przez który przepływa prąd elektryczny (patrz rysunek 9.3). Układy sterujące napędu powodują przepuszczenie prądu przez cewkę i wygenerowanie pola magnetycznego w głowicy napędu. Obrócenie kierunku przepływu prądu elektrycznego powoduje również zmianę polaryzacji generowanego pola. Głowice są tego rodzaju elektroma­gnesami, w których polaryzacja płynącego prądu może być bardzo szybko zmieniana.

Rysunek 9.3.

Magnetyczna głowica odczytująco--zapisujaca

0x08 graphic

Dysk lub taśma stanowiąca nośnik zapisu składa się z materiału podkładowego (na przykład Mylar w dyskiet­kach i aluminium lub szkło w dyskach twardych), na które nałożona jest warstwa materiału magnetycznego.

Materiałem tym jest najczęściej tlenek żelaza z dodanymi innymi elementami. Każda pojedyncza cząstka ma­gnetyczna w nośniku posiada własne pole magnetyczne. Gdy nośnik jest pusty, polaryzacja tych pól jest losowa. Ponieważ pola poszczególnych cząstek wskazują w losowych kierunkach, każde małe pole magnetyczne jest znoszone przez inne wskazujące w przeciwnym kierunku; powierzchnia taka nie daje żadnej obserwowalnej polaryzacji pola magnetycznego. Suma wielu losowo zorientowanych pól powoduje, że brak jest wspólnego obserwowalnego pola.

Gdy głowica napędu generuje pole magnetyczne, wypełnia ono szczelinę między wolnymi końcami litery U. Ponieważ połę magnetyczne dużo łatwiej przechodzi przez przewodnik niż przez powietrze, pole zagina się na zewnątrz i wykorzystuje powierzchnię nośnika pod szczeliną, polaryzując cząstki magnetyczne, nad któ­rymi jest przesuwane i układając je zgodnie z kierunkiem pola. Polaryzacja lub kierunek pola — i przez to kierunek lub polaryzacja pola indukowanego w polu magnetycznym —jest zgodna z kierunkiem przepływu prądu elektrycznego przez cewkę. Wraz z rozwojem technologii zapisu magnetycznego odległość między głowicą odczytująco-zapisująca a nośnikiem została bardzo mocno zmniejszona. Pozwala to na zredukowanie szczeliny w głowicy jak również zastosowanie mniejszych domen magnetycznych. Im mniejsze są zapisywane domeny magnetyczne, tym wyższa może być gęstość danych zapisywanych na dysku.

Gdy pole magnetyczne przenika przez nośnik, cząstki w obszarze pod głowicą są ustawiane w kierunku wy­znaczanym przez pole emitowane z głowicy. Gdy poszczególne domeny magnetyczne są uporządkowane, przestają się wzajemnie znosić i na tym obszarze nośnika można zaobserwować pole magnetyczne. To lokalne pole magnetyczne jest generowane przez wiele cząstek, które po uporządkowaniu działają w zespole, tworząc wykrywalne łączne pole o wspólnym kierunku.

Pole magnetyczne o określonym kierunku i polaryzacji nazywane jest strumieniem. Gdy powierzchnia no­śnika przesuwa się pod głowicą napędu, głowica generuje strumień magnetyczny o określonej polaryzacji ponad wybranym regionem nośnika. Gdy zamieniony zostanie kierunek prądu przepływającego przez cewkę nawiniętą na głowicy, zmienia się polaryzacja pola lub strumienia w szczelinie głowicy. Zmiana kierunku strumienia w głowicy powoduje również odwrócenie polaryzacji cząstek magnetycznych w war­stwie nośnika dysku.

Odwrócenie strumienia zmienia polaryzację ułożenia cząstek magnetycznych na powierzchni nośnika zapisu. Głowice napędu wykorzystują odwrócenie strumienia w nośniku do zapisu danych. Dla każdego bitu danych zapisywanych przez napęd, w nośniku tworzony jest wzorzec odwróceń strumienia z dodatniego na ujemny i odwrotnie, nazywany również komórkami bitu lub komórkami przejścia. Komórka bitu jest określonym obszarem nośnika — zależnym od czasu i prędkości przesuwania się nośnika — w którym głowica zmienia strumień magnetyczny. Określony wzorzec lub zmiany strumienia w komórce przejścia są używane do zapi­sania bitu danych nazwany jest metodą kodowania. Układy logiczne napędu lub kontrolera pobierają dane przeznaczone do zapisania i zamieniąjąje na serię zmian strumienia w odcinku czasu, zgodnie z wzorcem na­rzuconym przez stosowaną metodę kodowania.

Dwoma najbardziej popularnymi metodami kodowania stosowanymi w nośnikach magnetycznych są metoda MFM (ang. Modified Freąuency Modulation) oraz RLL (ang. Run Length Limited). Wszyst­kie napędy dyskietek i starsze dyski twarde korzystają ze schematu MFM. Obecnie dyski twarde wykorzystują kilka odmian metody RLL. Metody te zostaną opisane dokładniej w dalszej części tego rozdziału zatytułowanej „Schematy kodowania danych".


W czasie procesu zapisu do cewki nawiniętej na głowicy przykładane jest napięcie. Wraz ze zmianą polary­zacji tego napięcia zmienia się również pole magnetyczne używane do tworzenia zapisu. Zmiany strumienia są zapisywane dokładnie w momencie, gdy zmienia się polaryzacja prądu. Może się wydawać dziwne, że w czasie procesu odczytu głowica nie generuje dokładnie takiego samego sygnału jak użyty do zapisu. Za­miast tego. głowica generuje impulsy napięcia (szpilki) w momencie wykrycia zmiany strumienia. Gdy zmia­na jest ze strumienia dodatniego na ujemny, impuls wytwarzany w głowicy jest ujemny. Gdy zmiana jest ze strumienia ujemnego na dodatni, impuls wytwarzany w głowicy jest dodatni. Efekt ten występuje, ponieważ prąd jest generowany w przewodniku jedynie wtedy, gdy przechodzi on przez linie pola magnetycznego pod pewnym kątem. Ponieważ głowice przesuwają się równolegle do pola magnetycznego, tworzonego przez no­śnik, w głowicach prąd jest generowany jedynie podczas przechodzenia przez zmianę polaryzacji pola ma­gnetycznego (zmianę strumienia).

W czasie odczytu danych z nośnika głowica staje się detektorem zmian strumienia, emitującym impulsy na­pięcia w czasie wykrycia zmiany pola magnetycznego. Obszary bez zapisanych zmian nie powodują wygene­rowania impulsów. Na rysunku 9.4 pokazane jest oddziaływanie pomiędzy falami zapisu i odczytu oraz zmiany strumienia zapisane na nośniku magnetycznym.

Rysunek 9.4.

Proces zapisu i odczytu magnetycznego

0x08 graphic

0x01 graphic


Sygnał zapisujący można postrzegać jako prostokątną falę o poziomach dodatnich i ujemnych. Gdy napięcie jest dodatnie, w głowicy jest generowane pole polaryzujące nośnik magnetyczny w jednym kierunku. Po zmia­nie napięcia na ujemne, pole magnetyczne wytwarzane w nośniku również zmienia polaryzację. Tam, gdzie przebieg zapisujący zmienia się z wartości dodatniej na ujemną i odwrotnie, strumień magnetyczny również zmienia polaryzację. W czasie odczytu głowica wykrywa te zmiany strumienia i generuje przebieg impulso­wy o wartościach dodatnich i ujemnych. Inaczej mówiąc, podczas odczytu sygnał ma wartość 0 V, chyba że głowica wykryje zmianę strumienia magnetycznego i w takim przypadku generuje dodatni lub ujemny impuls napięcia. Wiedząc, jaka częstotliwość zegara jest stosowana w napędzie, układy kontrolera mogą określić, czy impuls (czyli zmiana strumienia) wchodzi w skład określonej komórki przejścia.

Prąd impulsu elektrycznego generowanego w głowicy podczas odczytywania nośnika jest bardzo słaby i za­wiera znaczne szumy. Układy elektroniczne w napędzie i kontrolerze wzmacniają ten sygnał i dekodują serię słabych impulsów prądu na dane binarne, które są (teoretycznie) identyczne z oryginalnymi zapisanymi danymi.

Dyski twarde i inne urządzenia zapisu danych odczytują i zapisują dane, wykorzystując podstawowe efekty elektromagnetyczne. Napęd zapisuje dane, przesyłając prąd elektryczny przez elektromagnes (głowicę napę­du), generując pole magnetyczne zapamiętywane w nośniku. Napęd odczytuje dane, przesuwając głowicę nad zapisanym nośnikiem. Gdy głowica wykryje zmianę zapisanego pola magnetycznego, generuje słaby prąd elektryczny wskazujący na wystąpienie lub brak zmiany strumienia w oryginalnym sygnale zapisującym.

Rodzaje głowic odczytująco-zapisujących

Wraz z. rozwojem technologii napędów dysków zmieniały się również projekty głowic odczytująco-zapisują­cych. Pierwsze głowice były prostymi rdzeniami żelaznymi z nawiniętą cewką (elektromagnes). Według dzi­siejszych standardów były one olbrzymie i pozwalały na osiąganie bardzo małej gęstości zapisu. W czasie kolejnych lat rozwoju projekty głowic rozwinęły się od pierwszych prostych rdzeni ferrytowych do typów i technologii wykorzystywanych obecnie. Opiszemy teraz różne rodzaje głowic stosowanych w dyskach twar­dych komputerów PC oraz ich wady i zalety.

Do tej pory w dyskach twardych stosowano pięć głównych typów głowic:

Głowice szóstego typu opartego na zapisie prostopadłym znajdują się w fazie eksperymentalnej i ich poja­wienia na rynku można oczekiwać w 2004 r. lub później. Głowice tego typu omówiono na końcu niniejszego podrozdziału.

Głowice ferrytowe

Głowica ferrytowa jest pierwszym typem głowicy magnetycznej, wywodzącym się z oryginalnego napędu IBM 30-30 Winchester. Głowice te mają rdzeń z tlenku żelaza, na który nawinięta jest cewka elektromagne­tyczna. W napędzie zasilając cewkę wytwarzane jest pole magnetyczne lub pole magnetyczne przesuwane jest w pobliżu cewki. Pozwala to zarówno na zapis, jak i odczyt danych. Głowice ferrytowe są większe i cięż­sze niż głowice cienkowarstwowe i dlatego wymagają pracy w większej odległości od dysku (aby zapobiec zderzeniom z powierzchnią obracającego się dysku).

Producenci wprowadzili wiele udoskonaleń w oryginalnym projekcie (monolitycznej) głowicy ferrytowej. Jednym z typów głowic ferrytowych jest głowica kompozytowa, w której mały rdzeń ferrytowy osadzony jest za pomocą szkła w obudowie ceramicznej. Projekt taki pozwala na zmniejszenie szczeliny głowicy, co z kolei zapewnia większą gęstość ścieżek. Głowice takie są mniej narażone na przypadkowe pola magnetyczne, co było wadą głowic monolitycznych.

W latach osiemdziesiątych głowice ferrytowe były często stosowane w tanich napędach, na przykład Seagate ST-225. Wraz ze wzrostem wymagań stawianych dyskom twardym, zamiast głowic ferrytowych zaczęły być wykorzystywane konkurencyjne projekty MIG i cienkowarstwowe, które nie są obecnie już stosowane. Gło­wice ferrytowe nie mogą zapisywać na nośnikach o wysokiej koercji, które są niezbędne do uzyskania dużej gęstości zapisu oraz mają wysoki poziom szumów. Najważniejszą ich zaletą jest to, że jest to najtańszy do­stępny typ głowicy.

Głowice Metal-In-Gap

Głowice Metal-In-Gap (MIG) stanowią rozszerzenie technologii kompozytowych głowic ferrytowych. W gło­wicach MIG do szczeliny głowicy zapisującej dodany jest fragment metalu. Istnieją dwa rodzaje głowic MIG: jednostronne i dwustronne. Jednostronne głowice MIG mają warstwę stopu magnetycznego umieszczoną na końcowym brzegu szczeliny. Dwustronne głowice MIG mają tę warstwę na obu brzegach szczeliny. Stop me­talowy jest nanoszony za pomocą procesu napylania próżniowego nazywanego napylaniem katodowym.

Napylony materiał magnetyczny ma dwukrotnie większe możliwości magnetyzacji w porównaniu z samym ferrytem i dzięki temu pozwala na zapisywanie na nośniku cienkowarstwowym o większej koercji wymaga­nej do osiągnięcia wyższych gęstości. Głowice MIG tworzą ostrzejsze przejścia pola magnetycznego, co po­zwala na uzyskanie wyraźniejszych impulsów magnetycznych. Dwustronne głowice MIG oferują większą koercję niż głowice jednostronne.

Z powodu większych możliwości głowice MIG były najczęściej stosowanymi głowicami w dyskach twar­dych w końcu lat osiemdziesiątych oraz początku lat dziewięćdziesiątych. Nadal są one używane w napędach LS-120 (SupcrDisk).

Głowice cienkowarstwowe

Głowice cienkowarstwowe (TF) są produkowane w ten sam sposób co układy półprzewodnikowe — w pro­cesie fotolitografii. W procesie tym na jednej okrągłej płytce krzemowej produkuje się kilka tysięcy bardzo małych głowic wysokiej jakości.

Głowice TF mają niezmiernie wąskie szczeliny, tworzone przez napylanie twardego materiału aluminiowego. Ponieważ materiał ten całkowicie otacza szczelinę, obszar ten jest dobrze chroniony przed uszkodzeniami podczas kontaktu z obracającym się dyskiem. Rdzeń stanowi kombinację żelaza i niklu, która ma czterokrot­nie większe możliwości magnetyczne niż rdzeń ferrytowy.

Głowice TF zapisują ostre przejścia magnetyczne, co pozwala na zapisywanie danych z bardzo dużą gęsto­ścią. Ponieważ nie posiadają one konwencjonalnej cewki, głowice TF są mniej podatne na zmiany impedan-eji. Te małe i lekkie głowice mogą unosić się w dużo mniejszej odległości nad nośnikiem niż głowice ferry­towe i MIG: w niektórych układach jest to co najwyżej 0,05 mikrometra. Ponieważ ta niewielka odległość pozwala na odczyt i przesyłanie dużo silniejszych sygnałów z talerzy, stosunek sygnału do szumów jest dużo większy i wzrasta dokładność odczytu. Przy wysokiej gęstości liniowej oraz gęstości ścieżek głowica ferry­towa nie byłaby w stanie odróżnić sygnału od szumu tła. Inną zaletą głowic cienkowarstwowych jest ich mała wielkość, co pozwala na stosowanie mniejszych odległości między talerzami i upakowanie większej ilości talerzy na tej samej wysokości.

W chwili wprowadzenia do sprzedaży głowice TF były relatywnie drogie (w porównaniu do starszych ty­pów). Ulepszenie technologii produkcji i potrzeba uzyskiwania coraz większych gęstości zapisu spowodo­wały, że głowice te jednak przyjęły się na rynku. Powszechne ich stosowanie spowodowało, że ceny zaczęły być porównywalne z głowicami MIG, a nawet niższe.

Wiele dysków o pojemnościach pomiędzy 100 MB a 2 GB wykorzystuje głowice TF, a szczególnie często stosuje sieje w dyskach o mniejszych rozmiarach. Głowice TF wyparły głowice MIG z pozycji najbardziej popularnego typu głowic magnetycznych, ale w chwili obecnej są one zastępowane przez nowsze głowice magnetorezystywne.

Głowice magnetorezystywne

Najnowszym odkryciem w technologii zapisu magnetycznego — lub dokładniej fazy odczytu zapisu magne­tycznego — jest głowica magnetorezystywna (MR), nazywana również anizotropową głowicą magnetorezy-stywną(AMR). W ostatnich latach niemal wszystkie nowoczesne dyski twarde korzystają z głowic MR. Gło­wice te pozwalają zwiększyć gęstość zapisu czterokrotnie lub jeszcze bardziej w porównaniu z poprzednimi głowicami indukcyjnymi. Pierwszy dysk twardy z głowicami MR został zaprezentowany w roku 1991 przez firmę IBM, był to 3,5 calowy dysk 1 GB.

Wszystkie głowice są detektorami; są one zaprojektowane do wykrywania zmian strumienia magnetycznego w nośniku i po przekształceniu na sygnały elektryczne są interpretowane jako dane. Problemem zapisu ma­gnetycznego jest ciągle zwiększająca się gęstość zapisu, co powoduje umieszczanie coraz większej liczby zmian strumienia magnetycznego na coraz mniejszej przestrzeni. Wraz ze zmniejszaniem wielkości domen magnetycznych spada również moc sygnału przekazywanego przez głowice; odróżnienie prawdziwego sy­gnału od szumu lub obcych pól staje się coraz trudniejsze. Dlatego potrzebna była bardziej efektywna głowica odczytująca, która skuteczniej wykrywałaby zmiany strumienia magnetycznego na nośniku.

Występuje jeszcze jeden efekt magnetyczny, który obecnie jest bardzo dobrze zbadany i wykorzystywany w nowoczesnych dyskach. Gdy przewód jest przesuwany w polu magnetycznym nie tylko generuje się nie­wielki prąd. ale również zmienia się rezystancja tego przewodu. Standardowe głowice odczytujące są małym generatorem, czyli wykorzystuje się generowany prąd i zgodnie ze zmianami strumienia magnetycznego ge­nerowane są impulsy elektryczne. Nowsze typy głowic, które zostały wprowadzone przez firmę IBM. wyko­rzystują zmiany rezystancji w przewodach głowicy.

Zamiast generowania przez głowice małych prądów, które muszą być następnie filtrowane, wzmacniane i de­kodowane, głowica magnetorezystywna jest wykorzystywana jako rezystor. Układy sterujące przepuszczają przez głowicę prąd i mierzą zmiany napięcia powodowane przez zmiany rezystancji głowicy podczas jej przej­ścia ponad zmianą strumienia magnetycznego w nośniku. Zastosowanie tego mechanizmu w głowicy pozwo­liło uzyskać dużo silniejszy i mniej zanieczyszczony sygnał oraz pozwoliło na zwiększenie gęstości zapisu.

Głowice MR korzystają ze zmian rezystancji przewodnika w przypadku występowania zewnętrznego pola ma­gnetycznego. Zamiast odczytywać napięcie powstające podczas przejścia nad zmianą strumienia pola magne­tycznego, jak w standardowej głowicy, głowica MR wykrywa zmiany rezystancji podczas zmian pola magne­tycznego. Przez głowicę przepływa niewielki prąd, dzięki któremu można zmierzyć zmiany rezystancji. Dzięki takiemu projektowi sygnał wyjściowy może być ponad trzykrotnie silniejszy niż w przypadku zastosowania głowicy TF. W efekcie głowice MG są głowicami bardzo czułymi i są raczej sensorami niż generatorami.

Głowice MR są droższe i bardziej skomplikowane w produkcji niż inne typy głowic, ponieważ dodane jest do nich kilka dodatkowych elementów:

Ponieważ z. zasady działania głowicy MR wynika, że służy ona tylko do odczytu, budowane są w rzeczywi­stości układy dwuglowicowe. Układ ten zawiera standardową głowicę TF przeznaczoną do zapisu i głowicę MR do odczytu. Ponieważ w układzie tym znajdują się osobne głowice, mogą być one zoptymalizowane do pełnienia swoich funkcji. Głowice ferrytowe, MG i TF są nazywane głowicami z jedną szczeliną, ponieważ ta sama szczelina jest wykorzystywana do odczytu i zapisu, natomiast głowice MR wykorzystują osobne szcze­liny do każdej z operacji.

W przypadku głowic zjedna szczeliną, wielkość szczeliny jest zawsze kompromisem pomiędzy tym, co jest najlepsze dla zapisu i dla odczytu. Podczas odczytu powinna być stosowana cieńsza szczelina, pozwalająca na osiągnięcie większej rozdzielczości; funkcja zapisu wymaga szerszej szczeliny pozwalającej na głębsze wnikanie strumienia magnetycznego w nośnik. W przypadku głowic MR z dwiema szczelinami, obie szczeli­ny mogły zostać zaprojektowane najlepiej do pełnienia swoich funkcji. Szczelina zapisująca (TF) zapisuje szerszą ścieżkę, niż odczytuje szczelina odczytująca (MR). Dzięki temu, podczas odczytu istnieje mniejsza szansa na odczytywanie sygnału z sąsiednich ścieżek.

Typowa głowica MR zaprojektowana przez firmę IBM pokazana jest na rysunku 9.5. Na rysunku tym znajdu­je się cały układ głowicy i ślizgacza umieszczonego na końcu ramienia pozycjonera. Układ ten można obej­rzeć po otwarciu napędu. Slizgacz jest prostokątnym urządzeniem na końcu trójkątnego ramienia podtrzymu­jącego głowicę. Właściwa głowica to mały fragment na końcu ślizgacza, który jest pokazany w powiększeniu, powiększony jest również sensor odczytujący MR wbudowany w głowicę.


0x08 graphic
Rysunek 9.5.

Przekrój głowicy magnetorezystywnej


Element odczytujący, czyli sensor magnetorezystywny składa się z warstwy niklowo-ferrytowej (NiFe) od­dzielonej przekładką od warstwy magnetycznie miękkiej. W polu magnetycznym warstwa NiFe zmienia swo­ją rezystancję. Warstwa ekranująca zabezpiecza czujnik przed zakłóceniami ze strony sąsiednich ścieżek i pól błądzących. W wielu konstrukcjach stosowany jest również drugi ekran jako jeden z biegunów elementu za­pisującego, a konstrukcja taka jest nazywana łączoną głowicą MR. Element zapisujący nie jest skonstruowany w technologii MR, ale jest zwykłą indukcyjną głowicą cienkowarstwową.

Firma IBM przy produkcji głowic MR stosuje strukturę Soft Adjacent Layer (SAL), w skład której wchodzi warstwa MR z NiFe oraz magnetycznie miękki stop, przedzielone warstwąo wysokiej rezystancji elektrycznej.

W takim układzie po przejściu sensora MR przez pole magnetyczne zachodzi zmiana rezystancji w war­stwie NiFe.

Wraz ze zwiększeniem gęstości powierzchniowej produkowane są coraz węższe i cieńsze elementy MR. Naj­nowsze głowice mają szerokość warstwy pomiędzy złączami zmniejszoną do połowy mikrona.

Głowice magnetorezystywne drugiej generacji (GMR)

W celu osiągnięcia jeszcze większych gęstości zapisu, firma IBM w roku 1997 wprowadziła nowy typ głowic MR. Korzystają one z tzw. gigantycznego efektu magnetorezystywnego (GMR) i są one dużo mniejsze niż standardowe głowice MR. Budowa tych głowic jest bardzo podobna do standardowych głowic MR, ale za­miast jednej warstwy NiFe, zastosowano kilka. W głowicach MR w odpowiedzi na zmiany strumienia magne­tycznego, zmienia się rezystancja pojedynczej warstwy NiFe. W głowicach GMR funkcję tą wykonują dwie warstwy (rozdzielone cienką miedzianą warstwą łączącą).

Efekt GMR został odkryty w roku 1988, gdy w silnym polu magnetycznym (1000-krotnie silniejszym niż używane w dyskach twardych) umieszczono kryształy. Naukowcy — Peter Gruenberg z Julich w Niemczech i Albert Fert z Paryża — odkryli, że w materiałach składających się z bardzo cienkich warstw różnych ele­mentów metalowych zachodzą duże zmiany rezystancji. Kluczową strukturą w materiałach GMR jest war­stwa rozdzielająca z materiału niemagnetycznego znajdująca się pomiędzy warstwami metali magnetycznych. Jedna z warstw magnetycznych jest nieruchoma, co oznacza, że ma ona wymuszoną orientację magnetyczną. Druga warstwa magnetyczna jest swobodna, czyli może zmieniać orientację magnetyczną. Materiały magne­tyczne mają tendencje do ustawienia się w tym samym kierunku. Jeżeli warstwa rozdzielająca jest wystar­czająco cienka, warstwa swobodna przyjmuje tę samą orientację, co warstwa nieruchoma. Odkryto, że uło­żenie magnetyczne swobodnej warstwy magnetycznej może się okresowo zmieniać z ułożenia takiego samego jak warstwa nieruchoma na przeciwne. Całkowita rezystancja układu jest dosyć niska, gdy warstwy mają to samo ułożenie magnetyczne, a w przypadku przeciwnego ułożenia pól magnetycznych rezystancja jest wysoka.

Na rysunku 9.6 pokazano element odczytujący GMR.

0x08 graphic

Rysunek 9.6.

Przekrój głowicy

Gdy głowica GMR znajdzie się w słabym polu magnetycznym, na przykład pochodzącym z bitu zapisanego na dysku twardym, orientacja magnetyczna swobodnej warstwy magnetycznej zmienia się zgodnie z tym po­lem i generuje znaczną zmianę rezystancji głowicy, spowodowaną przez efekt GMR. Ponieważ fizyczna na­tura zmiany rezystancji jest powodowana przez względny ruch wirowy elektronów w różnych warstwach, głowice GMR są nazywane również głowicami typu spin-valve.

Pierwszym sprzedawanym dyskiem z głowicami GMR firmy IBM był 3,5 calowy napęd 16,8 GB wprowa­dzony w grudniu 1997 roku. Od tego momentu głowice GMR stały się standardem w napędach o pojemności ponad 20 GB. Najnowsze napędy GMR osiągają gęstość danych przekraczającą 20 GB na talerz, co umożli­wia produkowanie napędów 100 GB o standardowej wielkości 3,5 cala szerokości i 1 cal wysokości.

Zapis prostopadły

Prawie wszystkie dyski twarde i innego typu nośniki magnetyczne przy zapisie danych korzystają z metody zapisu wzdłużnego, w przypadku którego bity są umieszczane poziomo w stosunku do powierzchni nośnika. Zapis prostopadły, w którym sygnały magnetyczne są umieszczane pionowo do powierzchni nośnika, ma potencjał umożliwiający uzyskanie wyższej gęstości danych. Wynika to stąd, że bity rozmieszczone w pionie zajmują mniej miejsca od tych zapisanych za pomocą zapisu wzdłużnego (rysunek 9.7). W 1976 r. profesor Shun-ich Iwasaki jako pierwszy zaproponował zastosowanie takiej metody zapisu. Jednak do niedawna jedy­nym ważniejszym produktem korzystającym z zapisu prostopadłego był napęd dyskietek o pojemności 2,88 MB, zaprezentowany przez firmę Toshiba w 1989 r. i po raz pierwszy zastosowany w 1991 r. w komputerach IBM PS/2. Napęd ten dość szybko wyszedł z użycia. Aktualnie więksi producenci napędów, tacy jak firmy Seagate i Maxtor, eksperymentują z zapisem prostopadłym mającym umożliwić osiągnięcie gęstości sygnału przewyższającej nawet osiągi nośnika AFC (zawierającego warstwę rutenu, nazwanego „czarodziejskim py­łem"). Więcej informacji na temat nośnika AFC zawarto w punkcie „Zwiększanie gęstości powierzchniowej za pomocą »czarodziejskiego pyłu«", znajdującym się w dalszej części rozdziału.

Rysunek 9.7. Porównanie zapisu wzdłużnego (po lewej stronie) z zapisem prostopadłym (po prawej stronie)

0x08 graphic

W kwietniu 2002 r. firma Read-Rite Corporation, będąca głównym producentem głowic odczytująco-zapi-sujących. uzyskała w prototypie napędu zawierającego nośnik dostarczony przez firmę MMC Technology (zależną od firmy Maxtor) gęstość powierzchniową wynoszącą 130 Gb/cal2. W listopadzie 2002 r. firma Se­agate Technology ogłosiła, że w prototypie napędu opartego również na nośniku firmy MMC Technology udało jej się uzyskać gęstość powierzchniową przekraczającą 100 Gb/cal2. W dwóch niezależnych analizach opublikowanych w 2000 r. stwierdzono, że w przyszłości zapis prostopadły umożliwi osiągnięcie gęstości zawierającej się w przedziale od 500 do 1000 Gb (.jeden terabit)/cal2.

W przeciwieństwie do głowic GMR i nośnika AFC (omówionego w dalszej części rozdziału), które w sto­sunkowo prosty sposób można zastosować w istniejących technologiach dysków, zapis prostopadły wymaga zaprojektowania zupełnie nowej głowicy odczytująco-zapisującej. Ze względu na koszt takiej operacji i obecną wystarczalność technologii GMR i AFC należy oczekiwać, że dyski wykorzystujące zapis prostopadły nie pojawią się na rynku wcześniej niż w 2004 r. lub później.

Ślizgacze głowic

0x08 graphic
Nazwa ślizgacz odnosi się do elementu zawierającego w sobie głowicę napędu. Ślizgacz unosi się nad lub śli­zga po nośniku, utrzymując głowicę w czasie odczytu i zapisu w odpowiedniej od niego odległości. Więk­szość ślizgaczy ma kształt trimaranu, z dwoma zewnętrznymi gondolami unoszącymi się nad powierzchnią dysku i centralnym „kadłubem" zawierającym głowice i szczeliny odczytująco-zapisujące. Na rysunku 9.8 pokazany jest typowy miniślizgacz. Zwróć uwagę, że właściwa głowica ze szczeliną odczytująco-zapisująca znajduje się na samym końcu ślizgacza.

Rysunek 9.8.

Spód typowego miniślizgacza głowic

Trend do zmniejszania napędów powoduje, że ślizgacze również muszą być coraz mniejsze. Typowy ślizgacz napędu Winchester mini miał rozmiary 4 mm x 3,2 mm x 0,86 mm. Większość producentów głowic korzysta odtąd z mniejszych mikroślizgaczy, nanoślizgaczy, pikoślizgaczy lub femtoślizgaczy. Stosowane obecnie femtoślizgacze są wyjątkowo małe, mniej więcej wielkości kulki w końcówce długopisu. Pikoślizgacze i femto-ślizgacze są produkowane z wykorzystaniem elastycznego kabla połączeniowego (FIC) oraz technologii układ na ceramice (COC) pozwalającej na całkowitą automatyzację produkcji.

W tabeli 9.1 pokazano charakterystyki różnego typu ślizgaczy stosowanych w napędach dysków twardych.

Tabela 9.1. Typy ślizgaczy stosowanych w napadach dysków twardych

Typ ślizgacza

Rok

wprowadzenia

Względna wielkość

Długość (mm)

Szerokość (mm)

Wysokość (mm)

Masa (mg)

Mini

1980

100%

4,00

3,20

0,86

55,0

Mikro

1986

70%

2,80

2,24

0,60

16,2

Nano (nadciśnienie)

1991

62%

2,50

1,70

0,43

7,8

Nano (podciśnienie)

1994

50%

2,00

1,60

0,43

5,9

Piko

1997

30%

1,25

1,00

0,30

1,6

Femto

2003

20%

0,85

0,70

0,23

0,6

0x08 graphic
Mniejsze ślizgacze zmniejszają masę zawieszoną na ramieniu pozycjonera głowicy, co pozwala na większe przyspieszenia i hamowania. Dzięki temu osiąga się krótsze czasy dostępu. Mniejsze ślizgacze wymagają również obszaru o mniejszej powierzchni, dzięki czemu głowica może znaleźć się bliżej zewnętrznych i we­wnętrznych ścieżek talerza. Dzięki temu zwiększa się użyteczna powierzchnia dysku. Dodatkowo, mniejsza powierzchnia styku ślizgacza z nośnikiem zmniejsza zużycie powierzchni talerzy występujące podczas nor­malnej procedury rozpędzania i hamowania. Na rysunku 9.9 pokazano powiększenie femtoślizgacza zamon­towanego w zespole zawieszenia głowicy, znajdującego się na końcu jej ramienia.

Rysunek 9.9.

Powiększony widok zespołu zawieszenia głowicy zawierającego femtoślizgacz (zdjęcie wykorzystane za zgodąjirmy Hitachi Global Storage Technologies)

Najnowsze ślizgacze mają specjalnie zmodyfikowaną powierzchnię, pozwalającą na zachowanie jednakowej odległości unoszenia nad nośnikiem niezależnie od tego, czy ślizgacz znajduje się nad zewnętrznym lub we­wnętrznym cylindrem. Standardowe ślizgacze zwiększają i zmniejszają odległość od talerza w zależności od prędkości powierzchni dysku pod ślizgaczem. Nad zewnętrznymi cylindrami prędkość i wysokość unoszenia jest większa. Takie zachowanie jest niepożądane w nowych dyskach stosujących zapis strefowy, w których gęstość bitów jest stała dla wszystkich cylindrów. Gdy gęstość zapisu jest stała dla całego dysku, to aby osią­gnąć maksymalną wydajność, wysokość unoszenia głowicy powinna być również stała. Specjalnie ukształto­wana powierzchnia i odpowiednia technika produkcji pozwala na unoszenie się ślizgacza na stałej wysokości, co jest idealne dla napędów z zapisem strefowym. Więcej informacji na temat zapisu strefowego znajduje się w podrozdziale „Formatowanie dysku" w rozdziale 10.

Na rysunku 9.10 pokazano projekt powietrznej powierzchni nośnej typowego femtoślizgacza.

0x08 graphic
Rysunek 9.10.

Projekt powietrznej powierzchni nośnej femtoślizgacza

Femtoślizgacz zawiera trzy różne obszary o złożonych kształtach, które pozwalają na osiągnięcie jednakowej zmiany oddalenia głowicy od powierzchni dysku na całym jego obszarze, a także minimalnego spadku odda­lenia w przypadku pracy dysku na dużej wysokości (przy niskim ciśnieniu). Obszar płytkiego wytrawienia tworzy stopniowany wlot powietrza umożliwiający uzyskanie nadciśnienia pod powietrzną powierzchnią nośną, która oddala ślizgacz od talerza dysku. Z kolei obszar głębokiego wytrawienia tworzy przestrzeń pod­ciśnienia, które w tym samym czasie przybliża ślizgacz do powierzchni dysku. Połączenie nadciśnienia i pod­ciśnienia ma na celu zrównoważenie siły, z jaką ramię zawieszenia zbliża ślizgacz do powierzchni dysku, i jednocześnie utrzymanie go w żądanej odległości od dysku. Równoważenie podciśnienia i nadciśnienia sta­bilizuje i redukuje zmiany odległości głowicy, z jakimi często można się spotkać w ślizgaczach starszego typu. Pierwszym napędem wykorzystującym femtoślizgacz był 2,5-calowy dysk twardy Hitachi 7K.60, wprowa­dzony do sprzedaży w maju 2003 r.

Schematy kodowania danych

Zapis magnetyczny jest zjawiskiem czysto analogowym. Jednak komputery PC przechowują dane w postaci cyfrowej — czyli za pomocą zer i jedynek. Gdy napęd wysyła dane cyfrowe do głowicy zapisującej, tworzy ona w nośniku domeny magnetyczne o określonej polaryzacji w zależności od dodatniego lub ujemnego napięcia przyłożonego do głowicy. Zmiany strumienia magnetycznego tworzą granice pomiędzy obszarami dodatniej i ujemnej polaryzacji, które kontroler napędu wykorzystuje do kodowania cyfrowych danych na no­śniku analogowym. W czasie operacji odczytu każda wykryta przez napęd zmiana strumienia powoduje wy­generowanie dodatniego lub ujemnego impulsu, wykorzystywanego do rekonstrukcji oryginalnych danych binarnych.

Aby zoptymalizować proces zapisywania zmian strumienia, napęd przesyła surowy strumień binarnych da­nych wejściowych przez urządzenie nazywane koderem-dekoderem (ang. endec), który konwertuje surowe dane binarne na tak zaprojektowaną falę. aby optymalnie umieścić zmiany strumienia (impulsy) na nośniku. W czasie operacji odczytu dekoder odwraca ten proces i dekoduje impulsy na postać oryginalnych danych bi­narnych. W czasie wielu lat rozwoju technologii zaprojektowano kilka schematów kodowania; niektóre z tych schematów są lepsze, bardziej efektywne od innych, o czym przekonamy się w dalszej części tego rozdziału.

Inne opisy kodowania danych mogą być znaczne prostsze, ale pomijają one jeden fakt, który jest bardzo mocno związany z niezawodnością dysków twardych — taktowanie. Projektanci i inżynierowie stale dążą do zapisa­nia większej liczby bitów informacji do ograniczonej liczby zmian strumienia magnetycznego na cal. Dążą oni do projektu, w którym bity danych są dekodowane nie tylko na podstawie wystąpienia lub braku zmiany strumienia, ale również w zależności od czasu między nimi. Im dokładniej mogą być mierzone odległości między zmianami, tym więcej danych można zakodować (a następnie zdekodować).

W każdej postaci sygnalizacji binarnej bardzo ważne jest wykorzystanie taktowania. Podczas interpretacji kształtu fali niezmiernie ważne jest taktowanie każdej zmiany napięcia. Taktowanie definiuje kolejne komórki bitów lub przejścia — czyli okna czasowe, w których napęd zapisuje bądź odczytuje przejście. Jeżeli nie będzie używane taktowanie, kolejne zmiany napięcia mogą być rozpoznawane w niewłaściwym okresie czasu jako należące do innej komórki, co może powodować błędy konwersji lub kodowania, po­wodując opuszczenie, dodanie lub błędną interpretacje bitów. Aby zapewnić precyzyjne taktowanie, urzą­dzenie transmitujące i odbierające muszą być dokładne zsynchronizowane. Dla przykładu, jeżeli zapis zera jest realizowany przez brak przejścia na dysku przez podany okres czasu lub komórkę, wyobraźmy sobie zapisanie dziesięciu bitów zerowych po kolei — otrzymamy długi okres czasu równy dziesięciu odcinkom czasu lub komórek, bez przejścia.

Co stałoby się, gdyby zegar w dekoderze w czasie odczytu danych różnił się nieco w stosunku do zapisanych danych? Jeżeli zegar byłby szybszy, dekoder może interpretować długą serię 10 komórek jako 11. Jeżeli ze­gar byłby wolniejszy, może zinterpretować ją tylko jako 9 komórek. W obu przypadkach spowoduje to błąd odczytu, czyli odczytane dane są inne niż dane zapisane. Aby zapobiec błędom taktowania, niezbędna jest doskonała synchronizacja pomiędzy procesem zapisu i odczytu. Synchronizacja ta jest często realizowana przez dodanie do transmisji pomiędzy urządzeniami osobnego sygnału taktującego, zwanego sygnałem zega­rowym. Sygnały danych i zegarowy mogą być również połączone i przesyłane w postaci jednego sygnału. Większość schematów kodowania danych na nośnikach magnetycznych korzysta z łączenia sygnału danych z sygnałem zegarowym.

Dodanie sygnału zegarowego zapewnia, że urządzenie komunikacyjne może dokładnie interpretować poszcze­gólne komórki bitów. Każda komórka bitu jest połączona z dwiema innymi komórkami zawierającymi zmiany sygnału zegarowego. Wysyłając dane zegarowe razem z danymi, zegar pozostaje zsynchronizowany, nawet je­żeli na nośniku zapisywana jest długa sekwencja identycznych bitów o wartości 0. Niestety, komórki przejścia wykorzystane jedynie do taktowania zajmują miejsce na nośniku, które mogłoby być użyte do zapisu danych.

Ponieważ ilość zmian strumienia, jaką napęd może zapisać na określonej powierzchni nośnika, jest ograniczo­na przez fizyczne własności, gęstość nośnika i technologię wykonania głowicy, projektanci napędów stosują różne sposoby kodowania danych z wykorzystaniem minimalnej ilości zmian strumienia (biorąc pod uwagę fakt, że niektóre zmiany strumienia są wymagane tylko dla taktowania). Kodowanie sygnału pozwala na mak­symalne wykorzystanie możliwości dostępnej technologii dyskowej.

Chociaż w przeszłości wypróbowane były różne schematy kodowania, jedynie kilka z nich przetrwało do dzi­siaj. Najbardziej popularne były trzy podstawowe:

Omówimy teraz sposoby działania tych metod kodowania, kiedy były wykorzystywane oraz ich wady i zalety. Pomoże to zrozumieć schematy z rysunku 9.9 (w dalszej części rozdziału), ponieważ na rysunku tym przed­stawiony jest sposób zapisu znaku Xprzez różne schematy kodowania.

Kodowanie FM

Jedną z najwcześniej stosowanych technik kodowania danych na nośnikach magnetycznych jest modulacja częstotliwości. J"en schemat kodowania — czasami nazywanym kodowaniem pojedynczej gęstości — był wykorzystywany w najstarszych napędach dyskietek stosowanych w komputerach PC. Na przykład, przeno­śny komputer Osborne wykorzystywał napędy dyskietek pojedynczej gęstości, które pozwalały na zapisanie około 80 kB danych na jednym dysku. Ten schemat kodowania był popularny do końca lat siedemdziesiątych i w chwili obecnej nie jest używany.

Kodowanie MFM

Kodowanie MFM było zaprojektowane w celu zmniejszenia liczby zmian strumienia wykorzystywanych w oryginalnym schemacie FM, co pozwoliłoby upakować więcej danych na dysku. Ten schemat kodowania minimalizuje ilość taktów zegarowych, pozostawiając tym samym więcej miejsca na dane. W metodzie tej takty zegarowe zapisywane są jedynie wtedy, gdy zapisany bit 0 jest poprzedzony innym bitem 0: w innych przypadkach takt zegarowy nie jest potrzebny. Ponieważ MFM zmniejsza wykorzystanie taktów zegarowych, pozwala dwukrotnie zwiększyć częstotliwość zegara wykorzystywanego w kodowaniu FM, umożliwiając za­pisanie dwukrotnie większej liczby danych przy takiej samej liczbie zmian strumienia.

Ponieważ kodowanie MFM pozwala zapisać dwukrotnie więcej bitów z wykorzystaniem tej samej liczby zmian strumienia co w przypadku kodowania FM, prędkość zegara jest dwukrotnie zwiększona i napęd wy­krywa tę samą liczbę zmian strumienia. Oznacza to, że napęd korzystający z kodowania MFM zapisuje i od­czytuje z dwukrotnie większą prędkością niż w przypadku kodowania FM, pomimo że napęd wykrywa zmia­ny strumienia z taką samą częstotliwością co w kodowaniu FM.

Ponieważ kodowanie MFM jest dwukrotnie bardziej efektywne niż FM, jest ono również nazywane zapisem o podwójnej gęstości. Kodowanie MFM jest wykorzystywane w niemal wszystkich obecnie stosowanych na­pędach dyskietek dla komputerów PC i przez wiele lat było stosowane w dyskach twardych. W chwili obec­nej niemal wszystkie dyski twarde korzystają z odmian kodowania RLL, które zapewniają jeszcze większą efektywność.

0x08 graphic
Tabela 9..2. Kodowanie MFM danych na zmiany strumienia

W tabeli 9.2 pokazane jest kodowanie bitów danych na zmiany strumienia w kodowaniu MFM.

Kodowanie RLL

W chwili obecnej najbardziej popularnym schematem kodowania dla dysków twardych jest metoda Run Length Limited, która pozwala na

upakowanie dwukrotnie więcej informacji niż metoda MFM i trzykrotnie więcej niż metoda FM. W kodowaniu RLL napęd łączy grupy bitów w jednostki, którym odpowiada specy­ficzny wzorzec zmian strumienia. Łącząc sygnał zegarowy i dane w takie wzorce, częstotliwość zegara może być jeszcze bardziej zwiększona, przy utrzymaniu tej samej odległości pomiędzy zmianami strumienia w no­śniku magnetycznym.

Kodowanie RLL zostało wymyślone w firmie IBM i po raz pierwszy zostało zastosowane w dyskach dużych komputerów. W końcu lat osiemdziesiątych w dyskach przeznaczonych dla komputerów PC zaczęto wyko­rzystywać kodowanie RLL w celu zwiększenia pojemności. Obecnie niemal wszystkie napędy na rynku ko­rzystają z jednej z wersji kodowania RLL.

Zamiast kodowania pojedynczych bitów, RLL koduje całe grupy bitów. Nazwa Run Length Limited pochodzi od dwóch podstawowych cech tych kodów, którymi są minimalna (Run Length) oraz maksymalna (Limited) liczba komórek przejścia pomiędzy dwiema zmianami strumienia. Istnieje kilka wersji tego schematu z różnymi wartościami parametru długości i ograniczenia, ale jedynie dwa zdobyły popularność: RLL 2,7 oraz RLL 1,7.

Można również uznać kodowanie FM oraz MFM za odmianę kodowania RLL. Kodowanie FM może być na­zwane RLL 0,1. ponieważ dwie kolejne zmiany strumienia może oddzielać od zera do jednej komórki przej­ścia. Kodowanie MFM może być nazywane RLL 1,3, ponieważ dwie kolejne zmiany strumienia może oddzielać od jednej do trzech komórek przejścia (pomimo że te metody kodowania mogą być wyrażone jako odmiany RLL, nie jest to często spotykana praktyka).

Kodowanie RLL 2,7 było na początku najbardziej popularną odmianą RLL, ponieważ pozwala ono na osią­gnięcie wysokiego współczynnika gęstości z wykrywaniem okna przejścia o relatywnie tej samej wielkości co w kodowaniu MFM. Metoda ta zapewnia wysoką gęstość zapisu i dosyć dużą niezawodność. Jednak w na­pędach o dużej pojemności RLL 2,7 nie zapewnia odpowiedniej niezawodności. Większość obecnych napę­dów o dużej pojemności korzysta z kodowania RLL 1,7, które pozwala na zapis z gęstością 1,27 razy większą od kodowania MFM i posiada większe okno wykrywania przejścia. Dzięki wykorzystaniu większego okna taktowania, w którym może być wykryta zmiana strumienia, kodowanie RLL 1,7 jest bardziej niezawodne, co jest bardzo ważne, gdy nośniki i technologia produkcji głowic zbliżają się do kresu swoich możliwości.

Inną, rzadko używaną odmianą kodowania RLL jest RLL 3,9 — czasami nazywane Advanced RLL (ARLL) — które pozwala na osiągnięcie jeszcze większego współczynnika gęstości niż RLL 2,7. Niestety, niezawod­ność kodowania przy zastosowaniu tej metody znacznie spada; metoda ta była stosowana w kilku starszych kontrolerach i obecnie nie jest używana.

Zrozumienie zasady działania RLL jest trudne bez przytoczenia przykładu. W przypadku wybranej metody, na przykład RLL 2,7 lub 1,7, można utworzyć wiele tabel kodowania strumienia, demonstrujących, w jaki sposób poszczególne grupy bitów mogą być kodowane na zmiany strumienia.

W przypadku tabeli konwersji zamieszczonej w tabeli 9.3 określone grupy 2, 3 i 4 bitów są zamieniane na ciągi zmian strumienia o długości odpowiednio 4, 6 i 8 komórek przejścia. Wybrane przejścia dla określonych grup bitów są zaprojektowane w taki sposób, aby kolejne zmiany strumienia nie występowały zbyt często ani zbyt rzadko.

Często wystarczy odgiąć niepotrzebny pin 20, bez konieczności jego wyłamywania — przyp. tłum.

0x01 graphic



Wyszukiwarka

Podobne podstrony:
pytania 601 700 roboczy
07 pyt od 601 do 700
07 pyt od 601 do 700
07 pyt od 601 do 700, Nieruchomości, Nieruchomości - pośrednik
BENQ AWL 700
Domino 700 SC
Behringer DJX 700
Dane techniczne SW50 700 now
601 X
201 0001 601 64rj033d0
460-470, materiały ŚUM, IV rok, Patomorfologia, egzamin, opracowanie 700 pytan na ustny
584-606, materiały ŚUM, IV rok, Patomorfologia, egzamin, opracowanie 700 pytan na ustny
700+sch
easy500 700 Operating hours counter HLP EN
f=300,fp=700
601
283-317, materiały ŚUM, IV rok, Patomorfologia, egzamin, opracowanie 700 pytan na ustny

więcej podobnych podstron