Näytönohjaimet

Näyttö tarvitsee itse näyttöputken lisäksi näytönohjaimen. Ohjain voi olla integroituna emolevylle tai se voi olla erillinen kortti. Näytönohjain muuttaa prosessorin digitaaliset piirtokäskyt analogisiksi jännitevaihteluiksi. Jännitevaihtelut ohjaavat näyttöputken elektronisuihkuja, jotka piirtävät ihmisen näkemän kuvan lasiputken pinnalle. Nykyaikaisen näytön ja näytönohjaimen työnjako on se, että näyttö toistaa passiivisena kaiken, minkä näytönohjain käskee. Näytönohjaimen käskyt muodostuvat viidestä signaalista: kolme signaaleista ohjaa näytön kolmea väritykkiä (punainen, sininen, vihreä), neljäs signaali kohdistaa näytön vaakasuunnassa ja viides pystysuunnassa.

Useimmat nykyiset näytönohjaimet mahdollistavat tarkkuuden ja virkistystaajuuden valinnan ohjelmallisesti. Ohjain huolehtii sitten tarvittavan juovataajuuden laskennasta valintojen perusteella.

Näyttötekniikan merkitys on korostunut mikroissa viime aikoina, kun Windowsin ja CAD-sovellusten myötä näytöllä esiintyvän tiedon määrä on kasvanut. Tarkkuus- ja nopeusvaatimukset ovat kasvaneet ja sovellukset vaativat käyttöönsä myös suurempia värimääriä. Ennen Windowsia PC:ssä ajettiin tyypillisesti kerrallaan yhtä ohjelmaa, joka vei koko ruudun. Näytön resoluutioksi riitti 640x480 eli VGA-tarkkuus.

Windowsissa kukin ikkuna vaatii käyttöönsä VGA:n (640x480) luokkaa olevan määrän tarkkuutta, joten tarkkuutta tarvitaan huomattavasti enemmän. Valittava tarkkuus riippuu näytön koosta; mitä suurempi näyttö, sitä suurempaa tarkkuutta voidaan käyttää.

Toinen Windowsin mukanaan tuoma tarve on kuvan laskentanopeus. Ennen Windowsia sovellukset olivat tavallisesti merkkipohjaisia eli mikron pääprosessori lähetti näytönohjaimelle ne merkit, jotka se halusi piirrettäväksi, ja ohjaimen merkkigeneraattori loi merkit. Windowsin myötä siirryttiin graafisiin sovelluksiin. Merkkien asemesta pääprosessori lähettää näytönohjaimelle erikseen tiedot jokaisesta pikselistä. Tämä lisää suuresti tarvetta prosessorin laskentakapasiteetin ja väylän siirtonopeuden kasvattamiseen.

Laskutyötä vauhdittamaan syntyivät kiihdytetyt näytönohjaimet. Ne siirtävät osan pikselien laskemisesta pääprosessorilta näytönohjaimelle. Laskutyöstä huolehtivat erikseen tätä varten kehitetyt älykkäät grafiikkaprosessorit.

Windowsin myötä yleistyneet grafiikkaohjelmat ovat kasvattaneet näytöllä esitettävien värien tarvetta. Nykyään on jo minimi 256 väriä eli 8-bittiset värit. Tällöin yhtä pikseliä kohti tarvitaan tavu näytönohjaimen videomuistista. Valokuvien ja elävän videokuvan esittämiseen tarvitaan 16,7 miljoonaa väriä eli täysvärit. Täysväreissä kunkin pisteen väri-informaation esittämiseen käytetään yhteensä kolme tavua muistia eli 8 bittiä kullekin kolmesta pääväristä.

Vaikka Windows on tuonut paljon paineita näyttötekniikalle, se on tuonut myös helpotuksen. Enää ei tarvita lisää näytönohjainten standardeja. Windows käyttää näytönohjainta erityisen laiteajuriohjelman avulla. Windows-sovellukset näkevät vain ajuriohjelman tekemän laiteriippumattoman rajapinnan, johon ne kirjoittavat käskyt näytölle. Ajuri hoitaa näytönohjaimen yksityiskohtaisen ohjauksen. Kun standardit enää eivät rajoita, ohjaintekniikka on kehittynyt nopeasti.

Näytönohjain on useimmiten AGP- tai PCI-väylään liitettävä kortti, joka koostuu seuraavista osista:

  1. Grafiikkaprosessori

  2. Näyttöliitin

  3. Näyttömuisti

  4. RAMDAC (Random Access Memory Digital to Analog Converter)

  5. TV-liitin

Grafiikkaprosessori hoitaa tarvittavan kuvan muodostamisen tietokoneen prosessorin käskyjen mukaan. Kuva muodostetaan näytönohjaimen omaan muistiin, josta RAMDAC konvertoi sen näytön vaatimaksi analogiseksi signaaliksi ja lähettää sen näyttöliittimen kautta näytön esitettäväksi.

  1. Käytettävä ohjelma tekee GDI (Graphics Device Interface) -kutsuja käyttöjärjestelmälle näytölle tulevasta tiedosta.

  2. Käyttöjärjestelmä komentaa ajuriohjelmiston kautta näytönohjainta

  3. Näytönohjain lähettää pikselitiedon näytönohjaimen muistiin.

  4. RAMDAC-kääntää digitaalisen tiedon RGB-signaaliksi ja lähettää näytölle

  5. Kuva näkyy näytössä

Nopeutta lisätään ohjelmoimalla näytönkäsittelyn alkeistoiminnot ja muita toimintoja suoraan grafiikkaprosessoriin. Näytönohjaimet käyttävät myös omia erikoisia muistejaan mm. VRAM, WRAM, nopeuttamaan toimintaansa. Mitä nopeampi muisti ja mitä nopeampi grafiikkaprosessori sitä korkeampi virkistystaajuus saavutetaan.

Uusimmissa näytönohjaimissa ominaisuuksien laajentaminen on kovasti 3D-grafiikkapainotteista johtuen lähinnä pelien vaatimuksista. 3D-grafiikka vaatii reilusti enemmän muistia kuin tavallinen 2D-kuva. Kuva esitetään näytöllä kaksiulotteisena, mutta se käsitellään näytönohjaimen sisällä kolmiulotteisena minkä takia myös muistintarve kasvaa. Näytönohjainten prosessorit sisältävät paljon huikeita ominaisuuksia, jotka vaikuttavat erityisesti pelien ulkonäköön. Tavallisessa toimistokäytössä näillä ominaisuuksilla ei ole mitään merkitystä. Asiasta enemmän kiinnostuneet voivat etsiä tietoa vaikka seuraavilla hakusanoilla:

  1. Environment-Mapped Bumb Mapping

  2. Stencil Buffering

  3. Trilinear filtering

  4. Alpha-blending

  5. Anti-aliased vectors

  6. Vertex and table fogging

Parhaista näytönohjaimista löytyy myös valmis tuki DVD-elokuvien katseluun. Tämä tarkoittaa lähinnä näytönohjaimen grafiikkaprosessorista löytyvää tukea MPEG-pakatun videokuvan purkamiseen nopeammin kuin se onnistuisi pelkältä koneen varsinaiselta prosessorilta.

Jotkut näytönohjaimet tukevat myös useamman näytön yhtäaikaista käyttöä.

Näyttötiloja

Erilaisilla näyttötiloilla on omat enemmän tai vähemmän standardoituneet nimet:

  1. CGA 640 * 200

  2. EGA 640 * 350

  3. VGA 640 * 480

  4. SVGA 800 * 600

  5. XGA 1024 * 768 ja isommat

Näyttömuistin tarve

Näyttömuistia tarvitsee eri määrän riippuen käytetystä näyttöresoluutiosta ja värimäärästä. Taulukoissa esimerkkinä muutamia grafiikkatiloja ja erilaisia värimääriä tavallisessa 2D-käytössä ja 3D-käytössä.

2D-käyttö

NäyttötilaMuistimäärä
1 MB 2 MB 4 MB 8 MB
640 * 480 16, 7 milj 16, 7 milj 16, 7 milj 16, 7 milj
800 * 600 65 000 16, 7 milj 16, 7 milj 16, 7 milj
1024 * 768 256 65 000 16, 7 milj 16, 7 milj

3D-käyttö

NäyttötilaMuistimäärä
2 MB 4 MB 8 MB
640 * 480 65 000 16, 7 milj 16, 7 milj
800 * 600 256 65 000 16, 7 milj
1024 * 768 - 256 16, 7 milj

Customer: "I bought your fancy graphics card, and my Windows display is not better than it was before."

Tech Support: "We had better look at the installation then."

Customer: "You mean I have to install it?"

The graphics card was still in the box.

Kurssimateriaalien käyttäminen kaupallisiin tarkoituksiin tai opetusmateriaalina ilman lupaa on ehdottomasti kielletty!
Copyright © Tommi Lahtonen (tommi.j.lahtonen@jyu.fi)<URL: http://www.iki.fi/hazor/>
Petri Heinonen (peheinon@mit.jyu.fi)<URL: http://www.mit.jyu.fi/peheinon/>