DE3486472T2 - Graphisches Musterverarbeitungsgerät und Verfahren - Google Patents
Graphisches Musterverarbeitungsgerät und VerfahrenInfo
- Publication number
- DE3486472T2 DE3486472T2 DE3486472T DE3486472T DE3486472T2 DE 3486472 T2 DE3486472 T2 DE 3486472T2 DE 3486472 T DE3486472 T DE 3486472T DE 3486472 T DE3486472 T DE 3486472T DE 3486472 T2 DE3486472 T2 DE 3486472T2
- Authority
- DE
- Germany
- Prior art keywords
- screen
- pixel
- address
- bits
- data
- 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 - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 31
- 230000015654 memory Effects 0.000 claims description 141
- 238000012545 processing Methods 0.000 claims description 86
- 238000012546 transfer Methods 0.000 claims description 25
- 239000000872 buffer Substances 0.000 claims description 19
- 230000005540 biological transmission Effects 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 7
- 230000004044 response Effects 0.000 claims description 3
- 230000001419 dependent effect Effects 0.000 claims description 2
- 238000003672 processing method Methods 0.000 claims 3
- 230000006870 function Effects 0.000 description 9
- 239000003086 colorant Substances 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 230000000873 masking effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- LFVLUOAHQIVABZ-UHFFFAOYSA-N Iodofenphos Chemical compound COP(=S)(OC)OC1=CC(Cl)=C(I)C=C1Cl LFVLUOAHQIVABZ-UHFFFAOYSA-N 0.000 description 1
- 241001105097 Trox Species 0.000 description 1
- 150000001768 cations Chemical class 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
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/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K1/00—Methods or arrangements for marking the record carrier in digital fashion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- 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/02—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
- G09G5/024—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed using colour registers, e.g. to control background, foreground, surface filling
-
- 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/20—Function-generator circuits, e.g. circle generators line or curve smoothing circuits
-
- 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
-
- 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
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- 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
- G09G5/399—Control of the bit-mapped memory using two or more bit-mapped memories, the operations of which are switched in time, e.g. ping-pong buffers
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2360/00—Aspects of the architecture of display systems
- G09G2360/12—Frame memory handling
- G09G2360/127—Updating a frame memory using a transfer of data from a source area to a destination area
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Controls And Circuits For Display Device (AREA)
- Image Generation (AREA)
- Digital Computer Display Output (AREA)
- Image Processing (AREA)
Description
- Die Erfindung betrifft eine mit hoher Geschwindigkeit arbeitende Bildverarbeitungsvorrichtung mit Mikroprozessoren zum Eingeben und Ausgeben von Daten, zum Sammeln von Daten und zum Anzeigen eines Bildmusters auf einer durchgerasterten Kathodenstrahlröhre-Anzeigeeinrichtung, und die eine Zeichnungsfunktion aufweist, die durch ein in einem Mikroprogrammspeicher gespeichertes Mikroprogramm gesteuert wird.
- Die meisten bekannten Kathodenstrahlröhre-Steuerungseinrichtungen steuern nur die Bildschirmfunktion und verfügen über keine Zeichnungsfunktion (siehe z. B. das US-Patent 4,149,264). Eine Bildverarbeitungsvorrichtung, die eine Bildverarbeitungsfunktion mittels einer integrierten Schaltung erzielt, ist bekannt, jedoch verarbeitet sie nur monochromatische Bildmusterdaten, die jedes Pixel durch ein Bit repräsentieren. Wenn jedoch das Informationsverarbeitungssystem immer komplexer wird, ist häufig eine Bildverarbeitung für ein Bild mit mehreren Farben oder mehreren Farbtönen erforderlich, und nun stellt die Verarbeitungsgeschwindigkeit für eine derartige Verarbeitung ein Problem dar. Wenn z. B. der Speicherinhalt bei einer Verarbeitung für mehrere Farben (n Farben) oder mehrere Farbtöne (n Farbtöne) zu aktualisieren ist, wird dieselbe Bildverarbeitung n mal wiederholt, oder wenn ein Pixel mit einem einzelnen Bit anzuzeigen ist, ist die Bildverarbeitung n mal zu wiederholen. Demgemäß ist die Verarbeitungszeit n mal so lang wie die zur binären Bildverarbeitung. Für jeden von n Bildschirmspeichern kann eine Verarbeitungsvorrichtung bereitgestellt werden, jedoch führt dies zu einer Zunahme der Abmessungen und Kompliziertheit und erhöht die Belastung einer zentralen Verarbeitungseinheit.
- Nun sei ein Zeichnungsprozess angenommen, bei dem eine Linie in einem XY-Koordinatenraum mit einem Ursprung zwischen zwei Punkten PS (XX, YS) und PE (XE, YE) zu ziehen ist. Die Steigung der Linie wird auf Grundlage der Koordinaten der zwei Punkte berechnet, und es werden Koordinaten von Punkten auf der Linie berechnet. So werden Bildmusterdaten für jeden Punkt bereitgestellt und abgespeichert. Der obige Prozess wird für alle Punkte auf der Linie sequentiell ausgeführt. Da die berechneten Koordinaten verschiedene Informationen von den Speicheradressen des Bildschirmspeichers, in die die Bildmusterdaten eingeschrieben sind, enthalten, müssen die berechneten Koordinaten (logische Adressen) in Bildschirmspeicher-Adressen (physikalische Adressen) übersetzt werden. Da jedes Wort im Bildschirmspeicher einen oder mehrere Pixeldatenwerte enthält, wird die logische Adresse in zwei physikalische Adressen übersetzt, erstens in die Bildschirmspeicher-Adresse und zweitens in eine Bitadresse, die eine Pixelposition repräsentiert.
- Um die logische Adresse in eine physikalische Adresse zu übersetzen, müssen die physikalische Adresse des Ursprungs und die Horizontalgröße des Bildschirmspeichers bekannt sein. Da die logische Adresse (X, Y) eine Relativposition bezüglich des Ursprungs repräsentiert, kann die physikalische Adresse dadurch berechnet werden, dass zur physikalischen Adresse des Ursprungs das Produkt aus der Horizontalgröße des Bildschirmspeichers multipliziert mit Y in vertikaler Richtung (Y) addiert wird, oder davon subtrahiert wird, während in horizontaler Richtung (X) der Quotient der logischen Adresse X geteilt durch die Anzahl von Pixeln in einem Wort addiert oder subtrahiert wird. Der beim Teilen der logische Adresse X durch die Anzahl von Pixeln in einem Wort erzeugte Rest wird als Bitadresse verwendet. Auf diese Weise wird die physikalische Adresse zum Verarbeiten der Bildmusterdaten erhalten.
- Jedoch erfolgte die Berechnung der logischen Adresse und die Übersetzung in die physikalische Adresse in der Vergangenheit durch ein Softwareprogramm. Demgemäß wird keine Verarbeitung mit hoher Geschwindigkeit erzielt, wenn ein Universalmikroprozessor verwendet wird, der zum Speichern eines Pixeldatenwerts in den Bildschirmspeicher einige bis einige 10 Mikrosekunden benötigt.
- Bei einer Bildmuster-Verarbeitungsvorrichtung, die graphische Bildschirmdaten erzeugt, werden die graphischen Bildschirmdatenan den Bildschirmspeicher übertragen. Nun stellt die beteiligte Verarbeitungsgeschwindigkeit ein Problem dar.
- Es sei angenommen, dass ein Pixeldatenwert an eine andere Pixelposition zu übertragen ist. Im Allgemeinen speichert jedes Wort des Speichers Daten für mehrere horizontal zusammenhängende Pixel. Demgemäß ist, wenn ein Pixeldatenwert an eine andere Pixelposition zu übertragen ist, eine Verschiebeoperation zum Ausrichten der Bitpositionen oder eine Auswähloperation für einen Quellenpixel-Datenwert erforderlich, um die Bitpositionen zur Operation auszurichten. In der Vergangenheit erfolgte die Übertragung durch Software. Wenn z. B. Daten in einem rechteckigen Bereich zu übertragen sind, sind zusätzliche Schritte zum Verstellen von Zeigern zum Spezifizieren von Quellpixeln und Ziel- oder Bestimmungspixeln sowie ein Zählen der Anzahl von Übertragungsvorgängen erforderlich. Im Ergebnis sind, wenn ein Universalmikroprozessor verwendet wird, einige bis einige 10 Mikrosekunden zum Übertragen eines Pixeldatenwerts erforderlich, und demgemäß wird keine hohe Verarbeitungsgeschwindigkeit erzielt.
- Eine Bildmuster-Verarbeitungsvorrichtung mit den Merkmalen des Oberbegriffs von Anspruch 1 ist sowohl aus Hewlett- Packard Journal, Vol. 34, No. 9, Sept. 1983, Amstelveen, NL, Seiten 15-18 als auch aus EP-A-0 085 480 bekannt.
- Eine andere einschlägige bekannte Technik zu diesem Typ von Bildverarbeitungsvorrichtung ist im britischen Patent GB 2,087,69 GA offenbart.
- Ferner ist im Dokument Electronique Application No. 19, Aug./Sept. 1981, Seiten 27-31 ein Graphikkoprozessor beschrieben, der elementare Bildpunkt- und Speicherauffrischoperationen übernimmt.
- Es ist eine Aufgabe der Erfindung, eine Bildmuster-Verarbeitungsvorrichtung und ein Verfahren für eine solche zu schaffen, die eine Hochgeschwindigkeitsverarbeitung einer Speicheraktualisierung bei Musterzeichnungsvorgängen und bei der Pixeldatenübertragung betreffend Daten für mehrere Farben, mehrere Farbtöne ermöglichen.
- Diese Aufgabe ist durch eine Vorrichtung gemäß Anspruch 1 und ein Verfahren gemäß Anspruch 19 gelöst. Bevorzugte Ausführungsformen sind in den abhängigen Ansprüchen offenbart.
- Gemäß der Erfindung umfasst die Bildmuster-Verarbeitungsvorrichtung eine Einrichtung zum sequentiellen Berechnen von Pixeladressen, die jeweils Information zum Spezifizieren einer Bildschirmspeicher-Adresse und einer Pixelposition innerhalb eines Bildschirmdaten-Worts an der Adresse enthalten, was auf Grundlage von Bildschirm-Steuerungsdaten erfolgt, eine Einrichtung zum Ausführen logischer Operationen an Zeichnungsdaten für die spezifizierten Pixelbits für die berechnete Adresse eines Pixelworts auf Grundlage von Pixelpositionsinformation, und eine Einrichtung zum Einschreiben eines einer logischen Operation unterzogenen Datenwerts in die Anzeigespeicheradresse.
- Gemäß einer bevorzugten Ausführungsform umfasst die Bildschirmmuster-Verarbeitungsvorrichtung ferner eine Einrichtung für logische Adressenoperationen zum Erzeugen einer logischen Adresse, die die Position eines Musters bezüglich eines Ursprungs auf Grundlage eines Bildschirm-Steuerungsdatenwerts repräsentiert, und eine Einrichtung zum Berechnen einer physikalischen Adresse in einem Bildschirmspeicher auf Grundlage der logischen Adresse.
- Gemäß einer weiteren bevorzugten Ausführungsform umfasst die Bildmuster-Verarbeitungsvorrichtung eine Einrichtung zum Berechnen eines Verschiebewerts auf Grundlage von Information zum Spezifizieren einer Pixelposition in einem Quellwort sowie Information zum Spezifizieren einer Pixelposition in einem Zielwort, wenn ein Bildschirm-Datenwert in einen Graphikmuster-Bildschirmspeicher zu übertragen ist, und eine Verschiebeeinrichtung zum mehrfachen Verschieben mehrerer Bits.
- Gemäß einer anderen bevorzugten Ausführungsform umfasst die Bildschirmmuster-Verarbeitungsvorrichtung ein Befehlsregister zum Einspeichern eines Befehlscodes, wie er in einem als Bildschirm-Steuerungsdatenwert gelieferten Befehl enthalten ist, einen Decodierer zum Decodieren eines Teils des im Befehlsregister abgespeicherten Befehlscodes, um den Typ der Operation zu erzeugen, wie sie für eine aktuelle Koordinate auszuführen ist, ein Coderegister zum Speichern des Ausgangswerts des Decodierers, eine Einrichtung zum Berechnen von Pixelkoordinaten in einem Graphikmuster-Bildschirmspeicher auf Grundlage eines Steuerungssignals sowie eine Einrichtung zum Spezifizieren einer Position im Graphikmuster- Bildschirmspeicher auf Grundlage der Koordinate.
- Die Erfindung ist aus der folgenden detaillierten Beschrei bung in Verbindung mit den beigefügten Zeichnungen ersichtlich.
- Fig. 1 ist ein Blockdiagramm zur Erfindung;
- Fig. 2 ist ein Blockdiagramm einer erfindungsgemäßen Bildmuster-Verarbeitungsvorrichtung;
- Fig. 3 zeigt die Konfiguration eines Bildschirmspeichers für eine Anzeige mit vier Bits pro Pixel.
- Fig. 4 zeigt eine spezielle Schaltung einer Logikadresse-Berechnungseinheit in Fig. 2;
- Fig. 5 zeigt eine spezielle Schaltung einer Physikalische- Adresse-Berechnungseinheit in Fig. 2;
- Fig. 6 zeigt eine spezielle Schaltung einer Farbdaten-Verarbeitungseinheit in Fig. 2;
- Fig. 7 veranschaulicht Funktionen von Feldern einer Mikroanweisung;
- Fig. 8a-8e zeigen Bitkonfigurationen in einem Bildschirmspeicher in jeweiligen Modi, und Fig. 8f zeigt die Konfiguration eines Anweisungs-Steuerungsregisters;
- Fig. 9a-9e zeigen Pixeladressen entsprechend zu den Fig. 8a-8e;
- Fig. 10 zeigt die räumliche Anordnung des Bildschirmspeichers in einem 4 Bit/Pixel-Modus;
- Fig. 11 zeigt ein Flussdiagramm eines Zeichnungsvorgangs für ein Pixel (4 Bits/Pixel);
- Fig. 12 zeigt eine Konfiguration zum Übersetzen einer logischen Adresse in einer physikalischen Adresse, wie aus den Fig. 4 und 5 entnommen, wobei bestimmte Funktionen hinzugefügt sind;
- Fig. 13 zeigt die Beziehung zwischen einer physikalischen Adresse, dem Raum logischer Adressen und einem Bildschirm in einem Modus (4 Bits/Pixel);
- Fig. 14a-14c veranschaulichen eine Operation betreffend Fig. 13;
- Fig. 15 zeigt einen Bitmodus und eine entsprechende Bitadresse, die eine Pixelposition in einem Wort kennzeichnet;
- Fig. 16a-16d veranschaulichen eine Beziehung zwischen einem Maskendatenwert und einer Bitadresse;
- Fig. 17a veranschaulicht eine Grundoperation bei der Adressenübersetzung;
- Fig. 17b zeigt einen Bitadresse-Versatzwert oder -Offsetwert;
- Fig. 18 zeigt eine gerade Linie, wie sie gemäß der Erfindung gezogen wurde;
- Fig. 19 zeigt ein Ausführungsbeispiel zum Übertragen von Pixelinformation, wobei diejenigen in den Fig. 4, 5 und 6 dargestellten Elemente, die für die Informationsübertragung nicht wichtig sind, weggelassen sind;
- Fig. 20a und 20b veranschaulichen einen Betriebsvorgang zu Fig. 19;
- Fig. 21 veranschaulicht die Übertragung eines Pixeldatenwerts;
- Fig. 22 zeigt ein Flussdiagramm eines Übertragungsvorgangs;
- Fig. 23 zeigt die Bewegungsrichtung eines Übertragungszeigers bei Spezifizierung in einem rechteckigen Bereich;
- Fig. 24 zeigt eine Konfiguration zum Berechnen und Steuern einer Pixelposition, wobei nur wichtige Elemente aus den Fig. 4, 5 und 6 dargestellt sind;
- Fig. 25 zeigt das Format eines Übertragungs(Kopier)befehls;
- Fig. 26 veranschaulicht eine zugehörige Operation;
- Fig. 27a zeigt ein Coderegister;
- Fig. 27b und 27c zeigen Formate eines Musterbefehls; und
- Fig. 28 zeigt ein Prozessflussdiagramm für den Kopierbefehl.
- Fig. 1 ist ein Blockdiagramm, das die Gesamtkonfiguration einer erfindungsgemäßen Graphikmuster-Verarbeitungsvorrichtung zeigt. Gemäß Fig. 1 umfasst diese Graphikmuster-Verarbeitungsvorrichtung eine Operationseinheit 30, die das Schreiben, Aktualisieren und Lesen eines Bildschirm-Datenwerts hinsichtlich eines Bildschirmspeichers 13 steuert, und eine Steuerungseinheit 20 zum Steuern der Operationseinheit 30 mit einer vorbestimmten Abfolge. Die durch die Bildmuster-Verarbeitungsvorrichtung aus dem Bildschirmspeicher 13 gelesenen Bildschirmdaten werden durch eine Bildschirm-Umsetzungseinheit 40 in ein Videosignal umgesetzt und auf einer Bildschirmeinheit 50 angezeigt.
- Die durch die Steuerungseinheit 20 gesteuerte Operationseinheit 30 berechnet sequentiell Pixeladressen, von denen jede Information enthält, die eine Adresse im Bildschirmspeicher 13 spezifiziert, sowie eine Pixelposition in einem Wort des Bildschirm-Datenwerts im Bildschirmspeicher 13, sie liest ein Wort der Bildschirmdaten im Bildschirmspeicher auf Grundlage der Adresseninformation für den Bildschirmspeicher 13 an der berechneten Adresse aus, sie führt eine logische Operation für nur vorbestimmte Pixelbits eines Anzeigedatenwerts entsprechend Information aus, die mehrere Bitpositionen spezifiziert, die spezifizierten Pixelpositionen entsprechen, wie sie auf Grundlage von Pixelpositions-Spezifizierinformation für die berechnete Pixeladresse beruhen, und sie schreibt das Ergebnis der logischen Operation in den Bildschirmspeicher 13 ein. Die Zahl 60 bezeichnet einen externen Computer. Die Bildmuster-Verarbeitungsvorrichtung arbeitet entsprechend Steuerungsdaten wie vom externen Computer 60 gelieferten Anweisungen und Parametern.
- Fig. 2 ist ein Blockdiagramm eines Ausführungsbeispiels einer erfindungsgemäßen Bildmuster-Verarbeitungsvorrichtung.
- Gemäß Fig. 2 umfasst die Steuerungseinheit 20 einen Mikroprogrammspeicher 100, ein Mikroprogramm-Adressregister 110, ein Rücksprungadresse-Register 120, ein Mikroanweisungsregister 130, einen Mikroanweisungsdecodierer 200, ein Flagregister 210, einen Musterspeicher 220 und ein Anweisungssteuerregister 230.
- Die Operationseinheit 30 umfasst eine Operationensteuerungseinheit 300 und einen FIFO(first-in first-out)-Speicher 400. Die Operationssteuerungseinheit 300 umfasst eine Einheit 310 für Operationen an logischen Adressen (A-Einheit), eine Einheit 320 für Operationen an physikalischen Adressen (B-Ein heit) und eine Einheit 330 für Operationen an Farbdaten (C- Einheit).
- Die A-Einheit 310 bestimmt in erster Linie einen Zeichnungspunkt auf einem Bildschirm entsprechend einem Zeichnungsalgorithmus, die B-Einheit 320 berechnet eine erforderliche Adresse im Bildschirmspeicher, und die C-Einheit erzeugt einen in den Bildschirmspeicher einzuschreibenden Farbdatenwert.
- Fig. 3 zeigt eine Konfiguration einer Bildschirmeinheit zum Anzeigen jedes Pixels mittels vier Bits. Die durch die Bildmuster-Verarbeitungsvorrichtung der Fig. 2 spezifizierten Bildschirmdaten werden durch die Bildschirmeinheit 50 angezeigt.
- Gemäß Fig. 3 werden D&sub0;, D&sub4;, D&sub8; und D&sub1;&sub2; von Bildschirmdaten DT, wie sie entsprechend Signalen zu einer Adresse AD von der Bildmuster-Verarbeitungseinheit (Fig. 2) aus dem Bildschirmspeicher 13 gelesen werden, an einen 4-Bit-Parallel- Seriell-Wandler 410 in der Bildschirm-Umsetzungseinheit 40 geliefert. Der Wandler 410 erzeugt ein Videosignal VD&sub0;. Auf ähnliche Weise werden D&sub1;, D&sub5;, D&sub9; und D&sub1;&sub3; der Bildschirmdaten DT an einen Parallel-Seriell-Wandler 420 in der Bildschirmumsetzeinheit 40 geliefert, und der Wandler 420 erzeugt ein Videosignal VD&sub1;. D&sub2;, D&sub6;, D&sub1;&sub0; und D&sub1;&sub4; der Bildschirmdaten DT werden an einen Parallel-Seriell-Wandler 430 in der Bildschirm-Umsetzeinheit 40 geliefert, der ein Videosignal VD&sub2; erzeugt. D&sub3;, D&sub7;, D&sub1;&sub1; und D&sub1;&sub5; der Bildschirmdaten DT werden an einen Parallel-Seriell-Wandler 440 in der Anzeigeumsetzeinheit 40 geliefert, der ein Videosignal VD&sub3; erzeugt. Die Videosignale VD&sub0;-VD&sub3; werden an eine Videoschnittstellenschaltung 450 geliefert, die Farbumsetzung und DA-Umsetzung ausführt, und das sich ergebende Signal wird auf der Bildschirmeinheit 50 angezeigt.
- Nun werden Einheiten in der Operationensteuerungseinheit 300 erläutert. Fig. 4 zeigt eine Einzelheit der Einheit 310 für Operationen an logischen Adressen. Sie umfasst einen FIFO- Puffer (FBUF) 3101, Universalregister (TROY, TROX, TRIX, TR1Y, TR2X, TR2Y, CPX, CPY) 3102, Bereichssteuerungsregister (XMIN, YMIN) 3103 und (XMAX, YMAX) 3105, einen Bereichskomparator (ACMP) 3104, Endpunktregister (XEND, YEND) 3106, einen Endkomparator (ECMP) 3107, Quell-Latchstufen (SFTA, SLAV) 3108 und (SLAU) 3109, eine Einheit für arithmetischlogische Operationen (ALU) 3110, eine Ziel-Latchstufe (DLA) 3111, einen Busschalter 3112, Lesebusse (UBA, VBA) 3113 und 3114 sowie einen Schreibbus (WBA) 3115.
- Fig. 5 zeigt eine Einzelheit der Einheit 320 für Operationen an physikalischen Adressen (B-Einheit). Sie umfasst Ziel- Latchstufen (DLB, SFTB) 3201, eine Einheit für arithmetische Operationen (AU) 3202, Quell-Latchstufen (SLBV) 3203 und (SLBU) 3204, ein Versatzregister (OFS) 3205, ein Schirmbreiteregister (MW) 3206, ein Befehlsregister (CR) 3207, Universalregister (DPL, DPH, RWPH, RWPL, T2H, T2L) 3208, einen Lesebus (UBB) 3209 sowie einen Schreibbus (WBB) 3210. Die Universalregister 3208 umfassen Register für die aktuelle Adresse (DPH, DPL) für pro Pixel geltende Befehle, Adressenregister (RWPH, RWPL) für pro Wort geltende Befehle sowie Arbeitsregister (T2H, T2L).
- Fig. 6 zeigt eine Einzelheit der Einheit zur Erzeugung von Farbdaten (C-Einheit). Sie umfasst ein Barrel- oder Umlaufschieberegister (BRLS) 3301, Farbregister (CL0, CL1, EC, EDG) 3302, einen Farbkomparator (CLCMP) 3304, eine Einheit 3305 für logische Operationen (LU), einen Schreibdatenpuffer (WDBR) 3306, einen Muster-RAM-Puffer (PBUF) 3307, einen Musterzählter (PCNT)3308, Mustersteuerregister (PP, PS, PE) 3309, einen Lesedatenpuffer (RDBR) 3310, Speicheradressenre gister (MARL, MARH) 3311, einen Speicherausgangsbus 3312, einen Speichereingangsbus 3313 und einen Eingangs/Ausgangs- Puffer 3400. Ein Maskenregister 3303 umfasst ein Register (CMSK) und ein Register (GMSK).
- Nun wird ein Betriebsablauf des so aufgebauten Ausführungsbeispiels erläutert. Als erstes werden Grundoperationen der jeweiligen Einheiten beschrieben.
- Der in den Fig. 1 und 2 dargestellte Bildschirm-Steuerungsdatenwert CDT ist eine von einer anderen Einheit, wie einer zentralen Verarbeitungseinheit, gelieferte Anweisung oder ein Parameter, und er wird einerseits in den Speicher (FIFO) 400 und andererseits in das Anweisungssteuerungsregister 230 eingeschrieben. Das Anweisungssteuerungsregister 230 speichert Bildbitmodi, und beim vorliegenden Ausführungsbeispiel wird mittels des Datenwerts CDT einer von fünf Pixelmodi ausgewählt.
- Der Speicher 400 ist ein FIFO-Speicher. Eine im Speicher 400 gespeicherte Anweisung wird durch die Operationensteuerungseinheit 300 gelesen und in das Register 3101 in derselben eingespeichert. Ein Teil CID der Anweisungsinformation wird an das Adressenregister 110 übertragen.
- Das Adressenregister 110 steuert die Adresse des Mikroprogrammspeichers 100, und diese Adresse wird synchron mit einem Taktsignal aktualisiert. Aus dem Mikroprogrammspeicher 100 wird entsprechend der durch das Adressregister 110 gelieferten Adresse eine Mikroanweisung gelesen, wie in Fig. 7 dargestellt. Die aus dem Speicher 100 gelesene Mikroanweisung verfügt über 48 Bits, wie in Fig. 7 dargestellt, so dass einer von Steuerungsmodi #0 bis #7 ausgewählt werden kann. Die Anweisung wird im Register 130 zwischengespeichert, und sie steuert die Operationensteuerungseinheit 300 mittels eines Steuerungssignals CSS, das vom Decodierer 200 erzeugt wird, der entsprechend dem durch das Anweisungssteuerungsregister 230 ausgewählten Modus betrieben wird. Nachfolgend werden Funktionen der Felder der Mikroanweisung gemäß Fig. 7 erläutert.
- In Fig. 7 ist "RU" eine Anweisung, die ein mit dem Bus UBA 3113 zu verbindendes Register spezifiziert. "RV" ist eine Anweisung, die ein mit dem Bus VBA 3114 zu verbindendes Register spezifiziert. "RW" ist eine Anweisung, die ein Register spezifiziert, in das die Daten auf dem Bus WRA 3115 zu schreiben sind. "FUNCA" ist eine Anweisung, die eine Operation der Einheit 3110 für arithmetisch-logische Operationen der A-Einheit spezifiziert. "SFT" ist eine Anweisung, die einen Verschiebemodus eines zur Quell-Latchstufe 3108 hinzugefügten Schieberegisters (SFTA) spezifiziert. "ADF-L" ist eine Anweisung, die die vier Bits niedriger Ordnung einer nächsten Adresse spezifiziert, die an das Mikroprogramm- Adressregister 110 rückzuliefern sind. "AC" ist eine Anweisung, die die nächste Adresse der Mikroanweisung steuert. "ADF-H" ist eine Anweisung, die die sechs Bits hoher Ordnung der nächsten Adresse spezifiziert, wie sie an das Mikroprogramm-Adressregister 110 rückzuliefern sind. Die Mikroanweisungen #4-#7 können die sechs Bits hoher Ordnung der Adresse nicht aktualisieren. "FUNCB" ist eine Anweisung, die einen Operationsmodus der Einheit 3202 für arithmetische Operationen der B-Einheit spezifiziert. "ECD" ist eine Anweisung, die eine Ausführungsbedingung für die Operation spezifiziert. "BCD" ist eine Anweisung, die eine Verzweigungsbedingung spezifiziert. "FLAG" ist eine Anweisung, die eine Rücklieferung eines Flags an das Flagregister 210 spezifiziert. "V" ist eine Anweisung, die spezifiziert, ob eine Adresse für den Bildschirmspeicher 13 getestet wird oder nicht. "FIFO" ist eine Anweisung, die Schreib/Lese-Vorgänge des FIFO 400 steuert. "LITERAL" ist eine Anweisung, die ei nen 8-Bit-Buchstabendatenwert spezifiziert. "LC" ist eine Anweisung, die einen Erzeugungsmodus für den Buchstabendatenwert spezifiziert. "FF" ist eine Anweisung, die das Setzen und Rücksetzen eines Flipflops steuert. "S" ist eine Anweisung, die die Auswahl eines Codeflags spezifiziert. "MC" ist eine Anweisung, die Schreib/Lese-Vorgänge des Bildschirmspeichers 13 steuert. "DR" ist eine Anweisung, die ein Durchrastern des Muster-RAM steuert. "BC" ist eine Anweisung, die einen Eingangspfad in die Einheit 3202 für arithmetische Operationen der B-Einheit steuert. "RB" ist eine Anweisung, die die Lese/Schreib-Register der B-Einheit auswählt.
- Die Mikroanweisung umfasst die obigen Anweisungen, so dass die Steuerungseinheit 20 die Operationeneinheit 30 steuert.
- Das Rücksprungadresse-Register 120 speichert die Rücksprungadresse einer Unterroutine. Das Flagregister 210 speichert Bedingungsflags. Der Musterspeicher 220 speichert ein zum Verarbeiten des Bildmusters verwendetes Grundmuster. Nun werden Bitlayouts für Daten erläutert, wie beim vorliegenden Ausführungsbeispiel verwendet.
- Als erstes wird ein Graphikmodus beschrieben. Beim vorliegenden Ausführungsbeispiel kann einer von fünf Betriebsmodi entsprechend der Spezifizierung durch den im Anweisungssteuerungsregister 230 gespeicherten Bildbitmodus (GBM) ausgewählt werden.
- Die Fig. 8a-8e zeigen 1-Wort-Bitkonfigurationen des Bildschirmspeichers in den jeweiligen Modi.
- (a) Modus mit 1 Bit/Pixel (GBM = "000")
- Dieser wird dazu verwendet, ein Pixel durch ein Bit zu repräsentieren, und er wird für ein monochromatisches Bild verwendet. In einem Wort des Bildschirmspeichers 13 wird ein Datenwert von 16 aufeinanderfolgenden Pixeln gespeichert.
- (b) Modus mit 2 Bits/Pixel (GBM = "001")
- Dieser repräsentiert ein Pixel durch zwei Bits. Es können bis zu vier Farben oder Farbtöne angezeigt werden. So ist in einem Wort des Bildschirmspeichers ein Datenwert von acht aufeinanderfolgenden Pixeln gespeichert.
- (c) Modus mit 4 Bits/Pixel (GBM = "010")
- Dieser repräsentiert ein Pixel durch vier Bits. In einem Wort des Bildschirmspeichers ist ein Datenwert für vier aufeinanderfolgende Pixel gespeichert.
- d) Modus mit 8 Bits/Pixel (GBM = "011")
- Dieser repräsentiert ein Pixel durch acht Bits. In einem Wort des Bildschirmspeichers ist ein Datenwert für zwei Pixel gespeichert.
- (e) Modus mit 16 Bits/Pixel (GBM = "100")
- Dieser repräsentiert ein Pixel durch 16 Bits. In einem Wort des Anzeigespeichers ist der Datenwert für ein Pixel gespeichert.
- Fig. 8(f) zeigt das Anweisungssteuerungsregister 230.
- Nun wird die Pixeladresse erläutert. Fig. 9 zeigt Pixeladressen für die jeweiligen Modi von Fig. 8. Das Register 3208 der Einheit für Operationen an physikalischen Adressen steuert die Bitadresse (physikalische Adresse) im AD, zu der die vier Bits niedriger Ordnung der Speicheradresse addiert werden. Die Information WAD der vier Bits niedriger Ordnung wird dazu verwendet, die Pixelposition im Wort zu spezifizieren, und sie wirkt entsprechend dem Bit/Pixel-Modus. Das Symbol "*" repräsentiert ein für die Operation nichtrelevan tes Bit.
- Fig. 10 zeigt die räumliche Anordnung des Bildschirmspeichers für den obigen "Modus mit vier Bits/Pixel" gemäß c). Speicheradressen sind als lineare Adressen zugeordnet, wie es in der Speicherkarte von Fig. 10(A) dargestellt ist, und sie werden als zweidimensionales Bild angezeigt, wie es in Fig. 10(B) dargestellt ist. Die horizontale Breite des Schirms ist im Schirmbreiteregister (MW) 3206 von Fig. 5 gespeichert, und der Wert MW bezeichnet die Anzahl von Bits entlang der horizontalen Breite des Bildschirms. Im Modus mit 4 Bits/Pixel werden horizontal MW/4 Pixel angezeigt. Da ein Pixel mittels vier Bits angezeigt wird, erfolgt die Anzeige eines 1-Wort-Datenwerts durch einen horizontal zusammenhängenden 4-Pixel-Datenwert, wie in Fig. 10C dargestellt. Der Versatzgenerator 2001 von Fig. 5 erzeugt einen Versatzwert "4", der im Versatzregister 3205 gespeichert wird. Demgemäß kann zum horizontalen Verschieben der physikalischen Adresse um ein Pixel der Versatzwert addiert oder subtrahiert werden. Um die physikalische Adresse um ein Pixel vertikal zu verschieben, kann der Inhalt des Registers (MW) 3206 addiert oder subtrahiert werden. So sind die Bitlayouts der beim vorliegenden Ausführungsbeispiel verwendeten Daten beschrieben.
- Nun wird ein Vorgang zum Speichern der Bilddaten in den Bildschirmspeicher 13 mittels dieser Daten erläutert.
- Der Steuerungsdatenwert CDT, wie die von der externen zentralen Verarbeitungseinheit gelieferte Anweisung oder der Parameter wird einerseits in den Speicher 400 eingeschrieben und andererseits in das Anweisungssteuerungsregister 230 eingeschrieben.
- Nachfolgend wird ein Vorgang erläutert, wenn der im Anwei sungssteuerungsregister 230 gespeicherte Bildbitmodus (GBM) der Modus mit 4 Bits/Pixel (GBM = "010") ist.
- Wenn der Bildbitmodus (GBM) im Anweisungssteuerungsregister 230 den Modus mit 4 Bits/Pixel spezifiziert, wird der 1- Wort-Datenwert im Bildschirmspeicher 13 als 4-Bit-Gruppe gehandhabt, wie es in Fig. 8(c) dargestellt ist.
- Die Signale CDT, wie die Anweisungen und Parameter von der externen zentralen Verarbeitungseinheit werden sequentiell in den Speicher 400 eingespeichert. Die im Speicher 400 gespeicherten Daten werden in den FIFO-Puffer 3101 der A-Einheit 310 eingelesen. Die in den FIFO-Puffer 3101 eingelesenen Daten werden über den internen Bus 3113 im Register eingespeichert. Sie werden über das Quellregister (SLAU) 3109 vom Bus an die Einheit (ALU) für arithmetisch-logische Operationen 3110 geliefert, es wird eine vorbestimmte Operation ausgeführt, und das Operationsergebnis wird in der Ziel- Latchstufe (DLA) 3111 zwischengespeichert. Das Ergebnis wird über den Bus WBA in das Universalregister 3102 eingespeichert. Dieses Universalregister 3102 speichert die aktuelle Koordinate in einem Koordinatenraum.
- Die aktuelle XY-Koordinate im Universalregister 3102 wird über den Lesebus 3113 oder 3114 gelesen und an die Einheit (ALU) für arithmetisch-logische Operationen 3110 geliefert. Das Operationsergebnis der Operationseinheit (ALU) 3110 wird erneut über die Ziel-Latchstufe (DLA) 3111 und den Schreibbus 3115 in das Universalregister 3102 eingespeichert. Diese Reihe von Operationen wird unter Steuerung der in Fig. 7 dargestellten Mikroprogrammanweisung ausgeführt.
- Die Daten auf dem Schreibbus 3115 werden an die Bereichssteuerungsregister 3103 und 3105 geliefert und durch den Bereichskomparator 3104 verglichen. Der Komparator 3104 ermit telt, ob der Datenwert auf dem Schreibbus 3115 in den Bereich zwischen einem X-Achse-Minimalwert (XMIN) und einem X- Achse-Maximalwert (XMAX) oder in den Bereich zwischen einem Y-Achse-Minimalwert (YMIN) und einem Y-Achse-Maximalwert (YMAX) fällt, und das Ergebnis wird an das Flagregister 210 geliefert.
- Der Datenwert auf dem Schreibbus 3115 wird im Endpunktregister 3106 gespeichert und an den Endkomparator 3107 geliefert. Der Komparator 3107 vergleicht den Datenwert auf dem Schreibbus 3115 mit zuvor im Register 3105 gespeicherten X- Achse- und Y-Achse-Endpunkten, um zu ermitteln, ob der Datenwert den Endpunkten entspricht. Das Vergleichsergebnis wird an das Flagregister 210 rückgeliefert.
- Wie oben beschrieben, werden die Ergebnisse der Komparatoren 3104 und 3107 sowie der Operationseinheit 3110 im Flagregister 210 gesammelt und an den Mikroanweisungsdecodierer 200 geliefert, um dazu verwendet zu werden, den Ablauf des Mikroprogramms zu ändern.
- Die A-Einheit 310 arbeitet auf die oben beschrieben Weise, und sie decodiert die durch den Parameter gegebene XY-Koordinate, um eine Anweisung wie zum Zeichnen einer Linie oder eines Kreises zu interpretieren.
- Unter Bezugnahme auf Fig. 5 wird nun die Funktion der B-Einheit 320 beschrieben.
- Der Bildschirm-Steuerungsdatenwert wird anfangs über die Busse UBB und WBB sowie die Register DLB und SLBU in das Register 3208 eingetragen. Der Datenwert im Register 3208 wird über den Lesebus 3209 und die Quell-Latchstufe 3204 an die Einheit (AU) für arithmetische Operationen 3202 geliefert. Das Operationsergebnis der Operationseinheit 3202 wird in der Ziel-Latchstufe 3201 zwischengespeichert und an die Busse 3113, 3114, 3209 und 3210 geliefert. Er wird über den Bus 3210 in das Register 3208 eingeschrieben. Das Register 3208 verfügt über zwei 16-Bit-Wörter, so dass eine physikalische Adresse in einem 32-Bit-Wort gespeichert wird. Das Register 3208 umfasst drei 32-Bit-Register, so dass es drei Datenwerte speichern kann. Die Register DP (DPL, DPH) des Registers 3208 speichern die physikalische Adresse des aktuellen Bildpunkts, der dem aktuellen Bildpunkt XY entspricht. Wenn die XY-Koordinate des Registers 3102 der A-Einheit 310 verschoben wird, wird die physikalische Adresse des Registers DP entsprechend verschoben.
- Die physikalische Adresse kann dadurch geändert werden, dass ein vorbestimmter variabler Wert (Versatzwert X entsprechend dem Abstand zu einem Zielpunkt) zur ursprünglichen physikalischen Adresse auf der X-Achse addiert oder davon subtrahiert wird, und ein vorbestimmter Wert entlang der Y- Achse addiert oder subtrahiert wird. In das Versatzregister 3205 wird abhängig von einer durch den Versatzgenerator 2001 spezifizierten Information eine zum horizontalen Verschieben der Pixeladresse um ein Pixel erforderliche Konstante eingetragen. Die Konstante und der Datenwert werden in der Operationseinheit 3202 einer solchen Operation unterzogen, dass die horizontal verschobene physikalische Adresse berechnet wird. Wenn z. B. der Pixelmodus der Modus mit 1 Bit/Pixel ist, hat die Konstante den Wert 1 und eine 1-Pixel-Verschiebung resultiert in einer 1-Bit-Verschiebung. Im Modus mit 4 Bit/Pixel hat die Konstante den Wert 4, und eine 1-Pixel- Verschiebung resultiert in einer 4-Bit-Verschiebung.
- Um eine vertikale Verschiebung um ein Pixel vorzunehmen, wird eine in das Schirmbreiteregister 3206 eingetragene Konstante zur Operation verwendet, so dass eine Verschiebung um ein Pixel erzielt wird.
- Die B-Einheit 320 arbeitet auf die oben beschrieben Weise, um die aktuelle physikalische Adresse zu berechnen, die der durch die A-Einheit 310 bestimmten XY-Koordinate entspricht.
- Nun wird unter Bezugnahme auf Fig. 6 die Funktion der C-Einheit 330 beschrieben.
- Die C-Einheit 330 ist über den Ausgangsbus 3312 und den Eingangsbus 3313 mit dem in Fig. 10 dargestellten Bildschirmspeicher 13 verbunden. Die Adresseinformation AD wird als erstes von der C-Einheit 330 an den Ausgangsbus 3312 geliefert, und dann wird der Datenwert DT geliefert.
- Die Adressinformation AD wird über die B-Einheit 320 und den Bus UBB 3209 in das Speicheradressregister 3311 eingeschrieben und in den Teilen MARL und MARH des Speicheradressregisters 3311 gespeichert. Die im Register 3311 gespeicherte Speicheradresse wird über den Ausgangsbus 3312 an den Bildschirmspeicher 13 geliefert, und aus dem Bildschirmspeicher 13 wird über den Eingangsbus 3313 ein spezifizierter 1-Wort- Bildschirmdatenwert DT gelesen. Der gelesene Bildschirmdatenwert DT wird in den Lesedatenpuffer 3310 eingespeichert. Wenn der Bildschirmdatenwert DT ein Bildmusterdatenwert ist, wird er an die Operationseinheit 3305 geliefert.
- Die Maskierungsinformation (die ein zum Maskieren des Bit in einem Wort spezifiziert) vom Maskenregister 3303 wird an die Operationseinheit 3305 geliefert. Die Maskierungsinformation wird vom Register (CMSK), in das unmittelbar vom Bus WBB 3210 geschrieben wird, oder vom Register GMSK, das vom Adressendecodierer 2002 erzeugte Daten speichert, an die Operationseinheit 3305 geliefert.
- Außerdem wird die Farbinformation durch das Farbregister 3302 ausgewählt und an die Operationseinheit (LU) 3305 geliefert, die sie entsprechend dem Datenwert DT, der Maskierungsinformation und der Farbinformation einer logischen Operation unterzieht, und sie liefert das Operationsergebnis an das Schreibregister (WDBR) 3306. Die Musterinformation wird durch Spezifizierung des durch den Musterzähler 3303 erzeugten Adressensignals sowie der Bildmusterregister (PP, PS, PE) 3309 vom Muster-RAM 220 in den Muster-RAM-Puffer (PBUF) 3307 eingespeichert.
- Die C-Einheit arbeitet auf diese Weise, um die Farbinformation umzusetzen.
- Nun wird ein Zeichnungsvorgang erläutert. Fig. 11 zeigt ein Flussdiagramm für einen Zeichnungsvorgang für ein Pixel im Modus mit vier Bits/Pixel.
- Der Datenwert, wie er aus dem Muster-RAM 220 mittels der durch die Bildmusterregister (PP, PS, PE) 3309 und das Musterregister (PCNT) 3308 spezifizierten Adresse gelesen wird, wird im Muster-RAM-Puffer 3307 abgespeichert, um die Werte CL0 und CL1 des Farbregisters 3302 auszuwählen. Der aus dem Bildschirmspeicher 13 gelesene Datenwert (CA, CB, CC, CD) wird in den Lesedatenpuffer 3310 eingespeichert. Beim vorliegenden Ausführungsbeispiel sind der Farbdatenwert und der Datenwert gemäß dem Lesevorgang 4-Bit-Farbinformation oder -Farbtoninformation. Die 1-Bit-Musterinformation wird aus dem Musterspeicher 220 gelesen, und es wird das Farbregister 0 (CL0) oder das Farbregister 1 (CL1) abhängig vom Inhalt "0" oder "1" (X = "1" oder X = "0") der 1-Bit -Musterinformation ausgewählt, und der Inhalt des ausgewählten Registers wird an die Einheit 3305 für logische Operationen geliefert. Die vier Bits niedriger Ordnung der Information zur physikalischen Adresse, wie im Speicheradressenregister 3311 gespeichert, haben gemäß Fig. 11 den Wert "10**", und diese Information wird über den Adressendecodierer 2002 an das Maskenregister 3303 geliefert, das die Maskierungsinformation GMSK erzeugt. Andererseits werden die Bits hoher Ordnung mit Ausnahme der vier Bits niedriger Ordnung im Speicheradressenregister 3311 als Bildschirmspeicher-Adresse ausgegeben, so dass ein Wort des Bildschirmspeichers 13 ausgelesen wird. Nur diejenigen Teile der Einheit 3305 für logische Operationen, die durch ein Bit "1" des Maskenregisters (GMSK) 3303 spezifiziert werden, werden einer logischen Operation unterzogen, um den Schreibdatenwert Cy zu erzeugen, der dann in den Schreibpuffer 3306 eingespeichert wird. Die von der Logikoperationseinheit 3305 ausgeführte logische Operation umfasst Austausch des Inhalts des Farbregisters, logische Operationen (UND, ODER, ExOR) sowie bedingte Zeichnungsvorgänge (zeichnen nur dann, wenn die Lesefarbe einer vorbestimmten Bedingung genügt). In anderen Bit/Pixel-Modi wird andere GMSK-Information erzeugt, jedoch wird eine ähnliche logische Operation ausgeführt. Auf diese Weise werden die Adressinformation AD und der Datenwert DT vom Adressregister 3311 und vom Register 3306 an den Ausgangsbus 3312 geliefert und an den vorbestimmten Adressen des Bildschirmspeichers 13 eingeschrieben.
- Beim vorliegenden Ausführungsbeispiel wird ein wirkungsvoller Zeichnungsvorgang erzielt, da die Daten für ein Pixel durch einen Durchlauf von Lese-, Aktualisierungs- und Schreibschritten gleichzeitig aktualisiert werden können. In einem anderen Modus als dem Modus mit 16 Bit/Pixel sind Daten für mehrere Pixel in die Länge von 16 Bits gepackt. Demgemäß ist der Nutzungswirkungsgrad des Speichers hoch und der Datenübertragungs-Wirkungsgrad zwischen anderen Bauteilen und dem Bildschirmspeicher ist hoch. Da Betriebsmodi für fünf verschiedene Längen von Bits/Pixel vorhanden sind, ist die Flexibilität im Gebrauch hoch.
- Nun wird eine Bildmusterverarbeitung erläutert, die eine physikalische Adresse entsprechend einer logischen Adresse mit hoher Geschwindigkeit berechnen kann. Die Adressübersetzung durch die A-Einheit 310 und die B-Einheit 320 in Fig. 2 wird mit hoher Geschwindigkeit ausgeführt.
- Fig. 12 zeigt Einheiten in Zusammenhang mit der Adressübersetzung durch die in den Fig. 4 und 5 dargestellten Einheiten sowie zusätzliche Einheiten. Gleiche Einheiten, wie sie in den Fig. 4 und 5 dargestellt sind, sind mit denselben Zahlen gekennzeichnet.
- Ein Selektor 3500 wird durch das Signal CCS so gesteuert, dass er den Datenwert aus dem Bildschirmbreiteregister (MW) 3206 oder den Datenwert aus dem Versatzdatenregister 3205 (OFS) auswählt und den ausgewählten Datenwert an die Einheit (AL) für arithmetische Operationen 3202 liefert. Die Operationseinheit 3202 berechnet die der logischen Adresse entsprechende physikalische Adresse.
- Nun werden ein Raum physikalischer Adressen, ein entsprechender Raum logischer Adressen und ein entsprechender Bildschirm erläutert. Fig. 13 zeigt den Raum physikalischer Adressen, den entsprechenden Raum logischer Adressen und den entsprechenden Bildschirm im Modus mit vier Bits/Pixel. In Fig. 13 ist die Beziehung zwischen der physikalischen Adresse (Anzahl von Bits MW in horizontaler Richtung), den Bildschirmspeicher im Raum logischer Adressen und dem Bildschirm dargestellt. Vier Pixel mit Pixeldaten, die jeweils ein Pixel durch vier Bits repräsentieren, sind in einem 16-Bit- Wort im Raum physikalischer Adressen enthalten. Jedes Pixel verfügt über ein Bit in jeder Farbspeicherebene im Speicher im Raum logischer Adressen und diese Bits werden kombiniert, um ein Signal für 16 Farben (oder 16 Farbtöne)/Pixel an den Schirm zu liefern. Die Daten von vier Pixeln in einem Wort bilden im Speicher im Raum logischer Adressen sowie auf dem Bildschirm horizontal aufeinanderfolgende Pixeldaten.
- Fig. 14 zeigt die Beziehung zwischen der physikalischen Adresse, der logischen Adresse, der Speicherbreite MW und der Zeigeradresse PA, wie in Fig. 13 dargestellt. Fig. 14(a) zeigt eine Speicheradresse MA und eine Bitadresse BA im Raum physikalischer Adressen sowie die Beziehung zwischen diesen und dem Anzeigeschirm. Wenn eine Speicheradresse eines Worts, das ein Pixel vertikal benachbart zu einem Pixel in einem Wort enthält, das durch eine Speicheradresse MA1 spezifiziert ist, mit MA2 repräsentiert wird, ist die Speicherbreite MW so definiert, wie es in Fig. 14(c) dargestellt ist. Wenn die physikalische Adresse eines Punkts (x, y) auf dem Schirm, wie in Fig. 14(a) dargestellt, die Speicheradresse MA und die Bitadresse BA aufweist, ist die zugehörige Zeigeradresse so repräsentiert, wie es in Fig. 14(b) dargestellt ist.
- Das in Fig. 12 dargestellte Ausführungsbeispiel erzielt selbst dann eine Verarbeitung hohen Wirkungsgrads, wenn die Daten eines Pixels durch mehrere Bits (für mehrere Farben oder mehrere Farbtöne) repräsentiert sind, und es kann einer von fünf Betriebsmodi mittels des Bitmodus ausgewählt werden, wie er im Bitmodusregister 230 eingestellt ist, was gemäß Fig. 8 erfolgt.
- Fig. 15 zeigt die Beziehung zwischen den in Fig. 14 dargestellten Bitmodi und den Bitadressen, die die Pixelpositionen in einem Wort anzeigen. Die Bitadresse fällt mit der Startbitadresse der Pixeldaten zusammen. Wenn z. B. im Modus mit vier Bits/Pixel die Bits 4-7 der Pixeldaten in der Pixeldaten-Operationseinheit 330 einer Operation zu unterziehen sind, hat die Bitadresse der vier Bits niedriger Ordnung im Zeigeradressregister 3208 den Wert "4".
- Die Fig. 16(a)-16(d) zeigen die Beziehung zwischen den im Maskenregister 3303 gespeicherten Maskendaten und der Bitadresse im Modus mit vier Bits/Pixel. Wenn die Bits 4-7 der Pixeldaten einer Operation zu unterziehen sind, ist, wie oben angegeben, die Bitadresse "4", und es werden nur diejenigen Bits der Maskendaten, die mit den Pixeldaten einer Operation zu unterziehen sind, auf "1" gesetzt, während diejenigen Bits, die keiner Operation mit den Pixeldaten zu unterziehen sind, auf "0" gesetzt werden. Wenn z. B. die Bitadresse "4" ist, wird vom Maskendatengenerator 2002 ein Maskendatenwert erzeugt, bei dem nur die Bits 4-7 auf "1" gesetzt sind, und dieser wird im Maskendatenregister 3303 gespeichert.
- Fig. 17(a) zeigt Grundoperationen, wie sie in den Operationseinheiten für logische Adressen und physikalische Adressen bei in Fig. 12 dargestellten Ausführungsbeispiel ausgeführt werden, und Fig. 17(b) zeigt die Bitadresse-Versatzwerte n, wie sie vom Bitadresse-Versatzgenerator in den jeweiligen Bitmodi erzeugt werden. Als erstes wird der Bitadresse-Versatzwert erläutert. Er wird dazu verwendet, die Bitadresse zu aktualisieren, und vom Versatzgenerator 2001 wird im Modus mit vier Bits/Pixel der Datenwert "4" erzeugt, oder der Datenwert "1" im Modus mit 1 Bit/Pixel, und dieser wird in das Versatzdatenregister 3205 eingespeichert.
- Nun wird die in Fig. 17(a) dargestellte Verarbeitung erläutert. Für den Fall, dass die logische Adresse am Punkt P des aktuellen Pixels (X, Y) ist und eine physikalische Adresse PA ist, wird die Verarbeitung zum horizontalen oder vertikalen Verschieben des Punkts P um ±1 logische Adresse angegeben. Wenn der Punkt P um +1 zu verschieben ist, um den Pixeldatenwert in der positiven Richtung der (horizontalen) X- Achse zu verschieben, liest die Operationseinheit 310 für logische Adressen den Datenwert (X) aus dem aktuellen Zeiger (CPX in 3102) aus, und in der Operationseinheit 3110 wird über die Quell-Latchstufe 3109 der Wert +1 addiert. Das Operationsergebnis (X+1) wird erneut über die Ziel-Latchstufe 3111 als neue logische Adresse X im aktuellen Zeiger (CPX in 3102) abgespeichert. Die Operationseinheit 320 für physikalische Adressen liest die Zeigeradresse aus dem Zeigeradressregister 3208 aus und liefert sie als Operand über die Quell-Latchstufe 3204 an die Operationseinheit 3202. Andererseits gibt der Operandendatenselektor 3500 selektiv den Datenwert aus dem Versatzdatenregister 3205 aus, und dieser wird als Operand über die Quell-Latchstufe 3203 an die Operationseinheit 3202 geliefert. Diese Operationseinheit 3202 addiert die Zeigeradresse PA zum Bitadresse-Versatzwert n. Die Summe (PA+n) wird erneut als neue Zeigeradresse über die Ziel-Latchstufe 3201 im Zeigeradressregister (DPL und DPH in 3208) abgespeichert. Danach erzeugt der Maskendatengenerator 2202 die Maskendaten entsprechend den vier Bits niedriger Ordnung des im Zeigeradressregister 3208 abgespeicherten Datenwerts, d. h. entsprechend der Bitadresse und dem Bitmodus. Die Maskendaten werden über das Maskenregister 3303 zur Berechnung des Pixeldatenwerts an die Operationseinheit 3305 für Pixeldaten geliefert.
- Wenn der Punkt P um +1 in der positiven Richtung der (vertikalen) Y-Achse zu verschieben ist, verschiebt die Operationseinheit 310 für logische Adressen den Datenwert im aktuellen Zeiger Y (CPY in 3102) um +1. Andererseits führt die Operationseinheit 320 physikalische Adressen eine Operation am Datenwert im Zeigeradressregister 3208 (DPL, DPH) aus. Bei der X-Achse-Operation wird der Versatzwert addiert oder subtrahiert, und bei der Y-Achse-Operation wird der Datenwert im Speicherbreiteregister 3206 addiert oder subtrahiert (Subtraktion beim vorliegenden Beispiel). Der Operationssteuersignal-Generator 200 erzeugt ein Addier/Subtrahier- Signal für die Operationseinheit 3202 in der Operationseinheit 320 für physikalische Adressen, wenn die Operationseinheit 310 für logische Adressen die X-Achse-Addition/Subtraktion ausführt, und sie erzeugt das Additions/Subtraktions- Steuerungssignal für die Operationseinheit 3202, wenn die Operationseinheit 310 für logische Adressen die Y-Achse-Addition/Subtraktion ausführt. Die Bestimmung erfolgt durch die Adresszuordnung im Bildschirmspeicher entsprechend dem Bildschirm. Durch diese logischen Operationen wird die physikalische Adresse nach einer Verschiebung des Punkts P hergeleitet. Fig. 18 zeigt ein Beispiel für das Zeichnen einer geraden Linie bei der Erfindung.
- Wenn eine gerade Linie von einem Startpunkt Ps (Xs, Ys) zu einem Endpunkt Pe (Xe, Ye) zu ziehen ist, wird bei einer ersten Vorverarbeitung die physikalische Adresse des Ursprungs von der zentralen Verarbeitungseinheit oder einer anderen Steuerungseinheit in die Teile DPL und DPA des Zeigeradressregisters 3208 geladen, und der aktuelle Zeiger X (CPX in ein 3102) und der aktuelle Zeiger Y (CPY in 3102) werden durch die Steuerungseinheit 200 auf "0" gelöscht. Durch Einstellen des Ursprungs auf diese Weise wird Entsprechung zwischen der logischen Adresse und der physikalischen Adresse erzielt. Bei einer zweiten Vorverarbeitung wird die logische Adresse (Xs, Ys) des Startpunkts Ps der Linie in den aktuellen Zeigern X (CPX) und Y (CPY) abgespeichert und die Operationseinheit 320 für physikalische Adressen berechnet die der logischen Adresse (Xs, Ys) entsprechende physikalische Adresse. Bei einer dritten Vorverarbeitung wird die logische Adresse (Xe, Ye) des Endpunkts Pe in die Zwischenspeicher 3102 eingespeichert. Dies beendet die Vorverarbeitung. Auf einen Befehl zum Ziehen einer Linie vom Punkt Ps zum Punkt Pe von der zentralen Verarbeitungseinheit oder einer anderen Steuerungseinheit her startet die Steuerungseinheit 200 eine Hauptverarbeitung. Sie liefert entsprechend einer vorab abgespeicherten Steuerungsprozedur Steuerungsanweisungen an die Operationseinheiten 310, 320 und 330. Die Operationseinheit 310 für logische Adressen bestimmt Zwischeninformation, wie sie für die Zeichnungsverarbeitung erforderlich ist, wie die Steigung der Linie, auf Grundlage der logischen Adresse (Xs, Ys) des Startpunkts Ps und der logischen Adresse (Xe, Ye) des Endpunkts Pe, sie speichert sie in die Zwischenregister 3102 ein und sie berechnet die logische Adresse (x&sub1;, y&sub1;) für den als nächstes zu zeichnenden Punkt p&sub1; sowie die dieser logischen Adresse (x&sub1;, y&sub1;) entsprechende physikalische Adresse. Die X-Achse-Adressberechnung und die Y-Achse-Adressberechnung werden durch die Operationseinheit 310 für logische Adressen und die Operationseinheit 320 für physikalische Adressen ausgeführt. Parallel hierzu wird der dem Startpunkt Ps entsprechende Pixeldatenwert aus dem Anzeigespeicher gelesen, und es wird der Pixeldatenwert des Startpunkts Ps einer Operation unterzogen. Nach der Operation am Pixeldatenwert wird der sich ergebende Pixeldatenwert erneut in den Bildschirmspeicher eingeschrieben. So berechnen die Operationseinheit 310 für logische Adressen und die Operationseinheit 320 für physikalische Adressen während zweimaligen Speicherzugriffs für einen Punkt die logische Adresse für den als nächstes zu zeichnenden Punkt sowie die entsprechende physikalische Adresse. Durch Wiederholen der obigen Schritte, bis der Endpunkt Pe der Linie erreicht ist, werden die Pixeldaten zum Zeichnen der Linie sequentiell in den Bildschirmspeicher eingespeichert.
- Der aus dem Bildschirmspeicher gelesene Pixeldatenwert wird in einem speziellen Fall erneut in den Bildschirmspeicher eingespeichert, nachdem eine Substitution durch einen vorbestimmten Datenwert erfolgte. Die Pixel auf einer zu zeichnenden Linie haben nicht immer dieselbe Intensität oder Farbe. Demgemäß wird der gelesene Pixeldatenwert einer Opera tion mit anderen Daten unterzogen, und das Operationsergebnis wird als neuer Bildschirmpixel-Datenwert in den Bildschirmspeicher eingespeichert.
- Während im obigen Ausführungsbeispiel ein zweidimensionaler logischer Raum erörtert ist, kann die Erfindung auf einen höherdimensionalen logischen Raum angewandt werden. Selbst wenn ein Pixeldatenwert durch mehrere Bits repräsentiert ist, können die logische Adresse und die dieser logischen Adresse entsprechende physikalische Adresse mit hoher Geschwindigkeit berechnet werden.
- Nun wird Hochgeschwindigkeitsübertragung von Pixelinformation an eine andere Pixelposition in einem System, in dem ein Mehrpixel-Datenwert in einem Speicherwort gespeichert ist, erläutert. Hohe Verarbeitungsgeschwindigkeit wird durch eine charakteristische Hardwarekonfiguration erzielt. Diejenigen in den Fig. 4, 5 und 6 dargestellten Teile, die für die die Übertragungsverarbeitung nicht relevant sind, sind in Fig. 19 weggelassen. Der Mikroanweisungsdecodierer 200 enthält einen Zwischenadressendecodierer 2002 und einen Verschiebungsdecodierer 2003. Das Anweisungssteuerungsregister 2030 speichert einen Übertragungsmodus und einen Bitmodus.
- Der Bildschirmspeicher 13 hat eine Konfiguration für 16-Bit- Wörter, und Adressen sind sequentiell zugeordnet. Eine Quelladresse wird in Teilen T2H und T2L des Universalregisters 3208 gespeichert, und eine Zieladresse wird in den Teilen DPH und DPL gespeichert. So steuern zwei Register für 16-Bit-Wörter die Quelladresse und die Zieladresse. Die vier Bits niedriger Ordnung der Adressinformation spezifizieren die Bitposition in einem Speicherwort, und die Bits hoher Ordnung spezifizieren die Adresse des Bildschirmspeichers.
- Der Verschiebungsdecodierer 2003 decodiert die Verschie bungsinformation zum Steuern der Verschiebung im Umlaufschieberegister 3301. Bei Übertragungsverarbeitung berechnet die Einheit (ALU) für arithmetisch-logische Operationen 3110 die Differenz zwischen den vier Bits niedriger Ordnung der Zieladresse und der Quelladresse, und die Differenz wird über die Ziel-Latchstufe (DLA) 3111 an den Verschiebungsdecodierer 2003 geliefert.
- Der Zwischenwortadressdecodierer erzeugt Maskierungsinformation auf Grundlage der vier Bits niedriger Ordnung der im Speicheradressregister 3311 zwischengespeicherten Adressinformation sowie der Differenz zwischen den vier Bits niedriger Ordnung der Quelladresse und der Zieladresse, wie sie in der Ziel-Latchstufe 3111 zwischengespeichert ist, was abhängig vom im Anweisungssteuerungsregister 230 gespeicherten Bitmodus oder Übertragungsmodus erfolgt, und er liefert die Maskierungsinformation an das Maskenregister 330.
- Die Fig. 20(a) und 20(b) veranschaulichen die Funktion des Ausführungsbeispiels von Fig. 19. Es sind zwei Übertragungsmodi dargestellt, die durch den im Anweisungssteuerungsregister 230 gespeicherten Übertragungsmodus spezifiziert sind. Fig. 20(a) zeigt einen 1-Pixel-Übertragungsmodus, in dem immer nur der Datenwert für ein Pixel übertragen wird. Als erstes wird eine Quelladresse (T2H, T2L) ausgewählt, aus dem Bildschirmspeicher 13 wird ein 1-Wort-Datenwert, der das Quellpixel enthält, gelesen, und dieser wird über den Lesedatenpuffer 3310 an das Umlaufschieberegister 3301 geliefert. Andererseits berechnet die Einheit 3310 für arithmetisch-logische Operationen die Differenz zwischen den vier Bits niedriger Ordnung der Quelladresse und der Zieladresse, und im Umlaufschieberegister 3301 erfolgt mittels des Verschiebungsdecodierers 2003 eine Verschiebung um mehrere Bits. Das Zieladressregister (DPL, DPH in 3208) wird ausgewählt, es wird ein Datenwort, das die Zielpixelposition ent hält, ausgelesen, und dieses wird über den Lesedatenpuffer 3310 an die Einheit 3305 für logische Operationen geliefert. Andererseits werden die vier Bits niedriger Ordnung der Zieladresse durch den Zwischenwortadressdecodierer 2002 decodiert, der die die Zielpixelposition spezifizierende Maskierungsinformation erzeugt. Die Einheit 3303 für logische Operationen führt eine Substitutionsoperation am Ausgangssignal des Umlaufschieberegisters 3301 nur für diejenigen Bitpositionen des 1-Wort-Datenwerts für das Ziel aus, die durch die Maskierungsinformation spezifiziert sind. Das Operationsergebnis wird über den Schreibdatenpuffer 3306 an der Zieladresse des Bildschirmspeichers gespeichert. Durch Wiederholen der 1-Pixel-Übertragungsverarbeitung bei sequentiellem Aktualisieren der Quelladresse und der Zieladresse kann ein großes Datenvolumen mit hoher Geschwindigkeit unabhängig von Wortgrenzen des Speichers übertragen werden.
- Fig. 20(b) veranschaulicht die Funktion im Mehrpixel-Übertragungsmodus. Der Adressendecodierer 2002 stellt an mehreren, durch die Übertragungsmodusbits im Anweisungssteuerregister 230 spezifizierten Bitpositionen den Wert "1" ein. Demgemäß wird höhere Geschwindigkeit erzielt, wenn mehrere horizontal zusammenhängende Bits übertragen werden.
- Gemäß dem vorliegenden Ausführungsbeispiel können selbst dann, wenn Daten für mehrere Pixel in einem Wort des Bildschirmspeichers gespeichert sind, die Pixeldaten mit der dreifachen Geschwindigkeit des Speicherzugriffs an eine oder mehrere Pixelpositionen übertragen werden, d. h. durch Lesen der Quelle, durch Lesen des Ziels und durch Schreiben des Ziels. Demgemäß wird Übertragung mit hoher Geschwindigkeit erzielt. Durch den Teil GBM des Registers 230 kann einer von fünf Betriebsmodi (siehe Fig. 8) ausgewählt werden.
- Fig. 21 veranschaulicht die Übertragung eines 1-Pixel-Daten werts im Modus mit vier Bits/Pixel. Es wird der das Quellpixel enthaltende Datenwert eines Worts gelesen, und nur der zugehörige Quellpixel-Datenwert wird an die Zielpixelposition übertragen. Fig. 22 zeigt den Ablauf der Übertragungsverarbeitung. Ein Wort im Bildschirmspeicher 13, das das Quellpixel enthält, wird gelesen und im Lesedatenpuffer 3310 zwischengespeichert. Andererseits wird die Differenz zwischen den vier Bits niedriger Ordnung der durch das Quellpixel spezifizierten Adressinformation und den vier Bits niedriger Ordnung der durch das Zielpixel spezifizierten Adressinformation berechnet. Die Differenz repräsentiert die Differenz zwischen den Bitpositionen des Quellpixels und des Zielpixels. Der gelesene Quelldatenwert wird durch das Umlaufschieberegister 3310 so verschoben, dass das Quellpixel (Cs) mit der Zielpixelposition ausgerichtet ist. Dann wird ein Wort, das das Zielpixel (Cd) enthält gelesen, und es wird durch die Einheit 3305 für logische Operationen einem Operationsvorgang mit dem Quellpixel (Cs) unterzogen. Da die Maskierungsinformation nur an der Zielpixelposition den Wert "1" enthält, wird nur ein Pixel an der Zielposition aktualisiert, und es werden die Schreibdaten erzeugt. Zur logischen Operation gehören eine Austausch- und eine Logikoperation. In einem anderen Modus als demjenigen mit vier Bits/Pixel ist das Format der Maskierungsinformation verschieden, jedoch ist die Operation ähnlich.
- Gemäß dem vorliegenden Ausführungsbeispiel kann selbst dann, wenn der Datenwert für ein Pixel durch mehrere Bits repräsentiert ist, dieser Pixeldatenwert mit der dreifachen Geschwindigkeit des Speicherzugriffs an eine beliebige Pixelposition übertragen werden, d. h. durch Lesen der Quelle, Lesen des Ziels und Schreiben des Ziels.
- Fig. 23 zeigt die Verschieberichtung (SD) eines Zeigers für eine Übertragungsanweisung, wenn für die Pixeldatenübertra gung ein rechteckiger Bereich spezifiziert ist. Es sind acht Beispiele (a)-(h) dargestellt. Der Quellbereich und der Zielbereich können unabhängig spezifiziert werden.
- Nun wird die Ablaufsteuerung erläutert, die die Berechnung der Pixelposition bei der Übertragung einfach macht.
- Fig. 24 zeigt Teile von Fig. 2 in Zusammenhang mit der Ablaufsteuerung für die Pixelposition. Das Flagregister 210 enthält einen Codedecodierer 2101 und ein Coderegister 2102. Das Flagregister 210 enthält ferner ein Bereichsflag, das das Operationsergebnis widerspiegelt, ein Nullflag und ein Negativflag, obwohl diese nicht dargestellt sind, da sie hier nicht erörtert werden. In einem Befehlsregister 3207 wird ein Befehlscode eines extern über den FIFO 400 übertragenen Befehls zwischengespeichert. Ein Teil der Information des Befehlscodes wird an das Mikroprogramm-Adressregister 110 übertragen, so dass das Mikroprogramm sukzessive ausgelesen wird und der Betrieb unter dem vorbestimmten Verarbeitungsalgorithmus gesteuert wird.
- Die Operationseinheit 300 führt die Koordinatenoperation zum Berechnen der Zeichnungsadresse sowie die Verarbeitung der Bildmusterdaten aus. Der Codedecodierer 2101 erzeugt den Code auf Grundlage des Teils der Information des Befehlscodes sowie der von einem anderen Element in der Operationseinheit 30 gelieferten Information.
- Das Coderegister 2102 führt für die durch den Codedecodierer 2101 erzeugten Codedaten eine Zwischenspeicherung aus. Ein im Mikroanweisungsdecodierer 200 angeordneter Modusdecodierer 2009 decodiert das Verarbeitungsmodusfeld des Befehls, um den Ablauf zu steuern.
- Die Fig. 25(a)-25(e) zeigen Formate (CDT) eines Kopier (Übertragungs)befehls. Dazu gehören ein Wort (16 Bits) des Befehlscodes sowie vier Wörter von Parametern 1-4. Durch Einstellen der Parameter kann die Durchrasterrichtung bei der Übertragung ausgewählt werden.
- Fig. 26 zeigt eine schematische Ansicht des Betriebs durch den Kopierbefehl. Die Parameter Xs und Ys bilden die Startpunktkoordinate des Quellbereichs 13s. Die Parameter DX und DY definieren die Richtung und die Größe des Bereichs. Wenn DX > 0 gilt, wobei Xs und Ys den Ursprung bilden, ist der Bereich nach rechts gerichtet, wenn DX < 0 gilt, ist er nach links gerichtet, wenn DY > 0 gilt ist er nach oben gerichtet, und wenn DY < 0 gilt, ist er nach unten gerichtet, und die Größe ist durch die Absolutwerte von DX und DY spezifiziert. Ein Bit S in Fig. 25(a) repräsentiert die Prioritätsreihenfolge zur Durchrasterung. Wenn S = "0" ist, hat die Horizontaldurchrasterung höhere Priorität, und wenn S = "1" ist, hat die Vertikaldurchrasterung höhere Priorität.
- Beim Ausführungsbeispiel von Fig. 24 wird das erste Wort des von außen übertragenen Befehls als Befehlscode erkannt und in das Befehlsregister 2307 eingespeichert. Ein Mikroprogramm wird entsprechend den vier Bits hoher Ordnung des Befehlscodes gestartet, um die Steuerung der Kopierverarbeitung zu starten.
- Das Bit 5 im Befehlscode sowie das Feld DSD (Fig. 25) werden über den Codedecodierer 2101 an das Coderegister 2102 geliefert, und das Verarbeitungsmodusfeld niedriger Ordnung im Befehlscode wird durch den Modusdecodierer 2009 decodiert.
- Die Parameter 1-4 werden sequentiell an das Register 3102 (nicht dargestellt) in der Operationseinheit 300 geliefert. Die Koordinate (X, Y) für den aktuellen Zeichnungspunkt wird in das Register (CPX, CPY) eingespeichert.
- Fig. 27(a) zeigt eine Konfiguration des Coderegisters 2102. Das Coderegister enthält 10-Bit-Information, wie es unten beschrieben ist. In Fig. 27(a) ist die in den Registern für den Kopierbefehl gespeicherte Information durch Pfeile dargestellt.
- (1) Q1
- Es handelt sich um das erste Bit zum Umschalten der Koordinatenregister X und Y. Im Kopierbefehl wird es dazu verwendet, die Prioritätsreihenfolge für Durchrasterungen in X- Richtung und Y-Richtung im Quellbereich 13S zu bestimmen. Das Bit S des Befehlscodes wird auf Q1 gesetzt.
- Wenn Q1 "0" gilt, werden das X-Register und das Y-Register auf die spezifizierte Weise ausgewählt, während dann, wenn Q1 = "1" gilt, das Y-Register für X-Spezifizierung ausgewählt wird und das X-Register für Y-Spezifizierung ausgewählt wird.
- (2) Q2
- Es handelt sich um das zweite Bit zum Umschalten der Koordinatenregister X und Y. Im Kopierbefehl wird es dazu verwendet, die Durchrasterungen für die X-Richtung und die Y-Richtung im spezifizierten Bereich 13D umzuschalten. Das Bit 2 des Felds DSD (Fig. 25) des Befehlscodes wird auf Q2 gesetzt.
- Wenn Q2 = "0" gilt, werden das X-Register und das Y-Register auf die spezifizierte Weise ausgewählt, und wenn Q2 = "1" gilt, werden die Register unter Umkehrung der Spezifizierung für X und Y ausgewählt.
- (3) S1x
- Es handelt sich um Zwei-Bit-Information, die einen Operationscode für die erste X-Richtung enthält. Normalerweise wählt das Bit hoher Ordnung unter den zwei Bits Addition oder Subtraktion aus, und das Bit niedriger Ordnung bestimmt, ob die Addition/Subtraktion auszuführen ist (wenn das Bit den Wert "1" aufweist) oder nicht (wenn das Bit den Wert "0" aufweist).
- Im Kopierbefehl wird der Code des Parameters DX auf das Bit hoher Ordnung gesetzt, und "1" wird als Bit niedriger Ordnung eingetragen. Das Bit hoher Ordnung wird als Information zum Spezifizierten des Operationscodes in der X-Richtung des Quellbereichs 13S verwendet.
- (4) S1y
- Es handelt sich um 2-Bit-Information, die den Operationscode für die erste Y-Richtung enthält, wie S1x, und sie wird zum Auswählen der Operation verwendet.
- Im Kopierbefehl werden der Code des Parameters DY sowie "1" in das Bit hoher Ordnung bzw. das Bit niedriger Ordnung eingetragen, um den Operationscode in der Y-Richtung des Quellbereichs 13S zu spezifizieren.
- (S) S2x
- Es handelt sich um 2-Bit-Information, die den Operationscode in der zweiten X-Richtung enthält. Im Kopierbefehl spezifiziert sie den Operationscode in der X-Richtung im Zielbereich 13D. Das Bit 1 des Felds DSD des Befehls wird in das Bit hoher Ordnung eingetragen, und "1" wird in das Bit niedriger Ordnung eingetragen.
- (6) S2y
- Es handelt sich um 2-Bit-Information, die den Operationscode in der zweiten Y-Richtung enthält. Im Kopierbefehl spezifiziert sie den Operationscode in der Y-Richtung des Zielbereichs 13D. Das Bit 0 des Felds DSD des Befehls wird in das Bit hoher Ordnung eingetragen, und "1" wird in das Bit niedriger Ordnung eingetragen.
- Zusammengefasst gesagt, können S1x, S1y, S2x und S2y jeweils vier Zustände einnehmen, und wenn es sich um "00" und "10" handelt, wird 0 addiert oder subtrahiert (d. h. keine Operation), wenn es sich um "01" handelt, wird 1 addiert, und wenn es sich um "11" handelt, wird 1 subtrahiert.
- Im Kopierbefehl hat das Bit niedriger Ordnung in jedem der Register S1x, S1y, S2x und S2y des Coderegisters 2102 den Wert "1", wie oben beschrieben. In anderen Befehlen kann dieses Bit geändert sein.
- Fig. 28 zeigt den Verarbeitungsablauf des Kopierbefehls. Der Inhalt zum Spezifizieren der Register ist unten angegeben.
- (1) Xs (Q1)
- Wenn Q1 = "0" gilt, wird das Register Xs spezifiziert, und wenn Q1 = "1" gilt, wird das Register Ys spezifiziert. Es handelt sich um eine Koordinate in der ersten oder Hauptdurchrasterrichtung des Quellbereichs 13S.
- (2) Ys (Q1)
- Wenn Q1 = "0" gilt, wird das Register Ys spezifiziert, und wenn Q1 = "1" gilt, wird das Register Xs spezifiziert. Es handelt sich um eine Koordinate in der zweiten Durchrasterrichtung des Quellbereichs 13S.
- (3) X (Q2)
- Wenn Q2 = "0" gilt, wird das Register X spezifiziert, und wenn Q2 = "1" gilt, wird das Register Y spezifiziert. Es handelt sich um eine Koordinate in der ersten oder Hauptdurchrasterrichtung des Zielbereichs 13D.
- (4) Y (Q2)
- Wenn Q2 = "0" gilt, wird das Register Y spezifiziert, und wenn Q2 = "1" gilt, wird das Register X spezifiziert. Es handelt sich um eine Koordinate in der zweiten Durchrasterrichtung des Zielbereichs 13D.
- (5) S1x (Q1)
- Wenn Q1 "0" gilt, wird S1x ausgewählt, und wenn Q1 = "1" gilt, wird S1y ausgewählt. Es handelt sich um einen Code der ersten (Prioritäts)Durchrasterrichtung des Quellbereichs 13S.
- (6) S1y (Q1)
- Wenn Q1 = "0" gilt, wird S1x ausgewählt, und wenn Q1 = "1" gilt, wird S1x ausgewählt. Es handelt sich um einen Code der zweiten Durchrasterrichtung des Quellbereichs 13S.
- (7) S2x (Q2)
- Wenn Q2 = "0" gilt, wird S2x ausgewählt, und wenn Q2 = "1" gilt, wird S1y ausgewählt. Es handelt sich um einen Code der ersten (Prioritäts)Abrasterrichtung des Zielbereichs 13D.
- (8) S2y (Q2)
- Wenn Q2 = "0" gilt, wird S2y ausgewählt, und wenn Q2 - "1" gilt, wird S2x ausgewählt. Es handelt sich um einen Code der zweiten Durchrasterrichtung des Zielbereichs 13D.
- Gemäß Fig. 28 werden im Kopierbefehl die auf den Befehlscode folgenden Parameter 1-4, d. h. Xs, Ys, DX und DY sequentiell zugeführt und in die Register in der Betriebseinheit 300 eingespeichert (Schritt S1).
- Dann wird eine Linie in der ersten (Prioritäts)Durchrasterrichtung verarbeitet. Zu diesem Zweck werden Xs (Q1) und X (Q2), d. h. die Startkoordinaten des Quellbereichs 13S und des Zielbereichs 13D in der ersten (Prioritäts)durchrasterrichtung puffermäßig in anderen Registern gespeichert (Schritt S2).
- Dann wird die Pixelinformation an der durch (Xs, Ys) spezifizierten Koordinate an die durch (X, Y) spezifizierte Koordinate übertragen (Schritt S3). Vorstehend wurde die Übertragungsverarbeitung für ein Pixel beschrieben.
- Dann werden die Codes S1x (Q1) und S2x (Q2) zu den Koordinaten Xs (Q1) und X (Q2) in der ersten Durchrasterrichtung des Quellbereichs 13S und des Zielbereichs 13D addiert. D. h., dass die spezifizierten Koordinatenpunkte der jeweiligen Bereiche um ein Pixel in der ersten Durchrasterrichtung verschoben werden (Schritt S4).
- Die Schritte S3 und S4 werden wiederholt, bis der spezifizierte Koordinatenpunkt den Endpunkt einer Linie erreicht (Schritt S5).
- Am Ende der Verarbeitung für eine Linie werden, wenn die Entscheidung im Schritt S5 bejahend ist, Xs (Q1) und X (Q2) rückgesetzt (Schritt S6) und es werden die Codes S1y (Q1) und S2y (Q2) zu den Koordinaten Ys (Q1) und Y (Q2) für die zweite Durchrasterrichtung addiert, und es wird die Startpunktkoordinate für die zweite Linie eingestellt (Schritt S7).
- Die Schritte S2-S7 werden wiederholt, bis die Linienverarbeitung in der zweiten Durchrasterrichtung abgeschlossen ist, d. h., bis die Entscheidung im Schritt S8 bejahend ist, so dass alle Daten des Quellbereichs 13S übertragen sind.
- Gemäß dem vorliegenden Ausführungsbeispiel können verschiedene Zeigerdurchrastermodi bei einer Bereichsdatenübertragung durch den einzelnen, in Fig. 28 dargestellten Prozessablauf erzielt werden, so dass die Steuerungsinformation (z. B. ein Mikroprogramm) deutlich reduziert oder vereinfacht werden kann.
- Die Erfindung kann in gleicher Weise auf einen anderen Befehl oder einen Musterbefehl angewandt werden.
- Die Fig. 27(b) und 27(c) zeigen Formate des Musterbefehls. Er umfasst einen Befehlscode mit einem 16-Bit-Wort sowie einen 1-Wort-Parameter.
- Der Musterbefehl wird dazu verwendet, die im Musterspeicher in der Bildmuster-Verarbeitungsvorrichtung gespeicherte Musterinformation im Bildschirmspeicher zu entwickeln. Durch Auswählen des Betriebsmodus des Befehls können vom Zeiger verschiedene Durchrasterungen ausgeführt werden.
Claims (33)
1. Bildmuster-Verarbeitungsvorrichtung zum Gebrauch in
Verbindung mit einem Bildschirmspeicher (13) zum Speichern von
Bildschirmdaten-Wörtern und einer Einrichtung (40) zum
Umwandeln des aus dem Bildschirmspeicher ausgelesenen
Bildschirmdaten-Wortes in ein Bildschirmsignal zum Darstellen auf einer
Bildschirmeinheit oder zum Übertragen auf eine andere
Einheit, wobei die im Bildschirmspeicher gespeicherten
Bildschirmdaten-Wörter durch die
Bildmuster-Verarbeitungsvorrichtung aktualisiert oder verarbeitet werden, um in
Übereinstimmung mit Bildschirm-Steuerdaten (CDT), die einen Befehl und
einen Parameter, die von einem Computer abgeschickt wurden,
zu zeichnen,
dadurch gekennzeichnet, daß
jedes Bildschirmdaten-Wort eine erste vorbestimmte
Anzahl von Pixel enthält, wobei jedes Pixel durch eine zweite
vorbestimmte Anzahl von Bits dargestellt wird, wobei die
erste und die zweite vorbestimmte Anzahl in Übereinstimmung mit
einer Graphikbitmodus-Information, die in den Bildschirm-
Steuerdaten enthalten ist, festgelegt sind,
wobei die Bildmuster-Verarbeitungsvorrichtung eine
Einrichtung (20, 30), die in Reaktion auf die Bildschirmsteuer-
Daten (CDT) vom Computer (60) eine Pixeladresse eines
Bildschirmdaten-Wortes berechnet, wobei jede Pixeladresse eine
erste Gruppe von Bits, die eine Wortadresse (MAD) des
Bildschirmdaten-Wortes im Bildschirmspeicher (13) kennzeichnen
und eine zweite Gruppe von Bits (WAD), die eine Pixelposition
innerhalb des Bildschirmdaten-Wortes kennzeichnen, enthält,
eine Einrichtung zum Auslesen des Bildschirmdaten-Wortes
aus dem Bildschirmspeicher (13) in Übereinstimmung mit einer
ersten Gruppe von Bits (MAD) einer Pixeladresse,
eine Verarbeitungseinrichtung von wenigstens einem Bit
des Pixels, der durch die zweite Gruppe von Bits der
Pixeladresse bestimmt ist, und
eine Einrichtung zum Schreiben des Wortes der
Bildschirmdaten, die das verarbeitete wenigstens eine Bit
enthalten, in den Bildschirmspeicher (13)
aufweist.
2. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 1,
aufweisend ein Register (3208) zum Halten der ersten Gruppe
von Bits, die die Wortadresse im Bildschirmspeicher (13)
kennzeichnen, der zweiten Gruppe, die die Pixelposition
innerhalb des Wortes kennzeichnen und einer dritten Gruppe, die
abhängig von der Zahl der Pixel pro Wort Bits des Pixels, der
zur den Vorgang nicht relevant ist, kennzeichnen.
3. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 2,
weiter aufweisend einen Lesedaten-Puffer (3310) zum Speichern
des Wortes der Bildschirmdaten, das durch die erste Gruppe
von Bits als zum Auslesen aus dem Bildschirmspeicher (13)
gekennzeichnet ist, eine Einheit für logische Verknüpfungen
(3305) zum Aktualisieren des wenigstens einen Bits der
Pixeldaten innerhalb eines Wortes, das durch die zweite Gruppe
von Bits gekennzeichnet ist, und einen Schreibpuffer (3306)
zum Speichern des Wortes mit dem verarbeiteten wenigstens
einen Bit.
4. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 2
oder 3, weiter aufweisend ein Register (3303) zum Speichern
der Bits des Pixels, das durch die zweite Gruppe von Bits
gekennzeichnet ist.
5. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 4, weiter aufweisend ein Register (230) zum
speichern eines Bits (GBM), das zum Auswählen eines aus der
Vielzahl von Betriebsmodi bestimmt ist, wobei jeder
Betriebsmodus eine unterschiedliche Anzahl von Pixel pro Wort der
Bildschirmdaten und/oder eine unterschiedliche Anzahl von
Bits per Pixel verwendet.
6. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 5, weiter aufweisend zwei Farbregister (3302)
zum Halten unterschiedlicher Farbinformationen, die in
Übereinstimmung mit Musterinformationen, die aus einem
Musterspeicher (220) ausgelesen werden, ausgewählt sind, um die
Farbe eines Pixels der Bildschirmdaten zu kennzeichnen.
7. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 6,
wobei eine Anzahl von Bits per Pixel der Farbinformation
größer ist als eine Anzahl von Bits per Pixel der
Musterinformation.
8. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 6
oder 7, wobei die Farbinformation aus einer Vielzahl von Bits
per Pixel und die Musterinformation aus einem einzigen Bit
per Pixel bestehen.
9. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 8, weiter aufweisend eine Einrichtung zum
gleichzeitigen Übertragen einer Vielzahl von Pixel.
10. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 9,
weiter aufweisend eine Einrichtung (3110) zum Berechnen einer
Verschiebgröße auf der Grundlage einer Information zum
Bestimmen einer Pixelposition in einem Quellwort und einer
Information zum Bestimmen einer Pixelposition in einem
Bestimmungswort, wenn Bildschirmdaten zum Bildschirmspeicher (13)
übertragen werden sollen, und eine Verschiebeinrichtung
(3301) zum Vielfach-Verschieben einer Vielzahl von Bits.
11. Bildmuster-Verarbeitungsvorrichtung gemäß Anspruch 9
oder 10, weiter aufweisend ein Register (230) zum Speichern
eines Bits, das zum Auswählen eines der Vielzahl von
Übertragungsmodi bestimmt ist, wobei jeder Modus eine
unterschiedli
che Anzahl fortlaufenden Pixel, die gleichzeitig übertragen
werden sollen, verwendet.
12. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 11, weiter aufweisend ein Register (3205) zum
Halten eines Offset-Wertes (n), der zu der Anzahl von Bits
per Pixel in Beziehung steht, und eine Betriebseinheit (3202)
zum Modifizieren der physikalischen Adresse des Offset-Wertes
(n), wenn die logische Adresse um 1 geändert ist.
13. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 12, wobei die Pixeladressen sequentiell
berechnet werden.
14. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 13, weiter aufweisend eine Betriebseinrichtung
für logische Adressen (310) zum Liefern einer logischen
Adresse, die eine Position eines Musters in bezug auf einen
Ursprungspunkt auf der Grundlage von Bildschirm-Steuerdaten
darstellt, und eine Einrichtung (320) zum Berechnen einer
physikalischen Adresse im Bildschirmspeicher (13) auf der
Grundlage der logischen Adresse.
15. Bildmuster-Verarbeitungsvorrichtung gemäß einem der
Ansprüche 1 bis 14, weiter aufweisend ein Befehlsregister zum
Speichern eines Befehlcodes, der in einem als Bildschirm-
Steuerdaten gelieferten Befehl enthalten ist, einen Decoder
zum Decodieren eines Abschnitts des Befehlcodes, der im
Befehlsspeicher gespeichert ist, um einen Betriebstyp, der für
eine laufende Koordinate ausgeführt werden soll, zu erzeugen,
ein Coderegister zum Speichern der Ausgabe des Decoders, eine
Einrichtung zum Berechnen von Pixelkoordinaten im
Bildschirmspeicher auf der Grundlage eines Steuersignals und eine
Einrichtung zum Bestimmen einer Position im Bildschirmspeicher
auf der Grundlage der Koordinate.
16. Bildverarbeitungsvorrichtung mit einer
Bildmuster-Verarbeitungsvorrichtung (20, 30) zum Erzeugen Von Bildschirmdaten
in Übereinstimmung mit Bildschirm-Steuerdaten, die einen
Befehl und/oder ein Parameter enthalten, die von einem Computer
(60) empfangen werden, einem Bildschirmspeicher (13) zum
Speichern der Bildschirmdaten, wobei die im
Bildschirmspeicher (13) gespeicherten Bildschirmdaten zum Zeichnen in
Übereinstimmung mit den Bildschirm-Steuerdaten verarbeitet
werden, eine Einrichtung (40) zum Umwandeln der aus dem
Bildschirmspeicher (13) gelesenen Bildschirmdaten in ein
Bildschirmsignal und eine Bildschirmeinheit (50) zum Darstellen
des Bildschirmsignals,
dadurch gekennzeichnet, daß
die Bildmuster-Verarbeitungsvorrichtung einem der
Ansprüche 1 bis 15 entspricht.
17. Bildverarbeitungsvorrichtung gemäß Anspruch 16, wobei
die Einrichtung (40) zum Umwandeln der Bildschirmdaten eine
Vielzahl von Parallel-Seriell-Wandlern (310, 420, 430, 440)
aufweist, wobei jeder Parallel-Seriell-Wandler ein Bit von
jedem Pixel eines Wortes der Bildschirmdaten parallel
empfängt, um ein Videosignal zu erzeugen.
18. Bildverarbeitungsvorrichtung gemäß Anspruch 17, wobei
die Einrichtung (40) zum Umwandeln der Bildschirmdaten weiter
eine Video-Schnittstelle (450) aufweist, die mit der Vielzahl
von Parallel-Seriell-Wandlern (410, 420, 430, 440) verbunden
ist, um Farb- und Digital-Analog-Umwandlungen mit den
Videosignalen, die von dem Parallel-Seriell-Wandlern empfangen
werden, auszuführen und das Ergebnissignal an die
Bildschirmeinheit (50) zu liefern.
19. Bildmuster-Verarbeitungsverfahren, das eine Bildmuster-
Verarbeitungsvorrichtung zum Gebrauch in Verbindung mit einem
Bildschirmspeicher (13) zum Speichern von Bildschirmdaten-
Wörtern und einer Einrichtung (40) zum Umwandeln des aus dem
Bildschirmspeicher ausgelesenen Bildschirmdaten-Wortes in ein
Bildschirmsignal zum Darstellen auf einer Bildschirmeinheit
oder zum Übertragen auf eine andere Einheit, wobei die im
Bildschirmspeicher gespeicherten Bildschirmdaten-Wörter durch
die Bildmuster-Verarbeitungsvorrichtung aktualisiert oder
verarbeitet werden, um in Übereinstimmung mit Bildschirm-
Steuerdaten (CDT), die einen Befehl und einen Parameter, die
von einem Computer abgeschickt werden, enthalten, zu
zeichnen,
dadurch gekennzeichnet, daß
jedes Bildschirmdaten-Wert eine erste vorbestimmte
Anzahl von Pixel enthält, wobei jedes Pixel durch eine zweite
vorbestimmte Anzahl von Bits dargestellt wird, wobei die
erste und zweite Anzahl in Übereinstimmung mit einer
Graphikbitmodus-Information, die in den Bildschirm-Steuerdaten (CDT)
enthalten ist, festgelegt sind, und, daß
beim Bildmuster-Verarbeitungsverfahren
eine Pixeladresse des Bildschirmdaten-Wortes in Reaktion
auf die Bildschirm-Steuerdaten (CDT) aus dem Computer (60)
berechnet wird, wobei jede Pixeladresse eine erste Gruppe von
Bits, die eine Wortadresse (MAD) des Bildschirmdaten-Wortes
im Bildschirmspeicher (13) kennzeichnen, und eine zweite
Gruppe von Bits (WAD), die die Pixelposition innerhalb des
Bildschirmdaten-Wortes kennzeichnen, enthält,
das Bildschirmdaten-Wort aus dem Bildschirmspeicher (13)
in Übereinstimmung mit einer ersten Gruppe von Bits (MAD)
einer Pixeladresse ausgelesen werden,
wenigstens ein Bit des Pixels, das durch die zweite
Gruppe der Bits der Pixeladresse bestimmt ist, verarbeitet
wird, und
das Wort der Bildschirmdaten mit dem verarbeiteten
wenigstens einen Bit in den Bildschirmspeicher (13) geschrieben
wird.
20. Bildmuster-Verarbeitungsverfahren gemäß Anspruch 19,
wobei in ein Register (3208) die erste Gruppe der Bits, die die
Adresse im Bildschirmspeicher (13) kennzeichnen, die zweite
Gruppe, die die Pixelposition innerhalb des Bildschirmdaten-
Wortes kennzeichnen und eine dritte Gruppe, die abhängig von
der Anzahl der Pixel pro Wort ist, Bits des Pixels
kennzeichnend, der für den Vorgang nicht relevant ist.
21. Verfahren gemäß Anspruch 19 oder 20, wobei ein Modus aus
einer Vielzahl von Betriebsmodi ausgewählt wird, wobei jeder
Betriebsmodus eine unterschiedliche Anzahl von Pixel pro Wort
der Bildschirmdaten und/oder eine unterschiedliche Anzahl von
Bits pro Pixel verwendet.
22. Verfahren gemäß einem der Ansprüche 19 bis 21, wobei
eine von zwei unterschiedlichen Farbinformationen in
Übereinstimmung mit auf einem Musterregister (220) ausgelesenen
Musterinformationen ausgewählt wird, um die Farbe eines Pixels
der Bildschirmdaten zu kennzeichnen.
23. Verfahren gemäß Anspruch 22, wobei eine Anzahl von Bits
per Pixel der Farbinformation größer ist als eine Anzahl von
Bits per Pixel der Musterinformation.
24. Verfahren gemäß Anspruch 22 oder 23, wobei die
Farbinformation aus einer Vielzahl von Bits per Pixel und die
Musterinformation aus einem einzigen Bit per Pixel besteht.
25. Verfahren gemäß einem der Ansprüche 19 bis 24, wobei
eine Vielzahl von Pixel gleichzeitig übertragen wird.
26. Verfahren gemäß Anspruch 25, wobei eine Verschiebgröße
auf der Grundlage einer Information zum Bestimmen einer
Pixelposition in einem Quellwort und einer Information zum
Bestimmen einer Pixelposition in einem Bestimmungswort
berechnet wird, wenn Bildschirmdaten zum Bildschirmspeicher (13)
übertragen werden sollen, und wobei eine Vielzahl von Bits
vielfach-verschoben wird.
27. Verfahren gemäß Anspruch 25 oder 26, wobei ein Modus aus
einer Vielzahl von Übertragungsmodi ausgewählt wird, wobei
jeder Modus eine unterschiedliche Anzahl von fortlaufenden
Pixel verwendet, und wobei die gewählte Anzahl von
fortlaufenden Pixel gleichzeitig übertragen wird.
28. Verfahren gemäß einem der Ansprüche 19 bis 27, wobei ein
Offset-Wert (n), der zu der Anzahl von Bits per Pixel in
Beziehung steht, festgehalten wird und wobei die physikalische
Adresse durch den Offset-Wert (n) modifiziert wird, wenn die
logische Adresse um 1 geändert ist.
29. Verfahren gemäß einem der Ansprüche 19 bis 28, wobei
Pixeladressen sequentiell berechnet werden.
30. Verfahren gemäß einem der Ansprüche 19 bis 29, wobei
eine logische Adresse, die eine Position eines Musters in bezug
auf einen Ursprungspunkt auf der Grundlage von Bildschirm-
Steuerdaten darstellt, geliefert wird und wobei eine
physikalische Adresse im Bildschirmspeicher (13) auf der Grundlage
der logischen Adresse berechnet wird.
31. Verfahren gemäß einem der Ansprüche 19 bis 30, wobei ein
Befehlscode, der in einem als Bildschirm-Steuerdaten
gelieferten Befehl enthalten ist, gespeichert wird, ein Teil des
Befehlscodes decodiert wird, um einen Betriebstyp, der für
eine laufende Koordinate ausgeführt werden soll, zu erzeugen,
Pixelkoordinaten im Bildschirmspeicher (13) auf der Grundlage
eines Steuersignals berechnet werden und eine Position im
Bildschirmspeicher auf der Grundlage der Koordinate bestimmt
wird.
32. Verfahren gemäß einem der Ansprüche 19 bis 31, wobei die
Einrichtung (40) zum Umwandeln der Bildschirmdaten eine
Vielzahl von Parallel-Seriell-Wandler (410, 420, 430, 440)
ent
hält, wobei jeder Parallel-Seriell-Wandler ein Bit von jedem
Pixel eines Wortes der Bildschirmdaten parallel empfängt, um
ein Videosignal zu erzeugen.
33. Verfahren gemäß Anspruch 32, wobei die Einrichtung (40)
zum Umwandeln der Bildschirmdaten weiter eine
Videoschnittstelle (450) enthält zum Ausführen von Farb- und
Digital-Analog-Umwandlungen der Videosignale, die von den
Parallel-Seriell-Wandlern (410, 420, 430, 440) empfangen werden, und zum
Liefern eines Ergebnissignals an die Bildschirmeinheit (50).
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP58246986A JPH06100911B2 (ja) | 1983-12-26 | 1983-12-26 | 画像データ処理装置及び方法 |
JP59027155A JPS60172085A (ja) | 1984-02-17 | 1984-02-17 | 図形処理装置 |
JP59120679A JPS61875A (ja) | 1984-06-14 | 1984-06-14 | 図形処理方法とその装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3486472D1 DE3486472D1 (de) | 1999-04-22 |
DE3486472T2 true DE3486472T2 (de) | 1999-11-25 |
Family
ID=27285682
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3486494T Expired - Lifetime DE3486494T2 (de) | 1983-12-26 | 1984-12-24 | Graphisches Musterverarbeitungsgerät |
DE8484116285T Expired - Lifetime DE3484297D1 (de) | 1983-12-26 | 1984-12-24 | Geraet zur verarbeitung von bild und graphik eines musters. |
DE3486472T Expired - Lifetime DE3486472T2 (de) | 1983-12-26 | 1984-12-24 | Graphisches Musterverarbeitungsgerät und Verfahren |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3486494T Expired - Lifetime DE3486494T2 (de) | 1983-12-26 | 1984-12-24 | Graphisches Musterverarbeitungsgerät |
DE8484116285T Expired - Lifetime DE3484297D1 (de) | 1983-12-26 | 1984-12-24 | Geraet zur verarbeitung von bild und graphik eines musters. |
Country Status (4)
Country | Link |
---|---|
US (9) | US4862150A (de) |
EP (3) | EP0383367B1 (de) |
KR (3) | KR970007247B1 (de) |
DE (3) | DE3486494T2 (de) |
Families Citing this family (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3486494T2 (de) * | 1983-12-26 | 2004-03-18 | Hitachi, Ltd. | Graphisches Musterverarbeitungsgerät |
US5265204A (en) * | 1984-10-05 | 1993-11-23 | Hitachi, Ltd. | Method and apparatus for bit operational process |
US5175816A (en) * | 1984-10-05 | 1992-12-29 | Hitachi, Ltd. | Method and apparatus for bit operational process |
US6552730B1 (en) * | 1984-10-05 | 2003-04-22 | Hitachi, Ltd. | Method and apparatus for bit operational process |
JPH0762794B2 (ja) | 1985-09-13 | 1995-07-05 | 株式会社日立製作所 | グラフイツク表示装置 |
US4752893A (en) * | 1985-11-06 | 1988-06-21 | Texas Instruments Incorporated | Graphics data processing apparatus having image operations with transparent color having a selectable number of bits |
US5294918A (en) * | 1985-11-06 | 1994-03-15 | Texas Instruments Incorporated | Graphics processing apparatus having color expand operation for drawing color graphics from monochrome data |
US5162784A (en) * | 1985-12-03 | 1992-11-10 | Texas Instruments Incorporated | Graphics data processing apparatus with draw and advance operation |
US5522082A (en) * | 1986-01-23 | 1996-05-28 | Texas Instruments Incorporated | Graphics display processor, a graphics display system and a method of processing graphics data with control signals connected to a central processing unit and graphics circuits |
JP2835719B2 (ja) * | 1986-07-14 | 1998-12-14 | 株式会社日立製作所 | 画像処理装置 |
US5053989A (en) * | 1986-08-27 | 1991-10-01 | Minolta Camera Kabushiki Kaisha | Digital image processing apparatus having a microprogram controller for reading microinstructions during a vacant period of the image processing circuit |
JP2542392B2 (ja) * | 1987-07-31 | 1996-10-09 | シャープ株式会社 | 文字描画装置 |
JP2506120B2 (ja) * | 1987-09-16 | 1996-06-12 | 株式会社日立製作所 | 画像表示方法 |
US5230042A (en) * | 1987-09-25 | 1993-07-20 | Minolta Camera Kabushiki Kaisha | Digital image processing apparatus |
CA1327851C (en) * | 1988-06-22 | 1994-03-15 | Amy S. Christopher | Reconfigurable printer |
US5148516A (en) * | 1988-08-30 | 1992-09-15 | Hewlett-Packard Company | Efficient computer terminal system utilizing a single slave processor |
US5148524A (en) * | 1988-11-29 | 1992-09-15 | Solbourne Computer, Inc. | Dynamic video RAM incorporating on chip vector/image mode line modification |
US5142637A (en) * | 1988-11-29 | 1992-08-25 | Solbourne Computer, Inc. | Dynamic video RAM incorporating single clock random port control |
USRE35680E (en) * | 1988-11-29 | 1997-12-02 | Matsushita Electric Industrial Co., Ltd. | Dynamic video RAM incorporating on chip vector/image mode line modification |
US5148523A (en) * | 1988-11-29 | 1992-09-15 | Solbourne Computer, Inc. | Dynamic video RAM incorporationg on chip line modification |
JP2739487B2 (ja) * | 1988-12-20 | 1998-04-15 | 株式会社日立製作所 | 描画処理装置及びその描画処理装置を用いた画像表示装置 |
US5091721A (en) * | 1988-12-22 | 1992-02-25 | Hughes Aircraft Company | Acoustic display generator |
US5198804A (en) * | 1989-07-17 | 1993-03-30 | Matsushita Electric Industrial Co., Ltd. | Video memory with write mask from vector or direct input |
US5329617A (en) * | 1989-07-23 | 1994-07-12 | Texas Instruments Incorporated | Graphics processor nonconfined address calculation system |
EP0411921B1 (de) * | 1989-08-02 | 1995-01-18 | Canon Kabushiki Kaisha | Bildverarbeitungsgerät |
US5151997A (en) * | 1989-08-10 | 1992-09-29 | Apple Computer, Inc. | Computer with adaptable video circuitry |
US5226114A (en) * | 1989-10-13 | 1993-07-06 | Massachusetts Institute Of Technology | Television pictures |
US5369744A (en) * | 1989-10-16 | 1994-11-29 | Hitachi, Ltd. | Address-translatable graphic processor, data processor and drawing method with employment of the same |
US5269003A (en) * | 1990-05-24 | 1993-12-07 | Apple Computer, Inc. | Memory architecture for storing twisted pixels |
FR2664999B1 (fr) * | 1990-07-23 | 1992-09-18 | Bull Sa | Dispositif d'entree sortie donnees pour l'affichage d'informations et procede mis en óoeuvre par un tel dispositif. |
JP3038878B2 (ja) * | 1990-10-25 | 2000-05-08 | ソニー株式会社 | 特殊効果装置 |
US5251298A (en) * | 1991-02-25 | 1993-10-05 | Compaq Computer Corp. | Method and apparatus for auxiliary pixel color management using monomap addresses which map to color pixel addresses |
CA2062200A1 (en) * | 1991-03-15 | 1992-09-16 | Stephen C. Purcell | Decompression processor for video applications |
KR100262438B1 (ko) * | 1991-05-08 | 2000-08-01 | 가나이 쓰도무 | 연산장치 및 이것을 사용한 비트필드조작 연산방법 |
US5313577A (en) * | 1991-08-21 | 1994-05-17 | Digital Equipment Corporation | Translation of virtual addresses in a computer graphics system |
US5321810A (en) * | 1991-08-21 | 1994-06-14 | Digital Equipment Corporation | Address method for computer graphics system |
US5581279A (en) * | 1991-12-23 | 1996-12-03 | Cirrus Logic, Inc. | VGA controller circuitry |
EP0586080B1 (de) * | 1992-07-31 | 1999-10-06 | Canon Kabushiki Kaisha | Bildverarbeitungsverfahren und -gerät |
DE69328399T2 (de) * | 1992-09-30 | 2000-10-19 | Hudson Soft Co. Ltd., Sapporo | Sprachdaten-Verarbeitung |
US5506693A (en) * | 1992-09-30 | 1996-04-09 | Harris Corporation | Addressing mechanism for interfacing spatially defined imagery data with sequential memory |
US5459485A (en) * | 1992-10-01 | 1995-10-17 | Hudson Soft Co., Ltd. | Image and sound processing apparatus |
US5815646A (en) * | 1993-04-13 | 1998-09-29 | C-Cube Microsystems | Decompression processor for video applications |
US5644336A (en) * | 1993-05-19 | 1997-07-01 | At&T Global Information Solutions Company | Mixed format video ram |
US6049331A (en) * | 1993-05-20 | 2000-04-11 | Hyundai Electronics America | Step addressing in video RAM |
US5550972A (en) * | 1993-06-30 | 1996-08-27 | Microsoft Corporation | Method and apparatus for efficient transfer of data to memory |
US5815137A (en) * | 1994-10-19 | 1998-09-29 | Sun Microsystems, Inc. | High speed display system having cursor multiplexing scheme |
JP3100304B2 (ja) * | 1995-03-08 | 2000-10-16 | キヤノン株式会社 | ドットパターン発生装置およびドットパターン発生方法 |
WO1996036037A1 (en) * | 1995-05-10 | 1996-11-14 | Cagent Technologies, Inc. | Video display system having by-the-line and by-the-pixel modification |
US5699498A (en) * | 1995-05-23 | 1997-12-16 | Cirrus Logic, Inc. | Technique and apparatus for color expansion into a non-aligned 24 bit RGB color-space format |
US5727139A (en) * | 1995-08-30 | 1998-03-10 | Cirrus Logic, Inc. | Method and apparatus for minimizing number of pixel data fetches required for a stretch operation of video images |
US6331856B1 (en) * | 1995-11-22 | 2001-12-18 | Nintendo Co., Ltd. | Video game system with coprocessor providing high speed efficient 3D graphics and digital audio signal processing |
JP3765931B2 (ja) * | 1998-10-15 | 2006-04-12 | 富士通株式会社 | バッファ制御方法及びバッファ制御装置 |
US6853385B1 (en) * | 1999-11-09 | 2005-02-08 | Broadcom Corporation | Video, audio and graphics decode, composite and display system |
US6636222B1 (en) * | 1999-11-09 | 2003-10-21 | Broadcom Corporation | Video and graphics system with an MPEG video decoder for concurrent multi-row decoding |
WO2000028518A2 (en) * | 1998-11-09 | 2000-05-18 | Broadcom Corporation | Graphics display system |
US6661422B1 (en) * | 1998-11-09 | 2003-12-09 | Broadcom Corporation | Video and graphics system with MPEG specific data transfer commands |
US7242414B1 (en) * | 1999-07-30 | 2007-07-10 | Mips Technologies, Inc. | Processor having a compare extension of an instruction set architecture |
US7346643B1 (en) * | 1999-07-30 | 2008-03-18 | Mips Technologies, Inc. | Processor with improved accuracy for multiply-add operations |
US6618048B1 (en) | 1999-10-28 | 2003-09-09 | Nintendo Co., Ltd. | 3D graphics rendering system for performing Z value clamping in near-Z range to maximize scene resolution of visually important Z components |
US6717577B1 (en) | 1999-10-28 | 2004-04-06 | Nintendo Co., Ltd. | Vertex cache for 3D computer graphics |
US7538772B1 (en) | 2000-08-23 | 2009-05-26 | Nintendo Co., Ltd. | Graphics processing system with enhanced memory controller |
US6636214B1 (en) | 2000-08-23 | 2003-10-21 | Nintendo Co., Ltd. | Method and apparatus for dynamically reconfiguring the order of hidden surface processing based on rendering mode |
US6700586B1 (en) | 2000-08-23 | 2004-03-02 | Nintendo Co., Ltd. | Low cost graphics with stitching processing hardware support for skeletal animation |
US7576748B2 (en) | 2000-11-28 | 2009-08-18 | Nintendo Co. Ltd. | Graphics system with embedded frame butter having reconfigurable pixel formats |
US6707458B1 (en) | 2000-08-23 | 2004-03-16 | Nintendo Co., Ltd. | Method and apparatus for texture tiling in a graphics system |
US7196710B1 (en) | 2000-08-23 | 2007-03-27 | Nintendo Co., Ltd. | Method and apparatus for buffering graphics data in a graphics system |
US6811489B1 (en) | 2000-08-23 | 2004-11-02 | Nintendo Co., Ltd. | Controller interface for a graphics system |
US7034791B1 (en) * | 2000-12-14 | 2006-04-25 | Gary Odom | Digital video display employing minimal visual conveyance |
FR2821947B1 (fr) * | 2001-03-12 | 2003-05-16 | Canon Kk | Procede et dispositif de validation de parametres definissant une image |
JP2003084751A (ja) * | 2001-07-02 | 2003-03-19 | Hitachi Ltd | 表示制御装置およびマイクロコンピュータならびにグラフィックシステム |
JP2003060886A (ja) * | 2001-08-09 | 2003-02-28 | Matsushita Electric Ind Co Ltd | 画像処理装置及び方法 |
JP2003066938A (ja) | 2001-08-24 | 2003-03-05 | Sharp Corp | 表示コントローラ、表示制御方法、および画像表示システム |
US8063916B2 (en) | 2003-10-22 | 2011-11-22 | Broadcom Corporation | Graphics layer reduction for video composition |
US7164561B2 (en) * | 2004-02-13 | 2007-01-16 | Sandisk Corporation | Voltage regulator using protected low voltage devices |
US20050270310A1 (en) * | 2004-06-03 | 2005-12-08 | Eric Jeffrey | Apparatuses and methods for incorporating a border within an image |
US20060119602A1 (en) * | 2004-12-07 | 2006-06-08 | Fisher Andrew J | Address based graphics protocol |
JP5024981B2 (ja) * | 2005-04-20 | 2012-09-12 | 株式会社東芝 | 医用画像データ変換装置 |
US20080155273A1 (en) * | 2006-12-21 | 2008-06-26 | Texas Instruments, Inc. | Automatic Bus Encryption And Decryption |
JP4795264B2 (ja) * | 2007-02-06 | 2011-10-19 | キヤノン株式会社 | 走査変換装置及び走査変換方法 |
JP4390818B2 (ja) * | 2007-03-30 | 2009-12-24 | 富士通テン株式会社 | 計測データ表示装置 |
JP4488042B2 (ja) * | 2007-08-14 | 2010-06-23 | セイコーエプソン株式会社 | 画像処理回路、表示装置及び印刷装置 |
JP4404116B2 (ja) * | 2007-08-14 | 2010-01-27 | セイコーエプソン株式会社 | 画像処理回路、表示装置及び印刷装置 |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS592905B2 (ja) * | 1976-08-31 | 1984-01-21 | 日本ビクター株式会社 | デイスプレイ装置 |
US4121283A (en) * | 1977-01-17 | 1978-10-17 | Cromemco Inc. | Interface device for encoding a digital image for a CRT display |
JPS53114617A (en) * | 1977-03-17 | 1978-10-06 | Toshiba Corp | Memory unit for picture processing |
US4201983A (en) * | 1978-03-02 | 1980-05-06 | Motorola, Inc. | Addressing circuitry for a vertical scan dot matrix display apparatus |
US4200867A (en) * | 1978-04-03 | 1980-04-29 | Hill Elmer D | System and method for painting images by synthetic color signal generation and control |
US4296476A (en) * | 1979-01-08 | 1981-10-20 | Atari, Inc. | Data processing system with programmable graphics generator |
JPS5631154A (en) * | 1979-08-23 | 1981-03-28 | Victor Co Of Japan Ltd | Memory device |
US4496944A (en) * | 1980-02-29 | 1985-01-29 | Calma Company | Graphics display system and method including associative addressing |
JPS5753784A (de) * | 1980-09-17 | 1982-03-30 | Sord Computer Syst | |
JPS5756885A (en) * | 1980-09-22 | 1982-04-05 | Nippon Electric Co | Video address control device |
GB2087694B (en) | 1980-11-05 | 1985-03-06 | Gen Electric Co Ltd | Electric circuit arrangements for digital data transmission systems |
US4514818A (en) * | 1980-12-04 | 1985-04-30 | Quantel Limited | Video image creation system which simulates drafting tool |
JPS6041378B2 (ja) * | 1981-01-28 | 1985-09-17 | 富士通株式会社 | 画像記憶装置 |
US4454593A (en) * | 1981-05-19 | 1984-06-12 | Bell Telephone Laboratories, Incorporated | Pictorial information processing technique |
US4439760A (en) * | 1981-05-19 | 1984-03-27 | Bell Telephone Laboratories, Incorporated | Method and apparatus for compiling three-dimensional digital image information |
US4408200A (en) * | 1981-08-12 | 1983-10-04 | International Business Machines Corporation | Apparatus and method for reading and writing text characters in a graphics display |
US4437093A (en) * | 1981-08-12 | 1984-03-13 | International Business Machines Corporation | Apparatus and method for scrolling text and graphic data in selected portions of a graphic display |
EP0073916B2 (de) * | 1981-08-12 | 1992-01-29 | International Business Machines Corporation | Steuereinrichtung zur individuellen Kontrolle der Farben der Zeichenkontur und des Hintergrundes eines auf einem Farbfernsehempfänger oder einem Monitor angezeigten Zeichens |
JPS5850589A (ja) * | 1981-09-21 | 1983-03-25 | 日本電気株式会社 | 表示処理装置 |
US4484192A (en) * | 1981-12-17 | 1984-11-20 | The Bendix Corporation | Moving map display |
EP0085480A3 (de) * | 1982-01-13 | 1986-01-08 | Europel Systems (Electronics) Ltd. | Video-Anzeigesysteme |
US4490797A (en) * | 1982-01-18 | 1984-12-25 | Honeywell Inc. | Method and apparatus for controlling the display of a computer generated raster graphic system |
US4590465A (en) * | 1982-02-18 | 1986-05-20 | Henry Fuchs | Graphics display system using logic-enhanced pixel memory cells |
JPS58143381A (ja) * | 1982-02-19 | 1983-08-25 | 大日本スクリ−ン製造株式会社 | 図形表示装置における発光強度の制御方法および装置 |
JPS58159184A (ja) * | 1982-03-17 | 1983-09-21 | Nec Corp | 画像回転装置 |
US4509043A (en) * | 1982-04-12 | 1985-04-02 | Tektronix, Inc. | Method and apparatus for displaying images |
JPS58187995A (ja) * | 1982-04-28 | 1983-11-02 | 株式会社日立製作所 | 画像表示装置 |
US4667305A (en) * | 1982-06-30 | 1987-05-19 | International Business Machines Corporation | Circuits for accessing a variable width data bus with a variable width data field |
DD208499A3 (de) * | 1982-10-26 | 1984-05-02 | Adw Ddr | Mehrdimensionaler paralleler speicher |
US4533910A (en) * | 1982-11-02 | 1985-08-06 | Cadtrak Corporation | Graphics display system with viewports of arbitrary location and content |
GB2130855B (en) * | 1982-11-03 | 1986-06-04 | Ferranti Plc | Information display system |
JPS5995669A (ja) * | 1982-11-25 | 1984-06-01 | Toshiba Corp | 図形処理装置 |
US4691295A (en) * | 1983-02-28 | 1987-09-01 | Data General Corporation | System for storing and retreiving display information in a plurality of memory planes |
US4668947A (en) * | 1983-08-11 | 1987-05-26 | Clarke Jr Charles J | Method and apparatus for generating cursors for a raster graphic display |
JPS6057457A (ja) * | 1983-09-07 | 1985-04-03 | Ricoh Co Ltd | Dma装置 |
US4622546A (en) * | 1983-12-23 | 1986-11-11 | Advanced Micro Devices, Inc. | Apparatus and method for displaying characters in a bit mapped graphics system |
DE3486494T2 (de) * | 1983-12-26 | 2004-03-18 | Hitachi, Ltd. | Graphisches Musterverarbeitungsgerät |
US4663735A (en) * | 1983-12-30 | 1987-05-05 | Texas Instruments Incorporated | Random/serial access mode selection circuit for a video memory system |
US4779210A (en) * | 1984-05-02 | 1988-10-18 | Hitachi Engineering, Co. Ltd. | Graphic processing apparatus |
-
1984
- 1984-12-24 DE DE3486494T patent/DE3486494T2/de not_active Expired - Lifetime
- 1984-12-24 US US06/686,039 patent/US4862150A/en not_active Expired - Lifetime
- 1984-12-24 EP EP90106622A patent/EP0383367B1/de not_active Expired - Lifetime
- 1984-12-24 EP EP98112287A patent/EP0989536B1/de not_active Expired - Lifetime
- 1984-12-24 EP EP84116285A patent/EP0146961B1/de not_active Expired
- 1984-12-24 DE DE8484116285T patent/DE3484297D1/de not_active Expired - Lifetime
- 1984-12-24 DE DE3486472T patent/DE3486472T2/de not_active Expired - Lifetime
- 1984-12-26 KR KR1019840008375A patent/KR970007247B1/ko not_active IP Right Cessation
-
1989
- 1989-05-11 US US07/350,254 patent/US5043713A/en not_active Expired - Lifetime
-
1991
- 1991-07-29 US US07/736,780 patent/US5332995A/en not_active Expired - Lifetime
- 1991-07-29 US US07/737,398 patent/US5300947A/en not_active Expired - Lifetime
-
1993
- 1993-08-11 US US08/104,572 patent/US5631671A/en not_active Expired - Fee Related
-
1994
- 1994-08-12 KR KR1019940019887A patent/KR950012931B1/ko not_active IP Right Cessation
- 1994-08-12 KR KR1019940019886A patent/KR950013229B1/ko not_active IP Right Cessation
-
1995
- 1995-04-28 US US08/430,853 patent/US5631668A/en not_active Expired - Lifetime
- 1995-04-28 US US08/430,851 patent/US5657045A/en not_active Expired - Lifetime
- 1995-04-28 US US08/430,848 patent/US5638095A/en not_active Expired - Lifetime
-
2001
- 2001-08-21 US US09/932,895 patent/US6492992B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP0989536B1 (de) | 2003-05-07 |
KR950013229B1 (ko) | 1995-10-26 |
EP0383367B1 (de) | 1999-03-17 |
EP0146961A3 (en) | 1987-06-16 |
KR970007247B1 (ko) | 1997-05-07 |
US5332995A (en) | 1994-07-26 |
US6492992B2 (en) | 2002-12-10 |
KR850004826A (ko) | 1985-07-27 |
EP0383367A2 (de) | 1990-08-22 |
US5300947A (en) | 1994-04-05 |
DE3486494T2 (de) | 2004-03-18 |
US5631671A (en) | 1997-05-20 |
US5638095A (en) | 1997-06-10 |
EP0146961B1 (de) | 1991-03-20 |
EP0146961A2 (de) | 1985-07-03 |
US5631668A (en) | 1997-05-20 |
DE3484297D1 (de) | 1991-04-25 |
US5043713A (en) | 1991-08-27 |
EP0383367A3 (de) | 1993-05-19 |
DE3486494D1 (de) | 2003-06-12 |
KR950012931B1 (ko) | 1995-10-23 |
EP0989536A1 (de) | 2000-03-29 |
US20010052903A1 (en) | 2001-12-20 |
US4862150A (en) | 1989-08-29 |
US5657045A (en) | 1997-08-12 |
DE3486472D1 (de) | 1999-04-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3486472T2 (de) | Graphisches Musterverarbeitungsgerät und Verfahren | |
DE68919024T2 (de) | Verfahren und Prozessor zur Abtastumsetzung. | |
DE68925399T2 (de) | Verfahren und Gerät zur Bildtransformation | |
DE3853664T2 (de) | Farbzellentextur. | |
DE68924389T2 (de) | Verfahren und Einrichtung zur Anzeige einer Vielzahl von graphischen Bildern. | |
DE3853336T2 (de) | Rechnergraphikgerät zur Verarbeitung von Beleuchtungsmodellinformation. | |
DE3851644T2 (de) | Graphischer Anzeigeregler mit Begrenzungsfunktion. | |
DE69722859T2 (de) | Formatumwandlung von Datenwörtern graphischer Bilder | |
DE69722535T2 (de) | Verfahren und Gerät zum Schaffen von Texturdaten | |
US5175805A (en) | Method and apparatus for sequencing composite operations of pixels | |
US5771047A (en) | Graphics computer | |
DE3876887T2 (de) | Erzeugung von linien in einem anzeigesystem. | |
DE69112434T2 (de) | Kurvengenerator. | |
DE3750622T2 (de) | System zur Verarbeitung von graphischen Daten. | |
DE3854073T2 (de) | Verfahren und Gerät zur Wegnahme von verborgenen Flächen. | |
US6677950B1 (en) | Graphics computer | |
DE3876212T2 (de) | Verfahren und einrichtung zur darstellung dreidimensionaler farbdaten in einem eindimensionalen bezugssystem. | |
KR950007531B1 (ko) | 도형처리시스템 및 도형처리방법 | |
DE19619464A1 (de) | Datenbusprotokoll für ein Computergraphiksystem | |
DE3751057T2 (de) | Verfahren zur Interpolierung von Pixelwerten. | |
EP1291820B1 (de) | Verfahren und Vorrichtung zur Transformation eines Objektbildes | |
DE4227816A1 (de) | Linienbild-erzeugungsvorrichtung | |
JPH0628486A (ja) | 画像処理装置 | |
JPH06348855A (ja) | 描画プロセッサとその直線発生並列処理方法及びグラフィックボード,cadシステム |