KARTY GRAFICZNE
Karty graficzne bezpośrednio sterują monitorem i zajmują się przetwarzaniem obrazu, czyli danych cyfrowych, niezbędnych do wyświetlania wszelkich potrzebnych szczegółów. Sterowane są poprzez magistralę PCI, AGP i PCI-Express. Karta graficzna przede wszystkim zajmuje się obrazami dwuwymiarowymi 2D (kreślenie linii, trójkątów), lecz dla programów CAD i gier wyposaża się je w akceleratory grafiki 3D. Wtedy zajmuje się sprzętowym wspomaganiem wypełniania obiektów teksturami, efektami mgły, refleksami świetlnymi itp. Należy pamiętać, że karta graficzna działa bardzo szybko, współpracując z szybkim procesorem o dużej wydajności jednostki zmiennoprzecinkowej (koprocesorem).
Proces tworzenia obrazu przesz kartę graficzną polega w wielkim uproszczeniu na przetworzeniu przez przetwornik DAC (RAMDAC) danych cyfrowych przesyłanych do pamięci karty graficznej na sygnał analogowy i przesłanie go do monitora. W zależności od szybkości procesora graficznego jakim dysponuje karta, szybkości i rozmiaru pamięci RAM karty, szybkość szyny danych, otrzymujemy obrazy bardziej i mniej płynne. Rodzaj magistrali pod jaką podłączona jest karta graficzna ma duże znaczenie na prędkość przesyłania danych przez ekran.
Karta graficzna zbudowana jest z następujących modułów:
PCI/AGP/PCI-Express - złącze magistrali,
FB - frame buffer, czyli bufor ramki,
RAM - pamięć obrazu i pamięć tekstur oraz Z-bufor,
uP - mikroprocesor (najczęściej 128 bitowy),
RAMDAC - przetwornik cyfrowo - analogowy,
M. - gniazdo monitora.
Opcjonalnie karty wyposażone są w wejścia - wyjścia TV, lub tunery TV i radiowe. Karty mogą pracować np. w następujących trybach rozdzielczości obrazu:
VGA 640 x 480
SVGA 800 x 600
1024 x 768
1600 x 1200
oraz trybach kolorowych:
4 bit - 16 kolorów,
8 bit - 256 kolorów,
16 bit - ok. 65000 kolorów tzw. HIGH COLOR,
24 bit - ok. 16,7 mln kolorów tzw. TRUE COLOR,
32 bit - ok. 4,3 mld kolorów taz TRUE COLOR.
W niektórych, zwłaszcza tańszych, kompaktowych modelach PC, karta grafiki zostaje od razu zintegrowana z płytą główną. Z wielu względów nie poleca się tego rozwiązania. Po pierwsze, zdarza się często, że kiedy wzrosną nasze wymagania co do grafiki, to okazuje się, że wyłączenie takiej, zintegrowanej z płytą główną, karty oraz instalacja nowej jest po prostu niemożliwe (albo bardzo skomplikowane). Po drugie, takie „oszczędnościowe” pecety nie posiadają często odpowiednich slotów (ISA, PCI, AGP, PCI-Express), co zupełnie uniemożliwia instalację nie tylko karty grafiki ale i jakiejkolwiek innej. Po trzecie, rzadko kiedy daje się w tych modelach poszerzyć pamięć video i wreszcie po czwarte, o wiele trudniej zdobyć uaktualnione sterowniki.
Pamięć video, zwana również pamięcią grafiki, wymagana jest przez każdą obecnie produkowaną kartę grafiki. Odpowiedzialna jest ona, za to, że obraz może być w ogóle odbierany jako nieruchomy. Pamięć video adresowana bywa podobnie jak inne rodzaje pamięci peceta. Zawiera ona cyfrowy zapis wyświetlanego aktualnie obrazu. Na karcie grafiki znajduje się specjalny chip - kontroler grafiki - komunikujący się z resztą systemu poprzez adresy I/O, wykorzystując do sterowania obrazu specjalny rejestr. Począwszy od kart VGA wzwyż, do każdego kontrolera grafiki dołączony jest tzw. DAC (Digital Analog Converter), który przetwarza cyfrowe informacje na sygnały analogowe sterujące obrazem monitora (VGA).
Pierwszymi kartami graficznymi, które pozwalały na wyświetlanie obrazu w kolorze były karty VGA (ang. Video Graphic ArRay). Oferowały one pracę w rozdzielczości 320x240 pikseli przy 256 kolorach lub 640x480 pikseli przy 16 kolorach, wymagając 32 KB pamięci wideo. Później pojawiła się karta S-VGA, szybko stając się standardem, któremu nie były zdolne dotrzymać kroku znajdujące się wtedy na rynku karty EGA (Enhanced Graphic Adapter), przez co bardzo szybko zeszły ze sceny. Następny krok przyniósł karty wyposażone w 64, 128, 256 i 512 KB pamięci RAM. Coraz większa ilość pamięci potrzebna była głównie do renderowania obrazu w wyższych rozdzielczościach. Dla przykładu, do wyświetlenia obrazu w trybie 1600X1200-32 karta potrzebuje zaledwie 6 MB pamięci RAM.
Oto najważniejsze funkcje współczesnych akceleratorów graficznych:
Anisotropic Filtering to technika poprawy jakości tekstur w trójwymiarowej grafice komputerowej, stosowana zwłaszcza dla obiektów obserwowanych pod dużymi kątami, znajdujących się w dużych odległościach od kamery. Technika ta jest udoskonaleniem filtrowania trójliniowego i polega na uwzględnieniu w filtrowaniu tekstury kierunku obserwacji.
Bump Mapping - mapowanie wypukłości - w grafice 3D technika teksturowania, która symuluje niewielkie wypukłości powierzchni, bez ingerencji w geometrię obiektu trójwymiarowego. Technika polega na użyciu tekstury, która nie jest jednak bezpośrednio wyświetlana, ale powoduje lokalne zakłócenia (obrót) wektora normalnego. Ponieważ każdy model oświetlenia (np. oświetlenie Phonga) w jakiś sposób wiąże kąt pomiędzy promieniem światła, a wektorem normalnym, to rezultatem zakłóceń jest pojawienie się na obrazie złudzenia nierówności powierzchni. Efekt jest bardzo przekonujący, większość ludzi nie zwraca uwagi na fakt, że brzegi obiektu pozostały "niezakłócone".
Efekty cząsteczkowe w animacji komputerowej symulacje złożonych zjawisk (takich jak opady śniegu, czy deszczu, dym, pył, płomień), w których podstawowym obiektem jest duża grupa wirtualnych cząsteczek, traktowanych jak obiekty punktowe. Cząsteczki mają zwykle ograniczony czas istnienia, podlegają interakcji z otoczeniem, tj. odbijają się od przeszkód, ulegają również wpływom sił zewnętrznych (np. grawitacji, czy sile wiatru). W zależności od pożądanego efektu są reprezentowane na obrazie przez niewielkie obiekty - pojedyncze piksele, kreski, sprity itp.; ich wygląd i kolor może zależeć także od aktualnej prędkości, odległości od obserwatora i innych parametrów symulacji, np. czasu życia.
Full Scene Anti-Aliasing to pełnoekranowe wygładzanie krawędzi w aplikacjach 3D. Efekty zastosowania FSAA są szczególnie łatwe do zaobserwowania w nowszych grach komputerowych wykorzystujących grafikę trójwymiarową
HDR (rendering z użyciem szerokiego zakresu dynamicznego, ang. High Dynamic Range Rendering) - technologia generowania sceny w grafice trójwymiarowej, której efektem jest renderowanie świata z realistycznym oświetleniem, przy użyciu szerszego niż normalnie zakresu jasności oświetlenia. Największa różnica dostrzegana jest w bardzo ciemnych lub bardzo jasnych fragmentach sceny, gdzie symulowane jest natężenie światła wykraczające poza zakres możliwy do osiągnięcia na ekranie monitora (np. efekt oślepienia po spojrzeniu na słońce). Technika ta pozwala oddać bardzo duże, oraz bardzo małe (mniejsze niż 1/256) natężenie światła oraz koloru. Wymaga ona jednak większej mocy obliczeniowej, a przez to do jej wykorzystania w czasie rzeczywistym (czyli np. w grach komputerowych) potrzebne są silne procesory graficzne. Stąd, nie jest ona realizowana na starszych kartach graficznych.
Pixel Shader krótki program komputerowy, często napisany w specjalnym języku (shader language), który w grafice trójwymiarowej odpowiada za cieniowanie obiektów. Technologia ta zastąpiła stosowaną wcześniej jednostkę T&L. Cieniowanie pozwala na znacznie bardziej skomplikowane modelowanie oświetlenia i materiału na obiekcie niż standardowe modele oświetlenia i teksturowanie. Jest jednak dużo bardziej wymagające obliczeniowo i dlatego dopiero od kilku lat sprzętowa obsługa cieniowania jest obecna w kartach graficznych dla komputerów domowych. Wcześniej cieniowanie stosowane było w niektórych fotorealistycznych rendererach (np. Renderman), gdzie grafika nie jest generowana w czasie rzeczywistym. - Cieniowanie pikseli - jest programowalną jednostką odpowiadającą za wyliczanie koloru pikseli. Direct3D używa terminu "pixel shader", a OpenGL - "fragment shader". Piksele na wejście ich cieniowania są pobierane z rasteryzatora, który wypełnia wielokąty przesyłane z potoku graficznego. Cieniowanie pikseli jest najczęściej używane do oświetlenia sceny i innych powiązanych efektów, np. bump-mappingu lub kolorowania.
Vertex Shader - Cieniowanie wierzchołkowe - uruchamiane jest raz dla poszczególnych przetwarzanych wierzchołków. Jego zadaniem jest transformacja położenia wierzchołka w wirtualnej przestrzeni 3D na współrzędne 2D na ekranie. Cieniowanie wierzchołkowe może operować na takich własnościach wierzchołków jak położenie, kolor i współrzędne tekstur, ale nie może tworzyć nowych wierzchołków. Wyjście cieniowania wierzchołkowego jest wejściem dla następnego etapu w potoku, jakim jest albo cieniowanie geometryczne (jeśli jest obecne) albo rasteryzator.
Transform & Lighting T&L (ang. transformacja i oświetlenie) - moduł w kartach graficznych, który przyspiesza obliczanie animacji. Jego brak zwiększa obciążenie procesora, przez co znacznie zmniejsza się wydajność komputera podczas renderowania grafiki trójwymiarowej. Sprzętowy układ T&L pozwala wykonywać skomplikowane obliczenia zmiennoprzecinkowe, które tworzą obraz 3D, obcinają (usuwają) obiekty znajdujące się poza obszarem sceny i przypisują każdemu wierzchołkowi wektor oświetlenia po uprzednim obliczeniu sceny i jej źródeł światła.
Karty graficzne podobnie jak inne podzespoły montowane są w slotach i ewaluowały wraz z nimi. Pierwsze karty montowane były w 8-bitowym slocie ISA. Pojawianie się nowego, szybszego slotu na płycie głównej powodowało pojawienie się odpowiadającej mu karty graficznej.
Rozwój złącz wyglądał następująco:
ISA 8 bit,
ISA 16 bit,
Local Bus,
PCI,
AGP,
PCI-E.
Gniazda PCI-E od góry: 4x, 16x, 1x i 16x w porównaniu ze złączem PCI (na dole)
wariant PCI-E |
Przepustowość |
x1 |
250 MB/s |
x2 |
500 MB/s |
x4 |
1000 MB/s |
x8 |
2000 MB/s |
x16 |
4000 MB/s |
x16 v2.0 |
8000 MB/s |
Złącza na kartach graficznych
Złącza na kartach graficznych |
||
Nazwa złącza |
Zdjęcie |
Opis |
D-Sub (HD15) |
|
D-Sub (zwany także HD15) to 15-bolcowe gniazdo żeńskie, które służy do podłączenia monitora analogowego (kineskopowego, CRT - wszystkie nazwy określają "zwykły monitor"). Tańsze monitory LCD również podłącza się do złącza D-Sub. |
DVI-I |
|
Gniazdo DVI-I to wyjście dla monitorów cyfrowych (ciekłokrystalicznych, LCD, TFT - to określenia tego samego urządzenia). Umożliwia także podłączenie monitora analogowego (kineskopowego) - trzeba wówczas zastosować specjalną przejściówkę, z DVI na D-Sub. |
Composite (RCA) Video Out |
|
Gniazdo Composite Video Out to wyjście sygnału wideo umożliwiające podłączenie telewizora. Na gnieździe podawany jest sygnał zespolony (niepoprawnie zwany często kompozytowym). Gniazdo Composite wykorzystuje złącze typu RCA, znane też jako cinch. Gniazdo Composite jest już bardzo rzadko spotykane na kartach graficznych ze względu na niską jakość obrazu. Zostało wyparte przez dużo lepsze wyjście S-Video. |
S-Video Out |
|
Gniazdo S-Video Out to wyjście sygnału wideo umożliwiające podłączenie telewizora. Na gnieździe podawany jest sygnał odseparowany - po oddzielnych żyłach sygnałowych przesyłana jest informacja o chrominancji (kolorze) i luminancji (jasności). Dzięki temu jakość obrazu jest wyższa niż w przypadku sygnału zespolonego. |
VIVO |
|
Gniazdo VIVO (Video In, Video Out) łączy w sobie cechy wejścia i wyjścia wideo. Najczęściej ma postać złącza typu mini-DIN o dziewięciu otworkach (jak na zdjęciu). Aby gniazdo w pełni wykorzystać, należy najpierw wpiąć w nie specjalny kabel, zakończony z drugiej strony czterema gniazdami, dwoma typu RCA (jedno pełni rolę wejścia, drugie wyjścia Composite) oraz dwoma typu mini-DIN (wejście i wyjście S-Video). Czasami gniazdo mini-DIN o dziewięciu otworkach stosowane jest wyłącznie w roli wyjścia wideo, więc jeśli na karcie znajdziemy gniazdo o dziewięciu (a nie czterech) dziurkach, nie stanowi to jednoznacznej informacji, że posiadamy kartę wyposażoną w wejście wideo. |
Złącze VIVO wewnętrzne |
|
Na niektórych kartach z układami ATI (np. Radeon Radeon X800 XT PE czy Radeon X850 XT PE) spotkać można się z wewnętrznym gniazdem VIVO. Ma ono najczęściej żółty kolor i umieszczone jest z tyłu karty, w pobliżu gniazda dodatkowego zasilania. Wykorzystuje taki sam typ złącza jak ten stosowany swego czasu do przesyłania sygnału CD Audio z czytników CD-ROM. |
Złącze anteny TV |
|
Złącze antenowe występuje tylko w przypadku kart posiadających zintegrowany tuner telewizyjny. Można do niego podłączyć zwykłą antenę telewizyjną lub kabel kablówki. |
Złącze dodatkowego zasilania typu Molex |
|
Niektóre układy graficzne pobierają na tyle dużo prądu, że sam port AGP może nie być w stanie zaspokoić ich apetytu. Dlatego na niektórych kartach umieszcza się gniazdo dodatkowego zasilania. Należy do niego podłączyć jedną z końcówek zasilacza. Najpopularniejszy obecnie typ gniazda to Molex - taki sam, jak spotykany w napędach DVD±RW lub dyskach twardych. |
Złącze dodatkowego zasilania typu floppy |
|
Gniazdo zasilania typu "floppy" (obecne w napędach dysków 3,5") znajdziemy na kartach Radeon 9700 Pro i niektórych modelach kart Radeon X700 (np. PowerColor X700). |
AGP
PCI-E