DE19619464C2 - Datenbusprotokoll für ein Computergraphiksystem - Google Patents
Datenbusprotokoll für ein ComputergraphiksystemInfo
- Publication number
- DE19619464C2 DE19619464C2 DE19619464A DE19619464A DE19619464C2 DE 19619464 C2 DE19619464 C2 DE 19619464C2 DE 19619464 A DE19619464 A DE 19619464A DE 19619464 A DE19619464 A DE 19619464A DE 19619464 C2 DE19619464 C2 DE 19619464C2
- Authority
- DE
- Germany
- Prior art keywords
- bits
- data
- data words
- words
- word
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/363—Graphics controllers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
Description
Die vorliegende Erfindung bezieht sich allgemein auf Compu
tergraphiksysteme und insbesondere auf ein Busprotokoll zum
Übertragen von Z-Koordinatendaten über einen Datenbus in ei
nem Computergraphiksystem.
Computergraphiksysteme werden üblicherweise zum Anzeigen
graphischer Darstellungen von Objekten auf einem zweidimen
sionalen Anzeigebildschirm verwendet. Gegenwärtige Computer
graphiksysteme können hochdetaillierte Darstellungen liefern
und werden in einer Vielzahl von Anwendungen verwendet.
Bei typischen Computergraphiksystemen wird ein Objekt, das
auf dem Anzeigebildschirm dargestellt werden soll, in eine
Mehrzahl von Graphikgrundelementen aufgebrochen. Grundele
mente sind elementare Komponenten eines Graphikbildes und
können Punkte, Linien, Vektoren und Polygone, beispielsweise
Dreiecke, aufweisen. Typischerweise ist ein Hardware/Soft
ware-Schema implementiert, um die Graphikgrundelemente, die
die Ansicht eines oder mehrerer Objekte, die auf dem Bild
schirm dargestellt werden, darstellen, aufzubereiten oder
auf den zweidimensionalen Anzeigebildschirm zu zeichnen.
Typischerweise werden die Grundelemente, die das dreidimen
sionale Objekt, das aufbereitet werden soll, definieren, von
einem Host-Computer geliefert, der jedes Grundelement in
Form von Grundelementdaten definiert. Wenn das Grundelement
beispielsweise ein Dreieck ist, kann der Host-Computer das
Grundelement in Form der Koordinaten X, Y, Z seiner Schei
telpunkte, ebenso wie der Farbwerte R, G, B für jeden Schei
telpunkt definieren. Eine Aufbereitungshardware interpoliert
die Grundelementdaten, um die Anzeigebildschirmpixel, die
eingeschaltet werden, um jedes Grundelement darzustellen,
und die Werte R, G, B für jedes Pixel zu berechnen.
Typischerweise werden die Grundelementdaten unter Verwendung
von Datenbussen zwischen verschiedenen Schaltungsblöcken des
Graphiksystems verteilt. Standardbreiten von Datenbussen
weisen 32 und 64 Bit auf. Obwohl Nicht-Standard-Datenbusse
verwendet werden können, sind Nicht-Standard-Busse typi
scherweise aufwendiger und erfordern eine zusätzliche Ent
wicklungszeit. Grundelementdatenworte sind typischerweise 32
Bit lang oder weniger, mit der Ausnahme von Z-Koordinaten
daten, die 40 Bit erfordern können, um eine hohe Präzision
zu erreichen.
Bei bekannten Graphiksystemen entsteht ein Problem, wenn es
notwendig wird, die 40-Bit-Z-Koordinatendaten über einen Da
tenbus einer Breite von 32 Bit zu leiten. Es ist erwünscht,
die Z-Koordinatendaten in nur einem Buszyklus zu übertragen,
um die Übertragungsrate der Grundelementdaten zu maximieren.
In aufwendigeren bekannten Systemen der oberen Preisklasse
wird die Übertragung von 40-Bit-Z-Koordinatendaten durch die
Verwendung von kundenspezifischen Datenbussen, die Busbrei
ten von zumindest 40 Bit aufweisen, erreicht. In bekannten
Systemen der unteren Preisklasse, die eine geringere Z-Koor
dinaten-Präzision erfordern, werden die Z-Koordinatendaten
typischerweise auf 32 Bit abgeschnitten, um die Verwendung
von Standarddatenbussen zu ermöglichen. Alternativ wird bei
bekannten Systemen, die 32-Bit-Datenbusse verwenden, jedes
40-Bit-Z-Koordinatenwort unter Verwendung von mehr als einem
Buszyklus übertragen, wodurch die Übertragungsrate der Gra
phikgrundelementdaten verlangsamt ist. Es ist erwünscht, die
Präzision, die durch 40-Bit-Z-Koordinatendaten geboten wird,
beizubehalten, während der Bedarf nach zwei Buszyklen, um
die Z-Koordinatendaten zu übertragen, vermieden ist.
Aus Schicker, Pietro: Datenübertragung und Rechnernetze, 3.
Auflage, Stuttgart: Teubner, 1988, S. 1-6, 16-21, ist es
bekannt, Daten zu fragmentieren, wenn die Einheit der Infor
mationsmenge, die von einem Sender zu einem Empfänger über
mittelt werden soll, größer ist als die Länge des maximal
zugelassenen Informationsrahmens. Dazu werden die zu großen
Informationseinheiten in kleinere Teile fragmentiert, wobei
diese kleineren Teile dann in einzelnen Informationsrahmen
übermittelt werden. Gleichzeitig ist es aus der oben genann
ten Schrift bekannt, verschiedene Informationseinheiten in
nerhalb eines Rahmens zu kombinieren.
Die US-A-5280598 offenbart eine Bussteuerschaltung, die ver
wendet wird, um eine Mikroprozessoreinheit über einen MPU-
Bus (MPU = Microprocessing Unit) mit verschiedenen Geräten
zu koppeln, die entworfen sind, um mit Bussen zu arbeiten,
die geringere Busbreiten als der MPU-Bus aufweisen. Dazu ist
eine Anzahl von Puffern vorgesehen, die durch eine Steuersi
gnalerzeugungseinheit gesteuert werden. Die Puffer werden
verwendet, um Daten, die zwischen einem MPU-Bus mit einer
Breite von 32 Bit und einem Systembus mit einer Breite von 8
Bit übertragen werden, zu puffern. Dazu wird ein 32-Bit-
Wort, das durch die Steuereinheit von dem 32-Bit-Bus empfan
gen wird, als vier 8-Bit-Worte in den Puffern gespeichert.
Diese 8-Bit-Worte werden dann sequentiell über den 8-Bit-Bus
übertragen.
Es ist die Aufgabe der vorliegenden Erfindung, eine Vorrichtung zum Übertragen von Daten in einem Computer
graphiksystem und ein Verfahren zum Übertragen von Datenwor
ten, die mehr als n Bits aufweisen, über einen Datenbus, der
eine Breite von n Bits aufweist, zu schaffen.
Diese Aufgabe wird durch eine Vorrichtung gemäß An
spruch 1 sowie ein Verfahren gemäß Anspruch 8 gelöst.
Gemäß einem Aspekt schafft die vorliegende Erfindung eine
Vorrichtung zum Übertragen von Daten zwischen einem ersten
und einem zweiten Schaltungsblock eines Computergraphiksy
stems. Der erste und der zweite Schaltungsblock sind durch
einen Datenbus, der n Bit aufweist, verbunden. Die Vorrich
tung weist eine Schaltung in dem ersten Schaltungsblock auf,
um sequentiell Datenworte auf dem Datenbus von dem ersten
Schaltungsblock zu dem zweiten Schaltungsblock zu übertra
gen. Die Datenworte weisen eine Mehrzahl von langen Daten
worten, die mehr als n Bits aufweisen, auf. Die Vorrichtung
weist ferner ein Register in dem ersten Schaltungsblock auf,
um Bits über n Bits der langen Datenworte zu speichern, und
eine Steuerung in dem ersten Schaltungsblock, die auf die
Übertragung der langen Datenworte anspricht, um die Bits
über n Bits der langen Worte in das Register zu laden und um
die Bits der langen Datenworte, die in dem Register gespei
chert sind, zur Übertragung zu dem zweiten Schaltungsblock
in ein zusammengesetztes Datenwort zu kombinieren, wobei das
zusammengesetzte Datenwort Bits von zwei oder mehr der Mehr
zahl von langen Datenworten aufweist.
Das zusammengesetzte Datenwort kann ein kurzes Datenwort mit
weniger als n Bits einschließen. Bei einem bevorzugten Aus
führungsbeispiel werden Z-Koordinatendatenworte mit 40 Bits
auf einem 32-Bit-Datenbus übertragen. Die acht überschüssi
gen Bits von drei Z-Koordinatendatenworten werden mit einem
8 Bit-Befehlswort kombiniert, um ein zusammengesetztes Da
tenwort mit 32 Bit zu bilden. Folglich sind keine zusätzli
chen Buszyklen erforderlich, um die 40-Bit-Z-Koordinatenda
tenworte zu übertragen.
Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird
ein Verfahren zum Übertragen von Datenworten zwischen einem
ersten und einem zweiten Schaltungsblock eines Computergra
phiksystems geschaffen. Der erste und der zweite Datenblock
sind durch einen Datenbus mit n Bits verbunden. Das Verfah
ren weist folgende Schritte auf: Übertragen von n Bit jedes
der Datenworte von dem ersten Schaltungsblock zu dem zweiten
Schaltungsblock, wobei die Datenworte eine Mehrzahl von lan
gen Datenworten mit mehr als n Bits aufweisen, Speichern von
Bits über n Bits der langen Datenworte in einem Register,
Kombinieren der Bits über n Bits der langen Datenworte, um
ein zusammengesetztes Datenwort zu bilden, das Bits von zu
mindest zwei der langen Datenworte aufweist, und Übertragen
des zusammengesetzten Datenworts auf dem Datenbus von dem
ersten Schaltungsblock zu dem zweiten Schaltungsblock.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend bezugnehmend auf die beiliegenden Zeich
nungen näher erläutert. Es zeigen:
Fig. 1 ein Blockdiagramm eines Ausführungsbeispiels eines
Computergraphiksystems, das zum Einschluß der vor
liegenden Erfindung geeignet ist;
Fig. 2 ein Blockdiagramm eines ersten Ausführungsbeispiels
der vorliegenden Erfindung;
Fig. 3 ein Diagramm der Graphikgrundelement-Datenstruktur
für ein Dreieck-Grundelement, das bei dem Ausfüh
rungsbeispiel von Fig. 2 verwendet ist;
Fig. 4 ein Diagramm, das den Datenfluß gemäß dem Ausfüh
rungsbeispiel von Fig. 2 zeigt;
Fig. 5 ein Blockdiagramm, das die Übertragung eines Be
fehlsworts und von Z-Koordinatendaten in einem Bus
zyklus gemäß einem zweiten Ausführungsbeispiel der
vorliegenden Erfindung zeigt; und
Fig. 6 ein Blockdiagramm, das die Übertragung von Z-Koor
dinatendaten gemäß einem dritten Ausführungsbei
spiel der vorliegenden Erfindung zeigt, wenn kein
Befehlswort existiert.
Fig. 1 ist ein Blockdiagramm eines Ausführungsbeispiels ei
nes Grafiksystems der vorliegenden Erfindung, das eine Tex
turabbildungshardware mit einem Cache-Speicher zum lokalen
Speichern von Texturdaten aufweist. Es sollte offensichtlich
sein, daß die veranschaulichende Implementierung nur exem
plarisch bezüglich der Anzahl von Platinen und Chips, der
Art und Weise, auf die dieselben partitioniert sind, der
Busbreiten und der Datenübertragungsraten gezeigt ist. Zahl
reiche andere Implementierungen können verwendet werden. Wie
gezeigt ist, weist das System eine Eingangsplatine 10, eine
Texturabbildungsplatine 12 und eine Rahmenpufferplatine 14
auf. Die Eingangsplatine steht über einen 52-Bit-Bus 16 mit
einem Hostcomputer 15 in Verbindung. Die Eingangsplatine
empfängt Grundelemente, die aufbereitet werden sollen, über
den Bus 16 von dem Hostcomputer. Die Grundelemente sind
durch x-, y-, z-Vektorkoordinatendaten, R-, G-, B-Farbdaten
und Texturkoordinaten S, T, alle für Abschnitte der Grund
elemente, beispielsweise für die Scheitelpunkte, wenn das
Grundelement ein Dreieck ist, spezifiziert. Daten, die die
Grundelemente in drei Dimensionen darstellen, werden dann
durch die Eingangsplatine 10 über einen 85-Bit-Bus 18 zu der
Texturabbildungsplatine 12 und der Rahmenpufferplatine 14
geliefert. Die Texturabbildungsplatine interpoliert die emp
fangenen Grundelementdaten, um die Bildschirmanzeigepixel zu
berechnen, die das Grundelement darstellen werden, und be
stimmt die entsprechenden resultierenden Texturdaten für je
des Grundelementpixel. Die resultierenden Texturdaten werden
über fünf 55-Bit-Busse 28, die in Fig. 1 als ein einzelner
Bus gezeigt sind, um die Figur deutlicher zu machen, zu der
Rahmenpufferplatine geliefert.
Die Rahmenpufferplatine 14 interpoliert die Grundelementda
ten, die von der Eingangsplatine 10 empfangen werden, eben
falls, um die Pixel auf dem Anzeigebildschirm zu berechnen,
die jedes Grundelement darstellen werden, und um die Objekt
farbwerte für jedes Pixel zu bestimmen. Die Rahmenpufferpla
tine kombiniert dann auf einer Basis Pixel um Pixel die Ob
jektfarbwerte mit den resultierenden Texturdaten, die von
der Texturabbildungsplatine geliefert werden, um resultie
rende Werte R, G, B des Bilds für jedes Pixel zu erzeugen.
R-, G-, B-Farb-Steuersignale für jedes Pixel werden jeweils
über R-, G-, B-Leitungen 29 geliefert, um die Pixel des An
zeigebildschirms (nicht gezeigt) zu steuern, um auf dem An
zeigebildschirm ein resultierendes Bild anzuzeigen, das das
mit einer Texturabbildung versehene Grundelement darstellt.
Die Eingangsplatine 10, die Texturabbildungsplatine 12 und
die Rahmenpufferplatine 14 sind jeweils pipelineartig aufge
baut und arbeiten auf mehreren Grundelementen gleichzeitig.
Während die Texturabbildungs- und Rahmenpuffer-Platinen auf
Grundelementen arbeiten, die vorher durch die Eingangsplati
ne geliefert werden, fährt die Eingangsplatine fort, auf
neuen Grundelementen zu arbeiten und dieselben zu liefern,
bis die Pipelines in den Platinen 12 und 14 voll werden.
Die Eingangsplatine 10 weist einen Verteilerchip 30, drei
Dreidimensionalgeometrie-Beschleunigerchips (3-D-Geometrie-
Beschleunigerchips) 32A, 32B und 32C, einen Zweidimensional
geometrie-Beschleunigerchip (2-D-Geometrie-Beschleuniger
chip) 34 und einen Konzentratorchip 36 auf. Der Verteiler
chip 30 empfängt die x-, y-, z-Koordinaten- und Farb-Grund
elementdaten über einen Bus 16 von dem Hostcomputer und ver
teilt 3-D-Grundelementdaten gleichmäßig unter den 3-D-Geome
trie-Beschleunigerchips 32A, 32B und 32C. Auf diese Art und
Weise ist die Systembandbreite erhöht, da gleichzeitig drei
Gruppen von Grundelementen bearbeitet werden. Daten werden
über einen 40-Bit-Bus 38A zu den 3-D-Geometrie-Beschleuni
gerchips 32A und 32B und über einen 40-Bit-Bus 38B zu dem
Chip 32C geliefert. Beide Busse 38A und 38B übertragen Daten
mit einer Rate von 60 MHz und liefern eine ausreichende
Bandbreite, um zwei 3-D-Geometrie-Beschleunigerchips zu ver
sorgen. 2-D-Grundelementdaten werden mit einer Rate von 40
MHz über einen 44-Bit-Bus 40 zu dem 2-D-Geometrie-Beschleu
nigerchip 34 geliefert.
Jeder 3-D-Geometrie-Beschleunigerchip transformiert die x-,
y-, z-Koordinaten, die die empfangenen Grundelemente defi
nieren, in entsprechende Bildschirmraumkoordinaten, bestimmt
die R-, G-, B-Werte des Objekts und die S-, T-Werte der Tex
tur für die Bildschirmraumkoordinaten, zerlegt Grundelement
vierecke in Dreiecke und berechnet eine Dreieckflächenglei
chung, um jedes Dreieck zu definieren. Jeder 3-D-Geometrie-
Beschleunigerchip führt ferner Sichtausschnittoperationen
durch, um eine genaue Bildschirmanzeige des resultierenden
Bilds sicherzustellen, wenn mehrere Fenster angezeigt wer
den, oder wenn sich ein Abschnitt eines Grundelements über
das Sichtvolumen, das auf dem Anzeigebildschirm dargestellt
ist, hinaus erstreckt. Ausgangsdaten von den 3-D-Geometrie-
Beschleunigerchips 32A, 32B bzw. 32C werden mit einer Rate
von 60 MHz jeweils über 44-Bit-Busse 42A und 42B zu dem Kon
zentratorchip 36 geliefert. Der Zweidimensionalgeometrie-Be
schleunigerchip 34 liefert ferner Ausgangsdaten über einen
46-Bit-Bus 44 mit einer Rate von 45 MHz zu dem Konzentrator
chip 36. Der Konzentratorchip 36 kombiniert die 3-D-Grund
elementausgangsdaten, die von den 3-D-Beschleunigerchips 32A
bis C empfangen werden, sortiert die Grundelemente in die
ursprüngliche Reihenfolge, die dieselben vor der Verteilung
durch den Verteilerchip 30 hatten, um und liefert die kombi
nierten Grundelementausgangsdaten über den Bus 18 zu der
Texturabbildungs- und der Rahmenpuffer-Platine.
Die Texturabbildungsplatine 12 weist einen Texturabbildungs
chip 46 und eine Lokalspeicher 48 auf, der vorzugsweise als
ein Cache-Speicher ausgebildet ist. Bei einem bevorzugten
Ausführungsbeispiel der Erfindung ist der Lokalspeicher aus
Gründen, die nachfolgend erläutert werden, aus einer Mehr
zahl von SDRAM-Chips (SDRAM = synchronous dynamic random
access memory = synchroner dynamischer Direktzugriffsspei
cher) gebildet. Wie nachfolgend detaillierter beschrieben
wird, speichert der Cache-Speicher 48 Textur-MIP-Tabellenda
ten, die den Grundelementen zugeordnet sind, welche in der
Rahmenpufferplatine aufbereitet werden. Die Textur-MIP-Ta
bellendaten werden über den Bus 40, durch den 2-D-Geome
trie-Beschleunigerchip 34 und über einen 24-Bit-Bus 24 aus
einem Hauptspeicher 17 des Hostcomputers 15 heruntergeladen.
Der Texturabbildungschip 46 empfängt nacheinander Grundele
mentdaten über den Bus 18, welche die Grundelemente darstel
len, die auf dem Anzeigebildschirm aufbereitet werden sol
len. Wie oben erläutert wurde, weisen die Grundelemente, die
von den 3-D-Geometrie-Beschleunigerchips 32A bis C geliefert
werden, Punkte, Linien und Dreiecke auf. Die Texturabbil
dungsplatine führt keine Texturabbildung von Punkten oder
Linien durch und bearbeitet nur Dreieck-Grundelemente. Die
Daten, die die Dreieck-Grundelemente darstellen, enthalten
die x-, y-, z-Pixelkoordinaten des Objekts für zumindest ei
nen Scheitelpunkt, die R-, G-, B-Farbwerte des Objekts von
zumindest einem Scheitelpunkt, die Koordinaten S, T der Ab
schnitte der Texturtabelle, die dem zumindest einem Schei
telpunkt entsprechen, und die Flächengleichung des Dreiecks.
Der Texturabbildungschip 46 ignoriert die z-Koordinate des
Objektpixels und die R-, G-, B-Farbwerte des Objekts. Der
Chip 46 interpoliert die x-, y-Pixelkoordinaten und interpo
liert die S- und T-Koordinaten, die jedem x-, y-Bildschirm
anzeigepixel, das das Grundelement darstellt, entsprechen.
Für jedes Pixel greift der Texturabbildungschip auf den Ab
schnitt der Textur-MIP-Tabelle, der demselben entspricht,
aus dem Cache-Speicher zu und berechnet resultierende Tex
turdaten für das Pixel, welche einen gewichteten Durch
schnitt mehrerer Texel einschließen können.
Die resultierenden Texturdaten für jedes Pixel werden über
die fünf Busse 28 durch den Texturabbildungschip 46 zu der
Rahmenpufferplatine geliefert. Die fünf Busse 28 sind je
weils mit fünf Rahmenpuffer-Steuerchips 50A, 50B, 50C, 50D
und 50E, die auf der Rahmenpufferplatine vorgesehen sind,
gekoppelt und liefern parallel resultierende Texturdaten zu
den Rahmenpuffer-Steuerchips. Die Rahmenpuffer-Steuerchips
50A bis E sind jeweils mit Gruppen von zugeordneten VRAM-
Chips 51A bis E (VRAM = video random access memory = Video-
Direktzugriffsspeicher) gekoppelt. Die Rahmenpufferplatine
weist ferner vier Videoformatchips 52A, 52B, 52C und 52D und
einen RAMDAW 54 auf (RAMDAW = Direktzugriffsspeicher-Digi
tal/Analog-Wandler). Die Rahmenpuffer-Steuerchips steuern
unterschiedliche, nicht überlappende Segmente des Anzeige
bildschirms. Jeder Rahmenpuffer-Steuerchip empfängt Grund
elementdaten über den Bus 18 von der Eingangsplatine und re
sultierende Texturabbildungsdaten über den Bus 28 von der
Texturabbildungsplatine. Die Rahmenpuffer-Steuerchips inter
polieren die Grundelementdaten, um die Bildschirmanzeige-
Pixelkoordinaten in den jeweiligen Segmenten derselben, die
das Grundelement darstellen, und die entsprechenden R-, G-,
B-Farbwerte des Objekts für jede Pixelkoordinate zu berech
nen. Für diejenigen Grundelemente (d. h. Dreiecke), für die
resultierende Texturdaten von der Texturabbildungsplatine
geliefert werden, kombinieren die Rahmenpuffer-Steuerchips
auf einer Basis Pixel um Pixel die Objektfarbwerte und die
resultierenden Texturdaten, um endgültige R-, G-, B-Werte
für jedes Pixel, das auf dem Anzeigebildschirm angezeigt
werden soll, zu erzeugen.
Die Art und Weise, auf die die Objekt- und Textur-Farbwerte
kombiniert werden, kann auf eine Anzahl von unterschiedli
chen Arten gesteuert werden. Beispielsweise können die Ob
jektfarbwerte in einem Ersetzungsmodus einfach durch die
Texturfarbwerte ersetzt werden, so daß nur die Texturfarb
werte beim Aufbereiten des Pixels verwendet werden. Alter
nativ können die Objekt- und Textur-Farbwerte in einem Mo
dulationsmodus miteinander multipliziert werden, um die end
gültigen R-, G-, B-Werte für das Pixel zu erzeugen. Außerdem
kann ein Farbsteuerwort für jedes Texel gespeichert werden,
das ein Verhältnis spezifiziert, das die Art und Weise defi
niert, auf die die entsprechenden Texturfarbwerte mit den
Objektfarbwerten kombiniert werden sollen. Ein resultieren
des Farbsteuerwort kann für die resultierenden Texeldaten,
die jedem Pixel entsprechen, bestimmt werden und über den
Bus 28 zu den Rahmenpuffer-Steuerchips geliefert werden, so
daß die Steuerchips das Verhältnis verwenden können, das
durch das entsprechende resultierende Steuerwort spezifi
ziert ist, um die endgültigen R-, G-, B-Werte für jedes Pi
xel zu bestimmen.
Die resultierenden Bildvideodaten, die durch die Rahmenpuf
fer-Steuerchips 50A bis E erzeugt werden, einschließlich der
R-, G-, B-Werte für jedes Pixel, werden in den entsprechen
den VRAM-Chips 51A bis E gespeichert. Jede Gruppe von VRAM-
Chips 51A bis E weist acht VRAM-Chips auf, derart, daß 40
VRAM-Chips auf der Rahmenpufferplatine angeordnet sind. Je
der der Videoformatchips 52A bis D ist mit einem unter
schiedlichen Satz von zehn VRAM-Chips verbunden und empfängt
Daten von demselben. Die Videodaten werden seriell aus den
VRAM-Chips geschoben und jeweils über 64-Bit-Busse 58A, 58B,
58C und 58D mit einer Rate von 33 MHz zu den vier Videofor
matchips 52A, 52B, 52C und 52D geliefert. Die Videoformat
chips formatieren die Videodaten, so daß dieselben durch den
RAMDAW gehandhabt werden können, und liefern die formatier
ten Daten über 32-Bit-Busse 60A, 60B, 60C und 60D mit einer
Rate von 33 MHz zu dem RAMDAW 54. Der RAMDAW 54 wandelt die
digitalen Farbdaten wiederum in analoge R-, G-, B-Farbsteu
ersignale um und liefert die R-, G-, B-Steuersignale für je
des Pixel entlang R-, G-, B-Steuerleitungen 29 zu einer
Bildschirmanzeige (nicht gezeigt).
Fig. 2 zeigt detaillierter relevante Teile des Busses 18,
des Konzentrators 36 und der Rahmenpuffersteuerung 50A. Der
Konzentrator weist einen Gleitkomma-Zu-Festkomma-Wandler 62,
eine logische Steuerung 70 und ein Speicherregister 64 mit
drei Speicherabschnitten 64A, 64B, 64C, von denen jeder bei
dem veranschaulichenden Ausführungsbeispiel eine Speicherka
pazität von zumindest 8 Bit aufweist, auf. Die Rahmenpuffer
steuerung 50A weist eine logische Steuerung 72, ein Spei
cherregister 67 und ein Speicherregister 66 mit drei Spei
cherabschnitten 66A, 66B und 66C, von denen bei dem veran
schaulichenden Ausführungsbeispiel jeder eine Speicherkapa
zität von zumindest 40 Bit aufweist, auf. Der Konzentrator
kombiniert die Grundelementausgabedaten, die von den 3-D-
Geometriebeschleunigerchips empfangen werden, liefert eine
Gleitkomma-Zu-Festkomma-Umwandlung in dem Gleitkomma-Zu-
Festkomma-Wandler 62 und liefert die kombinierten Grundele
mentausgabedaten über den Bus 18 zu der Rahmenpufferplatine.
Die Operation des Busprotokolls gemäß einem ersten Ausfüh
rungsbeispiel der vorliegenden Erfindung wird nun bezugneh
mend auf die Fig. 2 bis 4 beschrieben, wobei ein Dreieck-
Grundelement als ein Beispiel verwendet ist. Bei einem Bei
spiel ist jedes Dreieck-Grundelement durch 22 Datenworte de
finiert. Fig. 3 ist ein Diagramm, das die 22 Worte be
schreibt, die verwendet sind, um ein Dreieck-Grundelement zu
definieren. Wie in Fig. 3 gezeigt ist, weist jedes der Wor
te, das die Grundelementdaten enthält, 32 Bit oder weniger
auf, mit Ausnahme der drei Worte der Z-Koordinatendaten, Z,
dZ/dX und dZ/de, von denen jedes 40 Datenbits enthält.
Bei dem Ausführungsbeispiel, das in Fig. 2 gezeigt ist, ist
der Datenbus 32 Bit breit, um Worte mit 32 Bit in einem Bus
zyklus zu übertragen. Die 40-Bit-Z-Koordinatendaten können
nicht in einem 32-Bit-Buszyklus von dem Konzentrator zu der
Rahmenpuffersteuerung 50A übertragen werden. Die Prozedur,
durch die die 40-Bit-Z-Koordinatendatenworte bei dem veran
schaulichenden Ausführungsbeispiel übertragen werden, ist in
Fig. 4 gezeigt. Um die vollständigen 40 Bit für jedes Z-Ko
ordinatendatenwort zu übertragen, werden die 32 höchstwerti
gen Bits in einem Buszyklus übertragen, während die verblei
benden 8 Bits unter der Steuerung der logischen Steuerung 70
in dem Speicherregister 64 gespeichert werden. Diese Proze
dur wird für alle drei der Z-Koordinatendatenworte wieder
holt, was zur Folge hat, daß 8 Bit jedes Z-Koordinatendaten
worts (24 Bit) in dem Register 64 gespeichert sind. Die lo
gische Steuerung 70 steuert das Schieberegister 64 derart,
daß 8 Bit von jedem der Z-Koordinatendatenworte Z, dZ/dX und
dZ/de jeweils in entsprechenden Speicherabschnitten 64A,
64B, 64C des Speicherregisters gespeichert sind.
Das Befehlswort ist typischerweise das letzte Wort der
Grundelementdaten, das über den Datenbus übertragen wird.
Bei dem Ausführungsbeispiel, das in Fig. 2 gezeigt ist, be
steht das Befehlswort aus nur 8 Bit. Wenn die logische
Steuerung 70 erfaßt, daß das Befehlswort übertragen werden
soll, werden die 24 Bit, die vorher in dem Speicherregister
64 gespeichert wurden, die aus den Bits 0 bis 7 für jedes
der Z-Koordinatendatenworte bestehen, mit dem Befehlswort
kombiniert, um ein zusammengesetztes Wort zu bilden. Das
Befehlswort und die 8 niederwertigen Bits für jedes der Z-
Datenworte (eine Gesamtzahl von 32 Bit) werden dann in einem
Buszyklus über den Datenbus übertragen.
Fig. 2 zeigt ferner die relevanten Teile der Rahmenpuffer
platine 50A. Jedes der Z-Koordinatenworte, das über den Da
tenbus 18 übertragen wird, wird durch die Rahmenpuffersteue
rung empfangen. Wie in Fig. 2 gezeigt ist, werden die 32 Bit
jedes Z-Koordinatendatenworts unter der Steuerung der logi
schen Steuerung 72 in dem Speicherregister 66 der Rahmenpuf
fersteuerung gespeichert, wenn dieselben empfangen werden.
Dann werden, wenn der Buszyklus, der das Befehlswort ent
hält, durch die Rahmenpuffersteuerung von dem Datenbus emp
fangen und durch die logische Steuerung 72 erfaßt wird, die
8 Bit, die zu jedem der Z-Koordinatendatenworte gehören,
durch die logische Steuerung aus dem zusammengesetzten Wort
gezogen und in dem Speicherregisterabschnitt, der dem ent
sprechenden Z-Koordinatenwort zugeordnet ist, plaziert, der
art, daß jedes der 40-Bit-Z-Koordinatendatenworte in dem
Speicherregister 66 wieder zusammengesetzt wird. Das Be
fehlswort wird in dem Speicherregister 67 gespeichert.
Die Übertragung der Z-Koordinatendatenworte gemäß dem Pro
tokoll der vorliegenden Erfindung ist in dem vollständigen
Diagramm von Fig. 4 gezeigt. In einem Schritt 80 werden 32
Bit (Bits 8 : 39) der Z-Koordinatendaten durch den Gleitkom
ma-Zu-Festkomma-Wandler 62 zu der Rahmenpuffersteuerung 50A
übertragen. Die 32 Bit der Z-Koordinatendaten werden unter
der Steuerung der logischen Steuerung 72 in das Register 66A
geladen. In dem Konzentrator 36 werden die Bits 0 : 7 des Z-
Koordinatendatenworts in das Register 64A geladen. In einem
Schritt 82 werden die Bits 8 : 39 des Datenworts dZ/dX durch
den Gleitkomma-Zu-Festkomma-Wandler 62 über den Datenbus 18
zu der Rahmenpuffersteuerung 50A übertragen und in das Re
gister 66B geladen. Die Bits 0 : 7 des Datenworts dZ/dX werden
in das Register 64B in dem Konzentrator 36 geladen. In einem
Schritt 84 werden die Bits 8 : 39 des Datenworts dZ/de durch
den Gleitkomma-Zu-Festkomma-Wandler 62 über den Datenbus 18
übertragen und unter der Steuerung der logischen Steuerung
72 in das Register 66C geladen. Die Bits 0 : 7 des Datenworts
dZ/de werden in das Register 64C in dem Konzentrator 36 ge
laden. In einem Schritt 86 werden 8 Bits des Befehlsworts
mit dem Inhalt der Register 64A, 64B und 64C kombiniert, um
ein zusammengesetztes Datenwort von 32 Bit zu bilden. Das
zusammengesetzte Datenwort wird über den Datenbus 18 zu der
Rahmenpuffersteuerung 50A übertragen. In der Rahmenpuffer
steuerung 50A werden die Bits 0 : 7 jedes Z-Koordinatendaten
worts in die jeweiligen niederwertigen Orte des Registers
66A, 66B und 66C geladen. Zu dieser Zeit (Schritt 8A) sind
die drei Z-Koordinatendatenworte für eine Übertragung aus
den Registern 66A, 66B und 66C verfügbar. Drei 40-Bit-Z-Ko
ordinatendatenworte ebenso wie ein Befehlswort wurden in
vier Buszyklen über den 32-Bit-Datenbus 18 übertragen.
Unter dem oben beschriebenen Schema werden die drei Z-Koor
dinatendatenworte einer Breite von 40 Bit über einen Daten
bus einer Breite von 32 Bit übertragen, ohne zusätzliche
Buszyklen zu erfordern, um alle Worte, die die Grundelement
daten für ein Dreieck enthalten, zu übertragen. Bei dem oben
beschriebenen Ausführungsbeispiel werden die 22 Worte, die
die Grundelementdaten für ein Dreieck enthalten, in 22 Bus
zyklen über einen 32-Bit-breiten Datenbus übertragen. Bei
einer veranschaulichenden Implementierung ist der Datenbus
18 64 Bit breit, um zwei 32-Bit-Worte in einem Buszyklus zu
übertragen. Bei dieser Implementierung können die 22 Worte
für ein Dreieck-Grundelement in 11 Buszyklen übertragen wer
den. Da die 32-Bit-Worte jedoch separat gesteuert werden,
wird der 64-Bit-Bus geeigneterweise als zwei parallele 32-
Bit-Busse betrachtet. Zu Zwecken der Erläuterung wird der
Bus 18 als die Kapazität zur Übertragung von 32-Bit-Daten
worten aufweisend betrachtet.
Bei einem zweiten Ausführungsbeispiel der vorliegenden Er
findung kann das Befehlswort mehr als 8 Bit, beispielsweise
11 Bit aufweisen. Bei diesem Ausführungsbeispiel werden nur
7 Bit der verbleibenden 8 Datenbits jedes der Z-Koordinaten
datenworte zusammen mit dem Befehlswort übertragen. Das ach
te Bit, das dem niederstwertigen Bit entspricht, von jedem
der Z-Koordinatenworte wird gestrichen. Dieses Ausführungs
beispiel der vorliegenden Erfindung ist in Fig. 5 gezeigt.
Wie in Fig. 5 gezeigt ist, setzt das Speicherregister 66 in
dem Rahmenpuffer die Z-Koordinatendatenworte wieder zusam
men. Das Ausführungsbeispiel von Fig. 5 arbeitet auf die
gleiche Art und Weise wie das Ausführungsbeispiel der Fig. 2
bis 4, mit entsprechenden Änderungen der Bitzahlen. Bei die
sem Ausführungsbeispiel werden die wieder zusammengesetzten
Z-Koordinatendatenworte nur 39 der ursprünglichen 40 Bit
aufweisen. Der Verlust eines Bits für jedes Z-Koordinatenda
tenwort hat eine bestimmte Verschlechterung der Z-Genauig
keit zur Folge. Jedoch werden die resultierenden Z-Koordina
tendatenworte noch mehr als 32 Bit enthalten, ohne zusätzli
che Buszyklen notwendig zu machen.
Es sollte offensichtlich sein, daß dieses Ausführungsbei
spiel der vorliegenden Erfindung auf Befehlsworte angewendet
werden kann, die eine andere Anzahl als 11 Bits k aufweist.
In diesem Fall werden so viele der verbleibenden Z-Koordi
natendatenbits, die in dem Speicherregister enthalten sind,
wie zusammen mit dem Befehlswort in ein 32-Bit-Datenwort
passen, in einem Buszyklus übertragen, wobei alle zusätz
lichen Z-Koordinatendatenbits, die aus den niederstwertigen
Bits bestehen, gestrichen werden.
Bei einem dritten Ausführungsbeispiel der vorliegenden Er
findung weisen die Grundelementdaten kein Befehlswort auf.
Bei diesem Ausführungsbeispiel, das in Fig. 6 gezeigt ist,
werden die 24 verbleibenden Bits der Z-Koordinatendatenworte
unter der Steuerung der logischen Steuerung 70 zusammen in
einem zusätzlichen Buszyklus übertragen. Wie bei den vorhe
rigen Ausführungsbeispielen werden 32 Bits jedes Z-Koordina
tendatenworts in einem Buszyklus übertragen, während die
verbleibenden 8 Bits in dem Speicherregister 64 gespeichert
werden, was zur Folge hat, daß 24 Bits in dem Speicherregi
ster 64 gespeichert sind. Die 32 Bits jedes Z-Koordinatenda
tenworts, die über den Datenbus übertragen werden, werden
durch die Rahmenpufferplatine empfangen und durch die logi
sche Steuerung 72 in dem Speicherregister 66 gespeichert.
Die 24 Bits, die in dem Speicherregister 64 gespeichert
sind, werden in einem zusätzlichen Buszyklus über den Daten
bus übertragen. Wenn die 24 Bits durch die Rahmenpufferspei
cherung empfangen und durch die logische Steuerung 72 erfaßt
werden, werden die 8 Bits, die zu jedem der Z-Koordinatenda
tenworte gehören, in dem Speicherregisterabschnitt plaziert,
der dem entsprechenden Z-Koordinatendatenwort zugeordnet
ist, derart, daß jedes der 40-Bit-Z-Koordinatendatenworte in
dem Speicherregister 66 wieder zusammengesetzt ist. Dieses
Ausführungsbeispiel der Erfindung erfordert einen zusätzli
chen Buszyklus für jeden Satz von Dreieck-Grundelementdaten.
Ausführungsbeispiele der vorliegenden Erfindung wurden unter
Verwendung eines Dreieck-Grundelements als ein Beispiel be
schrieben. Es sollte offensichtlich sein, daß die vorliegen
de Erfindung in gleicher Weise für andere Graphikgrundele
mente, einschließlich Punkten, Linien, Vektoren und Polygo
nen, anwendbar ist. Für diese anderen Grundelemente kann die
Gesamtzahl von Worten, die verwendet ist, um das Grundele
ment zu beschreiben, variieren, und die Anzahl von Datenwor
ten, die die Busbreite überschreiten, kann größer oder klei
ner als drei sein. Jedoch kann das gleiche Gesamtschema der
Erfindung verwendet werden. Speziell werden Bits der Z-Koor
dinatendatenworte, die die Breite des Datenbusses überstei
gen, mit einem Wort kombiniert, das weniger Bits als die ma
ximale Kapazität des Datenbusses aufweist, so daß Z-Koordi
natenworte mit einer größeren Anzahl von Bits als die der
Datenbusbreite ohne das Hinzufügen zusätzlicher Buszyklen
übertragen werden.
Ausführungsbeispiele der vorliegenden Erfindung wurden unter
Verwendung eines Datenbusses einer Breite von 32 Bit be
schrieben. Es sollte offensichtlich sein, daß die Erfindung
auf Datenbusse mit Breiten von n Bits, wobei sich n von 32
unterscheidet, und auf Datenworte mit einer beliebigen An
zahl m von Bits (m < n) anwendbar ist. Ferner wurde die Erfin
dung für den Fall beschrieben, bei dem die Z-Koordinatenda
ten eine größere Anzahl von Bits als die Breite des Daten
busses aufweisen. Das Schema, das oben zur Übertragung von
Z-Koordinatendaten beschrieben wurde, ist in gleicher Weise
zur Übertragung von Datenworten anwendbar, die beliebige
Graphikparameter darstellen und eine größere Anzahl von Bits
als die Busbreite aufweisen.
Der hierin gezeigte und beschriebene Schaltungsaufbau ist
nur zu beispielhaften Zwecken dargelegt. Der Schaltungsauf
bau ist vorzugsweise in einer kundenspezifischen integrier
ten Schaltung großer Stückzahl unter Verwendung einer logi
schen Synthesesoftware, die kommerziell erhältlich ist, z. B.
von Synopsys, implementiert. Die logische Synthesesoftware
optimiert und übersetzt Schaltungsbeschreibungen, die in
Hochpegelsprachen, beispielsweise Veralog, geschrieben sind,
in logische Gatter. Der Schaltungsaufbau kann unter Verwen
dung eines CMOS-Prozesses, der 1-Mikrometer-FETs erzeugt,
die bei 5 Volt arbeiten, eines CMOS-Prozesses, der Bauele
mente mit gezogenen Gatelängen von 0,6 Mikrometer erzeugt,
die bei 3,3 Volt arbeiten, oder eines beliebigen anderen ge
eigneten Prozesses zum Implementieren digitaler Schaltungen
implementiert sein. Da die Eingabe in die logische Synthese
software funktionell und nicht strukturell ist, können sich
tatsächliche Schaltungen, die durch die logische Synthese
software erzeugt werden, von den hierin offenbarten unter
scheiden.
Claims (12)
1. Vorrichtung zum Übertragen von Daten zwischen Schal
tungsblöcken (36, 50A) in einem Computergraphiksystem,
das einen ersten (36) und einen zweiten (50A) Schal
tungsblock aufweist, die durch einen Datenbus (18) mit n
Bits verbunden sind, mit folgenden Merkmalen:
einer Schaltung (62) in dem ersten Schaltungsblock (36) zum sequentiellen Übertragen von Datenworten von dem er sten Schaltungsblock (36) zu dem zweiten Schaltungsblock (50A) auf dem Datenbus (18), wobei die Datenworte eine Mehrzahl langer Datenworte aufweisen, die mehr als n Bit aufweisen;
einem Register (64) in dem ersten Schaltungsblock (36) zum Speichern von Bits über n Bits der langen Datenwor te; und
einer Steuerung (70) in dem ersten Schaltungsblock (36), die auf die Übertragung der langen Datenworte anspricht, um die Bits über n Bits der langen Datenworte in das Re gister (64) zu laden, und um die Bits der langen Datenwor te, die in dem Register (64) gespeichert sind, in ein zusammengesetztes Datenwort zur Übertragung zu dem zwei ten Schaltungsblock (50A) zu kombinieren, wobei das zu sammengesetzte Datenwort Bits von zwei oder mehr der Mehrzahl von langen Datenworten aufweist.
einer Schaltung (62) in dem ersten Schaltungsblock (36) zum sequentiellen Übertragen von Datenworten von dem er sten Schaltungsblock (36) zu dem zweiten Schaltungsblock (50A) auf dem Datenbus (18), wobei die Datenworte eine Mehrzahl langer Datenworte aufweisen, die mehr als n Bit aufweisen;
einem Register (64) in dem ersten Schaltungsblock (36) zum Speichern von Bits über n Bits der langen Datenwor te; und
einer Steuerung (70) in dem ersten Schaltungsblock (36), die auf die Übertragung der langen Datenworte anspricht, um die Bits über n Bits der langen Datenworte in das Re gister (64) zu laden, und um die Bits der langen Datenwor te, die in dem Register (64) gespeichert sind, in ein zusammengesetztes Datenwort zur Übertragung zu dem zwei ten Schaltungsblock (50A) zu kombinieren, wobei das zu sammengesetzte Datenwort Bits von zwei oder mehr der Mehrzahl von langen Datenworten aufweist.
2. Vorrichtung gemäß Anspruch 1, die ferner eine Schaltung
(66) in dem zweiten Schaltungsblock (50A) zum Wiederzu
sammensetzen der langen Datenworte aufweist.
3. Vorrichtung gemäß Anspruch 1 oder 2, bei der die Daten
worte ferner ein kurzes Datenwort mit weniger als n Bits
aufweisen, und bei der die Steuerung (70) auf die Über
tragung des kurzen Datenworts anspricht, um die Bits des
langen Datenworts, die in dem Register (64) gespeichert
sind, mit dem kurzen Datenwort zu kombinieren, um das
zusammengesetzte Datenwort zur Übertragung zu dem zwei
ten Schaltungsblock (50A) zu bilden.
4. Vorrichtung gemäß einem der Ansprüche 1 bis 3, bei der
die Steuerung (70) eine Einrichtung zum Löschen einer
ausreichenden Anzahl von niederwertigen Bits der langen
Datenworte aufweist, um die Anzahl der Bits des zusam
mengesetzten Datenworts auf n Bits zu reduzieren.
5. Vorrichtung gemäß Anspruch 2, bei der n gleich 32 ist;
bei der die Mehrzahl von langen Datenworten, die mehr
als n Bits aufweisen, Z-Koordinatendatenworte sind; und
bei der das kurze Datenwort, das weniger als n Bits auf
weist, ein Befehlswort ist.
6. Vorrichtung gemäß Anspruch 5, bei der die Z-Koordinaten
datenworte 40 Bit aufweisen und das Befehlswort 8 Bit
aufweist.
7. Vorrichtung gemäß einem der Ansprüche 2 bis 6, bei der
die Schaltung in dem zweiten Schaltungsblock (50A) ein
zweites Register (66) zum Wiederzusammensetzen jedes der
langen Datenworte und eine zweite Steuerung (72) auf
weist, die auf die Übertragung der langen Datenworte an
spricht, um die langen Datenworte in das zweite Register
(66) zu laden, und die auf die Übertragung des zusammen
gesetzten Datenworts anspricht, um die Bits über n Bits
des langen Datenworts hinaus von dem zusammengesetzten
Datenwort in das zweite Register (66) zu laden, wodurch
die langen Datenworte in dem zweiten Register (66) wie
der zusammengesetzt werden.
8. Verfahren zum Übertragen von Datenworten über einen Da
tenbus (18) in einem Computergraphiksystem, das einen
ersten (36) und einen zweiten (50A) Schaltungsblock auf
weist, die durch den Datenbus (18) zum Übertragen von
Daten als Worte mit n Bits verbunden sind, mit folgenden
Schritten:
Übertragen von n Bits von jedem der Datenworte über den Datenbus (18) von dem ersten Schaltungsblock (36) zu dem zweiten Schaltungsblock (50A), wobei die Datenworte eine Mehrzahl von langen Datenworten mit mehr als n Bits auf weisen;
Speichern von Bits über n Bits der langen Datenworte in einem Register (64);
Kombinieren der Bits über n Bits der langen Datenworte, um ein zusammengesetztes Datenwort zu bilden, das Bits von zumindest zwei der langen Datenworte aufweist; und
Übertragen des zusammengesetzten Datenworts auf dem Da tenbus (18) von dem ersten Schaltungsblock (36) zu dem zweiten Schaltungsblock (50A).
Übertragen von n Bits von jedem der Datenworte über den Datenbus (18) von dem ersten Schaltungsblock (36) zu dem zweiten Schaltungsblock (50A), wobei die Datenworte eine Mehrzahl von langen Datenworten mit mehr als n Bits auf weisen;
Speichern von Bits über n Bits der langen Datenworte in einem Register (64);
Kombinieren der Bits über n Bits der langen Datenworte, um ein zusammengesetztes Datenwort zu bilden, das Bits von zumindest zwei der langen Datenworte aufweist; und
Übertragen des zusammengesetzten Datenworts auf dem Da tenbus (18) von dem ersten Schaltungsblock (36) zu dem zweiten Schaltungsblock (50A).
9. Verfahren gemäß Anspruch 8, das ferner den Schritt des
Wiederzusammensetzens der langen Datenworte in dem zwei
ten Schaltungsblock (50A) aufweist.
10. Verfahren gemäß Anspruch 8 oder 9, bei dem die Datenwor
te ferner ein kurzes Datenwort mit weniger als n Bits
aufweisen, und bei dem der Schritt des Kombinierens ei
nen Schritt des Kombinierens des kurzen Datenworts mit
den Bits über n Bits der langen Datenworte aufweist, um
das zusammengesetzte Datenwort zu bilden.
11. Verfahren gemäß einem der Ansprüche 8 bis 10, das ferner
den Schritt des Löschens einer ausreichenden Anzahl von
Bits der langen Datenworte aufweist, um die Anzahl von
Bits des zusammengesetzten Datenworts auf n Bits zu re
duzieren.
12. Verfahren gemäß Anspruch 9, bei dem der Schritt des Wie
derzusammensetzens der langen Datenworte in dem zweiten
Schaltungsblock (50A) das Laden der langen Datenworte,
die von dem ersten Schaltungsblock (36) zu dem zweiten
Schaltungsblock (50A) übertragen werden, in ein zweites
Register (66) und das Laden der Bits über n Bits der
langen Datenworte von dem zusammengesetzten Datenwort in
das zweite Register (66) aufweist, wodurch die langen
Datenworte in dem zweiten Register (66) wieder zusammen
gesetzt werden.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/480,607 US5671373A (en) | 1995-06-08 | 1995-06-08 | Data bus protocol for computer graphics system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19619464A1 DE19619464A1 (de) | 1996-12-12 |
DE19619464C2 true DE19619464C2 (de) | 1999-03-25 |
Family
ID=23908614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19619464A Expired - Fee Related DE19619464C2 (de) | 1995-06-08 | 1996-05-14 | Datenbusprotokoll für ein Computergraphiksystem |
Country Status (5)
Country | Link |
---|---|
US (1) | US5671373A (de) |
JP (1) | JP3881404B2 (de) |
DE (1) | DE19619464C2 (de) |
FR (1) | FR2735254B1 (de) |
GB (1) | GB2301997B (de) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6119190A (en) | 1996-11-06 | 2000-09-12 | Intel Corporation | Method to reduce system bus load due to USB bandwidth reclamation |
US5987568A (en) * | 1997-01-10 | 1999-11-16 | 3Com Corporation | Apparatus and method for operably connecting a processor cache and a cache controller to a digital signal processor |
US6118462A (en) * | 1997-07-01 | 2000-09-12 | Memtrax Llc | Computer system controller having internal memory and external memory control |
US6122697A (en) * | 1997-11-14 | 2000-09-19 | Lucent Technologies, Inc. | System for extending the width of a data bus |
US7051228B2 (en) * | 2001-04-05 | 2006-05-23 | Brother Kogyo Kabushiki Kaisha | Data transmission system using equalized data streams indicative of lengths of time |
US7350002B2 (en) * | 2004-12-09 | 2008-03-25 | Agere Systems, Inc. | Round-robin bus protocol |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3761697A (en) * | 1971-11-17 | 1973-09-25 | Int Standard Electric Corp | Data processor interface |
US4447878A (en) * | 1978-05-30 | 1984-05-08 | Intel Corporation | Apparatus and method for providing byte and word compatible information transfers |
US4525804A (en) * | 1982-10-22 | 1985-06-25 | Halliburton Company | Interface apparatus for host computer and graphics terminal |
US4716527A (en) * | 1984-12-10 | 1987-12-29 | Ing. C. Olivetti | Bus converter |
JPS6226561A (ja) * | 1985-07-26 | 1987-02-04 | Toshiba Corp | パ−ソナルコンピユ−タ |
GB2234093B (en) * | 1989-06-21 | 1992-01-15 | Stratum Technology Limited | Data store connection |
JPH0352166A (ja) * | 1989-07-20 | 1991-03-06 | Tokico Ltd | 磁気ディスク装置 |
US5170477A (en) * | 1989-10-31 | 1992-12-08 | Ibm Corporation | Odd boundary address aligned direct memory acess device and method |
JPH0484253A (ja) * | 1990-07-26 | 1992-03-17 | Mitsubishi Electric Corp | バス幅制御回路 |
JP2836321B2 (ja) * | 1991-11-05 | 1998-12-14 | 三菱電機株式会社 | データ処理装置 |
GB2264574B (en) * | 1992-02-21 | 1995-10-18 | Kt Technology | External data storage device and connection therefor |
US5423009A (en) * | 1993-02-18 | 1995-06-06 | Sierra Semiconductor Corporation | Dynamic sizing bus controller that allows unrestricted byte enable patterns |
JPH0744489A (ja) * | 1993-07-27 | 1995-02-14 | Fujitsu Ltd | データ転送方法 |
-
1995
- 1995-06-08 US US08/480,607 patent/US5671373A/en not_active Expired - Lifetime
-
1996
- 1996-03-05 FR FR9602739A patent/FR2735254B1/fr not_active Expired - Lifetime
- 1996-05-14 DE DE19619464A patent/DE19619464C2/de not_active Expired - Fee Related
- 1996-06-05 GB GB9611671A patent/GB2301997B/en not_active Expired - Lifetime
- 1996-06-07 JP JP14620796A patent/JP3881404B2/ja not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
SCHICKER, Pietro: Datenübertragung und Rechner- netze, 3. Aufl., Stuttgart: Teubner, 1988, S. 1-6, 16-21 * |
Also Published As
Publication number | Publication date |
---|---|
FR2735254B1 (fr) | 1998-06-12 |
JP3881404B2 (ja) | 2007-02-14 |
GB2301997A (en) | 1996-12-18 |
GB9611671D0 (en) | 1996-08-07 |
DE19619464A1 (de) | 1996-12-12 |
US5671373A (en) | 1997-09-23 |
GB2301997B (en) | 2000-02-23 |
JPH0954835A (ja) | 1997-02-25 |
FR2735254A1 (fr) | 1996-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60126967T2 (de) | Verfahren und Vorrichtung für Anti-Aliasing durch Überabtastung | |
DE69635403T2 (de) | Grafikbibliothek auf geteilten Ebenen | |
EP1175663B1 (de) | Verfahren zur rasterisierung eines graphikgrundelements | |
DE69333379T2 (de) | Vorrichtung und Verfahren zur Verarbeitung von Videosignalen | |
DE60004827T2 (de) | Segmentierung von komprimierten graphischen daten zur parallelen dekomprimierung und darstellung | |
DE10159357B4 (de) | Vorrichtung zum Ausführen einer transparenten Verarbeitung von Stand- und Bewegtbildern und Verfahren zur Durchführung | |
DE60310720T2 (de) | Verfahren und vorrichtung zur kodierung von texturinformation | |
DE69839277T2 (de) | Verfahren und anordnung zur ausführung von farbschlüsseln, transparenz und nebelfunktionen | |
DE69728002T2 (de) | Steuerprozessor für einen drei-dimensionalen Beschleuniger, der die Fähigkeit geometrischer Dekompression besitzt und Verfahren zur Bearbeitung von geometrischen Daten in diesem Beschleuniger | |
DE602004010777T2 (de) | Alphamischung auf Basis einer Nachschlagtabelle | |
DE69917799T2 (de) | Texturierungssysteme zur verwendung in drei-dimensionalen abbildungssystemen | |
DE19713654B4 (de) | Progressiv darstellbare Umrissschrift und Verfahren zum Erzeugen, Übertragen und Darstellen derselben | |
DE602004003111T2 (de) | Tiefen-basiertes Antialiasing | |
DE3636394C2 (de) | Einrichtung und Verfahren zur Speicherorganisation | |
DE19619288A1 (de) | System und Verfahren zur Dreieck-Rasterung mit in zwei Dimensionen verschachtelten Rahmenpuffern | |
DE19709220A1 (de) | System und Verfahren für eine beschleunigte Verdeckungsauslese | |
DE19827726A1 (de) | Verfahren und Vorrichtung zum Liefern von Polygonpixelunterabtastinformationen unter Verwendung einer Inkrementaleinrichtung | |
DE10101073B4 (de) | Bildaufbereitungsvorrichtung mit niedrigeren Speicherkapazitätsanforderungen und Verfahren dafür | |
DE19620263B4 (de) | Datensynchronisation zwischen einer Mehrzahl von asynchronen Datenaufbereitungen | |
EP0984397A2 (de) | Verfahren und Vorrichtung zum Eliminieren unerwünschter Stufungen an Kanten bei Bilddarstellungen im Zeilenraster | |
DE69722859T2 (de) | Formatumwandlung von Datenwörtern graphischer Bilder | |
DE4341304A1 (de) | Verfahren und Vorrichtung zur Verwendung eines Videopuffers | |
DE60033589T2 (de) | Bildverarbeitung | |
DE19619464C2 (de) | Datenbusprotokoll für ein Computergraphiksystem | |
DE19620858B4 (de) | Computergraphiksystem mit Pixel-Tiefenhinweisgebung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD CO. (N.D.GES.D.STAATES DELAWARE), |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8339 | Ceased/non-payment of the annual fee |