Sunteți pe pagina 1din 4

Dioiu Cristian

Gr 602
Interfaa AGP
Principiul de funcionare, transferul datelor, maparea memoriei i aspecte
software.
Necesitatea unor rate ridicate de transfer ntre procesor i subsistemul video a
condus la apariia magistralelor locale ale calculatoarelor personale, ncepnd
cu magistrala VL Bus (VESA Local Bus) i continund cu magistrala PCI
(Peripheral Component Interconnect). La fel ca n cazul magistralei ISA,
traficul pe magistrala PCI a calculatoarelor performante a devenit foarte
intens, la acest trafic contribuind adaptorul video, discul fix i alte
periferice care sunt conectate la aceeai magistral PCI. Pentru a se evita
saturarea magistralei PCI din cauza informaiilor video, Intel a creat o nou
interfa, proiectat special pentru subsistemul video. Aceast interfa este
numit AGP (Accelerated Graphics Port).
Principiul AGP
AGP este o nou interconexiune pentru acceleratoarele grafice din sistemele
bazate pe procesorul Pentium II, utilizate n special pentru grafic 3D i
redarea secvenelor video.
Procesorul Pentium II const dintr-un nucleu ncapsulat cu o memorie cache
integrat de nivel 2 (L2). Acest procesor dispune de asemenea de o arhitectur
Dual Independent Bus (DIB), n care dou magistrale independente conecteaz
nucleul cu memoria cache L2 i cu magistrala sistem a calculatorului. Faptul c
ambele magistrale pot funciona n acelai timp mbuntete semnificativ
performanele, deoarece procesorul poate executa instruciuni din memoria cache
L2 i simultan poate comunica cu dispozitive externe.
Noile aplicaii grafice 3D impun cerine riguroase calculatoarelor PC,
cuprinznd calcule geometrice mai rapide, o interpretare grafic mai sofisticat
i texturi mai detaliate. Cu toate c Pentium II este adaptat pentru a executa
multe calcule geometrice (cu o rat mai mare de triunghiuri pe secund), iar
generaia viitoare de controlere grafice poate implementa o mare varietate de
efecte grafice, dimensiunea crescut a texturilor a devenit o chestiune
important.
O problem o reprezint dimensiunea memoriei video utilizat de controlerele
grafice. Tipic, aceast memorie are o dimensiune de 2-4 MB. Totui, au nceput
s apar aplicaii grafice care utilizeaz peste 20 MB pentru o singur textur.
Memoria video poate fi extins pentru a satisface aceste cerine, dar o asemenea
soluie este foarte costisitoare.
A doua problem este rata de transfer permis de magistrala PCI. Controlerele
grafice trebuie s ncarce n prealabil texturile din memoria sistem n memoria
lor RAM local. Deoarece dimensiunea texturilor a crescut, magistrala PCI a
nceput s devin congestionat. Problema este chiar mai acut n cazul
aplicaiilor care implic redarea secvenelor video.
Tehnologia AGP mbuntete performanele sistemului punnd la dispoziie o
cale rapid ntre controlerul grafic i memoria sistem. Aceast cale permite
controlerului grafic s fac acces la texturi direct n memoria sistem n timpul
interpretrii grafice, n loc s le ncarce n prealabil n memoria video local
(vezi figura "Transferuri de date pentru maparea texturilor la interfaa AGP").
Sistemul de operare (SO) poate rezerva n mod dinamic segmente din memoria
sistem, pentru a fi utilizate de controlerul grafic. Aceast memorie este numit
memorie AGP. Ca urmare, controlerul grafic va trebui s pstreze un numr mai
mic de texturi n memoria video local, ceea ce permite rezoluii mai mari ale
ecranului, sau permite utilizarea unui buffer Z pentru o dimensiune dat a
ecranului. Aceast tehnic elimin i restricia de dimensiune pe care memoria
video local o impune texturilor, i deci permite aplicaiilor s utilizeze
texturi de dimensiuni mult mai mari, mbuntind realismul i calitatea
imaginilor.
AGP este un port, i nu o magistral, deoarece la o magistral se pot conecta
mai multe dispozitive, n timp ce AGP este o conxiune punct la punct doar ntre
adaptorul video i procesorul sistemului.
AGP este o interfa de 64 bii care poate funciona la 66 MHz. Specificaiile
AGP se bazeaz pe extensia de 64 bii a specificaiilor PCI 2.1, care descriu i
un mod de lucru cu o frecven de 66 MHz, care nu a fost implementat niciodat.
AGP este implementat cu un conector similar celui utilizat pentru magistrala
PCI, cu 32 de linii pentru adrese i date multiplexate. Exist 8 linii
suplimentare pentru adresarea secundar (sideband), descris ma jos. Plcile de
baz AGP au un singur conector de extensie pentru adaptorul video AGP i au, de
obicei, cu un conector PCI mai puin, n rest fiind similare cu plcile de baz
PCI.
Interfaa AGP funcioneaz la viteza maxim a magistralei sistem, spre deosebire
de magistrala PCI care funcioneaz la jumtatea acestei viteze. Aceasta
nseamn c la o plac de baz standard Pentium II, AGP funcioneaz la 66 MHz
n locul frecvenei de 33 MHz a magistralei PCI. Astfel se dubleaz rata de
transfer a portului. n locul limitei de 133 MB/s a magistralei PCI, n modul
su cu viteza minim AGP are o rat de transfer de 266 MB/s. n plus, are
avantajul c nu trebuie s partajeze rata de transfer cu alte dispozitive PCI.
Exist mai multe cerine pentru ca un sistem s poat utiliza avantajele AGP:
Plac de baz cu un set de circuite AGP (de exemplu setul 440LX al Intel pentru
procesorul Pentium II).
Sistem de operare cu drivere pentru noua interfa (Windows 98).
Drivere speciale ale adaptorului video pentru interfaa AGP, care pot utiliza
modul 2X al acesteia.
Moduri de transfer a datelor
Pe lng dublarea vitezei magistralei, AGP a definit un mod 2X care utilizeaz
un protocol special pentru a putea transmite unu volum dublu de date prin port
la aceeai frecven de ceas. Creterea de vitez este obinut prin
transferarea datelor att pe frontul cresctor, ct i pe cel descresctor al
ceasului de 66 MHz, i prin utilizarea modurilor de transfer amai eficiente.
Rezultatul este c performanele se dubleaz din nou, la o rat de transfer la
vrf de 533 MB/s. Rata de transfer efectiv variaz la diferite sisteme i
aplicaii, dar uzual sistemele pot atinge n jur de 50-80% din valorile la vrf
n cazul transferurilor prelungite. Exist i o intenie de a implementa un mod
4X (rat de transfer de 1,07 GB/s).
AGP pune la dispoziia controlerului grafic dou moduri pentru accesul direct al
texturilor n memoria sistem: modul pipeline i adresarea secundar (sideband
addressing). n cazul modului pipeline, AGP suprapune timpii de acces ai
memoriei i ai magistralei pentru o cerere n cu generarea cererilor urmtoare
(n+1, n+2 etc). n cazul magistralei PCI, cererea n+1 nu ncepe pn cnd nu se
termin transferul de date al cererii n (figura "Cereri suprapuse la interfaa
AGP").
Dei att AGP, ct i PCI permit transferuri n mod exploziv (elemente multiple
de date transferate n mod continuu ca rspuns la o singur cerere), asemenea
transferuri nu schimb natura de tip non-pipeline a magistralei PCI.
n cazul adresrii secundare, AGP utilizeaz 8 linii suplimentare de adrese care
permit controlerului grafic s transmit noi adrese i cereri simultan cu
transferurile de date pe liniile principale de adrese/date ca urmare a cererilor

anterioare (Figura 2).
Maparea memoriei AGP
Memoria AGP const din zone alocate n mod dinamic ale memoriei sistem, pe care
controlerul grafic le poate accesa rapid. Viteza de acces se datoreaz hardului
ncorporat n setul de circuite ale sistemului, set necesar pentru utilizarea
AGP. Acesta translateaz adresele, permind controlerului grafic i programelor
acestuia s observe un spaiu contiguu n memoria principal, dei paginile sunt
disjuncte. Astfel, controlerul grafic poate accesa structuri de date cu
dimensiuni mari, de exemplu o hart de bii a unei texturi , ca o singur
entitate. Hardul ncorporat este numit GART (Graphics Address Remapping Table),
cu funcii similare circuitelor de paginare din UCP.
Adresele virtuale liniare ale procesorului sunt translatate de circuitele sale
de paginare n adrese fizice. Aceste adrese fizice sunt utilizate pentru accesul
la memoria sistem. Accesurile UCP la memoria video i memoria AGP utilizeaz
aceleai adrese ca i cele utilizate de controlerul grafic. De aceea SO seteaz
circuitele de paginare ale UCP astfel nct s nu translateze adresele virtuale
n adrese fizice pentru aceste memorii.
Pentru accesul la memoria AGP, controlerul grafic i UCP utilizeaz o fereastr
contigu de civa MB. Circuitul GART translateaz ns adresele din aceast
fereastr n diferite adrese, eventual disjuncte, ale unor pagini de 4 KB din
memoria sistem. Dispozitivele PCI care fac acces la fereastra memoriei AGP (de
exemplu, pentru capturarea imaginilor video) utilizeaz de asemenea circuitul
GART.
Aspecte software
Aplicaiile care nu sunt scrise n mod special pentru AGP pot fi utilizate pe
sistemele AGP, dac sistemul de operare dispune de drivere i rutine interne
pentru aceast interfa. Totui, aplicaiile pot fi optimizate pentru AGP. n
ambele cazuri, avantajul important al AGP este numrul mai mare de texturi
detaliate, fr reducerea performanelor n timp real.
Calculatoarele PC cu interfa AGP pot fi de trei tipuri:
Tipul 1: Acest tip dispune de o interfa AGP, dar nu utilizeaz facilitile
interfeei legate de interpretarea texturilor, ci doar transfer datele mai
rapid dect un dispozitiv PCI. Sistemul nu utilizeaz posibilitile
transferului pipeline sau adresarea secundar.
Tipul 2: Acest tip interpreteaz texturile din memoria AGP, deci aplicaiile nu
trebuie s transfere texturile n memoria video. Circuitele pot avea
posibilitatea de interpretare a texturilor i din memoria video. Execuia poate
fi mai rapid dac texturile nu sunt interpretate din memoria video, datorit
conflictelor de acces la memoria video pentru scrierea pixelilor,
remprosptarea ecranului, citirea elementelor de textur i a valorilor Z.
Tipul 3: Acest tip are performanele cele mai bune atunci cnd interpretarea
texturilor se poate realiza att din memoria video, ct i din memoria AGP.
Texturile utilizate cel mai frecvent sau cele de dimensiuni mai mici pot fi
plasate n memoria video, n timp ce texturile de dimensiuni mai mari sau cele
utilizate mai puin frecvent pot fi plasate n memoria sistem. Astfel
conflictele dintre UCP i controlerul grafic vor fi minimizate.
Aplicaii DOS
Interpretarea texturilor direct din memoria sistem necesit utilizarea
circuitului GART din cauza tehnicii de adresare virtual utilizat n sistemele
de operare actuale. ns, pentru aplicaiile executate sub sisteme de operare
mai vechi (de exemplu, DOS) fr adresare virtual, circuitul GART este inutil.
Aplicaiile vechi executate sub DOS vor beneficia de viteza mai mare a AGP, dar
vor necesita anumite modificri ale driverelor pentru a activa posibilitatea
controlerului grafic de a accesa texturile direct n memoria sistem.
Aplicaii Windows
Aplicaiile Windows nemodificate pot beneficia de avantajele AGP, deoarece
versiunile noi ale SO i biblioteca DirectDraw au fost actualizate pentru a
permite utilizarea ei.
Pentru implementrile hardware curente, SO va marca memoria AGP (ca i o alt
memorie video) pentru a nu fi ncrcat n memoria cache, astfel nct nu va
exista o problem de coeren ntre memoriile cache ale UCP i datele utilizate
de controlerul grafic. n caz contrar, accesele controlerului grafic la memoria
AGP ar necesita golirea zonelor cache ale UCP, ceea ce ar putea cauza
ntrzieri.
Alocarea memoriei de ctre DirectDraw
DirectDraw va aloca n mod implicit memoria pentru texturi n ordinea de mai
jos, cu excepia cazului n care aplicaia solicit n mod expres o alt
alocare:
- Memoria video local.
- Memoria AGP.
- Memoria sistem.
n cazul n care controlerul grafic nu poate interpreta texturile din memoria
AGP, se poate mpiedica alocarea de ctre DirectDraw a oricrei memorii diferite
de memoria video local pentru texturi. Driverul controlerului grafic raporteaz
posibilitile sale ctre SO i DirectDraw, i dac controlerul grafic nu poate
accesa direct memoria sistem, DirectDraw va aloca aplicaiei numai memorie video
local i memorie sistem. Similar, n cazul n care controlerul grafic nu poate
interpreta texturile din memoria video local, DirectDraw nu va aloca memorie
video local pentru texturi.
Dac aplicaia nu poate plasa toate texturile n memoria AGP alocat de
DirectDraw, atunci ea trebuie s copieze texturile de pe disc n memoria AGP.
Aplicaiile care utilizeaz texturi de dimensiuni mari pot necesita ncrcarea
texturilor de pe disc sau din reea n memoria AGP, indiferent de cantitatea de
memorie alocat de DirectDraw.
Avantajele AGP
Principalele avantaje ale AGP sunt rezumate mai jos.
Rat de transfer mai ridicat. Rata de transfer la vrf este de 2-4 ori mai mare
dect cea a magistralei PCI, datorit modului pipeline, adresrii secundare i a
transferurilor de date care au loc att pe frontul cresctor, ct i pe cel
descresctor al ceasului.
Interpretarea direct a texturilor din memoria sistem. AGP permite accesul
direct cu vitez ridicat la memoria sistem de ctre controlerul grafic, n
locul ncrcrii prealabile a texturilor n memoria video local.
Grafic de calitate mai ridicat. Se pot utiliza texturi cu dimensiuni, i
nivele de detaliere nelimitate.
Costuri mai reduse. Prin minimizarea necesarului de memorie video, AGP ajut la
reducerea costurilor noilor sisteme.
Congestie mai redus pe magistrala PCI. AGP funcioneaz concurent cu, i
independent de cele mai multe tranzacii de pe magistrala PCI. Sistemele vor
avea o stabilitate mai mare atunci cnd traficul necesar pentru imaginile
grafice i cele video este eliminat de pe magistrala PCI
Vote 4 me in top100.ro