Galerie 25
Technologie: nVidia GeForce 7800 GTX
Článek Grafiky a hry GeForce GeForce 7 (G70)

Technologie: nVidia GeForce 7800 GTX | Kapitola 3

Zdeněk Kabát

Zdeněk Kabát

14

Seznam kapitol

1. Technologie: nVidia GeForce 7800 GTX 2. GeForce 7800 GTX - specifikace a technologie 3. Jádro G70 - architektura 3D pipeline 4. Vertex a pixel pipeline, ROP 5. Optimalizované shadery, HDR, transparentní AA 6. Grafická karta, spotřeba a závěr

Další evoluce v grafickém je světě je na pořadu dne. Nová rodina GeForce 7 je uvedena představením hi-endového čipu GeForce 7800GTX, který kromě masivního paralelismu vyniká i pokročilou architekturou.

Reklama

Jádro G70 zblízka

Grafické jádro G70 je jeden z nejkomplexnějších čipů, které se v současnosti dají v desktopové oblasti najít. A je také pořádně velké - na ploše cca 330 mm2 se nachází celkem

302 milionů tranzistorů

, což je děsivé číslo. Když ho srovnáme např. s procesory, tak Athlon 64 FX obsahuje 106 milionů, dvoujádrový Athlon 64 X2 233 milionů a dvoujádrové Pentium D podobných 230 milionů. Jenže u procesorů je většina plochy spotřebována do cache, zatímco GeForce 7800 GTX má prakticky všechny tranzistory využity jako výpočetní jednotky! To klade obrovské nároky na bezchybnou výrobu a protože je pravděpodobné, že G70 nemá v záloze žádné pipeline, bude výtěžnost zpočátku nejspíše malá.

Technologie: nVidia GeForce 7800 GTX

G70 je vyráběna

0,11mikronovým procesem

, což je v současnosti nejmodernější technologie pro GPU (procesory používají 90nm, což je plánováno i u ATi R500). nVidia má s 0,11 mikrony zkušenost už dlouho, jsou jí vyráběny veškeré GeForce 6200 a 6600, ale otázkou je, jak to bude vypadat při výrobě dvakrát tak velkého čipu.

Další zajímavou věcí je, že lepší výrobní proces u hi-endových čipů stále nepřispívá k vyšší frekvenci. Když si vezmu ke srovnání ATi, tak její Radeon X850XT zvládá se 130nm procesem frekvenci 540MHz, což je na velikost čipu obdivuhodné. Ovšem Radeon X800XL se stejným počtem tranzistorů na 110nm technologii umí maximálně 400MHz. Ani GeForce 7800 GTX na tom nebude nijak obdivuhodně a její frekvence je

430MHz

. Je to sice více než u GeForce 6800 Ultra, ale přesto nic moc.

Technologie: nVidia GeForce 7800 GTX

Upravená SIMD/MIMD architektura Před 3D pipeline, resp. mezi API a AGP/PCIe rozhraním, ale stojí ještě jedna věc, a to kompilátor. První a druhá generace CineFX, tedy grafické čipy NV3x, byly postaveny VLIW architektuře (tzn. Very Long Instruction Word). Pokud bych měl její význam zjednodušit, tak VLIW procesory dokáží díky kompilátoru upravit zdrojový kód tak, že se místo několika standardních instrukcí použije instrukce jediná o velké délce slova. Ovšem právě VLIW kompilátor u GeForce FX nebyl příliš podařený už jen z důvodu, že se dodělával dodatečně k hotové NV30.

Výsledkem bylo, že instrukční slova byla skládána velmi neefektivně a pipeline se občas zasekávala a restartovala. Znamenalo to slabší výkon GeForce FX hlavně v operacích se shadery, ve kterých naproti tomu ATi excelovala. Proto nVidia nahradila u 6. generace GPU tento systém novou architekturou SIMD/MIMD, čímž usnadní práci hlavně sama sobě. (Pozn.: SIMD = Single Instruction Multiple Data, MIMD = Multiple Instruction Multiple Data).

Detailní pohled na 3D pipeline

Grafická pipeline čipu G70 vypadá následovně:

Technologie: nVidia GeForce 7800 GTX

Když se podíváme na pipeline jako takovou, zjišťujeme, že se od NV40 příliš neliší. Vše začíná libovolným rozhraním, ať už se jedná o PCI Express v PC, nebo o libovolný můstek v herních konzolách apod. Jako první se počítá geometrie scény, k čemuž slouží

8 vertex pipeline

. Detail jednoho enginu si můžete prohlédnout na další stránce. Další část nazvaná Cull/Clip/Setup slouží k tomu, že jsou ořezány vrcholy ležící mimo viditelnou scénu (

cliping

), příp. se nenachází na viditelné straně objektu (

backface culling

). Poté je scéna složena z jednotlivých trojúhelníků nebo polygonů.

Další část jádra zahrnuje

24 pixel pipeline

, které zabírají suverénně největší část samotného GPU. Pipeline jsou rozděleny podobně, jako tomu bylo u předchozích generací grafických čipů ATi a nVidie, tedy do čtveřic nazývaných

quad-pipelines

. Protože G70 obsahuje šest těchto bloků, umožňuje vypnout některé části a prodávat čip jako levnější verzi. To bylo samozřejmě k vidění již u NV40 - GeForce 6800LE (8 pipelines), 6800 (12) a 6800GT/Ultra (16 pipelines).

A proč zrovna čtveřice? Odpověď nabízí Triangle Setup před tímto blokem - zde je polygon rozdělen na čtverečky o velikosti 2x2 pixely, které jsou následně distribuovány jednotlivým

quad-pipelines

. Protože je vždy současně zpracováván jen jeden trojúhelník, nikoliv scéna jako taková, je práce pixel pipelines nejefektivnější v případě velkých polygonů. Na obrázku totiž kromě způsobu vykreslování pixelů vidíte i další fakt, a to že se z dané čtveřice může nacházet uvnitř trojúhelníku třeba jen jeden pixel. Pak pracuje jen jedna pipeline ze čtyř.

Technologie: nVidia GeForce 7800 GTX

Po výstupu z pixel pipelines procházejí data křížovým řadičem (Fragment Crossbar), který rozděluje vypočítané pixely do jednotlivých ROP jednotek. Jejich úkolem je vyrenderovat výsledný obraz a uložit jej do frame bufferu v paměti, odkud je posléze odesílán na monitor. Ke komunikaci s pamětí slouží opět křížový řadič složený ze čtyř 64-bitových komponent - dohromady tedy 256-bit přístup.


Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama