Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#23

Re: Funtionsweise Grafikkarte Monitor

  Alt 14. Mai 2007, 10:07
Am bestens wird es sein die geschichtliche Entwicklung der Grafikkarten zu betrachten, dann wird vieles klarer. Heutige Grafikkarten sind Hochleitsungsmaschinen die in bestimmten Punkten mehr Power haben können als die CPU des Rechners selber. Das begründet dann auch den fakt das es eben keine einfache und universelle Erklärung geben kann wie heutige Grafikkarten das Bild real erzeugen !

Als erstes gab es die Monochromen Grafikkarten. Sie bestanden aus 2 Bildschirmspeichern (virtuell betrachtet). Dem eigentlichen Bildschirmspeicher und einen Zeichnensatzspeicher (Font). Im Bildschirmspeicher standen überlicherweise 80x25 Bytes -> pro Speicherstelle 1 Byte ASCII also der Buchstabe den man darstellen will. Also 80 Buchstaben pro Zeile und 25 Zeilen. Die Grafikkarte liest nun mit der Zeilenfrequenz diese Bytes aus. Das wird als Index benutzt um aus der Fonttabelle die Pixel des Zeichens zu aktuellen Zeile zu dekodieren. Das waren 9 Pixel -> 8 Pixel fürs Zeichen und 1 Pixel als Lücke. Diese 9 Pixel wurden dann im Pixeltakt gesetzt.

Man benötigte also 80x25+256x12 Bytes an Speicher, sehr wenig also.

Weiter ging es mit Farbgrafikkarten. Dort wurde der Bildschiemspeicher quasi verdoppelt und zu jedem ASCII Code noch 1 Byte an Farbinformation gespeichert. Diese Byte besteht aus 2 Nibbles = 4Bit und diese beschreiben die Hinter- und Vodergrundfarbe des Zeichens das dargestellt werden soll. Das ergibt also 16 Farben -> EGA.

VGA Karten stellten dann einen "Quantensprung" dar, konnte man ihnen doch
1.) echte Grafiken=Bitmaps darstellen
2.) mehr als nur 16 Farben darstellen (anfangs 256)
3.) größere Auflösungen erreichen
4.) hatte mehr Grafikspeicher zur Verfügung als für den aktuellen Modus nötig wären

Punkt 4.) führte dann dazu das man diesen Speicher virtuell in Bänke einteilen konnte und der Karte dann einfach die Addresse des Speichers mitteilte an dem das aktuelle Bild liegt, das sogennate Bankswitching. So konnt man 2 bis zu 8 Bilder im Speicher halten, sie reiherhum neu berechnen und immer nur eine dieser Bänke anzeigen. Ziel dabei ist es die Darstellung auf dem Monitor flickerfrei zu machen. Denn auch bei 60Hz Bildwiederholrate kann man die Aktualisierung des Bildschirmspeichers als Flicker beobachten. Das fällt umsomehr auf je häufiger das Speil zb. seinen Darstellung auffrischt/neu berechnet. ALso bei schnellen Games wir Arkanoid war dies schon sichtbar.
Ein weitere Vorteil dieses größeren Speichers war es das man nun Scrollen konnte. Statt also nur ein Bankstiching zu machen konnt man über den vorher erzeugten Bildspeicher/Darstellung nach oben/unten scrollen. Ebenfalls bei Arkanoid sehr schön umgesetzt.

Nachfolgende Karten verfolgten nun das Ziel immer mehr Speicher in immer höhren Grafikauflösungen mit immer mehr Farbe darzustellen. Man erkannt schnell eine Grenze in der Leistungsfähigkeit der CPU des Rechners. Diese war immer mehr damit beschäftigt ihre Grafiken zu berechnen. Folge davon ist logischerweise das die Grafikkarte einiges dieser Arbeit der CPU abnehmen sollte. Die Grafikarte wurde intelligent. Das fing damit an als Grafische Betriebsysteme den Markt eroberten, bzw. leicht vorher mit den professionellen Spielkonsolen. Man entwickelte Hardware-Sprite-Unterstützung. Das sind separate Speicherbereiche die die Animation einer Spielfigur enthalten. Die Garfikkarte kennt die Dimension und Anzahl der Frames dieser Sprites und stellt an vorprogrammierten Koordinaten auf dem Bildschirm diese Sprites selbständig dar. Die Overlay Technik war geboren. Overlays sind Speicherbe3reich die die Grafikarte selbständig über den normalen Bildschirminhalt einblendet. Zb. alle heutigen AVI/MPEG Player arbeiten mit solchen Overlays. Ein angezeigtes Bild auf dem Monitor bestand also eben nicht mehr aus nur einem zusammenhängendem Bildschirmspeicher sondern nunmehr aus vielen solcher Overlays die die Grafikkarte dynamisch selbständig anzeigte.

Die logsche Weierentwicklung war es nun die Grafische Verküpfungen zwischen einzelnen Overlays ebenfalls der GraKa zu überlassen. Bestes Beispiel ist der Schatten untern Mauscursor. Auch dies macht eine heutige Grafikkarte und nicht mehr die CPU.

Der letzte Schritt könnte man als Vektor-Grafikkarten bezeichnen. Statt also mit Bitmaps, durch die CPU erzeugt, die GraKa zu füttern, werden ganze 2 dimensionelle Szenen als Vektoren mit Beleuchtung/Bewegungsvektroren/Schatten und Oberflächenstrukturen der GraKa übergeben. Diese baut dann live, in dem sie mit einem Hochleistungsprozessor diese Szene berechnet, das Bild zusammen.
Es gibt also den Bildschirmspeicher wie ürsprünglich garnicht mehr.

Das zur Grafikkarte nun zu den Monitoren:
Früher war das alles analog. Als erstes nun ein Schwarz/Weiß Monitor, auch monochrom genannt. Der Monitor benötigte im Grunde nur 3 Signale -> H-Sync, V-Sync und "Pixel". H und V Sync sind die Signale die den Elektronenstrahl in der Röhre von oben nach unten und von links nach rechts bewegen. Pixel bestimmte ob nun der Bildpunkt hell oder dunkel war.

Mit Farbe musst sich auch hier was ändern. Es gab nun 3 Farbsignal, analog für Rot/Grün/Blau. Der Spannungspegel dieser Leitungen bestimmmte die Helligkeit der einzelnen Farbe. Das bedeutete die GraKa musst nun ein Digitales Signal und ein Analoges umwandeln. Man benötigt also drei AD-Wandler (analog zu digital) in der GraKa. Die Herrausforderung dabei ist der Pixeltakt, also die Geschwindigeit mit der dieser Wandler die Daten umwandeln müssen. Das sind minimal 15 Mhz Wandlungsrate. So, der oben angesprochene RAMDAC übernahm diese Aufgabe in der GraKa. Dies ist ein AD Wandler für 3 Kanäle (RGB) der zusätzlich noch eine Loookuptabelle enthält. Das ist eine Farbtabelle die zb. 256 Farbeinträge enthält aber diese 256 Farben in quasi 2^24 Farbtiefe umrechnen konnte. So war es möglich auf VGA Karten mit 256 gleichzeitig darstellbaren Farben denoch insgesamt 2^24 Farben darzustellen, aber eben immer nur 256 Farben davon gleichzeitg.
Naja, später wurde alles nochmal besser, merh Farbe, mehr Auflösung.
Der entscheidende Schritt passiert in diesem Sektor gerade jetzt. Der Übergang von analogen Monitoren zu digitalen. Nunmehr werden die Signale der GraKa rein digital an den Monitor geschickt. Und da die Datenmenge immer weiter anwächst werden die Monitore auch mathematisch komplexe Komprimierungsverfahren anwenden -> HDTV. Als kleiner Effekt nebenbei kann man nun diese digitalen Daten auch noch verschlüsseln so das in Zukunft der Monitor nur noch Daten anzeigen wird die der jeweilige Betrachter auch bezahlt hat.

Soweit das was ich die letzten Jahre verfolgen konnte Natürlich könnte man noch viel mehr dazu schreiben, 3 fette Bücher werden es bestimmt.


Gruß Hagen
  Mit Zitat antworten Zitat