DE3788141T2 - Graphik- und Datenanzeigesystem. - Google Patents

Graphik- und Datenanzeigesystem.

Info

Publication number
DE3788141T2
DE3788141T2 DE87300122T DE3788141T DE3788141T2 DE 3788141 T2 DE3788141 T2 DE 3788141T2 DE 87300122 T DE87300122 T DE 87300122T DE 3788141 T DE3788141 T DE 3788141T DE 3788141 T2 DE3788141 T2 DE 3788141T2
Authority
DE
Germany
Prior art keywords
data
source
rectangle
destination
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE87300122T
Other languages
English (en)
Other versions
DE3788141D1 (de
Inventor
Arthur Amos Kauffman
John Stephen Muhich
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE3788141D1 publication Critical patent/DE3788141D1/de
Publication of DE3788141T2 publication Critical patent/DE3788141T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • G06T3/606Rotation of whole images or parts thereof by memory addressing or mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Digital Computer Display Output (AREA)
  • Memory System (AREA)
  • Image Generation (AREA)

Description

  • Die Erfindung bezieht sich auf ein Grafik- und Datenanzeigesystem und dabei insbesondere auf ein Anzeigesystem mit einem Speicher, der über Bitblockübertragungsfähigkeiten verfügt.
  • Bitabgebildete Anzeigen behandeln den Bildschirm als diskrete rechteckige Mascheneinrichtung oder als Punktmatrix. Diese Punkte werden als Pels oder Pixel (Bildelemente) bezeichnet. Jedes Pel wird durch ein oder mehrere Bits im Speicherfeld der Anzeige dargestellt. Ein nützliche Funktion der bitabgebildeten Anzeigen besteht darin, einen rechteckigen Pel-Block von einer Stelle in der Bitabbildung zu einer anderen Stelle zu bewegen, und das Quellrechteck mit dem Zielrechteck logisch zu verbinden. Zu diesen logischen Funktionen gehören UND, ODER, EXKLUSIV ODER, ERSETZEN, usw. Die Funktion kann ohne Unterstützung der Hardware durchgeführt werden, ist jedoch sehr platzintensiv und benötigt lange Ausführungszeiten.
  • Die Fähigkeit eine Reihe von Pel-Daten an einer beliebigen Pel- oder Pixel-Speicherstelle im Speicher zu lesen oder zu schreiben wird als Bitadressierbarkeit bezeichnet. Diese Fähigkeit war aufgrund des herkömmlichen Layouts und der Steuerung des Bitabbildungsspeichers nur auf horizontale Pel- Reihen beschränkt, entlastete jedoch dennoch die Software.
  • Ein Beispiel für einen Bildverarbeitungsspeicher ist in der US-Patentschrift US-A-4 090 174 mit dem Titel 'Method and Apparatus for accessing Horizontal Sequences, Vertical Sequences and Rectangular Subarrays from an Array Stored in a Modified Word Organised Random Access Memory System' beschrieben, die auf diesen Empfänger übertragen wurde.
  • Ein Beispiel für ein Bildmanipulationssystem mit einem Bildverarbeitungsspeicher wird in der US-Patentschrift US-A-3 976 982 mit dem Titel 'Apparatus for Image Manipulation' beschrieben, die auf diesen Empfänger übertragen wurde. Das System führt Stellenübersetzung, selektive Größenbestimmung, Spiegeln und Umdrehung von Schwarz/Weiß-Bildern durch, wobei jedes Pel nur durch ein Bit dargestellt ist.
  • Die Erfindung stellt gemäß den Ansprüchen ein Datenanzeigesystem mit einer Speicherschaltung vor, wobei das System Speicherschaltmittel zum Speichern bitadressierbarer binären Daten umfaßt, die anzuzeigende Bildelemente darstellen, und die Daten in zweidimensionaler Richtung angeordnet sind; Mittel zum Zugriff auf einen rechteckigen Block von Bildelementdaten im Speicherschaltmittel in den beiden dimensionalen Richtungen, wobei die Zugriffsmittel Mittel zur Inkrement- oder Dekrementadressierung des Datenblocks in mindestens einer dimensionalen Richtung umfassen; und Mittel zum Bewegen des Datenblocks zu einer anderen dimensionalen Stelle, während die Daten innerhalb des Blocks aufrechterhalten bleiben, wobei die Bewegungsmittel Mittel zum Lesen der Daten im Speicherschaltmittel in einer ersten dimensionalen Richtung und zum Schreiben der Daten in einer zweiten anderen dimensionalen Richtung umfassen; das System ist dabei dadurch gekennzeichnet, daß die Zugriffsmittel des weiteren Mittel zum Zugriff auf eine variable Anzahl von Bits in einer Zugriffsoperation umfassen.
  • Die Zugriffsmittel umfassen weiterhin Mittel zum Durchführen von logischen Operationen auf den an verschiedenen Speicherstellen und in verschiedenen dimensionalen Richtungen im Speicherschaltmittel gespeicherten Daten, wobei die logischen Operationsmittel darüber hinaus Mittel zum Zugriff auf einen ersten Datenblock als Quelldaten und einen zweiten Datenblock aus Zieldaten umfassen, die Mittel eine logische Operation auf den Quell- und Zieldaten durchführen und die Enddaten auf den Adressen der Zieldaten speichern.
  • Um die Erfindung besser zu verstehen, wird ein bevorzugtes Ausführungsbeispiel nachfolgend anhand von Begleitzeichnungen beschrieben.
  • Fig. 1 ist ein Blockdiagramm des mikrocodierten Prozessors.
  • Die Fig. 2a und 2b sind Fließdiagramme der Schritte, die vom Prozessor unternommen werden, um die hier beschriebene Funktion durchzuführen.
  • Fig. 3 zeigt die Misch- oder Kopierfunktion der Bitblockübertragung, bei der das Zielrechteck physisch über dem Quellrechteck liegt.
  • Fig. 4 zeigt die Misch- oder Kopierfunktion der Bitblockübertragung, bei der das Zielrechteck physisch unter dem Quellrechteck liegt.
  • Fig. 5 zeigt die Misch- oder Kopierfunktion der Bitblockübertragung, bei der das Zielrechteck physisch links vom Quellrechteck liegt.
  • Fig. 6 zeigt die Misch- oder Kopierfunktion der Bitblockübertragung, bei der das Zielrechteck physisch rechts vom Quellrechteck liegt.
  • Fig. 7 zeigt die Misch- oder Kopierfunktion der Bitblockübertragung um +90 Grad.
  • Fig. 8 zeigt die Misch- oder Kopierfunktion der Bitblockübertragung um -90 Grad.
  • Fig. 9 zeigt die X-achsensymmetrische Misch- oder Kopierfunktion der Bitblockübertragung um 180 Grad.
  • Fig. 10 zeigt die Y-achsensymmetrische Misch- oder Kopierfunktion der Bitblockübertragung um 180 Grad.
  • Bezug nehmend auf die Zeichnen wird ein System vorgestellt, das Bitblockübertragungen innerhalb der Anzeigespeicherabbildung durchführt. Die Erfindung umfaßt dabei einen Prozessor und Schaltungen zusammen mit einem Mikrocode, um zahlreiche Bitblockübertragungsfunktionen zu ermöglichen, zu denen leistungsstarke Ausführungszeit und extrem wenig Codeplatzbeanspruchung gehören.
  • Der mikrocodierte Prozessor wird als Rasterop-Vorrichtung bezeichnet. Ein Raster ist ein Rechteck mit diskreten Elementen, beispielsweise Bildelemente oder Punkte auf einem Bildschirm. Die Rasterop-Vorrichtung ist ein Prozessor, der Operationen auf Rastern durchführt. In diesem Fall handelt es sich um Raster aus rechteckigen Bereichen, die aus Bildeleinenten (Pixel oder Pels) bestehen.
  • Die einzigartigen Schaltungen ermöglichen innere und äußere Schleifen des zu schreiben Bitblockübertragungscodes mit einem Funktionssatz. Der gleiche Code kann jedoch unterschiedliche Eigenschaften bieten, wenn er von unterschiedlichen Setup- Codes entsprechend aktiviert wird. Durch die Verwendung verschiedener Kombinationen dieser Hardware-Features können zahlreiche nützliche Funktionen durchgeführt werden. Die innere Schleife ist Bestandteil der Schritte 42, 44, 46, 48, 50 und 52 in Fig. 2b. Die äußere Schleife der Schritte 40, 54, 56, 58 und 60 in Fig. 2b.
  • Zu diesen Hardware-Features gehören Bitadressierbarkeit in vertikaler und horizontaler Richtung (siehe die Patentschrift EP-A-0191280, auf die hier als Referenz verwiesen wird mit Bezug auf BAMDA oder bitadressierbares multidimensionales Feld). Der Speicher ermöglicht das Lesen von 16 Bits und das Schreiben von bis zu 16 Bits auf jeder Bitgrenze, während die Schreibrichtung sowohl horizontal als auch vertikal sein kann. Dadurch wird die Anfangsrandbedingung umgangen, die normalerweise bei bitabgebildeten Anzeigen gegeben ist, die nicht über Bitadressierbarkeit verfügen. Ohne Bitadressierbarkeit haben die Quell- und Zieladressen nicht die gleiche Ausrichtung in bezug auf die Byte- oder Wortgrenzen. Die Anfangsrandbedingung erfordert möglicherweise zwei Lesezugriffe auf die Quelldaten, plus Verschieben und Maskieren, um das Schreiben auf die Zieladressen zu ermöglichen. Mit Hilfe der Bitadressierbarkeit ist der Codeplatz weniger umfangreich und die Ausführungszeit für die Bitblockübertragung geringer.
  • Hinzu kommt ein Logikfunktionsgenerator, um die Quell- und Zieldaten miteinander zu verbinden. Dieser Vorgang wird unabhängig von der Zugriffsrichtung auf die Quelldaten oder der Zugriffsrichtung auf die Zieldaten problemlos durchgeführt.
  • Des weiteren ist Maskenerzeugungs-Hardware vorhanden, die eine Schreibmaske auf der Grundlage der inneren Schleifenzählung des Bitblockübertragungscodes bildet. Das Anfangsrandproblem wurde durch die Bitadressierbarkeit gelöst. Das Lesen und Schreiben der Bitabbildung wird mit Slices von 16 Bits fortgesetzt, bis die innere Schleifenzählung auf unter 16 fällt. Normalerweise würde sich eine Routine zu einem externen Code verzweigen, um das teilweise Schreiben am Ende der inneren Schleife durchzuführen. Der externe Code würde eine Berechnung ausführen und die richtige Schreibmaske für das partielle Schreiben bilden. Bei dieser Erfindung ist dies nicht erforderlich, da die Schreibmaske immer automatisch von der Schaltung der inneren Schleifenzählung des Bitblockübertragungscodes erzeugt wird, wodurch Codeplatz gespart und die Ausführungszeit gekürzt wird.
  • Darüber hinaus sind Ink/Dek-Umschaltungen (Inkrement und Dekrement) zum Ändern der Quell- und Zieladressen vorhanden. Mit Hilfe dieser Ink/Dek-Umschaltung kann eine Schleife mit zahlreichen Funktionen geschrieben werden. Während der Ausführungszeit kann die Ink/Dek-Umschaltung aktiviert werden, um die entgegengesetzte Funktion durchzuführen. Wenn die Schaltung aktiviert ist, wird der Inkrementbefehl als Dekrement durchgeführt, und umgekehrt. Dadurch kann der Coder veranlassen, daß eine Schleife verschiedene Funktionen durchführt, indem einfach eine andere Setup-Routine verwendet wird. Dies führt zu beträchtlichen Einsparungen beim Codeplatz.
  • Des weiteren ist eine Vertikaleinstellschaltung vorhanden, die den Bitabbildungszugriff von der Standardrichtung (horizontale Richtung) zur vertikalen Richtung ändert. Durch die Schaffung von Setup-Routinen, bei denen die gleiche Schleife verschiedene Funktionen durchführt, kann eine hohe Flexibilität erzielt werden.
  • Eine 90 Grad-Umschaltung ändert die Zugriffsrichtung von horizontal zu vertikal oder von vertikal zu horizontal. Damit kann die gleiche Schleife unterschiedliche Funktionen durchführen, je nachdem, ob die 90 Grad-Umschaltfunktion aktiviert ist.
  • Die nachfolgende Beschreibung zeigt, wie acht unterschiedliche Bitblockübertragungsfunktionen von der gleichen inneren und äußeren Codeschleife durchgeführt werden. Dies beruht auf verschiedenen mikrocodierten Setup-Routinen, die in verschiedenen Verbindungen die oben beschriebenen speziellen Hardware-Schaltungen aktivieren.
  • Die Erfindung bezieht sich auf die Bewegung eines Pel- Rechtecks von einer Quellstelle zu einer Zielstelle. Bei dieser Implementierung wird eine einzigartige Kombination von Hardware-Schaltungen verwendet, um eine große Anzahl von Bitblockübertragungsfunktionen durchzuführen. Der Anfang des Bildschirms befindet sich bei diesem Anzeigesystem in der oberen linken Ecke. Die X-Adresse erhöht sich in positiver Richtung nach rechts, und die Y-Adresse in positiver Richtung zum unteren Rand des Bildschirms.
  • Fig. 1 ist ein Blockdiagramm der Rasterop-Vorrichtung und des entsprechenden Bitabbildungsspeichers. Der Prozessor 20 holt horizontal mikrocodierte Befehle, die verschiedene Teile der Hardware steuern. Der Prozessor steuert die Funktionen des Registerfelds 1, des X-Registers 9, des Y-Registers 8, der Ink/Dek-Umschaltflags 3 und 4, des 90 Grad-Umschalt-Flag 5, des Vertikal/Horizontal-Flag 6, der Maskengenerator-Hardware 7 und des Logikfunktionsgenerators 19. Der Prozessor steuert diese Funktionen auf Leitung 21. Der Prozessor steuert darüber hinaus die Rechen- und Steuereinheit 2 über Leitung 21, und die Steuerflags 3, 4, 5 und 6, sowie Leitung 15. Der bitadressierbare multidimensionale Zugriffsspeicher (BAMDA) 10 stellt den Speicher für die Bitabbildung dar, wo sich die Quell- und Zieldaten befinden. BAMDA bezieht sich auf die Patentschrift EP-A-0191280, auf die hier als Referenz verwiesen wird. Das X- Register 9 und das Y-Register 8 liefern die Adresse über die Leitungen 16 und 17 zum Speicher 10. Diese Adressen kommen vom Registerfeld 1 über die ALU (Rechen- und Steuereinheit) 2 auf Leitung 12. Die Adressen können zum Registerfeld 1 zurückgebracht werden, oder entweder zu den Speicheradressen von X- Register 9 oder Y-Register 8 auf Leitung 11 gesendet werden. Die Zugriffsrichtung (horizontal oder vertikal) auf den Speicher 10 wird durch die Verbindung des 90 Grad-Umschalt-Flag 5 und des Vertikal/Horizontal-Flag 6 auf Leitung 15 gesteuert. Wenn Daten in den Speicher 10 geschrieben werden, legen das 90 Grad-Umschalt-Flag 5 und das Vertikal/Horizonal-Flag 6 die Zugriffsrichtung über Leitung 15 fest. Um die Schreibmaske zu bilden, wird die innere Schleifenzählung im Registerfeld 1 auf Leitung 12 zum Maskengenerator 7 gesendet, der eine kombinatorische Logik ist, auf die an späterer Stelle noch eingegangen wird. Der Maskengenerator 7 gibt an die Schreibsteuerlogik des Speichers 10 auf Leitung 13 aus. Die Quelldaten werden mit den Zieldaten durch den Logikfunktionsgenerator 19 (der eine noch erörterte kombinatorische Logik ist) auf Leitung 18 verbunden. Die äußeren Schleifenvariablen im Registerfeld 1 werden zur ALU 2 auf Leitung 12 gesendet und durch die Ink/Dek-Umschaltfunktionsflags 3 und 4 inkrementiert oder dekrementiert. Diese Steuer-Flags werden auf Leitung 15 zur ALU 2 gesendet.
  • Der Maskengenerator 7 umfaßt ein Netz von kombinatorischen Logiken, die entsprechend den Angaben in Tabelle I arbeiten.
  • Die Tabelle zeigt, wie die zehn Bits der inneren Schleifenzählung vom Registerfeld 1 durch die kombinatorische Logik 7 in die Schreibmaske umgewandelt werden. Es wird immer die gleiche Anzahl von Bits vom Bitabbildungsspeicher 10 gelesen, gelegentlich ist jedoch der Fall gegeben, wo weniger Bits in den Bitabbildungsspeicher geladen werden sollen. Im bevorzugten Ausführungsbeispiel ermöglicht die Schreibmaske das selektive Schreiben einer beliebigen Anzahl von Bits, beispielsweise von 0 bis 16. In Tabelle zeigt die zweite Spalte mit der Überschrift "Ausgang des Maskengenerators" die sich ergebende Schreibmaske mit Bezug auf die innere Schleifenzählung in der ersten Spalte. Die binären Einsen in der Schreibmaske weisen darauf hin, daß das entsprechende Bit aktualisiert wird. Eine binäre Null zeigt an, daß das entsprechende Bit im Bitabbildungsspeicher nicht aktualisiert wird. Die Bitadressierbarkeit des Bitabbildungsspeichers 10 in vertikaler und horizontaler Richtung bedeutet, daß sich das am weitesten links liegende Bit der Schreibmaske auf das Bit auswirkt, das durch die 10- Bit Y-Adresse im Y-Register 8 und die 10-Bit X-Adresse im X- Register 9 angezeigt wird. Die anderen Bits in der Reihe der zu schreibenden Bits befinden sich in positiver Richtung. Wenn die Zugriffsrichtung horizontal ist, werden sie in positiver Richtung (nach rechts) in Bezug auf das am weitesten links gelegene Bit der Schreibmaske geschrieben. Wenn die Zugriffsrichtung vertikal ist, werden sie in positiver Richtung (nach unten) in Bezug auf das am weitesten links gelegene Bit der Schreibmaske geschrieben. Der Schreibmaskengenerator 7 bildet eine Schreibmaske von der inneren Schleifenzählung im Registerfeld 1. Der Anfangswert für die innere Schleifenzählung ist die Anzahl der zu schreibenden Pels minus eins. Dies wird nachfolgend anhand des Fließdiagramms von Fig. 2a und 2b noch näher erläutert. Der Grund, warum der Maskengenerator 7 die Anzahl der zu schreibenden Pels minus eins verwendet, liegt in der konditionalen Verzweigungslogik des Mikrocodes. Gleichzeitig mit dem Abziehen der gelesenen Pels sollte auch erfaßt werden, wann die innere Schleife beendet ist. Die einzige geeignete Bedingung ist dann gegeben, wenn die innere Schleifenzählung weniger als Null (negativ) ist. Wenn die Schreibmaske von der Anzahl von Pels minus eins anstatt nur von der Anzahl der Pels erzeugt wird, kann größere Effizienz erreicht werden, da die konditionalen Verzweigungen aufgrund von Implementierungszwängen nicht verbessert werden.
  • Der Logikfunktionsgenerator 19 in Fig. 1 führt logische Operationen auf dem Dateneingang des Bitabbildungsspeichers 10 durch. Es kann sich hierbei um ein Texas Instruments-Gerät der Nummer 74181 oder um ein anderes erhältliches Gerät mit ähnlichen Funktionen handeln.
  • Fig. 2a und 2b ist ein Fließdiagramm, das die 8 verschiedenen Setup-Routinen 30, 31, 32, 33, 34, 35, 36 und 37 zeigt, die in die innere und äußere Schleife eingespeist werden. Die innere Schleife besteht aus den Befehlen 42, 44, 46, 48, 50 und 52. Die äußere Schleife besteht aus den Befehlen 40, 54, 56, 58 und 60. Der Pfad in die innere und äußere Schleife von Fig. 2b beginnt mit einer von fünf spezifizierten Operationen. Wenn die Operation wie in den Fig. 3 bis 6 gezeigt eine Kopierfunktion ist, stellt der Mikrocode fest, welcher der vier Fälle auf diese bestimmte Kopieroperation zutrifft. Der entsprechende Setup-Code 30, 31, 32 oder 33 wird ausgewählt und wie in Fig. 2a und 2b gezeigt auf die entsprechenden Leitungen 62, 64, 66 und 68 verzweigt. Die anderen vier Kopierfunktionen werden direkt spezifiziert, und der entsprechende Setup-Code 34, 35, 36 oder 37 wird mittels der entsprechenden Leitungen 70, 72, 74, und 76 verzweigt. Die 8 Mikrocode-Funktionen, die in die gleiche innere Schleife 30, 31, 32, 33, 34, 35, 35 und 37 eingespeist werden, verwenden unterschiedliche Kombinationen der beiden Ink/Dek-Umschalt-Flags 3 und 4 in Fig. 1, des 90 Grad-Umschalt-Flag 5 und des Vertikal/Horizontal-Flag 6. Durch die Kombinierung dieser Steuer- Flags können einzelne innere und äußere Mikrocode-Schleifen acht verschiedene Funktionen durchführen. Das Fließdiagramm wird für den Standardfall noch näher erläutert, wo die Quell- und Zielrechtecke sich überschneiden, wobei sich das Ziel rechteck wie in Fig. 3 gezeigt physisch über dem Quellrechteck befindet.
  • Die Fig. 3 bis 10 zeigen, wie diese Hardware-Features kombiniert werden, um die 8 Bitblockübertragungsfunktionen dieser Erfindung auf einer Anzeige 100 zu bilden. In den Fig. 3 bis 6 werden die Fälle dargestellt, bei denen die Bitblockübertragung ein Misch- oder Kopiervorgang ist und die Quell- und Zielrechtecke überlappen. Misch- oder Kopieroperationen dieser Art drehen die Daten bei der Übertragung nicht. Die Quelle wird in gleicher Richtung (horizontal oder vertikal) gelesen, wie das Ziel geschrieben wird.
  • Fig. 3 stellt den Fall dar, bei dem das Zielrechteck sich physisch über dem Quellrechteck befindet. Dies kann als Standardfall angesehen werden, während alle anderen sieben Fälle Variationen davon sind. Der Umfang der horizontalen Verschiebung zwischen Quelle und Ziele spielt keine Rolle. Der Zugriff auf die Bitabbildung ist horizontal sowohl für das Quell- als auch das Zielrechteck, und die äußere Schleife inkrementiert die Quell- und Ziel-Y-Adressen. Die innere Schleife liest die Quelle und schreibt das Ziel von links nach rechts in horizontalem Modus, bis die innere Schleife abgelaufen ist. Um den nächsten Teil des Rechtecks abzutasten, inkrementiert die äußere Schleife für die Quell- und Zieladressen die Y-Adresse. Die innere Schleifenzählung wird vom Registerfeld 1 in Fig. 1 aufgefrischt, und ein weiterer Teil des Rechtecks wird von links nach rechts abgetastet.
  • Das in Fig. 3 gezeigte Beispiel wird verwendet, um das Fließdiagramm in den Fig. 2a und 2b zu erklären. In diesem Fall befindet sich das Zielrechteck über dem Quellrechteck. Dies entspricht 30 in Fig. 2. Dieser Setup-Code setzt keines der Steuer-Flags. Es setzt weder die beiden Ink/Dek-Umschalt-Flags 3 oder 4, noch das 90 Grad-Umschalt-Flag 5, noch das Vertikal/Horizontal-Flag 6. Der äußere Schleifenschritt 40 lädt die innere Schleifenzählung von einem Register, das eine Kopie der inneren Schleifenzählung bereithält. Beide Register befinden sich im Registerfeld 1 von Fig. 1. Im Fall von Fig. 3 ist die innere Schleifenzählung die Anzahl der Pels in horizontaler Richtung minus eins, oder in anderen Worten die Breite des Rechtecks minus eins.
  • Mit Schritt 42 beginnt die innere Schleife. Bei diesem Schritt werden die Daten des Quellrechtecks gelesen. Da das Vertikal/Horizontal-Flag 6 nicht vom Setup-Code 30 in der Standardrichtung (horizontal) geändert wurde, wird in horizontaler Richtung auf die Quelle zugegriffen. Bei Schritt 44 erfolgt keine Operation, da das 90 Grad-Umschalt-Flag 5 nicht gesetzt wurde. Wenn das 90 Grad-Umschalt-Flag gesetzt worden wäre, wäre die Zugriffsrichtung von horizontal auf vertikal geändert worden, oder umgekehrt. Die bei Schritt 42 gelesenen Daten werden durch Schritt 46 in den Speicher 10 geschrieben. Da Schritt 44 die Speicherzugriffsrichtung nicht geändert hat, und da die Anfangszugriffsrichtung des Setup-Codes 30 horizontal war, werden die Daten in horizontaler Richtung in den Speicher 10 geschrieben. Bei Schritt 48 wird keine Operation unternommen, da der Setup-Code das 90 Grad-Umschalt-Flag 5 nicht aktiviert (gesetzt) hat. Schritt 50 dekrementiert die innere Schleifenzählung um die Anzahl der Pels, die während eines Speicherzugriffs gelesen werden. Schritt 52 prüft, ob die innere Schleifenzählung abgelaufen ist. Wenn mehr Pels zur Vervollständigung der Breite des Rechtecks in Fig. 3 vorhanden sind, wird zurück zu Schritt 42 gegangen und der innere Schleifenprozeß fortgesetzt. Wenn die innere Schleifenzählung abgelaufen ist, geht die Steuerung an Schritt 54, der die äußere Schleifenzählung um 1 dekrementiert. Wenn der letzte Schreibvorgang nur ein teilweises Schreiben beinhaltet (weniger als 16 Bits), wird die entsprechende Schreibmaske richtig erzeugt, da die innere Schleifenzählung im Registerfeld 1 immer zum Maskengenerator 7 auf Leitung 12 gesendet wird. Wenn die innere Schleifenzählung 15 oder mehr beträgt, ist die Anzahl der geschriebenen Bits 16. Wenn die innere Schleifenzählung jedoch weniger als 15 beträgt, wird die Anzahl der Bits geschrieben, die der inneren Schleifenzählung plus eins entspricht.
  • Sobald die innere Schleifenzählung abgelaufen ist, geht die Steuerung zu Schritt 54. Bei diesem Schritt wird die äußere Schleifenzählung um eins dekrementiert. Die äußere Schleifenzählung ist die Anzahl der Pels, die die orthogonale Seite des Rechtecks in Bezug zu der von der inneren Schleife abgetasteten Seite darstellt. In Fig. 3 handelt es sich dabei um die vertikale Seite 90, oder in anderen Worten um die Höhe des Rechtecks. Schritt 56 prüft, ob die äußere Schleifenzählung abgelaufen ist. Wenn dies der Fall ist, ist die Bitblockübertragung beendet. Andernfalls müssen noch weitere Schritte ausgeführt werden, so daß die Steuerung zu Schritt 58 geht. Schritt 58 ist codiert und inkrementiert im Standardfall die äußere Schleifenadresse des Quellrechtecks. Wenn das Ink/Dek- Umschalt-Flag eins 3 vom Setup-Code gesetzt wurde, wird die äußere Schleifenadresse des Quellrechtecks dekrementiert. Im Fall von Fig. 3 wurden kein Ink/Dek-Umschalt-Flag vom Setup- Code 30 gesetzt, so daß Schritt 58 als Inkrementierung ausgeführt wird. Schritt 60 ist mit Schritt 58 vergleichbar, bezieht sich jedoch auf die äußere Schleifenadresse des Zielrechtecks. Schritt 60 inkrementiert die äußere Zielschleifenadresse, sofern das Ink/Dek-Umschalt-Flag 4 in Fig. 1 nicht vom Setup-Code gesetzt wurde. Wenn der Setup-Code die Ink/Dek-Umschalt-Flagnummer zwei 4 in Fig. 1 gesetzt (aktiviert) hätte, würde dies die äußere Zielschleifenadresse dekrementieren. Da das Ink/Dek-Umschalt-Flag Nummer zwei 4 nicht vom Setup-Code 30 gesetzt wurde, inkrementiert Schritt 60 die äußere Zielschleifenadresse. Die Steuerung geht zu Schritt 40 zurück, der die zuvor abgelaufene innere Schleifenzählung wiederherstellt, und die innere Schleifenzählung fährt wie oben beschrieben fort.
  • Zusammenfassend zu Fig. 3 läßt sich sagen, daß die innere Schleife in horizontaler Richtung auf das Quellrechteck zugreift und die X-Adresse des Quellrechtecks inkrementiert.
  • Die innere Schleife greift in horizontaler Richtung auf das Zielrechteck zu und inkrementiert die X-Adresse des Zielrechtecks. Die äußere Schleife inkrementiert die Y-Adresse des Quellrechtecks und die Y-Adresse des Zielrechtecks.
  • Fig. 4 zeigt den Fall, bei dem sich das Zielrechteck physisch unter dem Quellrechteck befindet. Wie in Fig. 3 spielt die horizontale Verschiebung zwischen Quell- und Zielrechteck keine Rolle. Fig. 4 zeigt, daß der Quell- und Zielzugriff immer noch horizontal ist, die Ink/Dek-Umschaltfunktionen 3 und 4 in Fig. 1 wurden jedoch aktiviert, um die Y-Adressen der Quell- und Zielrechtecke durch die äußere Schleife zu aktualisieren. Dies führt dazu, daß das Rechteck bei der inneren Schleife von links nach rechts, und bei der äußeren Schleife von unten nach oben abgetastet wird. Solange die vertikale Verschiebung in Fig. 3 und Fig. 4 nicht Null ist, wird das Ziel ohne Beeinträchtigung der Quelldaten geschrieben. Der Setup-Code, der die Flags 3 und 4 setzt, ist Block 31 in Fig. 2. Die Schritt 58 und 60 führen aufgrund der Aktivierung der Ink/Dek-Umschalt-Flags 3 und 4 in Fig. 1 durch den Setup-Code 31 in Fig. 2 eine Dekrementierung durch.
  • Zusammenfassend zu Fig. 4 läßt sich sagen, daß die innere Schleife auf das Quellrechteck in horizontaler Richtung zugreift und die X-Adresse inkrementiert. Die innere Schleife greift in horizontaler Richtung auf das Zielrechteck zu und inkrementiert die X-Adresse. Die äußere Schleife dekrementiert die u-Adresse des Quellrechtecks und die Y-Adresse des Zielrechtecks.
  • Fig. 5 zeigt den Fall einer vertikalen Null-Verschiebung zwischen Quelle und Ziel, wobei das Zielrechteck sich physisch links von der Quelle befindet. Da die horizontale Verschiebung eine beliebige Pel-Zahl betragen kann, ist der sicherste Weg zum Lesen der Quelle und Schreiben des Ziels in der inneren Schleife die vertikale Richtung. Dies wird dadurch erreicht, daß der Setup-Code 32 das Vertikal/Horizontal-Flag 6 in Figur 1 in den vertikalen Modus setzt. Die Quelle wird bei Schritt 42 in vertikaler Richtung gelesen. Bei Schritt 44 wird keine Operation durchgeführt, da das 90 Grad-Umschalt-Flag 5 vom Setup-Code nicht gesetzt (aktiviert) wurde. Das Schreiben der Quelle findet im vertikalen Modus statt und Schritt 48 hat entsprechend keinen Einfluß auf die Zugriffsrichtung. Die Ink/Dek-Flags 3 und 4 in Fig. 1 werden vom Setup-Code 32 nicht gesetzt (aktiviert). Die Schritte 58 und 60 führen Inkrementierungen zur Aktualisierung der äußeren Ziel- und Quellschleifenadressen durch. Das Rechteck wird bei der inneren Schleife von oben nach unten abgetastet, und in der äußeren Schleife von rechts nach links. Der Setup-Code, der das Steuer-Flag 6 setzt, ist Block 32 in Fig. 2.
  • Zusammenfassend zu Fig. 5 läßt sich sagen, daß die innere Schleife in vertikaler Richtung auf das Quellrechteck zugreift und die Y-Adresse inkrementiert. Die innere Schleife greift in vertikaler Richtung auf das Zielrechteck zu und inkrementiert die Y-Adresse. Die äußere Schleife inkrementiert die X-Adresse des Quellrechtecks und die X-Adresse des Zielrechtecks.
  • Fig. 6 zeigt den Fall, bei dem eine vertikale Null-Verschiebung zwischen Quelle und Ziel stattfinden, das Zielrechteck sich jedoch physisch rechts von der Quelle befindet. Wie bei Fig. 5 ist der Zugriff vertikal, d. h. das Vertikal/Horizontal-Flag 6 ist so gesetzt, daß in Fig. 6 die Quell- und Zieladressen der äußeren Schleife dekrementiert werden. Dies wird durch das Aktivieren der Ink/Dek-Umschaltfunktionen durch die Ink/Dek-Umschalt-Flags 3 und 4 in Fig. 1 durchgeführt. Die Schritte 58 und 60 werden demzufolge nach als Dekrementierungen der äußeren Schleifenziel- und - quelladressen durchgeführt. Das Rechteck wird in der inneren Schleifen von oben nach unten abgetastet, und in der äußeren Schleife von rechts nach links. Mit diesem Fall ist die überlappende Misch- oder Kopierfunktion der Bitblockübertragung abgeschlossen. Der Setup-Code, der die Flags 3, 4 und 6 setzt, ist Block 33 in Fig. 2.
  • Zusammenfassend zu Fig. 6 läßt sich sagen, daß die innere Schleife in vertikaler Richtung auf das Quellrechteck zugreift und die Y-Adresse inkrementiert. Die innere Schleife greift in vertikaler Richtung auf das Zielrechteck zu und inkrementiert die Y-Adresse. Die äußere Schleife dekrementiert die X-Adresse des Quellrechtecks und die X-Adresse des Zielrechtecks.
  • Die Fig. 7 bis 10 zeigen die zusätzlichen Bitblockübertragungsfunktionen. In diesen Fällen überlappen die Quell- und Zielrechtecke nicht. Eine +90 Grad-Umdrehung bedeutet, daß die Daten im Uhrzeigersinn um 90 Grad gedreht werden. Bei einer - 90 Grad-Umdrehung werden die Daten im Gegenuhrzeigersinn um 90 Grad gedreht.
  • Fig. 7 zeigt die Umdrehung der Zieldaten um +90 Grad in Bezug auf die Quelldaten. Eine Setup-Routine 34 setzt das 90 Grad- Umschalt-Flag 5 von Fig. 1, so daß die Zugriffsrichtung zwischen dem Lesen der Quelldaten und dem Schreiben der Zieldaten geändert wird. Der Setup-Code 34 behält die Standardrichtung des Speicherzugriffs bei, die in diesem Fall horizontal ist, setzt jedoch das 90 Grad-Umschalt-Flag 5. Schritt 42 liest die Quelle in horizontaler Richtung. Bei Schritt 44 wird die Zugriffsrichtung um 90 Grad geändert, da das 90 Grad-Umschalt-Flag 5 gesetzt wurde. Das Ziel wird daher in vertikaler Richtung in Schritt 46 geschrieben. Bei Schritt 48 wird die Richtung erneut um 90 Grad auf horizontal geändert. Die Ziel-X-Adresse wird unter Verwendung des Ink/Dek-Umschalt-Flag 4 von Fig. 1 dekrementiert. Schritt 58 führt eine Standardinkrementierung der äußeren Zielschleifenadresse durch, und Schritt 60 eine Dekrementierung der äußeren Zielschleifenadresse. Das Quellrechteck wird von der inneren Schleife daher horizontal abgetastet, und von der äußeren Schleife von oben nach unten. Das Zielrechteck wird in der inneren Schleife vertikal abgetastet, und in der äußeren Schleife von rechts nach links. Dadurch wird eine +90 Grad- Umdrehung der Daten durchgeführt.
  • Zusammenfassend zu Fig. 7 läßt sich sagen, daß die innere Schleife in horizontaler Richtung auf das Quellrechteck zugreift und die X-Adresse inkrementiert. Die innere Schleife greift in vertikaler Richtung auf das Zielrechteck zu und inkrementiert die Y-Adresse. Die äußere Schleife inkrementiert die Y-Adresse des Quellrechtecks und dekrementiert die X- Adresse des Zielrechtecks.
  • Fig. 8 zeigt die Umdrehung der Zieldaten um -90 Grad in Bezug auf die Quelldaten. Eine Setup-Routine 35 setzt das Vertikal/Horizontal-Flag 6 von Fig. 1 auf vertikal und setzt das 90 Grad-Umschalt-Flag 5 von Fig. 1, so daß die Zugriffsrichtung zwischen dem Lesen der Quelldaten und dem Schreiben der Zieldaten geändert wird. Das Setzen des Vertikal/Horizontal- Flag 6 setzt die Zugriffsrichtung auf vertikal im Setup-Code. In Schritt 42 werden die Quelldaten daher in vertikaler Richtung gelesen. Das 90 Grad-Umschalt-Flag 5 wird gesetzt, so daß in Schritt 44 die Zugriffsrichtung auf horizontal geändert wird. Bei Schritt 46 werden die Zieldaten in horizontaler Richtung geschrieben. Das 90 Grad-Umschalt-Flag 5 ist immer noch gesetzt, so daß in Schritt 48 die Zugriffsrichtung zurück auf vertikal geändert wird. Die Ziel-Y-Adresse wird unter Verwendung des Ink/Dek-Umschalt-Flag 4 von Fig. 1 dekrementiert. Bei Schritt 58 wird die äußere Quellschleifenadresse inkrementiert (Standardfall), während das Ink/Dek-Umschalt- Flag 4 in Schritt 60 dafür sorgt, daß die äußere Zielschleifenadresse dekrementiert wird. Das Quellrechteck wird somit von der inneren Schleife vertikal abgetastet, und von links nach rechts in der äußeren Schleife. Das Zielrechteck wird von der inneren Schleife horizontal abgetastet, und von oben nach unten in der äußeren Schleife. Dadurch wird eine -90 Grad- Umdrehung der Daten durchgeführt.
  • Zusammenfassend zu Fig. 8 läßt sich sagen, daß die innere Schleife in vertikaler Richtung auf das Quellrechteck zugreift und die Y-Adresse inkrementiert. Die innere Schleife greift in horizontaler Richtung auf das Zielrechteck zu und inkrementiert die X-Adresse. Die äußere Schleife inkrementiert die X- Adresse des Quellrechtecks und dekrementiert die Y-Adresse des Zielrechtecks.
  • Fig. 9 zeigt, wie die Daten kopiert werden können, so daß eine X-Achsensymmetrie von 180 Grad entsteht. Das Ziel ist ein Bild der Quelle, das um die X-Achse gespiegelt wird, und dann mit dem Ziel gemischt oder darauf kopiert wird. Der Zugriff auf die Quell- und Zielrechtecke ist horizontal. Der Setup- Code setzt das Ink/Dek-Umschalt-Flag 4 in Fig. 1, so daß die Ziel-Y-Adresse in Schritt 60 dekrementiert wird. Die Quelle wird bei der inneren Schleife horizontal abgetastet, und in der äußeren Schleife von oben nach unten. Das Ziel wird von der inneren Schleife horizontal abgetastet, und von unten nach oben von der äußeren Schleife. Der Setup-Code, der das Ink/Dek-Umschalt-Flag 4 setzt, ist Block 36 in Fig. 2.
  • Zusammenfassend zu Fig. 9 läßt sich sagen, daß die innere Schleife in horizontaler Richtung auf das Quellrechteck zugreift und die X-Adresse inkrementiert. Die innere Schleife greift in horizontaler Richtung auf das Zielrechteck zu und inkrementiert die X-Adresse. Die äußere Schleife inkrementiert die Y-Adresse des Quellrechtecks und dekrementiert die Y- Adresse des Zielrechtecks.
  • Fig. 10 zeigt, wie eine Y-achsensymmetrische Misch- oder Kopierfunktion der Bitblockübertragung um 180 Grad durchgeführt werden kann. Das Vertikal/Horizontal-Flag 6 von Fig. 1 wird in den vertikalen Modus gesetzt. Das Ink/Dek-Umschalt- Flag 4 von Fig. 1 wird für die Ziel-X-Adresse aktiviert. Das Quellrechteck wird in der inneren Schleife von oben nach unten, und von links nach rechts in der äußeren Schleife abgetastet. Das Zielrechteck wird von oben nach unten in der inneren Schleife, und von rechts nach links in der äußeren Schleife abgetastet. Dadurch werden die Quelldaten um 180 Grad um die Y-Achse gespiegelt und mit dem Ziel gemischt oder darauf kopiert. Der Setup-Code, der die Flags 6 und 4 setzt, ist Block 37 in Fig. 2.
  • Zusammenfassend zu Fig. 10 läßt sich sagen, daß die innere Schleife in vertikaler Richtung auf das Quellrechteck zugreift und die Y-Adresse inkrementiert. Die innere Schleife greift in vertikaler Richtung auf das Zielrechteck zu und inkrementiert die Y-Adresse. Die äußere Schleife inkrementiert die X-Adresse des Quellrechtecks und dekrementiert die X-Adresse des Zielrechtecks.
  • Tabelle II faßt die Kombinationen der verschiedenen Zugriffsrichtungen auf die Quell- und Zielrechtecke sowie die Verwendung der Inkrementierungs- und Dekrementierungsfunktionen der äußeren Schleife zusammen. Durch die Verwendung der oben beschriebenen speziellen Hardware-Features können die Bitblockübertragungsaufgaben in mindestens acht verschiedene Fälle aufgeteilt werden. Dadurch wird nicht nur Codeplatz gespart, sondern auch die Ausführungszeit verkürzt. Noch mehr Platz kann gespart werden, wenn die gleiche innere und äußere Schleife in allen acht beschriebenen Fällen verwendet wird. Die Gesamtcodezahl der inneren und äußeren Schleife betrug 23 Befehle. Die Setup-Befehle für die Fig. 3 bis 6 belaufen sich insgesamt auf 29. Für das Setup der +90 Grad-Umdrehung (Fig. 7) und der -90 Grad-Umdrehung (Fig. 8) wurden jeweils 4 Befehle benötigt. Das Setup für die X-Achsensymmetrie von 180 Grad (Fig. 9) und die Y-Achsensymmetrie von 180 Grad (Fig. 10) beinhaltete jeweils 2 Befehle. Damit beläuft sich die Zahl insgesamt auf 64 (dezimal) Befehle. Der horizontale Mikrocode bietet zusammen mit den speziell entworfenen Hardware-Features eine leistungsstarke Rasterop-Vorrichtung, die sich ideal für Bitblockübertragungsoperationen eignet.

Claims (3)

1. Ein Datenanzeigesystem mit einer Speicherschaltung, wobei das System folgendes umfaßt:
ein Speicherschaltmittel (10) zur Speicherung von bitadressierbaren Binärdaten, die anzuzeigende Bildelemente darstellen, wobei die Daten in zweidimensionaler Richtung angeordnet sind;
ein Mittel zum Zugriff in zweidimensionaler Richtung auf einen rechteckigen Block mit Bildelementdaten in dem Speicherschaltmittel, wobei das Zugriffsmittel weitere Mittel (3, 4) zur Inkrement- oder Dekrementadressierung des Datenblocks in mindestens einer der dimensionalen Richtungen umfaßt; und
ein Mittel zum Bewegen des Datenblocks zu einem anderen dimensionalen Platz, während die Daten im Block bleiben, wobei dieses Mittel weitere Mittel (5, 6) zum Lesen der Daten im Speicherschaltmittel in einer ersten dimensionalen Richtung und zum Schreiben der Daten in einer zweiten dimensionalen Richtung umfaßt;
das System ist dadurch gekennzeichnet, daß das Zugriffsmittel weiterhin ein Mittel (7) zum Zugriff auf eine variable Anzahl von Bits in einer Zugriffsoperation umfaßt.
2. Ein System nach Anspruch 1, bei dem das Zugriffsmittel des weiteren ein Mittel (2) zur Durchführung von logischen Operationen auf den Daten, die auf verschiedenen Speicherplätzen im Speicherschaltmittel in verschiedenen dimensionalen Richtungen gespeichert sind.
3. Ein System nach Anspruch 2, bei dem das logische Operationsmittel (2) weiterhin ein Mittel zum Zugriff auf einen ersten Datenblock als Quelldaten sowie auf einen zweiten Datenblock als Zieldaten umfaßt, wobei eine logische Operation auf den Quell- und Zieldaten sowie das Speichern der sich ergebenden Daten auf der Adresse der Zieldaten durchgeführt wird.
DE87300122T 1986-01-17 1987-01-08 Graphik- und Datenanzeigesystem. Expired - Fee Related DE3788141T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/820,466 US4763251A (en) 1986-01-17 1986-01-17 Merge and copy bit block transfer implementation
SG148794A SG148794G (en) 1986-01-17 1994-10-13 Graphic and data display system

Publications (2)

Publication Number Publication Date
DE3788141D1 DE3788141D1 (de) 1993-12-23
DE3788141T2 true DE3788141T2 (de) 1994-05-11

Family

ID=26664425

Family Applications (1)

Application Number Title Priority Date Filing Date
DE87300122T Expired - Fee Related DE3788141T2 (de) 1986-01-17 1987-01-08 Graphik- und Datenanzeigesystem.

Country Status (6)

Country Link
US (1) US4763251A (de)
EP (1) EP0230352B1 (de)
JP (1) JPH081612B2 (de)
DE (1) DE3788141T2 (de)
HK (1) HK139594A (de)
SG (1) SG148794G (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2210239B (en) * 1987-09-19 1992-06-17 Hudson Soft Co Ltd An apparatus for controlling the access of a video memory
US5254979A (en) * 1988-03-12 1993-10-19 Dupont Pixel Systems Limited Raster operations
EP0334622A3 (de) * 1988-03-23 1991-05-29 Du Pont Pixel Systems Limited Rasteroperationen
US5265005A (en) * 1990-08-31 1993-11-23 Allen-Bradley Company, Inc. Processor for a programmable controller
US5212631A (en) * 1990-08-31 1993-05-18 Allen-Bradley Company, Inc. Programmable controller processor module having multiple program instruction execution sections
US5313576A (en) * 1990-11-23 1994-05-17 Network Computing Devices, Inc. Bit aligned data block transfer method and apparatus
US5345555A (en) * 1990-11-23 1994-09-06 Network Computing Devices, Inc. Image processor memory for expediting memory operations
WO1993011499A1 (en) * 1991-11-27 1993-06-10 Seiko Epson Corporation Orthogonal rotator
US5929872A (en) * 1997-03-21 1999-07-27 Alliance Semiconductor Corporation Method and apparatus for multiple compositing of source data in a graphics display processor
US9557993B2 (en) * 2012-10-23 2017-01-31 Analog Devices Global Processor architecture and method for simplifying programming single instruction, multiple data within a register

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3973245A (en) * 1974-06-10 1976-08-03 International Business Machines Corporation Method and apparatus for point plotting of graphical data from a coded source into a buffer and for rearranging that data for supply to a raster responsive device
US3976982A (en) * 1975-05-12 1976-08-24 International Business Machines Corporation Apparatus for image manipulation
US4090174A (en) * 1976-11-01 1978-05-16 International Business Machines Corporation Method and apparatus for accessing horizontal sequences, vertical sequences and rectangular subarrays from an array stored in a modified word organized random access memory system
US4296476A (en) * 1979-01-08 1981-10-20 Atari, Inc. Data processing system with programmable graphics generator
US4460958A (en) * 1981-01-26 1984-07-17 Rca Corporation Window-scanned memory
US4495567A (en) * 1981-10-15 1985-01-22 Codex Corporation Multiprocessor/multimemory control system
JPS58178470A (ja) * 1982-04-14 1983-10-19 Hitachi Ltd メモリ制御装置
US4481578A (en) * 1982-05-21 1984-11-06 Pitney Bowes Inc. Direct memory access data transfer system for use with plural processors
JPS58209784A (ja) * 1982-05-31 1983-12-06 株式会社東芝 メモリシステム
DE3374462D1 (en) * 1982-07-21 1987-12-17 Marconi Avionics Multi-dimensional-access memory system
JPS59189470A (ja) * 1983-04-12 1984-10-27 Mita Ind Co Ltd 画像処理方式
JPS6081657A (ja) * 1983-10-11 1985-05-09 Canon Inc デ−タ制御方式
JPS6081659A (ja) * 1983-10-12 1985-05-09 Canon Inc デ−タ転送方式
JPS60172085A (ja) * 1984-02-17 1985-09-05 株式会社日立製作所 図形処理装置
EP0158314B1 (de) * 1984-04-10 1993-07-21 Ascii Corporation Videoanzeigesteuersystem
JPH0715706B2 (ja) * 1986-03-27 1995-02-22 日本電気株式会社 メモリ制御装置

Also Published As

Publication number Publication date
JPS62166453A (ja) 1987-07-22
US4763251A (en) 1988-08-09
EP0230352B1 (de) 1993-11-18
HK139594A (en) 1994-12-16
EP0230352A3 (en) 1990-03-07
DE3788141D1 (de) 1993-12-23
JPH081612B2 (ja) 1996-01-10
SG148794G (en) 1995-03-17
EP0230352A2 (de) 1987-07-29

Similar Documents

Publication Publication Date Title
DE69320746T2 (de) Rasterbildverbesserung unter Verwendung eines reduzierten Schablonenspeichers
DE3853489T2 (de) Grafik-Anzeigesystem.
EP0038411B1 (de) Einrichtung zur Speicherung und Darstellung graphischer Information
DE3485765T2 (de) Anzeigesystem fuer zusammengesetzte bilder.
DE3688546T2 (de) Digitale bildumdrehung.
DE69721184T2 (de) Hardware zum rotieren eines bildes
DE3687668T2 (de) Verfahren und einrichtung zur verbesserung der bildqualitaet in einem nach dem rasterverfahren arbeitenden anzeigegeraet.
DE69413934T2 (de) Verfahren und Einrichtung zur Steuerung der Verarbeitung von digitalen Bildsignalen
DE3407983C2 (de) Mehrprozessorrechnersystem zum Erzeugen von Bildpunktinformationen aus in einer hierarchischen Datenstruktur definierten Objektelementen
DE3854568T2 (de) SIMD-Feldrechner.
DE69130382T2 (de) Zeichenverarbeitungsverfahren
DE3686307T2 (de) Verfahren zur rotierung eines binaeren bildes.
DE3633454C2 (de) Einrichtung zur Erzeugung eines gerasterten Musters
DE69618901T2 (de) Verfahren und Vorrichtung zum Drehen von Bitmapbildern mit hoher Adressierbarkeit
DE3852185T2 (de) Bildspeicher für Raster-Video-Anzeige.
DE68907383T2 (de) Verfahren und Anordnung zur Umsetzung von Umrissdaten in Rasterdaten.
DE69018519T2 (de) Rechnergesteuerte Bildüberlagerung.
DE3788141T2 (de) Graphik- und Datenanzeigesystem.
DE69226574T2 (de) Verfahren und Gerät zur Reduktion des benötgten Speicherumfangs in einem digitalen Halbltonrasterungssystem
DE69624866T2 (de) Speicherschaltung für Texturmuster
DE3043100C2 (de)
DE3636394A1 (de) Einrichtung und verfahren zur speicherorganisation
DE3889240T2 (de) Zähler mit veränderbarer Verschaltung zur Adressierung in graphischen Anzeigesystemen.
DE3490148C2 (de) Vorrichtung zur Erzeugung unterschiedlicher Figuren in einem computergesteuerten Darstellungssystem
DE69635368T2 (de) Hochgeschwindigkeitssystem zur Ausrichtung und Verlegung von Schwellenmatrizen während der Erzeugung von binären Halbtonbildern

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee