-
Die vorliegende Erfindung bezieht sich auf eine erweiterte
Rasterbedienung in Anzeigesystemen.
-
Die meisten der neueren Anzeigesysteme besitzen einen
Rahmenbuffer, der aus einer Mehrzahl an Speicherebenen besteht, so daß
eine Mehrzahl an Bits, die zu einem Pixel gehören, ständig
verfügbar sind, um so Informationen zur Farbe, Intensität usw.
zu speichern. Es gibt ein System zur Manipulation solcher
Informationen im Rahmenbuffer mit der Bezeichnung BitBIt. Die
Rasteroperationen, die im System BitBIt ausgeführt werden können,
wurden definiert als Bool'sche Operationen zwischen Quellen- und
Zielbereichen oder zwischen Quellenbereichen, Zielbereichen und
zusätzlichen dritten rechteckigen Bereichen, die Muster oder
Masken genannt werden. Ausführliche Informationen zum System
BitBIt sind beispielsweise enthalten in: "Smalltalk-80 The
Language and Its Implementation," A. Goldberg und D. Robson,
Addison-Wesley, 1983, Seiten 354-361. Des weiteren beschreibt
das US-Patent US-A-3,976,982 ein Bildverarbeitungssystem zur
Ausführung logischer Operationen an Bildern.
-
Grob gesprochen handelt es sich bei dem System BitBIt um eine
Funktion der Bezeichnung eines rechteckigen Bereichs in einem
Rahmenbuffer durch Bits und die Übertragung dieses Bereichs in
einen anderen Anzeigebereich. Bei der Übertragung dieses
Bereichs werden an den Inhalten, die in den Quellen- und
Zielbereichen enthalten sind, logische Operationen wie beispielsweise
AND, OR, XOR usw. ausgeführt. Aus diesem Grund wird diese Art
der Operation oft als synonym mit Rasteroperationen betrachtet.
Wenn Rasteroperationen in einem Rahmenbuffer mit einer Mehrzahl
an Speicherebenen ausgeführt werden, so ist es üblich, eine
einzelne Rasteroperationsschaltung zu verwenden, der allen
Speicherebenen gemeinsam ist oder jedem der Speicherebenen eine
separate Rasteroperationsschaltung zuzuordnen.
-
In konventionellen Rasteroperationsschaltungen wurden die
logischen Operationen beschränkt auf nur eine der Speicherebenen,
unabhängig davon, ob eine einzelne Rasteroperationsschaltung
verwenden wurde, der allen Speicherebenen gemeinsam ist, oder ob
jeder der Speicherebenen eine separate Rasteroperationsschaltung
zugeordnet wurde. Wenn man beispielsweise annimmt, daß ein
Rahmenbuffer vier Speicherebenen enthält und ein Quellen- und ein
Zielbereich durch Si und Di angegeben werden, wobei i = 0, 1, 2
und 3 gilt, so können konventionelle Rasteroperationsschaltungen
Operationen wie beispielsweise
-
Di < = f(si, Di)
-
durchführen, wobei f eine gegebene logische Funktion ist; diese
Rasteroperationsschaltungen können jedoch nicht ohne weiteres
Operationen durchführen wie beispielsweise folgende
Zwischenebenenoperationen:
-
D0 < = S0·S1·D3
-
D1 < = S2 + D2
-
D2 < = (53 + D2)·So
-
D3 < = D2
-
Um diese Schwierigkeiten zu überwinden, bietet die folgende
Erfindung ein Anzeigesystem an, das einen Rahmenbuffer mit einer
Mehrzahl an Speicherebenen enthält, des weiteren ein
Anzeigesystem zur visuellen Darstellung von Bildern, die in den
Rahmenbuffer geschrieben wurden, einen Controller zur Steuerung von
Bilddatenoperationen und erweiterte Rasteroperationsschaltungen
mit einer Internebenenoperationseinheit zur Ausführung von
Operationen, die vom Controller spezifiziert wurden, an
Bilddaten in jedem der Speicherebenen, und eine separate
Zwischenebenenoperationseinheit zur Ausführung von Operationen, die vom
Controller spezifiziert wurden, an Bilddaten in mindestens zwei
vom Controller ausgewählten Speicherebenen; die erweiterte
Rasteroperationsschaltung ist dabei derart an die Speicherebenen
angeschlossen, daß die dazugehörigen Ergebnisse zurück in die
Rasteroperationsschaltung geschrieben werden. Auf diese Weise
werden Bitmanipulationen auf Rahmenbufferebene und nicht auf
Controllerebene ausgeführt.
-
Die Internebenenoperationseinheit führt Operationen, die vom
Controller spezifiziert wurden, an Bilddaten in jedem der
Speicherebenen aus, während die Zwischenebenenoperationseinheit
Operationen an Bilddaten in mindestens zwei vom Controller
ausgewählten Speicherebenen ausführt. Es gibt keine
Einschränkungen, was das Positionsverhältnis zwischen der
Internebenenoperationseinheit und der Zwischenebenenoperationseinheit
anbelangt, obwohl die in diesem Dokument beschriebene Anordnung die
Eingabe von derjenigen Ebene erhält, die zur
Internebenenoperationslogik geht; diese wiederum geht über einen Multiplexer zur
Zwischenebenenlogik, die zurück an die Speicherebenen gekoppelt
ist.
-
Das japanische Patent Unexamined Published Application Nr. 55-79,486
beschreibt ein Anzeigesystem, das eine
Zwischenschichtoperationsschaltung verwendet, der Zwischenebenenoperationen
oder Internebenenoperationen ausführen kann. Die
Zwischenebenenoperationsschaltung, die eine Mehrzahl separater logischer
Schaltungen enthält, befindet sich zwischen einem Rahmenbuffer
oder einem Refresh-Speicher und einem TV-Monitor. Die Schaltung
kann die Ergebnisse aus den Operationen nicht zurück in den
Refresh-Speicher schreiben; daher können die oben beschriebenen
komplexen logischen Operationen nicht ausgeführt werden.
-
Die vorliegende Erfindung wird anhand von Beispielen
beschrieben, wobei auf Anordnungen verwiesen wird, die in den
nachfolgend erläuterten Zeichnungen enthalten sind:
-
Fig. 1 ist ein Blockdiagramm, das die Struktur einer Form
des Anzeigesystems in Übereinstimmung mit der vorliegenden
Erfindung darstellt;
-
Fig. 2 ist ein Blockdiagramm, das den Aufbau einer
Verbindung zwischen dem Rahmenbuffer und der erweiterten
Rasteroperationsschaltung (EROP) darstellt;
-
Fig. 3 ist ein Blockdiagramm, das eine Struktur der
Internebenenoperationseinheit darstellt;
-
Fig. 4 ist ein Blockdiagramm, das eine Struktur der
Zwischenebenenoperationseinheit darstellt;
-
Fig. 5 ist ein Schaltdiagramm, das eine
Operationsschaltung für ein Bit darstellt.
-
Fig. 1 stellt eine Struktur eines Anzeigesystems in
Übereinstimmung mit der vorliegenden Erfindung dar, das bewerkstelligt
wird mit einem Controller 10, wie beispielsweise einem
Mikroprozessor, das das gesamte System steuert, einem Rahmenbuffer 12,
der eine Mehrzahl an Speicherebenen umfaßt und in den
anzuzeigende Bilddaten geschrieben werden, einer erweiterten
Rasteroperationsschaltung (EROP), die spezifische Rasteroperationen an
den Bilddaten im Rahmenbuffer 12 ausführt, einer Anzeigeeinheit
16, die die aus dem Rahmenbuffer 12 gelesenen Bilder so
umwandelt, daß diese Bilder angezeigt werden können, und einem
Anzeigesystem 18, beispielsweise eine CRT-Anzeige, die die Bilder
visuell darstellt. Der Controller 10 schreibt die anzuzeigenden
Bilder in den Rahmenbuffer 12 und überträgt die
Operationsbefehle über einen Bus 20 an die erweiterte
Rasteroperationsschaltung 14. Sobald die erweiterte Rasteroperationsschaltung 14 die
Operationsbefehle erhält, greift dieser über einen Bus 22 auf
den Rahmenbuffer 12 zu und führt die spezifischen
Rasteroperationen aus. Die anzuzeigenden Bilder im Rahmenbuffer 12 werden
unter der Steuerung des Controllers 10 in die Anzeigeeinheit 16
eingelesen, um die erforderliche Verarbeitung, wie
beispielsweise eine analog-digital-Umwandlung, durchzuführen;
anschließend werden diese Bilder vom Anzeigesystem 18 angezeigt.
-
Da es sich beim Controller 10, der Anzeigeeinheit 16 und dem
Anzeigesystem 18 um bekannte Komponenten handelt, werden sie an
dieser Stelle nicht erläutert.
-
Wie in Fig. 1 dargestellt ist, untergliedert sich die
erweiterte Rasteroperationsschaltung 14 in eine
Internebenenoperationseinheit 14A und eine
Zwischenebenenoperationseinheit 14B. Die Internebenenoperationseinheit 14A, die,
für sich genommen, den konventionellen
Rasteroperationsschaltungen entspricht, führt die Operationen in jedem einzelnen der
Speicherebenen aus, die im Rahmenbuffer 12 enthalten sind. Die
Zwischenebenenoperationseinheit 14B ist eine
Hardware-Komponente, die in keiner der früher verwendeten Anordnungen
verwendet wird, führt diejenigen Operationen aus, bei denen mehr als
eine Speicherebene vorhanden ist. Obwohl in der vorliegenden
Anordnung der Rahmenbuffer 12 vier Speicherebenen aufweist, ist
die vorliegende Erfindung nicht darauf beschränkt, sondern kann
auf ähnliche Weise auch für andere Rahmenbuffer verwendet
werden, die eine unterschiedliche Anzahl an Speicherebenen
aufweisen.
-
Der Rahmenbuffer 12 und die erweiterte Rasteroperationsschaltung
14 lassen sich in der in Fig. 2 dargestellten Weise miteinander
verbinden. In dem in Fig. 2 dargestellten Beispiel umfaßt die
Internebenenoperationseinheit 14A acht
Rasteroperationsschaltungen ROP0-ROP7. Die erste Gruppe der Rasteroperationsschaltungen
ROP0-ROP3 führt die spezifizierten Operationen an den Daten an
den Quellenbereichen in den Ebenen 0-3 und die vorbestimmten
Musterdaten B0-B3 aus, so daß die jeweiligen Ebenen sich
entsprechen.
-
Die zweite Gruppe der Rasteroperationsschaltungen ROP4-ROP7
führt die spezifizierten Operationen an den
Operationsergebnissen C0-C3 der ersten Gruppe und an den Daten D0-D3 aus den
Zielbereichen in den Ebenen 0-3 aus, so daß die jeweiligen Ebenen
sich entsprechen. Die Operationsergebnisse E0-E3 der zweiten
Gruppe werden an die Zwischenebenenoperationseinheit 14B
übertragen; die Ausgaben F0-F3 der Internebenenoperationseinheit
14B werden in die endgültigen Zielbereiche oder Anzeigebereiche
in den Ebenen 0-3 geschrieben.
-
Die Operation der in Fig. 2 dargestellten Schaltung läßt sich
folgendermaßen ausdrücken:
-
Ci < = fj (Ai, Bi)
-
Ei < = fk (Ci, Di)
-
Fi < = fe < E0, E1, E2, E3)
-
In den obigen Ausdrücken bezeichnet i die Zahlen der
Speicherebenen; fj, fk und fe bezeichnen die spezifischen logischen
Funktionen, von denen alle durch den Controller 10 spezifiziert
werden.
-
In dem in Fig. 2 dargestellten Beispiel kann, obwohl die
Internebenenoperationseinheit 14A sequentiell gekoppelt ist an
die Zwischenebenenoperationseinheit 14B, das Positionsverhältnis
vertauscht werden. In diesem Fall erhielte die
Zwischenebenenoperationseinheit 14B als Eingabe die Ebenendaten A0-A3 aus den
Quellenbereichen; die Operationsergebnisse F0-F3 würden zusammen
mit den Musterdaten B0-B3 in die erste Gruppe der
Rasteroperationsschaltungen ROP0-ROP3 eingegeben. Die Musterdaten B0-B3
stellen zusammenhängende Muster wie beispielsweise
Schachbrettmuster dar und werden entweder direkt vom Controller 10
geliefert oder wurden in einem speziell hierfür vorgesehenen
Musterspeicher (nicht dargestellt) zusammen mit anderen Mustern
gespeichert. Die Musterdaten bestehen ebenfalls aus vier Bits
pro Pixel.
-
Die Internebenenoperationseinheit 14A enthält vier
Rasteroperationsschaltungen in jeder Gruppe. Jede der Gruppen kann jedoch
auch durch eine einzelne Rasteroperationsschaltung ersetzt
werden, so daß die Daten in den verschiedenen Ebenen sequentiell
dorthin übertragen, aber jeweils nur von einer Ebene aus
ausgeführt werden können. Des weiteren kann die
Internebenenoperationseinheit selbst durch eine einzelne
Operationsschaltung ersetzt werden.
-
Fig. 3 veranschaulicht ein Beispiel der Struktur der
Internebenenoperationseinheit 14A. Im dargestellten Beispiel werden die
erste und die zweite Gruppe der Rasteroperationsschaltungen in
Blöcken als "#1 ROP" beziehungsweise "#2 ROP" dargestellt. Wie
bereits erwähnt wurde, kann jede Gruppe durch eine einzelne
Operationsschaltung ersetzt werden. Die Bilddaten, die aus vier
Bits pro Pixel bestehen und die aus dem Rahmenbuffer 12 (Fig.
1) gelesen werden, werden über den Bus 22 in einen
Bufferregister 30 geladen. In der vorliegenden Anordnung wird davon
ausgegangen, daß von jedem der dazugehörenden gespeicherten Bereiche
in den vier Speicherebenen des Rahmenbuffers 12 ein Byte der
Bilddaten gelesen wird. Daher ist für den Bufferregister 30 eine
Mindestkapazität von 4 Bytes (32 Bits) erforderlich. Die
Ausgaben des Bufferregisters 30 werden mit den Eingaben der ersten
und zweiten Gruppe der Rasteroperationsschaltungen 32 (#1 ROP)
und 34 (#2 ROP) verbunden. Die Daten A0-A3 aus den
Quellenbereichen werden an die erste Gruppe 32 geleitet, während die Daten
D0-D3 aus den Zielbereichen an die zweite Gruppe 34 geleitet
werden.
-
Ein Musterregister 36 empfängt die Musterdaten, die aus vier
Bits pro Pixel bestehen, vom Controller 10 oder einem
zugewiesenen Musterspeicher (nicht dargestellt) und liefert die
Musterdaten B0-B3 zu den anderen Eingaben der ersten Gruppe der
Rasteroperationsschaltungen 32. Die Ausgaben der ersten Gruppe der
Rasteroperationsschaltungen 32 werden mit den anderen Eingaben
der zweiten Gruppe der Rasteroperationsschaltungen 34 verbunden,
um dort die Operationsergebnisse C0-C3 liefern zu können. Die
zweite Gruppe der Rasteroperationsschaltungen 34 geben die
endgültigen Operationsergebnisse E0-E3 der
Internebenenoperationseinheit 14A aus und übertragen sie an die
Zwischenebenenoperationseinheit 14B.
-
Die Befehle, die die in der ersten und der zweiten Gruppe sowie
in den entsprechenden Rasteroperationsschaltungen 32 und 34 in
der Zwischenebenenoperationseinheit 14B, die an späterer Stelle
beschrieben wird, auszuführenden Operationen spezifizieren,
werden vom Controller 10 über den Bus 20 an eine
Befehlsschaltung 38 geleitet. Jede der Rasteroperationsschaltungen führt die
durch operationsspezifizierende Signale spezifizierten
Operationen aus; bei diesen Signalen handelt es sich um sogenannte OP
Codes aus der Befehlsschaltung 40. In der vorliegenden Anordnung
können die OP-Codes, von denen jeder aus vier Bits besteht, 16
Operationsarten spezifizieren (siehe nachfolgende Tabelle):
-
OP-Code Operation
-
0000 Z < = '00' (hexadezimal)
-
0001 Z < = X·Y
-
0010 Z < = X·Y
-
0011 Z < = X
-
0100 Z < = X·Y
-
0101 Z < = Y
-
0110 Z < = X 0 Y
-
0111 Z < = X + Y
-
1000 Z < = X·Y
-
1001 Z < = X 0 Y
-
1010 Z < = Y
-
1011 Z < = X + Y
-
1100 Z < = X
-
1101 Z < = X + Y
-
1110 Z < = X + Y
-
1111 Z < = 'FF' (hexadezimal)
-
In der obigen Tabelle bezeichnen X und Y die Eingaben für jede
Operationsschaltung (X bezeichnet die linke Eingabe und Y
bezeichnet die rechte Eingabe), und Z bezeichnet die Ausgabe.
Jede der Eingaben und Ausgaben besteht aus einem Byte, und die
Operationen werden so ausgeführt, daß sich die dazugehörigen
Bits entsprechen. Es wäre vorteilhaft, die Bedeutungen der OP-
Codes, die in Tabelle 1 aufgeführt sind, für alle Operations-
Schaltungen gleichzusetzen. An die dazugehörigen
Operationsschaltungen in der Zwischenebenenoperationsschaltung 14B
überträgt die Befehlsschaltung 38 Ebenenauswahlsignale zusammen
mit den OP-Codes. Es wird darauf hingewiesen, daß die Anzahl und
die Art der Operationen, die in der vorliegenden Erfindung
ausgeführt werden können, nicht auf die in Tabelle 1
aufgeführten beschränkt sind.
-
Fig. 4 veranschaulicht eine Struktur der
Zwischenebenenoperationseinheit 14B in Übereinstimmung mit der vorliegenden
Erfindung. Die Zwischenebenenoperationseinheit 14B besteht aus
vier Operationsschaltungen 40 (ROP8), 42 (ROP9), 44 (ROP10) und
46 (ROP11), von denen jede an jede der Ebenen geliefert wird,
sowie aus vier acht-bit-Verzögerungsregistern 48, 50, 52 und 54,
von denen jedes die Ausgabe jede der Operationsschaltungen mit
der Verzögerung eines Zyklus zurück an eine der Eingaben hiervon
leitet. Eine der Eingaben jeder der Operationsschaltungen wird
mit der Ausgabe des dazugehörigen Verzögerungsregisters (D)
verbunden, während die andere Eingabe mit der Ausgabe der zweiten
Gruppe der Rasteroperationsschaltungen 38 verbunden wird. Die
von den entsprechenden Operationsschaltungen 40-46
auszuführenden Operationen werden mit den OP-Codes aus der Befehlsschaltung
38 spezifiziert. Zur Einleitung einer Operation der
Zwischenebenenoperationseinheit 14B liefert die Befehlsschaltung 38,
zusammen mit den OP-Codes, die Ebenenauswahlsignale, die die
Daten der in den dazugehörigen Operationsschaltungen 40-46 zu
manipulierenden Ebenen spezifizieren. Jedes der
Ebenenauswahlsignale besteht aus vier Bits, wobei jedes Bit jeder der
verschiedenen Ebenen entspricht. Jede der Operationsschaltungen
40-46 empfängt als Eingabe die Daten der Ebene, die "1" Bit
entspricht. Die Auswahl der Ebenendaten kann beispielsweise
durch einen Multiplexer (nicht dargestellt) erfolgen.
-
Jede der Operationsschaltungen 40-46 kann dieselbe sein wie jede
der in Fig. 2 dargestellten Rasteroperationsschaltungen, jedoch
mit Ausnahme der Ebenenauswahl, und kann mit einer Gemeinzweck-
Operationsschaltung oder einer programmierbaren Feldlogik (PAL)
versehen sein. Fig. 5 veranschaulicht hierfür ein Beispiel. Die
in Fig. 5 dargestellte Schaltung führt die Operation des
"i"ten Bits (i = 0, 1, 2, . . ...., und 7) aus; daher sind für jede
der Rasteroperationsschaltungen ROP0-ROP11 diese acht
Schaltungen erforderlich. Wie aus der Figur ersichtlich ist, läßt sich
die logische Funktion der Schaltung folgendermaßen ausdrücken:
-
Zi < = Xi·Yi·OP0 + ·Yi·OP1 + ·Yi·OP2 +
· ·OP3
-
Im obigen Ausdruck bezeichnen Xi, Yi und Zi die "i"-ten Bits von
X, Y bzw. Z in Tabelle 1; OP0-OP3 bezeichnen die vier Bits eines
OP-Codes, der von der Steuerschaltung 38 zu liefern ist. Im
vorliegenden Beispiel ist OP0 das ganz rechts liegende Bit des
OP-Codes und OP3 das ganz links liegende Bit dieses Codes. Daher
werden, abhängig davon, ob jede der Rasteroperationsschaltungen
OP0 bis OP3 0 oder 1 ist, die in Tabelle 1 aufgeführten
Operationen aufgeführt. Die Einzelheiten der Operation der in Fig. 5
dargestellten Schaltung gehen aus dem Diagramm hervor und werden
nicht näher erläutert.
Beispiel 1: Extraktion einer spezifizierten Farbe
-
In einem Farbanzeigesystem ist die Manipulation der Bereiche
einer spezifischen Farbe oder der Bereiche der anderen Farben
auf einer Farbbildfläche eine grundlegende Funktion. Auf dem
bisherigen Stand der Technik wurde, wie dies beispielsweise in
EP-A-xxxxxxxx, 8410779, BC9-83-008 beschrieben wird, der
Vergleich von Farben mit einem eigens hierfür vorgesehenen
Komparator durchgeführt. Im Zusammenhang mit den hier
beschriebenen Anordnungen kann dies jedoch auf einfache Weise mit
Gemeinzweck-Operationsschaltungen realisiert werden.
-
Es wird also angenommen, daß die Bitkonfiguration eines Pixels
mit einer Farbe, die aus dem im Rahmenbuffer 12 enthaltenen Bild
extrahiert werden soll, gleich P0 = 1, P1 = 0, P2 = 1 und P3 = 1
ist. P0-P3 bezeichnen die vier Speicherebenen, die den
Rahmenbuffer 12 bilden. Des weiteren wird angenommen, daß die die
Bereiche der zu extrahierenden Farbe darstellenden Daten in die
Ebene 0 (P0) geschrieben werden sollen.
-
Grundsätzlich ausgedrückt wird die Extraktion einer Farbe durch
Inversion der Bilddaten der Ebenen erreicht, die die "0"-Bits
(P1 im obigen Beispiel) unter den vier Bits des Pixels mit der
spezifizierten Farbe aufweisen; anschließend werden sämtliche
Ebenen einer AND-Operation unterzogen. Im vorliegenden Beispiel
werden die endgültigen Ergebnisse der AND-Operation in die Ebene
0 (P0) geschrieben. Für die Internebenenoperationseinheit 14A
überträgt der Controller 10 an die Befehlsschaltung 38
diejenigen Befehle, die in der Operationsschaltung ROP1 (oder ROP5),
die der Ebene 1 (P1) entspricht, die Durchführung der folgenden
Operation
-
Z =
-
und die in den anderen Operationsschaltungen die Durchführung
der folgenden Operation
-
Z = X
-
veranlassen. Als Reaktion auf diese Befehle überträgt die
Befehlsschaltung 38 den OP-Code "1100" an ROP1 (oder ROP5) und
überträgt den OP-Code "0011" an ROP0, ROP2, ROP3, ROP4, ROP5
(oder ROP1), ROP6 und ROP7. Auf diese Weise erhält man bei den
Ausgaben der Internebenenoperationseinheit 14A die
Operationsergebnisse von E0 = A0, E1 = A1, E2 = A2 und E3 = A3. Für den
Fall, daß die erste und die zweite Gruppe der
Rasteroperationsschaltungen 32 und 34 eine Einzeloperationsschaltung enthalten,
liefert die Befehlsschaltung 38 die oben genannten OP-Codes in
einer geeigneten Sequenz.
-
Für die Zwischenebenenoperationseinheit 14B überträgt der
Controller 10 an die Befehlsschaltung 38 diejenigen Befehle, die
in der Operationsschaltung ROP8, die der Ebene 0 (P0)
entspricht, die Durchführung der in der nachfolgenden Tabelle
aufgeführten Operationen und Ebenenauswahlen veranlassen sowie
die Befehle, die die anderen Operationsschaltungen ROP9-ROP11
zur Durchführung der Operation Z = "00" veranlassen:
Zyklus OP-Code Ebenenauswahl
-
Dadurch wird angezeigt, daß die Operationen eines Bytes in vier
aufeinanderfolgenden Zyklen durchgeführt werden. Die Operationen
lassen sich folgendermaßen ausdrücken (es finden die in Fig. 2
verwendeten Symbole Anwendung):
-
F0 < = E0·E1·E2·E3
-
Wenn die zweidimensionale Größe des Bildes einschließlich der
Bereiche der spezifizierten Farbe n Bytes entspricht, dann ist
es erforderlich, die Operationen der soeben dargestellten Zyklen
n mal zu wiederholen.
-
Da die Rasteroperationsschaltungen ROP9-ROP11 nur die Bytes
aller Nullen aller Zyklen ausgeben, werden die Bilddaten, die
lediglich die Bereiche der spezifizierten Farbe enthalten,
schließlich in den endgültigen Zielbereich oder Anzeigebereich
in der Ebene 0 (P0) geschrieben. In diesem Fall wird die
Bitkonfiguration jedes Pixels zu "1000" und unterscheidet sich somit
vom ursprünglichen Wert "1011". Auf diese Weise wurden im
vorliegenden Beispiel die Bereiche der spezifizierten Farbe
durch Konversion der spezifizierten Farbe in eine andere Farbe
extrahiert. Eine Extraktion ohne eine solche Konversion kann,
wenn dies gewünscht wird, durchgeführt werden, indem auch ROP10
und ROP11 zur Durchführung derselben Operationen veranlaßt
werden.
Beispiel 2: Bildsynthese
-
Im Fall von Monochrombildern ist eine Synthese von mehr als zwei
unter den in den vier Ebenen enthaltenen verschiedenen Bildern
nur durch Verwendung von OR-Operationen möglich. Sollen
beispielsweise die Bilder in der Ebene 0 und in der Ebene 1
synthetisiert und in Ebene 3 geschrieben werden, so wird
veranlaßt, daß ROP0, ROP1, ROP4 und ROP5 die Operation Z=X ausführen,
darüberhinaus wird veranlaßt, daß ROP11 die Ebene 0 auswählt und
die Ebene 1 die folgenden Operationen auswählt:
-
Z < = X und
-
Z < = X + Y.
-
Da nur solche OR-Operationen die Erzeugung verschiedener Farben
in überlappenden Anteilen bewirken können, wäre es im Fall von
Farbbildern erforderlich, durch Zuteilung von Prioritäten solche
Bilder zu synthetisieren. Das heißt, ein Farbbild auf einer
niedrigeren Prioritätsstufe wird lediglich im Hintergrundbereich
eines anderen Farbbilds mit einer höheren Priorität
synthetisiert. Da der Hintergrundbereich unter Verwendung der in
Beispiel 1 aufgeführten Methode extrahiert werden kann, werden
der Hintergrundbereich und das Farbbild mit der niedrigeren
Priorität einer AND-Operation unterzogen; die Ergebnisse und das
Farbbild mit der höheren Priorität werden einer OR-Operation
unterzogen; hierdurch wird ein synthetisiertes Bild erzielt.
-
Es wird beispielsweise angenommen, daß ein Farbbild mit vier
Farben (zwei Bits pro Pixel) und mit höheren Prioritäten in die
Ebene 0 und in die Ebene 1 geschrieben wurden, und daß ein
weiteres Farbbild mit vier Farben und mit niedrigeren
Prioritäten in die Ebene 2 und in die Ebene 3 geschrieben wurden. Wenn
die Bitkonfiguration eines Pixels im Hintergrundbereich "11"
lautet und in die Zielbereiche der Ebene 0 und der Ebene 1 ein
synthetisiertes Bild hineingeschrieben werden soll, so wird die
Operationsschaltung ROP10, die der Ebene 2 in der
Zwischenebenenoperationseinheit 14B entspricht, zur Durchführung folgender
Operation veranlaßt
-
F2 < = E0·E1·E2;
-
die Operationsschaltung ROP11, die der Ebene 3 entspricht, wird
zur Durchführung folgender Operation veranlaßt:
-
F3 < = E0·E1·E3
-
Diese Operation sind den in der vorhergehenden Tabelle
aufgeführten ähnlich. Da jedoch in diesem Fall drei Ebenen einer
AND-Operation unterzogen werden, sind für jedes Byte nur drei
Zyklen erforderlich. Die Operationsergebnisse werden in die
Ebene 2 bzw. in die Ebene 3 hineingeschrieben. Als nächster
Schritt wird die Operationsschaltung ROP8, die der Ebene 0
entspricht, zur Durchführung der folgenden Operation veranlaßt:
-
F0 < = E0 + E2;
-
die Operationsschaltung ROP, die der Ebene 1 entspricht, wird
zur Durchführung folgender Operation veranlaßt:
-
F1 < = E1 + E3
-
Dadurch wird ein synthetisiertes Farbbild erzielt. Jede der
Operationsschaltungen ROP0-ROP7 in der
Internebenenoperationseinheit 14A wird derart spezifiziert, daß
nur folgende Operation ausgeführt wird:
-
Z < = X.
-
Neben den hier beschriebenen Anordnungen sind noch andere
Anwendungen möglich.