urzadzenia techniki komputerowej cz 2 k wojtuszkiewicz

114
1 KRZYSZTOF WOJTUSZKIEWICZ URZĄDZENIA TECHNIKI KOMPUTEROWEJ Część II URZĄDZENIA PERYFERYJNE I INTERFEJSY

Upload: jafredkrystoforski

Post on 20-Nov-2015

26 views

Category:

Documents


5 download

DESCRIPTION

Ty to polubisz

TRANSCRIPT

  • 1

    KRZYSZTOF WOJTUSZKIEWICZ

    URZDZENIA TECHNIKI KOMPUTEROWEJ

    Cz II

    URZDZENIA PERYFERYJNE I INTERFEJSY

  • 2

    1.Urzdzenia peryferyjne i ukady

    wejcia/wyjcia Ten rozdzia

    Rozdzia pierwszy opisuje koncepcje podczenia i wsppracy urzdze peryferyjnych z systemem.

    Nastpny rozdzia Rozdzia drugi przedstawia budow i dziaanie monitorw oraz adapterw graficznych.

    Wstp Urzdzeniami peryferyjnymi komputera nazywamy urzdzenia zapewniajce jego komunikacj z

    otoczeniem bd jego urzdzenia wykonawcze. Przykadami urzdze peryferyjnych s: monitor, drukarka, klawiatura, mysz, ploter i stacja dyskw. Nazwa urzdzenia peryferyjne moe by nieco mylca, gdy sugeruje umieszczenie tych urzdze poza komputerem, co nie zawsze jest prawd (przykad: stacje dyskw). Urzdzenia peryferyjne nie komunikuj si z systemem bezporednio, lecz za pomoc specjalnych ukadw zwanych interfejsem bd sterownikami (kontrolerami) tych urzdze. Z punktu widzenia systemu ukady te stanowi ukady wejcia/wyjcia (patrz cze I, rozdz. 4).

    1.1. Przyczyny stosowania ukadw wejcia/wyjcia

    Przyczyny, dla ktrych ukady wejcia/wyjcia musz istnie s nastpujce:

    format informacji dostarczanej przez system jest rny od formatu informacji wykorzystywanej przez urzdzenie peryferyjne

    parametry elektryczne sygnaw w systemie i urzdzeniu peryferyjnym s rne

    wystpuje rnica w szybkoci transmisji informacji.

    Przykadem pierwszej z wymienionych przyczyn moe by wsppraca monitora z komputerem, co jest zilustrowane na rysunku 1.1.

    Ukad zmieniajcy r

    Rysunek 1.1. Informacja graficzna w systemie i sygnay wymagane przez monitor

    Informacj przygotowan przez system jest tre wywietlanego obrazu (tekst, jak w przykadzie

  • 3

    lub grafika). Informacja (sygnay) wymagana przez monitor to jasno wiecenia plamki oraz sygnay synchronizujce ruch plamki w poziomie i pionie (dokadniejsze wyjanienie zasady dziaania monitora znajduje si w rozdziale 2). Sygnay potrzebne do wysterowania monitora wytwarzane s przez kart graficzn na podstawie informacji z systemu o treci obrazu. Jest wiec ona ukadem wejcia/wyjcia dla monitora, przeksztacajcym informacje dostarczan przez system na sygnay potrzebne do jego wysterowania.

    Przykadem ilustrujcym drug z wymienionych przyczyn moe by standard interfejsu szeregowego RS 232C. Od strony systemu dostarczane s do niego tak zwane sygnay TTL-owe, w przypadku ktrych zeru logicznemu odpowiadaj napicia od okoo O do l ,4 wolta, za jedynce logicznej od 2,4 do 5 woltw. Poziomy logiczne sygnau wyjciowego wymagane przez urzdzenia doczone do interfejsu RS 232C s zupenie inne. Zeru logicznemu odpowiadaj napicia dodatnie wybrane z zakresu od 3 do 15 woltw, za jedynce logicznej napicia ujemne od -3 do -15 woltw. Przy wprowadzaniu bd wyprowadzaniu informacji przez interfejs RS 232C istnieje wiec potrzeba dokonania translacji napi poziomw logicznych. Dokonuj tego ukady interfejsu RS 232C.

    Przykadem do ostatniej podanej przyczyny moe by wsppraca zewntrznego modemu poczonego z komputerem za pomoc wspomnianego wyej interfejsu RS 232C. Komputer potrafi przekazywa informacj do modemu znacznie szybciej ni modem jest j w stanie przesya do sieci telekomunikacyjnej. Gdyby wic nie byo moliwoci sterowania przebiegiem transmisji pomidzy komputerem a modemem, to po przepenieniu bufora modemu dalsza informacja byaby tracona. Interfejs RS 232C posiada jednak sygnay pozwalajce wstrzyma transmisje pomidzy modemem a kom-puterem, co pozwala zapobiec powyszej sytuacji. Opisujc wiec wspprace urzdze peryferyjnych z systemem mikroprocesorowym (czytaj komputerem), a dokadniej z mikroprocesorem i pamici moemy od strony sprztowej wyrni trzy elementy: mikroprocesor i pami, ukad wejcia/ wyjcia bdcy interfejsem i urzdzenie peryferyjne. Opisan sytuacj przedstawia rysunek 1.2.

    Wiadomo jednak (patrz Urzdzenia techniki komputerowej - Jak dziaa kompter"), e wszystko co dzieje si w komputerze (by moe z wyjtkiem awarii), jest wynikiem wykonywania pewnego programu. Innymi sowy, do poprawnej pracy komputera Dotyczy to oczywicie take obsugi urzdze peryferyjnych. Sprztem s tu ukady wejcia/wyjcia lub inaczej interfejs danego urzdzenia. Oprogramowaniem s tak zwa-ne sterowniki programowe. W celu uniknicia kopotw jzykowych w dalszej czci ksiki bdziemy trzyma si nastpujcej konwencji: sterownik programowy (program obsugi) okrelany bdzie mianem sterownika; sterownik sprztowy (ukad lub urzdzenie elektroniczne) to kontroler (unikniemy dziki temu fragmentw zda w rodzaju Sterownik (programowy) sterownika dysku twardego (urzdzenia elektronicznego)".

  • 4

    Jak mwilimy, kade urzdzenie peryferyjne musi korzysta z okrelonego ukadu wejcia/wyjcia (interfejsu). Nie oznacza to jednak, e ukad taki zawsze znajduje si na karcie montowanej w gniedzie rozszerzajcym. Rozwizanie takie zapewnia wiksz elastyczno budowy komputera, o czym pisalimy w pierwszej czci podrcznika, lecz nie jest konieczne. Interfejsy bardzo popularne i czsto spotykane mona, i czsto tak si robi, umieszcza bezporednio na pycie gwnej. Przykadami mog by: sterownik klawiatury, porty szeregowe (RS 232C), rwnolege czy te interfejsy dyskw elastycznych lub dyskw twardych (zarwno EIDE, jak i rzadziej spotykany SCSI). Nieco podobnie ma si rzecz ze sterownikami (programowymi). Sterowniki popularniejszych, standardowych urzdze s elementami systemu operacyjnego lub BIOS-u i czsto s instalowane automatycznie. Urzdzenia nowe bd nietypowe wymagaj sterownikw dostarczonych przez producenta (na dyskietce lub CD-ROM-ie). Podkrelamy jednak jeszcze raz: poprawne funkcjonowanie urz dzenia warunkowane jest zarwno waciwym dziaaniem jego ukadw, jak i odpowiednimi dla nich, poprawnie dziaajcymi sterownikami (dostosowanymi czsto do danej wersji urzdzenia).

    W celu zapewnienia wsppracy ukadw wejcia/wyjcia z systemem wymagane s pewne zasoby systemu. Nale do nich: adresy w przestrzeni adresowej pamici, adresy w przestrzeni adresowej ukadw wejcia/wyjcia, sygnay zgosze przerwa i kanay DMA. Wymagania co do staych adresw w przestrzeni adresowej pamici dotycz w zasadzie adapterw graficznych (inaczej ma si rzecz z pynnym przydziaem pamici, na przykad na tak zwane bufory). Natomiast wszystkie ukady (lub wikszo, ale osobicie nie znam wyjtkw) wymagaj pewnego zakresu adresw w przestrzeni adresowej ukadw wejcia/wyjcia. Wynika to midzy innymi std, e s to ukady programowalne, posiadajce rejestry, do ktrych naley zapisa informacj o sposobie dziaania ukadu. Rejestry te oraz rejestry informujce o stanie ukadu (tak zwane rejestry statusowe), ewentualnie rejestry komunikacyjne i inne, znajduj si pod okrelonymi adresami w przestrzeni adresowej ukadw wejcia/wyjcia. Innym, czsto wymaganym zasobem s sygnay zgoszenia przerwania (o przerwaniach piszemy bardziej szczegowo w pierwszej czci podrcznika). W ten sposb obsugiwana jest wikszo urzdze peryferyjnych, przykadowo napdy dyskowe, drukarki, porty szeregowe itd. W przypadku niektrych magistral, na przykad standardu ISA, dostpno przerwa bya czasami problemem. Inne magistrale, takie jak PCI czy USB w znacznej mierze rozwizuj ten problem. Wreszcie cz urzdze, szczeglnie urzdze zorientowanych na transmisj blokow (takimi s na przykad napdy dyskowe), mog uywa do transmisji kanau DMA. Rzadsze uycie tej metody wizao si nie z wasnociami wynikajcymi z jej zasady dziaania, lecz z rozwizaniami stosowanymi na pytach gwnych PC-tw. Sytuacja ta ostatnio ulega zmianie.

    Na koniec zamieszczamy rysunek 1.3 wymieniajcy przykadowe urzdzenia peryferyjne oraz rodzaje interfejsu, do ktrych s one podczone. Oczywicie, rysunek ten nie wyczerpuje wszystkich moliwoci, a ma jedynie za zadanie pokazanie rnorodnoci zarwno urzdze, jak i ich interfejsw.

  • 5

  • 6

    Cz I

    Podstawowe urzdzenia peryferyjne

  • 7

    2. Monitory i adaptery graficzne Poprzedni rozdzia W poprzednim rozdziale przedstawiono podstawowe pojcia zwizane z podczaniem

    urzdze peryferyjnych do systemu. Ten rozdzia Rozdzia drugi przedstawia dziaanie monitorw, kart graficznych oraz magistrali

    AGP Nastpny rozdzia Rozdzia trzeci powiecony jest budowie i dziaaniu napdw dyskowych oraz ich

    interfejsom. 2.1. Zasada dziaania monitora Monitor jest urzdzeniem sucym do wyprowadzania informacji z komputera w

    postaci obrazw (tekstu bd grafiki). Zasada tworzenia obrazu na ekranie lampy kineskopowej (ang. Cathode Ray Tub - CRT), ktra jest jednym z zasadniczych elementw monitora, przedstawiona jest na rysunku 2. l.

    Ekran kineskopu pokryty jest specjaln substancj zwan luminoforem. Pod wpywem zogniskowanego strumienia rozpdzonych elektronw luminofor wieci, przy czym jasno tego wiecenia zaley od energii (szybkoci) elektronw. W przypadku nieruchomego strumienia pozwalaoby to uzyska na ekranie wiecc plamk. W celu narysowania obrazu na caej powierzchni ekranu strumie elektronw jest odchylany zarwno w poziomie, co powoduje krelenie na ekranie pojedynczej linii (przy zaoeniu staej jasnoci wiecenia plamki), jak i w pionie, co zapewnia krelenie kolejnych linii jedna pod drug. Tre obrazu tworzona jest w ten sposb, e w miar przesuwania si strumienia elektronw po powierzchni ekranu jego energia jest zmieniana, co powoduje zmiany jasnoci wiecenia poszczeglnych punktw luminoforu tworzcych punkty wywietlanego obraz zwane pikselami (w naszym przypadku obrazu monochromatycznego - o wywietlaniu obrazw kolorowych powiemy nieco pniej).

    Krelc lini strumie elektronw przesuwa si poziomo z jednej strony ekranu na

    drug, na przykad z lewej na praw, a nastpnie powinien powrci ponownie do lewej strony ekranu. Do tworzenia obrazu na ekranie wykorzystywany jest ruch plamki tylko w jedn stron, przykadowo z lewej na praw. Wwczas przy powrocie plamki z prawej strony na lew jest ona wygaszana, czyli strumie elektronw jest hamowany na tyle silnie, aby nie powodowa wiecenia luminoforu. Jednoczenie ruch ten jest znacznie szybszy ni ruch roboczy" plamki. Z czasem potrzebnym na narysowanie jednej linii i powrotu plamki zwizany jest parametr zwany czstotliwoci odchylania poziomego, bdcy odwrotnoci tego czasu. Inaczej mwic, parametr ten okrela, ile linii jest krelonych na ekranie monitora w czasie jednej sekundy.

    Na poziomy ruch strumienia elektronw naoony jest ruch pionowy z gry na d, wolniejszy od ruchu poziomego, co jak powiedzielimy, powoduje krelenie kolejnych linii jedna pod drug. W tym przypadku take po dotarciu do dolnego brzegu ekranu strumie powinien powrci do grnego brzegu, ruch ten powinien by znacznie szybszy od ruchu w d i w czasie jego trwania strumie powinien by wygaszony.

  • 8

    Po zapenieniu caego ekranu treci obrazu opisany proces jest powtarzany tak czsto,

    abymy (dziki bezwadnoci naszego oka) odnosili wraenie, e patrzymy na stabilny obraz. Ilo obrazw krelonych w jednej sekundzie, czyli czstotliwo powtarzania obrazw, zwana jest czstotliwoci odwieania obrazu. Jest to jeden z waniejszych parametrw monitora, decydujcy o komforcie pracy, czyli o braku migotania obrazu.

    W celu otrzymania na ekranie stabilnego obrazu, kade rozpoczcie krelenia zarwno

    caego nowego obrazu, jak i kadej linii wchodzcej w jego skad, musi rozpoczyna si w takim samym, cile okrelonym momencie. Dlatego te do monitora dostarczane s specjalne sygnay mwice o tym, kiedy ma si rozpocz kolejny ruch plamki w poziomie lub pionie. Sygnay te nazywane s odpowiednio sygnaem synchronizacji odchylania poziomego - SYNCHRO H (H od ang. Hozontal) i sygnaem synchronizacji odchylania pionowego - SYNCHRO V (V ang. Vertical). Trzecim sygnaem potrzebnym do uzyskania obrazu jest oczywicie sygna jasnoci wiecenia plamki, oznaczany czsto jako sygna VIDEO. Na rysunku 2.2 przedstawiony jest schemat blokowy monitora wraz z dostarczanymi do niego sygnaami.

  • 9

    Wzmacniacz wideo (wizji) wzmacnia sygna zmieniajcy energi strumienia elektronw, a wiec jasno wiecenia plamki. Od szerokoci tak zwanego pasma przenoszenia tego wzmacniacza zaley, jak szybko moemy zmienia jasno wiecenia plamki, a co za tym idzie, ile szczegw moemy narysowa w danej linii, czyli w poziomie. Parametr ten ma wic wpyw na jeden z bardzo wanych parametrw monitora, zwany rozdzielczoci. Rozdzielczo decyduje o iloci szczegw obrazu, ktre moemy wywietli na ekranie. Rozdzielczo podawana jest jako ilo pikseli moliwych do wywietlenia w poziomie i w pionie. Przykadowo rozdzielczo 640x480 oznacza moliwo wywietlenia 640 pikseli w kadej z 480 linii. Jak powiedzielimy, rozdzielczo w poziomie zwizana jest z pasmem przenoszenia wzmacniacza wideo, natomiast rozdzielczo w pionie wie si z iloci linii, ktre rysujemy na ekranie, a wic z czstotliwoci odchylania poziomego. Na ostro obrazu, a wic take i na rozdzielczo ma take wpyw rednica plamki (jest ona podawana w milimetrach). Jest to oczywiste, gdy zauwaymy, e zbyt dua plamka bdzie na przykad powodowaa nakadanie si na siebie ssiadujcych linii.

    Dla komfortu pracy z monitorem wany jest brak migotania obrazu, co uzyskujemy

    powtarzajc odpowiednio czsto wywietlanie tego samego obrazu na ekranie. Dla uzyskania stabilnego obrazu powinien on by wywietlany co najmniej 50 razy na sekund, a dla wyszych rozdzielczoci czstotliwo powinna by jeszcze wiksza. Zwikszanie czstotliwoci powtarzania obrazu (czyli czstotliwoci odwieania) wie si jednak ze wzrostem iloci informacji przesyanej do monitora. Dlatego te w pewnych przypadkach stosuje si wybieg pozwalajcy zmniejszy t ilo. Sposb polega na kreleniu obrazu na ekranie w dwch etapach, najpierw wszystkie linie nieparzyste, a nastpnie wszystkie linie parzyste. Inaczej mwic, krelimy na ekranie dwa pobrazy. Powoduje to zwikszenie dwukrotnie czstotliwoci powtarzania (p)obrazu, przy tej samej iloci przesyanej informacji. Okazuje si jednak, e sposb ten przestaje poprawnie funkcjonowa przy wysokich rozdzielczociach obrazu (uytkownicy odczuwaj to jednak jako migotanie). Krelenie obrazu jako jednej caoci, linia po linii nazywamy prac monitora bez przeplot (lub wybieraniem kolej-noliniowym, ang. non-interlaced), za konstruowanie obrazu z dwch pobrazw zwane jest prac z przeplotem (lub wybieraniem midzyliniowym, ang. interlaced). Obydwa sposoby wywietlania obrazu przedstawione s schematycznie na rysunku 2.3.

    Wywietlanie obrazu kolorowego polega na tworzeniu obrazu z punktw o trzech

    kolorach: czerwonym (ang. red), zielonym (ang. greeri) i niebieskim (ang. blue). Kolory czerwony i niebieski s kolorami podstawowymi, kolor zielony za jest mieszanin koloru niebieskiego i tego. Mieszajc ze sob w odpowiednich proporcjach wymienione trzy kolory moemy na ekranie uzyska dowoln barw.

  • 10

    Ekran kineskopu kolorowego pokryty jest trzema rodzajami luminoforu (tworzcymi punkty bd paski). Kady rodzaj luminoforu pobudzany jest do wiecenia przez oddzielny strumie elektronw. Schematycznie konstrukcja kineskopu kolorowego pokazana jest na rysunku 2.4.

    Jednym z problemw wystpujcych przy budowie tego rodzaju kineskopu jest

    precyzja wykonania dzia elektronowych, ukadw ogniskujcych i odchylajcych. Nie mona bowiem dopuci, by przykadowo strumie elektronw odpowiedzialny za wiecenie koloru niebieskiego trafia na punkty luminoforu czerwonego. Rozwizaniem uatwiajcym osigniecie prawidowego stanu jest stosowanie odpowiednio skonstruowanej maski, ktrej przykad pokazany jest na rysunku 1.4. Oczywicie tego typu kineskop wymaga w miejsce pojedynczego sygnau VIDEO trzech sygnaw sterujcych, zwanych R, G, B, odpowiedzialnych za zmiany jasnoci wiecenia odpowiednio luminoforu czerwonego, zielonego i niebieskiego.

    Podsumowujc, podstawowymi parametrami monitora s: rozdzielczo, czstotliwo odwieania, rednica plamki oraz wielko ekranu. Wielko ekranu podawana jest w postaci dugoci jego przektnej wyraonej w calach. Jest to jednoznaczne, gdy stosunek wysokoci do szerokoci ekranu jest stay i wynosi 4:3. Pomidzy niektrymi z tych parametrw, takim jak czstotliwo odchylana poziomego, i pasmem przenoszenia wzmacniacza wideo istniej do oczywiste zwizki. Przy ustalonej rozdzielczoci i czstotliwoci odwieania, czstotliwo odchylania poziomego moemy wyliczy ze wzoru:

    fH=nv * fV gdzie: fH - czstotliwo odchylania poziomego

    fv - czstotliwo odwieania nv - rozdzielczo (ilo linii) w poziomie.

    Wzr jest oczywisty, gdy zauwaymy, e w czasie krelenia jednego obrazu musimy

    narysowa nH linii, co oznacza, e jedn lini trzeba narysowa nH razy szybciej ni cay obraz.

    Zakadajc przykadowo prac monitora z rozdzielczoci 640x480 i czstotliwoci odwieania 60 Hz, otrzymujemy czstotliwo odchylania poziomego rwn 28,8 kHz.

    Zwizek szerokoci pasma przenoszenia wzmacniacza wideo z rozdzielczoci i czstotliwoci odwieania wynika z iloci informacji, ktr musimy przesa przez niego, a dokadniej z maksymaln szybkoci zmian sygnau wideo. Przy zaoeniu, e wywietlamy na przemian piksele jasne i ciemne, ilo zmian sygnau w cigu sekundy (a wic i jego

  • 11

    czstotliwo) jest rwna iloci pikseli, ktre wywietlamy w cigu sekundy. Ilo t moemy wyliczy ze wzoru:

    N = nH nv fv gdzie: N - ilo wywietlanych pikseli, a wic i czstotliwo sygnau wideo

    nH - rozdzielczo w poziomie nv - rozdzielczo pionowa fv - czstotliwo odwieania obrazu.

    Oczywicie pasmo przenoszenia wzmacniacza wideo powinno by wiksze od wyliczonej wartoci. Dla wymienionych wyej parametrw otrzymujemy:

    f video = 640*480*60= 18432000 i rzeczywicie IBM dla tego trybu podaje wymagane pasmo rwne 25,175 MHz . Ze zmian rozdzielczoci wie si (szczeglnie w przypadku starszych monitorw)

    pewne ostrzeenie. Jak powiedzielimy, zwikszenie rozdzielczoci zmusza" generatory odchylania monitora do pracy z wysz czstotliwoci. Moe to spowodowa zerwanie synchronizacji drga oraz przegrzewanie si tych ukadw, co w konsekwencji moe prowadzi do ich uszkodzenia. W przypadku zerwania drga (brak obrazu na monitorze) naley wyczy monitor i powrci do niszej rozdzielczoci (na przykad tryb awaryjny w Windows).

    W nowszych monitorach problem ten zwykle nie wystpuje, monitory te maj bowiem generatory odchylania, ktre mog pracowa z rnymi czstotliwociami. Monitory takie okrelane s wwczas jako monitory multisync lub multiscan. Jednake i tutaj nie wolno przekracza ich parametrw granicznych (jeeli monitor na to pozwala).

    Przykadowe czstotliwoci odwieania i odchylania poziomego w okrelonych trybach i przy okrelonych rozdzielczociach podane s w tabeli 2.1.

    Tabela 2.1. Przykadowe czstotliwoci pracy monitorw dla wybranych standardw Standard Rozdzielczo fV. fH EGA 640x350 60 Hz 21,5kHz VGA 640x480 60 lub 70 Hz 31,5kHz VESA SVGA 800x600 72 Hz 48,1 kHz VESA SVGA 024x768 75 Hz 60 kHz VESA SVGA 1280x1024 75 Hz 80 kHz Wejcie sygnaw wideo moe by zarwno analogowe jak i cyfrowe. Problem ten

    zostanie dokadnie wyjaniony przy omawianiu adapterw (kart) graficznych.

  • 12

    2.2. Inne rodzaje ekranw Prcz klasycznych monitorw z kineskopem, stosuje si, szczeglnie w komputerach

    przenonych, inne rodzaje ekranw, a konkretnie ekrany (wywietlacze) LCD (ang. liguid cristal display) oraz ekrany plazmowe, przy czym te ostatnie s mao popularne. Obydwa typy ekranw s ekranami paskimi. W jednym i drugim przypadku obraz na ekranie, podobnie jak w przypadku kineskopu, budowany jest z poszczeglnych punktw, czyli pikseli. Inna jest tylko zasada ich wywietlania.

    Zasad dziaania ekranu LCD przedstawia rysunek 2.5.

    Filtry polaryzacyjne grny i dolny maj paszczyzny polaryzacji przesunite

    wzgldem siebie o 90 (o wasnociach wiata spolaryzowanego piszemy dokadniej w rozdziale 4.3, powieconym napdom magnetooptycznym). Umieszczony pomidzy nimi cieky kryszta powoduje zmian paszczyzny polaryzacji wiata, przy czym kt skrcenia tej paszczyzny zaley od przyoonego do niego napicia. W wywietlaczu ciekokrystalicznym w taki sposb wybrano cieky kryszta, aby bez napicia polaryzujcego powodowa skrcenie paszczyzny polaryzacji wiata o 90. Dziki temu wiato moe przedostawa si przez wywietlacz. Przyoenie napicia pomidzy dwa punkty siatki przewodnikw, podunej i poprzecznej, powoduje zmian kta skrcenia paszczyzny polaryzacji wiata i przepuszczanie mniejszej iloci wiata. W konsekwencji powstaje na wywietlaczu punkt tym ciemniejszy, im wiksza jest warto przyoonego napicia. W przypadku wywietlaczy kolorowych w odpowiednich punktach umieszczone s filtry o kolorach: czerwonym, zielonym i niebieskim (RGB).

    Odmian ekranu LCD jest wywietlacz LCD z aktywn matryc. W tego typu wywietlaczu kademu pikselowi odpowiada osobny tranzystor wykonany w tak zwanej technice TFT (tranzystor cienkowarstwowy, ang. Thin Film Transistor). Moe on przecza wiksze prdy ni matryca pasywna i w efekcie uzyskuje si janiejszy, bardziej wyrany obraz.

    Inn odmian paskich ekranw s ekrany plazmowe. wiecce punkty s tam uzyskiwane w wyniku miejscowej jonizacji gazu. Wymaga to stosunkowo duego napicia okoo 200 V, std jak powiedzielimy, s one rzadko stosowane.

    2.3. Budowa i dziaanie adapterw graficznych Terminw adapter i karta mona przy pewnym zaoeniu uywa zamiennie. Rnica

    pomidzy kart a adapterem polega na tym, e karta jest urzdzeniem wymiennym, ktre montujemy w gniedzie magistrali rozszerzajcej (ang. slof), natomiast adapter moe by umieszczony take na stae na pycie gwnej. Rozrnienie to dotyczy wszelkich adapterw i

  • 13

    kart. W rozdziale tym uywamy terminu karta, gdy jest on powszechnie stosowane, nie przesdza to jednak o umiejscowieniu urzdzenia.

    Karta graficzna jest urzdzeniem poredniczcym w komunikacji systemu komputerowego z monitorem. Jak wspomnielimy w rozdziale pierwszym, otrzymuje ona informacje o treci obrazu od systemu i po odpowiednich dziaaniach wytwarza sygnay sterujce prac monitora. Z biegiem czasu ilo zada wykonywanych przez kart graficzn rosa. Std moemy karty graficzne podzieli na tak zwane bufory ramki, ktre nie uczestnicz w tworzeniu treci obrazu oraz na karty akceleratorowe. Wrd tych ostatnich wyrniamy akceleratory 2D, czyli grafiki dwuwymiarowej i akceleratory grafiki trjwymiarowej 3D. Zadaniem prostych ka^t graficznych, czyli buforw ramki, jest wytworzenie sygnaw sterujcych monitorem, potrzebnych do uzyskania okrelonego obrazu. O elementach tego obrazu decyduje zawarto tak zwanej pamici wideo (o ktrej wicej powiemy w dalszych czciach niniejszego rozdziau). Zawarto ta jest tworzona wycznie przez system, a konkretnie przez mikroprocesor, natomiast karta w tym procesie w ogle nie uczestniczy. W przypadku kart akceleratorowych sytuacja jest nieco odmienna. Mniejsza lub wiksza cz operacji zwizanych z tworzeniem treci obrazu (inaczej mwic, z obliczaniem, jak intensywnie powinny wieci poszczeglne piksele skadajce si na cao obrazu) wykonywana jest przez kart graficzn (na danie systemu). Zwizane jest to zwykle z potrzeb szybszego wykonania tych operacji i odcienia procesora. Od strony systemu karta graficzna widziana jest jako ukad wejcia/wyjcia wspadresowalny z pamici operacyjn (zarezerwowany zakres adresw A000:0000 (BOOO:FFFFh -128 KB). Rejestry konfiguracyjne i sterujce maj zarezerwowane adresy w przestrzeni adresowej izolowanych ukadw wejcia/wyjcia.

    2.3.1. Schemat blokowy prostej karty graficznej Prac kart graficznych moemy podzieli na dwa rnice si znacznie tryby:

    tekstowy i graficzny. Rnica polega przede wszystkim na sposobie interpretacji zawartoci pamici wideo. W trybie tekstowym zawarto pamici interpretowana jest jako kody znakw, ktre naley wywietli na ekranie. Zawarto pamici wideo okrela wic w tym przypadku porednio, co ma by wywietlone na ekranie. Informacja o tym, ktry piksel ma by zapalony, a ktry zgaszony, pochodzi z generatora znakw. Prac karty graficznej w trybie tekstowym opisuje podrozdzia 2.3.2.

    W trybie graficznym zawarto pamici wideo jest interpretowana jako bezporednie okrelenie jasnoci wiecenia kadego piksela (przy zaoeniu, e piksel moe by jedynie zgaszony lub zapalony, na kady piksel przypadaby l bit). Praca karty graficznej w trybie graficznym opisana jest w podrozdziale 2.3.3.

    Schemat blokowy prostej karty graficznej bdcej buforem ramki przedstawia rysunek 2.6.

  • 14

    na przykad sygnay synchronizacji. Oprcz dostarczania wymienionych sygnaw, sterownik monitora adresuje pami wideo, matryc znakw (RAM/ROM znakw) oraz taktuje prac generatora znakw i rejestru przesuwajcego. Oczywicie peny zestaw funkcji CRTC zaley od jego typu, a zatem i od karty, w ktrej pracuje.

    Interfejs magistrali poredniczy w wymianie informacji karty z CPU (cz tych ukadw jest w istocie zawarta w CRTC). Pami wideo zawiera tre obrazu (w formie poredniej lub bezporedniej) przeznaczonego do wywietlenia. RAM/ROM znakw zawiera matryc znakw, czyli informacj o sposobie konstruowania znakw z pikseli. Pami ta razem z dekoderem atrybutw oraz generatorem znakw wsppracuje przy wywietlaniu znakw w trybie tekstowym. Wsppraca ta jest opisana w podrozdziale 2.3.2. Generatory wyjciowe wytwarzaj sygnay o poziomach wymaganych przez monitor, z ktrym wsppracuje karta. 2.3.2. Praca karty graficznej w trybie tekstowym Schemat blokowy ukadw karty uczestniczcych w wywietlaniu tekstu na ekranie w trybie tekstowym oraz konstrukcj przykadowego znaku pokazuje rysunek 2.7.

    Na rysunku zastosowano nastpujce oznaczenia: Nj - ilo wierszy na ekranie N2 - ilo znakw w wierszu m x n - matryca znaku (ilo pikseli na znak x ilo linii na znak).

    Dziaanie ukadu jest nastpujce: impulsy taktujce przesyanie kolejnych bitw z rejestru przesuwnego podawane s jednoczenie zespoowi licznikw, ktrych zadaniem jest ledzenie, ktry piksel obrazu aktualnie wywietlamy. Licznik LI liczcy modulo m sygnalizuje zakoczenie rysowania fragmentu linii nalecej do danego znaku (m pikseli na jeden znak) i przejcie do rysowania nastpnego znaku. Impulsy wyjciowe tego licznika zliczane s przez licznik L2. Jego zawarto mwi o tym, ktry znak w biecym wierszu rysujemy. Licznik ten generuje wic cz adresu dla pamici wideo, okrelajc, kod ktrego znaku naley pobra. Przepenienie tego licznika po zliczeniu N2 impulsw sygnalizuje konieczno zmiany linii, co jest zwizane z wygenerowaniem impulsu synchronizacji poziomej. Licznik L3 zwiksza swoj zawarto po narysowaniu kadej kolejnej linii. Zliczenie wic n linii przez licznik oznacza zakoczenie rysowania biecego wiersza i przejcie do krelenia linii nalecych do wiersza nastpnego. Przepenienie licznika powoduje zwikszenie zawartoci licznika L4 zliczajcego (numerujcego wiersze. Zawarto tego licznika stanowi drug cz adresu wybierajcego kod okrelonego znaku w pamici wideo.

    Zawarto pamici wideo, bdca kodem ASCII aktualnie wywietlanego znaku, podawana jest do pamici matrycy znakw, stanowic cz adresu mwic o tym, jakiego

  • 15

    znaku konstrukcja bdzie aktualnie wywietlana. Pozosta cz adresu stanowi numer linii aktualnie wywietlanego znaku pobrany z licznika L3. Powoduje to wybranie okrelonego bajtu z pamici matrycy znakw i zaadowanie go do rejestru przesuwnego, ktrego zawarto bit po bicie, zgodnie z taktem zegara przesyana jest na zewntrz. Wyjcie tego rejestru steruje jasnoci wiecenia plamki, co stanowi sygna wideo (O - piksel zgaszony, l zapalony lub w przypadku wywietlania koloru O - kolor ta, l kolor znaku).

    Ukady z rysunku 2.7 bior udzia take w wywietlaniu tekstu w kolorze. Kolory uzyskuje si przy uyciu czterech sygnaw oznaczanych jako I - intensywno, R - czerwony, G - zielony i B - niebieski. Informacja o znaku potrzebna do jego wywietlenia w trybie kolorowym przedstawiona jest na rysunku 2.8. Dalsza cz ukadw wywietlajcych tekst w kolorze pokazana jest na rysunku 2.9.

    Przy wywietlaniu znakw w trybie tekstowym w kolorze kady znak jest reprezentowany w pamici wideo przez dwa bajty. Pierwszy bajt zawiera kod ASCII wywietlanego znaku, za w drugim bajcie umieszczone s tak zwane atrybuty wywietlanego znaku. Szczegowe rozmieszczenie informacji w obydwu bajtach przedstawia rysunek 2.8.

    Rysunek 2.9 wyjania uycie bajtu atrybutw w celu uzyskania kolorw znaku i ta. Informacja o konstrukcji znaku zaadowana do rejestru przesuwajcego nie steruje bezporednio jasnoci wiecenia plamki, lecz jest podawana na wejcie sterujce multipleksera. Multiplekser posiada dwa czterobitowe wejcia oraz czterobitowe wyjcie. Jeeli z rejestru przesuwajcego podawana jest warto l (co oznacza, e wywietlamy element znaku) na wyjcie multipleksera podawane s bity atrybutw znaku. Cztery bity umoliwiaj uzyskanie 2 = 1 6 rnych kolorw. Zestawienie kolorw w zalenoci od wartoci bitw IRGB przedstawia tabela 2.2.

  • 16

    Tabela 2.2. Kombinacje wartoci bitw IRGB i odpowiadajce im kolory

    IRGB Kolor IRGB Kolor 0000 Czarny 1000 Ciemnoszary 0001 Niebieski 1001 Jasnoniebieski 0010 Zielony 1010 Jasnozielony 0011 Cyjan 1011 Jasny cyjan 0100 Czerwony 1100 Jasnoczerwony 0101 Purpurowy 1101 Jasnopurpurowy 0110 Brzowy 1110 ty 0111 Jasnoszary 1111 Biay

    Jeeli z rejestru przesuwajcego podawane jest zero, oznacza to, e wywietlany jest piksel ta.

    Wwczas na wyjcie multipleksera podawane s bity atrybutw ta. Bity R, G i B podawane s bezporednio, natomiast bit Bl (ang. Blinking - migotanie) jest podawany za porednictwem bramki AND i jego uycie zaley od stanu drugiego wejcia tej bramki. Jeeli na to wejcie podawana jest warto O z tak zwanego rejestru trybu wywietlania (wchodzcego w skad CRTC), to bit Bk okrela rozjanienie ta. Jeli natomiast na wejcie to podawany jest przebieg prostoktny (na przemian l i 0), to wwczas uzyskujemy migotanie ta (co zreszt nasze oko odbiera jako migotanie znaku).

    W starszych kartach graficznych matryca znakw umieszczona bya w pamici ROM, co uniemoliwiao jej zmian. Poczwszy od karty EGA matryca ta znajduje si w pamici RAM. Sposb rozmieszczenia informacji o kodach wywietlanych znakw i konstrukcji znakw w bankach pamici wideo omwiony jest w podrozdziale 2.3.3.2 (rys. 2.15).

    Na koniec opisu trybu tekstowego wyliczymy pojemno pamici potrzebn do przechowania zawartoci penego ekranu w tym trybie, przykadowo dla karty VGA. W jednym z trybw tej karty wywietlane jest na ekranie 25 wierszy po 80 znakw. Poniewa w pamici wideo kademu znakowi przypisane s dwa bajty, pami potrzebna do przechowania treci caego ekranu wynosi:

    25*80*2B = 4000B = 4KB

    Warto t porwnamy w nastpnym rozdziale do wielkoci pamici potrzebnej dla trybu graficznego.

    2.3.3. Praca karty graficznej w trybie graficznym Jak powiedzielimy w podpunkcie 2.3.1, w trybie graficznym informacja z pamici wideo jest

    interpretowana jako bezporednie okrelenie jasnoci wiecenia (bd koloru) pikseli. W sytuacji obrazu czarno-biaego (piksel zgaszony lub zapalony) schemat ukadu wywietlania jest bardzo prosty. Jest on przedstawiony na rysunku 2.10.

    Kolejne bajty pobierane z pamici wideo adowane s do rejestru przesuwajcego. Stamtd w miar

    przesuwania si wizki elektronw po kineskopie podawane s bit po bicie do ukadw sterujcych jasnoci wiecenia plamki, tworzc kolejne pik-sele.

  • 17

    Bardziej skomplikowan sytuacj mamy w przypadku wywietlania obrazu kolorowego. Kady piksel musi by reprezentowany przez zesp bitw, ktrych ilo zaley od liczby kolorw, ktrych chcemy uywa. Ilo bitw ktrych uywamy do reprezentowania kadego piksela musi zapewni moliwo zakodowania wszystkich uywanych kolorw. Std ilo bitw i ilo kolorw musz spenia prost zaleno:

    2n > N lub inaczej n > lg2N

    gdzie: N - ilo uywanych kolorw, n - ilo bitw reprezentujcych l piksel.

    W starszych kartach graficznych typu EGA czy VGA, ze wzgldu na prostsz budow ukadw wyjciowych i stosunkowo ma ilo kolorw, zawarto pamici nie reprezentowaa koloru bezporednio. Odpowiednie kombinacje bitw byy poddawane konwersji za pomoc okrelonych tablic przekodowujcych (ang. look-up table), wchodzcych w skad ukadw karty graficznej. Zasad generowania sygnaw kolorw pokaemy najpierw na prostszym przykadzie karty EGA, a dopiero potem opiszemy analogiczn sytuacj w karcie VGA. Ma to dodatkowe uzasadnienie, jako e cz ukadw zawartych w karcie VGA wynika z moliwoci emulowania przez ni karty EGA.

    2.3.3.1. Karta EGA

    Schemat blokowy karty EGA pracujcej w trybie graficznym w kolorze przedstawia rysunek 2.11. Pami wideo karty EGA dzielona jest na cztery czci zwane patami lub bankami (ang. pian). Z kadego patu adowany jest do wsppracujcego z nim rejestruprzesuwajcego l bajt, co daje w sumie 4 bajty okrelajce wygld omiu pikseli.Kolejne odpowiadajce sobie 4 bity pojawiajce si na wyjciach rejestrw przesuwajcych okrelaj kolor wywietlanego piksela poprzez wybr jednego z szesnasturejestrw zwanych rejestrami palety kolorw. Pojemno tych rejestrw wynosi 6 bitw, co daje moliwo zakodowania 2 = 64 rnych kolorw. Jednake bez przeadowywania rejestrw (a wic przeprogramowywania karty) mamy do dyspozycji tylko16 kolorw, gdy tyle jest rejestrw palety kolorw (a take tyle rnych moliwocimoemy wybra za pomoc 4 bitw). Std mwimy, e karta EGA moga pracowaz maksymalnie szesnastoma kolorami, przy czym byy one wybierane z palety 64 kolorw.

    Wyjcie rejestrw palety kolorw byo podawane do monitora w postaci sygnaw R, G, B, IR, IB, IG, przy czym mogy one przyjmowa wartoci odpowiadajce dwom stanom O i 1. Dlatego te wyjcie karty EGA okrelane jest jako wyjcie cyfrowe. Gniazdem wyjciowym tej karty byo gniazdo typu DB 9. Schematyczny rysunek tego gniazda wraz z okreleniami sygnaw wystpujcych na poszczeglnych pinach pokazuje rysunek 2.12.

  • 18

    Rysunek 2.12. Schemat gniazda wyjciowego karty EGA

    Przyczyn podziau pamici wideo karty EGA na paty jest miedzy innymi ilo adresw zarezerwowana dla kart graficznych w przestrzeni adresowej pamici. Jak podawalimy na pocztku rozdziau 2.3, zakres przydzielonych adresw umoliwia zaadresowanie 128 KB. Dla bogatszych kart EGA oraz dla kart VGA i SVGA jest to ilo zbyt maa, std potrzeba podziau pamici na paty.

    2.3.3.2. Karta VGA Schemat blokowy karty VGA dla trybu graficznego przedstawia rysunek 2.13

    Karta VGA moe pracowa w wielu rnych trybach, emulujc dziaanie wczeniejszych kart lub pracujc z rnymi rozdzielczociami i liczbami kolorw. Zestawienie trybw pracy karty VGA zawiera tabela 2.3. Numer trybu (hex)

    Rodzaj trybu Rozdzielczo/ ilo znakw

    Ilo kolorw /paleta kolorw

    Matryca znakw

    0,1 Tekstowy 40x25 16/256K 9x16

    2,3 Tekstowy 80x25 16/256K 8x14

    4,5 Graficzny 320x200 4/256K 6 Graficzny 640x200 2/256K 7 Tekstowy 80x25 mono 9x16

    8 Graficzny 160x200 16/256K 9 Graficzny 320x200 16/256K A Graficzny 640x200 4/256K D Graficzny 320/200 16/256K E Graficzny 640x200 16/256K F Graficzny 640x350 2/256K 10 Graficzny 640x35016 16/256k 11 Graficzny 640X480 2/256.k 12 Graficzny 640X480 16/256k 13 Graficzny 320X200 256/256K

  • 19

    Przykadowo, dla trybu EGA (tryb lOh) informacja z pamici wideo adowana jest do rejestrw przesuwajcych, skd za pomoc czterech bitw (tryb lOh jest 16-kolorowy) wybiera l z 16 rejestrw palety kolorw. W trybie tym rejestry zawieraj swj numer, co powoduje wybranie jednego z pierwszych szesnastu rejestrw w tablicy przekodowujcej. Informacja z rejestru palety kolorw podawana jest na tablice przekodowujc za porednictwem multipleksera, przy wartoci sygnau S=0 (tryb EGA). Zawarto rejestrw tablicy przekodowujcej (18 bitw) decyduje o wywietlanym kolorze piksela. Ilo kolorw, ktre moemy wybra bez przeadowywania rejestrw tablicy przekodowujcej, wynosi 16. Naley jednak zauway, e w stosunku do oryginalnej karty EGA zmienia si paleta kolorw, ktra wynosi 256 K kolorw, co wynika z uycia do kodowania kolorw 18 bitw (takie mamy rejestry w tablicy przekodowujcej).

    W trybie 13h VGA kady piksel jest reprezentowany przez 8 bitw, co umoliwia zakodowanie 256 kolorw. Cztery modsze bity wybieraj jeden z szesnastu rejestrw palety kolorw, jednake w tym trybie kady z rejestrw zawiera swj zakodowany dwjkowo numer. Oznacza, to, e bity docieraj niezmienione do tablicy przekodowujcej. Nastpne cztery bity adowane s do rejestru wyboru kolorw, skd czciowo bezporednio, czciowo za za porednictwem multipleksera podawane s na tablic przekodowujc. Ostatecznie 8 bitw wybiera l z 256 18-bitowych rejestrw. Na kad skadow koloru powiconych jest 6 bitw, co daje 64 kombinacje dla jednego koloru. Bity te steruj prac trzech przetwornikw a/c, po jednym dla kadej skadowej koloru. cznie daje to na wyjciu kadego przetwornika 64 rne poziomy napicia odpowiadajce danej skadowej koloru, co daje sumarycznie 64 x 64 x 64 = 262 144 odcienie kolorw stanowicych palet, z ktrej moe by jednoczenie wywietlanych 256 kolorw. Jak wida, wyjcie karty VGA jest wyjciem analogowym (wiele poziomw napi). Gniazdo monitora karty VGA wraz z numeracj stykw pokazane jest na rysunku 2.14, a odpowiadajce im sygnay podaje tabela 2.4.

    Nr pinu Oznaczenie Opis

    1 Red Sygna z DAC - kolor czerwony

    2 Green Sygna z DAC - kolor zielony

    3 Blue Sygna z DAC - kolor niebieski

    4 Zarezerwowane

    5 GND Masa

    6 GND Masa (czerwony)

    7 GND Masa (zielony)

    8 GND Masa (niebieski)

    9 Nie podczone

    10 GND Masa

    11 Zarezerwowane

    12 Zarezerwowane

    13 HSYNC Synchronizacja odchylania poziomego

    14 VSYNC Synchronizacja odchylania pionowego

    15 Zarezerwowane

  • 20

    Policzymy teraz ilo pamici potrzebn dla zapamitania treci obrazu zajmujcego peny ekran w jednym z wybranych trybw graficznych. Przykadowo dla trybu 12h VGA (16 kolorw przy rozdzielczoci 640 x 480) wymagana pojemno pamici wynosi: (rozdzielczo pozioma) x (rozdzielczo pionowa) x (ilo bitw na piksel) = = 640 x 480 x 4b = l 228 800 bitw czyli (po podzieleniu przez 8) 154 KB. Wielko t naley porwna z wymaganiami trybu tekstowego.

    Karty VGA, jak wyliczylimy, wymagaj pamici wideo o pojemnoci powyej 128 KB. Pojemno pamici karty VGA wynosi standardowo 256 KB. Pami ta, podobnie jak dla karty EGA, dzielona jest na cztery banki (paty) po 64 KB kady (chocia teoretycznie moliwy byby take podzia na 2 banki 128-kilobajtowe). Dla trybw szesnastokolorowych wykorzystanie tych bankw jest do naturalne. Kady z nich przechowuje bity okrelajce skadow jednego koloru. W trybie 256 kolorowym kady piksel opisywany jest jednym bajtem. Przy rozdzielczoci 320x200 wymagana pojemno pamici wynosi 320 x 200 x l B = 64 KB. Informacja o kolejnych pikselach umieszczana jest pod kolejnymi rosncymi adresami od AOOOOh do AF9FFh.

    Uycie bankw pamici dla trybu tekstowego przedstawia rysunek 2.15.

    Jak widzimy, matryce znakw s przechowywane w pamici RAM, co umoliwia ich zmian. Zmian tak najprociej przeprowadzi przy uyciu przerwania 11 h VGA BIOS (Interface to the Character Generator) [2].

    2.3.4. Karty SVGA

    Kartami SVGA nazywa si karty pracujce z rozdzielczociami i/lub iloci kolorw przekraczajcymi wielkoci podane dla karty VGA. Pocztkowo karty te projektowane byy bez adnych uzgodnionych standardw, co powodowao wiele kopotw z kompatybilnoci oprogramowania i systemu graficznego. Sytuacja w znacznej mierze zostaa uporzdkowana przez komitet o nazwie VESA (ang. The Video Electronics Standards Association). Wprowadzono nowe tryby oznaczane liczbami lxxh dla odrnienia ich od trybw wprowadzonych przez producentw. Zestawienie nowych trybw SVGA zawiera tabela 2.5.

  • 21

    Tabela 2.5. Tryby pracy kart SVGA Numer trybu (hex)

    Rodzaj trybu Rozdzielczo Ilo kolorw Ilo znakw wrs/kol

    100 Graficzny 640x400 256 101 Graficzny 640x480 256 102 Graficzny 800x600 16 103 Graficzny 800x600 256

  • 22

    Jak wida z tabeli, do kodowania kolorw uywane s 8, 15, 16 lub 24 bity, co daje odpowiednio 256, 32 K, 64 K i 16 M kolorw. Ostatnia z wymienionych moliwoci nazywa si trybem True Color. W nowszych kartach stosuje si take kodowanie koloru 32 bitami. Rozwizanie to jest nieco dyskusyjne, poniewa oko ludzkie rozrnia jedynie kilka milionw kolorw. Pewnym uzasadnieniem jest moliwo uycia dodatkowego bajtu do kodowania efektw specjalnych. Poniewa dla monito rw kolory s kodowane zawsze w systemie RGB (dla drukarek bdzie to na przykad CMYK - Cyjan, Magenta, Yellow, blacK), cakowita ilo bitw przeznaczona na kodowanie kolorw dzielona jest na trzy rwne czci (kada dla jednej skadowej koloru). Nie zawsze jest to jednak moliwe, std w przypadku 16 bitw na skadowe czerwon i niebiesk przypada po 5 bitw, a na zielon 6. Z kolei w przypadku kodowania kolorw 15 bitami z pamici odczytywane s dwa bajty, a 16. bit jest po prostu nieuywany.

    Karty SVGA posiadaj pamici wideo o pojemnoci 512 KB i wiksze. Tu take wystpuje problem adresowania pamici wideo. Pami ta jest najczciej adresowana przez 64-kilobajtowe okno, przy czym banki pamici zmieniane s przy uyciu tak zwanego rejestru wyboru banku (ang. bank select register). Dane opisujce poszczeglne piksele tworzce obraz rozmieszczone s w pamici wideo liniowo, poczwszy od lewego grnego rogu ekranu - najniszy adres, a skoczywszy na prawym dolnym - najwyszy adres. Adresowanie i sposb rozmieszczenia informacji (adresy pikseli) w pamici wideo pokazane s na rysunku 2.16 na przykadzie trybu 800x600 z 256 kolorami.-

    2.3.5. Zestawienie wasnoci podstawowych kart graficznych

    Poniej zamieszczamy tabel, w ktrej zostay zebrane najwaniejsze wasnoci podstawowych typw kart graficznych. Z powodw wyjanionych poniej, do zestawienia tego wczono kart typu Hercules (ang. Hercules Graphics Card - HGC). Cz z podanych parametrw zaley od konkretnego wykonania, naley je wic traktowa jako wielkoci orientacyjne.

  • 23

    Tabela 2.6. Najwaniejsze cechy podstawowych typw kart graficznych Nazwa parametru Karta HGC Karta EGA Karta VGA Karta SVGA

    Adres pamici wideo - tekst BOOOh B800h BOOOh BOOOh

    Adres pamici wideo -grafika BOOOh AOOOh AOOOh AOOOh

    Rozmiar pamici wideo 4 KB 64-256 KB 256 KB >512KB

    Zakres adresw portw 3BO-3BFh 3C0-3DFh 3BO-3DFh 3BO-3DFh

    Matryca znaku 9x14 8x14 9x16 9x16 (typowo)

    Maksymalna rozdzielczo 720x348 640x350 640x480 1600x1200 (zalena od karty)

    Maksymalna ilo kolorw Mono 16 z 64 256 z 256 K 16 min lub 4 mld

    Typ sygnaw monitora Cyfrowy Cyfrowy Analogowy Analogowy

    Czstotliwo odchylania pionowego

    50 Hz 60 Hz 50-70 Hz ok. 50 -200 Hz

    Czstotliwo odchylania poziomego

    18432 kHz 15,7-21,8 kHz 31,5 kHz do ok. 90 kHz

    Pasmo wzmacniacza wideo 16,257 MHz 14,3-16,3 MHz

    28 MHz do ok. 100MHz

    Wasny BIOS Nie Tak Tak Tak

    2.3.6. Karty akceleratorowe i koprocesorowe

    Opisywane do tej pory karty nie uczestniczyy w aden sposb w tworzeniu treci obrazu. Jednake wraz z pojawieniem si graficznego interfejsu uytkownika (ang. Graphical User Interface - GUI) jak przykadowo w systemach operacyjnych Windows czy OS/2, wymagania w stosunku do kart graficznych wzrosy. Dwoma podstawowymi problemami zwizanymi z przetwarzaniem duej iloci informacji graficznych jest: przesyanie duej iloci informacji poprzez magistral czc procesor gwny

    z pamici wideo karty graficznej due obcienie procesora gwnego obliczeniami zwizanymi z tworzeniem

    i zmianami treci obrazu. Obydwa problemy mog by w znacznej mierze rozwizane poprzez przekazanie

    czci uprawnie" do tworzenia obrazu bezporednio karcie graficznej. Zmniejszy to zarwno obcienie procesora gwnego (cz wylicze wykona karta graficzna), jak i obcienie magistrali (pami wideo znajduje si bezporednio na karcie).

    Efektem tych spostrzee jest powstanie kart akceleratorowych i koprocesorowych. Rnica pomidzy nimi wynika z ich moliwoci i rda, z ktrymi te moliwoci s zwizane. Dla kart akceleratorowych wynikaj one wycznie z rozwiza sprztowych zastosowanych w tych kartach, a konkretnie w ukadzie scalonym akceleratora, std ich moliwoci s cile okrelone przez ich projektanta. Karty koprocesorowe s wyposaone, jak sama nazwa wskazuje, w procesor oraz w pami programu. Moliwoci takich kart s wic znacznie wiksze i zale take od oprogramowania samej karty. Rnice w budowie kart akceleratorowych i koprocesorowych przedstawione s symbolicznie na rysunku 2.17.

  • 24

    Operacje wykonywane przez tego typu karty, zobrazowane symbolicznie na rysunku

    2.17, dotycz grafiki dwuwymiarowej, zwizanej, jak powiedzielimy wczeniej, midzy innymi z graficznym interfejsem uytkownika. Wymaga on czstego wykonywania takich operacji jak tworzenie okien (rysowanie prostoktw) czy ich przesuwanie. Te ostatnie realizowane s jako transfery blokw w pamici wideo (opisujcych piksele danego okna). Std jedn z umiejtnoci" zarwno akceleratorw, jak i koprocesorw graficznych jest wykonywanie tego typu operacji zwanych operacjami BitBlt (ang. Bit Block transfer). Przykadowy ukad akceleratora 2D, Weitek Power 9100, wraz ze wsppracujcymi ukadami pokazany jest na rysunku 2.18. Jak widzimy, w ukadzie zawarte s wszelkie elementy tworzce kart VGA/SVGA typu bufor ramki (CRTC, sterownik pamici wideo, generatory przebiegw synchronizu-jcych itp.). Oprcz wymienionych, ukad ten zawiera jednak take bloki odpowiedzialne za realizacj operacji graficznych 2D. Do ukadu obliczania parametrw przekazywane s z CPU polecenia wykonania operacji graficznych (np. rysowania prostoktw, przesuwania obszarw itp.) Na podstawie otrzymanych informacji (charakterystyczne punkty figury (np. wsprzdne dwch przeciwlegych rogw prostokta), koloru wypenienia i tym podobnych, ukad ten wylicza odpowiednie parametry, takie jak adresy pamici wideo i przekazuje je do ukadu rysowania. Ukad ten wypenia okrelone obszary pamici wideo(podanymi przez ukad obliczania parametrw) wartociami, tworzcymi za pomoc pikseli dany obraz.

  • 25

    2.4. Grafika trjwymiarowa i magistrala AGP

    Kolejnym etapem w rozwoju kart graficznych byo opracowanie tak zwanych akceleratorw grafiki trjwymiarowej. Tworzenie tej grafiki wymaga pewnych specyficznych operacji (przykadowo takich jak nakadanie tekstur) oraz bardzo duej iloci mudnych oblicze. Problemy pojawiajce si przy uywaniu grafiki trjwymiarowej, zarysowane w nastpnym podpunkcie, doprowadziy do pojawienia si kart z akceleratorami 3D oraz do opracowania specjalnej magistrali zwanej AGP (ang. Accelerated Graphics Port) dedykowanej kartom graficznym, a szczeglnie akceleratorom 3D. Magistral t opisujemy w podpunkcie 2.4.2.

    2.4.1. Grafika trjwymiarowa

    Tworzenie grafiki trjwymiarowej moemy podzieli na dwa podstawowe etapy: obliczenia geometrii obrazu (ang. geometry calculation) oraz odtworzenie obrazu na ekranie (ang. rendeng). Obiekty trjwymiarowe (ich powierzchnie) modelowane s generalnie z wieloktw, najczciej z trjktw (ktre pniej najatwiej pozycjonowa). Wygld tych obiektw zmienia si w zalenoci od miejsca pooenia obserwatora, jak to ma miejsce w rzeczywistoci. Pierwszy etap polega zatem na ustaleniu wygldu przedmiotw i ich wzajemnego pooenia na scenie. Podstawowymi czynnociami ustalania geometrii obrazu s:

    podzia obiektw na wielokty

    pozycjonowanie wieloktw.

    Nastpnie otrzymana w ten sposb informacja (wsprzdne wierzchokw) przekazywana jest do drugiego etapu zwanego renderingiem. W ramach tego etapu:

    ustalana jest widoczno i wzajemne przesanianie si przedmiotw (przy uyciu tak zwanego Zbfora, o ktrym piszemy niej)

    na powierzchnie przedmiotw nakadane s tak zwane tekstury

    wykonywane jest cieniowanie przedmiotw (symulujce ich bryowato - wklso bd wypuko) oraz symulowanie ziarnistoci ich powierzchni

    dodawane s ewentualne efekty specjalne (dym, mga itp.).

    Z ostatnio wymienionych operacji dwie - ustalanie widocznoci obiektw i teksturowanie - wymagaj dodatkowych wyjanie, gdy wpywaj znaczco na wymagania sprztowe w stosunku do karty (ilo pamici wideo) oraz na czas opracowywania sceny trjwymiarowej (tu krytyczn operacj jest wanie teksturowanie).

    Przesanianie obiektw zwizane jest midzy innymi z gbi obrazu, a dokadniej z umiejscowieniem obiektw bliej lub dalej obserwatora. Stosowane jest tu nastpujce rozwizanie: dla kadego punktu tworzcego obraz, oprcz informacji o jego wygldzie, przechowywana jest take informacja o jego pooeniu na scenie trjwymiarowej. Cz pamici wideo przechowujca t informacj zwana jest wanie Z-buforem (oprcz wsprzdnych x i y, trzecia skadowa z to gboko obrazu). Oczywicie, im wicej bitw powicimy na zapisanie gbi obrazu, czyli inaczej, im wiksza bdzie gboko" Z-bufora, tym bogatsze sceny moemy pokazywa. Pacimy jednak za to zwikszonymi wymaganiami co do pojemnoci pamici wideo.

    Powszechnie stosowan metod zapewniania naturalnego wygldu przedmiotw (szczeglnie duych powierzchni) jest proces nakadania tak zwanych tekstur, zwany inaczej teksturowaniem. Tekstury s mapami bitowymi symulujcymi wygld rnorodnych powierzchni (na przykad drewna, trawy, ale take okrelonego wzorku na przedmiocie), przy czym im wicej jest ich do dyspozycji, tym bogatszy i bardziej naturalny jest wygld trjwymiarowego obrazu. Tekstury przed naoeniem na poszczeglne paszczyzny przedmiotu musz by odpowiednio przygotowane. Poniewa paszczyzny te s zwykle nachylone, naley wykona dla tekstur korekcj perspektywy. W zalenoci od odlegoci przedmiotu od obserwatora, nakada si na przedmiot tekstury o rnej rozdzielczoci. W tym celu przechowuje si t sam tekstur gotow, w rnych rozdzielczociach, gdy na jej przeksztacanie nie ma czasu. Rozwizanie to nazywa

  • 26

    si MlP-mappingiem. Poprawia ono szybko teksturowania, jednake wymaga dodatkowej iloci pamici. W celu zapewnienia pynnych przej, na przykad na krawdziach wieloktw, stosuje si tak zwane filtrowanie. Polega ono zasadniczo na urednianiu wygldu ssiadujcych ze sob pikseli. Poprawia to znacznie wygld obrazu, szczeglnie w przypadkach gdy zaczyna brakowa tekstury o od-powiednio duej rozdzielczoci (na przykad obserwator przysuwa si zbyt blisko do ciany).

    Cay zestaw tekstur potrzebny aplikacji przechowywany jest w pamici masowej, najczciej na dysku twardym. Przed ich uyciem tekstury te musz zosta zaadowane do pamici wideo karty graficznej.

    Obliczanie geometrii obrazu zwizane jest z du iloci oblicze zmiennoprze-cinkowych i realizuje je gwnie procesor. Jednake dalsze etapy tworzenia obrazu trjwymiarowego przejmowane s przez karty, zwane wwczas akceleratorami 3D. Akceleratory te maj posta bd oddzielnych kart (np. Voo Doo) i musz wwczas wsppracowa z kartami bdcymi buforami ramki (i ewentualnie akceleratorami 2D), bd w peni samodzielnych kart (Riva TNT 2, Voo Doo 3).

    Potrzeba stosowania akceleratorw, szczeglnie w przypadku wspczesnych gier i symulatorw, jest oczywista. Jak opisalimy krtko powyej, tworzenie grafiki trjwymiarowej jest procesem wymagajcym do duej mocy obliczeniowej i wykonania wielu operacji. Dodatkowo, w wymienionych aplikacjach grafika ta jest nie statyczna a dynamiczna, poniewa symuluje ruch. Chcc zapewni jego pynno i brak migotania, obraz musi by renderowany co najmniej 30 razy na sekund. Przy stale wzrastajcej iloci szczegw (co oczywicie daje uytkownikowi wraenie bardziej rzeczywistego obrazu) realizacja tego zadania wycznie przez procesor nie jest moliwa. Std znaczn cz tych operacji przejmuje akcelerator 3D. Odcia to zarwno sam procesor (znaczna cz przygotowania obrazu wykonywana jest przez kart), jak i zmniejsza obcienie magistrali czcej procesor z kart graficzn.

    Zastosowanie akceleratora 3D rozwizuje w znacznej mierze spraw mocy obliczeniowej i obcienia procesora, jednak sprawa iloci pamici potrzebnej na karcie graficznej i przepustowoci magistrali czcej kart graficzn z procesorem (mimo pewnego zmniejszenia jej obcienia) pozostaje nierozwizalna. Obydwa wymienione wskie garda" wi si z nakadaniem tekstur, dlatego te przyjrzymy si nieco dokadniej przepywowi informacji w trakcie jego realizacji.

    Na rysunku 2.19 przestawiony jest system z magistral PCI. Zaznaczono tu rwnie kolejne etapy teksturowania.

    Jak stwierdzilimy, wszystkie tekstury potrzebne danej aplikacji przechowywane s w pamici masowej, na przykad na dysku twardym. Kolejno operacji przy teksturowaniu jest nastpujca:

    1. Tekstury z pamici masowej adowane s za porednictwem magistrali rozszerzajcej (na rysunku 2.19 - PCI) do pamici gwnej.

    2. dana tekstura pobierana jest z pamici przez procesor (magistral lokaln), ktry wykonuje na niej okrelone operacje, zapisujc ich rezultaty do pamici cache.

    3. Po zakoczeniu obrbki tekstura jest przesyana na powrt do pamici gwnej (ponownie magistral lokaln).

    4. Tekstura po transformacjach jest za porednictwem magistrali PCI odczytywana z pamici gwnej przez sterownik karty graficznej i umieszczana w (lokalnej) pamici wideo.

    Jak widzimy, przygotowanie tekstury do uycia wymaga przesyania duej iloci informacji przez magistral PCI (operacja l i 4). Mimo duej szybkoci dziaania magistrali PCI, jest to istotny problem, gdy przepustowo magistrali dzielona jest obecnie na wiele urzdze. Oprcz dyskw twardych, przykadowo w szybkim standardzie EIDE UltraDMA, z magistrali tej mog na przykad korzysta: kontroler SCSI, szybka karta sieciowa czy kontroler szybkiego interfejsu szeregowego (FireWire).

  • 27

    Drugim z problemw jest ilo pamici wideo na karcie. Uycie duej iloci tekstur, dua gboko Z-bufora oraz wysoka rozdzielczo obrazu sprawiaj, e ilo pamici wideo drastycznie ronie (do kilkunastu lub wicej MB). Naley te zwrci uwag, e s to pamici typu VRAM lub SGRAM, drosze od pamici, z ktrych budowana jest pami gwna (np. SDRAM). 2.4.2. Magistrala AGP Rozwizaniem obydwch problemw jest zastosowanie zaproponowanej przez firm Intel specjalnej magistrali dedykowanej adapterom graficznym, zwanej AGP (ang. Accelerated Graphics Port). Schemat blokowy systemu z magistral AGP przedstawiony jest na rysunku 2.20.

  • 28

    Gwne zalety AGP to: dua szybko transmisji * - przydzielenie penej przepustowoci AGP wycznie karcie graficznej odcienie magistrali PCI

    umoliwienie wykorzystania (przydzielenia) czci pamici gwnej na potrzeby systemu graficznego i przechowywania w niej tekstur. Z ostatniego punktu wynikaj nastpujce korzyci:

    1. Tekstury nie musz by przed uyciem adowane do lokalnej pamici wideo (zysk czasowy). 2. Tekstury mog by przechowywane w pamici gwnej, co po pierwsze umoliwia uycie

    tekstur o wikszych rozmiarach (i rozdzielczociach), a po drugie zmniejsza wymagania co do wielkoci pamici wideo.

    3. Zmniejszenie wymaga co do wielkoci pamici wideo znaczco obnia cen kart graficznych.

    2.4.2.1. Waciwoci magistrali AGP

    Poniej przedstawiamy podstawowe waciwoci magistrali AGP wraz z krtkim opisem ich znaczenia dla systemu. 1. Dua przepustowo. W zalenoci od wersji (o czym niej) magistrala AGPoferuje szybko

    transmisji danych od 264 MB/s do l GB/s. Jak wida, szybkota jest porwnywalna, a nawet w pewnych wypadkach zdecydowanie przekraczatransfer PCI. Przykadowe transfery magistral systemu zostay take podane narysunku 2.20 (dla porwnania).

    2. Interfejs dedykowany grafice. Magistrala AGP obsuguje jedynie kart graficzn(lub oddzielny akcelerator). Caa przepustowo magistrali jest wiec przeznaczona dla tej karty. .

    3. Karta graficzna jest urzdzeniem typu master na AGP (inicjatorem w terminolo gii magistrali PCI). Oznacza to, e inicjacja transmisji zaley wycznie od kartygraficznej. Urzdzeniem docelowym jest chipset zawierajcy miedzy innymi sterownik pamici DRAM. '

    4. Potokowa realizacja transakcji na AGP. Dla AGP, inaczej ni dla PCI, rozdzielono faz adresowania od fazy transmisji danych. Umoliwia to tworzenie kolejkida transakcji (czyli potokow ich realizacj).

    5. Potokowa realizacja arbitrau. Zarwno transmisja informacji, jak i zgoszeniedania wykonania okrelonej transakcji wymaga przyznania urzdzeniu masterdostpu do magistrali. W celu uniknicia przestojw (stanw upienia magistrali)take arbitra jest realizowany potokowo.

    6. Adresowanie rwnolege (ang. sideband addressing). Na magistrali AGP moliwa jest inicjacja transakcji nie tylko przy uyciu linii AD i C/BE#, ale take przy uyciu specjalnego 8-bitowego portu oznaczanego jako SBA (ang. SideBand Address). Pozwala on na wykorzystanie linii AD i C/BE# wycznie dla transmisji danych.

    7. Dynamiczny przydzia pamici. AGP pozwala na przydzia czci pamici gwnej dla potrzeb systemu graficznego. Jest ona traktowana wwczas jako cz pamici wideo, do ktrej mog by przykadowo adowane tekstury. Pozwala to na uycie wikszych tekstur przy niezwikszonych wymaganiach co do pojemnoci pamici na karcie. Przydziau tego dokonuje system operacyjny. W przypadku uruchamiania aplikacji niewymagajcych tak duej pamici wideo moliwa jest dynamiczna dealokacja tej czci pamici i uycie jej dla innych potrzeb (takiej moliwoci nie ma dla nieuywanej czci pamici wideo).

    8. Przydzia pamici przez AGP. Pami gwna przydzielona za porednictwem AGP na potrzeby adaptera graficznego, jest widziana przez niego jako liniowa przestrze adresowa, cho nie musi by ona kontynuacj przestrzeni adresowej pamici wideo na karcie. Fizycznie, przydzielona

  • 29

    pami moe by nieciga. Translacja adresu fizycznego na liniowy zapewniana jest przez ukady pyty gwnej, przy uyciu tablicy umieszczonej w pamici zwanej tablic GART (ang. Graphics Address Remapping Table). Miejsce umieszczenia tablicy zaley od rozwizania zastosowanego przez producenta pyty gwnej. Przykadowo, sterownik programowy obsugujcy tak translacje w przypadku systemw Windows 98 czy Windows NT nosi nazw VGARTD.VXD

    9. Teksturowanie na magistrali AGP. Tekstury w przypadku uycia AGP mog by przechowywane w pamici gwnej. Akcelerator graficzny wykorzystujcy je, odczytuje oraz zapisuje wyniki swej pracy do pamici gwnej za porednictwem magistrali AGP. Rezultatem tego jest: skrcenie czasu operacji, odcienie magistrali PCI i zmniejszenie wymaga co do iloci pamici wideo.

    2.4.2.2. Wybrane zagadnienia zwizane z dziaaniem magistrali AGP

    W podpunkcie tym omwimy niektre aspekty dziaania magistrali AGP wyjaniajce nieco dokadniej pewne jej waciwoci. Dokadne omwienie dziaania magistrali AGP mona znale na przykad w pozycji [4] bibliografii.

    Istnieje kilka wersji magistrali AGP o rnej szybkoci dziaania, oznaczanych jako wersje xl, x2 i x4. Istotny jest fakt, e mnoniki te dotycz wycznie szybkoci transmisji danych na AGP. Pozostae operacje s synchronizowane podstawow szybkoci zegara AGP (wynoszc do wersji 2.0 wcznie 66 MHz). Sygnay te zwane s czsto sygnaami ptli zewntrznej AGP, w odrnieniu od sygnaw ptli wewntrznej, zwizanych bezporednio z transmisj informacji. Wanie sygnay ptli wewntrznej s synchronizowane zegarem o zwielokrotnionej czstotliwoci, zalenej od wersji AGP. Sposb taktowania transmisji na AGP dla wersji x2 i x4 pokazany jest na rysunku 2.21. Dla wersji x2 zwikszenie szybkoci transmisji danych uzyskuje si poprzez transmisj na obydwu zboczach sygnaw AD_STBx (maj one t sam czstotliwo co AGP Clock). Dla wersji x4 sygnay AD_STBO i AD_STB1 s sygnaami o podwojonej w stosunku do AGP Clock czstotliwoci. Transmisja jest taktowana zboczem opadajcym sygnaw AD_STBx i AD_STBx#.

    Istniej dwie wersje napiciowe magistrali AGP: 3,3 V i 1,5 V. Wartoci te dotycz napicia na wyprowadzeniu oznaczonym Vddq, decydujcym o poziomach logicznych magistrali (nie jest to napicie zasilania ukadw na karcie). Magistrala w wersji xl i x2 moe pracowa z dowolnym z tych napi, magistrala w wersji x4 uywa tylko wartoci 1,5 V. Przykadowo, dla rodowiska 3,3 V poziomy logiczne na wejciach ukadw wynosz: niski od - 0,5 V do 0,99 V, wysoki od 1,65 V do 2,8V. Gniazda mog by gniazdami przeznaczonymi dla konkretnego napicia lub uniwersalnymi. W przypadku okrelonych napi gniazda wyposaone s w klucze zabezpieczajce przed woeniem niewaciwej karty (dla gniazda 3,3 V klucz przy kontaktach nr 22-25, dla gniazd 1,5 V kontakty 42-45). W przypadku gniazda uniwersalnego ukady logiczne pyty gwnej musz rozpozna typ karty przy uyciu kontaktu TYPDET# i zapewni stosowne napicie Vddq.

  • 30

    Na magistrali AGP moliwe s dwa sposoby uzyskania dostpu do pamici. Pierwszy z nich to uycie adresowania rwnolegego, wymienionego we waciwociach AGP. Drugim sposobem jest zgoszenie dostpu i podanie adresu przy uyciu linii AD i C/BE#. W tym wypadku dziaanie AGP jest nieco odmienne ni PCI. Magistrala AGP pozwala na podanie kolejnych adresw przed zakoczeniem realizacji wczeniejszych da transmisji. Rnica ta jest zilustrowana na rysunku 2.22.

    W tablicy 2.7 zestawione s rodzaje cykli wykonywanych przez AGP. Jak widzimy, transmisje dla odczytu mog by zwyke" lub dugie" (ang. long). Ilo transmitowanych bajtw jest okrelona w trakcie dania transmisji w polu dugoci transmisji, zgodnie z tabel 2.7 a (transmisje zwyke) lub 2.7 b (transmisje dugie). Dostp do pamici gwnej przez AGP dotyczy zawsze argumentw bdcych czterosowem (64 bitami), inaczej mwic stosowane adresy s zawsze podzielne przez 8. Take ilo transmitowanych bajtw jest podzielna przez 8. Transmisja moe mie niski priorytet (ang. Iow pority) lub wysoki (ang. high poty). Transmisje o wysokim priorytecie maj gwarantowany czas realizacji. Kolejno realizacji transmisji ulega zmianie tylko w wypadku niemonoci dotrzymania tego czasu dla transmisji o wysokim priorytecie. Cykl o nazwie Dual Address Cycle realizowany jest w wypadku koniecznoci zastosowania adresu 64-bitowego.

  • 31

    Tabela 2.7. Kody operacji na magistrali AGP Kod operacji Rodzaj operacji

    0000 Low-Priority Read 0001 High-Priority Read 0100 Low-Priority Write 0101 High-Priority Write 1000 Long Low-Priority Read 1001 Long High-Priority Read 1101 Dual Address Cycle

    Tabela 2.7 a Kody dugoci transmisji zwykych" Kod dugoci Liczba bajtw

    000 8 001 16 010 24 011 32 100 40 101 48 110 56 111 64

    Tabela 2.7 b Kody dugoci transmisji dugich" Kod dugoci Liczba bajtw

    000 32 001 64 010 96 011 128 100 160 101 192 110 224 111 256

  • 32

    3. Dyski twarde i elastyczne

    Poprzedni rozdzia t

    W poprzednim rozdziale opisane zostao dziaanie i budowa monitorw i adapterw graficznych, bdcych ich interfejsem. Monitory s jednym z podstawowych urzdze wyjciowych w komputerach osobistych.

    Ten rozdzia W rozdziale trzecim przedstawiamy zasad dziaania i budow podstawowych typw pamici

    masowych, czyli dyskw twardych i dyskw elastycznych, ich napdw oraz interfejsw.

    Nastpny rozdzia Rozdzia czwarty omawia budow i dziaanie pozostaych pamici masowych, takich jak

    CDROM-y, DVD czy napdy magnetooptyczne.

    3.1. Zasada zapisu informacji na nonikach magnetycznych

    3.1.1. Fizyczna zasada zapisu na nonikach magnetycznych

    Zasada zapisu informacji na nonikach magnetycznych stosowanych w dyskietkach i dyskach twardych jest zbliona do zapisu stosowanego w magnetofonach. Wykorzystywane jest tu zjawisko powstawania pola magnetycznego wok przewodnika, przez ktry pynie prd oraz waciwoci pewnych materiaw zwanych materiaami magnetycznie twardymi. Materiay te pod wpywem pola magnetycznego ulegaj trwaemu namagnesowaniu, i zapamituj" pole magnetyczne. Ukad nanoszcy pole magnetyczne na nonik magnetyczny (czyli gowica zapisujca) jest schematycznie przedstawiony na rysunku 3.1.

  • 33

    Magnetowd wykonany z materiau magnetycznie mikkiego prowadzi w swoim wntrzu linie si pola magnetycznego wytworzone przez przewodnik, przez ktry pynie prd. Szczelina w magnetowodzie powoduje powstawanie bbelka" linii si pola magnetycznego, ktre wnika w znajdujcy si pod spodem nonik magnetyczny (materia magnetycznie twardy), powodujc jego stae namagnesowanie (zaznaczone w przykadzie jako NS). Zmiana kierunku prdu (zwanego prdem magnesujcym) w przewodniku powoduje magnesowanie nonika w kierunku przeciwnym - SN.

    Zjawisko wykorzystywane przy odczycie to powstawanie siy elektromotorycznej w przewodniku znajdujcym si w zmiennym polu magnetycznym. Dziaanie ukadu odczytujcego, czyli gowicy odczytujcej zilustrowane jest na rysunku 3.2.

    Nonik przesuwajcy si pod gowic zosta namagnesowany prdem zmieniajcym kierunek tak, jak

    to opisalimy w poprzednim przykadzie. W momencie zmiany kierunku prdu take pole magnetyczne zmieniao kierunek, pomidzy zmianami pozostajc bez zmian. Jeeli pod gowic przesuwa si fragment nonika, na ktrym nastpia zmiana pola, przewodnik nawinity na magnetowodzie znajduje si w zmiennym polu magnetycznym, co powoduje wyindukowanie w nim impulsu prdu. Impulsy te wytwarzane s przy kadej zmianie pola, przy czym kierunek impulsw zaley od kierunku zmian pola.

    W gowicach zapisujcych dla dyskw twardych i dyskietek ksztat przebiegu prdu jest wanie taki, jak opisano w przykadzie. Std w gowicy odczytujcej indukuj si impulsy prdu (w momentach zmian pola) o zmiennej polaryzacji (dodatnie i ujemne). Za pomoc prostych ukadw elektronicznych mona te impulsy wyprostowa, czyli zamieni je na impulsy o jednakowej polaryzacji (na przykad dodatnie).

    3.1.2. Sposoby kodowania informacji przy zapisie magnetycznym

    Sposb kodowania informacji powinien zapewnia ukadom zapisujcym i odczytujcym moliwo zakodowania:

    informacji uytecznej (danych, tekstw itp. w postaci cigw zerojedynkowych)

    informacji synchronizujcej odczyt z zapisem.

    Wyjanimy krtko na czym polega potrzeba doczenia informacji synchronizujcej. Impulsy w postaci zmian pola s zapisywane na wirujcym krku magnetycznym (zwanym dyskiem) szeregowo, jeden za drugim (jako koncentryczne okrgi zwane ciekami, o czym nieco pniej). Stabilno obrotw

  • 34

    silnika napdzajcego dysk nigdy nie jest idealna. Std przy zapisie i odczycie nonik moe przesuwa si pod gowic z rn szybkoci. Informacja o tym, ktry fragment odczytujemy i jak szybko przesuwaj si pod gowic kolejne zapisane impulsy musi wic by zawarta w samym zapisie. Pozwoli to zsynchronizowa odczyt z zapisem (czyli odtworzy przy odczycie tempo zapisywania impulsw).

    Istniej rne metody speniajce wymienione wymagania. Tu opiszemy przykadowo trzy metody: w kadej z nich istotne jest z jednej strony zapewnienie moliwie duej gstoci zapisu, za z drugiej zapewnienie synchronizacji zapisu i odczytu. Fragmentami przebiegu odczytywanego, ktre pozwalaj dosynchronizowa odczyt do zapisu, s momenty pojawiania si impulsw prdu w gowicy odczytujcej, odpowiadajce momentom zmian kierunku prdu w gowicy zapisujcej. Jednym z wanych parametrw przy kodowaniu informacji na nonikach magnetycznych jest czstotliwo zmian pola magnetycznego (ang. flux desity), a zatem take czstotliwo zmian kierunku prdu w gowicy zapisujcej. Decyduje ona, ile informacji jestemy w stanie umieci na jednostkowym" odcinku nonika, czyli decyduje o gstoci zapisu. Im mniej zmian prdu przy tej samej iloci kodowanej informacji, tym lepsza metoda. Wynika to std, e maksymalna ilo zmian pola na jednostkowym" odcinku nonika jest jego sta fizyczn (zaley od jego jakoci, jednak istnieje warto graniczna, ktrej nie da si przekroczy). Z drugiej jednak strony, dugie okresy braku zmian tego prdu oznaczaj brak informacji synchronizujcej, co jest niedopuszczalne, gdy grozi rozsynchronizowaniem odczytu z zapisem. Przedstawione metody kodowania s wiec pewnym kompromisem pomidzy tymi dwoma wymaganiami. Poniej przedstawiamy:

    metod FM, obecnie ju niestosowan, ktra jednak pozwala w prosty sposb opisa zasad zapisu na nonikach magnetycznych

    metod MFM stosowan przy zapisie na dyskietkach metod RLL(2,7), bdc jedn z metod zapisu informacji na dyskach twardych.

    W kadym przypadku bdziemy kodowali ten sam cig bitw, co pozwoli nam pozna zalety i wady poszczeglnych metod.

    Na rysunku 3.3 przedstawiony jest cig kodowanych bitw oraz czstotliwo zmian w gowicy magnesujcej dla kadej z trzech wymienionych metod.

    Ju na oko wida, e czstotliwo zmian jest najmniejsza dla metody RLL (2,7). Oznacza to, e metoda ta umoliwi najwiksz gsto zapisu informacji na noniku.

    Wyjanimy teraz reguy kodowania informacji dla kadej z metod. W metodzie FM kierunek prdu w gowicy magnesujcej zmienia si zawsze na pocztku zapisywanego bitu oraz na rodku bitu, jeeli ma on warto 1. Pokazane jest to na rysunku 3.4.

  • 35

    Metoda ta zapewnia dobr synchronizacj (zmiana prdu zawsze na pocztku bitu), jednak daje ma gsto zapisu. Na rysunku 3.4 dodalimy te przykadowy wykres prdu w gowicy odczytujcej (nie robimy tego w przypadku nastpnych metod).

    W zmodyfikowanej metodzie modulacji czstotliwoci, MFM, prd w gowicy zapisujcej zmienia kierunek na rodku zapisywanej jedynki oraz na pocztku zapisywanego zera, jeeli poprzednio zapisywanym bitem nie bya jedynka. Proces kodowania MFM pokazany jest na rysunku 3.5. Zmiany prdu zapewniajce synchronizacj pojawiaj si tu nieco rzadziej, co wymaga bardziej skomplikowanych ukadw odtwarzajcych czstotliwo zapisywania bitw (stosowana jest tu tak zwana ptla sprzenia fazowego PLL (ang. Phase Locked Loop)), W metodzie MFM przy cigach zer lub jedynek prd zapisujcy zmienia kierunek co takt (czyli z kadym 'zapisywanym bitem}, co zmniejsza gsto zapisu.

    Metoda RLL (2,7) wymaga najpierw przeksztacenia zapisywanej informacji zgodnie z tabel 3.1. Tabela 3.1. Kodowanie bitw metod RLL (2,7) Kodowana informacja

    Kod RLL (2,7)

    000 000100

    10 0100

    010 100100

    0010 00100100

    11 1000

    011 001000

    0011 00001000

    Zauwamy, e kady bit kodowanej informacji zapisywany jest dwoma (tak, dwoma!) bitami kodu RLL. Cigi kodujce RLL s jednak tak dobrane, aby jedynka pojawiaa si nie czciej ni co dwa zera i nie rzadziej ni co siedem zer (std w nazwie 2,7). Prd magnesujcy zmienia kierunek tylko na rodku zapisywanej jedynki. Jednoczenie bity RLL s podawane z dwukrotnie wiksz szybkoci ni bity informacji (bo jest ich dwa razy wicej). Przewaga tej metody nad pozostaymi polega na tym, e gwarantuje ona z jednej strony wzgldnie rwnomierne pojawianie si zmian prdu w gowicy zapisujcej (co dostarcza informacji synchronizujcej), a z drugiej strony gwarantuje odpowiedni czstotliwo tych zmian (brak zbyt dugich przerw, lecz take moliwie dugie przerwy). Kodowanie RLL (2,7) jest wyjanione na rysunku 3.6.

  • 36

    Zgodnie z tabel 3.1, cig 10 000 10 11 zapisujemy w kodzie RLL (2,7) jako 0100 000100 0100 1000. Zmiany kierunku prdu w gowicy zapisujcej nastpuj na rodku bitu o wartoci 1. Dobr cigw kodowych zapewnia w przypadku wystpowania cigu jednakowych bitw rzadsze zmiany prdu w gowicy zapisujcej, a wic wiksz gsto zapisu.

    3.2. Dyski elastyczne i ich interfejs

    Dyski elastyczne zwane s take dyskietkami i takiego wanie okrelenia bdziemy najczciej uywali w dalszej czci rozdziau. Napdem dyskw elastycznych lub stacj dyskw (dyskietek), oznaczan w skrcie jako FDD (ang. Floppy Disk Drive), nazywa si urzdzenie zawierajce cz mechaniczn oraz ukady elektroniczne niezbdne do sterowania prac mechanizmw i realizacji operacji odczytu i zapisu. Stacja dyskietek 3,5" przedstawiona jest na rysunku 3.7.

    Stacja dyskietek (zgodnie z zasad opisan w rozdziale 1) wsppracuje z ukadem wejcia/wyjcia (bdcym jej interfejsem) zwanym sterownikiem napdu dyskw elastycznych, oznaczanym skrtem FDC (ang. Floppy Disc Controllef). Kolejne podrozdziay przedstawiaj budow i dziaanie FDD i FDC.

    3.2.1. Budowa mechaniczna napdu dysku elastycznego

    Podstawowe czci mechaniczno-elektryczne tworzce napd dysku elastycznego przedstawione s na rysunku 3.8. Napd zawiera dwa silniki. Pierwszy z nich, napdza krek pokryty ferromagnetykiem, bdcy nonikiem informacji. Szybko obrotowa tego silnika dla dyskietek 3,5" wynosi 360 obr/min (300 dla dyskietek 360 KB 5,25"). Drugi z silnikw, zwany silnikiem krokowym, zapewnia liniowy ruchgowicy zapisujco-odczytujcej, przesuwajcej si drobnymi skokami wzdu promienia krka magnetycznego (od tych drobnych skokw pochodzi jego nazwa). Zadaniem tego sifnika jest precyzyjne ustawienie gowicy nad okrelonym obszarem krka. Informacja jest zapisywana (a wiec i odczytywana) na dyskietce w postaci koncentrycznych okrgw zwanych ciekami (ang. track), gdy w trakcie zapisu jednej cieki gowica pozostaje nieruchoma. Po zapenieniu caej cieki, gowice naley przesun o pewien odcinek i zacz zapisywa na nastpnej ciece. Najbardziej zewntrzn ciek nazywamy ciek zerow (ang. track zero). Poniewa peni ona pewne wyrnione role, istnieje w napdzie czujnik sygnalizujcy ustawienie gowicy nad ciek zerow. Midzy innymi wanie z tego miejsca rozpoczyna prac gowica po uruchomieniu napdu.

    Innym czujnikiem wystpujcym w mechanizmie napdu dyskietki jest czujnik blokady zapisu. Blokada ta jest blokad sprztow i (na szczcie) nie da jej si w aden sposb programowo omin.

  • 37

    Std nad tak zabezpieczon dyskietk nie mog si przedosta wirusy komputerowe (co innego z wirusami grypy).

    Ostatnim czujnikiem, niepokazanym na rysunku, jest czujnik pierwszego sektora cieki. Sygnalizuje on, aczkolwiek w sposb niezbyt precyzyjny, zblianie si do gowicy tak zwanego pierwszego sektora cieki. Szczegowo o sektorach i fizycznym formacie zapisu na dyskietce piszemy w podpunkcie 3.2.3.

    3.2.2. Interfejs dyskw elastycznych

    Interfejs dyskw elastycznych skada si z kontrolera napdu dyskowego FD( oraz okablowania w postaci tak zwanego pasrna czcego FDC z FDD. Interfejs tei zosta opracowany przez firm Shugart Associates i nastpnie zakupiony na wasno przez firm IBM. Nosi on oznaczenie SA-450. Schemat blokowy FDC wraz z do czonymi napdami dyskowymi pokazany jest na rysunku 3.9.

    Zadaniem tego interfejsu jest przesyanie pomidzy FDC i FDD danych zapisywanych i

  • 38

    odczytywanych (szeregowo) oraz dostarczenie wszystkich sygnaw steruj cych niezbdnych do dziaania FDD (peny zestaw sygnaw pomidzy FDC i FDD przedstawiony jest na rysunku 3.10). Sygnay te wytwarzane s przy wsppracy mikroprocesora zawartego w FDC wsppracujcego ze specjalizowanym ukadem scalonym oznaczonym na schemacie jako sterownik. Ukady logiczne CRC dostarczaj dodatkowych danych sucych do kontroli poprawnoci odczytywanej informacji (w stosunku do zapisu). Separator danych rozdziela odczytane impulsy na impulsy danych i impulsy synchronizujce. Interfejs magistrali zapewnia rwnoleg komunikacje z systemem.

    Interfejs SA-450 umoliwia podczenie 4 napdw dyskowych, jednak IBM wykorzysta tylko jedno zcze do podczenia do dwch napdw, za pomoc pojedynczego pasma (tamy). W celu rozrnienia pomidzy obydwoma napdami w pamie wystpuje tak zwany przeplot. Polega on na zamianie miejscami niektrych sygnaw dla zczy umieszczonych na pamie, obsugujcych kady z napdw. Koncepcja przeplotu oraz nazwy sygnaw, ktre zostay obrcone, s przedstawione na rysunku 3.10. Jak wida, s to sygnay wyboru napdu i wczenia jego silnika. Do zcza po przeplecie docza si stacj, ktra bdzie stacj A (chyba e zmienimy odpowiedni opcj w BIOS-ie).

    Pasmo czce napd z kontrolerem ma zaznaczon (najczciej kolorem czerwonym) pierwsz y (y numer 1). Zcze powinno by podczone zarwno do kontrolera, jak i do napdu, tak aby pierwsza ya zostaa doczona do pierwszego pinu zcza. Na kontrolerze (umieszczonym najczciej na pycie- gwnej) naley; odczyta, ktry pin ma numer 1. W napdzie pierwszy pin jest umieszczony zwykle od strony zcza zasilajcego. Na szczcie nieprawidowe doczenie pasma nie po woduje uszkodzenia napdu ani kontrolera i jest atwo rozpoznawalne - pali si stae dioda kontrolna na napdzie.

    3.2.3. Fizyczna struktura zapisu na dyskietce

    Jak ju powiedzielimy, informacja na dyskietce zapisywana jest na ciekach bdcych koncentrycznymi okrgami. cieki dzielone s na mniejsze fragmenty zwane sektorami. Sektor jest najmniejsz porcj informacji, jak potrafi przecz z dysku kontroler. Przykadowo w

  • 39

    komputerach PC sektor ma rozmiar 512 B, jednak odczyt pojedynczych bajtw nie jest moliwy. Std mwimy, e urzdzenia typu pdw dyskowych s ukierunkowane na transmisj blokow. Jeeli przypomnimy sobie wiadomoci z pierwszej czci niniejszej serii, stwierdzimy, e do obsugi 1 typu transmisji predystynowana jest operacja wejcia/wyjcia zwana DMA (podrcznik cz I, rozdzia 4).

    Podzia dyskietki na sektory przedstawiony jest na rysunku 3.11. Zilustrow jest na nim take pojcie numeru strony (ang. side) lub gowicy (ang. head). Zwizane jest to z faktem, e wykorzystujemy obydwie strony krka magnetycznego (a zobaczymy, w dyskach twardych moe by takich krkw wicej)

    Z takim podziaem i sposobem zapisu i odczytu wie si pojcie adresu fizycznego na dysku twardym lub dyskietce. Aby zlokalizowa szukany sektor (odczytujemy bd zapisujemy cae sektory), musimy poda numer strony lub gowicy, numer cieki i numer sektora. Dla dyskw twardych zamiast numeru cieki wprowadzono numer tak zwanego cylindra. Koncepcj cylindra ilustruje rysunek 3.12.

  • 40

    Cylindrem jest zbir wszystkich cieek na wszystkich talerzach dysku majcych ten sam promie (czyli wyznaczonych przez przecicie z cylindrem o tym promieniu - std nazwa). Adres fizyczny na dysku mona okreli jako adres CHS (ang. Cylinder Head Sector). Podajc numer cylindra, wybieramy wszystkie cieki o tych samych numerach, lecz na rnych powierzchniach. Numer gowicy identyfikuje konkretn ciek, z ktrej wybieramy sektor o podanym numerze.

    Na dyskietce prcz danych zapisywana jest informacja niezbdna do poprawnego funkcjonowania napdu i jego kontrolera. Informacja ta obejmuje impulsy synchronizujce (ktrych potrzeb wyjanilimy ju w punkcie 3.1.2) oraz informacje o tym, ktry fragment dyskietki jest odczytywany, jaki jest jego rozmiar itp. Dodawana jest te informacja pozwalajca na kontrol poprawnoci odczytu w stosunku do zapisu, w postaci dodatkowych bajtw zwanych bajtami CRC (ang. Cyclic Redundancy Check).

    Na rysunku 3.13 pokazany jest format pocztku i koca cieki oraz jednego sektora (formaty wszystkich sektorw s jednakowe). Format ten obowizuje dla zapisu MFM.

    Pocztek cieki jest wstpnie sygnalizowany sprztowym czujnikiem (zwanym czsto indeksem) sprzgnitym z mechanizmem napdowym (w starszych dyskietkach znajdowa si przed pocztkiem cieki niewielki otwr zwany otworem indeksowym). Precyzja jego umiejscowienia jest jednak w stosunku do wymaga zwizanych z gstoci zapisu i odczytu o wiele za maa. Precyzyjny sygna pocztku cieki dostarcza kontrolerowi szereg bajtw o podanym formacie. Rozpoczyna si on tak zwan szczelin (przerw) GAP 4B. Po niej nastpuje 12 bajtw synchronizujcych, majcych warto O (przypominamy, e cig zer zapewnia w MFM doskona informacj o czstotliwoci pojawiania si bitw - zmiana kierunku prdu na pocztku kadego bitu). Nastpnie umieszczana jest sekwencja oznaczona IAM (ang. Index Address Mark - znacznik adresowy indeksu). Znajdujca si za nim szczelina GAP l sygnalizuje zblianie si pocztku sektora.

    Kady sektor rozpoczyna si bajtami synchronizacji, po ktrych nastpuje pole znacznika adresowego identyfikatora, IDAM. Kolejne pole, ID - identyfikator, pozwala kontrolerowi odczyta, ktry sektor fizyczny przesuwa si pod gowic. W zwizku z tym zawiera on midzy innymi numer gowicy, cieki i sektora, a take zakodowan wielko sektora (wielko ta moe by inna od standardowych 512 bajtw). Pole identyfikatora zabezpieczone jest dwoma bajtami zawierajcymi specjalnie obliczon warto, zwan wartoci CRC. Po nich nastpuje szczelina GAP 2 potrzebna przy odczycie kontrolerowi do obliczenia i porwnania wartoci bajtw kontrolnych CRC. Dalej nastpuj ponownie bajty synchronizujce i znacznik adresowy danych DAM (ang. Data Address Mark), ktry poprzedza pole danych roboczych (informacji zapisywanej), zwykle o wielkoci

  • 41

    512 B. Ponownie dane zabezpieczone s bajtami CRC. Sektor koczy si szczelin GAP 3, sygnalizujc jednoczenie zblianie si pocztku kolejnego sektora.

    Koniec cieki sygnalizowany jest szczelin oznaczon jako GAP 4B. Ilo bajtw tej szczeliny nie jest dokadnie okrelona, gdy zaley od pewnych fluktuacji dugoci roboczej cieki przy zapisie. S one zwizane z niewielkimi zmianami szybkoci obrotowej talerza, zmianami termicznymi itp. Zadaniem szczeliny GAP 4B jest wic wypenienie pustego, kocowego fragmentu cieki.

    3.2.4. Logiczna struktura dyskietki dla systemu plikw FAT

    Jak zapowiada tytu, przedstawiona struktura dyskietki bdzie obowizywaa dla plikw i katalogw (w systemie Windows - folderw) zapisywanych w tak zwanym systemie FAT. Mimo pewnych wad, jest to bardzo popularny system plikw. Obecnie popularno ta wynika miedzy innymi z faktu, e wikszo systemw operacyjnych potrafi go obsugiwa, podczas gdy pliki zapisane w systemach, takich jak NTFS czy HPFS, s dostpne tylko dla okrelonych systemw (w tym wypadku Windows NT i OJS/2).

    Podzia dyskietki na logiczne struktury przedstawiony jest na rysunku 3.14. Podana jest na nim kolejno ich wystpowania oraz adres fizyczny pierwszej z nich. Nazwy struktur na rysunku zostay podane w jzyku angielskim. Uzasadnieniem tego jest fakt, e w wikszoci programw narzdziowych wanie takie nazwy s uywane. W tekcie podajemy ich polskie odpowiedniki.

    Opis rozpoczynamy od struktury zwanej rekordem adujcym (ang. boot record). Znajduje si on na ciece zerowej strony zerowej dyskietki i umieszczony jest w pierwszym sektorze (adres CHS = 001). Takie umiejscowienie tej struktury bierze si std, e zawiera ona program adujcy okrelony system operacyjny. Program taki jest poszukiwany w wyniku wykonania procedury BIOS-u zwanej Bootstrap Loader, dostpnej take jako przerwanie BIOS-u INT 13h. Procedura ta poszukuje systemu operacyjnego na dysku twardym, dyskietce bd CD-ROM-ie. Poniewa ilo cieek i sektorw na ciece moe by rna, rekord adujcy umieszczony jest na pocztku dyskietki, jako e kada dyskietka ma stron zerow i ciek zerow, a na niej sektor pierwszy. Tak wic poszukiwany adres jest zawsze taki sam.

    Po rekordzie adujcym nastpuj struktury zwizane ze sposobem zapisu informacji na dyskietce (czy dysku twardym) zwanym systemem plikw FAT. FAT jest skrtem od angielskiego terminu File Allocation Table oznaczajcego tablic rozmieszczenia (alokacji) pliku. FAT#1 i FAT#2 to orygina i kopia tej samej struktury, co oznacza, e w poprawnej sytuacji ich zawarto jest identyczna. Root directory jest angielsk nazw katalogu gwnego. Sposb zapisu plikw i uycie wymienionych struktur wyjanione jest na rysunku 3.15 i 3.16.

  • 42

    W celu uatwienia zarzdzania plikami s one grupowane w pewne jednostki zwane katalogami albo podkatalogami, a w nowych systemach operacyjnych folderami. Katalogi (lub foldery) tworz drzewiast struktur, ktrej przykad pokazany jest na rysunku 3.15. Kady katalog moe zawiera pliki oraz inne katalogi zwane wwczas podkatalogami tego katalogu. Rne katalogi mog zawiera pliki o tej same nazwie lub wrcz te same. Katalogiem, od ktrego rozpoczyna si tworzenie t struktury, jest katalog gwny.

    Poniewa FAT#1 i FAT#2 powinny by jednakowe, na rysunku 3.16 wystpuje nazwa FAT. Studiujc rysunek naley zwrci baczn uwag na nazwy obszarw w ktrych wystpuje okrelona informacja.

    Podstawowym fragmentem dysku z punktu widzenia systemu operacyjnego jest tak zwany klaster (ang. cluster), zwany czasami jednostk alokacji pliku, w skrcie JAP. Pojedynczy klaster moe si skada z jednego lub kilku sektorw. Dla konkretnego typu dyskietki jest to warto staa, natomiast dla dyskw twardych moe mie rne wartoci (bdce jednak potgami liczby 2), ktre mog zalee od wielkoci dysku i jego podziau na tak zwane partycje i dyski logiczne. Klaster jest najmniejszym fragmentem dysku, do ktrego potrafi odwoa si system operacyjny (nie potrafi on odwoa si do sektora, ani tym bardziej do bajtu). Pliki zapisywane na dysku, s zapisywane w klasterach, przy czym jeeli ostatni fragment pliku w ostatnim klasterze, do ktrego jest zapisywany, zajmie tylko jego cz, pozostaa cz pozostanie niewykorzystana, bowiem zapis nowego pliku musi zacz si od nowego klastera.

  • 43

    Poniewa klastery s jednostkami, w ktrych zapisuje si plik, to pojcie klastera dotyczy wycznie obszaru danych dysku.

    Informacja o tym, w ktrych klasterach zosta zapisany dany plik, znajduje si na dysku (bd dyskietce) w specjalnej tablicy zwanej tablic rozmieszczenia (alokacji) plikw, w skrcie FAT (wyjtkiem jest tu pocztkowy, pierwszy klaster danego pliku, o czym za chwil). Kady klaster na dysku ma odpowiadajc mu pozycj w tablicy FAT, std liczba pozycji w tablicy FAT nie moe by mniejsza od liczby klasterw wystpujcych na dyskietce lub dysku logicznym (kady dysk logiczny posiada swoj tablic FAT). Podstawowe informacje o pliku zapisanym na dysku znajduj si w (pod)katalogu, w ktrym zosta zapisany plik, w odpowiadajcej mu pozycji. Jak wida, podana jest tam jego nazwa, rozmiar, tak zwane atrybuty i wreszcie informacja o numerze pierwszego klastera, od ktrego rozpoczyna si dany plik. Zapis pliku przebiega nastpujco: system operacyjny szuka na dysku pierwszego wolnego klastera 1 tam zaczyna zapisywa plik, jednoczenie zapisujc numer tego klastera do pozycji w katalogu, ktra odpowiada danemu plikowi. Numer ten jest jednoczenie numerem pozycji w tablicy FAT odpowiadajcej temu klasterowi. Jeeli plik zmieci si w jednym klasterze, to w pozycji tablicy FAT jemu odpowiadajcej wpisywana jest sygnatura koca pliku oznaczana przez EOF (ang. End OfFile), rwna FFFFh. W przeciwnym wypadku system szuka kolejnego, najbliszego wolnego klastera i zapisuje w nim kolejn cz pliku. Jednoczenie numer tego klastera jest zapisywany w tablicy FAT na pozycji odpowiadajcej poprzedniemu klasterowi (gdzie w poprzednim wypadku wpisane zostao EOF). Efekt takiego procesu jest zilustrowany na rysunku 3.16. Numery acucha klasterw, w ktrych zapisany jest dany plik, mona znale w tablicy FAT, przy czym na kolejnych pozycjach odpowiadajcym kolejnym klasterom, w ktrych jest zapisany plik, zapisany zostaje numer nastpnego klastera.O ostatnim klasterze informuje sygnatura EOF. Skasowanie pliku polega na zmianie pierwszej litery nazwy na symbol ((kod E5h), oznaczajcy dla systemu plik skasowany oraz na wpisaniu zer w tablicy FAT na pozycjach odpowiadajcych klasterom, w ktrych

    zosta zapisany dany plik. Std odzyskanie przypadkowo skasowanego, pojedynczego pliku nie nastrcza zwykle wikszych trudnoci, pod warunkiem, e po tym fakcie nie dokonalimy na dysku adnych zapisw (w pewnych szczeglnych przypadkach odzyskanie pliku moe by trudne lub wrcz niemoliwe).

    Krtkiego wyjanienia wymaga jeszcze zapis i umiejscowienie informacji o pod-katalogach. Informacja o podkatalogu jest zapisywana tak samo jak plik, czyli podkatalogowi przydzielany jest oddzielny klaster bd, w razie potrzeby, klastery. Jednoczenie numer tego klastera jest wpisany do pozycji odpowiadajcej temu pod-katalogowi w jego katalogu nadrzdnym (czyli w katalogu, w ktrym dany podkatalog zosta utworzony). Wynikiem tego jest midzy innymi fakt, e ilo podkatalogw

  • 44

    danego podkatalogu jest nieograniczona, a dokadniej, ograniczona jedynie dostpn przestrzeni na dysku (ilo pozycji w katalogu gwnym bya ograniczona).

    Przykadowe pozycje plikw i podkatalogw w katalogu o nazwie MSIMEY54 oraz acuch pozycji w tablicy FAT dla wybranego pliku o nazwie README.DOC pokazuje rysunek 3.17 a i b W tym katalogu pozycja o nazwie README.DOC jest plikiem o rozmiarze 49993 B. Pierwszy klaster zajmowany przez ten plik nosi numer 8888. Pozycja o nazwie BACKUP jest podkatalogiem zapisanym w klasterze o numerze 8894. Wreszcie pozycja aRF 390 jest skasowanym plikiem. Na rysunku 3.16b pokazane jest okno wywietlajce zawarto tablicy FAT. Jest w nim podwietlony acuch pozycji doty-czcy pliku README.DOC (z katalogu MSIMEY54). Dysk, na ktrym s zapisane wymienione struktury, ma klastery skadajce si z 32 sektorw. Std, jak atwo poli czy, wymieniony plik musi by zapisany w 4 klasterach (49993B/(32-512B) = 3,05). Przedstawione okna uzyskane zostay za pomoc programu Disk Editor z pakietu Norton Utility. Program ten pozwala oglda i modyfikowa informacje logiczn zapisywan na dysku, dostarcza take wielu innych uytecznych informacji na jego temat (np. wielko klastera). Jest to program bardzo uyteczny, chod w niedowiadczonych rkach moe by niebezpieczny. Jednake w trybie odczytu (w ktrym moe pracowa) jest wspaniaym narzdziem do poznania struktury logicznej dysku. Do programw pakietu Norton Utility i innych programw narzdziowych dla dyskw powrcimy w rozdziale dotyczcym dyskw twardych.

    -3.3. Dyski twarde

    Dyski twarde s obecnie prawdopodobnie najczciej uywanym typem pamici masowych. Charakteryzuj si duymi pojemnociami (do kilkunastu GB) i szybkim transferem informacji. Wasnoci te w znacznej mierze zawdziczaj swojej konstrukcji mechanicznej.

  • 45

    3.3.1. Budowa mechaniczna dysku twardego

    Wntrze dysku twardego wraz z zaznaczeniem podstawowych czci przedstawia rysunek 3.17.

    1 - talerze 2 - pozycjoner

    3 - ramiona gowic 4 - gowica

    5-zcze IDE 6 - zcze zasilania

    7 - geometria dysku

  • 46

    Podstawowymi elementami dysku s: pozycjoner, ramiona, na ktrych umieszczone s gowice zapisujco-odczytujce, ukady elektroniczne sterujce i interfejsu, silnik napdu talerzy i wreszcie same talerze pokryte nonikiem magnetycznym. Jedna z zasadniczych rnic pomidzy dyskami twardymi i elastycznymi dotyczy wanie budowy talerzy. W dysku twardym s one wykonane ze sztywnego materiau pokrytego warstw nonika magnetycznego (std nazwa dysk twardy). Sztywno i precyzja wykonania zapewniaj, e dysk moe wirowa z du szybkoci (obecnie do rzdu 7 tysicy obrotw na minut) a gowica odczytujco-zapisujca moe by umieszczona bardzo blisko powierzchni dysku (jest unoszona nad powierzchni dysku przez poduszk powietrz