Computerhardware: Grafikkarte: Geschichte

Aus Wikibooks

Im ersten IBM-PC war ein „Monochrom Display Adapter“ eingebaut, der selbst zu einfachsten grafischen Darstellungen nicht in der Lage war. Er beherrschte nur den „Textmodus“ mit weißen Buchstaben auf schwarzen Grund.

Im Textmodus werden die 720 × 350 Pixel des Bildschirms in 2000 Rechtecke unterteilt, 80 nebeneinander und 25 untereinander. Jedes dieser Rechtecke enthält 9 Pixel nebeneinander und 14 in der Höhe. In jedes dieser Rechtecke passt genau ein „alphanumerisches Zeichen“ (ein Buchstabe, eine Zahl oder ein Zeichen). Die Schriftart war der heutigen Schriftart „Courier“ ähnlich. In einem „Zeichengenerator“ war das Aussehen jedes einzelnen Zeichens hinterlegt. Die Schriftart konnte nicht verändert werden. Zunächst waren 127 verschiedene Zeichen möglich, später 255. Um den Bildschirm komplett mit Zeichen zu füllen, brauchte die CPU damals nur 2000 Byte an die Grafikkarte zu schicken (heute sind es fünf Millionen Byte), wo sie im so genannten BildWiederholSpeicher (BWS) hinterlegt werden. Der Zeichengenerator bildet aus jedem gespeicherten Byte die 14 × 9 Bildpunkte des Zeichens.

Eine pfiffige Firma mit dem Namen „Hercules“ entwickelte eine bessere Steckkarte „Monochrom Graphik Adapter“, die zusätzlich zum Textmodus auch Grafik ermöglichte. Seitdem heißen die Adapter zwischen CPU und Bildschirm „Grafikkarte“.

Die technische Weiterentwicklung von Elektronik und Bildschirmen brachte immer neue, bessere Grafikstandards auf den Markt: CGA, EGA und VGA.

CGA = Color Graphic Adapter[Bearbeiten]

Erstmals war Farbe möglich! 4 Farben bei einer Auflösung von 320 x 200 waren nicht viel, und nach heutigen Maßstäben war das Bild SEHR grobkörnig. Wer mit zwei Farben auskam, konnte eine höhere Auflösung von 640 x 200 Pixeln wählen - immer noch sehr grobkörnig. Vier Farben sind nicht viel. Man hatte wenigstens die Auswahl zwischen zwei möglichen Farbpaletten:

       Weiß, Türkis, Violett, Hintergrund
       Rot,  Grün,   Gelb,    Hintergrund

EGA = Enhanced Graphic Adapter[Bearbeiten]

Im Vergleich zu den Vorgängern war die Grafik grandios! Bei einer Auflösung von 640 x 350 waren 16 Farben möglich. Wer sich einen größeren Grafik-RAM leisten konnte, hatte 255 Farben zur Verfügung. Im Textmodus können 80 bis 132 Zeichen pro Zeile dargestellt werden.

VGA = Video Graphic Array[Bearbeiten]

Man hat die Wahl, ob man lieber die höhere Auflösung oder die größere Farbanzahl möchte.

  • Bei einer Auflösung 320 x 200 kann man 256 aus 262144 Farben auswählen
  • Bei einer Auflösung 640 x 480 sind 16 aus 262144 Farben möglich.

Die nicht standardisierten erweiterten Modi können noch mehr.

Erstmals wird die Farbinformation analog übermittelt, dadurch sind theoretisch unendlich viele Farben möglich, je nach verfügbarem RAM.

VGA mit eigener CPU[Bearbeiten]

Bisher bestand die Aufgabe der Grafikkarten nur darin, die Bits des Video-RAM auszuwerten und in Signale zur Steuerung des Monitor umzuwandeln. Sämtliche Berechnungen erfolgten im Haupt-Prozessor. Um eine Grafik zu erzeugen, musste der Programmierer jeden Pixel einzeln programmieren.

Etwa 1991 kam die zweite Generation der Grafikkarten auf den Markt: Ein eigener Prozessor (die GPU = Graphic Processor Unit) konnte der CPU einige Berechnungen beim Zeichnen von zweidimensionalen Objekten abnehmen. Die CPU konnte jetzt Aufgaben wie „Zeichne Linie von A nach B“ oder „Fülle Rechteck mit Farbe x“ an die Grafikkarte delegieren. Um beispielsweise ein kleines Rechteck mit 100 x 100 Pixeln mit Farbe zu füllen, brauchte die CPU nur die Koordinaten der Eckpunkte und die gewünschte Farbe an die GPU senden. An frühere Grafikkarten hätte die CPU 10.000 Pixel übermitteln müssen.

VGA: 3D-Grafik[Bearbeiten]

Etwa ab 1995 gab es die dritte Generation von Grafikkarten: Die 3D-Beschleuniger. Diese Grafikkarten können geometrische Figuren in einem dreidimensionalen Raum berechnen. Inzwischen haben die leistungsfähigsten GPU wesentlich mehr Transistoren als die CPUs. Für höchste Ansprüche (d. h. wenn Geld keine Rolle spielt) gibt es Grafikkarten, von denen man zwei oder mehr zusammenschalten kann und die sich die Arbeit der 3D-Berechnungen teilen.