Hlavní navigace

Grafické karty a grafické akcelerátory (1)

2. 3. 2005
Doba čtení: 8 minut

Sdílet

Dnešním dnem začíná na Rootu nový seriál věnovaný historii vývoje grafických zobrazovacích prostředků na osobních počítačích i na výkonných pracovních stanicích. Přehled možností těchto důležitých částí počítačů začneme v hlubokém počítačovém pravěku a skončíme při popisu možností nejnovějších grafických akcelerátorů s programovatelným zobrazovacím řetězcem.

Obsah

1. Grafické prostředky počítačů
2. Význam grafického výstupu počítačů a oblasti nejčastějšího použití
3. Rozdělení grafických periferií
4. Způsob vytváření obrazu na monitoru
5. Vektorové displeje

6. Rastrové displeje
7. Typy displejů z konstrukčního hlediska
8. Obsah dalšího pokračování

1. Grafické prostředky počítačů

Myšlenka, že počítač je možné využít i pro generování obrazu, pravděpodobně napadla již tvůrce prvních elektronických výpočetních systémů, protože první pokusy o její praktické naplnění sahají až k samotným počátkům výpočetní techniky.

Vývoj specializovaných grafických prostředků počítačů však začal zhruba v první polovině šedesátých letech minulého století. V té době se začaly počítače v poměrně velké míře využívat při zpracovávání vědeckých dat. Zadávání těchto dat a výstup výpočtů například v číselné podobě je však pro člověka málo srozumitelný a přehledný, zejména v případě, že je nutné porozumět většímu množství dat, která jsou mezi sebou určitým způsobem provázaná.

Ukázalo se, že v některých případech je mnohem srozumitelnější a názornější převést číselné informace na informace grafické, a ty následně zobrazit (například formou grafu, barevné mapy, symbolů či barevného zvýraznění) buď na obrazovku počítače, nebo pomocí tiskáren a plotterů na papír či jiné podobné médium.

Informace podávané grafickou formou jsou také ve velké míře nezávislé na jazyku, což nám mimo jiné umožňuje porozumět dopravním značkám kdekoliv na světě (méně už ikonám grafického uživatelského rozhraní). Některé grafické symboly jsou pro prakticky všechny kultury známé bez dalšího vysvětlování. Typickým příkladem je šipka, která vznikla zjednodušením obrazu letícího šípu.

Pro jednostrannou či oboustrannou komunikaci mezi člověkem a počítačem slouží grafické prostředky počítačů, někdy také nazývané grafické periferie. V dalším textu se budu zabývat z větší části těmi grafickými periferiemi tvořícími obraz, který se může dynamicky měnit, a vytvářet tak různé animace. Nebudou nás tedy příliš zajímat tiskárny, plottery ani další podobná přídavná zařízení tisknoucí grafickou informaci, kterou již nelze jednoduše měnit.

2. Význam grafického výstupu počítačů a oblasti nejčastějšího použití

V současné době pravděpodobně není zapotřebí význam grafického výstupu u počítačů zdůrazňovat, protože každý osobní počítač či pracovní stanice je už po delší dobu standardně vybaven grafickou kartou a monitorem. Pomocí těchto zařízení lze snadno realizovat jak celoobrazovkový či řádkový znakový výstup, tak i plně grafický výstup.

Počítačová grafika začala být popularizována zejména na osmibitových domácích počítačích a herních automatech. Grafické možnosti těchto systémů byly (s ohledem na dnešní dobu) velmi omezené, ale už tehdy byly vytvořeny různé grafické efekty a triky, které z domácích počítačů učinily první široce dostupná multimediální zařízení.

Na osobních počítačích i pracovních stanicích docházelo a vlastně stále ještě dochází ke změně rozhraní, kterým počítač komunikuje s uživatelem. Od původního rozhraní s příkazovým řádkem (Command Line Interface – CLI) se přechází přes textové celoobrazovkové rozhraní (Text-ModeUser Interface – TUI) k rozhraní plně grafickému (Graphical User Interface – GUI).

Samotný příkazový řádek samozřejmě představuje při správném použití velmi flexibilní možnost ovládání počítače, jeho možnosti se však násobí až spojením s grafickým rozhraním – typickým příkladem takového „hybrida“ je například AutoCAD, který je možné velmi rychle ovládat kombinací klávesnice a myši (zejména s vypnutím všech prakticky zbytečných ikon a menu).

Existují samozřejmě oblasti, ve kterých se grafický výstup prakticky nepoužívá. Typicky se jedná o technologická PC a především servery. U těchto systémů se výstup informací ze služeb poskytovaných serverem předává počítačům uživatelů (klientům) a teprve tyto počítače zajistí potřebné zobrazení na monitoru či jiném obdobném zařízení.

Jak jsem se již zmínil výše, byla počítačová grafika ve svých počátcích použita pro vizualizaci výpočtů prováděných na tehdejších počítačích. Vzhledem k tomu, že některé počítače byly analogové, byl pro zobrazení výpočtů použit běžný osciloskop, který dokáže zobrazit funkci s jednou nezávislou proměnnou (pomocí modifikovatelné časové základny) nebo se dvěma proměnnými. Po příchodu hybridních a posléze i číslicových počítačů stále ještě přetrvávala snaha zobrazovat obraz pomocí osciloskopu či jiného podobného zařízení. Od těchto snah se však s rostoucí složitostí zobrazovaných informací postupně opustilo.

Další oblastí použití počítačové grafiky byla animace, protože zde bylo možné ve velké míře využít dynamičnosti použitých displejů, které se prakticky neliší od televizní obrazovky. S animací úzce souvisí počítačové hry, které většinou zobrazují různé pohyblivé předměty, jako jsou hráči, jejich protivníci, střely apod.

Samostatnou kapitolu tvoří takzvaná fotorealistická grafika. Myšlenka vytvořit počítačem takový obraz, který by byl zaměnitelný s obrazem skutečné scény (například s fotografií), byla až do konce sedmdesátých let obecně považována za nereálnou, protože bylo zřejmé, že jde o úlohu extrémně náročnou jak na požadovaný výkon procesoru, tak i na velikost paměti počítače. Rozvoj výpočetní techniky však pokračoval takovým tempem, že již počátkem osmdesátých let bylo možno experimentálně realisticky zobrazovat počítačové modely objektů. Nejčastěji používanou metodu sledování paprsku (raytracing) lze dokonce úspěšně implementovat i na osmibitových počítačích.

3. Rozdělení grafických periferií

Všeobecně je možné grafické periferie rozdělit podle různých hledisek:

  1. Podle směru komunikace na:
    1. vstupní – člověk data do počítače zadává pomocí klávesnice, myši, joysticku, joypadu, světelného pera atd., ale také skeneru, digitálního fotoaparátu a kamery
    2. výstupní – člověk data od počítače získává pomocí výstupů ze souřadnicových zapisovačů (plotterů), rastrových tiskáren, monitorů apod.
  2. Podle typu grafické informace na:
    1. vektorové – grafická informace je zapsána v podobě geometrických tvarů. Mezi tato zařízení patří například souřadnicové zapisovače a vektorové displeje
    2. rastrové – grafická informace je zapsána ve formě bodů v pravidelné rastrové mřížce. Mezi tato zařízení, která jsou dnes mnohem rozšířenější, patří rastrové tiskárny (laserové, inkoustové, jehličkové, voskové atd.), běžné CRT monitory, LCD monitory apod.
  3. Podle délky uchování grafické informace:
    1. zařízení s dočasným záznamem (CRT monitory, LCD monitory)
    2. zařízení s trvalým záznamem (souřadnicové zapisovače, rastrové tiskárny, osvitové jednotky)

4. Způsob vytváření obrazu na monitoru

Nejpoužívanější výstupní grafickou periferií je v dnešní době bezesporu grafický zobrazovač – displej. Toto zařízení je dnes považováno za základní vybavení každého domácího i pracovního počítače (technologické počítače a servery patří do jiné kategorie), protože prakticky veškerá komunikace s uživatelem se provádí v interaktivním režimu s využitím displeje. Mnohé počítače dokonce pro výstup veškerých informací používají pouze displej – nemají tedy například ani zvukovou kartu ani připojenou tiskárnu.

Technologie zobrazování obrazových dat na displejích jsou různorodé – kromě klasických CRT monitorů se dnes silně prosazují LCD monitory, existují plazmové displeje apod. – viz sedmou kapitolu. Pro náš seriál je však podstatnější, zda je obraz na monitoru složen z vektorů (krátkých úseček), či z bodů rastru (pixelů). Podle toho také rozlišujeme vektorové displeje a rastrové displeje.

5. Vektorové displeje

V minulosti se používaly vektorové displeje, kdy byl obraz generován pomocí krátkých úseček nebo složitějších geometrických tvarů (lomených úseček, oblouků apod.). Předchůdcem vektorových displejů byly analogové osciloskopy, které se dodnes s úspěchem používají v elektrotechnice pro měření elektrických veličin. Tyto displeje jsou však u většiny dnešních aplikací neefektivní, protože neumožňují jednoduše zobrazovat složitější obrazce.

Mezi přednosti vektorových displejů patří jednoduché zobrazení grafů a liniových schémat. Pomocí vhodně navrženého řadiče displeje lze vykreslovat i jednotlivé znaky, takže jejich popis nemusí být uložen v operační paměti počítače. Další předností jsou obecně malé nároky na kapacitu paměti a přitom velká rozlišovací schopnost, protože každý vektor může být reprezentován pomocí dvojice souřadnic, které v paměti zabírají pouze několik bytů.

Mezi nevýhody patří zejména omezení celkové délky všech zobrazených vektorů, která je dána rychlostí zhášení bodů na obrazovce. Další nevýhodou je praktická nemožnost zobrazení barevné či příliš komplikované grafiky.

6. Rastrové displeje

V současnosti se u převážné většiny počítačů používají rastrové displeje, u kterých je obraz složen z velkého množství malých barevných bodů (pixelů) uspořádaných v pravidelné rastrové mřížce – rastru.

Mezi přednosti rastrových displejů patří jejich schopnost zobrazit prakticky libovolně složitou grafiku, od jednoduchých jednobarevných kreseb po plnobarevné fotografie. Také programová tvorba grafiky v rastru je poměrně jednoduchá.

Mezi nevýhody lze počítat velké nároky na kapacitu paměti, ve které je zobrazovaný rastrový obraz uložen. Tato paměť, která se v některých případech nazývá framebuffer, musí být také dostatečně rychlá, aby se celý obraz na monitoru mohl periodicky obnovovat (například 50× za sekundu).

7. Typy displejů z konstrukčního hlediska

Pro převod informací z paměti počítače na obrázek zobrazený na displeji se používají takzvané grafické karty. Po grafické stránce (programování, připojení) má grafická karta větší význam než samotný displej, z hlediska uživatelského je však displej jednou z nejdůležitějších částí počítače. Displejů existuje velké množství typů, které se liší kvalitou zobrazení, váhou, energetickou náročností, velikostí a v neposlední řadě i cenou.

ict ve školství 24

Mezi základní typy displejů patří:

  1. CRT monitory – svým principem vycházají z činnosti televizní obrazovky, tj. obraz se u nich vytváří postupným vykreslováním jednotlivých bodů v rastru. Vykresluje se elektronovým paprskem, který dopadá na luminofor buď jedné barvy (jednobarevné displeje), nebo na mřížku složenou z luminoforů tří barev (barevné displeje). CRT monitory mohou zobrazovat obraz buď v neprokládaném režimu, kdy se jednotlivé řádky nachází pod sebou, nebo v režimu prokládaném (interlaced), kdy se jeden půlsnímek skládá ze sudých řádků a další půlsnímek z řádků lichých.
  2. plazmové displeje – jednotlivé body jsou složeny z malých doutnavek vytvořených mezi dvěma elektrodami. U prvních plazmových displejů se zobrazovalo přímo světlo z doutnavek (které je narůžovělé), dnešní plazmové displeje mají na horní elektrodě vytvořenu vrstvu z barevných luminoforů. Tento typ displejů nachází uplatnění u domácích kin, protože vzhledem k jeho malé tloušťce ho lze zavěsit na stěnu a použít jako velkou promítací plochu. Vzhledem k tomu, že doutnavky vykazují hysterezi (paměťový efekt), je možné vytvářet statický, neblikající obraz.
  3. elektroluminis­cenční zobrazovače – pracují na principu působení silného elektrického pole na fosforeskující vrstvu. Použití mají ve speciálních aplikacích.
  4. LCD displeje na bázi tekutých krystalů – představují v dnešní době nejvíce se rozvíjejí segment trhu displejů pro počítače. Typů těchto displejů existuje celá řada, od jednoduchých pasivních jednobarevných displejů používaných v kalkulačkách po aktivní displeje s velkým úhlem pohledu, malou dobou odezvy a možností zobrazení grafiky v pravých barvách (true color).

8. Obsah dalšího pokračování

V dalším pokračování tohoto seriálu si povíme, jakým způsobem se vytvářel grafický výstup u osmibitových domácích počítačů. (Bývalí) majitelé strojů jako Atari, Commodore či ZX Spectrum si tedy mohou za týden se slzou v oku zavzpomínat, co již tehdejší počítače zvládaly.

Autor článku

Vystudoval VUT FIT a v současné době pracuje na projektech vytvářených v jazycích Python a Go.