- hohe Taktfreqünz des Prozessors,
Befehlsentschlüsselung in möglichst wenigen Takten
- leistungsfahige Gleitkommaarithmetik bei hoher Genauigkeit
(doppelt genaü Gleitkommazahlen mit 6-8 Byte Länge
damit ca. 11 signifikante Mantissenstellen )
- schneller interner und externer Datentransport für Massendaten
- große Hauptspeichergrößen und externe Speicher (Platten)
- zunehmend eine Parallelität der Berechnung durch Parallelität
der eingesetzten Prozessoren
Die CPU (Prozessor) des Computers hat die Aufgabe, ein Programm
(Algorithmus), bestehend aus einer Folge von Maschinenbefehlen aufzurufen, die Befehle zu
entschlüsseln und auszuführen.
Algorithmus und seine Unterteilung in Teilaufgaben
line (int x1,int y1,int xn,int yn)
{ int x;
float m,y;
m=(( float) (yn-y1)) / (xn-x1);
y=y1;
for (x=x1; x<=xn; x++)------ > Rasterung
{ set_pixel (x, round(y), v);--------- > Pixel auswählen
y=y+m;
}
}
Es sind verschiedenste Teilaufgaben zu lösen:
Programm
| |
Berechnung Grafik
|
S1<----- Schnittstelle
line
|
S2< ----- Schnittstelle
Rasterung
|
S3 < ---- Schnittstelle
Pixel setzen
|
S4 < ---- Schnittstelle
Pixel wiederholt setzen
Wie sollen die einzelnen Teilaufgaben auf Prozessoren und Geräte verteilt
werden ?
Die Lösung dieser Frage entscheidet über verschiedene
"Bildrechnerarchitekturen"
Es besteht das Prinzip, einen Hauptrechner (Master) und eine DPU (Display
Processor Unit) als Teilrechner (Slave) einzurichten.
Seit Prozessoren sehr klein und preiswert produziert werden können, werden
diese Teilrechner mit einer sogenannten "lokalen Intelligenz"
ausgestattet.
Mögliche Schnittstellen wären je nach Intelligenz eines Bildrechners:
S1 : Line selbständig abarbeiten mit Übergabe von x1,y1,xn,yn vom Master an Slave
S2 : nur Übernahme der Rasterung, Pixel in Bildspeicher setzen und Bildwiederholung an Slave
S3 : nur Pixel in den Bildspeicher setzen und Bildwiederholung an Slave
S4 : nur Bildwiederholung aus dem Bildspeicher an Slave
CPU ------- DPU ---------- IDS ---------- MONITOR
BILDSPEICHER
00000000100
00000010000
00001000000
00100000000
CPU Central Processing Unit
DPU Display Processing Unit
IDS IMAGE Processing Unit
Bildspeicher: frame buffer
Varianten:
a) DPU durch Software in der CPU realisiert. IDS übernimmt nur Auslesen des Bildspeichers
und Bildwiederholung (Schnittstelle S4)
Vorteil: gemeinsamer Adressraum für CPU-Arbeitsspeicher und Bildspeicher
Nachteil: lange Bildlaufzeiten
b) Bildspeicher und IDS sind auf einer speziellen Karte untergebracht. Der Prozessor der Karte
wird CRTC (CRT-Controller) genannt und entspricht dem IDS.
Hercules-Karte Motorola 6845 640 x 200 2 Farben
CGA-Karte Motorola 6845 720 x 350 2 Farben
EGA-Karte Hochinteg. Baustein 640 x 350 16 Farben
VGA-Karte Teil eines ICs 640 x 480 16 Farben
SVGA-Karte 800 x 600 256 Farben
XGA 1024 x 768 65536 Farben
Größe des Bildspeichers:
Die erforderliche Größe des Bildspeichers hängt zunächst vom Auflösungsvermögen ab,
das der Bildschirm haben soll (Anzahl Bildpunkte).
Danach ist zu entscheiden, wieviele Informationen je Pixel zu speichern sind.
1 Bit je Pixel: 2 Zustände ein/aus
2 Bit je Pixel: 4 Zustände 0/1/2/3 Grauwerte oder Farben
n Bit je Pixel als Adresse auf eine Tabelle (Palette) mit 16 oder 256 Farben
Die Palette selbst kann man mit jeweils einem neuen Satz von Farben füllen
Meist wird die Größe des Bildspeichers mehrfach
bereitgestellt,um Layers (Schichten) der
Anzeige zu speichern und schnell wieder bereitzustellen.
1. ein Pixel mit x,y erhält seinen Platz im
Bildspeicher entsprechend seinem x,y-Wert
2. An dem Platz wird eine Adresse aus 4 Bit bei
16 Farben oder eine 8 Bit-Adresse bei 256
Farben eingetragen, die auf einen der 16 oder 256 möglichen Einträge der Farbpalette
verweist, die eine konkrete Farbe enthält.
3. Durch spezielle Befehle zum Füllen der Farbpalette können neue Farben aus dem
RGB-Farbmodell ausgewählt werden,die dann als aktive Farben bereit stehen.
3.4. Grafische Ein- und Ausgabegeräte
Die spezifischen Anforderungen der Grafik erfordern eine Reihe spezieller Ein-und
Ausgabegeräte:
Eingabe:
Die Tastatur erlaubt nur Strings für Texte und Zahlen für die
interne Berechnung eines grafischen Objektes mit vertretbarem Aufwand
einzugeben.
Es müssen jedoch noch andere Eingaben erfolgen können:
-Koordinatentupel (x,y)in 2-D, Koordinatentripel (x,y,z) in 3-D
-Linieninformationen und Eigenschaften der Linien
-Flächen- und Volumeninformationen bei 3-D
-Symbole
-Bemaßungen von Objekten
-direkte Messwerte von Geräten
-geometrische Operatoren (Spiegeln, Drehen, Zoomen usw.)
-Eingaben zur Identifikation eines Objektes
technisches Prinzip:
Alle diese Geräte verfügen inzwischen mittels Mikroelektronik über eine "lokale
Intelligenz", d.h. es sind bereits umfangreiche geometrische Eingabeoperationen
geometrischer Art moglich, die auf digitalen Datenträgern in Dateien mit festgelegten
Formaten gespeichert werden.
Joystick, Maus, Rollkugel,Fadenkreuz ---> zum Positionieren und Identifizieren
Digitalisierbrett ----------------------------------> zur Koordinateneingabe x,y
3-D Messmaschinen --------------------------> zur Koordinateneingabe x,y,z
Spezialgeräte der einzelnen Fachdisziplinen (Vermessung)
Die aufgenommenen Daten werden von diesen Geräten in Dateien gespeichert und oft
mit Zusatzinformationen ergänzt.
Ausgabe:
Die lokale Intelligenz des Gerätes entscheidet auch hier darüber, wie kompakt (komplex)
die grafischen Kommandos sein dürfen, die von einem Hostrechner an das Ausgabegerät
zur lokalen Verarbeitung gegeben werden können.
Plotter, Zeichentisch, Drucker, (Diskette, Platte, CD)
Kenngrößen von Plottern/Zeichentischen:
Blattgrößen, A0-A5, Kosten für Zeichenmaterial, Anzahl Stifte, Linienarten, Symbole,
freie Programmierbarkeit (z.B. Symbole )
Standardisierungsrichtlinien wie das GKS unterteilen diese verschiedenen Geräte
in folgende Klassen:
-LOCATOR-----> liefert x,y-Koordinatenpaar
-STROKE------> liefert eine Folge von koordinatenpaaren (x,y)
-CHOICE -----> liefert eine ganze positive Zahl
-STRING -----> liefert eine Zeichenkette
-VALUATOR----> liefert eine Gleitkommazahl
-PICK ----> identifiziert ein Objekt
Dabei kann ein Gerät mehreren Klassen angehören, wenn es mehrere Funktionen erfüllt.
Weiterhin unterscheidet der Standard mehrere Eingabemodi der Geräte:
REQUEST (Abfrage)
Der Programmablauf wird unterbrochen, bis der Benutzer einen angefordeten Wert eingegeben
hat und die Eingabe beendet hat.
SAMPLE (Probenentnahme )
Ohne auf eine Reaktion eines Benutzers zu warten, wird der Zustand eines Eingabegerätes
abgefragt, wenn die entsprechende Eingabe-Prozedur im Programmablauf aufgerufen wird.
EVENT (Ereignis):
Wenn der Benutzer ein bestimmtes Ereignis auslöst, wird der zugehörige Wert in einer
Warteschlange gespeichert und kann jederzeit vom Programm abgefragt werden.
Tabelle der Eingabemodi und Geräteklassen:
-------------PICK -------LOCATOR----- CHOICE----- VALUATOR---STRING
REQUEST ---- X ------------X ------------X---------------X --------------X
SAMPLE---------------------X-------------X---------------X
EVENT--------X----------------------------X
Last modification: October 23, 2001