Bakalářská práce. Téma: Rešerše moderních grafických karet Literature retrieval of modern graphic cards. Zadání



Podobné dokumenty
G R A F I C K É K A R T Y

Grafická karta nebo také videoadaptér je součást počítače, která se stará o grafický výstup na monitor, TV obrazovku či jinou zobrazovací jednotku.

GRAFICKÉ ADAPTÉRY. Pracovní režimy grafické karty

Grafické karty. Autor: Kulhánek Zdeněk

DUM č. 14 v sadě. 31. Inf-7 Technické vybavení počítačů

Zobrazovací jednotky a monitory

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Střední průmyslová škola Zlín

GRAFICKÉ KARTY. Pracovní režimy grafické karty. Základní blokové schéma grafické karty

Karel Johanovský Michal Bílek SPŠ-JIA GRAFICKÉ KARTY

Zobrazovací a zvuková soustava počítače

AGP - Accelerated Graphics Port

Co je grafický akcelerátor

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

DUM č. 6 v sadě. 31. Inf-7 Technické vybavení počítačů

Z čeho se sběrnice skládá?

DRUHY SESTAV. Rozlišujeme 4 základní druhy sestav. PC v provedení desktop. PC v provedení tower. Server. Notebook neboli laptop

SEZNAM A VYSVĚTLENÍ VYBRANÝCH POJMŮ TÝKAJÍCÍCH SE PARAMETRŮ ZOBRAZOVACÍCH JEDNOTEK ELEKTRONICKÝCH SYSTÉMŮ

architektura mostů severní / jižní most (angl. north / south bridge) 1. Čipové sady s architekturou severního / jižního mostu

Monitory a grafické adaptéry

Informační a komunikační technologie

ZÁKLADNÍ DESKA ASUS PRIME X370-PRO ZÁKLADNÍ DESKA, AMD X370, AM4, 4X DIMM DDR4, 1X M.2, ATX

Sbě b r ě n r i n ce

Grafické adaptéry a monitory

Identifikátor materiálu: ICT-1-08

Počítačová grafika Grafické karty a monitory (metodické materiály) dr. Josef Šedivý Centrum talentů UHK, 2010

PŘEDSTAVENÍ GRAFICKÉHO PROCESORU NVIDIA G200

2.8 Procesory. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

monitor a grafická karta

Grafické adaptéry a monitory

Přídavné karty. Zvuková karta. Síťová karta

ARCHITEKTURA AMD PUMA

Předmět: informační a komunikační technologie

Grafické adaptéry a monitory

Hardware. Z čeho se skládá počítač

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

KAPITOLA 1 - ZÁKLADNÍ POJMY INFORMAČNÍCH A KOMUNIKAČNÍCH TECHNOLOGIÍ

Základní deska (motherboard, mainboard)

Procesor. Hardware - komponenty počítačů Procesory

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Základní deska (mainboard)

Sběrnice. Parametry sběrnic: a. Přenosová rychlost - určuje max. počet bitů přenesených za 1 sekundu [b/s]

Číslo projektu: CZ.1.07/1.5.00/ III/2 Inovace a zkvalitnění výuky prostřednictvím ICT. Zdeněk Dostál Ročník: 1. Hardware.

Procesory nvidia Tegra

Paměti Rambus DRAM (RDRAM) Paměti Flash Paměti SGRAM

Pokročilé architektury počítačů

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Grafické adaptéry a monitory

Grafické karty s podporou DirectX 11 Quynh Trang Dao Dao007

PORTY ZLÍNSKÝ KRAJ. Obchodní akademie, Vyšší odborná škola a Jazyková škola s právem státní jazykové zkoušky Uherské Hradiště

Grafické adaptéry a monitory

3. Maturitní otázka PC komponenty 1. Počítačová skříň 2. Základní deska

SKŘÍŇ PC. Základní součástí počítačové sestavy je skříň.

Přednášky o výpočetní technice. Hardware teoreticky. Adam Dominec 2010

UNIVERZITA PARDUBICE. Fakulta elektrotechniky a informatiky. Geneze grafických karet jako základní součásti PC Drahoslav Stejskal

Konektory a Kabely. Aneb zařízení integrovaná do základní desky a konektory a kabeláž pro připojení externích zařízení

Grafická karta SVGA (2) Grafická karta SVGA (1) Grafická karta SVGA (4) Grafický akcelerátor: Grafická karta SVGA (3) Grafická karta SVGA (5)

Hardwarová akcelerace HD videa v návaznosti na architektury čipu grafických karet

Paměti Josef Horálek

Základní deska (mainboard, motherboard)

Základní pojmy informačních technologií

Hardware Skladba počítače. Mgr. Lukáš Provazník ZŠ praktická a ZŠ speciální Lomnice nad Popelkou DUM č.: VY_3.2_INOVACE_1LP_35

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Osobní počítač. Zpracoval: ict Aktualizace:

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Dell Inspiron 580: Kompletní technické údaje

Cache paměti (1) Cache paměť: V dnešních počítačích se běžně používají dva, popř. tři druhy cache pamětí:

Identifikátor materiálu: ICT-1-15

HW počítače co se nalézá uvnitř počítačové skříně

2.7 Základní deska. Střední průmyslová škola strojnická Vsetín. Ing. Martin Baričák. Název šablony Název DUMu. Předmět Druh učebního materiálu

Komunikace procesoru s okolím

Procesor EU peníze středním školám Didaktický učební materiál

Inovace výuky prostřednictvím ICT v SPŠ Zlín, CZ.1.07/1.5.00/ Vzdělávání v informačních a komunikačních technologií

Paměti Rambus DRAM (RDRAM) Paměti Flash Paměti SGRAM

Mgr. Renáta Rellová. Výukový materiál zpracován v rámci projektu EU peníze školám

Architektura grafických ip pro Xbox 360 a PS3

Hardware. Příklad převodu čísla: =1*32+0*16+0*8+1*4+0*2+1*1= Převod z dvojkové na desítkovou Sčítání ve dvojkové soustavě

David Buchtela. Monitory Monitory. David Buchtela. enýrství lská univerzita v Praze

Cíl přednášky: Obsah přednášky:

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

Dell Studio XPS 8100: Komplexní specifikace

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Metody připojování periferií BI-MPP Přednáška 1

Cache paměti (2) Cache paměti (1) Cache paměti (3) Cache paměti (4) Cache paměti (6) Cache paměti (5) Cache paměť:

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Základy ICT, průřezová témata

Paměť počítače. 0 (neprochází proud) 1 (prochází proud)

Vývoj grafických karet

Informatika Počítačová grafika Mgr. Jan Jílek (v.11/12) Počítačová grafika

Vývoj a souboj paměťových karet

Grafické adaptéry a monitory

Měřicí systémy. Obsah. Systémy složené z autonomních měřicích přístrojů a modulů Sériová rozhraní. Sériová rozhraní - pokračování 1

Pokročilá architektura počítačů

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

CHARAKTERISTIKY MODELŮ PC

Základní deska (1) Označována také jako mainboard, motherboard. Deska plošného spoje tvořící základ celého počítače Zpravidla obsahuje:

Z Á K L A D N Í S E S T A V A

INFORMAČNÍ A KOMUNIKAČNÍ TECHNOLOGIE

Chipsety AMD a jejich vlastnosti

Transkript:

Bakalářská práce Téma: Rešerše moderních grafických karet Literature retrieval of modern graphic cards Zadání 1) Přehled a vysvětlení technologií a principů moderních grafických karet. Výsledky práce by měly být použitelné i jako podklady pro výuku v některých kursech ČVUT FEL. 2) Student by měl vysvětlit hlavní inovační principy, popsat rozdíly mezi jednotlivými řadami grafických karet, jak z hlediska architektury, tak z hlediska jejich technologie, i s ohledem na dobu jejich vzniku. 3) Rozdíly mezi jednotlivými typy grafických karet, technologií atp. budou též přehledně a výstižně znázorněny různými tabulkami, diagramy, schématy, atp. 4) Rozsah práce pravidelně konzultujte s vedoucím práce. Práce bude zahrnovat kapitolu naznačující poslední trendy a směr vývoje v dané oblasti. 5) Součástí práce bude také seznam referencí na použité tištěné i elektronické zdroje.

2

České vysoké učení technické v Praze Fakulta elektrotechnická Katedra počítačů Bakalářská práce Rešerše moderních grafických karet Lukáš Molík Vedoucí práce: Ing. Martin Molhanec, CSc. Studijní program: Elektrotechnika a informatika, strukturovaný, Bakalářský Obor: Výpočetní technika 28.5.2010 3

4

Poděkování Děkuji touto cestou vedoucímu mé bakalářské práce Ing. Martinu Molhancovi CSc., z katedry elektrotechnologie ČVUT v Praze za velmi cenné rady a připomínky a za čas, který se mnou strávil při konzultacích. 5

6

Prohlášení Prohlašuji, že jsem práci vypracoval samostatně a použil jsem pouze podklady uvedené v přiloženém seznamu. Nemám závažný důvod proti užití tohoto školního díla ve smyslu 60 Zákona č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon). V Praze dne 28.5.2010.. 7

8

Abstract The goal of this bachelor thesis is compact review about the world of graphic cards since begin until present. At the start I considered graphic cards problems generally. At first I focused in birth of graphic systems used in personal computers and their gradual development until 2004. After that I described function and architecture of graphic cards. At the end of this part I mention cooling. In the main part I attend to primary goal of my thesis, which consist of chronological development modern graphic cards of primary producers after 2004. At first I focused with each one producer on roundup series and at individual types in these series. Then I compared them how the new ones are different against previous cards in light of new technologie, architecture and their parameters. At the end of the primary section I compared paraller series represented by individual producers of characteristics cards with one another in the light of the most important parameters, used technologies and difference in architecture. Abstrakt Cílem této bakalářské práce je poskytnout čtenáři ucelený přehled o světě grafických karet od počátku jejich vývoje až po současnost. V bakalářské práci se budu v prvé části zabývat problematikou grafických karet obecně. Nejprve se zaměřím na samotný zrod grafických systémů používaných pro osobní počítače a jejich postupný vývoj až do roku 2004, dále pak na funkci grafické karty a její architekturu a také na problematiku umístění karty na základní desce. V závěru obecného pohledu na grafické karty se zmíním i o jejich chlazení. V druhé části bakalářské práce se budu věnovat stěžejní náplni mé práce, která spočívá v chronologickém sledování vývoje moderních grafických karet hlavních výrobců po roce 2004. Nejprve se u každého výrobce zaměřím na přehled řad a na jednotlivé typy karet v těchto řadách a porovnám, jak se liší novější karty od svých předchůdců z hlediska nových technologií, architektury, parametrů apod. Na konci této části srovnám odpovídající řady reprezentované charakteristickými kartami jednotlivých výrobců vzájemně mezi sebou z hlediska jejich nejdůležitějších parametrů, použitých technologií i případných architektonických odlišností. Práci uzavírá slovník technických pojmů použitých v mé bakalářské práci, které se vztahují k problematice grafických karet a také seznam zdrojů, ze kterých jsem čerpal informace. 9

Obsah 1.0 Úvod 15 2.0 Problematika grafických karet 16 2.1 Vývoj grafických systémů do roku 2004 16 2.1.1 Grafické systémy na PC IBM 16 2.1.2 První 3D akcelerátory 19 2.1.3 Vybrané čipy do roku 2004 21 2.2 Funkce grafické karty 22 2.3 Architektura grafické karty 22 2.4 Popis jednotlivých součástí grafické karty 24 2.4.1 GPU (Graphic Processing Unit) 24 2.4.2 Paměť grafické karty 25 2.4.3 Systémové rozhraní (interface) 27 2.4.4 Frame buffer 29 2.4.5 RAMDAC 29 2.4.6 Výstupy grafických karet 30 2.5 Problematika chlazení 31 3.0 Moderní grafické karty 33 3.1 Výrobci grafických karet 34 3.2 AMD(ATI) 34 3.2.1 Chronologický vývoj GK firmy AMD(ATI) 35 3.2.1.1 ATI Radeon X000 36 3.2.1.2 ATI Radeon X1000 41 3.2.1.3 ATI Radeon HD 2000 48 3.2.1.4 ATI Radeon HD 3000 54 3.2.1.5 ATI Radeon HD 4000 59 3.2.1.6 ATI Radeon HD 5000 64 3.3 VIDIA 69 3.3.1 Chronologický vývoj GK firmy VIDIA 69 3.3.1.1 GeForce 6 71 3.3.1.2 GeForce 7 76 3.3.1.3 GeForce 8 80 3.3.1.4 GeForce 9 85 3.3.1.5 GeForce 200 88 3.3.1.6 GeForce 400 93 3.4 Srovnání řad jednotlivých výrobců 97 3.4.1 Srovnání řad grafických karet výrobce AMD(ATI) 97 3.4.2 Srovnání řad grafických karet výrobce VIDIA 101 3.4.3 Vzájemné srovnání řad grafických karet 105 AMD(ATI) a VIDIA 3.5 Budoucí trendy vývoje grafických karet 106 10

4.0 Závěr 108 5.0 Slovíček technických pojmů 109 6.0 Seznam použitých zdrojů 114 A Obsah přiloženého CD 115 11

Seznam obrázků O.1 Vnitřní stavba čipu grafické karty standardně obsahující vlastní pipeline 19 jak pro 2D, tak i pro 3D grafické operace O.2 Zpracování trojrozměrných scén 20 O.3 Umístění komponent na kartě 23 O.4 GPU 24 O.5 Sloty PCI 27 O.6 AGP slot (černý) 27 O.7 PCI Express 28 O.8 VGA 30 O.9 DVI 30 O.10 S-Video 30 O.11 HDMI 31 O.12 DisplayPort 31 O.13 Schéma rozdělení 33 O.14 Chronologický přehled jednotlivých řad grafických karet AMD(ATI) 35 O.15 Dělení řady Radeon X000 na třídy a jednotlivé karty 36 O.16 Schéma čipu R420 37 O.17 Schéma Vertex pipeline čipu R420 38 O.18 Jeden blok Pixel pipeline čipu R420 38 O.19 Schéma Pixel shader čipu R420 39 O.20 Schéma paměťového řadiče čipu R420 39 O.21 Schéma Hyper HD čipu R420 40 O.22 Dělení řady Radeon X1000 na třídy a jednotlivé karty 41 O.23 Schéma čipu R520 43 O.24 Schéma Vertex shader čipu R520 44 O.25 Schéma setup engine 44 O.26 Schéma Pixel shader čipu R520 45 O.27 Schéma interní sběrnice (ring bus) čipu R520 46 O.28 Detail ring bus 47 O.29 AVIVO 47 O.30 Dělení řady Radeon HD 2000 na třídy a jednotlivé karty 48 O.31 Schéma čipu R600 50 O.32 Vývoj shaderů od původních Radeonů až po řadu Radeon HD 2000 51 O.33 Schéma paměťové sběrnice Radeonu HD 2900 51 O.34 Schéma jednotky Render Back-End čipu R600 52 O.35 AVIVO HD 53 O.36 Dělení řady Radeon HD 3000 na třídy a jednotlivé karty 54 O.37 Nové značení 55 O.38 Architektura řady HD 3000 56 O.39 ATI PowerPlay 57 O.40 Výhody PCI Express 2.0 58 O.41 Dělení řady Radeon HD 4000 na třídy a jednotlivé karty 59 O.42 Schéma čipu RV740 60 O.43 Schéma texturovacího bloku R600 61 O.44 Schéma texturovacího bloku RV770 61 O.45 Schéma výpočetní jednotky RV770 62 12

O.46 Schéma Render Back-Ends jednotky v čipu RV770 62 O.47 Schéma propojení paměťové sběrnice v čipu RV770 63 O.48 Dělení řady Radeon HD 5000 na třídy a jednotlivé karty 64 O.49 Schéma čipu RV870 65 O.50 Řídící jednotka čipu RV870 66 O.51 Schéma výpočetního jádra čipu RV870 66 O.52 Schéma paměťového subsystému čipu RV870 67 O.53 Eyefinity 68 O.54 Chronologický přehled jednotlivých řad grafických karet NVIDIA 70 O.55 Dělení řady GeForce 6 na třídy a jednotlivé karty 71 O.56 Schéma pipeline NV40 72 O.57 Schéma Vertex shaderu čipu NV40 73 O.58 Schéma Pixel pipeline čipu NV40 74 O.59 Schéma Pixel shader čipu NV40 74 O.60 Schéma ROP jednotky čipu NV40 75 O.61 Dělení řady GeForce 7 na třídy a jednotlivé karty 76 O.62 Schéma pipeline G70 77 O.63 Schéma Vertex pipeline čipu G70 78 O.64 Schéma ROP jednotky čipu G70 79 O.65 Dělení řady GeForce 8 na třídy a jednotlivé karty 80 O.66 Schéma čipu G80 81 O.67 Schéma shader core čipu G80 82 O.68 Schéma video procesoru GeForce 7 a GeForce 8600 83 O.69 PureVideo 84 O.70 Dělení řady GeForce 9 na třídy a jednotlivé karty 85 O.71 Schéma čipu G94 86 O.72 Hybrid Power 87 O.73 Dělení řady GeForce 200 na třídy a jednotlivé karty 88 O.74 Schéma čipu G200 89 O.75 Zjednodušené schéma čipu G200 90 O.76 Schéma jednoho Thread Processing clusteru čipu G200 91 O.77 Power Management 92 O.78 Dělení řady GeForce 400 na třídy a jednotlivé karty 93 O.79 Schéma čipu Fermi 94 O.80 Schéma WARPu čipu Fermi 95 O.81 Schéma PolyMorph Enginu 96 O.82 Princip Ray tracingu 106 O.83 Rasterizace versus Ray tracingu 107 13

Seznam tabulek T.1 Přehled parametrů některých čipů do roku 2004 21 T.2 Přehled frekvencí DDR pamětí 26 T.3 Přehled frekvencí GDDR pamětí 26 T.4 Přehled některých verzí systémových rozhranních 29 T.5 Přehled grafických 3D čipů vyrobených v letech 1995 až 2002 34 T.6 Parametry vybraných čipů, které reprezentují řadu Radeon X000 41 T.7 Parametry vybraných čipů, které reprezentují řadu Radeon X1000 48 T.8 Parametry vybraných čipů, které reprezentují řadu Radeon HD 2000 53 T.9 Parametry vybraných čipů, které reprezentují řadu Radeon HD 3000 58 T.10 Parametry vybraných čipů, které reprezentují řadu Radeon HD 4000 64 T.11 Parametry vybraných čipů, které reprezentují řadu Radeon HD 5000 68 T.12 Parametry vybraných čipů, které reprezentují řadu GeForce 6 76 T.13 Parametry vybraných čipů, které reprezentují řadu GeForce 7 80 T.14 Přehled karet obsahující Video Procesor 84 T.15 Parametry vybraných čipů, které reprezentují řadu GeForce 8 85 T.16 Parametry vybraných čipů, které reprezentují řadu GeForce 9 88 T.17 Parametry vybraných čipů, které reprezentují řadu GeForce 200 92 T.18 Parametry vybraných čipů, které reprezentují řadu GeForce 400 96 T.19 Srovnání řad grafických karet výrobce AMD(ATI) 97 T.20 Srovnání řad grafických karet výrobce NVIDIA 101 T.21 Vzájemné srovnání řad grafických karet AMD(ATI) a NVIDIA 105 T.22 Vzájemné srovnání řad grafických karet AMD(ATI) a NVIDIA 105 14

1.0 Úvod Téma bakalářské práce s problematikou grafických karet jsem přivítal, protože se o tuto tématiku zajímám již od studia na střední škole. Každý uživatel počítače, který hraje hry, sleduje video nebo pracuje s grafikou dříve nebo později zjistí, jak důležitý je výkon a podporované technologie grafické karty. Nevhodně zvolená karta může uživatele limitovat svými nedostatečnými parametry nebo chybějícími technologiemi. Při výběru vhodné karty je nutné se určitým způsobem orientovat v této problematice, na což jsem se zaměřil v kapitolách popisujících funkci a architekturu grafické karty. V práci se také věnuji historickému vývoji grafických systémů od monochromatických adaptérů až po 3D zobrazování a zejména jsem zmapoval současné moderní grafické karty, které svými parametry a použitými technologiemi určují současnou podobu grafického zobrazování. 15

2.0 Problematika grafických karet 2.1 Vývoj grafických systémů do roku 2004 V počátcích výroby osobních počítačů, se používaly grafické systémy od společnosti IBM. Nejdříve se jednalo o monochromatické adaptéry, které pracovaly v textovém režimu. Postupným vývojem v této oblasti se u dalších grafických režimů postupně zvětšovalo zobrazovací rozlišení a počet zobrazovaných barev. Technologický milník nastal v 90. letech zrodem prvního 3D akcelerátoru s nově přidanými 3D technologiemi. V následujících bodech se zaměřím podrobněji na výše zmíněné grafické systémy a v závěru pak na vybrané čipy charakterizující vývoj až do roku 2004. Většina grafických systémů, dovoluje práci ve dvou základních zobrazovacích režimech. Zobrazovací režimy: Textový režim režim umožňuje zobrazovat pouze předem definované znaky, jako jsou písmena (a, A, b, B, ), číslice (1, 2, 3, ), speciální znaky (@, #, $,...) a pseudografické symboly (symboly pro vykreslování tabulek). Grafický režim režim, ve kterém jsou informace zobrazovány po jednotlivých obrazových bodech tzv. pixelech. Tento režim nepoužívá předem nadefinované znaky, ale může z jednotlivých pixelů vykreslit prakticky libovolnou informaci v závislosti na možnostech dané grafické karty. Základní parametry grafických systémů: Rozlišení v textovém režimu počet znaků, které je možné v textovém režimu zobrazit na jednom řádku a počet řádků, které je možné zobrazit na monitoru. Matice znaku počet bodů (vodorovný i svislý směr), ze kterých se může skládat jeden znak v textovém režimu. Rozlišení v grafickém režimu počet pixelů, které je možné v horizontálním a vertikálním směru zobrazit na monitoru. Počet barev (barevná hloubka) počet barev, které je možné najednou zobrazit. Rychlost počet pixelů, které grafická karta dokáže vykreslit za jednotku času. 2.1.1 Grafické systémy na PC IBM Následující grafické systémy (zvané též - videokarty, grafické karty, grafické adaptéry, grafické akcelerátory) jsou v následujícím textu seřazeny podle období uvedení na trh: 16

MDA (Monochrome Display Adapter) jedná se o první zobrazovací adaptér pro počítače IBM/PC. Tento adaptér byl monochromatický a neměl podporu grafických režimů. Adaptér uměl pracovat pouze v textovém režimu 80x25 (sloupce, řádky). Jednalo se o ISA sběrnici [5] resp. PC-BUS s video pamětí 4kB, zobrazovací frekvence [5] byla 50Hz. CGA (Color Graphics Adapter) jde o první adaptér, který má podporu grafických režimů pro počítače IBM/PC. Adaptér podporoval dva textové a dva grafické režimy, objevil se i třetí grafický režim pro televizní výstup, ten ale nebyl podporován. Paměť adaptéru měla kapacitu 16kB a zobrazovací frekvence byla 60Hz Textové režimy CGA Režim 40 sloupců a 25 řádků Režim 80 sloupců a 25 řádků Oba tyto režimy nabízely 16 barev pro znak a 16 barev pro pozadí jednotlivého znaku. Grafické režimy CGA Režim s rozlišením 320x200 pixelů, při použití čtyř barev Režim s rozlišením 640x200 pixelů, s použitím dvou barev. HGC (Hercules Graphics Card) byla navržena firmou Herkules Computer Technology. Jde o konkurenta adaptérům MDA a CGA. Oproti svým konkurentům nabízela nižší pořizovací cenu. Byla určena do sběrnice ISA (PC-BUS). Hercules byl používaný hlavně u počítačů řady PC/XT. Paměť měla velikost 32kB Textové režimy HGC Režim 80 sloupců a 25 řádků, bylo možné používat dvě znakové sady Grafické režimy HGC Režim s rozlišením 720x348 ve dvou barvách EGA (Enchanced Graphics Adapter) objevil se s příchodem počítačů IBM AT. Paměť tohoto adaptéru se pohybovala v rozmezí od 64kB až do 256 kb. Zobrazovací frekvence byla 60Hz. Textové režimy EGA Režim 40 sloupců a 25 řádků Režim 80 sloupců a 25 řádků Režim 80 sloupců a 43 řádků Ve všech režimech mohly znaky používat 16 barev. Grafické režimy EGA Režim s rozlišením 320x200 pixelů, 4 barvy Režim s rozlišením 640x200 pixelů, 2 barvy Režim s rozlišením 320x200 pixelů, 16 barev Režim s rozlišením 640x200 pixelů, 16 barev 17

Režim s rozlišením 640x350 pixelů, 4 barvy Režim s rozlišením 640x350 pixelů, 16 barev VGA (Video Graphics Array) je to standard vydaný roku 1987 společností IBM. Jedná se o nástupce starších zmíněných adaptérů. Nelze však použít původní monitory kvůli změně frekvence synchronizačních signálů. Paměť adaptéru se pohybuje v rozmezí 64kB do 256kB. Textové režimy VGA Režim 40 sloupců a 25 řádků, 16 barev Režim 80 sloupců a 25 řádků, 16 barev Režim 80 sloupců a 25 řádků, zobrazení znaků bílou či šedou barvou, pozadí znaku může být černé nebo šedé Grafické režimy VGA Režim s rozlišení 320x200, 4 barvy Režim s rozlišením 640x200, 2 barvy Režim s rozlišením 320x200, 16 barev Režim s rozlišením 640x200, 16 barev Režim s rozlišením 640x350, 4 barvy Režim s rozlišením 640x350, 16 barev Režim s rozlišením 640x480, 2 barvy Režim s rozlišením 640x480, 16 barev Režim s rozlišením 320x200, 256 barev VESA (Video Electronics Standards Association) karta VGA byla posledním standardem vydaným firmou IBM. Její nástupce označujeme jako SVGA (super VGA). Tyto karty podporují režim s rozlišením vyšším než 640x480 s až 24 bitovou hloubkou. SVGA (Super Video Graphics Array) jedná se dnes o nepoužívanější typ grafické karty. Nejdůležitějším prvkem je procesor, který je schopen realizovat některé často používané grafické operace. Taková to karta bývá také nazývána akcelerátor. Není nutné aby každý pixel, který se má zobrazit musel počítat CPU [5]. 3D akcelerátory se nazývají karty, které jsou schopné provádět složitější operace (stínování, vyhlazování, atd ). Velkou změnou, která ovlivnila vývoj na poli grafických karet, byl nástup operačních systémů, které byly postavené na grafickém uživatelském prostředí. Mezi typické funkce čipů pro 2D akceleraci patří: BitBlt přesouvání obsahu oken (bloky pixelů). Funkce BitBlt nasnímá obdelník a poté jej přesune a opět vyplní původní pixely. Hardware Cursor - pohyby kurzoru a zobrazení ukazatele myši Line Drawing kreslení čar (souřadnice počátečního a koncového bodu) Polygon Fill kreslení kružnice (souřadnice středu a velikost poloměru) 18

Zoom kopírování výstřižku obrázku 2.1.2 První 3D akcelerátory Jde vlastně o grafické karty, které se od svých předchůdců liší tím, že podporují vykreslování 3D scén. Základní operací, kterou musí 3D akcelerátor provést, je zobrazení vyplněných trojúhelníků s faktickým řešením jejich vzájemného překryvu podle vzdálenosti od pozorovatele (kamery). Tato základní operace může být rozšířena v několika směrech, např. pokrytí texturou, nebo osvětlením jedním či více světenými zdroji, použitím bump mappingu, [5], anti-aliasingu [5], atd. Všechny novější grafické karty obsahují kromě čipu pro urychlení vykreslování 2D grafiky i stejný čip pro 3D grafiku, popřípadě jsou oba čipy integrovány do jednoho. AGP/PCI Express Interface I 2 C Video Port Host Port Video Engines 3D/2D Pipeline Preprocessor 3D Pipeline 2D Pipeline TV out RAMDAC TV Encoder Display Local Memory Interface Local Memory Obrázek O.1: Vnitřní stavba čipu grafické karty standardně obsahující vlastní pipeline jak pro 2D, tak i pro 3D grafické operace V 90-tých letech se renderování (vykreslování) 3D grafiky začalo objevovat v grafických adaptérech herních konzolí, určených pro hraní počítačových her. To vedlo k pozdějšímu vývoji grafických karet pro klasické PC. Mezi prvními čipy byly S3 Virge, NVIDIA NV1, ATI 3D Rage, NVIDIA Riva, ATI Rage Pro/128, NVIDIA TNT. Později byly vyrobeny výkonnější karty např. GeForce 256, Radeon 256. 19

Obrázek O.2: Zpracování trojrozměrných scén zdroj: http://www.root.cz Obrázek popisující postup při zpracování trojrozměrných scén. Do vykreslování vstupují dva typy dat. První je informace o vrcholech polygonů [5] (trojúhelníků, plošných čtyrúhelníků, atd.) a jako druhý typ jsou rastrová data, zpravidla bitmapy (znaky v rastrové podobě, kurzory myši, atd.) a především textury, které se nanášejí na vykreslované polygony. Příklady karet z počátku 3D grafiky VIDIA V1 první 3D akcelerátor firmy NVIDIA, který mimo 2D a 3D grafiky obsahoval i 16-ti bitovou 32 kanálovou zvukovou kartu. Tato karta používala tzv. Quadratic Texture Map System (obraz je tvořený z čtvercových textur). Díky tomu nebyl kompatibilní s API Direct 3D [5] vydaný firmou Microsoft a karta se tak stala velice neúspěšnou. Velikost paměti byla 4 MB. ATI 3D Rage jde o první 3D akcelerátor firmy ATI. Narozdíl od konkurence tento akcelerátor podporoval API Direct 3D. GeForce 256 její kódové označení je NV10. Byla uvedena na trh srpnu roku 1999 a byla to první karta s označením GeForce. Na rozdíl od svého předchůdce (Riva TNT) je obohacena o Pixel pipeline [5], hardwarové přehrávání videa MPEG-2 [5], ale hlavně o implementaci T&L (transform and lighting) [5]. Čip je vyrobený 220nm výrobním procesem. Obsahuje 22 miliónů tranzistorů a 4 Pixel pipeline každá s jednou texturovací jednotkou. Tento čip měl v sobě integrovaný paměťový řadič, který přinesl podporu DDR pamětí. Maximální rozlišení bylo 2048x1536 při 32 bitové barevné hloubce. Radeon 256 její kódové označení je R100. Tato karta přišla na trh v roce 2000. Čip je vyrobený 180nm výrobním procesem. Obsahuje 30 miliónů tranzistorů a obsahoval 1 Vertex a 2 Pixel pipeline, každá se třemi texturovacími jednotkami. Taktéž jako její konkurent obsahovala podporu DDR pamětí a T&L jednotku, a technologie Hyper (vykreslování pouze viditelných pixelů). 20

2.1.3 Vybrané čipy do roku 2004 Po roce 2000 zůstali na poli grafických karet pouze tři výrobci a to ATI, nvidia a Matrox, který se zaměřil na specializované čipy a tak převážnou část trhu s grafickými kartami ovládly firmy ATI a nvidia. V roce 2001 s příchodem DirectX 8.0 [5], Vertex shader 1.0 [5] a Pixel shader 1.0 [5], představily obě firmy nové generace čipů s programovatelnými Vertex a Pixel shadery. Následující přehled čipů je důkazem technologického vývoje obou konkurentů. Čipy označené NV patří firmě nvidia a čipy označené R firmě ATI. Čip V20 - vyrobený 150nm výrobním procesem, obsahoval 57 miliónů tranzistorů, 1 Vertex a 4 Pixel pipeline. Na těchto čipech byla založena řada GeForce 3. Čip R200 - byl také vyrobený 150nm výrobním procesem, obsahoval 60 miliónů tranzistorů 2 Vertex a 4 Pixel pipeline. Tento se používal od karet s označením Radeon 8500. Čip V25 - vyrobený 150nm výrobním procesem, obsahoval 76 miliónů tranzitorů, 2 Vertex a 4 Pixel pipeline. Vylepšení anti-aliasingu a správy paměti. Čip R300 - vyrobený 150nm výrobním procesem, obsahoval 107 miliónů tranzistorů, 4 Vertex a 8 Pixel pipeline. Jako první čip přinesl podporu DirectX 9.0 a Shader model 2.0. Přinesl pokročilejší MultiSampling FSAA [5] a rychlejší anti-aliasing. Čip V30 - byl vyrobený 130nm výrobním procesem, obsahoval 80 miliónů tranzistorů, 3 Vertex a 4 Pixel pipeline. Podpora DirectX 9.0. Byla přidána technologie CineFX engine (optimalizace pipeline pro vyšší výkon a lepší obrazové efekty), dále IntelliSample pro správu vyhlazování obrazu. Čip R350 - byl vyroben 150nm výrobním procesem, obsahoval 110 miliónů tranzistorů, 4 Vertex a 8 Pixel pipeline. Podpora DDR2. Čip V35 - byl vyroben 130nm výrobním procesem, obsahoval 130 miliónů tranzistorů, 3 Vertex a 4 Pixel pipeline. Karty s tímto čipem srovnaly náskok grafických karet firmy ATI postavených na čipu R350. V následující tabulce jsou chronologicky shrnuty výše uvedené čipy a doplněny některé důležité parametry včetně karet, do kterých byly osazovány. Název karty Radeon 8500 GeForce 3 Radeon 9500 GeForce 4 Ti4200 Radeon 9800 GeForce FX 5900 Čip R200 NV20 R300 NV25 R350 NV35 DirectX 8.1 8.0 9.0 8.1 9.0 9.0b Takt jádra [MHz] 275 200 275 250 325 400 Takt pamětí [Mhz] 550 460 540 444 620 850 Typ pamětí DDR DDR DDR DDR DDR DDR Velikost paměti [MB] 64/128 64 64/128 64/128 128/256 128/256 Šířka sběrnice [bit] 128 128 128 128 256 256 Pixel pipeline 4 4 4 4 8 4 Vertex pipeline 2 1 4 2 4 3 TMU jednotky 8 8 4 8 8 8 ROP jednotky 4 4 8 4 8 4 Tabulka T.1: Přehled parametrů některých čipů do roku 2004 Frekvence pamětí je v efektivní hodnotě 21

Výčtem grafických karet v předchozí tabulce končí chronologie vývoje grafických systémů a s příchodem řad GeForce 6 firmy nvidia a Radeon X000 firmy ATI začíná podle mého dělení karet éra moderních grafických karet, které bude věnována druhá část mé práce. 2.2 Funkce grafické karty Grafická karta slouží k zobrazení obrazu na monitoru či jiné zobrazovací jednotce, pokud karta obsahuje tzv. VIVO [5], tak poté umožňuje naopak i analogový vstup např. pro ukládání videosouborů. Grafické karty současnosti zvládnou mnohem více než jen hraní počítačových her. GPU [5] mají na starosti plynulé přehrávání videa ve vysokém rozlišení, dokáží rychle počítat složité matematické, fyzikální výpočty a lze s nimi v reálném čase vytvářet realistické 3D scény. 3D grafika není jedinou oblastí, ve které je grafická karta využívána. V některých směrech dokáže, grafické jádro počítat až150krát rychleji než CPU. Hlavní podíl na tomto výkonu mají tzv. unifikované shadery [5] moderních čipů grafických karet. Dokonce se výrobci pokoušeli využít takto vysokého výkonu ke zpracování zvuku. 2.3 Architektura grafické karty Grafická karta obsahuje těchto 6 hlavních komponent: GPU Paměť Systémové rozhraní Frame buffer RAMDAC Výstupy grafických karet. Nejdůležitější část karty je jádro tzv. GPU, obsahuje řadič paměti, unifikované shadery (dříve Pixel shader a Vertex shader), ROP jednotky [5], TMU [5] jednotky a další. Data, která přicházejí ze systémového rozhraní jsou ukládána do grafické paměti, která slouží i jako paměť pro ukládání objektů a textur [5]. Takto uložená data potom přebírá GPU, který vypočítává všechny pozice, pohyby a rozhraní objektů 3D scény a vytvoří z nich obraz. Takto vyhotovený obraz je dále předán do frame bufferu, odkud putuje do RAMDAC převodníku, který zpracovává digitální informace do analogového nebo digitálního signálu, který dále zpracuje VGA monitor. RAMDAC ovládá digitální výstupy grafických karet, přes které putují data do zobrazovací jednotky. Podle typu karet může mít karta více výstupů. např. může obsahovat dva stejné výstupy (např. dva DVI výstupy) pro připojení více monitorů nebo různé výstupy (např. VGA a DVI výstupy) pro připojení monitorů různých generací. 22

Umístění jednotlivých komponent na kartě Obrázek O.3: Umístění komponent na kartě zdroj: http://www.die-grafikkarte.de (upraveno pro potřeby bakalářské práce) 23

2.4 Popis jednotlivých součástí grafické karty 2.4.1 GPU (Graphic Processing Unit) GPU je srdcem grafické karty a skládá se z těchto částí: Radič paměti Shadery ROP jednotky TMU jednotky Obrázek O.4: GPU zdroj: http://www.ati.com Radič paměti stará se o komunikaci mezi grafickou pamětí a jádrem. Nvidia má podporu pamětí až po GDDR3 naproti tomu AMD má podporu GDDR5. Shadery jsou to plně programovatelné součásti grafického čipu (každé pipeline), které se s ostatními jednotkami starají o zobrazování obrazu. Díky tomu, že jsou plně programovatelné, nemusí počítat pouze zobrazovaná data, ale mohou být využity k jiným výpočtům. Shadery se objevily od příchodu DirectX 8.0 a je jich několik typů. V dřívějších dobách bylo jádro rozděleno na Pixel shadery a Vertex shadery a aktivovala se ta příslušná část čipu, která byla v konkrétní situaci zapotřebí. Naproti tomu unifikované shadery jsou speciálně upravenou částí čipu, která umí zpracovávat Pixel, Vertex i Geometry shader úlohy. Všechny výše zmíněné shadery popíšu podrobněji. Unifikované shadery nejsou vlastně nic jiného než univerzální shadery, které se podle potřeby využijí pro jakoukoliv činnost (jak úlohy pro Pixel shadery, tak i pro Vertex shadery). Nevýhodou unifikovaných shaderů je, že při náhradě Pixel shaderů nedosahují jejich výkonů. Vertex shadery starají se o samotnou kostru obrazu tvořenou z polygonů (trojúhelníků). Vykreslují nerovnosti ve 3D grafice, hojně používané v moderních počítačových hrách. Dají se naprogramovat různé detaily, např. jak budou nerovnosti v objektu osvětlené, jak se budou měnit barvy a podobně. Použití Vertex shaderů vyžaduje HW podporu [5] ze strany grafické karty (s příchodem DirectX 8.0). Lze také v některých specifikovaných případech použít SW vykreslovaní prováděné přes procesor CPU. Pixel shadery shader, který se stará o práci s texturami a jednotlivým pixely na celé textuře, na které také aplikuje efekty jako stín, bumb mapping, odrazy světla v zrcadle, exploze atd. Protože se efekt provádí na jednotlivých pixelech, je velmi náročný na výkon jádra. První Pixel shadery byly podporovány grafickým kartami s DirectX 8.0. 24

Geometry shadery jsou to velice specifické shadery, které zatím nemají tak velké uplatnění. Tyto shadery pracují s celou kostrou objektu složenou z polygonů a změnou jejich počtu tvarují objekt. Tohoto principu se hlavně využívá v reálném čase např. při růstu trávy. Před zavedením geometry shaderů se tyto grafické efekty řešily několika objekty, které mizely a objevovaly se místo nich jiné, tím se docílíl stejný efekt. Bohužel tato metoda byla značně náročná. Shadery běží pouze na DirectX 10.0 a verzích na něm stavěných. Podporovány jsou Windows Vista a nově Windows 7. ROP jednotky Render Output Unit nebo také Raster Operations Pipeline. Jsou to výstupní vykreslovací jednotky. Tyto jednotky stojí na konci vykreslovacího (renderovacího) procesu u moderních 3D grafických karet. Provádí operace mezi příslušnými buffery v paměti grafické karty. V jednotce jsou umístěny filtry pro provádění anti-aliasingu a anizotropního filtrování [5]. TMU jednotky texturovací jednotky je to komponenta GPU, která byla dříve oddělena v samostatný procesor. Tato jednotka je schopná otáčet a libovolně zmenšovat či zvětšovat bitmapu [5]. V této jednotce probíhá mapování textur. Je to technika při, které se na 3D objekt přidávají detaily jeho povrchu. 2.4.2 Paměť grafické karty Poté, co CPU vyšle signál pro vykreslování dat, přicházejí tyto data přes sběrnici a uloží je jako elektronický obraz do paměti na grafické kartě. Pokud je grafická karta integrována základní desce používá operační paměť počítače, pokud má karta vlastní paměť, označuje se jako VRAM [5]. Nejčastěji se jedná o nějaký typ GDDR (Graphics Double Data Rate) nebo levnější DDR (Double Data Rate). Důležitou součástí paměti je tzv. Z-buffer [5], ve kterém jsou uložené hodnoty koordinátu (souřadnic) při zobrazení ve 3D režimu. Data z paměti přebírá a dále zpracovává GPU. Přehled pamětí používaných v grafických kartách DDR je to typ paměti, který se dnes využívá i v počítačích. Dosahuje vyššího výkonu než předchozí SDRAM [5]. Teoreticky se dá rychlost přenosu dat zdvojnásobit, pokud se mohou data přenášet nejen na náběžné hraně, ale také na sestupné hraně pulsu. DDR paměti taktované na 100MHz, jsou tak téměř stejně rychlé jako SDRAM taktované na 200MHz. Od nástupu této technologie se pro grafické karty používají výhradně paměti s touto technologií. Integrované karty využívají jako sdílený prostředek operační paměť počítače. DDR paměti jsou napájeny napětím 2.5V nebo 3.6. DDR2 je to nástupce paměti DDR, u kterého vzrostl počet kontaktů modulu ze 180 na 240. DDR2 má prakticky stejnou strukturu jako DDR, změnila se architektura Prefetch, která je dvojnásobná oproti DDR. Architektura Prefetch vyjadřuje, ke kolika paměťovým buňkám lze přistoupit současně. U pamětí DDR2 je architektura Prefetch=4. Hodnoty architektury Prefetch u předcházejících typů pamětí: u typu SDRAM byl Prefetch=1 u DDR Prefetch=2. 25

Zvýšení bylo docíleno přidáním pomocného multiplexeru a vstupního registru. U pamětí DDR2 je Prefetch=4 (to samé pro čtyři paměťové buňky). DDR2 moduly jsou při stejné taktovací frekvenci rychlé jako moduly DDR. Výhoda modulů DDR2 se projeví až při vyšších frekvencích (333MHz a více), poté jsou tyto paměti rychlejší než jejich předchůdci. DDR2 pracují uvnitř na polovině své vnější frekvence, snižuje se napětí, které je potřeba k provozu těchto modulů a to zároveň zvyšuje frekvence, které jsou možné dosáhnout. Tyto paměti pracují na napětí od 1.8 až po 2.2.V. DDR3 princip je stejný jako u předešlých pamětí, frekvence je vyšší a architektura Prefetch=8. Napětí 1.6V až 1.8V. GDDR2 v podstatě jsou to stejné paměti jako DDR. Liší se ve vyšším napájení a ve vyšších frekvencích, kterých mohou dosáhnout. Toho je docíleno tím, že paměti jsou pájené blíže napájecím obvodům. GDDR3 je to paměť podobná paměti DDR2, její architektura byla pozměněna pro menší spotřebu energie a tím je umožněno zvýšení frekvencí. GDDR4 tento typ paměti se na trhu moc neuchytil a to díky jejím vysokým latencím při nepříliš zvýšeným frekvencím oproti svému předchůdci. Napájení pamětí je 1.5V. GDDR5 jedná se o nejnovější typ paměti určenou pro grafické karty. Opět stejným způsobem se docílilo zvýšení rychlosti. Typ Efektivní frekvence [MHz] DDR 166-950 DDR2 533-1000 DDR3 700-2200 Tabulka T.2: Přehled frekvencí DDR pamětí Typ Efektivní frekvence [MHz] GDDR2 700-1000 GDDR3 700-2400 GDDR4 2000-3600 GDDR5 3400-5600 Tabulka T.3: Přehled frekvencí GDDR pamětí 26

2.4.3 Systémové rozhraní (interface) Grafická karta je propojena s procesorem přes základní desku pomocí systémového rozhraní, kterých je několik druhů. Rychlost přenosu dat přes rozhraní ovlivňuje rychlost zobrazovacího systému a zároveň je rozhraní využíváno i k napájení samotné grafické karty. Důvodem k inovacím systémového rozhraní jsou především zvyšující se nároky na množství přenesených dat, rychlost jejich přenosu i zvýšené nároky na napájení. Nevýkonnější grafické karty současnosti mají tak vysokou spotřebu energie, že musí obsahovat přídavné napájecí konektory, protože jim nestačí napájení přes systémové rozhraní. Popíšu zde rozhraní PCI, AGP a PCI-Express Přehled používaných systémových rozhraní PCI (Peripheral Component Interconnect) počítačová sběrnice používaná pro připojení komponent počítače k základní desce. Používá paralelní přenos dat s šířkou 32 nebo 64 bitů. Existují tři verze této sběrnice: Verze PCI 1.x je 32 bitová verze sběrnice pracuje na taktu 33,33 MHz se synchronním přenosem. Maximální teoretická přenosová rychlost je 133 MB/s. Naproti tomu 64 bitová sběrnice pracuje s taktem 66 Mhz a její maximální přenosová rychlost je 266 MB/s nebo 532 MB/s. Verze PCI 2.1 má taktéž verzi 32 a 64 bitovou. Obě jsou taktované na 66MHz přičemž 32 bitová verze má přenosovou rychlost 266MB/s a 64 bitová verze 532MB/s. Verze PCI 3.0 je konečná verze PCI i ona obsahuje verzi 32 a 64 bitovou. Obě jsou taktované na 133MHz přičemž 32 bitová verze má přenosovou rychlost 532MB/s a 64 bitová verze 1066MB/s. Sběrnice podporuje Plug and Play [5]. Úroveň logických signálů (tj. napětí logické jedničky) může nabývat hodnoty buď 5V, nebo 3,3V. Obrázek O.5: Sloty PCI zdroj: http://www.pctuning.cz AGP (Accelerated Graphics Port) sběrnice (port) vyvinutá pro grafické karty. Důvodem vzniku AGP byla potřeba zobrazování videa ve velkém rozlišení. AGP vznikla úpravou sběrnice PCI. Jedná se s spojení typu point-to-point. Grafické karty na PCI musí načítat textury ze systémové paměti RAM [5] do grafické paměti. AGP karty jsou schopné číst textury přímo z operační paměti. Velkou výhodou je, že se grafická karta nemusí dělit o šířku pásma s dalšími účastníky sběrnice. Na sběrnici, které má vyšší přenosovou rychlost může pracovat karta s nižší rychlostí. Obrázek O.6: AGP slot (černý) zdroj: http://www.certiguide.com 27

Existují tyto 4 verze: AGP 1x používá 32bitový kanál o taktu 66Mhz, který umožňuje maximální datový tok 266MB/s. Napětí 3.3V. AGP 2x používá 32bitový kanál běžící a 66MHz, ten umožňuje na efektivní hodnotě 133MHz maximální datový tok 533MB/s. Napětí 3.3V. AGP 4x používá 32bitový kanál běžící na 66MHz, který umožňuje na efektivní hodnotě 266MHz, maximální datový tok 1066MB/s. Napětí 1.5V. AGP 8x používá 32bitový kanál běžící na 66Mhz, ten umožňuje na efektivní hodnotě 533MHz, maximální přenosovou rychlost 2133MB/s. Napětí 0.8V. PCI-Express standard systémové sběrnice, který byl vytvořen jako náhrada za starší standardy PCI a AGP. Oproti svým předchůdcům komunikuje sériově, pomocí paketů. Pro přenos dat i všech řídících signálů používá dva páry vodičů. Každý pár přitom provádí přenos v jednom směru s rychlostí 2.525 Gbit/s. U následující verze PCI-Express 2.0 je to dvojnásobek. Zmíněné dva páry (lane tzn. dráha) vodičů obsahují 4 vodiče. Podle počtu drah se takové karty označují x1 (jedna dráha) x2 (dvě dráhy), x4, x8, x12, x16, x32. V konektoru x16 lze používat karty, které mají i menší počet drah. Taková karta bude ale pracovat s nižší rychlostí. Zajímavostí je, že PCI-express nepoužívá klasickou topologii, u které jednotlivé karty musí žádat o přístup na sběrnici (sdílení přenosového pásma s ostatními zařízeními). Místo toho jsou všechny konektory svedeny do přepínače, který dokáže libovolně dvě dráhy propojit a vytvořit tak point-to-point. Propustnost některých verzí: x1 250MB/s (obousměrně 500MB/s) x2 500MB/s (obousměrně 1GB/s) x4 1GB/s (obousměrně 2GB/s) x8 2GB/s (obousměrně 4GB/s) x16 4GB/s (obousměrně 8GB/s) Obrázek O.7: PCI Express (vrchní slot) zdroj: http://www.ixbtlabs.com PCI-Express 2.0 nová specifikace zvyšovala přenosovou rychlost jedné dráhy dvojnásobně. Tato verze je zpětně i dopředně kompatibilní. Lze karty s podporou PCI-Express 2.0 připojit na základní desku, která má podporu předchozí verze. Propustnost některých verzí: x1 500MB/s (obousměrně 1GB/s) x2 1GB/s (obousměrně 2GB/s) x4 2GB/s (obousměrně 4GB/s) x8 4GB/s (obousměrně 8GB/s) x16 8GB/s (obousměrně 16GB/s) 28

Verze Bitová šířka Frekvence [Mhz] Přenosů za takt Rychlost [MB/s] PCI 1.x 32 33 1x 133 PCI 1.x 64 33 1x 266/532 PCI 2.1 32 66 1x 266 PCI 2.1 64 66 1x 532 PCI 3.0 32 133 1x 532 PCI 3.0 64 133 1x 1066 AGP 1x 32 66 1x 266 AGP 4x 32 66 4x 1066 AGP 8x 32 66 8x 2133 PCI - Express 1.1 x1 1 2525 1x 250 PCI - Express 1.1 x8 8 2525 1x 2000 PCI - Express 1.1 x16 16 2525 1x 4000 PCI - Express 2.0 x1 1 5050 1x 500 PCI - Express 2.0 x8 8 5050 1x 4000 PCI - Express 2.0 x16 16 5050 1x 8000 Tabulka T.4: Přehled některých verzí systémových rozhranních 2.4.4 Frame buffer Je to oblast video paměti, kam grafický procesor ukládá jednotlivé vykreslené fragmenty. Část této paměti, který se označuje jako barvový buffer (color buffer), může být vykreslena na obrazovku. Další části jako např. (depth buffer nebo stencil buffer) nejsou pro uživatele přímo viditelné, ale souží k realizaci různých grafických algoritmů. 2.4.5 RAMDAC Je převodník digitálního signálu, se kterým pracuje grafická karta. Signál se převádí na analogový nebo digitální, se kterým pracuje konkrétní zařízení (CRT, LCD ). Převádí data v digitální podobě na hodnoty RGB (červená, zelená, modrá), které pak používá monitor. Dále je zde ještě SRAM paměť, kde se ukládá barevná mapa. U levných modelů může dojít ke zhoršení signálu (ve vyšším rozlišení) díky převodu z digitálního signálu na analogový signál a to kvalitou výstupních filtrů. U LCD monitorů tento problém nehrozí, není zde totiž nutná konverze z digitálního na analogový signál. 29

2.4.6 Výstupy grafických karet Analogový výstup (VGA) je realizován konektorem D-SUB 15, jedná se tedy o 15ti pinový konektor, který má tři řady po 5ti vodičích. Signál, který je analogový (spojitý). Úroveň signálu je přesně definován hodnotou napětí. Slouží především pro připojení CRT monitorů, ale také projektorů. Pomocí redukce je ho možné převést na digitální výstup DVI. Obrázek O.8: VGA zdroj: http://www.fuk.co.uk Digitální výstup (DVI) rozhraní obsahuje 6 vodičů pro přenos informací o barvě ve formátu RGB (pro každou barvu 2 vodiče). Je možné přidat druhý spoj, který zvýší rychlost přenosu. Rozhraní bylo vytvořeno pro bezproblémovou komunikaci mezi zobrazovacími zařízeními a pro přenos nekomprimovaných digitálních video dat. Digitální přenos je beze ztráty kvality, právě proto je obraz čistý a ostrý i při vyšších rozlišeních. Jeden spoj dosahuje rychlosti až 3.7 Gbit/s a zvládá rozlišení 1920x1200 při 60 Hz, dva spoje až 7.4 Gbit/s a zvládá rozlišení 2560x1066 při 60 Hz. Rozlišujeme 3 druhy DVI konektorů v závislosti na přenášených signálech: DVD-D přenos pouze digitálního signálu DVI-A přenos pouze analogového signálu DVI-I přenos digitálního i analogového signálu Obrázek O.9: DVI zdroj: http://www.fuk.co.uk S-Video (Separate Video) rozhraní pro přenos obrazu v rozlišení SD, nejčastěji jde o režimy s prokládanými řádky (PAL [5] a NTSC [5]). Obrázek O.10: S-Video zdroj: http://www.stingtalk.com 30

HDMI (High-Definition Multi-Media Interface) jde o rozhraní pro přenos nekomprimovaného obrazového i zvukového signálu. Podporuje přenos videa ve standardní, rozšířené nebo high-definition [5] kvalitě a až 8-kanálový digitální zvuk. Konektor HDMI má 19 pinů a je částečně zpětně kompatibilní s DVI rozhraním. Existuje více než 7 různých verzí tohoto rozhraní (liší se datovou propustností, maximálním podporovaným rozlišením). Toto rozhraní může propojovat zařízení, jako např. DVD přehrávač, satelitní přijímač. Podporuje rychlost přenosu až 10,2 Gbit/s. Z Obrázek O.11: HDMI zdroj: http://www.belfan.com DisplayPort jde o nejnovější grafické rozhraní (teoretický nástupce DVI a HDMI). Je to konektor sloužící k přenosu nekomprimovaného digitálního signálu s podporou ochrany DPCP (DisplayPort Content Protection), 128bit. šifrování AES a 8-kanálového zvuku. Nabízí vyšší přenosové rychlosti (možnost použití vyššího rozlišení a větší barevné hloubky), menší velikost konektoru, ochranu proti náhodnému vytažení. Podporuje rychlost přenosu 10,8 Gbit/s na vzdálenost do 3 metrů. Obrázek O.12: DisplayPort zdroj: http://www.stingtalk.com 2.5 Problematika chlazení Dnešní moderní grafické karty při velkém zatížení produkují velké množství tepla, které je nutné odvést. K tomuto účelu se používá několik druhů chlazení, které se odlišují hlavně svým chladícím účinkem. S nárůstem výkonu grafických čipů, pamětí i napájecích obvodů bylo nutné zlepšit jak odvod tepla z čipu (pasivním chladičem), tak i chladící účinek aktivního chlazení. V současné době se používají tyto typy chlazení: Pasivní Aktivní (kombinace obojího) HEATPIPE Vodní chlazení Pasivní chlazení jde o nepohyblivou kovovou součástku (tzv. pasivní chladič), která bývá umístěná na grafickém čipu a má na svém povrchu žebrování pro zajištění lepšího odvodu tepla. Pasivní chladič je vyroben z hliníku, mědi nebo kombinací obojího. 31

Jedná se pouze o odvod tepla z čipu, které je následně rozptýleno po chladiči odkud sálá do prostoru počítačové skříně a bývá většinou odvedeno mimo prostor skříně.. Používá se i na chlazení pamětí a napěťových bloků. Aktivní chlazení chlazení je zajištěno proudícím vzduchem. O proud vzduchu se stará ventilátor, který vhánění vzduch na čip. Kombinace obojího asi nejpoužívanější metoda chlazení. Teplo, které se rozptyluje po pasivním chladiči je následně odváděno ventilátorem aktivního chlazení, který bývá umístěn přímo na pasivním chladiči. Odvod tepla z pasivního chladiče se ventilátorem značně urychluje a chlazení čipu je daleko účinnější. HEAT-PIPE poměrně nová technologie, která přenáší teplo z jednoho místa na druhé pomocí par pracovní látky. Jedná se o hermeticky uzavřený systém, který je naplněn tekutinou. Po dosažení určité teploty se začne pracovní látka odpařovat a proudí směrem k ochlazovanému místu, kde kondenzuje. Obrovskou výhodou tohoto typu chlazení je mnohonásobně vyšší přenos tepla než je tomu u pasivního chlazení. Ochlazované místo může být pouze pasivní a nebo může být obohaceno aktivním chlazením pro zvýšení účinnosti. Vodní chlazení jde o uzavřený systém kolující vody. Tento systém se skládá z čerpadla, chladičů na jednotlivé čipy, velkého pasivního chladiče (tzv. radiátor). Teplo odebrané z čipu putuje do radiátoru, kde je teplá voda ochlazována. Případně je radiátor opatřen aktivním chlazením pro zvýšení účinnosti. Jedná se o nejúčinnější chlazení čipů. 32

3.0 Moderní grafické karty V bodě 2.1 v pohledu do historie jsem uvedl přehled grafických systémů a karet od různých výrobců až do roku 2004. V následující části bakalářské práce se budu věnovat moderním grafickým kartám od největších výrobců od roku 2004 až po současnost. Grafické karty jsou podle období ve kterém se vyráběly, charakterizovány určitou architekturou, použitými technologiemi a člení se do řad např. (GeForce 6, GeForce 7). Každou řadu charakterizují určité parametry, které budu u jednotlivých řad sledovat a budu je srovnávat s parametry následujících novějších řad. Mezi nejdůležitější parametry, které charakterizující grafické karty obsažené v jednotlivých řadách patří: Verze DirectX Rychlost čipu a pamětí, popř. shaderů Šířka paměťové sběrnice Počet Pixel a Vertex shaderů nebo Shader procesorů Počet TMU a ROP jednotek Ostatní údaje architektury nejsou z hlediska výkonu karty tak důležité. Jednotlivé řady se dělí do tříd Vyšší třída třída obsahuje nejvýkonnější karty z celé řady a jsou určené pro nejnáročnější uživatele, kteří vyžadují maximální grafický výkon Střední třída jsou to karty, které jsou kompromisem mezi nižší a vyšší třídou Nižší třída karty určené pro nenáročné uživatele a běžnou kancelářskou práci V dalším textu jsou podrobně popsány jednotlivé řady pomocí grafů, ve kterých jsou schématicky znázorněny karty rozdělené do jednotlivých tříd. V levém sloupci se nachází karty vyšší třídy, prostřední sloupec je věnován kartám střední třídy a v pravém sloupci najdeme karty nižší třídy viz. následující schéma. Obrázek O.13: Schéma rozdělení 33

3.1 Výrobci grafických karet Výrobou grafických karet se v minulosti zabývalo více firem, které při soupeření o co nejvýkonnější grafické karty, zejména v období 3D zobrazování, nestačily nastolenému tempu vývoje. Některé zkrachovaly jako např. firmy S3, Diamond Multimedia, Spea, Miro. Některé firmy byly pohlceny konkurencí např. firma Tseng Labs přešla do ATI, dříve velmi známá firma Hercules dnes přežívá jako obchodní značka francouzské firmy Gulliemot. Na trhu se snažila prosadit i firma 3dfx, která se v roce 2000 spojila s firmou STB a přišla s nabídkou čipů označených Voodoo. Zcela jinou strategii zvolila firma Matrox, která se nesnažila držet krok na poli karet pro hráče počítačových her, ale zaměřila se především na stabilní a funkční ovladače a na stabilní obraz při vysokém rozlišení. Po určitém čase se i Matrox pokusil proniknout na trh s kartami určenými pro hraní počítačových her, ovšem svou kartou Parhelia zaostala za konkurencí. Všech etap vývoje 3D grafických čipů se samozřejmě svou produkcí zúčastnily i dnes největší firmy na trhu a to sice ATI a NVIDIA. Přehled jejich grafických 3D čipů vyrobených v rozmezí let 1995 až 2002: 1. generace 2. generace 3 generace 4. generace 5. generace 1995/96 1996/97 1996/99 2000 2001/02 NVIDIA NV1 NVIDIA Riva 128 NVIDIA TNT NVIDIA GeForce NVIDIA GeForce 4,5 ATI 3D Rage ATI Rage Pro ATI Rage 128 ATI Radeon ATI Radeon 8500 Tabulka T.5: Přehled grafických 3D čipů vyrobených v letech 1995 až 2002 Ve své bakalářské práci se zaměřím na grafické karty, které obsahují čipy dvou největších výrobců, kterými jsou dnes již zmíněné firmy AMD(ATI) a NVIDIA. Tyto firmy svojí produkcí karet pokrývají převážnou většinu trhu. Jedná se o grafické karety, které jsou samostatnými komponentami PC a v době svého uvedení na trh představovaly to nejlepší, co z hlediska technologie a architektury bylo nabízeno. Při výběru sestavy počítače si náročnější uživatel s největší pravděpodobností vybere grafickou kartu od jednoho z výše uvedených výrobců. 3.2 AMD(ATI) Dříve firma ATI Technologies, Inc. Tato kanadská firma, která byla založena 20. srpna 1985 se sídlem v Markhamu, Ontario. 24. června 2006 byla zakoupena firmou AMD (Advanced Micro Device) se sídlem v Sunnyvale v Kalifornii. Avšak v mé práci ji budu označovat AMD(ATI) z důvodu, že karty od této společnosti mají stejný název ATI jako měly před sloučením obou společností. Je jedním z největších výrobců grafických karet na trhu. Mimo grafické čipy si vyráběla firma ATI i čipsety, které však nebyly tak populární. Dnes po sloučení obou firem je její portfolio větší o výrobu čipsetů a procesorů, které před sloučením vyráběla společnost AMD. Mezi špičku výrobců se dostala díky masovému zahlcení trhu levnými a přitom kvalitními kartami, montovanými zejména do nových počítačů. Dříve si ATI vyráběla i vlastní grafické karty, dnes už tomu tak není a vyrábí pouze čipy. Největším výrobcem karet je firma Sapphire. 34

Jejich karty se označují slovem Radeon. Jejím prvním grafickým akcelerátorem byl Graphic Solution. 3.2.1 Chronologický vývoj GK firmy AMD(ATI) Jako moderní grafické karty vyrobené firmou ATI uvažuji ve své práci karty, které se objevily na trhu v rozmezí let 2004-2009. Z časového hlediska jde poměrně o krátké období, ale z pohledu tempa vývoje IT technologií jde o období, ve kterém došlo k výraznému rozvoji technologie a architektury grafických karet. Za toto období vydala firma ATI celkem 6 řad karet, počínaje řadou Radeon X000 vydanou v roce 2004. Kompletní přehled řad je znázorněn v následujícím grafu včetně data uvedení na trh. V dalším textu jsou pak jednotlivé řady podrobně popsány a stěžejní karty těchto řad jsou v příslušných grafech rozděleny do jednotlivých tříd, jejíchž význam byl popsán již dříve. V závěru je provedeno srovnání jednotlivých řad mezi sebou z hlediska technologie, architektury, jednotlivých parametrů i přínosu pro uživatele. Obrázek O.14: Chronologický přehled jednotlivých řad grafických karet AMD(ATI) 35

3.2.1.1 ATI Radeon X000 Obrázek O.15: Dělení řady Radeon X000 na třídy a jednotlivé karty Charakteristika řady Radeon X000 DirectX 9.0 Shader model 2.0 Vertex pipeline Pixel pipeline Pixel shader Paměťový řadič ROP Hyper HD SmoothVision HD Temporal AA VideoShader HD Přípona HD u nových technologií, které přinesla tato řada značí High Definition [5]. 36

Architektura, technologie a jejich inovace Změn oproti předchozí generaci není mnoho. Hlavní rozdíl je ve zvýšení počtu výpočetních jednotek (tzv. paralelismus), v úpravách paměťového řadiče, FSAA a použité nové technologie 3Dc. Nové jádro R420 je vyrobeno 0,13 mikronovým procesem. Jádro R420 má několik shodných rysů s konkurenčním čipem NV40 a to konkrétně 6 Vertex shaderů a až 16 Pixel pipeline, které jsou rozděleny do skupin po čtyřech tzn. 2 Pixel shadery v každá pipeline společně s 4-cestným křížovým paměťovým řadičem. Schéma jednoho z nejvýkonnějších čipů z této řady, který je osazen do karty X800. Obrázek O.16: Schéma čipu R420 zdroj: http://www.ati.amd.com Jako je tomu i u NV40, jsou Pixel pipeline rozděleny do 4 čtveřic označováno jako quadpipelines. To umožňuje deaktivování defektní čtveřice. To znamená, že veškeré čipy R420, které se vyrobí s vadnou jednou čtveřicí se budou prodávat jako modely Pro s 12 pipeline a XT s 16 pipeline. K jednotlivým Pixel pipeline jsou přiřazovány renderovací scény. Celá scéna je rozdělena na dlaždice, které jsou najednou zpracovávány v jednotlivých čtveřicích pipeline (každá dlaždice je v jedné čtveřici Pixel pipeline). Díky masivnímu paralelismu je možné scénu rozdělit na menší dlaždice než tomu bylo u předchozí řady. Vertex pipeline je to část čipu, kde se po přijetí dat vytváří geometrie. Vertex pipeline je následovaná jednotkami Backface Culling a Clipping, Perspective Divide a Viewport. Starají se o ořezání části scény, které nejsou vidět nebo jsou překryté jinými objekty. Poté data putují do enginu, kde se obraz převede na trojúhelníky a přiřadí se barva a souřadnice textur. Následuje rozdělení do dlaždice, které jsou dále zpracovávány v jednotlivých čtveřicích Pixel pipeline. Vertex shader se skládá z vektorové ALU jednotky [5], která obsahuje 4 komponenty a ze skalární ALU jednoteky. Tyto jednotky pracují v 32-bitové FP hloubce [5]. 37

Obrázek O.17: Schéma Vertex pipeline čipu R420 zdroj: http://www.ati.amd.com Pixel pipeline jádro R420 se skládá ze 16 Pixel pipeline, které jsou rozděleny do čtveřic. Obrázek O.18: Jeden blok Pixel pipeline čipu R420 zdroj: http://www.ati.amd.com Pixel shader jádro R420 obsahuje dvojici výpočetních jednotek v každé pipeline. Dohromady má 32 ALU jednotek a 16 texturovacích jednotek. Dále obsahuje 2 vektorové a 2 skalární jednotky a jednu texturovací ALU. Změnou je rozšířený počet dočasných registrů (z 12 na 32), navíc byl přidán nový registr tzv. facing registr. Do těchto registrů jsou ukládány informace o tom, zda polygon směřuje k pozorovateli nebo od něj. Toho se využívá pokud bude potřeba osvětlit polygony jinou intenzitou ze přední části a jinou z části zadní. Také byl rozšířen počet maximálně možných instrukcí v jednom Pixel shaderu (původně 160 nyní 512) pro každou ALU (vektorovou, skalární, texturovací). F-buffer - jedná se o vyrovnávací paměť, do které se ukládá pixel, na kterém je potřeba provést jiné operace (není nutné jej posílat zpět do frame bufferu, aby následně putoval celou pipeline znovu). 38

Obrázek O.19: Schéma Pixel shader čipu R420 zdroj: http://www.ati.amd.com Paměťový řadič je prakticky totožný s řadičem používaným v předchozí řadě. Skládá se ze 4 samostatných jednotek a řadiče sběrnice, který je pospojovaný křížovým způsobem. Řadič je přizpůsoben pro spolupráci s pamětmi GDDR3. Obrázek O.20: Schéma paměťového řadiče čipu R420 zdroj: http://www.ati.amd.com ROP tato jednotka se od předchozí verze moc neliší. Je to výstup, ze kterého jdou informace o scéně do frame bufferu a z něho již na monitor. ROP se ale liší od konkurence. Obě dvě verze dokáží vyrenderovat až 32 pixelů za takt. U NV40 (konkurence) obsahuje ROP jednotky ZROP a CROP, druhá jednotka dokáže vykreslovat pixel pouze pokud není obarven. U R420 druhá jednotka vykresluje pouze pokud je zapnuté FSAA. Z toho vyplývají rozdílné výkony karet při použití scén se zapnutým FSAA nebo velkého počítaní barvy. HyperZ HD nástupce Hyper III. Obsahuje Z-buffer, Z/Stencil cache, Early Z Test, Z Compression and Fast Clear. Early Z Test se stará o vymazání bloků pixelů, které nebudou zahrnuty ve vykreslované scéně. Z-buffer dokáže pojmout až 4 Mpixely dat, díky tomu může bez problémů pracovat ve vysokém rozlišení (až 1920x1080). 39

Z Compression dokáže pracovat v poměru 8:1 (bezztrátově). Fast Clear vyprazdňuje Z-buffer. Obrázek O.21: Schéma Hyper HD čipu R420 zdroj: http://www.ati.amd.com SmoothVision HD součást ROP. Jedná se o engine, který zajišťuje FSAA. Kromě klasických nastavení Anti-aliasingu (2x/4x/6x), Anizotropní filtrování (2x/4x/8x/16x), mulitsamplingu s gama korekcí, bezztrátové barevné komprese 6:1 a adaptivních algoritmů pro bilineární a trilineární filtrování [5] přináší novou technologii Temporal AA. Temporal AA - pracuje způsobem prokládání a nabízí vyšší kvalitu obrazu se stejným výkonem. Princip Temporal AA (2Xt, 4Xt, 6Xt) spočívá v tom, že v lichých snímcích je uplatněn určitý vzorek pro subpixely, zatímco v sudých se používá jiný, který s ním nesplývá. Výsledkem pro lidské oko je dvojnásobné vyhlazování, 4x/8x/12x, při zachování výkonu. Tuto technologii lze použít u her, jejichž frame rate je dostatečně vysoký. Klesne-li rychlost hry pod 60 fps, je Tempoval AA automaticky vypnuto. Nevýhodou je, že musí být zapnuta vertikální synchronizace obrazu [5]. U anizotropního filtrování se žádné významné změny neuskutečnily. VideoShader HD - hardwarová akcelerace enkódování a dekódování MPEG1/2/4, podpora DXVA [5], funkce pro odstranění šumu, fullstream pro vyhlazování videa (včetně DivX [5] a WMV9 [5]). 40

Parametry vybraných čipů, které reprezentují řadu Radeon X000 Radeon X850 XT X800 GTO X800 XT X700 PRO X600 PRO X550 X300 Čip R480 R480 R423 RV410 RV380 RV370 RV370 Takt jádra [Mhz] 520 400 500 425 400 400 325 Takt pamětí [Mhz] 1080 980 1000 864 600 500 400 Typ pamětí GDDR3 GDDR3 GDDR3 GDDR3 DDR DDR DDR Velikost paměti [MB] 256 128-512 256 128/256 128/256 128-512 64-256 Šířka sběrnice [bit] 256 256 256 128 128 128 128 Pixel pipeline 16 12 16 8 4 4 4 Vertex pipeline 6 6 6 6 2 2 2 TMU jednotky 16 12 16 8 4 4 4 ROP jednotky 16 16 16 8 4 4 4 Tabulka T.6: Parametry vybraných čipů, které reprezentují řadu Radeon X000 Frekvence pamětí je v efektivní hodnotě 3.2.1.2 ATI Radeon X1000 Obrázek O.22: Dělení řady Radeon X1000 na třídy a jednotlivé karty 41

Charakteristika řady Radeon X1000 DirectX 9.0c Shader model 3.0 je propracovanější než u konkurenční NVIDIE, hlavní rozdíl je v podpoře FSAA při HDR [5], dále rychlostí dynamickým větvením a plnou přesností FP32 v celé pipeline Vertex shader Setup engine Pixel shader Ultra-Threading Dispatch Processor Paměťový řadič AVIVO Adapive Anti-Aliasing CrossFire Architektura, technologie a jejich inovace V architektuře této řady se objevily změny především v Pixel shaderu a paměťovém řadiči jádra. Již nejde o změnu v paralelismu (zdvojnásobení počtu výpočetních jednotek), ale o změnu v rozdělení Pixel shaderů do několika funkčních bloků. Obdobně jsou rozděleny i adresovací a texturovací jednotky. I v této řadě bude možnost vypínat nefunkční bloky jádra a použít je do levnějších karet s nižším výkonem i přes původní váhání ze strany ATI. 42

Schéma jednoho z čipů z této řady, který je osazen do karty X1800. Obrázek O.23: Schéma čipu R520 zdroj: http://www.ati.amd.com Vertex shader je první částí pipeline a bude obsahovat větší počet Vertex shaderu než předchůdce např. jádro R520 obsahuje 8 Vertex shaderů oproti jádru z předchozí řady R420, které má 6. Důvodem je jednoduchý, není potřebný tak velký výkon Vertex shaderů v nových hrách. 43

Obrázek O.24: Schéma Vertex shader čipu R520 zdroj: http://www.ati.amd.com Obrázek Vertex shaderu je obdobný jako v předchozí řadě. Každý Vertex shader je složen z vektorové ALU jednotky, která zpracovává 4-složkové instrukce (vec4) a ze skalární ALU jednotky, která operuje s jednou složkou. V shaderech se zpracovávají 2 instrukce za jeden takt. Což je 10 miliard instrukcí za jednu sekundu. Vertex shader je vylepšen o podporu Shader modelu 3.0. Podporuje dynamické řízení toku (větvení kódů, podmínky) a dokáže zpracovávat až 1024 instrukcí. Texturovací jednotky se již nenachází v tomto bloku. Tím je omezeno používání tzv. displacement mapping [5]. Nyní je zapotřebí, aby se textura nahrála do Vertex shaderu přes část Pixel shader. Ve schématu je znázorněno několik dalších jednotek: Backface Cull - zajišťuje ořezávání vrcholů, které se nachází na odvrácené straně jednotky. Clip ořezává vrcholy mimo obraz Perspective Divide upravuje perspektivu scény Viewport Transform převádí obraz do souřadnic pozorovatele Setup engine má na starosti hlavně převedení vrcholů na konkrétní trojúhelníky, dříve byl zodpovědný za rozdělování trojúhelníku do dlaždice, které byly posílány do jednotlivých bloků, ovšem nyní je tato úloha převedena na Ultra Threading Dispatch Processor, který se nachází o stupeň dále. Obrázek O.25: Schéma setup engine zdroj: http://www.ati.amd.com Rasterization přiřazuje jednotlivým polygonům různé údaje, např. souřadnice textur 44

Pixel shader největší změnou prošla Pixel pipeline. Nyní jsou pipeliny rozděleny na jednotlivé části do Pixel shaderu a do texturovací části. Dříve byly pod pojmem Pixel shader označovány jednotky ROP, jednalo se o poslední část jádra, které mělo na starost zapisování pixelů do frame bufferu. Postupem času se tento název přenesl na střední část, která se skládá z textutovacích jednotek (TMU) a fragment shaderů (ALU), které jsou častěji značeny jako Pixel shadery. Dále obsahuje Pixel shader jednotky pro výpočet adresy textur, podporuje také techniku zvanou reder-to-vertex buffer. Tato technika umožňuje jednotkám vyrenderovat scénu do textury tak, že ji poté zpracuje Vertex shader. Přitom není textura ukládána do frame bufferu ale přímo do Vertex bufferu, kde k ní má přístup Vertex shader. Na konci schématu je vidět ještě velké pole registrů, které jsou pro rychlou práci pixel shaderů velmi důležité. Pro každé vlákno je k dispozici místo v registrech pro 32 pixelů s hloubkou zpracování 128 bitů (FP32), celkem tedy 32 pixelů x 16 B x 512 vláken = 256 kb. Pokud zabere daný thread (vlákno) více místa v registrech, Dispatch procesor omezí počet dalších zpracovaných vláken, aby mohla být práce dokončena. Obrzek O.26: Schéma Pixel shader čipu R520 zdroj: http://www.ati.amd.com Obrázek popisuje rozdělení jádra R520 do čtveřice Pixel shaderů na blok adresovacích jednotek a texturovacích jednotek. Ultra-Threading Dispatch Processor jak jsem již zmiňoval jedná se o část jádra, která převzala dřívější funkci Setup enginu. Processor rozděluje zpracované pixely do tzv. threadů, jedná se o blok pixelů, který je vybrán z daného polygonu a poslán do konkrétní Pixel shader jednotky nebo do jednotky texturovací. Dispatch processor rozdělí scénu na vlákna, která mají velikost 4x4 pixely a takto přiřazená vlákna posílá mezi bloky Pixel shaderů. Každý blok Pixel shader může obdržet až 128 vláken ke zpracování. Po zpracování vláken jedním blokem Pixel shadrů obdrží blok další vlákna ke zpracování nezávisle na ostatních blocích Pixel shaderu. 45

Paměťový řadič jde o velkou změnu v novém jádru, dosud řadič těchto parametrů nebyl k vidění. Dovoluje pamětem používat vyšší frekvence. Základem interní sběrnice je dvojice 256-bitových okruhů, každý směruje opačným směrem. Data probíhají po sběrnici, na které se nacházejí tzv. ring stopy. Ty jsou určené k zápisu do externí paměti a čtení z ní. Na sběrnici se dále nalézají klienti. Klientem se myslí jakákoliv část čipu, která žádá o přístup do paměti. Mezi klienty se data předávají prostřednictvím mezipaměti (texture, color, Z/ztenčil cache a případně díky vláknům). Maximální počet paměťových čipů je 8, z toho vyplývá, že karta bude využívat 512Mbit paměťové čipy. Navíc je cache plně asociativní tzn. že lze zapisovat a číst z libovolného místa v paměti (platí pro cache texture, color a Z/stencil). Paměťový radič by měl přinést výhody hlavně v náročném nastavení (při kterém protéká čipem nejvíce dat tzn. vysoké rozlišení, zapnuté FSAA a anti-aliasing). Obrázek O.27: Schéma interní sběrnice (ring bus) čipu R520 zdroj: http://www.ati.amd.com 46

Obráek O.28: Detail ring bus zdroj: http://www.ati.amd.com AVIVO nová technologie, která vylepšuje kvalitu dekódovaného videa pomocí hardwarových filtrů a navíc ho i urychluje. Podporuje i akceleraci H.264 [5] a VC-1 [5]. Tato technologie je náhradou starší technologie VideoShader HD. Podporuje připojení k HDTV [5]. Skládá se z 5 částí. Capture odstraňuje šum, 12-bitový převod z analogového na digitální signál Encode hardwarové enkodování (H.264, VC-1, WMV9, MPEG-2, MPEG-4, DivX) Decode hardwarové dekódování Post process - změna velikosti obrazu apod. Display - gamma korekce, barevná korekce Obrázek O.29: AVIVO zdroj: http://www.ati.amd.com Adapive Anti-Aliasing jedná se o adaptivní vyhlazování. Pomocí této technologie dokáží grafické karty vyhlazovat textury s průhledností tzv. aplha textury. 47

CrossFire tato technologie, která se objevila již v minulé řadě, nyní doznala určitých změn. Nejvýznamnější je tzv. Compositing Engine, což je nastavení, při kterém grafická karta zvládá zobrazení v rozlišení 2048x1536 při 70Hz, kromě toho dokáže komunikovat skrze PCI Express. Parametry vybraných čipů, které reprezentují řadu Radeon X1000 Radeon X1950 XT X1900 GT X1800 GTO X1650 XT X1600 Pro X1300 XT X1300 Čip R580+ R580 R520 RV570 RV530 RV535 RV515 Takt jádra [Mhz] 625 575 500 575 500 500 450 Takt pamětí [Mhz] 1800 1200 1000 1350 780 800 500 Typ pamětí GDDR3 GDDR3 GDDR3 GDDR3 DDR2 DDR DDR Velikost paměti [MB] 256/512 256 256/512 128-512 128-512 128-512 128-512 Šířka sběrnice [bit] 256 256 256 128 128 128 128 Pixel pipeline 48 36 12 24 12 12 4 Vertex pipeline 8 8 8 8 5 5 2 TMU jednotky 16 12 12 8 4 4 4 ROP jednotky 16 12 8 8 4 4 4 Tabulka T.7: Parametry vybraných čipů, které reprezentují řadu Radeon X1000 Frekvence pamětí je v efektivní hodnotě 3.2.1.3 ATI Radeon HD 2000 Obrázek O.30: Dělení řady Radeon HD 2000 na třídy a jednotlivé karty 48

Charakteristika řady Radeon HD 2000 DirectX 10.0 Shader model 4.0 Unifikovaná architektura Shader Processor Proggression TMU Paměťová sběrnice Render Back-End Crossfire AVIVO HD HDMI s podporou audio 5.1 Architektura, technologie a jejich inovace Architektura jádra R600 a dalších čipů z této řady je odvozena z designu GPU ATI Xenos, které se nachází v útrobách Xboxu 360. Oproti předchozím čipům je znatelně vylepšen Ultra- Threaded Dispatch Processor, který má na starosti rozdělení shaderových výpočtů mezi jednotlivé stream processing units (dřívější shader jednotky), kterých má čip R600 rovných 320. Unifikovaná architektura - jako je tomu i u konkurence i nové Radeony HD 2000 přináší unifikovanou architekturu, podporu Shader modelu 4.0, DirectX 10.0, OpenGL 2.1 a s tím související možnosti dekódování HD videa s H.264/VC1 kompresí (tedy Blu-ray/HD DVD) [5]. Provádění rozličných GPU výpočtů, s podporou fyzikálních výpočtů. 49

Schéma jednoho z čipů z této řady, který je osazen do karty HD 2900. Obrázek O.31: Schéma čipu R600 zdroj: http://www.ati.amd.com Shader Processor Progression na obrázku lze vidět vývoj v oblasti architektury shader jednotek. Původní Radeony měli k dispozici 4 vektorové komponenty s výkonem 1 instrukce za takt. Od Radonů 9600 až po řadu X1000 (včetně) se implementovaly vektorové + skalární výpočetní jednotky, které zvládaly 2 instrukce za takt. Nová řada nabízí architekturu superskalární, která se skládá z 5 výpočetních jednotek zvládající 5 instrukcí za takt. 50

Obrázek O.32: Vývoj shaderů od původních Radeonů až po řadu Radeon HD 2000 zdroj: http://www.ati.amd.com TMU bylo vylepšeno 64-bitové HDR bilineárně fitrované texturování, které je nyní prováděno beze ztráty výkonu, což zhruba představuje zrychlení 7x oproti předchozí generaci. Dále bylo vylepšeno stínování pomocí techniky Percentage Closer Filtering a jsou podporovány větší textury s velikostí až 67 MTexel, které odpovídají texturám o rozlišení 8192x8192. Zajímavostí je implementace tzv. bikubického filtrování. Jde o filtrování, které by mohlo přinést lepší výsledky než anizotropní filtrování. Jde o první karty, které nabízejí její hardwarovou akceleraci. Paměťová sběrnice doznala velkých změn. Architektura sběrnice je kompletně decentralizovaná tzn. více flexibilní a jednoduše škálovatelná. Změnila svoji topologii na prstencovou (ring-bus), je plnohodnotně 512 bitová a její vnitřní šířka je 1024 bitů (rozděleno na čtení a zápis). Obsahuje systém Ring stop pro výměnu dat mezi zúčastněným komponentami. Obrázek O.33: Schéma paměťové sběrnice Radeonu HD 2900 zdroj: http://www.ati.amd.com 51

Render Back-End jednotka dříve zvaná ROP. Stejně jako jednotka ROP se stará o poslední krok v renderingu scény tzn. blending, antialiasing apod. Součástí této jednotky jsou Depth a Stencil buffery, jejíchž úkol spočívá v informaci o viditelnosti daného pixelu ve scéně a s tím související limitace renderingu ve viditelné oblasti od kamery. Oproti předchozí řadě se zdvojnásobil počet Multiple Render Target na rovných 8 s podporou MSAA [5]. Efektivnější je nyní zpracovávání Render-to-texture. Jde o renderovací techniku, která je používána pro environment nebo shadow mapping atd. Zajímavostí z oblasti novinek je tvorba vlastních nastavení Anti-aliasing filtrů (Custom Filter AA), zráceně CFAA. Obrázek O.34: Schéma jednotky Render Back-End čipu R600 zdroj: http://www.ati.amd.com Crossfire ani u nové řady nechybí možnost zapojení více karet. Nově byl vylepšen AFR detekční algoritmus. Jsou podporována rozlišení až do 2560x1024 a byla implementována budoucí podpora pro zapojení více něž dvou karet. AVIVO HD přináší hardwarovou akceleraci celého výpočetního procesu u kodeků H.264 a VC1 (akcelerace HD filmů z Blu-ray a HD DVD médií). Novinkou je akcelerace zvaná Entropy decode, která reprezentuje nejnáročnější výpočty při přehrávání H.264. 52

Obrázek O.35: AVIVO HD zdroj: http://www.ati.amd.com Parametry vybraných čipů, které reprezentují řadu Radeon HD 2000 Radeon 2900 XT 2900 Pro 2900 GT 2600 XT 2600 Pro 2400 XT 2400 Pro Čip R600 R600 R600 RV630 RV630 RV610 RV610 Takt jádra [Mhz] 742 600 600 800 600 700 525 Takt shaderů [MHz] 742 600 600 800 600 700 525 Takt pamětí [Mhz] 1650 1600 1600 2200 1000 1400 800 Typ pamětí GDDR3 GDDR3 GDDR3 GDDR4 DDR2 GDDR3 DDR2 Velikost paměti [MB] 512/1024 512 256 128-1024 256/512 128/256 128-512 Šířka sběrnice [bit] 512 512 256 128 128 64 64 Shader Processors 320 320 240 120 120 40 40 TMU jednotky 16 16 16 8 8 4 4 ROP jednotky 16 16 16 4 4 4 4 Tabulka T.8: Parametry vybraných čipů, které reprezentují řadu Radeon HD 2000 Frekvence pamětí je v efektivní hodnotě 53

3.2.1.4 ATI Radeon HD 3000 Obrázek O.36: Dělení řady Radeon HD 3000 na třídy a jednotlivé karty Zajímavostí je nové značení produktů. První číslo značí řadu jako tomu bylo doposud. Další číslo značí rodinu karet, podle kterého je daná karta zařazena do vyšší (číslo 8), střední (číslo 6) nebo nižší třídy (číslo 4). U této řady se již nepoužívají přípony XT (výkonnější model), Pro. Tyto přípony jsou v této řadě nahrazeny konkrétním posledním dvojčíslím, kde 50 znamená dřívější Pro a 70 dřívější XT. Ostatní přípony, které se používaly v minulých řadách, se od této řady již nepoužívají. 54

Obrázek O.37: Nové značení zdroj: http://www.ati.amd.com Charakteristika řady Radeon HD 3000 DirectX 10.1 Shader model 4.1 ATI PowerPlay CrossFireX Cube Map Arrays Podpora WDDM 2.1 PCI Express 2.0 Architektura, technologie a jejich inovace Tato řada následuje po nepříliš úspěšné řadě. Z hlediska architektury nedošlo k zásadním změnám, nová je např. paměťové sběrnice, která byla snížena na 256-bit a byly provedeny optimalizace na vnitřní Ring-Bus sběrnici zlepšující její efektivitu nebo podpora DirectX 10.1. Spíše než změn v architektuře, doznala řada vylepšení v přidaných technologiích. Na následujícím obrázku je znázorněna architektura charakterizující tuto řadu. 55

Obrázek O.38: Architektura řady HD 3000 zdroj: http://www.ati.amd.com ATI PowerPlay tato technologie je známá z integrovaných grafických karet, která nyní přichází i na desktopové karty. Tato technologie přináší nový profil Light Gaming ke dvěma již stávajícím (2D a 3D). Light Gaming v určitých případech dokáže snížit frekvenci jádra, aby tím dosáhl menší spotřeby a tím i menšího množství tepla vydávaného čipem. Tato technologie se využije např. při hraní nenáročných her, kde není zapotřebí tak vysokého výkonu karty. O rozpoznání potřebného výkonu čipu v konkrétní aplikaci se starají ovladače grafické karty, které neustále monitorují vytížení jádra. Následující obrázek popisuje rozdíly ve spotřebě mezi jednotlivými kartami. První tři sloupce jsou při plném zatížení, druhé tři při hraní nenáročných her a nakonec třetí sloupce ukazují výkon při "běžném" použití. 56

Obrázek O.39: ATI PowerPlay zdroj: http://www.ati.amd.com CrossFireX jak jsem zmínil v předchozí řadě, dochází u technologie CrossFire ke změně počtu spolupracujících karet na jednom počítači. Cube Map Arrays nová vlastnost v oblasti texturování. Tato technika zlepšuje globální osvětlování v moderních hrách nebo v profesionální 3D grafice. Kvalita zobrazení scény se tak blíží k filmové kvalitě označované jako ray traicing [5] při minimálních 25 snímků za vteřinu. Podpora WDDM 2.1 (Windows Display Driver Model) WDDM přišla společně s operačním systémem Microsoft Windows Vista. V předchozích operačních systémech komunikoval ovladač grafické karty se samotným hardwarem a byl součástí jádra operačního systému (Kernel). Nyní je část ovladače přesunuta mimo jádro do tzv. user space a nazývá se UMD (User Mode Driver). Zbytek zůstává v jádru OS tzv. KMD (Kernel Mode Driver). Výhodou WDDM je, že pokud spadne ovladač Direct3D (který byl doposud implementován v jádru OS) nespadne celý systém a postihne to pouze aplikace využívající tento ovladač. Důvodem změny je stabilita jádra operačního systému. Context switching doba přepínání mezi jednotlivými vlákny v GPU, byla zkrácena Page fault stav, kdy je paměť namapovaná ale neobsahuje žádná data. V tomto případě karta čeká na opětovné poslání dat a začne pracovat od začátku. 57

PCI Express 2.0 na obrázku je vidět rozdíl ve výkonu mezi PCI Express 1.1 a PCI Express 2.0. Přínos se pohybuje mezi 5% až 20%. Obrázek O.40: Výhody PCI Express 2.0 zdroj: http://www.ati.amd.com Parametry vybraných čipů, které reprezentují řadu Radeon HD 3000 Radeon 3870 X2 3870 3850 3650 3650 3470 3450 Čip RV670 2x RV670 RV670 RV635 RV635 RV620 RV620 Takt jádra [Mhz] 825 775 668 725 725 800 600 Takt shaderů [MHz] 825 775 668 725 725 800 600 Takt pamětí [Mhz] 1800 2250 1656 1600 1000 1900 1000 Typ pamětí GDDR3 GDDR4 GDDR3 GDDR3 GDDR3 GDDR3 DDR2 Velikost paměti [MB] 512/1024 512/1024 256-1024 128-1024 256/512 256/512 64-512 Šířka sběrnice [bit] 256 256 256 128 128 64 64 Shader Processors 640 320 320 120 120 40 40 TMU jednotky 32 16 16 8 8 4 4 ROP jednotky 32 16 16 4 4 4 4 Tabulka T.9: Parametry vybraných čipů, které reprezentují řadu Radeon HD 3000 Frekvence pamětí je v efektivní hodnotě 58

3.2.1.5 ATI Radeon HD 4000 Obrázek O.41: Dělení řady Radeon HD 4000 na třídy a jednotlivé karty Charakteristika řady Radeon HD 4000 DirectX 10.1 Shader model 4.1 TMU Výpočetní jednotky Render Back-Ends Paměťový řadič CrossFire Side-port TeraScale Graphic Engine ATI PowerPlay UVD 2 HDMI - s podporou 7.1 audio 59

Architektura, technologie a jejich inovace Čipy v předchozích řadách byly konstruovány s předpokladem, že další vývoj nebude zvyšovat počet čtveřic výpočetních jednotek, ale bude se zvyšovat poměr mezi ALU a texturovacími jednotkami. Architektura předchozích čipu tedy byla rozvržena tak, aby při implementaci dalších ALU jednotek se nezvyšovala komplexnost řídících obvodů a s tím i případné zvyšování rozměru čipu. Záhy se ale ukázalo, že nároky na aritmetiku čipu nejsou tak vysoké jako se předpokládalo. Proto došlo k přeskupení architektury SIMD [5] tak, aby odpovídaly čtveřicím jako u předchozích čipů, což umožnilo implementovat ve vyšším počtu i texturovací jednotky. Obrázek O.42: Schéma čipu RV740 zdroj: http://www.ati.amd.com 60

Shader jde o největší část jádra, který s skládá ze SIMD jednotek. Čip RV770 je má uspořádané v deseti řadách a každá nese 80 stream procesorů a to dohromady dává 800 stream procesorů v čipu. TMU oproti předchozím čipům byla vypuštěna filtrace full-speed FP16 a výrobce se vrátil k původní filtraci Int8 (osmibitové textury). Důvodem byly velké nároky na plochu pro texturovací jednotky. Při přechodu na původní filtraci se ušetřilo místo a mohlo se tak implementovat více těchto jednotek. Další změnou je vypuštění tzv. Sampling Units, které měly za úkol zpracovávat všechny textury, u kterých nebyla potřeba filtrace (např. displacement mapping). Ukázalo se totiž, že se tento koncept se nedokáže téměř uplatnit. Na obrázcích jde vidět rozdíl oproti předchozí generaci texturovacích jednotek. Sampling units byly vypuštěny (dvě horní čtveřice v prvních schématu). Obrázek O.43: Schéma texturovacího bloku R600 zdroj: http://www.ati.amd.com Obrázek O.44: Schéma texturovacího bloku RV770 zdroj: http://www.ati.amd.com Výpočetní jednotky celkové uspořádání výpočetních jednotek bylo upraveno tak, aby mohl být čip co nejefektivněji rozšířen a texturovací jednotky byly upraveny tak, aby byly použitelné pro co největší množství aplikací. ALU jednotky zůstaly bez větší změny tzn. superskalární 5D jednotky složené z pěti Stream Procesorů. 61

Obrázek O.45: Schéma výpočetní jednotky RV770 zdroj: http://www.ati.amd.com Render Back-Ends je kombinací Render Back-End jáder předchozí řady a ROP jednotek předminulé řady. Byly doplněny o fixní resolve pro základní režimy FSAA s box filtrem (2x, 4x, 8x) jako tomu bylo u jádra R580. Oproti předchozím čipům, byl zdvojnásobený výkon při generování MSAA vzorků. Byl výrazně zvýšen výkon při použití FSAA a to díky nové implementaci paměťové řadiče. Jedná se o snížení propadu ve výkonu až 4x. Obrázek O.46: Schéma Render Back-Ends jednotky v čipu RV770 zdroj: http://www.ati.amd.com Paměťový řadič (Crossbar) jelikož se zvýšil počet SIMD, tím narostl i počet klientů, které je potřeba připojit ke sběrnici, bylo efektivní změnit topologii sběrnice. Už se nejedná o ringbus sběrnici, protože počet klientů, kteří by museli být připojeni, by bylo mnoho, ale o distribuované řešení, které se zakládá na podobných základech jako ring-bus (centrální řízení programovatelností). Všechny části jádra jsou spojeny s novým memory hubem, který řídí všechny operace s pamětí. 62

Obráek O.47: Schéma propojení paměťové sběrnice v čipu RV770 zdroj: http://www.ati.amd.com CrossFire Side-port jde o novinku v řadiči paměti, která bude sloužit pro lepší spojení čipu na duálním Radeonu HD 4870 X2. Grafická karta, která používá k výpočtům dvě jádra, potřebuje mít zajištěn přístup k PCI Express sběrnici pro obě jádra. Tento problém bývá řešen switchem nebo PCI Express řadičem. Nevýhodou je, že pokud grafická karta načítá do své paměti textury, musí se nahrát do paměti z každého jádra. Tento problém se objevoval u předchozí generace, konkrétně u karty Radeon HD 3870 X2, která měla použitý PCI Express řadič 1.x (nová verze při výrobě čipu pro tuto kartu nebyla k dispozici). U Radeonu HD 4870 X2 by se tato situace neměla opakovat. TeraScale Graphic Engine název grafického jádra, které umožňuje pro počítání herní scény počítat zároveň s reálnou fyzikou a podobně. ATI PowerPlay nyní je vše řízeno hardwarově kontolerem, který je implementovaný na samotné kartě, ovladače budou mít nyní na funkci minimální vliv. UVD 2 nový dekodér videa, který podporuje HD videa. Aplikuje na videa efekty pro vylepšení obrazu a přepočítává klasická DVD do vyššího rozlišení. 63

Parametry vybraných čipů, které reprezentují řadu Radeon HD 4000 Radeon 4870 X2 4870 4850 4770 4670 4650 4350 Čip RV770 2x RV770 RV770 RV740 RV730 RV730 RV710 Takt jádra [Mhz] 750 750 625 750 750 600 600 Takt shaderů [MHz] 750 750 625 750 750 600 600 Takt pamětí [Mhz] 3600 3600 1986 3200 2000 1000 1000 Typ pamětí GDDR5 GDDR5 GDDR3 GDDR5 GDDR3 DDR2 DDR2 Velikost paměti [MB] 2048 512-2048 512-2048 512 256-1024 256-1024 256-1024 Šířka sběrnice [bit] 256 256 256 128 128 128 64 Shader Processors 1600 800 800 640 320 320 80 TMU jednotky 80 40 40 32 32 32 8 ROP jednotky 32 16 16 16 8 8 4 Tabulka T.10: Parametry vybraných čipů, které reprezentují řadu Radeon HD 4000 Frekvence pamětí je v efektivní hodnotě 3.2.1.6 ATI Radeon HD 5000 Obrázek O.48: Dělení řady Radeon HD 5000 na třídy a jednotlivé karty 64

Charakteristika řady Radeon HD 5000 DirectX 11.0 Shader model 5.0 Řídící jednotka čipu Render Back-Ends TMU Paměťový subsystém SAD Eyefinity Architektura, technologie a jejich inovace Obrázek O.49: Schéma čipu RV870 zdroj: http://www.ati.amd.com Řídící jednotka čipu byla nově přepracována a nabízí dvojitý rasterizer a novou teslační jednotku, která je plně kompatibilní s DirectX 11.0. Tato teslační jednotka navyšuje počet polygonů (trojúhelníku v objektu) a tím je celý obraz více detailní. 65

Obrázek O.50: Řídící jednotka čipu RV870 zdroj: http://www.ati.amd.com V novém nejvýkonnějším jádře této řady se nachází dvojnásobný počet SIMD bloků vůči nejvýkonnějšímu jádru předchozí řady RV770. Obrázek O.51: Schéma výpočetního jádra čipu RV870 zdroj: http://www.ati.amd.com Render Back-Ends a TMU opět byl zvýšen jejich počet, ale bylo nutné je modifikovat, aby byly schopné plnit specifikace nového DirectX 11.0, které spočívají v bitových operacích, jako jsou count, insert, extract, atd. Oproti předešlým RBE jednotkám umí tzv. fast color clear. Tato funkce umožňuje rychlejší běh v určitých typech her. 66

TMU nyní pracují efektivněji díky nové verzi DirectX. Na rozdíl od RV770 umí nejenom číst komprimované AA barevné buffery, ale již se neprovádějí interpolace, které nyní přebírají Stream procesory (specifikace DirectX), které jsou schopny tyto operace provádět daleko rychleji než TMU jednotky. Paměťový subsystém na osvědčeném modelu se nic neměnilo, stále se jedná o 256- bitovou sběrnici. Vzhledem k tomu, že nová řada potřebovala vyšší propustnost kvůli vyššímu výkonu celé karty, přešlo se na nové typy pamětí GDDR5. Musel se ovšem vyřešit problém s možným šumem, které tyto rychlé paměti přinášejí. Např. na kartě Radeon 5870 se nachází 8 bloků pamětí, které běží na vysokých frekvencích a mohl by vznikat vzájemný šum mezi jednotlivými bloky. Vývojáři proto implementovali základní detekci chyb při čtení a zápisu (CRC-8). Tato funkce kontroluje data a pokud dojde k problému v určitém bloku dat je řadič pamětí požádán o přeposlání dat. Obrázek O.52: Schéma paměťového subsystému čipu RV870 zdroj: http://www.ati.amd.com SAD funkce, která počítá součet absolutních diferencí, který je důležitý pro enkódování videa nebo při odhadování pohybu ve scéně. Předešlý čip RV770 potřeboval nejméně 12 funkcí, aby dosáhl stejného výkonu jako RV870. 67

Eyefinity možnost připojení až tří LCD panelů k počítači, u karty Radeon HD 5870 dokonce až 6 LCD panelů. Na obrázku je vidět použití této funkce. Lze na všech panelech vidět jeden obraz nebo mít na každém LCD panelu jiný obraz (internet, film, hru,...). Obrázek O.53: Eyefinity zdroj: http://www.ati.amd.com DirectX 11.0 - přináší především nové funkce jako multi-threaded rendering, který umožní lepší využití multi-core procesorů pro renderování ve 3D, unifikovaný standard GPGPU (výpočty za pomocí GPU) a vylepšení možností vyhlazování a jeho efektivity atd. Parametry vybraných čipů, které reprezentují řadu Radeon HD 5000 Radeon 5970 5870 5830 5770 5670 5570 5450 Čip RV870 2x RV870 Cypress RV850 Redwood Redwood Cedar Takt jádra [Mhz] 725 850 800 850 775 650 650 Takt shaderů [MHz] 725 850 800 850 775 650 650 Takt pamětí [Mhz] 4000 4800 4000 4800 4000 1800 1600 Typ pamětí GDDR5 GDDDR5 GDDR5 GDDR5 GDDR5 GDDR3 GDDR3 Velikost paměti [MB] 2048 1024/2048 1024 512/1024 512/1024 512/1024 512/1024 Šířka sběrnice [bit] 256 256 256 128 128 128 64 Shader Processors 3200 1600 1120 800 400 400 80 TMU jednotky 160 80 56 40 20 20 8 ROP jednotky 64 32 16 16 8 8 4 Tabulka T.11: Parametry vybraných čipů, které reprezentují řadu Radeon HD 5000 Frekvence pamětí je v efektivní hodnotě 68

3.3 VIDIA NVIDIA Corporation nebo také nvidia je Americká firma se sídlem v Santa Clara v Silicon Halley ve státě Kalifornie. Společnost byla založena v roce 1993. Jedním ze zakládajícím členem byl pan Curtis Priem, který je dosud jejím výkonným ředitelem. V roce 2000 NVIDIA koupila firmu 3dfx, prakticky první firmu, která přišla s komerčně využitelným akcelerátorem. Nvidia je jedním z hlavních dodavatelů integrovaných obvodů do čipsetů, základních desek, grafických jáder a herních konzolí. Jejím prvním grafickým čipem byly NV1 a NV2. Její čipy nesou označení GeForce. 3.3.1 Chronologický vývoj GK firmy VIDIA Obdobně jako u předchozího výrobce je i zde sledována produkce karet v rozmezí let 2004 až 2010. V tomto období vydala na trh firma NVIDIA rovněž 6 řad grafických karet, počínaje řadou GeForce 6, která se objevila na trhu v dubnu 2004. Chronologie uvedení jednotlivých řad na trh je znázorněna v následujícím schématu. Opět budou popsány změny v architektuře a zdůrazněny nové technologie jednotlivých řad a v závěru bude proveden souhrnné srovnání jednotlivých řad. 69

Obrázek O.54: Chronologický přehled jednotlivých řad grafických karet NVIDIA 70

3.3.1.1 GeForce 6 Obrázek O.55: Dělení řady GeForce 6 na třídy a jednotlivé karty Charakteristika řady GeForce 6 DirectX 9.0 Shader model 3.0 Pipeline Vertex shader Displacement mapping Pixel shader ROP Paměťové rozhraní IntelliSample 3.0 VIDIA UltraShadow II PureVideo Architektura, technologie a jejich inovace Nová architektura SIMD/MIMD [5], nahrazuje VLIW [5] architekturu, která v předchozí řadě nedopadla příliš šťastně. Mezi API [5] a systémovým rozhraním stojí kompilátor. První i druhá verze generace CineFX byly postavené na VLIW architektuře. Tyto VLIW procesory dokáží pomocí kompilátoru upravovat zdrojový kód tak, že se místo několika instrukcí použije jedna, o velké délce slova. Díky nepodařenému VLIW kompilátoru byla předchozí řada, slabší v operacích se shadery. 71

Pipeline - rozdíl oproti předchozí generaci tkví v masivním paralelismu (jako je tomu i u konkurence). Na schématu 3D pipeline NV40 si můžeme všimnout 16-ti pevně určených pipeline. I když jsou jednotky oddělené nepracují nezávisle. Celkový počet 16 pipeline je rozdělen do 4 bloků. Každá dlaždice o rozměrech 2x2 pixely, do kterých je rozdělena pozice polygonů/trojúhelníků, je zpracovávána jedním blokem. Výhoda této metody spočívá v lepším přístupu do paměti. Možnou nevýhodou může být např. když trojúhelník nezaplní celou dlaždici. Stejně jako u konkurence i zde lze špatně vyrobené jádro s defektním blokem prodávat jako kartu s nižším výkonem. Obrázek O.56: Schéma pipeline NV40 zdroj: http://www.nvidia.com Vertex shader nachází se na začátku pipeline a pracuje s vrcholy textury. U jádra NV40 se jedná o 6 Vertex shaderů, které pracují jako MIMD, to znamená, že každý Vertex shader může ve stejný okamžik pracovat na jiném vrcholu při použití jiných instrukcí. 72

Obrázek O.57: Schéma Vertex shaderu čipu NV40 zdroj: http://www.nvidia.com Každý Vertex shader obsahuje paralelně pracující skalární a vektorovou jednotku, přičemž v jednom cyklu lze provést v každé jednotce 5 operací. Branch Unit - objevila se s příchodem DirectX 9.0. Dovoluje hardwarovou podporu větvení kódu. (Vertex shadery verze 3.0 nově podporují neomezeně dlouhý kód). Displacement mapping - tato technologie se původně objevila u čipů Parhelia od firmy Matrox. Funguje na principu načítání černobílé textury do Vertex shaderu a jednotlivé odstíny šedé značí hloubku nebo výšku pixelu nad původním povrchem. Tohoto efektu se využívá pro vytvoření tzv. vrstevnic pomocí nichž lze vytvořit prostorový efekt. Oproti tomu řada GeForce 6 dokáže načítat texturu hardwarově do Vertex enginu. Nevýhodou je že textura nemůže být filtrována. Pixel pipeline jádro NV40 obsahuje 16 pipeline, které umí vykreslovat v jednom taktu 16 pixelů. Novinkou je, že pokud není nutné nanášet texturu a počítá se pouze s Z-hodnotou dokáže NV40 vykreslit 32 pixelů za takt. 73

Obrázek O.58: Schéma Pixel pipeline čipu NV40 zdroj: http://www.nvidia.com Architektura GeForce 6 je superskalární (zvládá několik instrukcí současně). Každá pixel pipeline NV40 obsahuje jednu TMU jednotku a dvě jednotky pro práci se shadery, které pracují nezávisle na sobě nebo spolupracují. V TMU jednotkách dochází k filtrování textur, které NV40 zpracovává v jednom cyklu (bilineární filtrování) nebo ve dvou cyklech (trilineární filtrování), navíc umí až 16x anizotropní filtrování. Pixel shader v každé pipeline se vyskytují po dvojicích a jsou postaveny na architektuře SIMD. Na obrázku je znázorněno, že jedna Pixel shader jednotka je potřeba k operacím s texturami (pokud není potřeba využívat Pixel shader k operacím s texturami lze provádět dvě nezávislé instrukce zároveň). Obrázek O.59: Schéma Pixel shader čipu NV40 zdroj: http://www.nvidia.com ROP na obrázku jsou vidět dvě hlavní jednotky ZROP (zapisování Z-hodnoty do frame bufferu) a CROP (hodnota kombinace Z-hodnoty a barvy daného pixelu). 74

Díky tomuto principu dokáže NV40 vykreslovat díky absenci barevné hloubky dvakrát více pixelů (neboli Z/stencil operace). Obrázek O.60: Schéma ROP jednotky čipu NV40 zdroj: http://www.nvidia.com Paměťové rozhraní NV40 obsahuje čtveřici samostatných řadičů, které pracují na 64- bitových kanálech. To dohromady dává 256-bitové rozhraní, které NV40 používá. Tato technologie se nazývá LMA III (Light-Speed Memory Architecture). Zajímavostí je, že i když jsou paměti velice rychlé, nedostačují renderovacímu výkonu jádra NV40. Šírka pásma je 35 GB/s a může být vyrenderováno z 6,4 Gpixel/s pouze 4,8 Gpixel/s. Výkonem to odpovídá zhruba 12 pixel pipeline. IntelliSample 3.0 tato jednotka se nachází v ROP a zajišťuje Anti-Aliasing. Tato technologie přináší tzv. Rotated Grid Multisampling FSAA, což je možnost 8x Anti-Aliasing. VIDIA UltraShadow II jedná se už o druhou verzi této technologie, která byla zdokonalena. Cílem této technologie je redukce výpočtů, které zpracovává jádro grafické karty. Výpočty jsou prováděny pouze tam, kde jsou nezbytně nutné. Např. vypočítání stínů ve scéně, kde jsou opravdu vidět. 75

PureVideo - jde o multimediální funkce čipu, které doznaly značných změn. Čip obsahuje integrovaný VideoProcesor (VP), který se do této doby vyskytoval jen u konkurence. VideoProcesor podporuje enkódování a dekódování MPEG videa včetně DivX, akceleraci dekódování WMV9. Dále obsahuje TV enkódér a výstup pro HDTV. Nevýhodou této řady jsou enormní požadavky na napájení, zejména pro AGP slot, který má značně menší možnosti napájení. Další nevýhodou jsou vysoké nároky na chlazení. Pipeline jsou dělené do 4 bloků jako je tomu i u konkurenční ATI, pokud se při výrobě stane, že jeden blok je nefunkční, použije se čip do karty s jiným označením a jinými parametry. Parametry vybraných čipů, které reprezentují řadu GeForce 6 GeForce 6800 Ultra 6800 GS 6800 6600 GT 6500 6200 6200 LE Čip NV45 NV42 NV41 NV43 NV44 NV43 NV44 Takt jádra [Mhz] 400 425 325 500 400 300 350 Takt pamětí [Mhz] 1100 1000 700 1000 666 550 532 Typ pamětí GDDR3 GDDR3 DDR GDDR3 DDR DDR DDR Velikost paměti [MB] 256/512 128-512 128/256 128-512 128/256 128/256 64-512 Šířka sběrnice [bit] 256 256 256 128 64 128 64 Pixel pipeline 16 12 12 8 4 4 4 Vertex pipeline 6 6 6 3 3 3 3 TMU jednotky 16 12 12 8 4 4 4 ROP jednotky 16 8 8 4 2 4 2 Tabulka T.12: Parametry vybraných čipů, které reprezentují řadu GeForce 6 Frekvence pamětí je v efektivní hodnotě 3.3.1.2 GeForce 7 Obrázek O.61: Dělení řady GeForce 7 na třídy a jednotlivé karty 76

Charakteristika řady GeForce 7 DirectX 9.0c Shader model 3.0 Pipeline Vertex pipeline Pixel pipeline TMU Shader jednotky ROP HDR UltraShadow II Architektura, technologie a jejich inovace Architektura nové řady nepřináší žádné podstatné změny. Na obrázku vidíme schéma jádra G71 s 8 Vertex a 24 Pixel pipeline. Jako tomu bylo u předchozí řady i zde jsou pipeline rozděleny do čtveřic (quad-pipelines) a taktéž, umožňuje vypnout některé vadné bloky a prodávat jej jako levnější verzi. Pipeline Obrázek O.62: Schéma pipeline G70 zdroj: http://www.nvidia.com 77

Cull/Clip/Setup tato nová část jádra se stará o ořezávání vrcholů, které leží mimo viditelnou scénu (cliping), popř. se nenachází na viditelné straně objektu (backface culling). Fragment Crossbar křížový řadič, který rozděluje vypočítané pixely do ROP jednotek a slouží také ke komunikace s pamětí. Je složen ze čtyř 64-bitových komponent tzn. dohromady 256 bitový přístup (šířka sběrnice). Vertex pipeline pracuje na architektuře MIMD a může tak provádět nezávisle různé instrukce u obou jednotek (vektorová a skalární). Obrázek O.63: Schéma Vertex pipeline čipu G70 zdroj: http://www.nvidia.com L2 Texture Cache zde se ukládají textury, které lze přímo ve Vertex shaderu aplikovat na model. Nemusí se tak čekat na další průchod pipeline. Načítat je možné až 4 textury, které ale nelze filtrovat (bilineární, trilineární filtrování). Branch Unit větvení kódu s cykly a podmínkami Primitive Assembly ustanovení geometrie Viewport Processing umístění do souřadnic pozorovatele (kamery) 78

Pixel pipeline nedoznala ve srovnání s přechozí řadou podstatných změn, došlo pouze k výpočetním optimalizacím. Je postavena na SIMD tzn. provádění na více datech jedinou instrukci. Každá Pixel pipeline obsahuje jednu texturovací jednotku a dvě shader jednotky. TMU od svého předchůdce se liší pouze v rychlosti. Pracuje se čtyřmi vzorky a maximální hodnota filtorvaní je 16x (anizotropní filtrování). Shader jednotky jsou seřazeny za sebou. Oba shadery jsou vektorové a pracují s texturami ve formátu RGBA (Red, Green, Blue, Sloha - průhlednost). Oba shadery mohou pracovat odděleně nebo společně a to v případě, je-li první shader použit pro vzorkování textury tak druhý může pracovat s pixely. Navíc každý shader obsahuje miniaturní ALU jednotku s parametry (Pixel shader 1.4), pomocí níž lze provádět instrukce podle standardu Pixel shader 1.4 bez využití plnohodnotné ALU jednotky. ROP liší se pouze v Pixel X-Bar Interconnect jednotce, která nahrazuje jednotku Pixel Crossbar Interconnect. Obrázek O.64: Schéma ROP jednotky čipu G70 zdroj: http://www.nvidia.com HDR jde o velký rozsah zobrazovaných barev a rozsah jasu. Lidské oko vnímá rozsah od 14dB, ale standardní 32bitové barvy nabízejí poměr jasu 2.4dB. Formát OpenEXR má dynamický rozsah 12dB v FP16. Dále se používají efekty jako bloom, motion blur nebo depth of field (rozmazávání oblasti, na které není zaostřeno). 79

UltraShadow II - technologie urychlující počítání stínů, přináší nárůst výkonnosti v komplexních scénách, kde je hodně světelných zdrojů a hodně objektů. Parametry vybraných čipů, které reprezentují řadu GeForce 7 GeForce 7900 GX2 7900 GTO 7800 GT 7600 GT 7600 GS 7300 GT 7300 LE Čip G71 2x G71 G70 G73 G73 G73 G72 Takt jádra [Mhz] 500 650 400 560 400 350 450 Takt pamětí [Mhz] 1200 1320 1000 1400 800 650 700 Typ pamětí GDDR3 GDDR3 GDDR3 GDDR3 DDR2 DDR2 DDR2 Velikost paměti [MB] 1024 512 256/512 256 128-512 128-512 64-512 Šířka sběrnice [bit] 256 256 256 128 128 128 64 Pixel pipeline 48 24 20 12 12 8 4 Vertex pipeline 16 8 7 5 5 5 3 TMU jednotky 48 24 20 12 12 8 4 ROP jednotky 32 16 16 8 8 4 2 Tabulka T.13: Parametry vybraných čipů, které reprezentují řadu GeForce 7 Frekvence pamětí je v efektivní hodnotě 3.3.1.3 GeForce 8 Obrázek O.65: Dělení řady GeForce 8 na třídy a jednotlivé karty 80