![]() |
![]() |
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
La inceput, placile video erau destul de simple. Procesorul executa toate operatiunile, placa video neavand decat rolul de a afisa o imagine pe monitor. Pe masura ce tehnologia a avansat, datoriile placii grafice a inceput sa creasca, permitand in acest fel eliberarea procesorului care putea sa se ocupe de alte operatiuni. Cu acceleratoarele si aplicatiile 3D din ziua de azi, grafica a devenit mai complexa ca niciodata. Placile video de astazi sunt concepute special pentru a prelua cat mai mult din instructiunile 3D. In teorie, aceasta ar permite procesorului sa se axeze mai mult pe sistemul de operare.
Componente de baza
Daca va veti uita la o placa video, veti observa ca este conceputa din aceleasi patru componente majore:
BIOS-ul video
Fiecare placa video utilizeaza propriul BIOS, care este stocat in cipul ROM inclus. BIOS-ul permite comunicarea procesorului video cu sistemul, astfel incat sistemul poate trimite instructiuni catre BIOS, iar acesta ulterior va indica placii grafice care sunt operatiunile solicitate. Generatiile timpurii de adaptoare grafice nu aveau propriile BIOS-uri, acesta fiind integrat si controlat de catre cel al sistemului. Pe masura avansului tehnologic, codul BIOS necesar noilor cipuri grafice a devenit mai complex, nemaiputand fi integrat in cel al sistemului. Desi similare din punct de vedere al operatiunilor, fiecare cip grafic necesita o serie de instructiuni particulare si din aceasta cauza producatorii ar fi trebuit sa scrie un cod BIOS separat pentru fiecare combinatie placa de baza – placa video imaginabila. Transferarea BIOS-ului video pe placa video a fost o modalitate mult mai eficienta si mai ieftina de a rezolva aceasta problema.
Procesorul video
Exista trei tipuri de procesoare video. Primul si cel mai simplu este Frame Buffer-ul. Acesta pur si simplu genereaza frame-urile si le afiseaza pe ecran. Toate celelalte pozitionari video necesare, cum ar fi cea a textului, a ferestrelor si randarea ecranului, trebuie executate de catre procesorul sistemului. Aceasta modalitate de lucru functioneaza foarte bine pentru aplicatiile bazate pe text, dar interfetele grafice mai complexe nu pot functiona in acest mod. Al doilea tip de procesor este „coprocesorul”, care preia toate procesele legate de imagine, eliberand astfel procesorul sistemului de toate functiile pe care acesta trebuie sa le execute pentru a afisa o imagine. Intre aceste doua procesoare, mai exista si acceleratorul video, care este un dospozitiv cu functie fixa, care preia toate operatiunile complicate cum ar fi, de exemplu, trasarea si managerizarea obiectelor care compun ecranul.
RAM-ul video si RAMDAC-ul
Suplimentar fata de procesoarele specializate si BIOS, placile video utilizeaza propriul RAM. De-a lungul timpului au fost utilizate diverse tipuri de RAM pentru placile video, unele dintre acestea fiind utilizate si pentru memoria sistemului. Altele au fost concepute special pentru placile video. FPRAM – Fast Page RAM – tipul de baza al memoriei DRAM, permite cate un singur acces odata, cu un timp de latenta de 70-80 ns. EDODRAM – Extended Data Ouput DRAM – care permite scrieri si citiri simultane, a determinat scaderea timpului de latenta la 50-60 ns. VRAM/WRAM –Video RAM sau Windows RAM – a fost conceput special pentru subsisteme grafice. Ambele sunt memorii care permit citiri si scrieri simultane, permitand astfel si placii video si procesorului sa acceseze RAM-ul in acelasi timp. Acest design a permis ca RAM-ul sa devina mai rapid, pentru ca nu exista nici un timp de latenta sau unul foarte mic. Aceste tipuri de memorie sunt insa extrem de scumpe, WRAM-ul avnd o latime de banda un pic mai mare decat VRAM-ul. MDRAM – Multi-bank DRAM – de asemenea conceput special pentru subsisteme grafice, acesta incorporeaza cipuri de memorie de 32kb, ceea ce a permis producatorilor sa utilizeze cantitati netraditionale de memorie, deoarece aceasta, in general trebuie sa fie impartita in cantitati binare, dar in aceasta situatie frame buffer-ul utilizeaza memoria ineficient. SDRAM/SGRAM – Synchronous DRAM/Graphics RAM – sunt tipuri de memorie extreme de rapida care pot rula la aceeasi viteza cu bus-ul, ceea ce reduce extreme de mult latenta. SGRAM-ul a fost conceput special pentru aplicatiile grafice, cu o latime de banda foarte mare, dar mult mai scump decat SDRAM-ul. Ele sunt la ora actuala standardul de memorie pentru placile video. Din cauza variatiilor tehnologice, SDRAM-ul si SGRAM-ul functioneaza la alte viteze fata de cipul video. DDRRAM – Double DataRate Random Access Memory – este tipul de memorie cel mai folosit la ora actuala. In termeni DDR, are o frecventa de ceas de 266MHz. In mod normal este o memorie cu un design mai avansat ce lucreaza pe ambele fronturi ale ceasului (2x133MHz), deci ceasul are de fapt 133MHz ca si la memoriile PC133 SDRAM. In comert mai exista si DDRRAM-uri la 333MHz si la 400MHz. DRDRAM – Direct RDRAM – este un tip de memorie care promite imbunatatirea performantelor DRAM-ului conventional de 20 de ori. Memoriile RDRAM sunt impachetate in tehnologie Micro-BGA si MicroZ-BGA. Ultima cucerire tehnologica din acest domeniu, MicroZ-BGA promite impachetari cu pana la 60% mai mari fata de Micro-BGA si se poate ajunge pana la dimensiuni de 1,5 pana la 3GB. Frecventa de lucru pentru aceasta memorie poate depasi lejer 1GHz (exista deja RIMM la 1066MHz). De remarcat este faptul ca RAM-ul video nu are refresh ca si memora RAM a sistemului deoarece adresele cele mai importante sunt plasate pe coloane si nu pe linii (la fiecare accesare a unui element dintr-o linie din matricea de memorie, este reimprospatata toata linia – adica RAM-ul video nu este chiar random). Toate placile video, incepand cu cele VGA, utilizeaza RAMDAC – Random Acces Memory Digital to Analog Converter. Acesta este cel mai important deoarece este responsabil de conversia semnalului digital in analog, acesta din urma fiind cel afisat pe ecran. De mai multe ori pe secunda, RAMDAC-ul citeste continutul memoriei video, il converteste in semnal analog RGB, rezultatul obtinut fiind transmis prin cablul video catre monitor. Aceasta se realizeaza prin utilizarea unui tabel ce permite convertirea voltajului semnalului digital pentru fiecare culoare. Exista cate un DAC pentru fiecare dintre cele trei culori primare pe care monitoarele le utilizeaza pentru a crea spectrul complet. Rata cu care RAMDAC-ul poate converti informatia si designul procesorului grafic sunt cele care dicteaza ratele de refresh pe care un sistem grafic poate sa le afiseze. Placile grafice de ultima generatie incorporeaza RAMDAC-ul direct in accelerator, ceea ce duce la scaderea costurilor de productie. Viteza este esentialul pentru RAMDAC, acesta fiind responsabil pentru afisarea imaginii. RAMDAC-ul este ultimul pas in procesul de accelerare video, inainte ca informatia sa fie transmisa catre ecran si de aceea viteza sa este cea care determina calitatea semnalului final atat in ceea ce priveste rezolutia cat si refresh-ul. Un RAMDAC lent va genera o imagine cetoasa, deoarece informatia digitala transmisa de accelerator nu a fost procesata in mod corect, ceea ce determina degradarea calitatii vizuale. Un RAMDAC rapid se traduce printr-o imagine mai clara afisata pe ecran.RAMDAC-ul dicteaza si numarul de culori disponibile pentru o rezolutie data in functie de arhitectura sa interna.
Conectori
Orice adaptor grafic are in componenta sa cel putin un conector (conectorul DSub-15 cu monitorul), un conector de 15 pini. Mai nou exista si un conector TV-Out, ce face legatura intre adaptor si televizor (pentru impatimitii de jocuri pe televizor), Video-in/out, pentru adaptoarele „high-end” si un conector DVI (Digital Video Interface). In jurul acestui conector exista o mica disputa cu privire la standardul folosit. In realitate exista trei standarde:
Parametrii imaginii
Rezolutia este un termen utilizat adesea in sensul de adresabilitate, dar se refera mult mai exact la claritatea unei imagini. Este o functie primara a monitorului si este determinata de numarul de puncte. O imagine este creata in momentul in care unnumar de electroni excita fosforul de la baza ecranului monitorului. Un grup de electroni care genereaza culorile rosu, verde si albastru este cunoscut sub numele de pixel. Pixelul reprezinta cea mai mica portiune a ecranului ce poate fi controlata individual si fiecare pixel poate fi setat sa aiba o anumita culoare si intensitate. O imagine completa este compusa din mii de pixeli si din rezolutia ecranului, care dicteaza numarul maxim de pixeli ce pot fi afisati. Cu cat rezolutie este mai mare, cu atat vor fi afisati mai multi pixeli si cu atat ecranul va putea afisa maimulta informatie pentru un anumit moment. Lipsa unor standarde universale pentru VGA a fost o problema rezolvata prin introducerea standardului VESA – Video Electronic Standard Association, care este compatibil cu VGA, dar ofera rezolutii mai mari si mai multe culori. In mod normal, un ecran SVGA poate suporta o paleta de pana la 16,7 milioane culori, desi cantitatea de memorie video a adaptorului grafic poate limita numarul de culori afisate la valori mai mici. In general, cu cat este mai mare diagonala ecranului unui monitor SVGA, cu atat mai multi pixeli vor putea fi afisati pe verticala si pe orizontala. De exemplu, un monitor SVGA de 14 inch va putea afisa rezolutii de 800x600, in timp ce unul de peste 20 inch este capabil de rezolutii de 1280x1024 sau chiar 1280x1200. XGA dezvoltat de IBM, a devenit standardul pentru placile video si monitoarele capabile sa afiseze rezolutii de 1024x768. Standardul SXGA descrie urmatoarea marime de ecran, 1280x1024. Notabil in legatura cu SXGA este faptul ca rata de afisare standard este 5:4, in timp ce VGA, SVGA, XGA, UXGA au rata de 4:3. Adancimea de culoare este parametrul care descrie numarul de culori care pot fi afisate de catre o placa video. Fiecare pixel de pe ecran este format din combinatia celor trei culori: rosu, verde si albastru. Modul de aparitie al fiecarui pixel este controlat de intensitatea celor trei raze de lumina si cantitatea de informatie care este stocata pentru un pixel determina adancimea sa de culoare. Cu cat sunt utilizati mai multi pixeli, cu atat este mai fin detaliul coloristic al imaginii. Pentru ca un ecran sa determine ochiul sa vada o culoare similara cu cea din realitate, sunt necesare 256 de tonuri de rosu, verde si albastru, ceea ce inseamna 8 biti pentru fiecare dinte cele trei culori primare, ceea ce inseamna in total 24 biti. Totusi anumite placi grafice aflate pe piata la ora actuala necesita 32 biti pentru fiecare pixel pentru a afisa modul True Color, aceasta fiind datorata modului in care este utilizata memoria video, cei 8 biti suplimentari fiind utilizati pentru luminozitate (alpha channel). Modul High Color utilizeaza 2 biti de informatie pentru a stoca valoarea intensitatii fiecareia dintre cele trei culori, utilizand 5 biti pentru albastru, 5 biti pentru rosu si 6 biti pentru verde. Rezulta 32 de intensitati diferite pentru albastru si rosu, si 64 pentru verde, care vor duce la scaderea putin vizibila a calitatii imaginii, dar la cresterea ratei de utilizare a memoriei video.
3D – A fi sau a nu fi real
Si cum la ora actuala nici o placa video nu mai este ceea ce tebuie sa fie daca nu are si un suport 3D, vom vedea in continuare ce este cu aceasta tehnologie si de ce a devenit un standard pentru orice sistem. Pana in 1995, tehnologia 3Dera rezervata catorva produse high-end. Atitudinea s-a schimbat atunci cand Microsoft a lansat DirectX, transformand Windows 95 intr-o platforma multimedia. Dar anul de nastere al fenomenului 3D este 1997, cand vanzarile de astfel de placi grafice au depasit 42 de milioane de bucati. De atunci cresterea a fost impresionanta. Astfel, anul 2001 a insemnat 170 de milioane de placi 3D vandute. Un cip grafic, fie ca este 3D dedicat, fie dual 2D/3D, elibereaza procesorul si realizeaza singur rendering-ul imaginii. Orice imagine este creata in doua etape majore: geometria si randarea. Etapa de geometrie este realizata de procesor, care se ocupa de poligoane si realizeaza conversia datelor 3D in pixeli. Etapele de randare de care se ocupa acceleratorul 3D managerizeaza activitatea pixelilor si memoria necesara, pregatind inaginea pentru a fi afisata pe monitor.
Geometria 3D
In acest stadiu, toate imaginile 3D sunt descompuse in poligoane, fiecare dintre acestea fiind analizat si atribuindu-i-se anumite caracteristici. Obiectele sunt definite prin coordonatele lor, care vor fi transpuse intr-un sistem numit World Space Coordinate. Orice elemente care nu se incadreaza in ecran vor fi ignorate. Semnalele transmise de utilizator in World Space, ca de exemplu in cazul unui joc, determina miscarea obiectelor. Dar in acelasi timp trebuie calculate si recalculate schimbarile de lumina, textura si culoare pe care le implica noua pozitie in care se vad obiectele. Toate aceste setari ale geometriei trebuie definite de procesorul sistemului inainte ca cipul 3D sa realizeze randarea. Calculele asociate au rolul de a realiza trei functii specifice:
Tehnici de randare 3D
In acesta etapa de care este responsabil acceleratorul hardware, motorul 3D traseaza pixeli. Principalul obstacol in acest stadiu este timpul de acces al memoriei – cat de repede pixelii sunt cititi si transmisi catre frame buffer. Sunt cateva mii de poligoane pentru fiecare imagine a unei scene, care trebuie transmise prin memorie de 30 de ori pe secunda, pentru a crea iluzia de miscare. Acest transfer catre frame buffer este cunoscut sub numele de frame rate si se masoara in cadre pe secunda (frames per second- fps). De aici frame-urile sunt transmise catre RAMDAC, unde sunt convertite in semnal analogic pentru monitor, unde are loc actiunea. Procesul de randare implica utilizarea a diferite tehnici:
Pentru a intelege pe deplin unele specificatii si tehnologii, voi prezenta in continuare un mic dictional 3D (nu voi prezenta denumiri elementare precum: pixel, texel, voxel, fps, refresh, etc):
Adaptorul grafic ATI Radeon 9700 Pro este bazat pe procesorul grafic R300 compus din peste 110 milioane tranzistoare. Procesorul foloseste procesul de 0,15 microni ca si predecesorul sau Radeon 8500, rivalul seriei GeForce4 de la nVidia. Radeon-ul foloseste magistrala AGP 8x . Noul procesor include suport pentru netestatul DirectX 9, insemnand ca nu exista nimic ca acest adaptor grafic sa nu poata face. Latimea de banda a memoriei este de 20 GB/sec, detronand pana si cel mai rapid GeForce4 (Ti4600) ce are numai 10,4 GB/sec. Fluxurile de randare pe 8 pixeli, cu o textura pe flux este capabila de a randa pana la 16 texturi la o singura trecere, depasind lejer abilitatile de 4 texturi la o trecere ale lui Ti4600. Memoria video este de tipul DDR pe 256 biti folosind tehnologia Hyper Z III pentru eliminarea „gatuirilor”. SmartShader 2.0 este o tehnologie patentata de ATI similara cu tehnologia nFiniteFX de la nVidia, cu exceptia faptului ca Vertex Shaders permite executarea a pana la 1024 de instructiuni la o singura trecere iar Pixel Shaders, 160. Tehnologiile Smoothvision Anti-Aliasing 2.0 si TruForm 2.0 au corespondent si in tehnologiile patentate de nVidia. Posibilitatea de a folosi mai multe monitoare de catre un adaptor grafic este implementata si de ATI prin aplicatia Hydravision. Conectorul S-Video este optional.
Al doilea adaptor grafic este unul de la Matrox si se numeste Parhelia. Desi este al doilea in ordine cronologica el este primul la capitolul performanta. Si aici enumer: procesor grafic pe 512 biti, interfata cu memoria de 256 biti, memorie video de 256MB de tip Double-Data Rate, posibilitatea conectarii a trei -3- monitoare, doua cipuri RAMDAC, codor TV, etc. El este construit in tehnologia de 0,15 microni si are nu mai putin de 80 milioane tranzistoare si, bineinteles, beneficiaza de ultimele tehnologii 3D prezente pe piata. Pretul unui astfel de adaptor grafic a depasit orice asteptari, adica 599$.
Adaptoarele grafice cu GeForce4 Ti4600 au fost pana de curand primele in topuri dar ele s-au supus avansului tehnologic si au decazut. Oricum ar fi, un adaptor cu GeForce4 tot ramane unul puternic, cu o putere de calcul enorma gratie celor 128MB DDR si a celor 10GB/s latime de banda si, nu in ultimul rand, a magistralei de memorie pe 128 biti. In continuare va voi prezenta un grafic comparativ, cu specificatiile tehnice ale unor adaptoare cu GeForce, Radeon si Parhelia:
Desi a trecut vremea in care acceleratorul era un cip separat (TNT2, Vanta, MGA200, etc) sau chiar o placa separata (Voodoo2, Banshee, etc), placile video, ca orice componenta electronica, se supun avansului tehnologic impus, de obicei, de firma nVidia. In comparatie cu cei de la Intel, nVidia nu se lupta sa introduca o data la doi ani o noua tehnologie de fabricatie (conform legii lui Moore) desi procesoarele grafice sunt procesoare RISC (Reduced Instruction Set Computing). De remarcat este faptul ca nVidia nu are propriile fab-uri precum au Intel si Advanced Micro Devices (AMD). In viitorul apropiat (cam 2 ani) se preconizeaza atingerea primului gigahertz in domeniul GPU. Chiar daca GPU va rula cu 1GHz avand memorie RDRAM de 1066MHz, limitarea o va constitui RAMDAC-ul. Tehnologia placilor video este extrem de avansata, un procesor grafic avand mai multe instructiuni decat unul CISC, dar axate pe un singur domeniu (de aici denumirea de RISC). Daca nVidia isi respecta promisiunea de a impune avansul tehnologiei, in urmatorii ani va dispare cu totul conceptul de adaptor grafic(graphics adapter) sau placa video, in locul lor aparand denumirea de adaptor VR (virtual reality adapter), odata cu introducerea realitatii virtuale, de aici rezultand schimbari radicale a arhitecturii PC-ului modern. Odata cu intrarea in nanotehnologie (intergarea procesului de 0,09 microni de catre Intel) se va face ceruta si mult asteptata schimbare de arhitectura (inceputa de HDD-ul pe baza de reactie chimica de 3TB). Partea cea mai grea va fi interfatarea, parte ce va ocupa mult timp dezvoltatorilor. Desi realitatea virtuala este viitorul, prezentul il reprezinta placile video, deci, sa ne bucuram de prezent!
Bibliorgafie: PCWorld, www.nvidia.com, www.ati.com, www.matrox.com si ....eu.
|