adapt video

26
Sisteme de I/E - Adaptoare video 1 6. ADAPTOARE VIDEO Adaptorul video este componenta sistemului de calcul care realizează interfaţa cu echipamentul de afişare. În general, acest adaptor se află pe o placă de extensie separată, dar unele sisteme au funcţiile adaptorului video integrate pe placa de bază. Primele adaptoare video erau conectate la magistrala ISA. Odată cu creşterea rezoluţiei imaginilor afişate şi a numărului de culori, a crescut rata de transfer necesară pentru reîmprospătarea imaginilor de pe ecran. Deoarece magistrala ISA nu oferea o rată de transfer suficientă, adaptoarele video au fost conectate la magistrala VL Bus sau PCI. Adaptoarele actuale utilizează interfaţa AGP (Accelerated Graphics Port), care asigură o cale de comunicare directă între adaptorul video şi memoria internă a sistemului, fără utilizarea magistralei PCI. Astfel se evită congestia magistralei PCI, în special în cazul aplicaţiilor 3D care necesită transferul unui volum foarte mare de date. 6.1. Structura unui adaptor video Schema bloc de principiu a unui adaptor video este prezentată în Figura 6.1. Acesta este un adaptor care se conectează la magistrala sistemului, de exemplu, la magistrala PCI. Adaptoarele care utilizează interfaţa AGP sunt descrise în secţiunea 6.7. Figura 6.1. Schema bloc de principiu a unui adaptor video. Componentele principale ale adaptorului sunt următoarele: controlerul grafic, BIOS-ul video, memoria video, circuitul RAMDAC (RAM Digital to Analog Converter), controlerul CRT, generatorul semnalelor de ceas şi portul video. Aceste componente, cu excepţia memoriei video, pot fi integrate într-un singur circuit grafic sau într-un set de circuite grafice. Principalele componente ale unui adaptor video sunt descrise în continuare. 6.1.1. Controlerul grafic Controlerul grafic realizează principalele funcţii ale adaptorului video. Acest controler conţine interfaţa cu magistrala sistemului, prin care se realizează legătura între memoria sistemului şi memoria video. Viteza asigurată de interfaţa cu magistrala este un element important, deoarece multe operaţii

Upload: ady-andyy

Post on 25-Nov-2015

34 views

Category:

Documents


1 download

TRANSCRIPT

  • Sisteme de I/E - Adaptoare video 1

    6. ADAPTOARE VIDEO

    Adaptorul video este componenta sistemului de calcul care realizeaz interfaa cuechipamentul de afiare. n general, acest adaptor se afl pe o plac de extensie separat, dar unelesisteme au funciile adaptorului video integrate pe placa de baz. Primele adaptoare video erauconectate la magistrala ISA. Odat cu creterea rezoluiei imaginilor afiate i a numrului de culori, acrescut rata de transfer necesar pentru remprosptarea imaginilor de pe ecran. Deoarece magistralaISA nu oferea o rat de transfer suficient, adaptoarele video au fost conectate la magistrala VL Bussau PCI. Adaptoarele actuale utilizeaz interfaa AGP (Accelerated Graphics Port), care asigur o calede comunicare direct ntre adaptorul video i memoria intern a sistemului, fr utilizarea magistraleiPCI. Astfel se evit congestia magistralei PCI, n special n cazul aplicaiilor 3D care necesittransferul unui volum foarte mare de date.

    6.1. Structura unui adaptor video

    Schema bloc de principiu a unui adaptor video este prezentat n Figura 6.1. Acesta este unadaptor care se conecteaz la magistrala sistemului, de exemplu, la magistrala PCI. Adaptoarele careutilizeaz interfaa AGP sunt descrise n seciunea 6.7.

    Figura 6.1. Schema bloc de principiu a unui adaptor video.

    Componentele principale ale adaptorului sunt urmtoarele: controlerul grafic, BIOS-ul video,memoria video, circuitul RAMDAC (RAM Digital to Analog Converter), controlerul CRT,generatorul semnalelor de ceas i portul video. Aceste componente, cu excepia memoriei video, pot fiintegrate ntr-un singur circuit grafic sau ntr-un set de circuite grafice. Principalele componente aleunui adaptor video sunt descrise n continuare.

    6.1.1. Controlerul grafic

    Controlerul grafic realizeaz principalele funcii ale adaptorului video. Acest controler conineinterfaa cu magistrala sistemului, prin care se realizeaz legtura ntre memoria sistemului i memoriavideo. Viteza asigurat de interfaa cu magistrala este un element important, deoarece multe operaii

  • Sisteme de I/E - Adaptoare video2

    grafice implic copierea unui volum mare de date din memoria sistemului n memoria adaptoruluivideo. O interfa performant cu magistrala trebuie s aib dou caracteristici importante. n primulrnd, trebuie s admit transferuri n mod exploziv (burst) prin specificarea adresei de nceput i alungimii blocului. n al doilea rnd, interfaa trebuie s permit transferuri fr stri de ateptare. Unastfel de mod este important mai ales la citirea memoriei video. La scrierea n memoria video, trebuieutilizat o memorie FIFO pentru a asigura scrierea eficient a datelor sau actualizarea imaginilor de peecran.

    Controlerul grafic conine de asemenea interfaa cu memoria video, prin care se realizeazcontrolul accesului la memoria video pentru actualizarea imaginilor. Registrele VGA (Video GraphicsArray) i registrele de control asigur programarea adaptorului video pentru funcionarea n modurilecompatibile cu standardul VGA. Majoritatea adaptoarelor sunt compatibile cu standardul VGA, iaracest standard asigur i compatibilitatea cu standardele anterioare. Exist ns i adaptoare care numai sunt compatibile cu standardul VGA, la care registrele VGA nu se mai regsesc. O alt funcie acontrolerului grafic este generarea prin hardware a cursorului pentru ecran. Controlerul grafic poateexecuta i diferite funcii grafice, ca desenarea unor linii, umplerea unor suprafee sau transferul unorblocuri de date. Funciile grafice sunt implementate de obicei de ctre acceleratoarele grafice,controlerul grafic fiind numit n acest caz i procesor grafic. Acceleratoarele grafice pentru aplicaii2D sau 3D sunt prezentate n seciunile urmtoare.

    6.1.2. BIOS-ul video

    BIOS-ul video pune la dispoziie funcii video care pot fi utilizate de programe pentru accesulla adaptorul video, realiznd interfaa cu controlerul grafic. Deoarece BIOS-urile diferitelor adaptoaresunt diferite, programarea a devenit dificil datorit creterii numrului de adaptoare de tipuri diferite.Organizaia VESA a elaborat un standard pentru funciile BIOS n modurile cu nalt rezoluie, numitVESA BIOS Extensions (VBE).

    6.1.3. Memoria video

    Memoria video pstreaz imaginea video, aceast memorie fiind numit i buffer de cadre.Dimensiunea, timpul de acces i organizarea memoriei video reprezint factori importani careinflueneaz performanele adaptorului video. Detalii despre aceste aspecte ale memoriei video suntprezentate n seciunea 6.4.

    6.1.4. Circuitul RAMDAC

    Circuitul RAMDAC (RAM Digital to Analog Converter) preia imaginea sub form de datenumerice i o convertete n semnale analogice care pot fi afiate de monitor. Funciile circuituluiRAMDAC pot fi integrate n cadrul controlerului grafic. Pentru arhitecturile mai performante, careutilizeaz memorii video cu port dual, circuitul RAMDAC trebuie s fie separat de controlerul grafic.Funcionarea circuitului RAMDAC este descris mai detaliat n seciunea 6.2.

    6.1.5. Controlerul CRT

    Controlerul CRT genereaz semnalele de sincronizare necesare pentru afiarea imaginilor dectre monitor. Aceste semnale sunt semnalul de sincronizare pe orizontal SH i semnalul desincronizare pe vertical SV.

    6.1.6. Generatorul de ceas

    Generatorul de ceas este utilizat pentru a converti frecvena oscilatorului cu cuar nfrecvenele necesare pentru controlerul grafic, controlerul CRT i circuitul RAMDAC.

  • Sisteme de I/E - Adaptoare video 3

    6.1.7. Portul video

    Portul video permite ca imaginile video preluate din alte surse s fie mixate sau incluse nimaginile afiate pe ecran. Acest port poate fi utilizat, de exemplu, pentru afiarea pe ecran aimaginilor TV simultan cu imaginile grafice generate de calculator. Exist mai multe variante aleportului video, o parte din acestea fiind standardizate de organizaia VESA.

    O prim variant este interfaa VFC (VGA Feature Connector), care a fost elaborat pentrustandardul VGA. Aceast variant, care nu mai este utilizat astzi, specifica o magistral de pixeli de8 bii pentru conectarea unei surse video la calculator i permitea afiarea unor imagini video ntr-ofereastr de pe ecranul monitorului, cu o rezoluie de numai 640480 pixeli i un numr de 256 deculori. Rata de transfer maxim ajungea la 40 MB/s. O variant mbuntit a interfeei VFC esteVAFC (VESA Advanced Feature Connector), variant care a fost standardizat de organizaia VESAn anul 1994 i revizuit n 1995. Interfaa VAFC pune la dispoziie o magistral dedicat de 32 de biipentru transferul datelor video, cu o rat de transfer maxim de 150 MB/s. Caracteristicile imaginilorafiate sunt rezoluia maxim de 1024768 pixeli, 256 de culori i frecvena de remprosptare de 75Hz. Varianta VAFC a reprezentat doar o soluie pe termen scurt pentru mixarea imaginilor video i acelor grafice.

    O alt interfa video este VMC (VESA Media Channel), care a fost standardizat n anul1993. Aceast interfa, care s-a dorit a fi o soluie pe termen mai lung pentru sistemele multimedia,definete un canal separat de 32 de bii pentru transferul datelor video i audio necomprimate, la o ratde transfer maxim de 132 MB/s. Canalul dedicat pentru transferul datelor multimedia permitecomunicaia direct, bidirecional i simultan ntre mai multe adaptoare video sau mai multeperiferice de 8, 16 sau 32 de bii, fr a ncrca magistrala sistemului i fr intervenia UCP. Acesteperiferice pot fi, de exemplu, decodoare MPEG-2, controlere HDTV sau aparate Video CD. InterfaaVMC permite aplicaii video n timp real, gestionnd simultan pn la 15 iruri de date multimedia.Specificaiile VMC permit utilizarea oricrei tehnologii pentru memoria video, inclusiv a unortehnologii aprute ulterior elaborrii acestor specificaii.

    O ultim variant de interfa video prezentat este interfaa VIP (Video Interface Port),versiunea 2 a standardului acestei interfee fiind publicat de organizaia VESA n anul 1998. Similarinterfeei VMC, interfaa VIP permite accesul diferitelor dispozitive video digitale la bufferul de cadreal adaptorului video pentru realizarea unor aplicaii cum sunt videoconferine, redarea discurilor DVDvideo sau aplicaii TV. Interfaa VIP este o conexiune fizic dedicat ntre adaptorul video idispozitive cum sunt decodoare MPEG-2 sau HDTV, digitizoare video sau codificatoare video.Aceast interfa este mai simpl dect interfaa VMC i permite realizarea unor configuraii la costurimai sczute.

    n seciunea 6.8 vor fi descrise diferite metode de combinare a imaginilor video cu celegrafice.

    6.2. Funcionarea circuitului RAMDAC

    Structura unui circuit RAMDAC este ilustrat n Figura 6.2.

    Figura 6.2. Structura circuitului RAMDAC.

    Componentele circuitului RAMDAC sunt tabela de selecie a culorilor RAM CLUT (ColorLook-Up Table) i convertoarele numeric-analogice DAC. Dup cum se observ din Figura 6.2, datelevideo pot fi aplicate la intrrile circuitelor DAC fie direct, ocolind tabela RAM CLUT, fie prinintermediul acestei tabele. Varianta utilizat depinde de modul video utilizat i, implicit, de numrul

  • Sisteme de I/E - Adaptoare video4

    de bii alocai n memoria video pentru culoarea fiecrui pixel. Modurile video pentru care datele dinmemoria video sunt transmise direct la intrrile circuitelor DAC se numesc moduri video cu culoridirecte, iar cele pentru care se utilizeaz tabela RAM CLUT se numesc moduri video cu culoriindexate. Majoritatea aplicaiilor actuale utilizeaz moduri video cu culori directe. Totui, tabela RAMCLUT se utilizeaz n unele situaii.

    Tabela RAM CLUT este n principiu un convertor de cod care transform un cod de culoareexprimat pe un numr mai redus de bii (de exemplu, 8) ntr-o valoare extins (de exemplu, pe 24 debii) pentru a permite utilizarea unui numr mare de culori. Aceast tabel se utilizeaz pentruaplicaiile care nu necesit un numr mare de culori sau n cazul n care adaptorul nu conine omemorie suficient pentru alocarea unui numr de 24 sau 32 de bii pentru culoarea fiecrui pixel.Considerm, de exemplu, cazul n care memoria video conine cte 8 bii pentru codul de culoare alfiecrui pixel, ceea ce permite utilizarea unui numr de 256 de culori. Dac se utilizeaz trei circuiteDAC de cte 8 bii pentru culorile fundamentale, vor fi disponibile 16,7 milioane culori. Selecia celor256 de culori care vor fi utilizate din numrul total de culori disponibile se realizeaz cu ajutorultabelei RAM CLUT. Cu alte cuvinte, aceast tabel selecteaz 256 de culori care vor fi afiatesimultan pe ecran dintr-o palet de 16,7 milioane culori.

    Tabela RAM CLUT este o memorie RAM care conine 256 de cuvinte de cte 24 de bii,fiecare cuvnt fiind mprit n trei cmpuri de cte 8 bii pentru cele trei culori fundamentale. Uneleadaptoare utilizeaz o tabel RAM CLUT cu dimensiunea cuvntului de 18 bii, ceea ce limiteaznumrul total de culori la 262.144. Cei 8 bii reprezentnd codul culorii, citii din memoria video, seutilizeaz ca index n tabela RAM CLUT, coninutul cuvntului selectat fiind transmis la cele treicircuite DAC. Tabela RAM CLUT este programabil, deci fiecare cuvnt al tabelei poate fi ncrcatprin program cu o nou valoare. Prin simpla modificare a valorii unui cuvnt din tabela RAM CLUTse poate defini o nou culoare care va fi disponibil n cadrul setului de 256 de culori. Astfel esteposibil i modificarea rapid a culorii unor obiecte afiate pe ecran sau tergerea obiectelorrespective. Figura 6.3 ilustreaz modul n care se utilizeaz tabela RAM CLUT.

    Figura 6.3. Utilizarea tabelei de selecie a culorilor RAM CLUT.

    Fiecare din cele trei convertoare numeric-analogice (circuite DAC) primete la intrare ovaloare pe 8 bii i genereaz la ieire un semnal analogic care poate avea 256 de nivele de tensiune.Cele trei semnale analogice R, G i B generate de circuitele DAC sunt transmise prin conectorul icablul interfeei la monitor pentru modularea celor trei fascicule de electroni.

  • Sisteme de I/E - Adaptoare video 5

    Tipul i frecvena de funcionare a circuitelor DAC influeneaz n mod direct rezoluiamaxim a imaginii i frecvena de remprosptare a acesteia. Rezoluiile mai mari implic un numrmai mare de pixeli care trebuie transmii de circuitele DAC pentru a menine o anumit frecven deremprosptare. Funcionarea circuitelor DAC este controlat de un ceas de pixeli. Tabelul 6.1 indicfrecvena circuitelor DAC (frecvena ceasului de pixeli) n funcie de rezoluia ecranului i rata deremprosptare. Frecvena este indicat n MHz, valorile reprezentnd numrul de pixeli (exprimat nmilioane de pixeli) care trebuie generai n fiecare secund de circuitele DAC. S-a utilizat un factor demultiplicare de 1,32 pentru a ine cont de duratele intervalelor de stingere pe orizontal i pe vertical,n care fasciculele nu sunt vizibile pe ecran.

    Tabelul 6.1. Frecvena n MHz a circuitelor DAC n funcie de rezoluia ecranului i frecvena deremprosptare.

    Rezoluie 60 Hz 75 Hz 85 Hz 100 Hz

    800 x 600 38,0 47,5 53,9 63,4

    1024 x 768 62,3 77,8 88,2 103,8

    1280 x 1024 103,8 129,7 147,1 173,0

    1600 x 1200 152,1 190,1 215,4 253,4

    1920 x 1440 219,0 273,7 310,2 364,9

    2048 x 1536 249,1 311,4 352,9 415,2

    Pe lng frecvena de funcionare a circuitelor DAC, posibilitatea de a obine anumitefrecvene de remprosptare depinde i de ali factori:

    Calitatea adaptorului video. Anumite adaptoare nu sunt proiectate pentru a depi anumitefrecvene de remprosptare, indiferent de ali factori.

    Rata de transfer a memoriei video. Ratele de remprosptare mai mari implic rate mai maride transfer necesare pentru citirea memoriei video. Pentru rezoluii mari i un numr mare deculori, rata de transfer a memoriei video poate deveni un factor de limitare, viteza circuitelorDAC nefiind relevant dac memoria nu poate furniza datele suficient de rapid.

    6.3. Reprezentarea culorilor

    Numrul de culori care pot fi afiate pe ecran depinde n primul rnd de adaptorul video. Unmonitor analogic cu tub catodic poate genera un numr de peste 16 milioane culori. Adaptorul videopoate limita ns numrul de culori care pot fi afiate pe ecran. Numrul maxim de culori depinde dedimensiunea memoriei video i de numrul de bii alocai fiecrui pixel.

    Adaptoarele utilizeaz diferite moduri de reprezentare a informaiilor pentru culoarea fiecruipixel n memoria video. Aceste moduri sunt ilustrate n Figura 6.4. Primul mod ilustrat (Figura 6.4(a))este cel n care se utilizeaz 8 bii pentru a reprezenta culoarea unui pixel. Acest mod, numit i modpseudo-color, permite utilizarea simultan a 256 de culori. n acest mod nu se pstreaz separatcomponentele pentru cele trei culori fundamentale. Se utilizeaz tabela RAM CLUT pentru extindereanumrului total de culori, dup cum s-a prezentat n seciunea 6.1.4.

  • Sisteme de I/E - Adaptoare video6

    Figura 6.4. Moduri de reprezentare a culorilor n memoria video.

    Dac se utilizeaz 15 bii pentru fiecare pixel (Figura 6.4(b)), sunt posibile 32.768 culori. nmemoria video se aloc 16 bii pentru fiecare pixel, dar bitul cel mai semnificativ din cei 16 nu esteutilizat. Pentru fiecare culoare fundamental sunt rezervai cte 5 bii. Acest mod de rezervare a biiloreste desemnat prin 1:5:5:5. Un alt mod de reprezentare este cel n care se utilizeaz 16 bii pentrufiecare pixel (Figura 6.4(c)). Pentru culoarea verde sunt rezervai 6 bii, n timp ce pentru culorile roui albastru sunt rezervai cte 5 bii. Modul de rezervare a biilor este indicat prin 5:6:5, numrulmaxim de culori fiind de 65.536. Modurile cu 15 i 16 bii pe pixel sunt numite i moduri highcolor.

    Figura 6.4(d) ilustreaz modul n care se rezerv 32 de bii pentru fiecare pixel, din care cei 8bii mai semnificativi nu sunt utilizai. Aceast reprezentare permite simplificarea structuriiadaptorului video, dar reduce eficiena utilizrii memoriei video. Acest mod se numete cu pixelinecompactai. Adaptoarele actuale utilizeaz modul cu pixeli compactai, n care se rezerv 24 de biipentru fiecare pixel (Figura 6.4(e)). Astfel, memoria video este utilizat mai eficient, i n acelai timpse reduce rata de transfer necesar pentru afiarea imaginilor. n ambele moduri, cu 32 sau 24 de biipe pixel, sunt rezervai cte 8 bii pentru fiecare culoare fundamental, modul de rezervare a biilorfiind indicat prin 8:8:8. Numrul maxim de culori este de 16,7 milioane (16.777.216 culori). Acestemoduri sunt numite i moduri true color.

    6.4. Memoria video

    6.4.1. Amplasarea memoriei video

    La primele calculatoare PC, ca memorie video se utiliza o parte a memoriei principale DRAM.UCP realiza operaiile necesare pentru actualizarea acestei zone, iar controlerul grafic actualizaimaginile de pe ecran citind coninutul acestei zone. O asemenea soluie se numete arhitectur cumemorie unificat (UMA Unified Memory Architecture). Costul acestei soluii este redus, darperformanele video sunt de asemenea mai reduse. Pentru a se utiliza rezoluii mari i rate deremprosptare ridicate, performanele memoriei video trebuie s fie mai ridicate dect cele alememoriei DRAM obinuite.

    Pe msur ce dimensiunile necesare pentru memoria video au crescut, aceasta a fost plasat peplaca adaptorului video. Avantajul plasrii memoriei video n cadrul adaptorului video este cretereaeficienei i posibilitatea de a mbunti performanele memoriei video pe msur ce devindisponibile noi tehnologii pentru aceast memorie.

  • Sisteme de I/E - Adaptoare video 7

    O soluie combinat este utilizat la interfaa AGP, care permite procesorului video accesul lamemoria principal pentru efectuarea diferitelor calcule necesare operaiilor grafice, dar dispune i deo memorie video dedicat. Astfel este posibil utilizarea mai flexibil a memoriei fr reducereaperformanelor.

    La calculatoarele PC, memoriei video i se aloc o poriune a spaiului de adresare al memorieiprincipale a sistemului. Aceast poriune are dimensiunea de 64 KB sau 128 KB i este format dinsegmentele A i/sau B (adresele fizice A0000h i B0000h) din primul MB al memoriei principale.Aceast zon poate fi accesat de UCP i n modul real. Deoarece pentru majoritatea rezoluiilor acestspaiu nu este suficient, controlerul grafic mparte memoria video n pagini pe care le mut succesiv naceast zon n care UCP are acces la imaginile grafice. Controlerele grafice actuale pot muta ntreagamemorie video n spaiul de adresare aflat deasupra limitei de 1 MB, care este utilizat n modulprotejat. n acest caz nu este necesar paginarea pentru a avea acces la ntreaga memorie video. Acesttip de acces liniar la memoria video poate mbunti n mod semnificativ performanele sistemului deafiare.

    6.4.2. Organizarea memoriei video

    Organizarea memoriei video influeneaz n mare msur valoarea ratei de transfer. Prinutilizarea tehnicii de intercalare a bancurilor de memorie, se obine creterea semnificativ aperformanelor la accesul memoriei video. Aceast tehnic permite ca dou sau mai multe bancuri dememorie s fie accesate simultan, iar datele provenite de la mai multe bancuri de memorie s fiemultiplexate spre controlerul grafic sau circuitele DAC. Astfel, o memorie cu dou bancuri de cte 64de bii devine prin intercalare aproape la fel de rapid ca o memorie cu lungimea cuvntului de 128 debii.

    Memoriile video pot fi cu port unic sau cu port dual, n ultimul caz fiind posibil accesulsimultan la ambele porturi de memorie. n Figura 6.5 se prezint amplasarea unei memorii video cuport unic.

    Figura 6.5. Amplasarea unei memorii video cu port unic.

    O memorie video cu port unic dispune de un singur port de date, care este utilizat att pentruremprosptarea ecranului cu ajutorul circuitului RAMDAC, ct i pentru accesul de ctre UCP saucontrolerul grafic pentru nscrierea unor noi informaii. O asemenea memorie realizat n tehnologiaconvenional nu poate asigura de obicei o rat de transfer suficient pentru o rezoluie ridicat i unnumr mare de culori. Pentru a elimina acest dezavantaj, au fost create memorii video cu port dual.Amplasarea unei asemenea memorii este prezentat n Figura 6.6.

    Figura 6.6. Amplasarea unei memorii video cu port dual.

  • Sisteme de I/E - Adaptoare video8

    Unul din porturi este similar celui de la memoriile convenionale i este utilizat de UCP sau dectre controlerul grafic pentru actualizarea imaginilor. Al doilea port este un port cu acces serial i esteutilizat pentru accesul la datele video n vederea remprosptrii imaginii de pe ecran. Astfel,actualizarea memoriei i remprosptarea ecranului se pot realiza n paralel. n cazul memoriei cu portdual, este necesar un circuit RAMDAC extern, deoarece portul serial nu poate fi direcionat ctrecontrolerul grafic.

    6.4.3. Caracteristici ale memoriei video

    Una din caracteristicile memoriei video care influeneaz performanele adaptorului video estedimensiunea memoriei. Aceast dimensiune determin rezoluia posibil a ecranului i numrul deculori care pot fi afiate. Dimensiunea memoriei necesare pentru afiarea unei imagini se calculeaz nfuncie de numrul de culori disponibile pentru un pixel. Se poate utiliza urmtoarea formul:

    D = (RX RY Bpp) / 8 (6.1)unde D este dimensiunea memoriei, RX este numrul de pixeli pe orizontal, RY este numrul de pixelipe vertical, iar Bpp este numrul biilor de culoare alocai unui pixel. Dimensiunea rezult n octei.

    Dimensiunea memoriei necesare este de obicei mai mare dect cea rezultat n urma calcululuide mai sus. Din cauza organizrii memoriei i a modului de acces, adaptoarele sunt disponibile deobicei cu memorii de 2, 4, 8, 16, 32, 64 sau 128 MB, o parte a memoriei fiind neutilizat. Tehnologiade memorie numit MDRAM (Multibank DRAM) permite utilizarea unor bancuri de memorie dedimensiune mai redus, astfel nct se pot realiza adaptoare cu o dimensiune mai flexibil a memorieivideo.

    Un alt motiv pentru care este necesar o memorie video cu dimensiunea mai mare este canumite adaptoare video, mai ales acceleratoarele 3D, utilizeaz o zon de memorie pentru diferitefuncii grafice, pe lng zona utilizat pentru pstrarea imaginilor. Adaptoarele utilizeaz metodediferite pentru alocarea memoriei necesare acestor funcii. Unele utilizeaz zona rmas liber dupalocarea bufferului de cadre, n timp ce altele aloc n prealabil memoria pentru calcule i apoilimiteaz dimensiunea bufferului de cadre n mod corespunztor.

    Tabelul 6.2 prezint dimensiunea n MB a memoriei video necesare pentru unele combinaiide rezoluii i numr de culori. n paranteze se indic configuraia standard de memorie necesarpentru combinaia respectiv, pentru organizarea convenional a memoriei video. Aceste dimensiuninu se refer la acceleratoarele 3D, pentru aplicaiile 3D necesarul de memorie fiind mult mai ridicat.

    Tabelul 6.2. Dimensiunea memoriei video (n MB) n funcie de rezoluia ecranului i numrul de biirezervai pentru culoarea unui pixel.

    Rezoluie 8 bii 16 bii 24 bii 32 bii

    800 x 600 0,46 (1 MB) 0,92 (1 MB) 1,37 (2 MB) 1,83 (2 MB)

    1024 x 768 0,75 (1 MB) 1,50 (2 MB) 2,25 (4 MB) 3,00 (4 MB)

    1280 x 1024 1,25 (2 MB) 2,50 (4 MB) 3,75 (4 MB) 5,00 (8 MB)

    1600 x 1200 1,83 (2 MB) 3,66 (4 MB) 5,49 (8 MB) 7,32 (8 MB)

    1920 x 1440 2,63 (4 MB) 5,27 (8 MB) 7,91 (8 MB) 10,54 (16 MB)

    2048 x 1536 3,00 (4 MB) 6,00 (8 MB) 9,00 (16 MB) 12,00 (16 MB)

    Pe lng dimensiunea memoriei video, este important i rata de transfer a memoriei. Rata detransfer maxim este numit i lime de band a memoriei. Aceast rat este influenat de tehnologiamemoriei video i de timpul de acces al memoriei. Rata de transfer determin performanele globaleale adaptorului i este unul din factorii care condiioneaz utilizarea unor rezoluii nalte i a unuinumr mare de culori la rate de remprosptare acceptabile.

    Exist mai multe funcii ale adaptorului video care trebuie s partajeze limea de band amemoriei video. Principala funcie i cel mai important utilizator al limii de band este funcia deremprosptare a ecranului. O valoare aproximativ a ratei de transfer necesare pentru remprosptareaecranului poate fi calculat prin nmulirea valorilor urmtoare: numrul de pixeli pe orizontal,numrul de pixeli pe vertical, numrul de octei rezervai pentru un pixel i frecvena de

  • Sisteme de I/E - Adaptoare video 9

    remprosptare a ecranului. Exist i alte funcii ale adaptorului video care necesit o anumit limede band pentru accesul la memoria video. Pe lng circuitele de remprosptare, memoria trebuie sfie accesat i de UCP, ca i de controlerul grafic. De exemplu, UCP poate solicita transferul uneiferestre sau a unei imagini din memoria principal n memoria video. De asemenea, controlerul graficpoate crea o nou fereastr sau poate transfera o fereastr existent. S-a constatat c este necesar ca unprocent cuprins ntre 30% i 50% din limea de band a memoriei video s fie rezervat pentru altefuncii dect cea de remprosptare a ecranului.

    Tabelul 6.3 indic, n MB/s, rata de transfer minim de care trebuie s dispun memoria videopentru diferite combinaii de rezoluii i frecvene de remprosptare. Valorile corespund modului cu16,7 milioane culori cu pixeli compactai i se refer doar la funcia de remprosptare a ecranului.

    Tabelul 6.3. Rata de transfer (n MB/s) minim necesar pentru memoria video n funcie de rezoluiaecranului i frecvena de remprosptare n modul cu 16,7 milioane culori.

    Rezoluie 60 Hz 75 Hz 85 Hz 100 Hz

    800 x 600 86,4 108,0 122,4 144,0

    1024 x 768 141,6 176,9 200,5 235,9

    1280 x 1024 235,9 294,9 334,2 393,2

    1600 x 1200 345,6 432,0 489,6 576,0

    1920 x 1440 497,6 622,1 705,0 829,4

    2048 x 1536 566,2 707,8 802,1 943,7

    Memoriile SDRAM (Synchronous DRAM) de 64 de bii funcionnd la 133 MHz (numite iPC133) au o rat de transfer maxim teoretic de 800 MB/s, ns rata lor de transfer medie este multmai redus, de 320-400 MB/s. Performane superioare sunt asigurate de memoriile DDR SDRAM(Double Data Rate SDRAM). Astfel, memoriile DDR-266 (PC2100), care funcioneaz cu un semnalde ceas de 133 MHz, au o rat de transfer maxim teoretic de 2128 MB/s, iar rata lor de transfermedie poate fi n jur de 1200 MB/s. Se observ c memoriile DDR-266 asigur performanelenecesare pentru memoria video, inclusiv la rezoluii mari. n plus, sunt disponibile memorii DDR carefuncioneaz la frecvene mai ridicate, de 150 MHz (DDR-300, PC2400) sau 166 MHz (DDR-333,PC2700), cu rate de transfer maxime teoretice de 2400 MB/s, respectiv 2656 MB/s.

    Pentru a satisface cerinele ratelor de transfer, adaptoarele video utilizeaz magistrale culime mare ntre setul de circuite video, memoria video i circuitul RAMDAC. Astfel, majoritateaadaptoarelor video actuale utilizeaz magistrale de 128 de bii, dar exist i adaptoare video cuperformane ridicate care utilizeaz magistrale de 256 de bii. Pentru a utiliza n mod eficient acestemagistrale, lungimea cuvntului de memorie trebuie s fie suficient de mare.

    De obicei, adaptoarele video la care magistrala intern este de 64 de bii utilizeaz bancuri dememorie de 32 de bii. Dac un asemenea adaptor conine, de exemplu, o memorie video de 1 MB,aceasta este organizat ca 256 KB 32 bii. Deci, cu doar 1 MB de memorie, adaptorul video de 64 debii poate accesa memoria numai pe 32 de bii, ceea ce njumtete rata de transfer potenial. Dacse extinde memoria video la 2 MB, ea va fi organizat ca 256 KB 64 bii, astfel nct aceasta va fiutilizat n mod eficient. Similar, adaptoarele video cu magistrale interne de 128 de bii necesit deobicei o memorie de cel puin 4 MB, n caz contrar performanele lor fiind njumtite.

    6.4.4. Tehnologii pentru memoria video

    Deoarece memoria video este o component important a adaptorului video i implicit antregului sistem, au fost elaborate n mod special noi tehnologii cu scopul mbuntiriiperformanelor acestei memorii. Ulterior, unele din aceste tehnologii au fost utilizate i pentrumemoria principal. Unele tehnologii mbuntesc performanele prin creterea ratei de transfer,altele prin utilizarea unui port dual, iar altele prin ambele metode. n aceast seciune se prezint uneletehnologii utilizate pentru memoria video, cu meniunea c memoriile MDRAM i SGRAM nu maisunt utilizate pentru noile adaptoare video, dar pot fi ntlnite la unele adaptoare existente.

  • Sisteme de I/E - Adaptoare video10

    6.4.4.1. MDRAM

    Tehnologia memoriei MDRAM (Multibank DRAM) a fost elaborat de firma MoSys. Aceastaeste o memorie DRAM sincron cu port unic, cu o arhitectur diferit de memoria SDRAMconvenional. Memoria MDRAM nu este compatibil la nivel de funcii i de interfa cu memoriilestandardizate de organizaia JEDEC (Joint Electron Device Engineering Council), cum sunt memoriileSDRAM sau DDR SDRAM. n timp ce memoriile video convenionale utilizeaz un singur bloc dememorie pentru bufferul de cadre, memoria MDRAM mparte acest bloc n bancuri multiple de cte32 KB, care pot fi accesate independent. Fiecare banc de memorie conine 256 de linii de cte 32 decuvinte, un cuvnt fiind de 32 de bii. O memorie MDRAM cu capacitatea de 1 MB, de exemplu,conine 32 de bancuri de memorie.

    Fiecare banc de memorie dispune de linii de date (linii de bii) cu lungime redus, astfel ncttimpul de prencrcare este foarte redus. Bancurile de memorie conin cte o memorie cache cucapacitatea unei linii a matricii (32 de cuvinte), aceasta fiind o memorie static SRAM. Bancurile dememorie sunt conectate la o magistral intern. Datele se transfer pe ambele fronturi ale semnaluluide ceas.

    Decodificatoarele de adres sunt plasate local n fiecare banc de memorie. Un set de doubancuri de memorie partajeaz aceleai decodificatoare, adresa acestor bancuri diferind doar prin bitulcel mai puin semnificativ. Adresele bancurilor de memorie sunt pstrate n registre de identificare alebancurilor, astfel nct ele pot fi modificate. Prin reprogramarea acestor registre, este posibil ca pn la8 memorii MDRAM conectate la aceeai magistral s fie plasate n acelai spaiu de adrese, frutilizarea unei logici externe de decodificare a adreselor.

    Memoria MDRAM are mai multe avantaje. Astfel, datele pot fi citite din linia activ a matriciiunui banc de memorie cu o ntrziere redus, timpul de acces la linie fiind mult redus. De asemenea,diferitele accesuri la memorie pot fi ntreesute ntre mai multe bancuri de memorie, astfel c ele se potsuprapune. Aceasta permite i prencrcarea unui banc de memorie n timpul citirii unui alt banc,timpul de prencrcare fiind ascuns. n acest fel, performanele memoriei compuse din celule DRAMsunt apropiate de cele ale memoriei SRAM.

    Un alt avantaj al memorie MDRAM este posibilitatea unei organizri mai flexibile amemoriei, datorit bancurilor multiple cu dimensiune redus. Dac sunt echipate cu memoriiconvenionale, adaptoarele video pot fi realizate cu dimensiuni ale memoriei video de 1 MB, 2 MB, 4MB etc., iar o parte a memoriei nu este utilizat. De exemplu, pentru rezoluia de 1024768 pixeli nmodul cu 16,7 milioane culori este necesar o memorie cu dimensiunea de 2,25 MB, astfel c trebuies se prevad o memorie de 4 MB. Cu memoria MDRAM aceast restricie este eliminat, iaradaptorul poate fi echipat cu o memorie avnd dimensiunea necesar.

    Dei costul memoriei MDRAM a fost mai redus dect cel al memoriilor cu port dual, memoriaMDRAM nu a avut succesul ateptat, datorit incompatibilitii interfeei acestei memorii custandardele acceptate de industrie.

    6.4.4.2. SGRAM

    Memoria SGRAM (Synchronous Graphics RAM) este o memorie sincron cu o interfacompatibil la nivel de pini cu memoria SDRAM, avnd ns funcii suplimentare prevzute specialpentru creterea performanelor acceleratoarelor grafice. Memoria SGRAM este cu port unic, dar areperformane care sunt apropiate de cele ale memoriilor cu port dual. Aceasta se obine prinposibilitatea activrii simultane a dou pagini de memorie, prin care se simuleaz o memorie cu portdual.

    Funciile speciale ale memorie SGRAM cuprind operaii de scriere mascate, care permitmodificarea datelor selectate printr-o singur o operaie n locul unei secvene de operaii de citire,actualizare i scriere. O alt funcie este cea de scriere pe blocuri, care permite actualizarea maieficient a datelor reprezentnd imaginile grafice.

    Au fost elaborate i memorii SGRAM bazate pe memoria MDRAM a firmei MoSys. Acesteadispuneau de o interfa compatibil cu specificaiile organizaiei JEDEC, beneficiind n acelai timp

  • Sisteme de I/E - Adaptoare video 11

    de avantajul ntrzierilor mai reduse ale memoriei MDRAM i de funciile suplimentare ale memorieiSGRAM.

    Memoria SGRAM a fost utilizat de obicei ca memorie video n adaptoarele cu performaneridicate, dar care nu necesitau rezoluii foarte mari.

    6.4.4.3. DDR SDRAMMemoria DDR SDRAM (Double Data Rate SDRAM) este n prezent cea mai utilizat

    memorie pentru adaptoarele video. Numele acestei memorii provine de la tehnica transferrii dateloratt pe frontul cresctor, ct i pe cel descresctor al semnalului de ceas. De exemplu, la o frecven amagistralei de 133 MHz memoria DDR SDRAM execut transferurile de date la o frecven de 266MHz. Aceast tehnic crete semnificativ eficiena magistralei de memorie pentru transferurile dedate. Transferul datelor pe ambele fronturi ale semnalului de ceas este utilizat i de alte tipuri dememorii, ca MDRAM sau Rambus DRAM.

    Variante brevetate ale memoriei DDR au nceput s apar n anul 1997, acestea fiind utilizatepentru diferite plci video cu performane ridicate. Pornind de la aceste variante, au fost elaboratespecificaii deschise, care nu sunt protejate prin licene. Aceste specificaii au fost standardizate deorganizaia JEDEC n anul 2000. Primele module de memorie DDR SDRAM bazate pe acestespecificaii, funcionnd la o frecven de 133 MHz, au fost disponibile n cantiti limitate la sfritulanului 2000, dar distribuia pe scar mai larg a nceput n anul 2001. Ulterior, au aprut module dememorie DDR SDRAM care funcioneaz la frecvene de 150 MHz, 166 MHz sau 200 MHz.

    Memoria DDR SDRAM are o interfa care transfer dou cuvinte de date la pinii de I/E nfiecare ciclu de ceas. Un acces de citire sau scriere const dintr-un singur transfer de date de 2n bii cumatricea intern DRAM pe timpul unui ciclu de ceas i dou transferuri de date de n bii cu pinii deI/E, fiecare pe timpul unei jumti a ciclului de ceas. Astfel, magistrala intern de date are o limedubl fa de cea indicat de interfaa extern. De obicei, circuitele de memorie DDR SDRAM conin4 bancuri de memorie.

    Un semnal de strob bidirecional de date (DQS) este transmis extern mpreun cu datele pentrua fi utilizat de ctre receptorul datelor. Semnalul DQS este transmis de memoria DDR SDRAM ntimpul operaiilor de citire i de ctre controlerul de memorie n timpul operaiilor de scriere. Strobulde date permite ajustarea variaiilor de propagare ale semnalului de ceas, a capacitanei i a lungimiide interconectare n sistemele cu module multiple de memorie.

    Accesurile de citire i scriere se efectueaz n mod exploziv. Ele ncep de la o locaie selectati continu pentru un numr programabil de locaii. Lungimea transferului exploziv poate fiprogramat la 2, 4 sau 8 locaii. Accesurile ncep cu memorarea unei comenzi de activare, urmat apoide o comand de citire sau de scriere. Biii de adres memorai cu o comand de activare sunt utilizaipentru a selecta bancul de memorie i linia care va fi accesat. Biii de adres memorai cu o comandde citire sau scriere sunt utilizai pentru a selecta bancul de memorie i coloana de nceput pentruaccesul n mod exploziv. Poate fi validat o funcie de prencrcare automat pentru prencrcarealiniei, iniiat la sfritul accesului n mod exploziv.

    Memoria DDR SDRAM se utilizeaz pentru dou tipuri de aplicaii: bazate pe module ibazate pe componente (punct la punct). Aplicaiile bazate pe module se refer n general la sisteme dememorie principal; modulele conin mai multe circuite de memorie, n funcie de organizareamemoriei (de obicei, 4 sau 8). De exemplu, n cazul organizrii 8, sunt necesare 8 circuite dememorie pentru un cuvnt de 64 de bii. Viteza sistemelor bazate pe module este limitat de ncrcareamagistralei i de lungimea liniilor. n cazul aplicaiilor punct la punct, cum sunt adaptoarele video,sunt posibile viteze mai ridicate. Pentru aceste aplicaii, se utilizeaz de obicei circuite de memorie cuorganizarea 16 sau 32.

    Ca i memoria SDRAM convenional, memoria DDR SDRAM utilizeaz module DIMM(Dual In-line Memory Module), dar cele dou tipuri de module nu sunt compatibile ntre ele. De aceea,memoria DDR SDRAM poate fi utilizat doar pe plcile de baz cu socluri adecvate. Principaladiferen este creterea numrului de pini de la 168 la 184. Circuitele de memorie DDR SDRAMfuncioneaz la o tensiune de 2,5 V, spre deosebire de circuitele de memorie SDRAM, carefuncioneaz la 3,3 V. Puterea consumat este redus astfel cu 25%.

  • Sisteme de I/E - Adaptoare video12

    De obicei, diferitele tipuri de memorii DDR SDRAM sunt denumite dup rata lor de transferla vrf. De exemplu, memoria DDR SDRAM care utilizeaz un semnal de ceas de 100 MHz, cu o ratmaxim de transfer de 1600 MB/s, este numit PC1600. Similar, versiunea la 133 MHz este numitPC2100. De fapt, aceste memorii ar fi trebuit denumite PC200 i PC266, care era i intenia iniial.Denumirile au fost schimbate deoarece pentru memoria Rambus s-au utilizat nume similare, deexemplu, PC800 pentru o memorie Rambus care funcioneaz la 800 MHz. n standardul JEDEC suntutilizate alte denumiri pentru memoria DDR SDRAM, bazate pe frecvena de funcionare. Deexemplu, DDR-200 indic o memorie DDR SDRAM cu transferuri de date la 200 MHz (avnd unsemnal de ceas de 100 MHz), memorie care este echivalent cu PC1600.

    Tabelul 6.4 indic principalele tipuri de memorii DDR SDRAM, frecvena de ceas i rata detransfer maxim teoretic a acestora.

    Tabelul 6.4. Tipuri de memorii DDR SDRAM.Tip de memorie Frecvena de ceas Rata de transfer maxim

    DDR-200 (PC1600) 100 MHz 2 x 100 x 8 = 1600 MB/s

    DDR-266 (PC2100) 133 MHz 2 x 133 x 8 = 2128 MB/s

    DDR-300 (PC2400) 150 MHz 2 x 150 x 8 = 2400 MB/s

    DDR-333 (PC2700) 166 MHz 2 x 166 x 8 = 2656 MB/s

    DDR-400 (PC3200) 200 MHz 2 x 200 x 8 = 3200 MB/s

    Organizaia JEDEC a finalizat n anul 2002 standardul pentru a doua generaie a memorieiDDR SDRAM, numit DDR II SDRAM. Eantioane de memorii DDR II SDRAM sunt disponibile dinanul 2002, fiind de ateptat ca producia de mas s nceap n anul 2003. Frecvena iniial atransferurilor de date pentru memoriile DDR II va fi de 400 MHz pentru aplicaiile bazate pe module(DDR-400, PC3200) i 800 MHz pentru aplicaiile punct la punct (DDR-800, PC6400). SpecificaiileDDR II descriu i moduri de transfer DDR mbuntite la 400 MHz i 533 MHz, cu rate de transfermaxime de 3,2 GB/s, respectiv 4,26 GB/s. Circuitele de memorie DDR II SDRAM vor funciona la otensiune de 1,8 V.

    Organizaia JEDEC a iniiat dezvoltarea generaiei care va urma dup memoria DDR IISDRAM, numit n prezent DDR III SDRAM. Este de ateptat ca aceast generaie s apar n cursulanilor 2004 sau 2005.

    6.4.4.4. Rambus DRAM

    La nceputul anilor 90, Firma Rambus Inc. a dezvoltat o tehnologie de memorie numitRambus DRAM (RDRAM), care utilizeaz transmiterea unor pachete de adrese i date pe o magistralspecial. Aceast tehnologie a fost implementat iniial pe sistemul de jocuri Nintendo Ultra-64,ajungndu-se la frecvene de ceas de 250 MHz i rate de transfer de 500 MB/s. Firma Intel a sprijinitfirma Rambus pentru dezvoltarea unei variante a tehnologiei RDRAM pentru calculatoarele personale,aceast variant fiind numit Direct Rambus DRAM (DRDRAM). Frecvena de ceas a fost crescut la400 MHz, rata de transfer ajungnd la 1,6 GB/s. Cu mbuntirile aduse arhitecturii magistralei ifacilitile de gestiune a puterii de alimentare, Intel se atepta ca DRDRAM s devin principalatehnologie de memorie. Tehnologia Rambus este ns soluia cea mai controversat de memorie cuvitez ridicat.

    n timp ce magistralele actuale de memorie sunt de 64 bii, memoriile RDRAM i DRDRAMutilizeaz o magistral de 8, respectiv 16 bii. Aceast magistral, numit canal Rambus, este utilizatnu numai ca un set de conexiuni, ci i ca un canal inteligent de comunicaie. Dei limea magistraleieste redus, rata de transfer este de pn la 500 MB/s pentru memoria RDRAM i de pn la 1,6 GB/spentru memoria DRDRAM. Prin utilizarea mai multor canale Rambus, rata de transfer poate ficrescut. Pentru memoriile Rambus se utilizeaz un modul de memorie diferit, denumit Rambus In-line Memory Module (RIMM).

  • Sisteme de I/E - Adaptoare video 13

    n continuare ne referim la memoria Direct Rambus DRAM, pentru simplitate aceastmemorie fiind numit Rambus DRAM sau RDRAM. Tabelul 6.5 prezint diferite tipuri de memoriiRambus DRAM.

    Tabelul 6.5. Tipuri de memorii Rambus DRAM i rata de transfer maxim a acestora.Tip de memorie Frecvena de ceas Rata de transfer maxim

    PC600 300 MHz 600 Mbii/s/pin, 1,2 GB/s/canal

    PC700 355,5 MHz 711 Mbii/s/pin, 1,42 GB/s/canal

    PC800 400 MHz 800 Mbii/s/pin, 1,6 GB/s/canal

    Elementele principale ale unui sistem de memorie Rambus sunt prezentate n Figura 6.7.Aceste elemente sunt canalul Rambus, controlerul de memorie, interfaa Rambus i circuiteleRDRAM.

    Figura 6.7. Elementele principale ale unui sistem de memorie Rambus.

    Canalul Rambus este o magistral de 16 bii, care poate transfera date la frecvene de pn la800 MHz. Fiecare canal Rambus permite conectarea a pn la 32 de circuite de memorie RDRAM.Spre deosebire de circuitele de memorie SDRAM, care sunt conectate n paralel la magistrala de 64 debii, circuitele de memorie RDRAM sunt conectate serial pe magistrala Rambus. Dac exist mai muliconectori pentru modulele RIMM, fiecare trebuie s fie echipat cu module de memorie, n caz contrarcanalul fiind ntrerupt. n conectorii care nu sunt utilizai se pot insera module de continuitate(CRIMM Continuity RIMM) n locul modulelor de memorie.

    Controlerul de memorie este singurul dispozitiv care genereaz cereri de acces la memorie.Fiecare controler are propria interfa Rambus. Aceast interfa convertete nivelele de tensiune deamplitudine redus utilizate de canalul Rambus la nivelele CMOS utilizate de circuitele de memorie.

    Interfaa Rambus implementeaz protocolul Rambus utilizat pentru transferurile de date.Aceast interfa este implementat att n controlerul de memorie, ct i n circuitele RDRAM de pecanalul Rambus.

    Circuitele RDRAM sunt memorii DRAM CMOS care conin circuitul de interfa Rambus.Aceste circuite sunt disponibile n configuraii de 16 i 18, configuraiile 18 coninnd cte un bitn plus pentru fiecare octet. Acest bit este definit i utilizat n modul specificat de proiectantulsistemului.

    Protocolul electric utilizat pentru semnalele transmise pe canalul Rambus este numit RSL(Rambus Signaling Level). Aceast tehnologie, introdus de firma Rambus n anul 1992, permiteafuncionarea la o frecven de 500 MHz, fiind transferat un singur bit de informaie pe fiecare front alsemnalului de ceas. Ulterior, protocolul RSL a fost mbuntit pentru a funciona la 800 MHz pe uncanal cu module (interconectate prin conectori) i la 1066 MHz pe un canal scurt, format din circuitelipite pe placa de baz, fr conectori.

    n anul 2000, firma Rambus a introdus un nou protocol electric, numit QRSL (Quad RambusSignaling Level), care permite o rat a datelor de 1,6 GB/s pe pin, care este dublul ratei permise detehnologia RSL. Prin protocolul QRSL se transmit doi bii de informaie pe fiecare front al semnaluluide ceas, utiliznd patru nivele de tensiune. Aceast tehnologie permite un numr maxim de 4 circuiteinterconectate i poate fi utilizat pentru aplicaii grafice i de reea. n acelai an, a fost introdus onou tehnologie numit Quad Serializer/Deserializer (SerDes). Aceasta este o interfa punct la punctproiectat pentru interconectarea a dou circuite prin conectori, permind o vitez de 3,125 Gbii/s.

  • Sisteme de I/E - Adaptoare video14

    Au existat numeroase controverse legate de tehnologia Rambus DRAM i decizia firmei Intelde a sprijini aceast tehnologie n locul DDR SDRAM. De la introducerea sa n 1999, tehnologiaRambus a fost copleit de diferite probleme tehnice, costuri de producie ridicate i performanediscutabile. Chiar dac problemele tehnice au fost rezolvate ntre timp i costurile au fost micorate,acestea sunt nc mult mai ridicate dect cele ale memoriei DDR SDRAM. Circuitele de memorieRambus sunt mai complexe dect cele DDR SDRAM, deoarece ele trebuie s conin o interfaRambus, iar magistrala lor intern de date are o lime mai mare. Setul de circuite pentru memoriaRambus DRAM este de asemenea mai complex, deoarece trebuie s conin un controler de memorieadecvat. Datele transmise de procesor trebuie multiplexate de setul de circuite pentru a fi transmise pecanalul Rambus de 16 bii, iar datele recepionate pe canal trebuie demultiplexate nainte de a fitransmise la procesor. Placa de baz este i ea mai complex, deoarece frecvenele mai ridicatenecesit lungimi reduse ale conexiunilor i o ecranare suplimentar pentru evitarea interferenelorelectromagnetice.

    Tehnologia utilizat de memoria Rambus DRAM reprezint proprietatea firmei Rambus,astfel nct productorii trebuie s achite o tax acestei firme. Pe de alt parte, DDR SDRAM este unstandard industrial deschis, fiind astfel mai atractiv pentru productori i utilizatori. Costurile mairidicate reprezint principalul motiv pentru rspndirea mai redus a memoriei Rambus DRAMcomparativ cu DDR SDRAM.

    Folosind tehnologia Rambus, este relativ simpl dublarea ratei de transfer disponibile prinadugarea unui nou canal Rambus, cu costuri suplimentare reduse. Prin utilizarea a dou canale, ratade transfer la vrf poate ajunge la 3,2 GB/s. n cazul memoriei DDR SDRAM, chiar dac este posibilutilizarea unei configuraii cu dou canale, problema principal este numrul de pini mai ridicatnecesar pentru o magistral de 8 octei, spre deosebire de canalul Rambus de 2 octei. Numrul de piniar crete semnificativ, necesitnd eventual chiar straturi suplimentare ale plcii de baz pentru un aldoilea canal de memorie. Aceasta ar crete costul plcii de baz n mod semnificativ. Pe de alt partens, propunerea DDR II specific rate de transfer la vrf de cel puin 3,2 GB/s prin utilizarea unuisingur canal de memorie.

    Circuitele Rambus DRAM conin un numr mai mare de bancuri de memorie comparativ cucircuitele DDR SDRAM. De exemplu, circuitele Rambus DRAM de 128 i 256 Mbii conin 32 debancuri fa de 4 la circuitele DDR SDRAM. Aceasta nseamn c sunt deschise mai multe pagini norice moment i rata de succes este mai ridicat. Numrul mare de pagini deschise poate reduce latenamedie a modulelor de memorie Rambus, chiar dac latena iniial este mai ridicat din cauza utilizriiunui protocol bazat pe transmiterea de pachete.

    Nu se poate indica n mod clar care din tehnologiile Rambus DRAM sau DDR SDRAMreprezint o soluie mai avantajoas. n multe cazuri, performanele memoriei DDR SDRAM ledepesc pe cele ale memoriei Rambus DRAM, dar n medii cu un numr mare de fire de execuie i oncrcare ridicat a magistralei, ambele memorii reprezint competitori importani. Totui, pentrumajoritatea aplicaiilor DDR SDRAM reprezint o soluie mai atractiv dect Rambus DRAM, celpuin n prezent i n viitorul apropiat.

    6.4.4.5. VRAM

    Comparativ cu memoriile prezentate anterior, care sunt cu port unic, memoria VRAM (VideoRAM) este cu port dual, permind dou accesuri simultane la memorie. Un port este dedicat accesuluide ctre UCP sau controlerul grafic pentru actualizarea imaginilor. Al doilea port este destinatcontrolerului CRT pentru afiarea i remprosptarea imaginii de pe ecran. Memoria VRAM asigur,n general, performane superioare fa de memoriile cu porturi unice, avnd ns un cost mai ridicat.

    6.4.4.6. WRAM

    Memoria WRAM (Window RAM) este o variant modificat a memoriei VRAM, care asiguratt o cretere a performanelor, ct i o reducere a costului. Memoria WRAM este de asemenea cuport dual, avnd o rat de transfer cu aproximativ 25% mai mare fa de memoria VRAM. n plus,memoria WRAM include faciliti suplimentare pentru a permite transferuri mai eficiente la operaiile

  • Sisteme de I/E - Adaptoare video 15

    grafice frecvente, cum sunt umplerea unor blocuri sau afiarea unor texte. Costul mai redus almemoriei WRAM se datoreaz eliminrii unor funcii ale memoriei VRAM, care sunt utilizate mai rar.Un adaptor prevzut cu o memorie WRAM i un circuit RAMDAC suficient de rapid asigur rezoluiiridicate, de cel puin 16001200 pixeli.

    Memoria Window RAM nu are legtur cu Microsoft Windows.

    6.5. Acceleratoare grafice

    La introducerea sistemelor de operare prevzute cu o interfa grafic, toate operaiile pentrudesenarea imaginilor grafice pe ecran trebuiau efectuate de UCP, ceea ce reducea viteza calculatoruluin mod semnificativ. De aceea, productorii seturilor de circuite video au adugat acestora circuitespecializate destinate accelerrii funciilor grafice, care s elibereze UCP de sarcina execuiei acestorfuncii. Adaptoarele care sunt dotate cu circuite de accelerare pentru aplicaiile grafice sunt cunoscutesub numele de acceleratoare grafice. Primele acceleratoare grafice au fost numite adaptoare AVGA(Accelerated VGA), acceleratoare Windows sau acceleratoare GUI (Graphical User Interface).Urmtoarele acceleratoare grafice au fost numite acceleratoare 2D, pentru a le deosebi deacceleratoarele 3D aprute ulterior.

    Circuitele de accelerare ale diferiilor productori nu trebuie s fie compatibile ntre ele,legtura cu sistemul de operare i cu utilizatorul realizndu-se prin intermediul unui driver furnizat deproductor. Acest driver realizeaz legtura cu interfaa pentru programele de aplicaii i transfercomenzile grafice ctre circuitele de accelerare. Un asemenea driver poate mbunti n modsemnificativ performanele sistemului de afiare.

    Elementul principal al unui accelerator grafic este procesorul pentru operaii grafice 2D. Acestprocesor funcioneaz sub controlul UCP, dar independent de acesta. Funciile grafice 2D obinuiterealizate de acest procesor sunt transferurile pe bii i pe blocuri (funcii Bliter), trasarea de linii,umplerea unor suprafee i adugarea culorii.

    Funcia de transfer pe bii i pe blocuri se utilizeaz pentru crearea i mutarea unor blocurirectangulare de date, de exemplu, a unor ferestre pe ecran. Viteza de execuie a acestei funcii esteesenial pentru performanele grafice ale sistemului, circuitele de accelerare fiind deseori proiectatespecial pentru a executa n mod eficient funciile grafice puse la dispoziie de sistemul de operare. Prinfuncia de trasare a liniilor se poate trasa un vector ntre dou puncte arbitrare de pe ecran, n toatemodurile de afiare color. O alt funcie oferit de acceleratoarele grafice este cea de umplere a unorsuprafee sau poligoane cu o culoare sau un model specificat. Adugarea culorii reprezintposibilitatea de a prelua o reprezentare monocrom prin puncte i de a plasa imaginea pe ecran n oricepoziie, utiliznd culoarea selectat anterior i o anumit culoare de fond.

    Odat cu rspndirea aplicaiilor multimedia, acceleratoarele grafice au fost extinse cu funciide accelerare audio i video. Aceste acceleratoare multimedia permit decodificarea prin hardware airurilor de date audio, scalarea imaginilor video dup direciile x i y, sau conversia semnalului videodigital n semnalele RGB necesare pentru afiarea pe ecranul calculatorului. Anumite acceleratoarepermit i decomprimarea prin hardware a imaginilor video reprezentate n diferite formate.

    6.6. Acceleratoare 3D

    6.6.1. Necesitatea acceleratoarelor 3D

    Deoarece ecranul monitorului este bidimensional, imaginile afiate de calculator trebuie s fiede asemenea bidimensionale. Pentru a lucra cu obiecte 3D, este necesar ca ele s fie convertite nimagini 2D. Aceasta necesit prelucrri speciale i o mare putere de calcul. Pentru a crea imagini 3Dnu este necesar un accelerator grafic 3D, dar cantitatea mare de calcule necesare pentru translatareaimaginilor 3D n imagini 2D ntr-un mod realist reduce viteza calculatorului n mod semnificativ.Utilizarea unui accelerator 3D permite programelor afiarea imaginilor virtuale 3D cu un nivel dedetaliere care nu este posibil cu un accelerator grafic 2D.

  • Sisteme de I/E - Adaptoare video16

    Motivul pentru care acceleratoarele 3D au devenit rspndite este c programele utilizeaz dince n ce mai multe reprezentri 3D. Pentru a obine mai mult realism, imagini grafice mai detaliate iviteze mai mari n programe ca jocuri de aciune, simulatoare de zbor, programe grafice i aplicaiiCAD, trebuie efectuate mai multe prelucrri 3D ntr-o perioad mai scurt de timp.

    6.6.2. Imagini 3D

    Imaginile 3D sunt mult mai complexe dect imaginile 2D din cauza cantitii mai mari deinformaii care trebuie utilizate pentru a crea imagini 3D realiste. n plus, trebuie utilizate mai multeoperaii matematice pentru a converti aceste imagini 3D n imagini care pot fi afiate pe ecran.

    Imaginile 3D sunt gestionate de calculator utiliznd modele abstracte. Un obiect estereprezentat mai nti ca un set de puncte definite prin coordonatele de-a lungul axelor x, y i z. Acestepuncte definesc poziia vrfurilor obiectului n spaiul tridimensional. Dac se conecteaz vrfurileobiectului prin linii, se obin suprafee care pot fi umplute cu o anumit culoare sau textur. De obicei,fiecare obiect 3D este compus dintr-un numr mare de mici triunghiuri (sau alte poligoane) caredescriu suprafaa sa.

    Grafica 3D animat necesit execuia unei serii continue de calcule geometrice care definescpoziia obiectelor n spaiul 3D. n mod obinuit, calculele geometrice care manipuleaz vrfuriletriunghiurilor sunt executate de UCP, deoarece operaiile n virgul mobil necesare pot fi executate nmod eficient de UCP. n acelai timp, acceleratorul grafic trebuie s converteasc aceste triunghiuri nsuprafee solide, ceea ce implic calcule intense.

    n lumea real, obiectele interacioneaz unele cu altele. Ele se suprapun, creeaz umbre,reflect lumina i apar mai ntunecate atunci cnd sunt la distan. Exist ecuaii matematice foartecomplexe care se utilizeaz pentru a determina dac un obiect este vizibil ntr-o scen dintr-un unghidat, care ar trebui s fie culoarea acestuia etc. Pentru un joc 3D, n scopul obinerii unei animaiiuniforme, aceste calcule trebuie refcute de 20-30 de ori pe secund. Acceleratoarele 3D sunt adaptatepentru a executa aceste calcule care solicit n mod intens resursele sistemului.

    n cazul imaginilor 3D, pe lng cele trei componente de culoare, pentru fiecare pixel trebuiememorat i o a patra valoare. Aceasta se numete valoare alfa i indic gradul de transparen (sauopacitate) al pixelului n imaginea final. O alt informaie care trebuie memorat este adncimea nspaiu sau coordonata z a fiecrui pixel. Acceleratorul 3D determin valoarea z a pixelilor obiectelordintr-un anumit plan i le afieaz numai pe cele cu o valoare z mai mic. Informaia de adncime apixelilor este memorat ntr-un buffer separat din memoria video, numit buffer z. Numrul de biialocai fiecrui pixel din bufferul z determin numrul unitilor de adncime disponibile n cadrulunei scene. n mod normal, n bufferul z trebuie s se aloce cel puin 16 bii pentru fiecare pixel.

    De fiecare dat cnd imaginea de pe ecran este actualizat, trebuie s se recalculeze culoareai adncimea fiecrui pixel de pe ecranul 2D. Aceasta se realizeaz prin aplicarea diferitelor calcule3D asupra scenei, ntr-un proces numit redare (rendering). Prin acest proces se completeaz toatepunctele de pe suprafaa obiectului care a fost memorat n prealabil doar ca un set de vrfuri. Astfel, peecranul monitorului se va desena un obiect solid cu efecte 3D. Prin eliberarea UCP de operaia deredare, acceleratorul 3D permite UCP s dedice o putere de calcul mai mare altor funcii, rezultnd ofrecven de cadre crescut i o calitate mbuntit a imaginii.

    6.6.3. Operaii 3D

    Exist diferite tipuri de operaii care sunt executate n cadrul prelucrrilor 3D. Aceste operaiisunt executate n dou etape. Prima etap este cea geometric i cuprinde operaii cum sunt decuparea,transformarea i iluminarea. Operaiile din aceast etap sunt intensive din punct de vedere alcalculelor i sunt executate de procesorul sistemului. A doua etap este cea de redare, cuprinzndoperaii cum sunt umbrirea, maparea texturilor cu adugarea efectului de perspectiv, filtrareatexturilor, nceoarea, mixajul alfa i eliminarea efectului zimat. Operaiile din aceast etap necesitun spaiu de memorie ridicat i sunt executate de ctre acceleratorul grafic.

    Cele mai frecvente operaii 3D sunt descrise n continuare.

  • Sisteme de I/E - Adaptoare video 17

    Decuparea. Aceast operaie determin partea unui obiect care este vizibil pe ecran idecupeaz prile pe care utilizatorul nu le poate vedea. Astfel se economisete timp, deoarece prileobiectelor care nu sunt afiate pe ecran sunt ignorate.

    Iluminarea. Obiectele din lumea real sunt modelate de sursele de lumin din cadrul scenei.Efectele de lumin creeaz nuane ale culorilor, reflexii de lumin, umbre i alte efecte care trebuieadugate obiectelor pe baza poziiei relative a acestora fa de poziia surselor de lumin.

    Umbrirea Gourad. Acesta este cel mai utilizat algoritm pentru reprezentarea obiectelor 3Dpe un ecran 2D, permind realizarea unei umbriri realiste a suprafeelor 3D. Adugarea umbrelorpermite ca forma obiectului s fie mai bine definit. Umbrirea Gourad se realizeaz prin citireainformaiilor de culoare ale vrfurilor triunghiurilor sau poligoanelor care descriu un obiect 3D iinterpolarea intensitilor pentru cele trei componente de culoare ntre diferitele vrfuri.

    Maparea texturilor. n cazul graficii 3D, obiectele pot avea diferite detalii ale suprafeelorsub forma unor texturi, cum sunt diferite esene de lemn. Adugarea acestor detalii la poligoanele carereprezint suprafeele obiectelor se numete maparea texturilor. Aceast mapare const n ncrcareadintr-o hart de bii a unuia sau a mai multor elemente de textur, numite texeli, combinarea acestorai scrierea pixelului rezultat n memoria video.

    Realismul obiectelor sau scenelor 3D crete prin aplicarea texturilor bidimensionale asuprapoligoanelor 3D. Exist diferite tipuri de mapare a texturilor care sunt utilizate de diferiteleacceleratoare grafice. Cea mai simpl metod este aplicarea unei singure texturi unui obiect. Un gradmai mare de realism se poate obine printr-o metod de multi-texturare, prin care se aplic ocombinaie de texturi unui obiect. Aceast combinaie poate cuprinde texturi transparente sau texturicare reprezint anumite rugoziti ale unei suprafee. Texturile pot necesita un spaiu ridicat nmemorie, motiv pentru care se utilizeaz compresia lor. Interfeele API pentru grafica 3D pun ladispoziie diferite procedee de compresie a texturilor.

    Texturile cu care sunt mapate obiectele trebuie corectate pentru a realiza efectul deperspectiv. Prin aceast corecie se determin modul n care se modific perspectiva fa de obiectelescenei pe msur ce unghiul din care acestea sunt vizualizate se schimb.

    Filtrarea texturilor. Acest procedeu este utilizat pentru reducerea unor efecte nedorite carepot apare n procesul de mapare a texturilor, n special la creterea gradului de detaliere a acestora. Deexemplu, la maparea texturilor unele console de jocuri i procesoare grafice utilizeaz elementul detextur cel mai apropiat pentru adugarea unor noi pixeli n imaginea de pe ecran. Aceasta poateconduce la apariia efectului zimat n imaginea generat. Prin utilizarea diferitelor metode de filtrareacest efect este redus, culoarea unui nou pixel fiind determinat printr-o interpolare ntre culorile maimultor texeli din textura original.

    Una din metodele de filtrare utilizate este filtrarea biliniar. Prin aceast metod, pentrudeterminarea culorii pixelului corespunztor unui anumit texel se utilizeaz media ponderat a patrutexeli cei mai apropiai de texelul respectiv. Se elimin astfel modificrile brute de culoare din cadrulunei texturi.

    O alt metod care se utilizeaz la scenele dinamice este filtrarea triliniar. n cazul acestorscene, pe msur ce un obiect texturat se ndeprteaz de punctul de vizualizare, dimensiunea texturiitrebuie redus n acelai timp cu micorarea obiectului. Pentru a se evita unele efecte nedoriteintroduse de procesul de scalare a texturii, acceleratoarele 3D permit pstrarea n memoria video a maimultor variante ale aceleiai texturi, acestea avnd diferite nivele de detaliere. Utiliznd aceastfacilitate, cunoscut sub numele de mip mapping, acceleratorul 3D poate determina cu uurintextura care trebuie aplicat asupra unei suprafee aflat la o anumit distan de punctul devizualizare, fr a fi necesare prelucrri suplimentare. Filtrarea triliniar se realizeaz prin combinareafacilitii amintite cu filtrarea biliniar. n procesul de obinere a unei noi variante a texturii, seutilizeaz dou variante existente cu nivele diferite de detaliere, crora li se aplic separat filtrareabiliniar. Apoi, cele dou texturi sunt mixate ntre ele, obinndu-se o nou textur filtrat. Calitateatexturilor obinute n acest fel este mai ridicat.

    nceoarea. Acesta este un procedeu utilizat la scenele de exterior. Procedeul este utilizat ndou scopuri. n primul rnd, prin estomparea gradat a obiectelor scena va apare mai realist, fiind

  • Sisteme de I/E - Adaptoare video18

    creat iluzia unor obiecte aflate la distan. La distan, obiectele apar neclare datorit umezeliiatmosferice sau impuritilor. n al doilea rnd, procedeul permite ca prelucrarea 3D s fie executatmai rapid, deoarece obiectele de la distan care sunt nceoate pot fi prezentate cu mai puine detalii.

    Mixajul alfa. Anumite obiecte din lumea real sunt transparente sau semitransparente.Procedeul de mixaj alfa este utilizat pentru a produce efectul de transparen al unor obiecte carecompun o scen, de exemplu, al unor ferestre. Acelai procedeu poate fi utilizat i pentru a reprezentafumul sau ceaa, cu un nivel de realism mai nalt dect prin alte procedee.

    Eliminarea efectului zimat. Liniile oblice sau cele curbe care sunt afiate pe ecran, cum suntmuchiile cu contururi neregulate ale obiectelor, trebuie s fie aproximate prin combinarea unorsegmente verticale cu segmente orizontale. Rezultatul este apariia efectului zimat, care este maipronunat la rezoluii mai reduse. Procedura de eliminare a acestui efect, cunoscut sub numele deanti-aliasing, const n colorarea pixelilor din imediata apropiere a contururilor folosind culoarea defond mixat gradat cu cea a obiectului. Se realizeaz deci o tranziie mai gradat ntre cele dou culori,rezultatul fiind o oarecare reducere a claritii contururilor. Aspectul obiectelor va fi ns mai naturaldect n cazul unor contururi neregulate.

    Figura 6.8 prezint modul n care se efectueaz maparea texturilor.

    Figura 6.8. Operaiile executate pentru maparea texturilor.

    Exist urmtoarele etape de baz implicate n prelucrarea texturilor.

    1. nainte de utilizarea lor, texturile sunt citite de pe unitatea de disc i sunt ncrcate n memoriasistemului.

    2. Atunci cnd o scen trebuie s utilizeze o textur, aceasta este citit din memoria sistemuluide ctre UCP.

    3. Asupra texturii se aplic apoi transformri de iluminare i de perspectiv. Rezultatele acestoroperaii sunt scrise apoi n memoria sistemului.

    4. Controlerul grafic citete texturile transformate din memoria sistemului i le scrie n memoriavideo. Aceste date trebuie s treac prin magistrala PCI pentru a ajunge la controlerul grafic.

    5. Controlerul grafic citete n continuare texturile i informaiile 2D de culoare din memoriavideo. Aceste date sunt utilizate pentru redarea unui cadru care se poate afia pe ecranulmonitorului. Rezultatul este scris napoi n memoria video. Circuitul RAMDAC al adaptoruluivideo citete cadrul i l convertete n semnale analogice care controleaz monitorul.

    Exist mai multe probleme legate de modul n care sunt gestionate texturile:

  • Sisteme de I/E - Adaptoare video 19

    n primul rnd, texturile trebuie pstrate att n memoria sistemului, ct i n memoria video.Aceste cpii redundante determin o utilizare ineficient a resurselor de memorie.

    n al doilea rnd, pstrarea, chiar temporar, a texturilor n memoria video limiteazdimensiunea acestora. Exist o cerere pentru texturi din ce n ce mai detaliate, ceea ce obligproductorii s echipeze adaptoarele lor cu o memorie video de dimensiuni mari.

    n sfrit, rata de transfer a magistralei PCI limiteaz viteza cu care texturile pot fi transferatectre subsistemul grafic. Mai mult, n sistemele tipice mai multe dispozitive de I/E conectatela magistrala PCI trebuie s partajeze rata de transfer disponibil. Introducerea altordispozitive de vitez ridicat creeaz o congestie pe magistrala PCI care poate limitaperformanele graficii 3D.

    Aplicaiile utilizeaz diferite strategii pentru a compensa limitrile calculatoarelor actuale. Seutilizeaz diferii algoritmi pentru a determina texturile care trebuie pstrate n memoria video i celecare trebuie pstrate n memoria sistemului. n mod tipic, aplicaiile dedic o parte a memoriei videoca spaiu pentru schimbarea texturilor, n timp ce memoria video rmas conine texturi utilizate nmod frecvent. Depinznd de numrul de texturi utilizate ntr-un cadru, algoritmul poate varia proporiamemoriei alocate pentru schimbarea texturilor i a memoriei pentru texturile utilizate frecvent. Dacacceleratorul 3D poate executa maparea texturilor numai din memoria video, algoritmul ncearc sncarce n prealabil n memoria video texturile necesare pentru fiecare cadru sau scen. Fr aceastncrcare prealabil, utilizatorii vor observa o pauz n timp ce se ncarc textura necesar dinmemoria sistemului n memoria video sau de pe disc n memoria sistemului.

    6.7. Interfaa AGP

    6.7.1. Principiul interfeei AGP

    AGP (Accelerated Graphics Port) este o interconexiune pentru acceleratoarele grafice dinsistemele utilizate pentru aplicaii grafice 3D i pentru redarea secvenelor video. Utilizatoriicalculatoarelor PC pot beneficia prin utilizarea interfeei AGP de aplicaii grafice i video disponibilen prealabil numai pe staiile de lucru performante.

    Noile aplicaii grafice 3D impun cerine riguroase pentru calculatoarele PC, care cuprindnecesitatea unor calcule geometrice mai rapide i a unor texturi mai detaliate. Cu toate c procesoareleperformante sunt adaptate pentru a executa calcule geometrice complexe ntr-un mod eficient, iargeneraia actual de controlere grafice poate implementa o mare varietate de efecte grafice,dimensiunea crescut a texturilor a devenit o problem important. Exist aplicaii grafice careutilizeaz peste 20 MB pentru o singur textur. Memoria video poate fi extins pentru a satisfaceaceste cerine, dar o asemenea soluie este costisitoare.

    A doua problem este rata de transfer a magistralei PCI. Controlerele grafice trebuie sncarce n prealabil texturile din memoria sistemului n memoria video. Deoarece dimensiuneatexturilor a crescut, magistrala PCI a nceput s devin congestionat. Problema este chiar mai acut ncazul aplicaiilor care implic redarea secvenelor video.

    Soluia firmei Intel la aceste probleme a fost realizarea interfeei AGP ca o conexiune separatde magistrala sistem. Aceast interfa mbuntete performanele sistemului punnd la dispoziie ocale rapid ntre controlerul grafic i memoria sistemului. Aceast cale permite controlerului grafic srealizeze accesul la texturi direct n memoria sistemului n timpul redrii imaginilor grafice, n loc sle ncarce n prealabil n memoria video local (Figura 6.9).

    Setul de circuite AGP realizeaz legtura dintre procesor (cuprinznd memoria sa cache L2integrat), memoria sistemului, adaptorul grafic i magistrala PCI. Sistemul de operare poate rezervan mod dinamic segmente din memoria sistemului pentru a fi utilizate de controlerul grafic. Aceastmemorie este numit memorie AGP. Ca urmare, controlerul grafic poate pstra un numr mai mic detexturi n memoria video local. Aceasta permite rezoluii mai mari ale ecranului i elimin restriciade dimensiune pe care memoria video local o impune asupra texturilor. Astfel, aplicaiile pot utilizatexturi de dimensiuni mult mai mari, mbuntind realismul i calitatea imaginilor.

  • Sisteme de I/E - Adaptoare video20

    Figura 6.9. Schema unui sistem cu o interfa AGP.

    n plus, noua cale elimin de pe magistrala PCI traficul intens necesar transferului datelorgrafice i video. Descrcarea datelor grafice i a celor video de pe magistrala PCI permite conectareaaltor dispozitive rapide pe magistral.

    AGP este un port i nu o magistral, deoarece la o magistral se pot conecta mai multedispozitive, n timp ce AGP este o conexiune punct la punct ntre adaptorul video i procesorulsistemului.

    AGP este o interfa de 64 bii care poate funciona la frecvena magistralei sistem, spredeosebire de magistrala PCI care funcioneaz, de obicei, la jumtatea acestei frecvene. Aceastanseamn c la o plac de baz obinuit, interfaa AGP funcioneaz la 66 MHz n locul frecvenei de33 MHz a magistralei PCI. Astfel, rata de transfer se dubleaz. n plus, interfaa are avantajul c nutrebuie s partajeze rata de transfer cu alte dispozitive PCI.

    Specificaiile AGP se bazeaz pe extensia de 64 de bii a specificaiilor PCI 2.1, care descriu iun mod de lucru cu o frecven de 66 MHz, a crei implementare este ns destul de rar. InterfaaAGP este implementat cu un conector similar celui utilizat pentru magistrala PCI, cu 32 de liniipentru adrese i date multiplexate. Exist 8 linii suplimentare pentru adresarea secundar, descris nseciunea urmtoare. Plcile de baz AGP au un singur conector de extensie pentru adaptorul videoAGP, avnd de obicei cu un conector PCI mai puin.

    Exist mai multe cerine pentru ca un sistem s poat utiliza avantajele interfeei AGP:

    O plac de baz cu un set de circuite AGP; Un sistem de operare cu drivere pentru interfaa AGP (Windows 98/Me/2000/XP); Drivere speciale ale adaptorului video pentru interfaa AGP, care pot utiliza modurile de

    transfer mbuntite ale acesteia.

    6.7.2. Moduri de transfer a datelor

    Pe lng dublarea frecvenei magistralei, specificaiile AGP definesc un mod de transfer 2X,care utilizeaz un protocol special pentru a permite transmiterea unui volum dublu de date la aceeaifrecven de ceas. Creterea vitezei este obinut prin transferarea datelor att pe frontul cresctor, cti pe cel descresctor al semnalului de ceas de 66 MHz. Rezultatul este c performanele se dubleazdin nou, rata de transfer la vrf fiind de 528 MB/s. Rata de transfer efectiv variaz la diferite sistemei aplicaii, dar de obicei sistemele pot atinge n jur de 50-80% din valorile la vrf n cazultransferurilor prelungite.

  • Sisteme de I/E - Adaptoare video 21

    Pentru creterea intervalului de timp n care poate fi meninut rata de transfer la vrf, interfaaAGP utilizeaz dou tehnici: transferuri n modul pipeline i tehnica de adresare secundar(sideband addressing). n modul pipeline, accesul la memorie i la magistral pentru o cerere n sesuprapune cu generarea cererilor urmtoare (n+1, n+2 etc.). Prin utilizarea tehnicii pipeline, rata detransfer susinut poate ajunge la 80% din rata de transfer la vrf.

    Dei att interfaa AGP, ct i magistrala PCI permit transferuri n mod exploziv (elementemultiple de date transferate n mod continuu ca rspuns la o singur cerere), asemenea transferuri nuschimb natura de tip non-pipeline a magistralei PCI. Spre deosebire de interfaa AGP, n cazulmagistralei PCI, cererea n+1 nu poate ncepe pn cnd nu se termin transferul de date al cererii n(Figura 6.10).

    Figura 6.10. Accesul la memorie n cazul magistralei PCI i a interfeei AGP.

    Pentru adresarea secundar, interfaa AGP utilizeaz 8 linii suplimentare de adrese. Acesteapermit controlerului grafic s transmit noi adrese i cereri simultan cu transferurile de date pe liniileprincipale de adrese/date ca urmare a cererilor anterioare. Se pot transmite astfel pn la 32 decomenzi succesive.

    Dup specificaiile iniiale ale interfeei AGP, Intel a elaborat specificaiile 2.0 ale acesteiinterfee. Acestea definesc un nou mod de transfer 4X, care permite patru transferuri de date n fiecareciclu de ceas. Rata de transfer maxim teoretic ntre adaptorul grafic i memoria sistemului ajungeastfel la 1,05 GB/s. Aceast rat de transfer este superioar dect cea a memoriei SDRAM de 100MHz, care este de 800 MB/s. De aceea, pentru a se putea beneficia de rata de transfer a interfeei AGP4X, este necesar o memorie SDRAM de 133 MHz, DDR SDRAM sau Rambus DRAM. Versiunea2.0 a interfeei AGP funcioneaz la tensiunea de 1,5 V, spre deosebire de versiunea iniial, carefunciona la 3,3 V.

    Versiunea curent a specificaiilor AGP este 3.0. Aceast versiune introduce un mod detransfer 8X, cu o rat de transfer maxim de 2,1 GB/s, fiind posibil i utilizarea modului 4X. Lainterfaa AGP 3.0 s-a pstrat acelai conector, dar au fost adugate unele semnale suplimentare i unnou protocol electric al semnalelor. Tensiunea de alimentare este de 0,8 V. Compatibilitatea cuversiunea 2.0 se poate asigura cu o plac de baz universal, care permite utilizarea ambelorprotocoale electrice, 2.0 i 3.0.

    6.7.3. Maparea memoriei AGP

    Memoria AGP const din zone alocate n mod dinamic ale memoriei sistemului, pe carecontrolerul grafic le poate accesa rapid, ca i cum aceste zone ar fi situate n memoria video. Viteza deacces se datoreaz setului de circuite AGP al sistemului, set necesar pentru utilizarea interfeei AGP.Aceste circuite translateaz adresele, permind controlerului grafic i programelor acestuia s observeun spaiu contiguu n memoria sistem, chiar dac acest spaiu este distribuit n blocuri de dimensiunimici. Astfel, controlerul grafic poate accesa structuri de date cu dimensiuni mari, de exemplu o hartde bii a unei texturi, ca o singur entitate. Circuitul ncorporat este numit GART (Graphics AddressRemapping Table), cu funcii similare circuitelor de paginare din UCP.

    Adresele virtuale liniare ale procesorului sunt translatate de circuitele sale de paginare nadrese fizice. Aceste adrese fizice sunt utilizate pentru accesul la memoria sistemului. Accesurile UCPla memoria video i memoria AGP utilizeaz aceleai adrese ca i cele utilizate de controlerul grafic.De aceea, sistemul de operare seteaz circuitele de paginare ale UCP astfel nct s nu translatezeadresele virtuale n adrese fizice pentru aceste memorii.

  • Sisteme de I/E - Adaptoare video22

    Pentru accesul la memoria AGP, controlerul grafic i UCP utilizeaz o fereastr contigu deciva MB. Circuitul GART translateaz ns adresele din aceast fereastr n diferite adrese, eventualdisjuncte, ale unor pagini de 4 KB din memoria sistem. Dispozitivele PCI care realizeaz accesul lafereastra memoriei AGP (de exemplu, pentru capturarea imaginilor video) utilizeaz de asemeneacircuitul GART.

    6.7.4. Avantajele interfeei AGP

    Principalele avantaje ale interfeei AGP sunt rezumate n continuare.

    Rat de transfer mai ridicat. Rata de transfer la vrf este de 2-4 ori mai mare dect cea amagistralei PCI, datorit modului pipeline, adresrii secundare i a transferurilor de date careau loc att pe frontul cresctor, ct i pe cel descresctor al semnalului de ceas.

    Redarea direct a texturilor din memoria sistemului. Interfaa AGP permite accesul direct cuvitez ridicat la memoria sistemului de ctre controlerul grafic, n locul ncrcrii prealabile atexturilor n memoria video local.

    Grafic de calitate mai ridicat. Se pot utiliza texturi cu dimensiuni foarte mari i nivele dedetaliere ridicate.

    Costuri mai reduse. Prin minimizarea necesarului de memorie video, interfaa AGP contribuiela reducerea costurilor noilor sisteme.

    Congestie mai redus pe magistrala PCI. Interfaa AGP funcioneaz concurent cu iindependent de cele mai multe tranzacii de pe magistrala PCI.

    6.8. Preluarea i redarea imaginilor video

    Aplicaiile multimedia pot necesita mixarea sau afiarea imaginilor video pe ecranulcalculatorului. O alt aplicaie este reprezentat de video-conferinele realizate n direct. Termenul deimagine video semnific o imagine de calitate TV static sau n micare, a crei surs este o anten, uncablu, disc CD-ROM, disc video, videocasetofon sau videocamer.

    n seciunile urmtoare se prezint modul n care calculatorul are acces la diferitele sursevideo i modul n care se prelucreaz, se memoreaz i se afieaz imaginile video, separat sausimultan cu alte imagini generate de adaptorul video.

    6.8.1. Preluarea imaginilor video

    Pentru preluarea imaginilor video de la o surs video, este necesar o plac special, numitde obicei plac de capturare video, i un program adecvat. Semnalele preluate de aceast plac suntsemnale analogice, de exemplu, un semnal TV video complex sau un semnal S-video de la ovideocamer. Aceste semnale conin informaii de sincronizare, de culoare i de luminozitate, i eletrebuie convertite ntr-o reprezentare digital. (n cazul unui semnal S-video, numit i Y-C video,semnalele de luminozitate i culoare sunt transmise separat, deci nu sunt mixate ca n cazul unuisemnal video complex.) Dac imaginea provine de la un disc CD-ROM, ea este deja reprezentatdigital i de obicei este comprimat pentru a economisi spaiu. Conversia din reprezentarea analogicn cea digital este realizat cu ajutorul unui decodor video, care eantioneaz semnalul video analogici l transform ntr-o reprezentare digital.

    n cazul sistemului de televiziune PAL (Phase Alternating Line), din cele 625 de linii ale unuicadru 50 de linii nu conin informaii despre imagine, astfel nct ele nu sunt digitizate. Plcile decapturare video digitizeaz de obicei 576 de linii, fiecare linie fiind divizat n 768 de pixeli, deoarecese utilizeaz un factor de form de 4:3. Se utilizeaz explorarea ntreesut, frecvena semicadrelorfiind de 50 Hz, rezultnd o rat de remprosptare de 25 cadre pe secund. n cazul sistemului NTSC(National Television Standards Committee), utilizat n SUA i Japonia, un cadru conine 525 de linii,frecvena semicadrelor fiind de 60 Hz, care este frecvena curentului alternativ n aceste ri. Rata de

  • Sisteme de I/E - Adaptoare video 23

    remprosptare este deci de 30 cadre pe secund. Din cele 525 de linii sunt digitizate de obicei 480,fiecare linie fiind divizat n 640 de pixeli, ceea ce corespunde rezoluiei VGA.

    Industria video utilizeaz o reprezentare digital diferit de reprezentarea RGB. Una dinreprezentrile utilizate este numit reprezentare YUV. n locul componentelor R, G i B, se reprezintinformaii despre luminozitatea imaginii (luminana sau intensitatea culorii) prin componenta Y, idespre culoarea imaginii (crominana sau diferena de culoare) prin componentele U i V. Unul dinmotivele pentru care se utilizeaz reprezentarea YUV n locul reprezentrii RGB este legat deconceptul de eantionare a subculorii. Deoarece ochiul uman sesizeaz mai greu schimbarea culorilorla imaginile dinamice, dar este sensibil la detalii, componentele de intensitate i de culoare suntseparate i sunt prelucrate independent. Frecvenele de eantionare pentru componentele UV (decrominan) sunt alese astfel nct s fie mai mici dect frecvena pentru componenta Y (deluminan). Eantionarea subculorii se refer deci la utilizarea unor frecvene de eantionare pentrucomponentele de culoare care sunt mai mici dect frecvena de eantionare pentru componenta deintensitate.

    Calitatea imaginii digitizate depinde de frecvena de eantionare i este specificat de obiceiprintr-o serie de trei cifre, de exemplu 4:4:4, 4:2:2 sau 4:1:1. Aceste cifre indic frecvenele deeantionare pentru componentele Y, U, respectiv V. Astfel, seria 4:2:2 indic faptul c poriunile deculoare ale semnalelor sunt eantionate cu o frecven de dou ori mai mic dect frecvena poriuniide intensitate. Prin digitizarea unui semnal n reprezentarea YUV 4:2:2 sunt necesari 16 bii (2 octei)n locul a 24 de bii (3 octei) necesari n cazul reprezentrii RGB n modul cu 16,7 milioane culori.

    Pentru afiarea unei imagini pe ecran, datele digitale YUV trebuie convertite ntr-oreprezentare digital RGB utilizat de adaptorul video. Aceast conversie se numete conversiaspaiului culorilor. Dup decodificare i conversia spaiului culorilor, datele pot fi transmise ctrememoria video pentru afiare.

    Pentru a se obine o conversie acceptabil a unui semnal video complex ntr-un semnal digital,raportul de eantionare minim trebuie s fie de 4:2:2. Pentru a calcula volumul datelor digitale YUV,considerm c un cadru conine 576 768 pixeli. Dac se utilizeaz reprezentarea YUV 4:2:2, suntnecesari doi octei pentru fiecare pixel, deci pentru un cadru sunt necesari 576 768 2 = 864 KB.Pentru fiecare secund de imagine (25 de cadre) este necesar un volum de informaii de 864 KB 25= 21.600 KB = 21,1 MB.

    Pentru a reduce volumul datelor, exist dou posibiliti. Prima este de a se captura o imaginede dimensiune mai redus i de a se utiliza frecvene de eantionare mai mici, reducnd astfel calitateai rezoluia imaginii. A doua posibilitate const n comprimarea datelor video. Plcile de capturarevideo pot conine un codor care realizeaz compresia n timp real a datelor capturate i un decodorpentru decompresia datelor n vederea redrii imaginilor video. Compresia i decompresia pot firealizate i prin program.

    Figura 6.11. Plac de capturare video.

  • Sisteme de I/E - Adaptoare video24

    Plcile de capturare video sunt echipate cu un numr de conectori de intrare i de ieire(Figura 6.11). Exist dou tipuri de semnale video mai des utilizate, mpreun cu conectoriicorespunztori. Semnalul video complex este utilizat la plcile mai puin pretenioase, n timp cesemnalul S-video este utilizat de echipamentele de calitate mai ridicat. Majoritatea plcilor dispun decel puin un conector de intrare pentru cele dou tipuri de semnale, pentru a se putea utiliza orice sursvideo. Pentru editrile complexe este util existena mai multor conectori de intrare. Plcile decapturare video pot conine i un tuner TV. Conectorii de ieire permit nregistrarea secvenelor editatepe band sau redarea acestora pe monitor sau pe un aparat TV. Plcile mai simple pot necesita unadaptor grafic separat sau un tuner TV pentru aceste faciliti.

    6.8.2. Combinarea imaginilor video i a celor grafice

    Dac imaginea video generat de o anumit surs trebuie s fie afiat direct pe ecranulcalculatorului i nu trebuie capturat sau memorat, dimensiunea imaginii i rata datelor nu reprezinto problem, deoarece datele sunt utilizate pe msur ce sunt create. Este necesar ns combinareaimaginilor video cu cele grafice. Apar urmtoarele probleme:

    Monitorul calculatorului lucreaz cu frecvene de baleiere diferite i de obicei nu utilizeazntreeserea.

    Este necesar mrirea sau micorarea imaginii video la dimensiunile unei ferestre de pe ecran,pentru a combina imaginile grafice i cele video.

    Imaginea video este n format YUV, iar imaginea de pe ecran este n format RGB.Aceste probleme sunt rezolvate cu ajutorul procesoarelor video. Procesorul video poate fi

    integrat n adaptorul video sau se poate afla pe o plac separat. Dac este necesar redarea imaginilorcomprimate din fiiere AVI (Audio-Video Interleaved) i nu este nevoie de capturarea imaginilortransmise n direct, se pot utiliza acceleratoare video care au integrate funcii de procesor video.Procesorul video sau acceleratorul video execut urmtoarele funcii:

    1. Conversia datelor YUV n reprezentarea RGB prin procesul de conversie a spaiului culorilor.2. Scalarea imaginii pentru a o aduce la dimensiunea dorit. Unele sisteme elimin pixeli la

    micorarea imaginii sau dubleaz pixeli la mrirea acesteia. Aceast metod este mai puinrecomandat, deoarece reduce calitatea i nu permite scalarea continu a imaginii.Procesoarele video mai performante utilizeaz metoda interpolrii pixelilor. La scalarea uneiimagini, se creeaz noi pixeli care reprezint media celor mai apropiai pixeli. Aceast metodcreeaz imagini mai clare i permite o scalare continu.

    3. Plasarea imaginii convertite i scalate n memoria video a adaptorului i modificarea poziieiferestrei. Poziia ferestrei pe ecran poate fi specificat prin coordonatele x i y ale pixelilor sauprin codul culorii din memoria video. Procesorul video poate detecta un pixel cu o anumitculoare i poate nlocui acel pixel cu pixelul imaginii video. De asemenea, unele procesoarevideo pot mixa dou imagini video de la surse diferite pentru a crea un efect de transparen(mixajul alfa).

    Pentru a combina imaginile video cu imaginile grafice ale calculatorului se pot utilizaurmtoarele metode:

    Mixarea analogic; Ataarea prin convertorul digital-analogic (DAC); Bufferul de cadre partajat; Metoda software.

    n Figura 6.12 se ilustreaz aceste metode.

  • Sisteme de I/E - Adaptoare video 25

    Figura 6.12. Metode de combinare a imaginilor video i a celor grafice.

    n cazul metodei de mixare analogic, imaginea video nu se convertete n date digitale, ci serealizeaz mixarea semnalelor n domeniul analogic. Aceast metod necesit ns o sincronizare acelor dou semnale analogice i nu permite prelucrarea imaginilor video, de exemplu, scalarea lor.

    A doua metod const n adugarea datelor video la intrarea circuitului RAMDAC, ndomeniul digital. n acest scop se poate utiliza interfaa i conectorul VAFC (VESA Advanced FeatureConnector). Datele video sunt memorate ntr-o memorie special, numit buffer de cadre sau memoriaconversiei de baleiaj (nu este aceeai cu memoria video), de unde sunt preluai pixelii de dateprovenii de la imaginea video pentru a fi combinai cu pixelii din memoria video. Deoarece datelevideo nu trec prin memoria video, rata de transfer a acestei memorii nu este un element critic, iarcontrolerul adaptorului video nu trebuie s realizeze afiarea simultan a mai multor tipuri de date (can cazul n care imaginile video n modul cu 16,7 milioane culori ar trebui afiate pe ecran n modul cu256 de culori).

    Deoarece imaginile video digitale i imaginile grafice sunt combinate la intrarea circuituluiDAC, metoda care utilizeaz interfaa VAFC se mai numete metoda atarii prin DAC. Aceastmetod, ca i mixarea analogic, este o soluie costisitoare, deoarece necesit un subsistem videocomplet independent. Componenta cu costul cel mai ridicat este bufferul de cadre, care pstreazimaginea digitizat nainte de a fi trimis spre portul de intrare al circuitului DAC.

    Deoarece performanele memoriilor video s-au mbuntit, imaginea video poate fi plasatdirect n memoria video a adaptorului. Astfel se elimin necesitatea unui buffer de cadre separat icostul va fi mai redus. n plus, aceast metod permite ca UCP i controlerul video s aib acces lamemoria video, pentru a realiza capturri i prelucrri ale imaginilor. Aceast soluie reprezintmetoda bufferului de cadre partajat (SFB - Shared Frame Buffer).

    Aceast metod este utilizat mai ales atunci cnd procesorul video este integrat n controleruladaptorului video sau este conectat la acesta. Costul acestei soluii este mult mai redus, dar problemacare apare este c se utilizeaz o memorie unic pentru actualizarea imaginilor grafice, actualizareaimaginilor video i remprosptarea ecranului. Metoda se poate utiliza doar pentru adaptoareleechipate cu o memorie VRAM sau WRAM, care sunt cu port dual.

    Dac procesorul video se afl pe o plac separat, se poate utiliza i n acest caz metodabufferului de cadre partajat, dar rata de transfer a datelor de la procesorul video la memoria video estecritic. Majoritatea procesoarelor video utilizeaz o magistral specializat, cum este magistrala VMC(VESA Media Channel).

    Metoda software se poate utiliza numai la nivelul aplicaiilor. Imaginile digitale video i celegrafice sunt combinate de programul de aplicaie nainte ca acestea s fie trimise spre ecranulcalculatorului. Aceast metod necesit un procesor rapid i un adaptor video rapid, dar nu necesitnici un hardware suplimentar.

    Figura 6.13 ilustreaz metoda bufferului de cadre partajat (SFB) i metoda atarii prin DACutilizate pentru afiarea unei imagini video ntr-o fereastr de pe ecranul calculatorului.

  • Sisteme de I/E - Adaptoare video26

    Figura 6.13. Metoda bufferului de cadre partajat i metoda atarii prin DAC.

    6. ADAPTOARE VIDEO6.1. Structura unui adaptor video6.1.1. Controlerul grafic6.1.2. BIOS-ul video6.1.3. Memoria video6.1.4. Circuitul RAMDAC6.1.5. Controlerul CRT6.1.6. Generatorul de ceas6.1.7. Portul video

    6.2. Funcionarea circuitului RAMDAC6.3. Reprezentarea culorilor6.4. Memoria video6.4.1. Amplasarea memoriei video6.4.2. Organizarea memoriei video6.4.3. Caracteristici ale memoriei video6.4.4. Tehnologii pentru memoria video6.4.4.1. MDRAM6.4.4.2. SGRAM6.4.4.3. DDR SDRAM6.4.4.4. Rambus DRAM6.4.4.5. VRAM6.4.4.6. WRAM

    6.5. Acceleratoare grafice6.6. Acceleratoare 3D6.6.1. Necesitatea acceleratoarelor 3D6.6.2. Imagini 3D6.6.3. Operaii 3D

    6.7. Interfaa AGP6.7.1. Principiul interfeei AGP6.7.2. Moduri de transfer a datelor6.7.3. Maparea memoriei AGP6.7.4. Avantajele interfeei AGP

    6.8. Preluarea i redarea imaginilor video6.8.1. Preluarea imaginilor video6.8.2. Combinarea imaginilor video i a celor gr