DE112004002817T5 - Bildverarbeitungsvorrichtung und Graphikspeichereinheit - Google Patents
Bildverarbeitungsvorrichtung und Graphikspeichereinheit Download PDFInfo
- Publication number
- DE112004002817T5 DE112004002817T5 DE112004002817T DE112004002817T DE112004002817T5 DE 112004002817 T5 DE112004002817 T5 DE 112004002817T5 DE 112004002817 T DE112004002817 T DE 112004002817T DE 112004002817 T DE112004002817 T DE 112004002817T DE 112004002817 T5 DE112004002817 T5 DE 112004002817T5
- Authority
- DE
- Germany
- Prior art keywords
- image data
- layer
- mask
- memory access
- section
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/395—Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
- G09G5/397—Arrangements specially adapted for transferring the contents of two or more bit-mapped memories to the screen simultaneously, e.g. for mixing or overlay
-
- 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/14—Display of multiple viewports
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Controls And Circuits For Display Device (AREA)
- Digital Computer Display Output (AREA)
- Image Processing (AREA)
Abstract
eine Bilddatenlesesektion zum Lesen der Bilddaten aus der Vielzahl von Rahmenpuffern, denen Transmissionsattribute zugeordnet sind, oder Fenstern, die zu der Vielzahl von Rahmenpuffern gehören und denen Transmissionsattribute zugeordnet sind, durch Scannen;
eine Maskeninformationsspeichersektion zum Speichern von Maskeninformationen für Speicherzugriffsmaskenbereiche, die auf der Vielzahl von Rahmenpuffern oder den Fenstern definiert sind und denen unabhängige Transmissionsattribute zugeordnet sind;
eine Maskenbereich-Innen/Außen-Bestimmungssektion zum Bestimmen, unter Bezugnahme auf die Maskeninformationen, ob Bilddaten, die gerade gescant werden, in einem der Speicherzugriffsmaskenbereiche liegen; und
eine Überlagerungsprozesssektion zum Ausführen, falls die Bilddaten, die gerade gescant werden, in einem Speicherzugriffsmaskenbereich liegen, eines Überlagerungsprozesses gemäß einem Transmissionsattribut, das dem Speicherzugriffsmaskenbereich zugeordnet ist, ungeachtet der Transmissionsattribute, die der Vielzahl von Rahmenpuffern oder den Fenstern zugeordnet sind.
Description
- TECHNISCHES GEBIET
- Diese Erfindung betrifft eine Bildverarbeitungsvorrichtung und eine Graphikspeichereinheit und, im Besonderen, eine Bildverarbeitungsvorrichtung zum Lesen von Bilddaten, die in einer Vielzahl von Rahmenpuffern gespeichert sind, von denen jeder einer Schicht entspricht, und zum Überlagern und Anzeigen der Bilddaten und eine Graphikspeichereinheit zum Speichern der Bilddaten.
- HINTERGRUNDTECHNIK
- Herkömmliche Techniken zum Überlagern einer Vielzahl von Fenstern und Anzeigen derer an einer Anzeigeeinheit werden im Wesentlichen in die folgenden zwei Verfahren eingeteilt. Ein erstes Verfahren besteht darin, ein Bild für jedes Fenster in einen Einzelschicht-Rahmenpuffer zu zeichnen oder zu kopieren, der aus einem Einzelpuffer und einem Doppelpuffer gebildet ist, Farben in das Bild zu schreiben, das Resultat zu lesen und es an eine Anzeigeeinheit auszugeben. Dieses Verfahren wird in Fenstersystemen auf Personalcomputern und Arbeitsplatzstationen, Videospielmaschinen und dergleichen eingesetzt. Ein zweites Verfahren besteht darin, Bilddaten, die in einem Rahmenpuffer gespeichert sind, der einer Vielzahl von Schichten entspricht und der zum Beispiel in einem Graphikspeicher gesichert ist, zu lesen und zu überlagern und sie an eine Anzeigeeinheit auszugeben. Dieses Verfahren wird in Autonavigationssystemen, Anzeigesystemen, die in eingebauten Systemen wie zum Beispiel in Einrichtungen zur gewerblichen Verwendung enthalten sind, und dergleichen eingesetzt.
- Auch wenn ein Einzelschicht-Rahmenpuffer, der in einem Personalcomputer oder einer Arbeitsplatzstation enthalten ist, wo das erste Verfahren zum Einsatz kommt, eine Vielzahl von Fenstern speichert, sind diese Fenster gewöhnlich opak und voneinander unabhängig. Daher kann lediglich durch automatisches Detektieren von Bereichen, in denen sich zwei Fenster überlappen, die Funktion zum Unterdrücken des sinnlosen Zeichnens von Pixeln, die durch das Fenster der oberen Schicht verdeckt werden und die auf dem Fenster der unteren Schicht nicht sichtbar sind, realisiert werden. Zusätzlich muss gewöhnlich jeder Rahmen in einer 3-D-CG neu gezeichnet werden. Auch wenn ein Menü, ein Spielstand oder dergleichen semitransparent an einer Videospielmaschine obenauf angezeigt wird, ist deshalb das Verfahren zum Kopieren jedes Rahmens eines Fensters in einen Einzelschicht-Rahmenpuffer und Synthetisieren dessen nicht sinnlos.
- In einem Autonavigationssystem, in dem das zweite Verfahren eingesetzt wird, sind andererseits Fälle nicht selten, bei denen ein opaker Bereich, ein transparenter Bereich und ein semitransparenter Bereich in einem Fenster vorhanden sind. Zusätzlich kann ein Fenster, das zu einem Rahmenpuffer einer unteren Schicht gehört, durch eine obere Schicht hindurch gesehen werden, so dass Pixel auf dem Fenster der unteren Schicht aus einem Graphikspeicher ohne Auslassung gelesen werden müssen.
- Mit einem Inhalt wie etwa einer zweidimensionalen Karte wird kein Rahmen neu gezeichnet und wird oft die Technik zum Wiederverwenden vieler Rahmen durch Scrollen eines gezeichneten Bildschirms genutzt. Falls das Verfahren zum Kopieren jedes Rahmens eines Fensters in einen Einzelschicht-Rahmenpuffer und Synthetisieren dessen zum Einsatz kommt, kann ein Bildschirm nicht wiederverwendet werden. Deshalb kommt die Technik zum Verteilen von individuellen Fenstern unter Rahmenpuffern in verschiedenen Schichten, Ausführen des Zeichnens und Scrollens gemäß Schichten und Überlagern und Farbmischen jeder Schicht aufseiten der Graphik-LSI (Großintegrationsschaltung) direkt vor dem Anzeigen an einer Anzeigeeinheit zum Einsatz.
- Ferner wird bei dem zweiten Verfahren die Technik zum Verleihen des Attributs "transparent", "opak" oder "semitransparent" oder eines Transmissionswertes gemäß Rahmenpuffern in verschiedenen Schichten oder Fenstern und Umschalten eines Überlagerungs- und Farbmischverfahrens gemäß Attributen oder Transmissionswerten offenbart (siehe zum Beispiel Patentdokument 1). Die Technik zum Umschalten des Attributs "transparent", "opak" oder "semitransparent" oder eines Transmissionswertes gemäß Pixeln von jeder Schicht und zum Ausführen eines geschlossenen Überlagerungs- und Farbmischprozesses, wie etwa einer Gradation, wird auch offenbart (siehe zum Beispiel Patentdokument 2).
Patendokument 1
Japanische ungeprüfte Patentveröffentlichung
Nr. 4-45487
Patendokument 2
Japanische ungeprüfte Patentveröffentlichung
Nr. 5-225328 - Jedoch kann ein Bild in einem Fenster, das auf einer oberen Schicht angeordnet ist, zum Beispiel einen opaken Bereich, einen transparenten Bereich und einen semitransparenten Bereich enthalten. Mit der Technik zum Einstellen des gleichförmigen Transmissionsattributs "opak", "transparent" oder "semitransparent" gemäß Fenstern muss das Transmissionsattribut des Fensters auf "semitransparent" eingestellt werden, um den semitransparenten Bereich richtig anzuzeigen. Obwohl es nicht notwendig ist, Pixel auf einer unteren Schicht zu lesen, die Pixelkoordinaten in dem opaken Bereich entsprechen, der in dem Bild in dem Fenster enthalten ist, das auf der oberen Schicht angeordnet ist, werden diese sinnlosen Pixel als Resultat uneingeschränkt gelesen. Umgekehrt sollten nur Pixel auf der unteren Schicht gelesen werden, die Pixelkoordinaten in dem transparenten Bereich entsprechen, der in dem Bild in dem Fenster enthalten ist, das auf der oberen Schicht angeordnet ist. Obwohl es nicht nötig ist, Pixel in dem transparenten Bereich zu lesen, der in dem Bild in dem Fenster enthalten ist, das auf der oberen Schicht angeordnet ist, werden diese sinnlosen Pixel uneingeschränkt gelesen.
- Mit der Technik zum Einstellen des Transmissionsattributs "opak", "transparent" oder "semitransparent" oder eines Transmissionswertes gemäß Pixeln muss ein Transmissionsattribut oder ein Transmissionswert bei immer einem Pixel uneingeschränkt bestimmt werden, ungeachtet der Verteilung des opaken Bereichs, des transparenten Bereichs und des semitransparenten Bereichs in dem Bild in dem Fenster, das auf der oberen Schicht angeordnet ist. Obwohl es nicht nötig ist, die Pixel auf der unteren Schicht zu lesen, die den Pixelkoordinaten in dem opaken Bereich entsprechen, der in dem Bild in dem Fenster enthalten ist, das auf der oberen Schicht angeordnet ist, werden als Resultat diese sinnlosen Pixel uneingeschränkt gelesen. Umgekehrt sollten nur Pixel auf der unteren Schicht gelesen werden, die Pixelkoordinaten in dem transparenten Bereich entsprechen, der in dem Bild in dem Fenster enthalten ist, das auf der oberen Schicht angeordnet ist. Obwohl es nicht nötig ist, Pixel in dem transparenten Bereich zu lesen, der in dem Bild in dem Fenster enthalten ist, das auf der oberen Schicht angeordnet ist, werden diese sinnlosen Pixel uneingeschränkt gelesen.
- OFFENBARUNG DER ERFINDUNG
- Die vorliegende Erfindung wurde unter den oben beschriebenen Umständen des allgemeinen Standes der Technik gemacht. Eine Aufgabe der vorliegenden Erfindung ist das Vorsehen einer Bildverarbeitungsvorrichtung, die den sinnlosen Speicherzugriff auf eine Graphikspeichereinheit reduzieren kann.
- Um die obigen Probleme zu lösen, ist bei der vorliegenden Erfindung, wie in
1 gezeigt, eine Bildverarbeitungsvorrichtung10 vorgesehen, zum Lesen von Bilddaten, die in einer Vielzahl von Rahmenpuffern gespeichert sind, von denen jeder einer Schicht entspricht, und zum Überlagern und Anzeigen der Bilddaten, mit einer Bilddatenlesesektion11 zum Lesen der Bilddaten aus Rahmenpuffern21-1 ,21-2 und21-3 , denen Transmissionsattribute zugeordnet sind, oder Fenstern22-1 ,22-2 und22-3 , die zu den Rahmenpuffern21-1 ,21-2 bzw.21-3 gehören und denen Transmissionsattribute zugeordnet sind, durch Scannen; einer Maskeninformationsspeichersektion12 zum Speichern von Maskeninformationen für Speicherzugriffsmaskenbereiche23a ,23b ,23c und23d , die auf den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 definiert sind und denen unabhängige Transmissionsattribute zugeordnet sind; einer Maskenbereich-Innen/Außen-Bestimmungssektion13 zum Bestimmen, unter Bezugnahme auf die Maskeninformationen, ob Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich23a ,23b ,23c oder23d liegen; und einer Überlagerungsprozesssektion14 zum Ausführen eines Überlagerungsprozesses gemäß dem Transmissionsattribut, das dem Speicherzugriffsmaskenbereich23a ,23b ,23c oder23d zugeordnet ist, ungeachtet der Transmissionsattribute, die den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 zugeordnet sind, falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich23a ,23b ,23c oder23d liegen. - Wenn unter Einsatz der obigen Struktur die Bilddatenlesesektion
11 Bilddaten aus einem der Rahmenpuffer21-1 ,21-2 und21-3 oder aus einem der Fenster22-1 ,22-2 und22-3 liest, bestimmt die Maskenbereich-Innen/Außen-Bestimmungssektion13 unter Bezugnahme auf die Maskeninformationen, die in der Maskeninformationsspeichersektion12 gespeichert sind, ob die Bilddaten (Pixel24a ,24b ,25a ,25b ,25c ,26a und26b , die in1 gezeigt sind), die gerade gescant werden, in dem Speicherzugriffsmaskenbereich23a ,23b ,23c oder23d liegen. Falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich23a ,23b ,23c oder23d liegen, führt dann die Überlagerungsprozesssektion14 einen Überlagerungsprozess gemäß dem Transmissionsattribut aus, das dem Speicherzugriffsmaskenbereich23a ,23b ,23c oder23d zugeordnet ist, ungeachtet der Transmissionsattribute, die den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 zugeordnet sind. - Bei der vorliegenden Erfindung wird ein Speicherzugriffsmaskenbereich verwendet, der auf einem Rahmenpuffer oder einem Fenster definiert ist und dem ein unabhängiges Transmissionsattribut zugeordnet ist. Wenn ein Pixel, das gerade gescant wird, in dem Speicherzugriffsmaskenbereich liegt, wird ein Überlagerungsprozess nicht unter Verwendung des Rahmenpuffers oder des Fensters ausgeführt, sondern unter Verwendung des Transmissionsattributs, das dem Speicherzugriffsmaskenbereich zugeordnet ist. Daher kann ein Speicherzugriff auf nur einen spezifischen Bereich begrenzt werden. Als Resultat kann der sinnlose Speicherzugriff reduziert werden.
- Die obigen und andere Ziele, Merkmale und Vorteile der vorliegenden Erfindung gehen aus der folgenden Beschreibung in Verbindung mit den beiliegenden Zeichnungen hervor, die bevorzugte Ausführungsformen der vorliegenden Erfindung beispielhaft zeigen.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist eine Ansicht, die die Prinzipien zeigt, die einer Bildverarbeitungsvorrichtung und einer Graphikspeichereinheit gemäß einer Ausführungsform der vorliegenden Erfindung zugrunde liegen. -
2 zeigt ein Beispiel für die Struktur eines Bildverarbeitungssystems. -
3 ist eine schematische Ansicht, die ein Beispiel für Bilddaten zeigt, die in einem Rahmenpuffer einer ersten Schicht gespeichert sind. -
4 ist eine schematische Ansicht, die ein Beispiel für Bilddaten zeigt, die in einem Rahmenpuffer einer zweiten Schicht gespeichert sind. -
5 ist eine schematische Ansicht, die ein Beispiel für Bilddaten zeigt, die in einem Rahmenpuffer einer dritten Schicht gespeichert sind. -
6 ist eine schematische Ansicht, die ein Bild zeigt, das erhalten wird, indem die Bilddaten überlagert werden, die in den Rahmenpuffern der ersten Schicht, der zweiten Schicht und der dritten Schicht gespeichert sind. -
7 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der ersten Schicht gespeichert sind, und eines Maskenbereichs zeigt. -
8 zeigt Maskeninformationen, die in einer Maskeninformationsspeichersektion der ersten Schicht gespeichert sind. -
9 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der zweiten Schicht gespeichert sind, und von Maskenbereichen zeigt. -
10 zeigt Maskeninformationen, die in einer Maskeninformationsspeichersektion der zweiten Schicht gespeichert sind. -
11 ist ein Flussdiagramm, das den gesamten Prozess zeigt, der durch eine Graphik-LSI ausgeführt wird. -
12 ist ein Flussdiagramm, das die Details eines Überlagerungsprozesses zeigt. -
13 ist eine Ansicht zum Beschreiben eines konkreten Beispiels eines Maskenbereich-Innen/Außen-Bestimmungsprozesses und eines Transmissionsattributsbestimmungsprozesses, die an einem Pixel ausgeführt werden. -
14 zeigt das Resultat der Bestimmung, die durch eine Maskensteuersektion vorgenommen wurde. -
15 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der ersten Schicht gespeichert sind, und von Maskenbereichen zeigt, von denen sich zwei überlappen. -
16 zeigt Maskeninformationen, die in der Maskeninformationsspeichersektion der ersten Schicht gespeichert sind. -
17 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der zweiten Schicht gespeichert sind, und von Maskenbereichen zeigt, von denen sich zwei überlappen oder die sich überlappen. -
18 zeigt Maskeninformationen, die in der Maskeninformationsspeichersektion der zweiten Schicht gespeichert sind. -
19 ist ein Flussdiagramm, das die Details eines Überlagerungsprozesses zeigt, der im Falle einer Vielzahl von sich überlappenden Maskenbereichen ausgeführt wird. -
20 ist ein Flussdiagramm, das die Details eines Maskenprioritätsbestimmungsprozesses zeigt. -
21 ist eine Ansicht zum Beschreiben eines konkreten Beispiels für einen Maskenbereich-Innen/Außen-Bestimmungsprozess und einen Prioritätsbestimmungsprozess, die an einem Pixel ausgeführt werden, und eines konkreten Beispiels für das Resultat der Transmissionsattributsbestimmung, die an dem Pixel vorgenommen wird. -
22 zeigt das Resultat der Bestimmung, die durch die Maskensteuersektion vorgenommen wurde. -
23 ist ein Flussdiagramm, das die Details eines Überlagerungsprozesses zeigt, der unter Verwendung der Funktion zum Detektieren einer effektiven untersten Schicht ausgeführt wird. -
24 ist ein Flussdiagramm, das einen Überlagerungsprozess zeigt, der unter Verwendung einer effektiven untersten Schicht und von Maskenbereichen ausgeführt wird. -
25 ist ein Flussdiagramm, das die Details eines Maskenprioritätsbestimmungsprozesses und eines Detektionsprozesses einer effektiven untersten Schicht zeigt. -
26 ist ein Flussdiagramm, das die Details eines Farbmischprozesses zeigt. - BESTER MODUS ZUM AUSFÜHREN DER ERFINDUNG
- Unter Bezugnahme auf die Zeichnungen werden nun Ausführungsformen der vorliegenden Erfindung eingehend beschrieben.
-
1 ist eine Ansicht, die die Prinzipien zeigt, die einer Bildverarbeitungsvorrichtung und einer Graphikspeichereinheit gemäß einer Ausführungsform der vorliegenden Erfindung zugrunde liegen. - Die Bildverarbeitungsvorrichtung
10 gemäß einer Ausführungsform der vorliegenden Erfindung liest Bilddaten (im Folgenden auch als "Bilddaten für ein Pixel" oder "Pixel" bezeichnet), die in den Rahmenpuffern21-1 ,21-2 und21-3 in einer Graphikspeichereinheit20 wie etwa einem Videospeicher mit wahlfreiem Zugriff (VRAM) gespeichert sind, von denen jeder einer Schicht entspricht, und überlagert die Bilddaten und zeigt sie an. Die Bildverarbeitungsvorrichtung10 umfasst die Bilddatenlesesektion11 , die Maskeninformationsspeichersektion12 , die Maskenbereich-Innen/Außen-Bestimmungssektion13 und die Überlagerungsprozesssektion14 . - Die Bilddatenlesesektion
11 liest Bilddaten aus den Rahmenpuffern21-1 ,21-2 und21-3 , denen Transmissionsattribute wie "transparent", "semitransparent" und "opak" zugeordnet sind, oder den Fenstern22-1 ,22-2 und22-3 , die zu den Rahmenpuffern21-1 ,21-2 bzw.21-3 gehören und denen Transmissionsattribute wie "transparent", "semitransparent" oder "opak" zugeordnet sind, durch Scannen. - Die Fenster
22-1 ,22-2 und22-3 sind Bereiche, die kleiner als Bildschirmbereiche sind und in den Rahmenpuffern21-1 ,21-2 und21-3 gespeichert sind. Gleichförmige Transmissionsattribute werden gemäß Fenstern festgelegt, oder Transmissionsattribute werden gemäß Pixeln festgelegt. Bei diesem Beispiel enthält jede Schicht ein Fenster. Die Anzahl von Fenstern in jeder Schicht kann jedoch größer oder kleiner als eins sein. Um die Beschreibung zu vereinfachen, entspricht zusätzlich jeder der Rahmenpuffer21-1 ,21-2 und21-3 einer Schicht und sind drei Schichten vorhanden. Die Anzahl von Schichten kann jedoch zwei oder größer als drei sein. - Die Maskeninformationsspeichersektion
12 speichert Maskeninformationen für die Speicherzugriffsmaskenbereiche (im Folgenden kurz als "Maskenbereiche" bezeichnet)23a ,23b ,23c und23d , die auf den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 definiert sind und denen unabhängige Transmissionsattribute zugeordnet sind. Mit Sicherheit kann gesagt werden, dass jeder der Maskenbereiche23a ,23b ,23c und23d ein Bereich in Bilddaten auf einer Schicht mit demselben Transmissionsattribut ist. - Die Maskenbereiche
23a ,23b ,23c und23d sind auf den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 definiert. In einem Fenster kann mehr als ein Maskenbereich angeordnet sein. Maskeninformationen enthalten die Transmissionsattribute, die Größen, die Positionen, die Priorität (später beschrieben) der Maskenbereiche23a ,23b ,23c und23d . Diese Maskeninformationen sind in der Maskeninformationsspeichersektion12 gespeichert, bevor die Bild verarbeitungsvorrichtung10 Bilddaten aus den Rahmenpuffern21-1 ,21-2 und21-3 liest. - Die Maskenbereich-Innen/Außen-Bestimmungssektion
13 bezieht sich auf die Maskeninformationen und bestimmt, ob die Bilddaten, die durch die Bilddatenlesesektion11 gerade gescant werden, in dem Maskenbereich23a ,23b ,23c oder23d liegen. - Falls die Bilddaten, die gerade gescant werden, in dem Maskenbereich
23a ,23b ,23c oder23d liegen, führt dann die Überlagerungsprozesssektion14 einen Überlagerungsprozess gemäß dem Transmissionsattribut aus, das dem Maskenbereich23a ,23b ,23c oder23d zugeordnet ist, ungeachtet der Transmissionsattribute, die den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 zugeordnet sind. Falls die Bilddaten, die gerade gescant werden, außerhalb der Maskenbereiche23a ,23b ,23c und23d liegen, führt die Überlagerungsprozesssektion14 dann einen Überlagerungsprozess gemäß den Transmissionsattributen der Rahmenpuffer21-1 ,21-2 und21-3 oder der Fenster22-1 ,22-2 und22-3 aus, zu denen die gelesenen Bilddaten gehören. Daten, die durch Ausführen des Überlagerungsprozesses erhalten werden, werden an eine Anzeigeeinheit30 ausgegeben und an ihr angezeigt. Informationen (nicht gezeigt), die die Transmissionsattribute, die Größen, die Positionen und die Überlagerungsordnung der Rahmenpuffer21-1 ,21-2 und21-3 oder der Fenster22-1 ,22-2 und22-3 enthalten, werden in der Bildverarbeitungsvorrichtung10 im voraus gespeichert. - Nun wird die Operation der Bildverarbeitungsvorrichtung
10 beschrieben. - Es folgen Beschreibungen zu dem Rahmenpuffer
21-1 (erste Schicht), dem Rahmenpuffer21-2 (zweite Schicht) und dem Rahmenpuffer21-3 (dritte Schicht) als höchste Schicht, mittlere Schicht bzw. unterste Schicht. - Es wird angenommen, dass die Transmissionsattribute der Rahmenpuffer
21-1 und21-2 gleichförmig und transparent sind und dass das Transmissionsattribut des Rahmenpuffers21-3 gleichförmig und opak ist. Es wird angenommen, dass die Transmissionsattribute der Fenster22-1 ,22-2 und22-3 opak sind. Zusätzlich wird angenommen, dass die Maskenbereiche23a ,23b ,23c und23d transparent, semitransparent, opak bzw. opak sind. - Wenn die Bilddatenlesesektion
11 Bilddaten aus den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 liest, nimmt die Maskenbereich-Innen/Rußen-Bestimmungssektion13 Bezug auf die Maskeninformationen, die in der Maskeninformationsspeichersektion12 gespeichert sind, und bestimmt, ob die Bilddaten, die gerade gescant werden, in dem Maskenbereich23a ,23b ,23c oder23d liegen. Falls die Bilddaten, die gerade gescant werden, in dem Maskenbereich23a ,23b ,23c oder23d liegen, führt dann die Überlagerungsprozesssektion14 einen Überlagerungsprozess gemäß dem Transmissionsattribut aus, das dem Maskenbereich23a ,23b ,23c oder23d zugeordnet ist, ungeachtet der Transmissionsattribute, die den Rahmenpuffern21-1 ,21-2 und21-3 oder den Fenstern22-1 ,22-2 und22-3 zugeordnet sind. Falls die Bilddaten, die gerade gescant werden, außerhalb der Maskenbereiche23a ,23b ,23c und23d liegen, führt dann die Überlagerungsprozesssektion14 einen Überlagerungsprozess unter Bezugnahme auf die Transmissionsattribute der Rahmenpuffer21-1 ,21-2 und21-3 oder der Fenster22-1 ,22-2 und22-3 aus und gibt Daten, die als Resultat des Überlagerungsprozesses erhalten werden, an die Anzeigeeinheit30 aus. - Es folgt eine konkrete Beschreibung für den Fall als Beispiel, wenn ein Pixel gezeichnet wird, indem Bilddaten für die entsprechenden Pixel aus den Rahmenpuffern
21-1 ,21-2 und21-3 in jener Ordnung gelesen werden und ein Überlagerungsprozess ausgeführt wird. Ein Pixel24a auf der höchsten Schicht, das durch die Bilddatenlesesektion11 gerade gescant wird, liegt außerhalb des Maskenbereichs23a , und das Transmissionsattribut des Rahmenpuffers21-1 ist transparent. Daher liest die Bilddatenlesesektion11 das Pixel24a nicht. Ein Pixel24b auf der mittleren Schicht, dessen Koordinaten dem Pixel24a entsprechen, liegt in dem Maskenbereich23c , so dass auf das Transmissionsattribut des Maskenbereichs23c Bezug genommen wird, ungeachtet des Transmissionsattributs des Rahmenpuffers21-2 , der die mittlere Schicht darstellt. Das Transmissionsattribut des Maskenbereichs23c ist opak, so dass die Bilddatenlesesektion11 ein Pixel in dem Rahmenpuffer21-3 , der die unterste Schicht darstellt, oder dem Fenster22-3 nicht liest, dessen Position dem Pixel24b entspricht. Als Resultat führt die Überlagerungsprozesssektion14 keinen Überlagerungsprozess unter Verwendung von Bilddaten aus, die in dem Rahmenpuffer21-3 gespeichert sind, der die unterste Schicht darstellt, und gibt das Pixel24b aus. Ähnlich liegt ein Pixel25a auf der höchsten Schicht außerhalb des Maskenbereichs23a , und das Transmissionsattribut des Rahmenpuffers21-1 ist transparent. Daher liest die Bilddatenlesesektion11 das Pixel25a nicht. Ein Pixel25b auf der mittleren Schicht, dessen Koordinaten dem Pixel25a entsprechen, liegt in dem Maskenbereich23b , so dass auf das Transmissionsattribut des Maskenbereichs23b Bezug genommen wird, ungeachtet des Transmissionsattributs des Fensters22-2 , in dem der Masken bereich23b definiert ist. Das Transmissionsattribut des Maskenbereichs23b ist semitransparent, so dass die Überlagerungsprozesssektion14 einen Prozess ausführt zum Mischen der Farben des Pixels25b und eines Pixels25c in dem Rahmenpuffer21-3 , der die unterste Schicht darstellt, dessen Koordinaten den Pixeln25a und25b entsprechen, und Daten ausgibt, die als Resultat des Prozesses erhalten werden. Ein Pixel26a auf der höchsten Schicht liegt in dem Maskenbereich23a , so dass auf das Transmissionsattribut des Maskenbereichs23a Bezug genommen wird, ungeachtet des Transmissionsattributs des Fensters22-1 , in dem der Maskenbereich23a definiert ist. Das Transmissionsattribut des Maskenbereichs23a ist transparent, so dass die Bilddatenlesesektion11 das Pixel26a nicht liest. Ein Pixel26b auf der mittleren Schicht, dessen Koordinaten dem Pixel26a entsprechen, liegt außerhalb des Maskenbereichs23b und gehört zu dem Fenster22-2 . Das Transmissionsattribut des Fensters22-2 ist opak. Daher liest die Bilddatenlesesektion11 Bilddaten auf der untersten Schicht nicht, und die Überlagerungsprozesssektion14 gibt das Pixel26b aus. - Um die Prinzipien zu erläutern, die der vorliegenden Erfindung zugrunde liegen, erfolgten die Beschreibungen des Überlagerungsprozesses, der ausgehend von der höchsten Schicht ausgeführt wird. Später wird ein Farbmischprozess beschrieben, der die normale Überlagerung einschließt, die von der untersten Schicht aus vorgenommen wird.
- Unter Verwendung der Bildverarbeitungsvorrichtung
10 gemäß der Ausführungsform der vorliegenden Erfindung kann der Speicherzugriff zum Lesen von Bilddaten auf einen spezifischen Bereich in einem Rahmenpuffer oder einem Fenster auf jeder Schicht begrenzt werden, wie oben angegeben. Die Bildverarbeitungsvorrichtung10 hat den folgenden Vorteil, besonders wenn ein Überlagerungsprozess von der höchsten Schicht aus vorgenommen wird. Um ein Pixel zu zeichnen, liest die Bilddatenlesesektion11 zuerst Bilddaten auf der höchsten Schicht, die dem Pixel entsprechen, dann Bilddaten auf der mittleren Schicht, die dem Pixel entsprechen, und danach Bilddaten auf der untersten Schicht, die dem Pixel entsprechen. Die Bilddatenlesesektion11 liest keine Bilddaten auf einer Schicht, die unter einer Schicht liegt, deren Transmissionsattribut gemäß den Maskeninformationen opak ist. Zusätzlich überlagert die Überlagerungsprozesssektion14 keine Bilddaten auf der Schicht, die unter der Schicht liegt, deren Transmissionsattribut gemäß den Maskeninformationen opak ist. Dadurch wird der sinnlose Speicherzugriff reduziert und die Effektivität der Verwendung der Speicherbandbreite verbessert. - Nun wird die Ausführungsform der vorliegenden Erfindung eingehend beschrieben.
-
2 zeigt ein Beispiel für die Struktur eines Bildverarbeitungssystems. - Ein Bildverarbeitungssystem, das in
2 gezeigt ist, umfasst eine Graphik-LSI100 , einen VRAM200 , eine Anzeigeeinheit300 , eine zentrale Verarbeitungseinheit (CPU)301 zum Steuern der Graphik-LSI100 und einen Hauptspeicher302 , worin die CPU301 arbeitet. - Die Graphik-LSI
100 enthält Maskensteuersektionen110-1 ,110-2 , ...,110-n , die einer Vielzahl von Schichten entsprechen, eine Detektionssektion einer effektiven untersten Schicht120 zum Detektieren einer effektiven untersten Schicht, ein Temporärpixelfarbregister121 zum Halten einer temporären Pixelfarbe, einen Speichercontroller123 und eine Überlagerungsprozesssektion124 . - Jede der Maskensteuersektionen
110-1 ,110-2 , ...,110-n enthält Maskeninformationsspeichersektionen111-1 ,111-2 , ... und111-m zum Speichern von Informationen für eine Vielzahl von Maskenbereichen, eine Maskenbereich-Innen/Außen-Bestimmungssektion112 , eine Maskenprioritätsbestimmungssektion113 , die später beschrieben ist, eine Maskentransmissionsattributsbestimmungssektion114 zum Bestimmen des Transmissionsattributs eines Maskenbereichs, eine Rahmenpuffer-/Fensterinformationsspeichersektion115 zum Speichern solcher Informationen wie etwa des Transmissionsattributs, der Position und der Größe eines Rahmenpuffers oder eines Fensters, und ein Temporärtransmissionsattributsregister116 zum Halten des temporären Transmissionsattributs einer Schicht. - Jede der Maskeninformationsspeichersektionen
111-1 bis111-m enthält ein Maskenbereichsfestlegungsregister111a , in dem ein Maskenbereich festgelegt ist, ein Maskentransmissionsattributsfestlegungsregister111b , in dem das Transmissionsattribut eines Maskenbereichs festgelegt ist, und ein Maskenprioritätsfestlegungsregister111c , in dem eine später beschriebene Maskenpriorität festgelegt ist. - Die Überlagerungsprozesssektion
124 enthält eine Überlagerungsordnungshaltesektion124a zum Halten der Ordnung, in der Schichten überlagert sind, und eine Farbmischprozesssektion124b zum Ausführen eines Farbmischprozesses. - Rahmenpuffer
201-1 ,201-2 , ...,201-n , die der Vielzahl von Schichten entsprechen, sind im VRAM200 gesichert. - Die Graphik-LSI
100 liest Bilddaten aus den Rahmenpuffern201-1 bis201-n , führt einen Überlagerungsprozess aus und gibt ein Resultat an eine Anzeigeeinheit300 aus. Die Anzeigeeinheit300 ist eine Flüssigkristallanzeige (LCD), eine Kathodenstrahlröhre (CRT) oder dergleichen. - Die Graphik-LSI
100 entspricht der in1 gezeigten Bildverarbeitungsvorrichtung10 , und der Speichercontroller123 führt die Funktion der Bilddatenlesesektion11 aus. In2 sind die Funktionen der Maskeninformationsspeichersektion12 und der Maskenbereich-Innen/Außen-Bestimmungssektion13 , die in1 gezeigt sind, in den Maskensteuersektionen110-1 bis110-n enthalten, die der Vielzahl von Schichten entsprechen. Der VRAM200 entspricht der in1 gezeigten Graphikspeichereinheit20 . - Als nächstes wird die Operation der Graphik-LSI
100 beschrieben. - Es folgt die Beschreibung des Prozesses zum Lesen von Bilddaten aus Rahmenpuffern
201-1 bis201-3 , die drei Schichten entsprechen und die in dem VRAM200 gesichert sind, und zum Anzeigen eines Bildes, das durch Überlagern der Bilddaten erhalten wird. -
3 bis5 sind schematische Ansichten, die Beispiele für Bilddaten zeigen, die in den Rahmenpuffern gespeichert sind, die den drei Schichten entsprechen und die in dem VRAM200 gesichert sind.3 ist eine schematische Ansicht, die ein Beispiel für Bilddaten zeigt, die in einem Rahmenpuffer der ersten Schicht gespeichert sind.4 ist eine schematische Ansicht, die ein Beispiel für Bilddaten zeigt, die in einem Rahmenpuffer der zweiten Schicht gespeichert sind.5 ist eine schematische Ansicht, die ein Beispiel für Bilddaten zeigt, die in einem Rahmenpuffer der dritten Schicht gespeichert sind. - Bilddaten in dem Rahmenpuffer der ersten Schicht
201-1 , die in3 gezeigt sind, enthalten Knöpfe401-1 ,401-2 , ...,401-14 . Bilddaten in dem Rahmenpuffer der zweiten Schicht201-2 , die in4 gezeigt sind, enthalten zwei Figuren402-1 und402-2 . Bilddaten in dem Rahmenpuffer der dritten Schicht201-3 , die in5 gezeigt sind, werden zum Beispiel als Hintergrund verwendet. Die Rahmenpuffer201-1 bis201-3 können als Fenster angesehen werden. -
6 ist eine schematische Ansicht, die ein Bild zeigt, das durch Überlagern der Bilddaten erhalten wird, die in den Rahmenpuffern der ersten Schicht, der zweiten Schicht und der dritten Schicht gespeichert sind. - In diesem Fall sind die Knöpfe
401-1 bis401-14 in der ersten Schicht semitransparent, sind die Figuren402-1 und402-2 in der zweiten Schicht opak und sind die Bilddaten in der dritten Schicht opak. - Der Prozess zum Anzeigen des in
6 gezeigten Bildes wird nun beschrieben. -
7 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der ersten Schicht gespeichert sind, und eines Maskenbereichs zeigt.8 zeigt Maskeninformationen, die in einer Maskeninformationsspeichersektion der ersten Schicht gespeichert sind. - Ein Maskenbereich
411 wird unter Verwendung einer Figur wie beispielsweise eines Rechtecks festgelegt. Die Position des Maskenbereichs411 ist durch die Koordinaten von Vertices der Figur definiert. Der Maskenbereich411 ist, wie in7 gezeigt, parallel zu horizontalen und vertikalen Koordinatenachsen des Rahmenpuffers201-1 angeordnet, und die Position und Form des Maskenbereichs411 werden unter Verwendung der horizontalen und vertikalen Koordinaten von gegenüberliegenden Vertices des Maskenbereichs411 definiert. Dadurch können die Position und die Größe des Masken bereichs411 lediglich durch eine Kombination aus vier Zahlenwerten bestimmt werden. Bei diesem Beispiel wird ein Bilddatenbereich in der ersten Schicht, den die Graphik-LSI100 nicht zu lesen braucht, durch den Maskenbereich411 bezeichnet, wenn das Transmissionsattribut des Maskenbereichs411 transparent ist. - Dieser Maskenbereich
411 wird für den Rahmenpuffer201-1 im Voraus festgelegt. Maskeninformationen für den Maskenbereich411 sind, wie in8 gezeigt, in einer Maskeninformationsspeichersektion in der Graphik-LSI100 gespeichert. Das heißt, Koordinaten, die die obere linke Ecke des Maskenbereichs411 definieren, und Koordinaten, die die untere rechte Ecke des Maskenbereichs411 definieren, sind in einem Maskenbereichsfestlegungsregister gespeichert, und das Transmissionsattribut des Maskenbereichs411 ist in einem Maskentransmissionsattributsfestlegungsregister gespeichert (bei diesem Beispiel wird eine Maskenpriorität, die später beschrieben ist, ignoriert). -
9 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der zweiten Schicht gespeichert sind, und von Maskenbereichen zeigt.10 zeigt Maskeninformationen, die in einer Maskeninformationsspeichersektion der zweiten Schicht gespeichert sind. - Maskenbereiche
412 ,413 ,414 und415 sind bei den Figuren402-1 und402-2 festgelegt, die in dem Rahmenpuffer der zweiten Schicht201-2 gespeichert sind. Bei diesem Beispiel sind die Figuren402-1 und402-2 opak, so dass die Transmissionsattribute der Maskenbereiche412 ,413 ,414 und415 auf "opak" eingestellt sind. Diese Maskeninformationselemente werden, wie in10 gezeigt, in individuellen Masken informationsspeichersektionen in der Maskensteuersektion der zweiten Schicht110-2 gespeichert. - Die Graphik-LSI
100 gemäß der Ausführungsform der vorliegenden Erfindung führt den folgenden Prozess auf der Basis der obigen Maskeninformationen aus. -
11 ist ein Flussdiagramm, das den gesamten Prozess zeigt, der durch die Graphik-LSI ausgeführt wird. - In
11 ist der Prozess ab Beginn des Scannens bis zur Vollendung des Scannens von einem Rahmen gezeigt. - Wenn das Scannen beginnt, wird ein Schichtüberlagerungsprozess ausgeführt (Schritt S1). Daten, die als Resultat des Überlagerungsprozesses erhalten werden, werden an der Anzeigeeinheit
300 als gegenwärtiges Pixel angezeigt (Schritt S2). Dann wird bestimmt, ob die Schritte S1 und S2 an allen (nicht in dem gesamten Bildschirm, sondern in einer Scanzeile enthaltenen) Pixeln ausgeführt worden sind oder nicht (Schritt S3). Falls die Schritte S1 und S2 noch nicht an allen Pixeln ausgeführt worden sind, geht die Graphik-LSI100 dann zu dem nächsten Pixel über (Schritt S4), und der Prozess ab Schritt S1 wird wiederholt. Wenn alle Pixel gescant worden sind, wird bestimmt, ob alle Scanzeilen gescant worden sind oder nicht (Schritt S5). Falls noch nicht alle Scanzeilen gescant worden sind, geht dann die Graphik-LSI100 zu der nächsten Scanzeile über (Schritt S6), und der Prozess ab Schritt S1 wird wiederholt. Wenn alle Scanzeilen gescant worden sind, ist das Scannen von einem Rahmen vollendet. -
12 ist ein Flussdiagramm, das die Details eines Überlagerungsprozesses zeigt. - Es wird der Fall beschrieben, wenn ein Überlagerungsprozess bei der untersten Schicht beginnt.
- Zuerst wird auf die Überlagerungsordnungshaltesektion
124a Bezug genommen und bestimmt, ob ein Pixel, das gerade gescant wird, in dem Rahmenpuffer der untersten Schicht201-3 gespeichert ist oder nicht (Schritt S10). Ein Pixel auf der untersten Schicht wird zuerst bewertet. Daher bewirkt die Farbmischprozesssektion124b , dass der Speichercontroller123 das Pixel, das gerade gescant wird, aus dem Rahmenpuffer201-3 liest (Schritt S11), speichert eine Pixelfarbe dieses Pixels in dem Temporärpixelfarbregister121 und geht zu Schritt S20 über (Schritt S12). Wenn die Bewertung von Bilddaten bei der untersten Schicht vollendet ist, wird bestimmt, ob alle Schichten bewertet worden sind oder nicht (Schritt S20). In diesem Fall sind noch nicht alle Schichten bewertet worden ("NEIN" bei Schritt S20). Daher werden die oberen Schichten bewertet (Schritt S21). Eine Maskenbereich-Innen/Außen-Bestimmungssektion in der Maskensteuersektion der zweiten Schicht110-2 nimmt Bezug auf die Maskenbereichsfestlegungsregister und bestimmt, ob ein Pixel auf der zweiten Schicht, das gerade gescant wird, in dem Maskenbereich412 ,413 ,414 oder415 liegt oder nicht (Schritt S13). Falls das Pixel auf der zweiten Schicht, das gerade gescant wird, in dem Maskenbereich412 ,413 ,414 oder415 liegt, der in9 gezeigt ist, nimmt dann eine Maskentransmissionsattributsbestimmungssektion114 Bezug auf eine der Maskeninformationsspeichersektionen, die in10 gezeigt sind, und bestimmt das Transmissionsattribut des Maskenbereichs412 ,413 ,414 oder415 , in dem das Pixel existiert (Schritt S14). Falls das Pixel außerhalb der Maskenbereiche412 ,413 ,414 und415 liegt, nimmt die Maskentransmissionsattributsbestimmungssektion114 dann Bezug auf eine Rahmenpuffer-/Fensterinformationsspeichersektion in der Maskensteuersek tion der zweiten Schicht110-2 und bestimmt das Transmissionsattribut des Rahmenpuffers der zweiten Schicht201-2 , in dem das Pixel gespeichert ist (Schritt S15). Ein temporäres Transmissionsattribut, das das Resultat der Bestimmung ist, wird in einem Temporärtransmissionsattributsregister in der Maskensteuersektion der zweiten Schicht110-2 gespeichert. Falls das Transmissionsattribut opak ist, bewirkt dann die Farbmischprozesssektion124b , dass der Speichercontroller123 das Pixel liest, das gerade gescant wird (Schritt S11). Dies ist bei der untersten Schicht genauso. Die Farbmischprozesssektion124b ändert den Inhalt des Temporärpixelfarbregisters121 in die Pixelfarbe dieses Pixels (Schritt S12). Falls das Transmissionsattribut transparent ist, verhindert dann die Farbmischprozesssektion124b , dass der Speichercontroller123 das Pixel liest, und ändert den Inhalt des Temporärpixelfarbregisters121 nicht. Dann wird Schritt S20 ausgeführt (Schritt S16). Falls das Transmissionsattribut semitransparent ist, bewirkt dann die Farbmischprozesssektion124b , dass der Speichercontroller123 das Pixel liest, das gerade gescant wird (Schritt S17), mischt sie die Pixelfarbe dieses Pixels und die Pixelfarbe (in12 als "temporäre Pixelfarbe" angegeben), die in dem Temporärpixelfarbregister121 gespeichert ist (Schritt S18), und ändert den Inhalt des Temporärpixelfarbregisters121 in eine erhaltene Pixelfarbe (Schritt S19). Der obige Prozess wird auch bei der höchsten Schicht ausgeführt, um eine abschließende Pixelfarbe zu bestimmen. -
13 ist eine Ansicht zum Beschreiben eines konkreten Beispiels eines Maskenbereich-Innen/Rußen-Bestimmungsprozesses und eines Transmissionsattributsbestimmungsprozesses, die an einem Pixel ausgeführt werden.14 zeigt das Resultat der Bestimmung, die durch eine Maskensteuersektion erfolgt. - Bei diesem Beispiel wird bestimmt, ob Pixelkoordinaten
421 ,422 ,423 oder424 , die im Moment gerade gescant werden, innerhalb oder außerhalb eines Maskenbereichs liegen. Die Pixelkoordinaten421 und424 liegen in der ersten Schicht außerhalb des Maskenbereichs411 , so dass das Transmissionsattribut des Rahmenpuffers201-1 ("semitransparent" für die Pixelkoordinaten421 , die auf dem Knopf liegen, und "transparent" für die Pixelkoordinaten424 ) in dem Temporärtransmissionsattributsregister116 in der Maskensteuersektion der ersten Schicht110-1 gespeichert wird. Die Pixelkoordinaten422 und423 liegen in dem Maskenbereich411 , so dass das Transmissionsattribut (transparent) des Maskenbereichs411 in dem Temporärtransmissionsattributsregister116 als temporäres Transmissionsattribut gespeichert wird. Die Pixelkoordinaten421 und422 liegen außerhalb der Maskenbereiche in der zweiten Schicht, so dass das Transmissionsattribut (transparent) des Rahmenpuffers201-2 in einem Temporärtransmissionsattributsregister in der Maskensteuersektion der zweiten Schicht110-2 gespeichert wird. Die Pixelkoordinaten423 liegen in dem Maskenbereich414 , und die Pixelkoordinaten424 liegen in dem Maskenbereich415 . Daher werden die Transmissionsattribute (opak) der Maskenbereiche414 und415 gespeichert. - Falls das Transmissionsattribut der Bilddaten, die gerade gescant werden, transparent ist, erspart das Ausführen des in
12 gezeigten Überlagerungsprozesses auf diese Weise dann das Lesen der Bilddaten durch den Speichercontroller123 . - Bei den obigen Beschreibungen überlappen sich auf einer Schicht festgelegte Maskenbereiche nicht. Jedoch kann sich eine Vielzahl von Maskenbereichen überlappen. In diesem Fall wird die Maskenprioritätsbestimmungssektion
113 verwendet, die in der in2 gezeigten Graphik-LSI100 enthalten ist. - Nun wird ein Prozess beschrieben, der durch die Graphik-LSI
100 in dem Fall ausgeführt wird, wenn sich Maskenbereiche überlappen. - Es wird der Prozess zum Anzeigen des obigen Bildes beschrieben, das in
6 gezeigt ist und das erhalten wird durch Überlagern der Bilddaten, die in3 gezeigt sind und in dem Rahmenpuffer der ersten Schicht201-1 gespeichert sind, der in dem VRAM200 gesichert ist, der Bilddaten, die in4 gezeigt sind und in dem Rahmenpuffer der zweiten Schicht201-2 gespeichert sind, der in dem VRAM200 gesichert ist, und der Bilddaten, die in5 gezeigt sind und in dem Rahmenpuffer der dritten Schicht201-3 gespeichert sind, der in dem VRAM200 gesichert ist. -
15 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der ersten Schicht gespeichert sind, und von Maskenbereichen zeigt, von denen sich zwei überlappen.16 zeigt Maskeninformationen, die in der Maskeninformationsspeichersektion der ersten Schicht gespeichert sind. - Ein Maskenbereich
431 , der den gesamten Rahmenpuffer201-1 bedeckt, ein Maskenbereich432 , der die Knöpfe401-1 bis401-7 bedeckt, und ein Maskenbereich433 , der die Knöpfe401-8 bis401-14 bedeckt, sind auf der ersten Schicht festgelegt. Die Transmissionsattribute der Maskenbereiche431 ,432 und433 sind transparent, semitransparent bzw. semi transparent. Bei diesem Beispiel überlappen die Maskenbereiche432 und433 den Maskenbereich431 . In solch einem Fall wird eine Priorität festgelegt, um zu bestimmen, welches der Transmissionsattribute von zwei Maskenbereichen für ein Pixel eingesetzt werden sollte, das gerade gescant wird. Bei diesem Beispiel wird angenommen, dass die Priorität des Maskenbereichs431 die zweithöchste ist und dass die Priorität der Maskenbereiche432 und433 die höchste ist. - Solche Maskeninformationen werden im Voraus in Maskeninformationsspeichersektionen gespeichert, wie in
16 gezeigt. Das heißt, Koordinaten, die die oberen linken Ecken und die unteren rechten Ecken der Maskenbereiche431 ,432 und433 definieren, werden in Maskenbereichsfestlegungsregistern gespeichert. Die Transmissionsattribute der Maskenbereiche431 ,432 und433 werden in Maskentransmissionsattributsfestlegungsregistern gespeichert. Die Priorität der Maskenbereiche431 ,432 und433 wird in Maskenprioritätsfestlegungsregistern gespeichert. -
17 ist eine schematische Ansicht, die eine Überlagerung der Bilddaten, die in dem Rahmenpuffer der zweiten Schicht gespeichert sind, und von Maskenbereichen zeigt, von denen einer den anderen überlappt oder die sich überlappen.18 zeigt Maskeninformationen, die in der Maskeninformationsspeichersektion der zweiten Schicht gespeichert sind. - Maskenbereiche
434 und435 , die die Figur402-1 bedecken und sich überlappen, ein Maskenbereich436 , der die402-2 überlappt, und ein Maskenbereich437 , der einen Abschnitt des Maskenbereichs436 überlappt, der die402-2 nicht enthält, sind in der zweiten Schicht festgelegt. Die Transmissionsattribute der Maskenbereiche434 ,435 und436 sind opak, und das Transmissionsattribut des Maskenbe reichs437 ist transparent. Die Maskenbereiche434 und435 sind beide opak. Deshalb kann auf das eine oder das andere der Transmissionsattribute der Maskenbereiche434 und435 Bezug genommen werden, wenn ein Pixel gerade gescant wird. Bei diesem Beispiel wird angenommen, dass die Priorität der Maskenbereiche434 und435 die höchste ist. Es ist nicht erforderlich, ein Pixel in dem Maskenbereich437 zu lesen. Daher wird angenommen, dass die Priorität des Maskenbereichs436 die zweithöchste ist und dass die Priorität des Maskenbereichs437 die höchste ist. Solche Maskeninformationen werden, wie in18 gezeigt, in individuellen Maskeninformationsspeichersektionen in der Maskensteuersektion der zweiten Schicht110-2 gespeichert. - Die Graphik-LSI
100 gemäß der Ausführungsform der vorliegenden Erfindung führt den folgenden Überlagerungsprozess auf der Basis der obigen Maskeninformationen aus. Der gesamte Prozess wird auf eine Weise ausgeführt, die mit dem in11 gezeigten Prozess identisch ist. -
19 ist ein Flussdiagramm, das die Details eines Überlagerungsprozesses zeigt, der im Falle einer Vielzahl von sich überlappenden Maskenbereichen ausgeführt wird. - Zuerst wird auf die Überlagerungsordnungshaltesektion
124a Bezug genommen und bestimmt, ob Bilddaten, die gerade gescant werden, in dem Rahmenpuffer der untersten Schicht201-3 gespeichert sind oder nicht (Schritt S30). Bilddaten in der untersten Schicht werden zuerst bewertet. Daher bewirkt die Farbmischprozesssektion124b , dass der Speichercontroller123 die Bilddaten, die gerade gescant werden, aus dem Rahmenpuffer201-3 liest (Schritt S31), speichert die Bilddaten in dem Temporärpixelfarbregister121 und geht zu Schritt S39 über (Schritt S32). Wenn die Bewertung der Bilddaten in der untersten Schicht vollendet ist, wird bestimmt, ob alle Schichten bewertet worden sind oder nicht (Schritt S39). In diesem Fall sind noch nicht alle Schichten bewertet worden ("NEIN" bei Schritt S39). Daher werden die oberen Schichten bewertet (Schritt S40). Eine Maskenprioritätsbestimmungssektion in der Maskensteuersektion der zweiten Schicht110-2 führt einen Maskenprioritätsbestimmungsprozess bei der zweiten Schicht aus (Schritt S33). Nachdem die Maskenprioritätsbestimmungssektion den Maskenprioritätsbestimmungsprozess ausführt, nimmt die Farbmischprozesssektion124b Bezug auf ein Temporärtransmissionsattributsregister, in dem ein temporäres Transmissionsattribut gespeichert ist, und bestimmt das temporäre Transmissionsattribut (Schritt S34). Falls das Transmissionsattribut opak ist, bewirkt dann die Farbmischprozesssektion124b , dass der Speichercontroller123 ein Pixel liest, das gerade gescant wird (Schritt S31). Dies ist bei der untersten Schicht genauso. Die Farbmischprozesssektion124b ändert den Inhalt eines Temporärpixelfarbregisters121 in die Pixelfarbe dieses Pixels (Schritt S32). Falls das Transmissionsattribut transparent ist, verhindert dann die Farbmischprozesssektion124b , dass der Speichercontroller123 das Pixel liest, und sie ändert den Inhalt des Temporärpixelfarbregisters121 nicht. Dann wird Schritt S39 ausgeführt (Schritt S35). Falls das Transmissionsattribut semitransparent ist, bewirkt dann die Farbmischprozesssektion124b , dass der Speichercontroller123 das Pixel liest, das gerade gescant wird (Schritt S36), mischt sie die Pixelfarbe dieses Pixels und die (in19 als "temporäre Pixelfarbe" angegebene) Pixelfarbe, die in dem Temporärpixelfarbregister121 gespeichert ist (Schritt S37), und ändert den Inhalt des Temporärpixelfarb registers121 in erhaltene Daten (Schritt S38). Der obige Prozess wird auch an der höchsten Schicht ausgeführt, um eine abschließende Pixelfarbe zu bestimmen. -
20 ist ein Flussdiagramm, das die Details eines Maskenprioritätsbestimmungsprozesses zeigt. - Es wird angenommen, dass eine Vielzahl von (m) Maskenbereichen auf derselben Schicht festgelegt ist und dass eine Maskenbereichsnummer m ist. Bei dem Maskenprioritätsbestimmungsprozess wird m auf Null initialisiert (Schritt S50). Die Maskenpriorität, die temporär gespeichert wird (im Folgenden als "temporäre Maskenpriorität" bezeichnet), wird auf die niedrigste Priorität initialisiert (Schritt S51). Ein temporäres Transmissionsattribut wird auf das Transmissionsattribut eines Rahmenpuffers in der gegenwärtigen Schicht initialisiert (Schritt S52). Die Ordnung der Schritte S50, S51 und S52 kann verändert werden, oder die Schritte S50, S51 und S52 können parallel ausgeführt werden.
- Dann wird bestimmt, ob die gegenwärtigen Pixelkoordinaten in einem Maskenbereich liegen oder nicht, dessen Nummer m ist (Schritt S53). Falls die gegenwärtigen Pixelkoordinaten außerhalb des Maskenbereichs liegen, dessen Nummer m ist, wird dann Schritt S56 ausgeführt. Falls die gegenwärtigen Pixelkoordinaten in dem Maskenbereich liegen, dessen Nummer m ist, wird dann die gegenwärtig gespeicherte temporäre Maskenpriorität mit der Priorität verglichen, die für den Maskenbereich festgelegt ist, dessen Nummer m ist (Schritt S54). Falls die Priorität, die für den Maskenbereich festgelegt ist, dessen Nummer m ist, höher als die temporäre Maskenpriorität ist, die gegenwärtig gespeichert ist, wird dann die temporäre Maskenpriorität in die Priorität geändert, die für den Maskenbereich festgelegt ist, dessen Nummer m ist, und das temporäre Transmissionsattribut wird in das Transmissionsattribut des Maskenbereichs verändert, dessen Nummer m ist (Schritt S55). Dann wird bestimmt, ob alle Maskenbereiche, die in der gegenwärtigen Schicht enthalten sind, bewertet worden sind oder nicht (Schritt S56). Falls alle Maskenbereiche, die in der gegenwärtigen Schicht enthalten sind, bewertet worden sind, endet dann der Maskenprioritätsbestimmungsprozess. Falls nicht alle Maskenbereiche bewertet worden sind, die in der gegenwärtigen Schicht enthalten sind, wird m dann inkrementiert (m = m + 1) und wird der nächste Maskenbereich bewertet (Schritt S57).
- Durch Ausführen des obigen Maskenprioritätsbestimmungsprozesses wird das Transmissionsattribut eines Maskenbereichs, dessen Priorität die höchste bei den gegenwärtigen Pixelkoordinaten ist, in einem Temporärtransmissionsattributsregister in einer gewissen Schicht gespeichert. Falls die gegenwärtigen Pixelkoordinaten in keinem der Maskenbereiche liegen, bleibt dann das Transmissionsattribut des Rahmenpuffers bestehen, das in einem Temporärtransmissionsattributsregister zu der Zeit der Initialisierung gespeichert wurde. Das auf diese Weise geklärte temporäre Transmissionsattribut wird bei dem in
19 gezeigten Temporärtransmissionsattributsbestimmungsschritt (Schritt S34) verwendet. -
21 ist eine Ansicht zum Beschreiben eines konkreten Beispiels für einen Maskenbereich-Innen/Außen-Bestimmungsprozess und einen Prioritätsbestimmungsprozess, die an einem Pixel ausgeführt werden, und eines konkreten Beispiels für das Resultat der Transmissionsattributsbestimmung, die an dem Pixel vorgenommen wurde.22 zeigt das Resultat der Bestimmung, die durch die Maskensteuersektion vorgenommen wurde. - Bei diesem Beispiel bestimmt eine Maskenbereich-Innen/Außen-Bestimmungssektion, ob Pixelkoordinaten
441 ,442 ,443 oder444 , die im Moment gerade gescant werden, innerhalb oder außerhalb eines Maskenbereichs liegen, und eine Maskenprioritätsbestimmungssektion bestimmt die Priorität des Maskenbereichs und ein temporäres Transmissionsattribut. - Auf der ersten Schicht liegen die Pixelkoordinaten
441 in den Maskenbereichen431 und432 . Durch Ausführen des in20 gezeigten Prozesses speichert die Maskenprioritätsbestimmungssektion das Transmissionsattribut "semitransparent" des Maskenbereichs432 , der zur Anwendung kommt, in einem Temporärtransmissionsattributsregister als temporäres Transmissionsattribut. Die Pixelkoordinaten442 und443 liegen in dem Maskenbereich431 . In diesem Fall ist das Transmissionsattribut "transparent" des Maskenbereichs431 ein temporäres Transmissionsattribut. Die Pixelkoordinaten444 liegen in den Maskenbereichen431 und433 . Durch Ausführen des in20 gezeigten Prozesses behandelt die Maskenprioritätsbestimmungssektion das Transmissionsattribut "semitransparent" des Maskenbereichs433 , der zur Anwendung kommt, als temporäres Transmissionsattribut. - In der zweiten Schicht liegen die Pixelkoordinaten
441 außerhalb der Maskenbereiche. Daher wird das Transmissionsattribut "transparent" des Rahmenpuffers201-2 in der zweiten Schicht als temporäres Transmissionsattribut behandelt. Die Pixelkoordinaten442 liegen in den Maskenbereichen434 und435 . Die Priorität des Maskenbereichs434 ist jener des Maskenbereichs435 gleich, so dass die Maskenprioritäts bestimmungssektion den in20 gezeigten Prozess ausführt, um den Maskenbereich434 einzusetzen, dessen Nummer kleiner als jene des Maskenbereichs435 ist, und das Transmissionsattribut "opak" des Maskenbereichs434 als temporäres Transmissionsattribut zu behandeln. Die Pixelkoordinaten443 liegen in den Maskenbereichen436 und437 . Die Maskenprioritätsbestimmungssektion führt den in20 gezeigten Prozess aus, um den Maskenbereich437 einzusetzen, dessen Priorität höher als jene des Maskenbereichs436 ist, und das Transmissionsattribut "transparent" des Maskenbereichs437 als temporäres Transmissionsattribut zu behandeln. Die Pixelkoordinaten444 liegen in dem Maskenbereich436 , so dass das Transmissionsattribut "opak" des Maskenbereichs436 als temporäres Transmissionsattribut behandelt wird. - Als Resultat können Maskenbereiche, die verschiedene Transmissionsattribute haben, einander überlappen und kann eine flexiblere Anordnung von Maskenbereichen definiert sein. Deshalb kann eine Figur mit einer komplizierten Form effektiv von Maskenbereichen umgeben sein und kann der sinnlose Speicherzugriff auf den VRRM
200 weiter reduziert werden. - Um das Überlappen von Maskenbereichen, die verschiedene Transmissionsattribute haben, zu erläutern, ist in
15 der gesamte Rahmenpuffer201-1 in der ersten Schicht von dem Maskenbereich431 umgeben. Selbst wenn der Maskenbereich431 nicht verwendet wird, kann jedoch dasselbe Resultat erhalten werden, indem das Transmissionsattribut des Rahmenpuffers201-1 in der ersten Schicht transparent gemacht wird. Die Priorität der Maskenbereiche434 und435 , die in17 gezeigt sind, ist die höchste. Die Transmissionsattribute der Maskenbereiche434 und435 sind jedoch opak. Falls die Priorität der Maskenbereiche434 und435 höher als jene des Maskenbereichs431 ist, kann sich deshalb dann die Priorität des Maskenbereichs434 von jener des Maskenbereichs435 unterscheiden. Es spielt keine Rolle, ob die Priorität des Maskenbereichs434 höher oder niedriger als jene des Maskenbereichs435 ist. In17 sind die Maskenbereiche434 ,435 und436 so angeordnet, dass sie die opaken Figuren402-1 und402-2 in der zweiten Schicht von außen umgeben. Auch wenn in diesem Fall die Transmissionsattribute der Maskenbereiche opak sind, müssen Freiräume zwischen dem Maskenbereich434 und der Figur402-1 , zwischen dem Maskenbereich435 und der Figur402-1 und zwischen dem Maskenbereich436 und der Figur402-2 richtig behandelt werden. Das heißt, diese Freiräume müssen als transparent angesehen werden. Dies kann jedoch durch eine bekannte Technik realisiert werden, die gewöhnlich verwendet wird, und Beschreibungen der Technik werden weggelassen. - Der in
12 oder19 gezeigte Überlagerungsprozess wird ab der untersten Schicht ausgeführt. Auch wenn ein Bereich, dessen Transmissionsattribut opak ist, in einer gewissen Schicht enthalten ist, kann daher das Lesen von Bilddaten auf einer Schicht unter jener Schicht nicht verhindert werden. Nun wird ein Prozess zum Verhindern solch eines Lesens beschrieben. - Die Funktion der Detektionssektion der effektiven untersten Schicht
120 , die in der Graphik-LSI100 enthalten ist, die in2 gezeigt, kommt zum Ausführen dieses Prozesses zum Einsatz. - Ein Überlagerungsprozess, der unter Verwendung der Detektionssektion der effektiven untersten Schicht
120 ausgeführt wird, wird nun beschrieben. Der gesamte Prozess ist derselbe wie der in11 gezeigte Prozess. - Zuerst wird der Fall beschrieben, wenn die obigen Maskenbereiche nicht verwendet werden.
-
23 ist ein Flussdiagramm, das die Details eines Überlagerungsprozesses zeigt, der unter Verwendung der Funktion zum Detektieren einer effektiven untersten Schicht ausgeführt wird. - Schichtnummern k werden der Reihe nach den Rahmenpuffern
201-1 bis201-3 , die in dem VRAM200 gesichert sind, ab der höchsten Schicht verliehen. Die Schichtnummer k des Rahmenpuffers201-1 in der höchsten Schicht ist 0. Diese Überlagerungsordnung wird durch die Überlagerungsordnungshaltesektion124a gehalten. - Wenn der Überlagerungsprozess begonnen wird, wird die Schichtnummer k auf 0 initialisiert, so dass auf den Rahmenpuffer
201-1 in der höchsten Schicht Bezug genommen werden kann (Schritt S60). Das Transmissionsattribut bei einem gerade gescanten Pixel einer Schicht (Rahmenpuffer oder Fenster), deren Schichtnummer k ist, wird dann bestimmt (Schritt S61). Falls das Transmissionsattribut der Schicht, deren Schichtnummer k ist, semitransparent oder transparent ist oder eine transparente Farbe in der Schicht effektiv ist, deren Schichtnummer k ist, wird dann bestimmt, ob die Schicht, deren Schichtnummer k ist, die unterste Schicht ist oder nicht (Schritt S62). Falls die Schicht, deren Schichtnummer k ist, nicht die unterste Schicht ist, wird dann die Schichtnummer k inkrementiert (k = k + 1), und der Prozess ab Schritt S61 wird an einer Schicht direkt unter der Schicht, deren Schichtnummer k ist, ausgeführt (Schritt S63). Falls das Transmissionsattribut der Schicht, deren Schichtnummer k ist, opak ist oder die Schicht, deren Schichtnummer k ist, die unterste Schicht ist, wird dann die Schicht, deren Schichtnummer k ist, als effektive unterste Schicht festgelegt (Schritt S64). Gewöhnlich wird eine transparente Farbe verwendet. Es wird angenommen, dass eine transparente Farbe in einer Schicht effektiv festgelegt ist. Falls die Farbe von einem gewissen Pixel, das in einem Rahmenpuffer der Schicht gespeichert ist, mit der transparenten Farbe übereinstimmt, wird dieses Pixel als transparent angesehen und wird die Farbe eines Pixels in einer unteren Schicht angezeigt. - Nachdem die Schicht, deren Schichtnummer k ist, als effektive unterste Schicht festgelegt ist, wird der Überlagerungsprozess auf eine Weise ausgeführt, die von dem Transmissionsattribut der Schicht abhängt, deren Schichtnummer k ist. Die Schritte S66 bis S72 in
23 sind dieselben wie der Prozess, der zum Beispiel in19 gezeigt ist, so dass Beschreibungen von ihnen weggelassen werden. Im Falle von23 wird jedoch die effektive unterste Schicht, die durch die Schritte S60 bis S64 festgelegt wurde, anstelle der eigentlichen niedrigsten Schicht als erste Schicht eingesetzt, die für den Überlagerungsprozess verwendet wird. Das heißt, bei Schritt S73 wird die Schichtnummer k dekrementiert (k = k – 1), und der Prozess an einer Schicht direkt über der effektiven untersten Schicht wird ausgeführt, deren Schichtnummer k ist. - Falls die effektive unterste Schicht höher als die eigentliche unterste Schicht ist, erübrigt der obige Prozess die Notwendigkeit des Lesens von Bilddaten, die in einem Rahmenpuffer auf einer Schicht gespeichert sind, die niedri ger als die effektive unterste Schicht ist, und der sinnlose Speicherzugriff auf den VRAM
200 kann unterdrückt werden. - Falls Anordnung und Größe auf einem Bildschirm in jeder Schicht dieselben sind, ist das Ausführen eines Detektionsprozesses der effektiven untersten Schicht gemäß Pixeln nicht erforderlich. Das heißt, es ist nicht erforderlich, einen Detektionsprozess der effektiven untersten Schicht bei dem Pixelscanprozess auszuführen, der in
11 gezeigt ist und der die Gesamtheit des Prozesses darstellt, der durch die Graphik-LSI100 ausgeführt wird. Es kann jedoch sein, dass Anordnung und Größe auf einem Bildschirm nicht in jeder Schicht dieselben sind. Falls ein Bildschirm in einem Fenster partiell angezeigt wird und es Bereiche gibt, in denen sich zwei Schichten nicht überlappen, kann sich eine effektive unterste Schicht gemäß Pixelkoordinaten unterscheiden. In solch einem Fall wird eine effektive unterste Schicht gemäß gescanten Pixeln detektiert. - Nun wird ein Prozess beschrieben, der unter Verwendung einer effektiven untersten Schicht und von Maskenbereichen ausgeführt wird.
-
24 ist ein Flussdiagramm, das einen Überlagerungsprozess zeigt, der unter Verwendung einer effektiven untersten Schicht und von Maskenbereichen ausgeführt wird. - Dieser Prozess enthält, wie in
24 gezeigt, einen Maskenprioritätsbestimmungsprozess und einen Detektionsprozess der effektiven untersten Schicht (Schritt S80) sowie einen Farbmischprozess (Schritt S81). -
25 ist ein Flussdiagramm, das die Details des Maskenprioritätsbestimmungsprozesses und des Detektionsprozesses der effektiven untersten Schicht zeigt. - Wenn der Prozess begonnen wird, wird zuerst die Schichtnummer k auf 0 initialisiert, so dass auf den Rahmenpuffer
201-1 in der höchsten Schicht Bezug genommen werden kann (Schritt S90). Dann wird der Maskenprioritätsbestimmungsprozess, der in20 gezeigt ist, in einer Schicht ausgeführt, deren Schichtnummer k ist, um ein temporäres Transmissionsattribut bei einem Pixel zu bestimmen, das gerade gescant wird (Schritt S91). Ein Prozess, der derselbe wie die Schritte S61 bis S64 ist, die in23 gezeigt sind, wird dann ausgeführt, um eine effektive unterste Schicht zu detektieren (Schritte S92 bis S95). Bei Schritt S92, bei dem ein Transmissionsattribut bestimmt wird, wird das temporäre Transmissionsattribut der Schicht verwendet, deren Schichtnummer k ist. Das Transmissionsattribut eines Maskenbereichs wird bei dem temporären Transmissionsattribut der Schicht berücksichtigt, deren Schichtnummer k ist. Wenn der in25 gezeigte Prozess vollendet ist, stehen die effektive unterste Schicht und das temporäre Transmissionsattribut von jeder Schicht, die höher als die effektive unterste Schicht ist, fest. -
26 ist ein Flussdiagramm, das die Details des Farbmischprozesses zeigt. - Der in
26 gezeigte Farbmischprozess (Schritte S100 bis S108) ist derselbe wie die Schritte S65 bis S73, die in23 gezeigt sind. Bei Schritt S100, wo ein Transmissionsattribut bestimmt wird, wird jedoch das temporäre Transmissionsattribut einer Schicht verwendet, deren Schichtnummer k ist, anstelle des Transmissionsattributs der Schicht, deren Schichtnummer k ist. Das Transmissionsattribut eines Maskenbereichs wird bei dem temporären Transmissionsattribut der Schicht berücksichtigt, deren Schichtnummer k ist. - Durch Ausführen eines Überlagerungsprozesses unter Verwendung einer effektiven untersten Schicht und von Maskenbereichen kann, wie oben angegeben, der Speicherzugriff auf den VRAM
200 signifikant reduziert werden. - Um die Beschreibungen zu vereinfachen, wurde bei dem obigen Beispiel hauptsächlich der Prozess zum Überlagern der drei Schichten erläutert. Tatsächlich können jedoch mehr Schichten verwendet werden.
- ANWENDUNG IN DER INDUSTRIE
- Die vorliegende Erfindung ist zum Beispiel auf ein Autonavigationssystem anwendbar, bei dem eine Vielzahl von Fenstern überlagert und angezeigt wird.
- Die obige Beschreibung ist nur als Erläuterung der Prinzipien der vorliegenden Erfindung gedacht. Da ferner die Fachwelt ohne weiteres auf zahlreiche Abwandlungen und Veränderungen kommen wird, soll die Erfindung nicht auf die exakte Konstruktion und die gezeigten und beschriebenen Anwendungen begrenzt sein, und daher können alle geeigneten Abwandlungen und Äquivalente als in den Umfang der Erfindung in den beigefügten Ansprüchen und deren Äquivalenten fallend gelten.
- KURZFASSUNG
- Der sinnlose Speicherzugriff auf eine Graphikspeichereinheit wird reduziert. Wenn eine Bilddatenlesesektion (
11 ) Bilddaten von Rahmenpuffern (21-1 ), (21-2 ) und (21-3 ) oder Fenstern (22-1 ), (22-2 ) und (22-3 ) liest, bestimmt eine Maskenbereich-Innen/Außen-Bestimmungssektion (13 ), unter Bezugnahme auf Maskeninformationen, die in einer Maskeninformationsspeichersektion (12 ) gespeichert sind, ob Bilddaten, die gerade gescant werden, in einem Speicherzugriffsmaskenbereich (23a ), (23b ), (23c ) oder (23d ) liegen. Falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich (23a ), (23b ), (23c ) oder (23d ) liegen, führt dann eine Überlagerungsprozesssektion (14 ) einen Überlagerungsprozess gemäß einem Transmissionsattribut aus, das dem Speicherzugriffsmaskenbereich (23a ), (23b ), (23c ) oder (23d ) zugeordnet ist, ungeachtet von Transmissionsattributen, die den Rahmenpuffern (21-1 ), (21-2 ) und (21-3 ) oder den Fenstern (22-1 ), (22-2 ) und (22-3 ) zugeordnet sind.
Claims (16)
- Bildverarbeitungsvorrichtung zum Lesen von Bilddaten, die in einer Vielzahl von Rahmenpuffern gespeichert sind, von denen jeder einer Schicht entspricht, und zum Überlagern und Anzeigen der Bilddaten, welche Vorrichtung umfasst: eine Bilddatenlesesektion zum Lesen der Bilddaten aus der Vielzahl von Rahmenpuffern, denen Transmissionsattribute zugeordnet sind, oder Fenstern, die zu der Vielzahl von Rahmenpuffern gehören und denen Transmissionsattribute zugeordnet sind, durch Scannen; eine Maskeninformationsspeichersektion zum Speichern von Maskeninformationen für Speicherzugriffsmaskenbereiche, die auf der Vielzahl von Rahmenpuffern oder den Fenstern definiert sind und denen unabhängige Transmissionsattribute zugeordnet sind; eine Maskenbereich-Innen/Außen-Bestimmungssektion zum Bestimmen, unter Bezugnahme auf die Maskeninformationen, ob Bilddaten, die gerade gescant werden, in einem der Speicherzugriffsmaskenbereiche liegen; und eine Überlagerungsprozesssektion zum Ausführen, falls die Bilddaten, die gerade gescant werden, in einem Speicherzugriffsmaskenbereich liegen, eines Überlagerungsprozesses gemäß einem Transmissionsattribut, das dem Speicherzugriffsmaskenbereich zugeordnet ist, ungeachtet der Transmissionsattribute, die der Vielzahl von Rahmenpuffern oder den Fenstern zugeordnet sind.
- Bildverarbeitungsvorrichtung nach Anspruch 1, bei der, falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich liegen und das Transmissionsattribut, das dem Speicherzugriffsmaskenbereich zugeordnet ist, transparent ist, die Überlagerungsprozesssektion verhindert, dass die Bilddatenlesesektion die Bilddaten liest, die gerade gescant werden.
- Bildverarbeitungsvorrichtung nach Anspruch 1, bei der, falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich liegen und das Transmissionsattribut, das dem Speicherzugriffsmaskenbereich zugeordnet ist, semitransparent ist, die Überlagerungsprozesssektion den Prozess ausführt zum Mischen einer Farbe der Bilddaten, die gerade gescant werden, und einer Farbe von entsprechenden Bilddaten auf einem Rahmenpuffer oder einem Fenster auf einer Schicht direkt unter einer Schicht, zu der die Bilddaten gehören, die gerade gescant werden.
- Bildverarbeitungsvorrichtung nach Anspruch 1, bei der, falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich liegen und das Transmissionsattribut, das dem Speicherzugriffsmaskenbereich zugeordnet ist, opak ist, die Überlagerungsprozesssektion verhindert, dass die Bilddatenlesesektion entsprechende Bilddaten auf einem Rahmenpuffer oder einem Fenster auf einer Schicht direkt unter einer Schicht liest, zu der die Bilddaten gehören, die gerade gescant werden.
- Bildverarbeitungsvorrichtung nach Anspruch 1, ferner mit Temporärtransmissionsattributshaltesektionen, die jeweils einer Schicht entsprechen, zum Halten, falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich liegen, des Transmissionsattributs des Speicherzugriffsmaskenbereichs und zum Halten, falls die Bilddaten, die gerade gescant werden, außerhalb der Speicherzugriffsmaskenbereiche liegen, eines Transmissionsattributs eines Rahmenpuffers oder eines Fensters, bei der die Überlagerungsprozesssektion einen Überlagerungsprozess gemäß dem Transmissionsattribut ausführt, das in einer Temporärtransmissionsattributshaltesektion gehalten wird.
- Bildverarbeitungsvorrichtung nach Anspruch 1, bei der: jeder der Speicherzugriffsmaskenbereiche ein Rechteck ist, das parallel zu einer horizontalen Koordinatenachse und einer vertikalen Koordinatenachse eines Rahmenpuffers oder eines Fensters angeordnet ist, und eine Position und eine Größe desselben durch horizontale Koordinaten und vertikale Koordinaten von gegenüberliegenden Vertices definiert sind; und die Maskeninformationsspeichersektion die horizontalen Koordinaten und die vertikalen Koordinaten der gegenüberliegenden Vertices speichert.
- Bildverarbeitungsvorrichtung nach Anspruch 1, bei der: eine Vielzahl von Speicherzugriffsmaskenbereichen für ein und denselben Rahmenpuffer oder ein und dasselbe Fenster festgelegt ist; und die Maskeninformationsspeichersektion die Priorität von jedem von der Vielzahl von festgelegten Speicherzugriffsmaskenbereichen speichert.
- Bildverarbeitungsvorrichtung nach Anspruch 7, bei der, falls wenigstens zwei von der Vielzahl von Speicherzugriffsmaskenbereichen, die für ein und denselben Rahmenpuffer oder ein und dasselbe Fenster festgelegt ist, wenigstens sich überlappen und verschiedene Transmissionsattribute haben, ein Transmissionsattribut eines Speicherzugriffsmaskenbereichs mit höherer Priorität als Transmissionsattribut eines Abschnittes selektiert wird, wo sich die zwei Speicherzugriffsmaskenbereiche überlappen.
- Bildverarbeitungsvorrichtung nach Anspruch 1, ferner mit: einer Überlagerungsordnungshaltesektion zum Halten der Ordnung, in der die Vielzahl von Rahmenpuffern oder die Fenster überlagert sind; und einer Detektionssektion einer effektiven untersten Schicht, zum Detektieren einer effektiven untersten Schicht gemäß einem Transmissionsattribut von Bilddaten in jeder Schicht, die gerade gescant werden, bei der die Bilddatenlesesektion Bilddaten nur von einem Rahmenpuffer oder einem Fenster liest, der oder das als effektive unterste Schicht angesehen wird, und von Rahmenpuffern oder Fenstern in Schichten, die höher als die effektive unterste Schicht sind.
- Bildverarbeitungsvorrichtung nach Anspruch 9, bei der die Detektionssektion der effektiven untersten Schicht auf die Ordnung Bezug nimmt, in der die Vielzahl von Rahmenpuffern oder die Fenster überlagert sind, dann, falls die Bilddaten, die gerade gescant werden, in dem Speicherzugriffsmaskenbereich liegen, das dem Speicherzugriffsmaskenbereich zugeordnete Transmissionsattribut in der Ordnung ab einer höchsten Schicht bestimmt, und, falls die Bilddaten, die gerade gescant werden, außerhalb der Speicherzugriffsmaskenbereiche liegen, ein Transmissionsattribut eines Rahmenpuffers oder eines Fensters in der Ordnung ab der höchsten Schicht bestimmt und eine erste Schicht, deren Transmissionsattribut als opak angesehen wird, als effektive unterste Schicht festlegt.
- Bildverarbeitungsvorrichtung zum Lesen von Bilddaten, die in einer Vielzahl von Rahmenpuffern gespeichert sind, von denen jeder einer Schicht entspricht, und zum Überlagern und Anzeigen der Bilddaten, welche Vorrichtung umfasst: eine Bilddatenlesesektion zum Lesen der Bilddaten aus der Vielzahl von Rahmenpuffern, denen Transmissionsattribute zugeordnet sind, oder Fenstern, die zu der Vielzahl von Rahmenpuffern gehören und denen Transmissionsattribute zugeordnet sind, durch Scannen; eine Überlagerungsordnungshaltesektion zum Halten der Ordnung, in der die Vielzahl von Rahmenpuffern oder die Fenster überlagert sind; und eine Detektionssektion einer effektiven untersten Schicht zum Detektieren bei jedem Rahmenpuffer oder jedem Fenster, ob der- oder dasselbe eine unterste Schicht von einer Kombination von Rahmenpuffern oder Fenstern ist, die zu lesen ist, gemäß einem Transmissionsattribut von Bilddaten, die gerade gescant werden, bei der die Bilddatenlesesektion Bilddaten nur von einem Rahmenpuffer oder einem Fenster liest, der oder das als unterste Schicht angesehen wird, und von Rahmenpuffern oder Fenstern auf Schichten, die höher als die unterste Schicht sind.
- Bildverarbeitungsvorrichtung nach Anspruch 11, bei der die Detektionssektion der effektiven untersten Schicht Bezug nimmt auf die Ordnung, in der die Vielzahl von Rahmenpuffern oder die Fenster überlagert sind, ein Transmissionsattribut, das jedem Rahmenpuffer oder jedem Fenster zugeordnet ist, in der Ordnung ab einer höchsten Schicht bestimmt und einen ersten Rahmenpuffer oder ein erstes Fenster, deren Transmissionsattribut als opak angesehen wird, als unterste Schicht festlegt.
- Bildverarbeitungsvorrichtung nach Anspruch 11, ferner mit einer Farbmischprozesssektion zum Mischen von Farben von Bilddaten auf Schichten in einer aufwärtigen Richtung ab dem Rahmenpuffer oder dem Fenster, der oder das als unterste Schicht angesehen wird.
- Graphikspeichereinheit zum Speichern von Bilddaten, welche Einheit eine Vielzahl von Rahmenpuffern umfasst, von denen jeder einer Schicht entspricht, bei der: Transmissionsattribute der Vielzahl von Rahmenpuffern oder Fenstern, die zu der Vielzahl von Rahmenpuffern gehören, zugeordnet sind; und Speicherzugriffsmaskenbereiche, denen unabhängige Transmissionsattribute zugeordnet sind, auf der Vielzahl von Rahmenpuffern oder den Fenstern definiert sind.
- Bildverarbeitungsvorrichtung zum Zeichnen eines Pixels durch Lesen von Elementen von Bilddaten für entsprechende Pixel von vielen Elementen von Bilddaten, die jeweils einer Schicht entsprechen, in der Ordnung ab einer höchsten Schicht und durch Überlagern und Anzeigen der Elemente von Bilddaten, welche Vorrichtung umfasst: eine Maskeninformationsspeichersektion zum Speichern von Maskeninformationen für jeden Maskenbereich, der einen Bereich angibt, in dem ein Transmissionsattribut unter Elementen von Bilddaten in einer Schicht dasselbe ist; und eine Bilddatenlesesektion, die, auf der Basis der Maskeninformationen, die Elemente von Bilddaten entsprechend dem einen Pixel in der Ordnung ab der höchsten Schicht liest und Elemente von Bilddaten in Schichten, die niedriger sind als eine Schicht, in der ein Transmissionsattribut opak ist, nicht liest.
- Bildverarbeitungsvorrichtung zum Zeichnen eines Pixels durch Lesen von Elementen von Bilddaten für entsprechende Pixel von vielen Elementen von Bilddaten, die jeweils einer Schicht entsprechen, in der Ordnung ab einer höchsten Schicht und durch Überlagern und Anzeigen der Elemente von Bilddaten, welche Vorrichtung umfasst: eine Maskeninformationsspeichersektion zum Speichern von Maskeninformationen für jeden Maskenbereich, der einen Bereich angibt, in dem ein Transmissionsattribut unter Elementen von Bilddaten in einer Schicht dasselbe ist; und eine Überlagerungsprozesssektion, die, auf der Basis der Maskeninformationen, die Elemente von Bilddaten entsprechend dem einen Pixel in der Ordnung ab der höchsten Schicht überlagert und Elemente von Bilddaten in Schichten, die niedriger sind als eine Schicht, in der ein Transmissionsattribut opak ist, nicht überlagert.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2004/005819 WO2005103877A1 (ja) | 2004-04-22 | 2004-04-22 | 画像処理装置及びグラフィックスメモリ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE112004002817T5 true DE112004002817T5 (de) | 2007-02-08 |
DE112004002817B4 DE112004002817B4 (de) | 2009-10-01 |
Family
ID=35197150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112004002817T Expired - Fee Related DE112004002817B4 (de) | 2004-04-22 | 2004-04-22 | Bildverarbeitungsvorrichtung und Graphikspeichereinheit |
Country Status (4)
Country | Link |
---|---|
US (1) | US8619092B2 (de) |
JP (1) | JP4522404B2 (de) |
DE (1) | DE112004002817B4 (de) |
WO (1) | WO2005103877A1 (de) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8358314B2 (en) * | 2008-02-08 | 2013-01-22 | Apple Inc. | Method for reducing framebuffer memory accesses |
JP5419440B2 (ja) * | 2008-12-26 | 2014-02-19 | 三菱電機株式会社 | グラフィックス表示装置及びグラフィカルユーザインタフェース実行装置 |
US8669993B2 (en) * | 2010-01-11 | 2014-03-11 | Apple Inc. | User interface unit for fetching only active regions of a frame |
US8493404B2 (en) * | 2010-08-24 | 2013-07-23 | Qualcomm Incorporated | Pixel rendering on display |
US9600350B2 (en) * | 2011-06-16 | 2017-03-21 | Vmware, Inc. | Delivery of a user interface using hypertext transfer protocol |
CN103748543B (zh) | 2011-08-11 | 2016-10-19 | 株式会社电装 | 显示控制设备 |
CN103733171B (zh) * | 2011-08-11 | 2016-11-09 | 株式会社电装 | 显示控制装置 |
US9514242B2 (en) | 2011-08-29 | 2016-12-06 | Vmware, Inc. | Presenting dynamically changing images in a limited rendering environment |
US9549045B2 (en) | 2011-08-29 | 2017-01-17 | Vmware, Inc. | Sharing remote sessions of a user interface and/or graphics of a computer |
JP5454654B1 (ja) | 2011-10-24 | 2014-03-26 | 株式会社デンソー | 表示制御装置、及び、表示画像割当方法 |
JP5505482B2 (ja) | 2011-10-24 | 2014-05-28 | 株式会社デンソー | 表示制御装置 |
JP5796566B2 (ja) | 2011-12-28 | 2015-10-21 | 株式会社デンソー | 表示制御装置 |
US9087409B2 (en) | 2012-03-01 | 2015-07-21 | Qualcomm Incorporated | Techniques for reducing memory access bandwidth in a graphics processing system based on destination alpha values |
US10515137B1 (en) | 2014-08-11 | 2019-12-24 | Loop Commerce, Inc. | Systems and methods of providing enhanced product visualization on a graphical display |
FR3029660B1 (fr) * | 2014-12-05 | 2017-12-22 | Stmicroelectronics (Grenoble 2) Sas | Procede et dispositif de composition d'une image video multi-plans |
KR102491499B1 (ko) | 2016-04-05 | 2023-01-25 | 삼성전자주식회사 | 소모 전류를 줄이는 방법 및 전자 장치 |
JP7334520B2 (ja) * | 2019-07-23 | 2023-08-29 | セイコーエプソン株式会社 | 描画順序決定方法、描画方法および描画装置 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2568172B2 (ja) * | 1985-07-24 | 1996-12-25 | キヤノン株式会社 | 画像情報処理装置 |
US4825391A (en) * | 1987-07-20 | 1989-04-25 | General Electric Company | Depth buffer priority processing for real time computer image generating systems |
US4982343A (en) * | 1988-10-11 | 1991-01-01 | Next, Inc. | Method and apparatus for displaying a plurality of graphic images |
JPH0445487A (ja) * | 1990-06-12 | 1992-02-14 | Daikin Ind Ltd | 合成表示方法およびその装置 |
JPH0685144B2 (ja) * | 1990-11-15 | 1994-10-26 | インターナショナル・ビジネス・マシーンズ・コーポレイション | オーバレイ及びアンダレイの選択的制御装置 |
US5351067A (en) | 1991-07-22 | 1994-09-27 | International Business Machines Corporation | Multi-source image real time mixing and anti-aliasing |
JP3413201B2 (ja) * | 1992-12-17 | 2003-06-03 | セイコーエプソン株式会社 | ウィンドウ型及び他の表示オペレーションのためのグラフィックス制御プレーン |
US5487145A (en) * | 1993-07-09 | 1996-01-23 | Taligent, Inc. | Method and apparatus for compositing display items which minimizes locked drawing areas |
JPH10124038A (ja) * | 1996-10-18 | 1998-05-15 | Fujitsu General Ltd | 画像合成装置 |
JP2000032334A (ja) * | 1998-07-10 | 2000-01-28 | Seiko Epson Corp | 画像処理装置および情報記録媒体 |
JP2000057317A (ja) * | 1998-08-06 | 2000-02-25 | Victor Co Of Japan Ltd | 画像合成方法及び画像合成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2000066659A (ja) * | 1998-08-21 | 2000-03-03 | Denso Corp | 画面合成装置及び方法、ナビゲーションシステム |
JP2000235643A (ja) * | 1999-02-17 | 2000-08-29 | Victor Co Of Japan Ltd | 画像合成方法 |
JP2000259822A (ja) * | 1999-03-11 | 2000-09-22 | Cec:Kk | 画像の透過合成方法 |
-
2004
- 2004-04-22 JP JP2006512462A patent/JP4522404B2/ja not_active Expired - Lifetime
- 2004-04-22 WO PCT/JP2004/005819 patent/WO2005103877A1/ja active Application Filing
- 2004-04-22 DE DE112004002817T patent/DE112004002817B4/de not_active Expired - Fee Related
-
2006
- 2006-09-14 US US11/520,704 patent/US8619092B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2005103877A1 (ja) | 2005-11-03 |
US8619092B2 (en) | 2013-12-31 |
US20070009182A1 (en) | 2007-01-11 |
DE112004002817B4 (de) | 2009-10-01 |
JP4522404B2 (ja) | 2010-08-11 |
JPWO2005103877A1 (ja) | 2008-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112004002817B4 (de) | Bildverarbeitungsvorrichtung und Graphikspeichereinheit | |
DE69735975T2 (de) | System und Verfahren zur Überlagerung von wahlweise in unterschiedlichen nativen Formaten gespeicherten Bildern | |
DE69635403T2 (de) | Grafikbibliothek auf geteilten Ebenen | |
DE10005812B4 (de) | Vom Benutzer ausgewählte Anzeige von zweidimensionalem Fenster in drei Dimensionen auf einem Rechnerbildschirm | |
DE69817634T2 (de) | Vorrichtung und Verfahren zur Anzeige von Fenstern | |
DE10159357B4 (de) | Vorrichtung zum Ausführen einer transparenten Verarbeitung von Stand- und Bewegtbildern und Verfahren zur Durchführung | |
DE602004011015T2 (de) | Portables Videospiel und maschinenlesbares Speichermedium | |
DE602004010777T2 (de) | Alphamischung auf Basis einer Nachschlagtabelle | |
DE60105510T2 (de) | Bilderzeugungsgerät | |
DE60008867T2 (de) | Antialiasingverfahren und -anordnung zur effizienten nutzung von wenigen mischeinheiten | |
DE4033465C2 (de) | Interaktives Computer-gesteuertes Displaysystem | |
DE102006022062A1 (de) | Verfahren und Vorrichtung zur effizienten Bilddrehung | |
DE102005050846A1 (de) | Perspektiveneditierwerkzeuge für 2-D Bilder | |
DE3346816A1 (de) | Sichtanzeigeanordnung fuer verschiedenartige zeicheninformationen | |
DE102018125472B4 (de) | Grafikprozessor, der Abtastungs-basiertes Rendering durchführt, und Verfahren zum Betreiben desselben | |
DE60118222T2 (de) | Skalieren von bildern | |
AT389773B (de) | Speicherzugriff-steuereinrichtung | |
DE60033589T2 (de) | Bildverarbeitung | |
DE10239052A1 (de) | Kartenbildverarbeitungsvorrichtung, sowie Verfahren zur Erzeugung einer Ansicht aus Vogelperspektive von einem zweidimensionalen Kartenbild | |
DE4431304C2 (de) | Steuerschaltung für die Farbsteuerung einer Anzeigevorrichtung in unterschiedlichen Betriebsarten | |
DE19653438A1 (de) | Bildanzeige-Steuerungsvorrichtung | |
DE102010003529A1 (de) | Kartenanzeigevorrichtung | |
DE69912034T2 (de) | Bildverarbeitungsgerät | |
DE10240313B4 (de) | Bildverarbeitungsvorrichtung mit einem Verarbeitungsvorgang Koordinatenberechung | |
DE3822594A1 (de) | Anzeigeeinrichtung fuer bildinformation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8125 | Change of the main classification |
Ipc: G09G 5/00 AFI20061109BHDE |
|
8127 | New person/name/address of the applicant |
Owner name: FUJITSU MICROELECTRONICS LTD., TOKYO, JP |
|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: FUJITSU SEMICONDUCTOR LTD., YOKOHAMA, KANAGAWA, JP |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE |
|
R082 | Change of representative |
Representative=s name: REICHERT & LINDNER PARTNERSCHAFT PATENTANWAELT, DE |
|
R081 | Change of applicant/patentee |
Owner name: SOCIONEXT INC., YOKOHAMA-SHI, JP Free format text: FORMER OWNER: FUJITSU SEMICONDUCTOR LTD., YOKOHAMA, KANAGAWA, JP Effective date: 20150512 |
|
R082 | Change of representative |
Representative=s name: REICHERT & LINDNER PARTNERSCHAFT PATENTANWAELT, DE Effective date: 20150512 |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |