af René M. Jacobsen Monday den 23 July 2001 kl. 23:05 [ Andet ] Kært barn har mange navne og som mange måske véd, er Intel ved at planlægge AGP 8x, der også omtales som AGP3.0. Hvor flere hardware sider omtaler AGP 8x som rygter vil vi give den fulde historie. AGP 8x vil tilbyde overførselsrater på op til 2,1 GB/s, men ser vi nærmere på specifikationerne bag AGP3.0 er der mange andre udvidelser, som kan få stor betydning for fremtidige bundkort og PC'ere. ATI er gået i gang med at gøre Radeon 3 klar til AGP 8x, men AGP 4x gav intet i forhold til AGP 2x, så hvad kan vi forvente? Denne artikel giver en introduktion til AGP3.0 og er baseret på nyeste viden direkte fra Intel.
Kort om AGP
Som mange måske ved, står AGP for Accelerated Graphics Port. Men hvad mange ikke ved er, at Intel har kaldt AGP 1/2x for AGP 1.0, AGP 1/2/4x for AGP 2.0. Det dokument jeg fik om AGP 3.0, er tydeligvis markeret med DRAFT, og lige nu er det revision 0.95 (så det bliver sikkert ændret med tiden). AGP er designet med henblik på at afhjælpe PCI bussen, for med de mængder data, der skal til grafikkortene nu om dage, vil det være slemt for resten af computeren, hvis grafikkortet beslaglagde 90% af PCI bussen. AGP 1x kan overføre 266 Mb/s (den hurtige læser har bemærket, at det er det dobbelte af PCI bussens ydelse hvilket skyldes dobbelt taktfrekvens), og ligesom med CD-ROM drev er tallet (f. eks. 1x) en indikation af den maksimale overførselshastighed. Med andre ord vil AGP 8x kunne overføre 2133 Mb/s.
Hvad kan det?
AGP 3.0 (8x) er forbedret på mange punkter i forhold til AGP 2.0, men bagud-kompatibiliteten er kun til AGP 4x (ikke AGP 2.0). De fleste kort efter 1999 har også AGP 4x understøttelse, så det er generelt ikke noget problem. Nogle påstår, at Kyro II kun kører AGP 2x, mens STMicroelectronics påstår, at Kyro II benytter AGP 4x - men det er jo lige meget. For at gøre AGP 3.0 mere effektiv har man fjernet og ændret ting i forhold til AGP 2.0. Lad os se et par stykker.
Det spændende her er, at signalet nu er 0,8V, hvilket betyder mindre effektforbrug, og det er især vigtigt for bærbare PC'ere. Pointen med AGP 3.0 er, at det skal kunne give den nødvendige båndbredde til grafikkort i to generationer. Tilslutningen bliver på 1.5V for at gøre bagudkompatibilitet muligt til AGP 4x.
Vi kan i ovenstående se, at Intel med AGP3.0 ikke blot opfinder hjulet igen. Mange af de gode ting fra AGP 2.0 er ført videre. Jeg havde nu forventet, at de satte hastigheden op til for eksempel 100 MHz, men det vil så bare umiddelbart betyde, at bagudkompatibilitet ville være væk (selvom man dog burde kunne overclocke det fra BIOS'en). Som det ser ud lige nu, vil der være kompatibilitet for AGP 1.0 og 2.0, mens en ny gruppe skiller sig ud ved AGP 2.0 og 3.0. Det virker til at være en god måde at være bagudkompatibel samtidig med, at der fornyes.
Ændringerne vil i forhold til AGP 2.0 vil betyde, at interface hastigheden øges og ubrugte egenskaber fjernes, hvilket gør interfacet mere simpelt. Der vil ikke være så stor pointe i at fortælle, hvad der er fjernet (eftersom de fjernede egenskaber aldrig anvendes). Dog vil nogle ting blive ændret så vi undgår ting som disse:
Tests som disse viste, at der ikke var noget at hente ved AGP 4x og heller ikke ved AGP 2.0's Fast writes. Derfor har Intel besluttet at ændre på disse ting.
Det har de gjort ved at tilføje følgende:
1. Support for isochronous transactions
2. Hardware enforced coherency inside GART region selectable on page basis
3. Flow control change on fast writes
4. Multiple AGP ports support
5. Ability to support multiplepage sizes in GART
6. Specified set of AGP 3.0 configuration registers
Det lyder spændende, så her kommer forklaringen:
1. Isochronous transactions er data, som ikke skal behandles med det samme, men som kan vente et par clockcycles. Pointen i dette er, at man kan have to overførsler fra AGP kortet, grafisk og for eksempel video capture. Når disse overførsler kører adskilt, bliver det nemmere at arbejde med for programmørerne.
2. Gør, at programmører kan styre skrive/læse delen i kortet bedre end man kunne i de tidligere versioner.
3. Fast writes er det maksimale antal af wait states (det GPU'en laver, når der ikke er noget data at behandle). Denne control er for, at kortet kan stoppe eventuelle overførsler og genoptage dem senere. Resultatet bliver, at en isochronous transaction kan blive udført til tiden. Dette er en klar ændring i forhold til Fast writes fra AGP 2.0, hvor stor betydning det får er uvist.
4. Det vil betyde, at man får mulighed for flere AGP-slots, så man kan bruge flere grafikkort uden at tilslutte dem PCI-bussen. Dog vil AGP hastigheden blive delt mellem kortene.
5. Såfremt det er fysisk muligt, vil programmøren have mulighed for at tildele et program en større AGP aperture size (RAM'ene på bundkortet bliver brugt som ekstra lager).
6. Assembler programmører vil elske dette. Registre gør det muligt at flytte data effektivt, når man har kontrol over dem, så kan man øge effektiviteten af en programkode.
Konklusion
Hvis man læser dokumentet (Intel Draft AGP V3.0 Interface Specification), kan man se, at det er rettet til fagfolk, sikkert med henblik på en evaluering fra dem. Dette var version 0.95, så det kan nemt ændres inden AGP 8x ser dagens lys. De ændringer der er lavet ser ud til at give bedre ydelse, for når en programmør har større kontrol over det der sker, så bliver effektiviten øget. Spændende ser det ud for med 533MT/s (transactions per second) af 4 byte = 2,1Gb/s, så er vi lidt på vej til Final Fantasy (filmen) grafik. Samtidig vil AGP 3.0 give kortproducenterne bedre mulighed for at sætte godt ekstra tilbehør på kortet.
195.47.158.221 skrev Tuesday den 24 July 2001 kl. 15:53: [ svar | nyeste ]
Nvidias brug af HyperTransport i Xbox og nForce er bl.a med til at sikre de såkaldte isochronous streams, og såvidt jeg har forstået handler det om tidskritiske datastrømme, ikke tids-Uafhængige.
Hvordan er hastigheden (båndbredden) af AGP3.0 fordoblet i forhold til AGP2.0 ? Da frekvensen er den samme, og der i AGP4x bruges DDR i forvejen, har man så brugt ekstra ben?
Hvorfor mon de ikke bare har valgt 133MHz clockfrekvens med mulighed for de gamle 66MHz også, det skulle snildt kunne lade sig gøre taget i betragtning at SDram-interface har plads til 3-4 moduler ved 133 ?
Det er spændende med flere AGP-kort i samme maskine, selvom det nok kun vil være high-end gamers og workstations der vil bruge det.
Mon ATIs tætte bånd til Intel, og Nvidias tætte bånd til AMD, betyder at en ATI/Intel-platform vil være bedre/tidligere end Nvidia/AMD ?
Mht. til isochronous streams så giver det mulighed for at ændre vigtigheden mellem tidskritiske og tidsuafhængige. Isochronous arbejder med en fleksibel latency, men det er tidsuafhængig i ms området.
Pentium 4 bruger quadpumped bus, jeg vil tro det er det samme der er tilfældet i AGP 8x. Jeg går ud fra at de valgte 66MHz for at gøre bagudkompatibilitet nemmere og så kommer maskinen heller ikke ud i problemer med manglende data (som en følge af for høj clockfrekvens - dette er tilfældet med CPU'ers læsning i RAM'en).
Jeg tror at nVIDIA arbejder tæt nok med Intel til at lave lige så gode (hvis ikke bedre) kort til AGP 8x. Måske kan Ati komme med et tidligere, men det bliver nok højst et par uger.
NB: man kan ikke sammenligne RAM og AGP med hensyn til hastighed og frekvens!
lerbech skrev Wednesday den 25 July 2001 kl. 08:35: [ svar | nyeste ]
de har øget datamængden ved nu at kunne sende 8 bits mod får 4, teknisk gør man det ved internt at 4 doble clocken også køre ddr på den ud af til ser man det som om at date kommer 8 gange på clock, i den "gamle" agp 4 fordoblede man bare clock også kørte ddr på den
TGSC skrev Thursday den 26 July 2001 kl. 02:59: [ svar | nyeste ]
Tidsforsinkelser i mili-sekunder-området er nok til at skabe forstyrrelser for stereo-lyd, så tidskritisk må betyde noget med at tiden er kodet sammen med signalet så det kan behandles på det rigtige tidspunkt (rækkefølge) af modtageren.
Strømme der ikke har tids-signal kan så være tids-uafhængige.
Hvorfor kan man ikke sammenligne ram og AGP ? Ram-kommunikationen burde være mere kritisk end AGP fordi der kan sidde flere forskellige moduler på ram-bussen (med alle de forskellige kapacitanser, induktanser og resistanser det kan give), mens der kun kan sidde eet modul på AGP-bussen. Derfor burde det være nemmere at have høj frekvens på AGP end på ram.
Er der andre aspekter på spil her?
Nedenstående link siger dog at det er nemmere at double end at hæve basefrekvensen.
Er mistede/forkert ram-data ikke kun et meget sjældent problem som kun servere sikrer sig mod vha ECC ?
Eller er der så generelt i alle bundkort en fejlkorrektion mellem ikke-ECC og NorthBridge?
Hvis du kører lyd og billede i to forskellige streams er det ikke så svært at kombinere dem bagefter. Men jeg tror at jeg har fundet fejlen, der findes to typer isochronous transfers, nemlig fenced og unfenced og jeg er vist kommet til at blande dem sammen. Undskyld fejlen! - jeg kan ikke forklare forskellen bortset fra at den ene kan vente med at blive udført.
Jeg mener at man ikke kan sammenligne RAM og AGP på interface og deraf konkludere at man kan sætte hastigheden op.
De manglende data jeg hentydede til var for processoren ikke at det der var hentet fra RAM'en var gået tabt.
Mick skrev Tuesday den 30 October 2001 kl. 12:07: [ svar | nyeste ]
Strobe = signal fra en enhed til en anden enhed (chip, device...) om at "data er klar så kik på dem".
Strobe-signal ifbm. med fx. en printer port betyder: "8 bit data anbragt på porten - læs dem!
Så læser "printeren" (eller "chip", "enheden"...) data og melder tilbage: "Data læst".
Dette gøre enten ved at enheden har et "busy"-signal ("send ikke data - jeg har travlt!").
Eller et "acknowledge"-signal ... dvs. "opfattet" ("jeg har læst data nu")
"Latchede" data er data som er sendt ud på "porten" således at de kan læses. Det kan også være fx. data i en RAM-chip.
Note: Ovenstående er strengt taget ikke teknisk 100% korrekt - men det illustrerer rimeligt godt latch, strobe etc.
Vi kan da lige tage IRQ (interrupts) med ;) - det er faktisk bare en slags "strobe"-signal fx. til CPU'en ("det haster - jeg har noget du skal kikke på NU!).
194.192.130.221 skrev Friday den 26 April 2002 kl. 19:19: [ svar | nyeste ]
HardwareTidende er en omfattende guide til optimal afvikling af computerspil på PC. Dette kræver viden om hardware såsom grafikkort, cpu'er, ram og meget mere. Du kan læse mere om konceptet bag HardwareTidende her:
Hardwaretidende bliver kun opdateret, når der sker noget nyt og interessant. Skriv endelig til os, hvis der er noget, vi har overset; nyheder modtages gerne.