DE2525155A1 - Verfahren und anordnung zur rasterpunktdarstellung von codierter - liniensegmente darstellende - information in computergesteuerten datensichtgeraeten, insbesondere in kathodenstrahlbildschirmstationen - Google Patents

Verfahren und anordnung zur rasterpunktdarstellung von codierter - liniensegmente darstellende - information in computergesteuerten datensichtgeraeten, insbesondere in kathodenstrahlbildschirmstationen

Info

Publication number
DE2525155A1
DE2525155A1 DE19752525155 DE2525155A DE2525155A1 DE 2525155 A1 DE2525155 A1 DE 2525155A1 DE 19752525155 DE19752525155 DE 19752525155 DE 2525155 A DE2525155 A DE 2525155A DE 2525155 A1 DE2525155 A1 DE 2525155A1
Authority
DE
Germany
Prior art keywords
memory
format
line
word
area
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
Application number
DE19752525155
Other languages
English (en)
Other versions
DE2525155C2 (de
Inventor
Karl Arnold Belser
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
Publication of DE2525155A1 publication Critical patent/DE2525155A1/de
Application granted granted Critical
Publication of DE2525155C2 publication Critical patent/DE2525155C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control 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/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/42Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of patterns using a display memory without fixed position correspondence between the display memory contents and the display position on the screen

Description

Böblingen, den 3. Juni 1975 blu/se
Anmelderin: International Business Machines
Corporation, Armonk, N.Y. 10504
Amtliches Aktenzeichen: Neuanmeldung Aktenzeichen der Anmelderin: SA 972 038
Verfahren und Anordnung zur Rasterpunktdarstellung von codierter - Liniensegmente darstellende - Information in computergesteuerten Datensichtgeräten, insbesondere in Kathodenstrahlbildschirmstationen
Die Erfindung betrifft ein Verfahren und eine Anordnung zur Rasterpunktdarstellung von codierter - Liniensegmente darstellende Information in computergesteuerten Datensichtgeräten, insbesondere in Kathodenstrahlbildschirmstationen.
Geräte zum Drucken, Abfragen oder bildlichen Darstellen graphischer Daten unterteilt man in Vektortypen oder Rastertypen.
Ein Vektorgerät kann zeichnen oder abfragen mit einer Serie elementarer Bewegungen in zwei Richtungen. Wenn diese Bewegungen gerade Segmente sind, wird von Vektoren gesprochen, so daß ein Bild aus einer Reihe von geraden Liniensegmenten unter direkter Programmsteuerung abgetastet oder aufgebaut werden kann.
Im Gegensatz dazu wird ein Rastergerät durch ein vorgegebenes Rastermuster gespeist, welches jeden Punkt des Abtast- oder Bildanzeigebereiches erschöpfend abdeckt. Wenn das Abtastmuster aus einer Anordnung von Punkten besteht, die erst als Punkte pro Zeile und dann als Zeilen pro Seite erzeugt werden, dann erscheint das Muster als ein Raster. Bei einem Fernsehgerät beginnt
809881/0770
der Bildstrahl beispielsweise in der linken oberen Ecke des Schirmes und läuft nach rechts und bildet so eine Zeile. Der Abtaststrahl kehrt dann zur linken Kante zurück, um eine zweite Zeile - einen Punkt tiefer - auf der Bildschirmfläche zu beginnen. Dieser Vorgang wird wiederholt, bis der ganze Bildschirmbereich abgetastet wurde.
Bei zahlreichen Computerprodukten herrschte früher der Vektorbetrieb vor, weil die Programmierung graphischer Befehle für eine Bildanzeigestation mit Größen- und Richtungsinformation formuliert wurde.
Aus verschiedenen Gründen wird die Rasterabtastung und -ausgabe bevorzugt. Zunächst einmal ist die Maschinenausrüstung nicht so kostspielig wie bei ähnlichen im Vektorbetrieb arbeitenden Geräten. Zweitens ist die Druckleistung für das Rastergerät hoch, da die Bitreihen, die den Raster darstellen, in einer relativ festen Zeit erzeugt werden und vom Bildinhalt unabhängig sind. Das gilt jedoch nicht für Vektorgeräte, Drittens stellen Rastergeräte Bilder mit einem höheren Auflösungsgrad her, als sie bei Vektorgeräten aufgrund der digitalen Punktnatur der Rastergeräte möglich ist. Viertens können Rastergeräte für eine gegebene Auflösungsqualität mit einer höheren Informationsrate gespeist werden als Vektorgeräte.
Das Grundproblem bei der Anwendung der Rasterausgabegeräte ist die Umwandlung von codierter Vektor-Information in Rasterform. Sie verlangt eine beträchtliche Maschinenausrüstung, eine hohe Arbeitsgeschwindigkeit bei der Umwandlung und für die Rastereingabe/Ausgabegeräte, welche synchrone Abtastcharakteristika aufweisen müssen. Wie bereits gesagt wurde, ist der Vektorbetrieb mit einer bequemen Darstellungsform für die Programmierer verknüpft.
Um ein Rasterbildschirmgerät mit Vektorbetriebsbefehlen zu speisen, muß die implizite Form des Vektorbefehles (z.B. zeichne
sä 972 038 5 0 9 8 81/0770
Linie: X, Y, ; X- '£^i umgewandelt werden in ein explizites Punktmuster, das der wahren Bahn der Linie möglichst nahe kommt. Dieses explizite Punktmuster kann z.B. in einem Randomspeicher gespeichert werden. In diesem Zusammenhang taucht allerdings die Frage auf, ob im Speicher aufgezeichnete Punkte dazu benutzt werden können, das Rasterausgabegerät direkt zu treiben und nicht warten zu müssen, bis alle Punkte im Speicher gesetzt wurden. Im Betrieb stellte es sich al» wünschenswert heraus, ein ganzes Bild vor der Rasteranzeige zusammenzusetzen, weil graphische Befehle keine Einschränkung für die Reihenfolge oder Richtung der Vektoren im Bild enthalten. Somit gibt es keine Möglichkeit, die Information auf Zeilenbasis anzuzeigen, während das Rastermuster erzeugt wird.
Die Aufgabe der vorliegenden Erfindung besteht in der Entwicklung eines Verfahrens und einerAnordnung zur Umwandlung von Information in codierter Form in eine Punktmatrix- oder Rasterform, wobei die zur Erzeugung der aufgezeichneten Punkte und ihre anschließende Darstellung auf einem Rasterausgabegerät erforderliche Zeit möglichst klein^alten ist.
Dazu müssen zwei Probleme gelöst werden:
Zuerst einmal sollte die Geschwindigkeit inöglichst groß gehalten werden, mit der Punkte in einem Matrixspeicher zum Zusammensetzen und Puffern eines Bildes zur Rasteranzeige aufgezeichnet j werden können. j
Das zweite Problem fordert die Anpassung der aus dem Speicher : entnommenen Informationsdatenrate an die Geschwindigkeit, die
zum Treiben des Rastergerätes notwendig ist. j
Diese Aufgabe wird erfindungsgemäß in vorteilhafter Weise durch folgende Verfahrensschritte gelöst:
1. Umwandlung der codierten-Liniensegmente darstellende-Information in über X-Y-Koordinaten adressierbare Information SA 972 038 5 0 9 8 81/0770
und Abspeicherung derselben in einem bereichsformatierten Speicher derart, daß sich die Gesamtinformation aus matrixförmig angeordneten Unterbereichen zusammensetzt, wobei ein solcher Unterbereich aus matrixförmig angeordneten Speicherzellen besteht,
und daß die Adressen der einzelnen Unterbereiche als Datenwörter und die Adressen der einzelnen Speicherzellen derselben aus den X/Y-Koordinaten berechnet werden;
2. Umwandlung der Bereichsformat-Daten in das "Zeilenformat11, wonach die einzelnen innerhalb eines Wortes im Bereichsformat übereinander angeordneten Speicherzellenzeilen in eine einzige alle Speicherzellen des Bereichsformatwortes umfassende Wortzeile des Zellenformats gelegt werden.
3. Adressierung der im Zeilen-Format stehenden Daten durch das Rasterpunkt-Datensichtgerät.
Vorteilhafte Weiterbildungen des erfindungsgemäßen Verfahrens bestehen darin, daß
a) der Speicher für das Bereichs- und Zeilenformat der gleiche ist,
b) die Spei erzellen pro Wort und die Worte im Speicher fortlaufend aufsteigend adressierbar sind in X- und Y-Richtung,
in das
c) die Umordnung der Daten vom Bereichs-jZeilenformafc über einen
Arbeitsspeicher in Gruppen von nebeneinanderliegenden Speicherwörtern erfolgt.
Eine Anordnung zur Durchführung des erfindungsgemäßen Verfahrens ist dadurch gekennzeichnet, daß ein Computer zur Lieferung der codierten-Liniensegmente darstellenden-Information vorgesehen ist, daß ein Logikeleinent zur Transformation der codierten Information in eine solche mit X/Y-Koordinaten vorgesehen ist, welches mit einer Adreß- und Steuerlogikschaltung verbunden ist, durch welche aus den Koordinaten die Speicherwort- und Bitadressen für das Bereichsformat errechenbar sind, daß zur Aufnahme der Adressen ein Bereichsformatregister vorgesehen ist für die Adreßvorgabe zur Aufzeichnung der Information in einen Speicher, an
SÄ972038 S09881/0770
den über ein Register ein Arbeitsspeicher in Verbindung mit einer Formatumwandlungslogik und einer Adreß- und Steuerlogik für die Umformatisierung aus dem Bereichs- in das Zeilenformat vorgesehen ist, das von dieser Anordnung die umformatisierte Information in den Speicher rückschreibbar ist und daß die Information im Zeilenformat aus dem Speicher von einem Rastergerät adressierbar ist.
In vorteilhafter Weise besteht erfindungsgemäß die Formatumwandlungslogik für jedes Wort aus einem Feld identischer Schieberegisteranordnungen zur Ein/Ausgabe der Wortzeilen.
Wenn im Speicher nicht nur einzelne Bits adressiert werden können, verlangt das Schreiben von Information in den Speicher und das Lesen von Information aus dem Speicher für die Optimierung verschiedene Formate. Das wird teilweise von dem Wunsch hergeleitet, bei der Punkteingabe Zeilensegmente in standardisierten zweidimensionalen topologisch benachbarten Formaten darzustellen, wie beispielsweise in quadratischen Untergruppen. Vorteilhafterweise umfassen quadratische Untergruppen mehrere Punkte, die ein Zeilensegment definieren, und können daher in den Speicher in einer und nicht in mehreren Zykluszeiten geschrieben werden. Da die Richtung eines Zeilensegmentes gleichermaßen wahrscheinlich angenommen werden kann, besteht für eine quadratische Untergruppe eine hohe Erwartungswahrscheinlichkeit für eine Richtungsunempfindlichkeit, so daß im Durchschnitt mehrere Punkte für alle Vektoren erfaßt werden. Um Daten an ein Rastergerät zu liefern, müssen andererseits die Bits in jeder Untergruppe in einer für die Rasteradressierung geeigneten linearen Dimension ausgerichtet sein. Daher müssen die Daten in der quadratischen Anordnung in linearen Gruppen verzeichnet werden.
Ein Ausführungsbeispiel der Erfindung ist in den Zeichnungen dargestellt und wird anschließend näher beschrieben.
SA 972 038 50988 1 /0770
Es zeigen;
Fig. IA ein schematisches Schaltbild zur Rasterung
codierter Information,
Fig. IB ein schematisches Schaltbild zur Umwandlung
rastercodierter Information in codierte Daten,
Fig. 2 eine schematische Darstellung eines bitadressier-
baren Speichers mit X/Y-Koordinaten,
Fig. 3A eine schematische Darstellung für einen zeilenformatierten Speicher mit wortorganisierten Speicheradressen f
Fig. 3B eine schematische Darstellung für einen bereichsformatierten Speicher,
Fig. 4A eine schematische Darstellung von Blockgruppierungen aus sequentiell adressierbaren Wörtern,
Fig. 4B eine schematische Darstellung der Speicherstellen innerhalb eines Blockes,
Fign. 5A und 5B eine schematische Darstellung von Wörterblöcken
im Zeilen- und Bereichsformat,
Fign. 6A bis 6C ein schematisches Beispiel einer Punktaufzeichnung; Bitplan der aufzuzeichnenden Punkte (6A); Adreßdarstellung im Zeilenformat (6B); Adreßdarstellung im Bereichsformat (6C),
Fign. 7A und 7B eine schematische Darstellung für die Adreß-
umwandlung des Zeilen- bzw. Bereichsformates,
Fign. 8A und 8B eine schematische Darstellung des Randomspeichers SÄ972038 509881/0770
im Bereichs- (und nach der Umordnung) im Zeilenformat ,
Fig. 9 ein schematisches Logikdiagramm des Datenflusses
für die in Fig. IA gezeigte Speicher- und Umordnungslogik 37,
Fig. 10 eine schematische Darstellung von Einzelheiten
der Auswahlschaltung (20) und der Steuerlogik (19) nach Fig. IA,
Fig. 11 eine schematische Darstellung zur Datentransformation der Formatumwandlungslogik (18) nach Fig. IA und 9; geeignet für den Einsatz von Schieberegistern und
Fig. 12 eine Schieberegisteranordnung für die Formatumwandlungslogik 18.
Punktaufzeichnung und Rastererzeugung
Um eine Folge von Punkten, die einer Linie entsprechen, in einen Speicher zu schreiben, muß eine Folge von Speicheradressen erzeugt werden. Ein typisches Verfahren für eine derartige Adreßerzeugung ist der Bresenham-Algorithmus für die Erzeugung gerader Linien. Dieser Bresenham-Algorithmus ist beschrieben in J.F. Bresenham "An Algorithm for Computer Control of a Digital Plotter", IBM Systems Journal, Vol. 4, No. 1, 1965, S, 22-30. In diesem Algorithmus wird ein Ort angenähert durch eine Folge gerader Liniensegmente. Dieser Algorithmus ist jedoch typisch für die herkömmliche Art, insofern, als die Segmente durch Betrag und Richtung definiert sind. Sie müssen in ein explizites Bitmuster umgewandelt werden, das in einem Speicher festgehalteriwerden kann. Wenn man jetzt einen bit-adressierbaren Speicher hat, d.h. einen Speicher mit einem Einbit-großen Wort, so bringt man diesen Speicher in Einklang zu einem zweidimensionalen Bitplan durch Zuordnung
SA 972 038 50 9881/077 0
von X- und Y-Koordinaten zu bestimmten Bereichen von Speicheradressen. Ein Speicher von einer Million Bits entspricht beispielsweise einem Quadratbereich von 1024 χ 1024 Bits oder dem Bildbereich einer Seite mit 8,5 χ 8,5 Zoll bei einer Auflösung von 120 Pels/Zoll. Zur Definition einer jeden Koordinate braucht man also einen Adreßcode von 2 . D.h. insgesamt, daß 20 Adreßbits zur eindeutigen Angabe eines jeden Bits gebraucht werden. Wenn einmal alle Vektoren in ein explizites, im Speicher festgehaltenes Bitmuster umgewandelt sind, heißen sie"zur Abtastung umgewandelt". Mit dem Speicher kann man jetzt ein Bildanzeigegerät speisen durch Adressierung des Speichers, beginnend mit Punkten in der linken oberen Ecke des X/Y-Bildes, indem man jeweils eine horizontale Zeile adressiert, bis der ganze X/Y-Bereich adressiert ist. Die Geschwindigkeit der Punktschreibung in den Speicher und die Geschwindigkeit, mit der ein Rasterabtastgerät getrieben werden kann, ist begrenzt durch die Zeit, die man zum Schreiben eines jeden Bit in den Speicher oder Lesen aus dem Speicher braucht, d.h. durch die SpeicherZykluszeit.
Zur Versorgung synchroner Bildanzeigegeräte, wie beispielsweise eines Kathodenstrahlröhrengerätes braucht man natürlich eine hohe Datenrate. Wenn z.B. ein Bild aus 1024 χ 1024 Bits mit einer Geschwindigkeit mit 60 Wiederholungen pro Sekunde an ein solches Kathodenstrahlröhrengerät gesendet wird, dann muß der Inhalt vom Speicher mit einer Bitdatenrate von über 60 Millionen Bits pro Sekunde gelesen werden. Das erfordert andererseits eine SpeicherZykluszeit von etwas unter 16 Nanosekunden. Ein solcher Speicher ist außerordentlich kostspielig in der heutigen Technologie zu erstellen.
Eine Lösung dieses Problemes mit der bisherigen Technik bestand darin, daß man mehrere Bits in einem Speicherzyklus adressierte. So konnte man z.B. ein Speicherwort aus 64 Bits in einer Mikrosekunde adressieren, um eine zur Auffrischung eines Kathodenstrahlröhrenbildes aus 1024 χ 1024 Bits ausreichende Datenrate zu erhalten. Ein solcher Speicher ist immer noch ein bit-adres-
SA972038 509881/0770
sierbarer Speicher mit einer langsamen Zykluszeit. Da die Bits in einem Speicher topologisch nebeneinander in horizontalen Punktreihen eines Bitplanes liegen, nennt man diesen Speicher einen zeilenformatierten Speicher. Wegen dieses Zeilenformates kann man einem Rasterbildgerät Bits mit der geforderten Geschwindigkeit zuführen. Dadurch wird jedoch in keiner Weise die Punktschreibzeit heruntergesetzt, d.h. die Zeit, die zum Einlesen von Punkten, welche graphische Koordinaten (X/Y) repräsentieren, in eindeutige Speicheradressen gebraucht wird.
Punktschreiben, Rastererzeugung und Formate
Um Punkte mit möglichst großer Geschwindigkeit in den Speicher schreiben zu können, muß in jedem Speicherzyklus auf mehrere Bits zugegriffen werden können. Es sei angenommen, die Zeilensegmente hätten willkürliche Orientierung und Länge. Statistisch gesehen ist eine Maximierung der Punktschreibgeschwindigkeit für Zeilensegmente willkürlicher Orientierung und Position möglich, wenn die Bits des Speicherwortes ungefähr quadratischen Bereichen des Bitplanes entsprechen. Da die Bits in einem Speicherwort topologisch, sowohl in der X-Richtung als auch in der Y-Richtung des Bitplanes nebeneinander liegen, nennt man einen solchen Speicher einen bereichsformatierten Speicher. Die Schwierigkeit bei der Maximierung der Punktschreibgeschwindigkeit liegt in den beiden unterschiedlichen Formaten, dem Zeilenformat und dem Bereichsformat. D.h., die Bits im Speicherwort entsprechen in den beiden Formaten verschiedenen Stellen im X/Y-Plan. In einem konventionellen Speicher müssen also die Daten nach dem Einschreiben der Punkte, aber vor dem Anfang der Rasterabtastung umgeordnet werden; und zwar so schnell wie möglich, weil sich dadurch eine zusätzliche Verzögerung und eine langsamere durchschnittliche Punkt-Schreibgeschwindigkeit ergibt.
Das Umwandlunggerät im allgemeinen
In Fig. IA ist ein Gerät zum Schreiben von Datenpunkten in einen SA 972 038
509881 /0770
Puffer und zum Umordnen dieser Daten gezeigt, damit mit diesen Daten ein Rasterbildanzeigegerät gespeist werden kann. Das Gerät enthält eine Quelle codierter Information, wie beispielsweise einen Computer 10 zur Erzeugung von Zeilensegmentinformation. Jedes Zeilensegment stellt eine Folge von X/Y-Koordinatenwertendar. Ein Bereichswortformatierer 39 bringt aufgrund der Vektorinformation den Vektor oder das Zeilensegment in das Format eines Bereichswortes, welches eine quadratische Anordnung von Punkten hat. Gleichzeitig wird eine die Punkte in der Speichermatrixanordnung 16 darstellende Adresse erzeugt. Die Umordnung oder Neuformatierung der Daten von einem Bereich in linearer Anordnung erfolgt durch die Speicher- und Umformungslogik 37. Diese Logik speist wiederum einen Raster-Umwandler 41. Da das System auch mit einem Bildschirm-Ein/Ausgabegerät verwendet werden kann, ist ein Rasterbildanzeigegerät 23 dargestellt, welches mit einem Leuchtstift zusammenwirkt, der mit dem Computer 10 über den Rückkopplungsweg 38 gekoppelt ist.
In Fig. IB ist die Quelle 41· für die rastercodierten Daten gezeigt, die von einem kleinen Abtastelement 23 gebildet werden, welches eine Speicher- und Umformatierlogik 37' treibt. Diese Logik wandelt lineare Anordnungen von Rasterdaten in Bereichswörter (rechtwinklige Untergruppen) um.
Punktaufzeichnung, Koordinantenplanung und Bitspeicher-Wortadressierbarkeit
Der Mittelpunkt bei der Funktion der Punktaufzeichnung ist die Bitadressierbarkeit, wenn die X/Y-Koordinaten in rechtwinkligen Untergruppen oder linearen Anordnungen (Bereich und Zeilenformat) aufgezeichnet werden. Diese Beschreibung dient als Grundlage zur Erklärung des Umformatieralgorithmus, in dem topologisch benachbarte, rechtwinklige Untergruppen umgeformt werden in lineare Anordnungen im Randomspeicher 16.
In Fig. 2 ist ein Bitplan für einen bitadressierbaren Speicher gezeigt. Der Speicher entspricht einer Anordnung von Punkten,
SA972038 509881/0770
in der sich LMN Bits in horizontaler Richtung und KN-Bits in vertikaler Richtung befinden, wobei K, L, M und N ganze Zahlen sind. Das Produkt MN definiert die Größe des im Umordnungsalgorithmus benutzten Speicherwortes. Jedes Bit kann durch eine absolute Zahl adressiert werden. Die Adresse des unteren linken Bits ist Null und das untere rechte Bit hat die Bezeichnung LMN-I. Das äußerste linke Bit in der zweiten Zeile von unten ist LMN, Das äußerste rechte Bit in der zweiten Zeile ist 2LMN-1.
Außer der Identifizierung eines jeden Punktes in der Anordnung durch eine absolute Zahl können die Bits durch ein X/Y-Koordinatensystem adressiert werden. In diesem X/Y-Koordinatensystem ist das Bit in der linken unteren Ecke der Anordnung als Punkt 0,0 bezeichnet. Das Bit rechts unten in der Ecke ist 0, LMN-I. Das äußerste linke Bit in der zweiten Zeile ist bezeichnet mit 1, 0 usw. Daraus kann man eine Beziehung zur Erzeugung von Speicheradressen aus Koordinatenpaaren ableiten:
Speicheradresse = X + (LMN) Y
Wenn LMN eine Potenz von 2 ist, dann werden bei Multiplikation mit LMN die Y-Bits nach links verschoben um eine Anzahl von Stellen, die gleich der Potenz von 2 sind.
Punktschreibung, Koordinatenplanung und Zeilenspeicherwortadresslerbarkeit
In Fig. 3A ist ein Zeilenformatspeicher gezeigt mit demselben Bitplan wie in Fig. 2. Dieser Speicherplan setzt sich aus NKL Speicherwörtern zusammen, die für einen wortorganisierten Randomspeicher geeignet sind, wobei jedes Wort MN Bits enthält und nach Punktreihen ausgerichtet ist. Die stark ausgezogenen rechteckigen Bereiche sind Speicherwörter; sie sind mit ihren entsprechenden Wortadressen bezeichnet. Die Zahlen in den Wörtern sind die Bitnummern. So ist der Punkt in der linken unte-
SA 972 038
509881/0770
ren Ecke das Bit O des Wortes 0. Das Bit in der rechten unteren Ecke ist das Bit MN-I des Wortes L-I. Das äußerste linke Bit in der zweiten Punktreihe ist das Bit 0 des Wortes L usw. Diese Punkte entsprechen den X/Y-Koordinaten (0,0); (0, LMN-I); (1,0) usw. Die Formel zur Erzeugung der Wort- und Bitadressen aus den Koordinatenpaaren lautet:
Adresse (Wort) - [X + (KMN)Y] m - , (2) Adresse (Bit) = MOD^7(X + (LMN) Y) = Rest von .
Wenn LMN 2k und das Produkt MN 2m+n ist, dann reichen die Adressen der Bits in einem Wort von 0 bis 2m+n-l. Diese Adresse kann durch eine Binär-Wertzahl m+n dargestellt werden. Für diesen Fall besteht die Bitadresse lediglich aus den niederen m+n Bits der binären Darstellung von X+2^f und die Wortadresse ist die verbleibende Gruppe der werthohen Bits.
Punktaufzeichnung, Koordinatenplan und Wortbereich-Adressierbarkeit
In Fig. 3B ist das Bereichswortformat mit demselben Bitplan wie in Fig. 2 gezeigt. Dieser Speicherplan umfaßt NKL Speicherwörter, von denen jedes NM Bits enthält. M Bits liegen horizontal und N Bits vertikal. Die stark ausgezogenen rechteckigen Bereiche sind Speicherwörter und mit ihren Adressen bezeichnet. Die Zahl in den Wörtern ist die Bitzahl. Somit ist das linke untere Bit in der Anordnung das Bit 0 des Wortes 0. Das untere rechte Bit ist das Bit M-I des Wortes LN-I. Das äußerste linke Bit in der zweiten Punktzeile ist jetzt das Bit M des Wortes 0 usw. Diese Punkte entsprechen wie oben den X/Y-Koordinaten (0,0), (0, LMN-I) (1, 0) usw. Die Formel zur Erzeugung der Wort- und Bitadressen aus diesen Koordinatenpaaren ist folgende:
Adresse (Wort) = JX ^ + LN [Y Jn
Adresse (Bit) = ModM (X) + M Modjjiy) , (J)
worin [X] und Mod (X) wie oben definiert sind.
SA972038 509881/0770
Wenn LNM gleich ist 2k und MN 2m+n ist, dann ist M jetzt 2m und N ist 2n. Die Adressen der Bits in einem Speicherwort reichen immer noch von 0 bis 2m n-l. Jetzt kommen jedoch die m Bits der Bitadresse m+n von der X-Koordinate und die η Bits kommen von der y-Koordinate. Insbesondere werden die wertniederen m Bits der X-Koordinate zu den wertniederen Bits der Bitadresse. In ähnlicher Weise werden die wertniederen η Bits der Y-Koordinate zu den werthohen Bits der Bitadresse. Die verbleibenden Bits der X-Koordinate und der Y-Koordinate bilden die Speicherwortadresse.
Punktaufzeichnung codierter graphischer Daten in einen Puffer und die Umformung in die Rasterform als Drei-Schritt-Verfahren
Das Gesamtziel besteht bekanntlich in der übertragung codierter Daten, die Liniensegmente darstellen, aus einem Computer 10 an ein Bildanzeigegerät des Rastertyps (z.B. das Ausgabegerät 23 nach Fig. IA) in drei Funktionsstufen.
Die erste Stufe ist die Umwandlung der codierten Daten in X/Y-Koordinaten und die Eintragung der Koordinaten in einem Randomspeicher 16. Dazu werden die Speicherwörter wie in einem Bereich oder einem Unterformat befindlich behandelt.
Die zweite Stufe ist die Umwandlung topologisch benachbarter Unterbereiche in eine lineare Anordnung oder ein Zeilenformat.
Die letzte Stufe schließlich ist die Adressierung der im Zeilenformat stehenden Daten durch das Rasterbildanzeigegerät.
Anschließend werden diese Vorgänge genauer im Zusammenhang mit den in Fig. IA und IB gezeigten Ausführungsbeispielen beschrieben.
Erster Verfahrensschritt
Im ersten Verfahrensschritt werden die Bildinformation darstellenden codierten Daten vom Computer 10 in das Pufferregister 11
SA 972 038
B098Ö1 /0770
gelesen. Ein Daten-Konversions-Logikelement 12 transformiert die im Register 11 gespeicherten codierten Daten in X/Y-Koordinaten. Diese Koordinaten müssen an entsprechende Stellen des Randomspeicher 16 gelegt werden; dazu muß eine Entsprechung zwischen den Speicherwörtern und den rechtwinkligen Abschnitten (oder Untergruppen) eines abstrakten Koordinatenverzeichnisraumes hergestellt werden. Infolgedessen kann jedes Bit im Speicher im Verhältnis 1:1 in einem Punkt im Planraum aufgezeichnet werden. Die Koordinatenpunkte werden durch die Adreß- und Steuerlogik 13 in Speicherwort- und Bitadressen umgewandelt. Das Logikelement 13 berechnet nach (1) effektiv eine Adresse. Jede durch das Element 13 erzeugte Zeile umfaßt zwei Komponenten, nämlich eine Wortadresse und eine Bitadresse. Die Adressen der Wörter nehmen bezug auf den Randomspeicher 16 und entsprechen der Untergruppe des Planes. Jede Bitadresse wird an das Bereichsformatregister 14 geleitet. Die Wortadresse wird an den Randomspeicher 16 über die Steuer- und Adreßauswahlschaltung 20 angelegt. Die Planaufzeichnung erfolgt durch logische ODER-Verknüpfung der die Punkte darstellenden Bits im Bereichsformatregister mit Hilfe der durch die Steuerlogik 13 erzeugten Bitadreßkomponente.
Solange die aus der X/Y-Koordinate abgeleitete Wortadresse sich nicht ändert, liegt der aufzuzeichnende Punkt im Bereich der rechteckigen Untergruppe und kann natürlich im Bereichsformatregister aufgezeichnet werden, ohne daß man den Randomspeicher 16 adressieren muß. Wenn sich die Wortadresse ändert, dann liegt der aufzuzeichnende Punkt außerhalb der laufenden Untergruppe.
Um diese Punkte auch aufzuzeichnen, muß der Inhalt der laufenden Untergruppe "gerettet" werden. Dazu adressiert man zunächst den laufenden Inhalt des Speichers an derselben Untergruppenposition. Der laufende Inhalt im Speicher und das zu "rettende" Bereichswort werden logisch durch das Logikelement 15 kombiniert und in den Speicher 16 an derselben Bereichswortstelle eingegeben. Nachdem der laufende Inhalt des Bereichsformatregisters logisch kombiniert und in den Speicher 16 eingegeben wurde, steht das SA 972 038
S09881/0770
Register zur Aufzeichnung neuer Koordinatenpunkte in einer anderen Untergruppe zur Verfügung. Dieses Verfahren wird fortgesetzt, bis die durch die kodierte Darstellung erzeugten Punkte erschöpft sind.
Zweiter Verfahrensschritt
Im nächsten Verfahrensschritt wird der Inhalt des Speichers so umgeordnet, daß er im linearen Wortformat adressiert werden kann. Eine Forderung dieses Verfahrens besteht in der Konvertierung von Speicherplatz, indem man Untergruppen durch lineare Anordnungen zur Adressierung durch die Rasterbildanzeigeeinrichtung ersetzt.
Es stellt sich die Frage, welches die kleinste Dateneinheit ist, die innerhalb der Speichereinschränkungen bequem umgeordnet werden kann. Die Umordnung des Speichers vom Zeilenformat in das Bereichsformat oder umgekehrt, erfolgt in Gruppen von N Speicherwörtern, die zusammen einen N Punkte hohen mal MN Punkte breiten Teil der Anordnung überlagern, wie sie beispielsweise in Fig. 4B gezeigt ist. Der N mal MN große Abschnitt der Punktanordnung wird Block genannt und ist die Grund-Umordnungseinheit. Die ganze von diesen Blocks erfaßte Punktanordnung ist in Fig. 4A gezeigt.
In den Fign. 5A und 5B sind das Zeilenformat und das Bereichswortformat gezeigt, die das Punktemuster des in Fig. 4B gezeigten Blockes überlagern. Das erste Speicherwort hat nach der Darstellung die Adresse A, die ein Vielfaches von MN ist. Dadurch ist sichergestellt, daß die die Punktanordnung überlagernden Blocks so sind, wie es in Fig. 4A gezeigt ist.
Die Umordnung auf Blockebene besteht aus folgenden Operationen:
1. Abruf von N Wörtern aus dem Speicher 16 in einen
Arbeitsspeicher.
SA 972 038
509881 /0770
2. Die Bits O bis M-I eines jeden der Wörter O bis N-I nimmt man in dieser Reihenfolge und schreibt sie in den Speicher als Bits 0 bis MN-I zurück in die Stelle A+O.
3. Die Bits M bis 2M-1 eines jeden der Wörter 0 bis N-I nimmt man in dieser Reihenfolge und schreibt sie in den Speicher als Bits 0 bis MN-I in die Stelle A+l zurück.
4. Der Schritt 3 wird für die Stellen A+2 bis A+N-2 wiederholt .
5. Man nimmt die Bits N (N-I) bis MN-I eines jeden der Wörter 0 bis N-I in dieser Reihenfolge und schreibt sie in den Speicher als Bits 0 bis MN-I in die Stelle A+N-l zurück.
Wenn der Block im Zeilenformat stand, steht er jetzt im Bereichsformat. Wenn der Block im Bereichsformat stand, steht er jetzt im Zeilenformat. Dieser Prozeß muß für jeden Block im Speicher für eine vollständige Umordnung ausgeführt werden.
Die Umordnung der Daten im Speicher 16 wird funktionell ausgeführt durch die Speicher- und Umformatierlogik 37 in Fig. IA. j Der erwähnte Umordnungsspeicher ist als Formatlogik-Umwandlungs- f element 18 ausgelegt. Ein solches Element enthält Einrichtungen I zur seriellen Umsetzung der Transformation oder Umordnung, wie i sie z.B. in den obigen Schritten 1 bis 5 beschrieben wurde. Die serielle Umsetzung umfaßt sowohl das Lesen von Information in das Element als auch das Herausziehen von Information aus dem Element. Die serielle Umsetzung oder der Umformatierungsschritt verlangt keine Rechenoperationen im üblichen Sinne. Die Funktion kann auch durch einen doppelt adressierbaren Speicher wahrgenommen werden, wie er beispielsweise in der US-Patentschrift 3 277 449 beschrieben ist. Die Randomnatur des Matrixspeichersystems mit vertikaler Adressierbarkeit ist jedoch für diese Erfindung nicht notwendig. Die genaue Wechselbeziehung zwischen den Elementen 15 bis 18 bei der Umformatierung wird anschließend
SA 972 038
509881/0770
näher im Zusammenhang mit den Fign. 10 bis 12 beschrieben.
Dritter Verfahrensschritt - lineare Anordnung für Rasterzeilenadressierung
Die jetzt im Speicher 16 stehenden Daten werden als horizontale Zeilensegmente des beispielsweise in Fig. 2 gezeigten Bitplanes formatiert. Um Daten in diesem Format zu benutzen, müssen Adressen erzeugt werden, die diese horizontalen Zeilensegmente zur Bildung von Rasterzeilen miteinander verbinden.
Ein Raster besteht aus einer Folge von X/Y-Koordinaten, die in der linken oberen Ecke des Bildes beginnen und zuerst X in Schritten von jeweils 1 erhöhenr bis die erste Zeile von Punkten adressiert wurde. Diese Zeile wird eine Rasterzeile genannt. Die X Koordinate wird dann auf die oberste linke Positon des Bitplanbildes zurückgestellt und Y um den Wert 1 erhöht. Dann wird der X Wert wieder über die zweite Punktzeile hin erhöht. Das ist die zweite Rasterzeile. Dieses Verfahren wird zeilenweise von der Oberseite des Bildes bis zur Unterseite fortgesetzt, bis alle Punkte des Bildes adressiert wurden. Die Formel zur Umwandlung der X/Y-Koordinaten für das Raster in Wort- und Bitadressen (innerhalb des Wortes) für Daten im Zeilenformat wurde bereits angegeben. Da die Daten im Zeilenformat stehen, werden alle Daten innerhalb eines Wortes konsekutiv bei der Erzeugung des Rasters adressiert. Dadurch wird die Anzahl von Zugriffen zum Speicher zur Erzeugung von Rasterdaten sehr klein gehalten.
Beispiel des Verfahrens
In Fig. 6A ist ein Bitplan der aufzuzeichnenden Punkte wiedergegeben. Der Aufzeichnungsbereich für dieses Beispiel ist eine Anordnung von 16 Punkten in einer 4x4 Matrix. Eine aus den Koordinatenpaaren (0,0), (1,1), (2,2), (3,3) bestehende Diagonale wird aufgezeichnet.
SA 972 038
509801/0770
Der der 16 Punktmatrix entsprechende Speicher soll 4 Wörter mit je 4 Bits umfassen. Somit findet die 4x4 Punktanordnung der Fig. 6A ihr Gegenstück in den Fign. 6B und 6C, wo die der Anordnung für den Speicher überlagerten Speicherwörter im Linienformat bzw. im Bereichsformat stehen. Die Speicherwortadressen sind jeweils in den Fign. 6B und 6C angegeben. Die Zahlen in den Wörtern sind die Bitadressen. Die Aufgabe besteht dann darin, die 4 Punkte von Fig. 6A in den nach Fig. 6C organisierten Speicher zu schreiben und dann die Information in das Format umzuordnen, das in Fig. 6B gezeigt ist.
Bei der Adressierung nach dem vorhergehenden Abschnitt wird folgende Entsprechung getroffen:
1. Die horizontale Abmessung der Punktanordnung beträgt LMN = 4, wobei L = 1, M = 2 und N = 2 ist.
2. Die vertikale Abmessung der Punktanordnung beträgt KN = 4, wobei K = 2 und N = 2 ist.
3. Die Wortabmessung ist MN = 4, worin N = 2 und M = 2 ist. Die horizontale Breite des Linienwortes, bezogen auf den Plan ist MN = 4 und die Höhe des Bereichswortes ist N = 2 und die Breite des Bereichswortes M = 2.
Die Adressen für jeden Punkt lassen sich nach der Formel (1) für das Bereichswort und die Bitadressen berechnen. Die Transformation von einem X/Y-Koordinatenpunkt in ein Bereichswort und eine Bit adresse kann wie folgt dargestellt werden.
(0,0) -> (O,O); (1,1) -v (0,3); (2,2) -*- (3,0) und (3,3) -*- (3,3).
Obige Transformation läßt sich anhand der Fig. 6C bildlich überprüfen .
Der erste Punkt wird im Bereichsformatregister 14 aufgezeichnet und der nächste aufzuzeichnende Punkt liegt ebenfalls in dem-
SA 972 038
509881 /0770
selben Bereichswort, er muß also auch in das Bereichsformatregister eingegeben werden. Der dritte Punkt liegt jedoch in einem anderen Bereichswort. Somit muß der laufende Inhalt des Bereichsformatregister im Randomspeicher 16 gespeichert werden, bevor dieser dritte Punkt aufgezeichnet wird. Für diese Speicherung wird der laufende Inhalt des Wortes 0 im Speicher 16 logisch kombiniert mit dem laufenden Inhalt des Bereichsformatregisters in der Kombinationslogik 15. Das kombinierte Ergebnis ersetzt die im Wort 0 gespeicherte Information. Das Bereichsformatregister wird dann auf 0 zurückgestellt und wie bei den beiden ersten Punkten werden die nächsten beiden Punkte im Bereichsformatregister aufgezeichnet. Wenn der Inhalt des Registers 14 in den Speicher übertragen werden muß, werden die Punkte mit dem Inhalt des Bereichswortes 3 mit dem Speicher wie oben kombiniert.
Der Bitplan des Speicherinhaltes des Bereichsformates nach der Zusammensetzung des Bildes ist in Fig. 8A gezeigt.
.Umformatierung
Der Speicher muß jetzt vom Bereichsformat in das Zeilenformat umformatiert werden. Die Ergebnisse der Transformation sind in Fig. 8B gezeigt. Wie bereits im vorigen Abschnitt beschrieben wurde, erfolgt die Umordnung mit Hilfe von Blocks. In diesem Beispiel gibt es zwei Blocks, von denen der eine die Wörter 0 und 1 und der andere die Wörter 2 und 3 enthält.
Unter Bezug auf die Fign. IA, 6A, B und 8A und B wird anschließend die Transformation vom Bereichswort in ein Zeilenwort beschrieben .
1. Die Wörter 0 und 1 werden vom Speicher 16 adressiert und durch die Formatumwandlungslogik 18 als Blockwörter 0 bzw. 1 "gerettet".
SA 972 O38
509881 /0770
2. Die Bits 0 und 1 des Blockwortes 0 und des Blockwortes
1 werden in dieser Reihenfolge aus der Formatumwandlungslogik 18 herausgezogen und zur Bildung eines Speicherwortes verkettet, welches dann in das Wort 0 des Speichers 16 geschrieben wird.
3. Die Bits 2 und 3 des Blockwortes 0 und des Blockwortes 1 werden in dieser Reihenfolge aus dem Logikelement 18 herausgezogen und verkettet und dann in die Bits 0, 1,2 und 3 des Speicherwortes 1 im Speicher 16 geschrieben. Damit ist die Umordnung des ersten Blockes beendet.
4. Die Wörter 2 und 3 werden aus dem Speicher 16 adressiert und im Logikelement 18 als Blockwörter 0 bzw. 1 gerettet.
5. Die Bits 0 und 1 des Blockwortes 0 und des Blockwortes 1 vom Logikelement 18 werden in dieser Reihenfolge verkettet und in die Bits 0 bis 3 des Speicherwortes 2 im Speicher 16 geschrieben.
6. Die Bits 2 und 3 des Blockwortes 0 und des Blockwortes
1, die im Logikelement 18 "gerettet" sind, werden verkettet und in die Bits 0 bis 3 des Speicherwortes 3 im Speicher 16 geschrieben. Damit ist die Umordnung des letzten Blockes beendet.
Herausziehen umformatierter Daten für die Rasterbildanzeige
Die Speicherdaten müssen jetzt einem Rasterabtastgerät zugeführt werden. Die Daten müssen in Koordinatenform adressiert werden als:
0, 0; 0, 1; 0, 2; 0, 3 für die erste Zeile,
1, 0; 1, 1; 1, 2; 1, 3 für die zweite Zeile,
2, 0; 2, 1; 2, 2; 2, 3 für die dritte Zeile,
3, 0; 3, 1; 3, 2; 3, 3 für die letzte Zeile.
Mit den in Fig. 7A gezeigten Umwandlungsschema werden die Speicherwort- und Bitadressen für die dritte Zeile des Rasters nach der Adreßformel (2) berechnet. Wenn die Koordinatenpunkte für die dritte Rasterzeile gegeben sind, lauten die entsprechenden SA 972 038
509881/0770
Zeilenwort- und Bitadressen:
2,0 2, 0; 2, 1 2,1; 2,2 2,2; 2,3 2,3. Diese Adressenerzeugung kann in Fig. 6B nachgeprüft werden. Programmbeispiel des Gerätes
In den Fign. 9 bis 12 sind Einzelheiten des Speichers und der Steuer- und Umformatierlogik 37 gezeigt. Fig. 9 zeigt ein Datenflußdiagramm zur Ausführung der ümformatierung oder Umordnung der Daten im Randomspeicher 16. Fig. 10 zeigt die logische Auslegung des Adreß- und Steuerelementes 19 sowie des Steuer- und Adreßwählers 20. Fig. 11 gibt ein Beispiel für die Unterteilung des Inhaltes der Formatumwandlungslogik in M identische Schieberegisteranordnungen. Fig. 12 zeigt die Form einer derartigen Schieberegisteranordnung, die im Formatumwandlungselement 18 benutzt wird. Die nachfolgend aufgeführten Schritte stellen in ihrer sequentiellen Ausführung die in den Fign. 9 bis 12 gezeigte Programmlogik für die Speicherformatumordnung dar. Dabei wird insbesondere auf die Fign. 9 und 10 bezug genommen.
Die Schritte 1 bis 5 initialisieren das Gerät.
1. Den Umordnungsadreßzähler-Ladedatenwähler 101 so einstellen, daß die Quelle N-I gewählt wird.
2. Die Ladeleitung 103 am Umordnungsadreßzähler 115 takten, um sie mit N-I zu laden. Dadurch wird der Zähler 115 initialisiert.
3. Umordnungswähler 101 so einstellen, daß die Addierquelle 105 gewählt wird.
4. Steuer- und Adreßwähler 20 auf den Speicher 16 einstellen, so daß nur die Umordnungsadresse in den Speicher 16 geleitet wird. Das bedeutet, daß 107 und 109 geschlossen sind
SA 972 038 m ^ . ,
509881 /0770
und das Schaltglied 111 geöffnet ist.
5. Speichereingabedatenwähler 15 so einstellen, daß nur Daten vom Umordnungsspeicher 18 durch den Speicher 16 geleitet werden können. Die von den Leitungen A und B getriebenen UND-Glieder in Fig. 9 sind somit ausgeschaltet, während das von der Leitung C eingespeiste UND-Glied eingeschaltet ist. Die folgenden Schritte initialisieren das Gerät zum Lesen der Daten aus dem Speicher 16 und zum Einsetzen in den Umordnungsspeicher 18.
6. Zahlensteuerung 113 so einstellen, daß die Umordnungsadresse im Zähler 115 heruntergesetzt wird, wenn die Zählleitung 117 getaktet wird.
7. Den Umordnungsspeicher 18 und eine Ein/Auswahlleitung 135 so einstellen, daß Daten in den Speicher geschoben werden, wenn die Schiebeleitung getaktet wird.
8. Den Schreib/Lesewähler 137 des Speichers 16 so einstellen, daß die Daten in das Speicherdatenregister 17 gelesen werden, wenn die Zyklusanforderungsleitung getaktet wird.
9. Die Ladeleitung 121 für den Zykluszähler 123 takten. Siehe hierzu Fig. 10.
In den folgenden Schritten wird Information vom Speicher in den Umordnungsspeicher 18 übertragen.
10. Die Speicherzyklusanforderungsleitung 131 takten, die das Speicherdatenregister 17 mit Daten über den Weg 43 lädt.
11. Die Umordnungsspeicher-Schiebeleitung 133 takten. Diese Leitung überträgt Daten vom Register 17 in den Umordnungsspeicher 18 über die Bahn 43.
12. Sprung nach Schritt 16, wenn die Zykluszahl-Nulleitung 127 ein wahres Signal führt. Siehe Fig. 10.
13. Die Umordnungsadreßzahlleitung 117 takten, um die Adresse im Register 115 um 1 herunterzusetzen.
14. Die Zykluszähler-Zahlleitung 125 takten, um die Zykluszahl im Register 123 um 1 herunterzusetzen.
15. Sprung zum Schritt 10. Die folgenden Schritte initialisieren das Gerät zur übertragung von Daten aus dem Um-
SA 972 038
509881/0770
Ordnungsspeicher 18 in den Speicher 16.
16. Die Zahlsteuerleitung 113 so setzen, daß die Umordnungsadresse erhöht wird, wenn die Zahlleitung 117 getaktet wird.
17. Die Umordnungsspeicher-Wahlleitung 135 so setzen, daß Daten aus dem Speicher 18 geschoben werden, wenn die Schiebeleitung 133 getaktet wird.
18. Den Speicher-Lese/Schreibwähler 137 so einstellen, daß Daten in den Speicher 16 von der Datenwählersammelleitung 45 geschrieben werden, wenn die Zyklusanforderungsleitung 131 getaktet wird.
19. Die Ladeleitung 121 für den Zykluszähler 123 takten.
In den folgenden Schritten werden die aus dem Umordnungsspeicher herausgezogenen Daten in den Speicher 16 geschrieben.
20. Die Speicherzyklusanforderungsleitung 131 takten. Diese Leitung lädt den Speicher 16 mit Daten aus dem Umordnungsspeicher 18.
21. Die ümordnungspuffer-Schiebeleitung 133 takten, so daß ein neues Wort in den Speicher 16 gesetzt wird.
22. Sprung zum Schritt 26, wenn die Zykluszahlleitung 127 0 ist.
23. Die ümordnungsadreßzähler-Taktleitung 117 takten, um den Inhalt des Adreßzählers 115 um 1 zu erhöhen.
24. Die Zykluszähler-Zahlleitung 125 takten, um die Zykluszahl im Zähler 123 herunterzusetzen.
25. Sprung nach Schritt 20.
Die folgenden Schritte initialisieren das System für die nächste Umordnungsaufgäbe.
26. Sprung nach Schritt 29, wenn die letzte Speicheradresse im Zähler 115 gleich KN-I ist.
27. Die Umordnungsadreßζah11adeleitung 103 takten, um die Adresse um N zu erhöhen.
28. Sprung nach Schritt 6.
Wenn die Bedienungskraft mehr Datenpunkte in ein vorgegebenes SA972038 509881/0770
Rasterbild einsetzen will, muß das ganze Bild vom Zeilenformat in das Bereichsformat umformatiert werden. Die Gesamtheit wird dann wie oben vom Bereichsformat in das Zeilenformat umgeordnet.
SA 972 038
509881 /0770

Claims (6)

PATENTANSPRÜCHE Verfahren zur Rasterpunktdarstellung von codierter - Liniensegmente darstellende - Information in computergesteuerten Datensichtgeräten, insbesondere in Kathodenstrahlbildschirmstationen, gekennzeichnet durch folgende Verfahrensschritte :
1. Umwandlung der codierten-Liniensegmente darstellende— Information in über X-Y-Koordinaten adressierbare Information und Abspeicherung derselben in einem bereichsformatierten Speicher derart, daß sich die Gesamtinformation aus matrixförmig angeordneten Unterbereichen zusammensetzt, wobei ein solcher Unterbereich aus matrixförmig angeordneten Speicherzellen besteht,
und daß die Adressen der einzelnen Unterbereiche als Datenwörter und die Adressen der einzelnen Speicherzellen derselben aus den X/Y-Koordinaten berechnet werden;
2. Umwandlung der Bereichsformat-Daten in das "Zeilenformat", wonach die einzelnen innerhalb eines Wortes im Bereichsformat übereinander angeordneten Speicherzellenzeilen in eine einzige alle Speicherzellen des Bereichsformatwortes umfassende Wortzeile des Zeilenformats gelegt werden.
3. Adressierung der im Zeilen-Format stehenden Daten durch das Rasterpunkt-Datensichtgerät.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß der Speicher für das Bereichs- und Zeilenformat der gleiche ist,
3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Speicherzellen pro Wort und die Worte im Speicher fortlaufend aufsteigend adressierbar sind in x- und y-Richtung,
4. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Umordnung der Daten vom Bereichs-Jfeilenformat über
SA 972 038
509881/0770
einen Arbeitsspeicher in Gruppen von nebeneinanderliegenden Speicherwörtern erfolgt.
5. Anordnung zur Durchführung des Verfahrens nach Anspruch 1, dadurch gekennzeichnet, daß ein Computer (10) zur Lieferung der codierten-Liniensegmente darstellenden-Information vorgesehen ist, daß ein Logikelement (12) zur Transformation der codierten Information in eine solche mit X/Y-Koordinaten vorgesehen ist, welches mit einer Adreß- und Steuerlogikschaltung (13) verbunden ist, durch welche aus den Koordinaten die Speicherwort-und Bitadressen für das Bereichsformat errechenbar sind, daß zur Aufnahme der Adressen ein Bereichsformatregister (14) vorgesehen ist für die Adreßvorgabe zur Aufzeichnung der Information in einen Speicher 16,
an den über ein Register 17 ein Arbeitsspeicher in Verbindung mit einer Formatumwandlungslogik (18) und einer Adreß- und Steuerlogik (19) für die Umformatisierung aus dem Bereichs- in das Zeilenformat vorgesehen ist, daß von dieser Anordnung die umformatisierte Information in den Speicher (16) rückschreibar ist und daß die Information im Zeilenformat aus dem Speicher (16) von einem Rastergerät adressierbar ist.
6. Anordnung nach Anspruch 5, dadurch gekennzeichnet, daß die Formatumwandlungslogik (18) für jedes Wort aus einem Feld identischer Schieberegisteranordnungen zur Ein/Ausgabe der Wortzeilen besteht.
SA 972 038
509881/0770
DE2525155A 1974-06-10 1975-06-06 Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten Expired DE2525155C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/477,717 US3973245A (en) 1974-06-10 1974-06-10 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

Publications (2)

Publication Number Publication Date
DE2525155A1 true DE2525155A1 (de) 1976-01-02
DE2525155C2 DE2525155C2 (de) 1985-07-11

Family

ID=23897066

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2525155A Expired DE2525155C2 (de) 1974-06-10 1975-06-06 Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten

Country Status (5)

Country Link
US (1) US3973245A (de)
JP (1) JPS589451B2 (de)
DE (1) DE2525155C2 (de)
FR (1) FR2274112A1 (de)
GB (1) GB1504975A (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4028214A1 (de) * 1990-09-06 1992-03-12 Nuclear Cargo & Service Gmbh Verfahren zur umsetzung von in werten eines geographischen koordinatensystems erzeugten standortdaten in eine auf einem karthesischen koordinatensystem beruhende rasterform

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL51719A (en) * 1976-04-08 1979-11-30 Hughes Aircraft Co Raster type display system
US4093996A (en) * 1976-04-23 1978-06-06 International Business Machines Corporation Cursor for an on-the-fly digital television display having an intermediate buffer and a refresh buffer
US4074254A (en) * 1976-07-22 1978-02-14 International Business Machines Corporation Xy addressable and updateable compressed video refresh buffer for digital tv display
US4103331A (en) * 1976-10-18 1978-07-25 Xerox Corporation Data processing display system
US4177514A (en) * 1976-11-12 1979-12-04 General Electric Company Graph architecture information processing system
US4121283A (en) * 1977-01-17 1978-10-17 Cromemco Inc. Interface device for encoding a digital image for a CRT display
IT1071592B (it) * 1977-03-09 1985-04-10 Olivetti & Co Spa Metodo ed apparecchiatura di registrazione in memoria e visualizzazione di immagini
GB1572318A (en) * 1978-03-31 1980-07-30 Ibm Display system
DE2925613C2 (de) * 1979-06-25 1983-05-05 Aristo Graphic Systeme Gmbh & Co Kg, 2000 Hamburg Vorrichtung zum Steuern einer an einen Computer angeschlossenen Zeichenmaschine mittels einer Digitalisiereinrichtung
JPS5623082U (de) * 1979-08-01 1981-03-02
DE3015125A1 (de) * 1980-04-19 1981-10-22 Ibm Deutschland Gmbh, 7000 Stuttgart Einrichtung zur speicherung und darstellung graphischer information
US4451895A (en) * 1980-07-17 1984-05-29 Telesis Corporation Of Delaware, Inc. Interactive computer aided design system
US4454593A (en) * 1981-05-19 1984-06-12 Bell Telephone Laboratories, Incorporated Pictorial information processing technique
US4611310A (en) * 1982-08-23 1986-09-09 Canevari Timber Co. Method and system for rearranging data records in accordance with keyfield values
US4555775B1 (en) * 1982-10-07 1995-12-05 Bell Telephone Labor Inc Dynamic generation and overlaying of graphic windows for multiple active program storage areas
US6552730B1 (en) 1984-10-05 2003-04-22 Hitachi, Ltd. Method and apparatus for bit operational process
JPS6247786A (ja) * 1985-08-27 1987-03-02 Hamamatsu Photonics Kk 近傍画像処理専用メモリ
US4763251A (en) * 1986-01-17 1988-08-09 International Business Machines Corporation Merge and copy bit block transfer implementation
FR2601167B1 (fr) * 1986-07-07 1995-05-19 Asahi Chemical Ind Procede et systeme de generation de donnees de modele.
JPS6340189A (ja) * 1986-08-05 1988-02-20 ミノルタ株式会社 アドレス変換方式
US4841435A (en) * 1986-10-29 1989-06-20 Saxpy Computer Corporation Data alignment system for random and block transfers of embedded subarrays of an array onto a system bus
US4942541A (en) * 1988-01-22 1990-07-17 Oms, Inc. Patchification system
US4928243A (en) * 1987-10-06 1990-05-22 Preco Industries, Inc. Method and system for printing graphics and text from vector-based computer aided source information
US4916654A (en) * 1988-09-06 1990-04-10 International Business Machines Corporation Method for transfer of data via a window buffer from a bit-planar memory to a selected position in a target memory
JPH0778782B2 (ja) * 1989-07-19 1995-08-23 インターナショナル・ビジネス・マシーンズ・コーポレーシヨン 対話型コンピュータ・システムならびにその使用環境適合化装置および方法
US7095909B1 (en) * 1991-01-02 2006-08-22 Bruce Beasley Light pen system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2246029A1 (de) * 1971-09-22 1973-03-29 Texas Instruments Inc Verfahren zum speichern und anzeigen von daten und anordnung zur durchfuehrung des verfahrens
DE2261141A1 (de) * 1971-12-14 1973-06-20 Tokyo Shibaura Electric Co Einrichtung zur graphischen darstellung

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3631455A (en) * 1969-02-13 1971-12-28 Bunker Ramo Method and apparatus for code conversion
US3675232A (en) * 1969-05-21 1972-07-04 Gen Electric Video generator for data display
US3668661A (en) * 1969-06-25 1972-06-06 Ncr Co Character coding, memory, and display system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2246029A1 (de) * 1971-09-22 1973-03-29 Texas Instruments Inc Verfahren zum speichern und anzeigen von daten und anordnung zur durchfuehrung des verfahrens
DE2261141A1 (de) * 1971-12-14 1973-06-20 Tokyo Shibaura Electric Co Einrichtung zur graphischen darstellung

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4028214A1 (de) * 1990-09-06 1992-03-12 Nuclear Cargo & Service Gmbh Verfahren zur umsetzung von in werten eines geographischen koordinatensystems erzeugten standortdaten in eine auf einem karthesischen koordinatensystem beruhende rasterform

Also Published As

Publication number Publication date
JPS511030A (en) 1976-01-07
GB1504975A (en) 1978-03-22
JPS589451B2 (ja) 1983-02-21
DE2525155C2 (de) 1985-07-11
FR2274112A1 (fr) 1976-01-02
US3973245A (en) 1976-08-03
FR2274112B1 (de) 1980-01-04

Similar Documents

Publication Publication Date Title
DE2525155C2 (de) Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten
DE3804938C2 (de) Bildverarbeitungseinrichtung
DE69633477T2 (de) Bildspeicher für graphische Daten
DE10053439B4 (de) Grafik-Beschleuniger mit Interpolationsfunktion
DE3636394C2 (de) Einrichtung und Verfahren zur Speicherorganisation
EP0038411A2 (de) Einrichtung zur Speicherung und Darstellung graphischer Information
DE2852253A1 (de) Drehung der wiedergabe auf einem bildschirm
DE2438202A1 (de) Vorrichtung zur erzeugung von videosymbolen
DE2835689A1 (de) Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung
DE3518416A1 (de) Speicher- und prozessorsystem mit schnellem zugriff zur rasteranzeige
DE2144596A1 (de) Video-Anzeigevorrichtung
EP0096079A1 (de) Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen
DE10101073B4 (de) Bildaufbereitungsvorrichtung mit niedrigeren Speicherkapazitätsanforderungen und Verfahren dafür
DE4011758C2 (de)
DE3218815A1 (de) Verfahren zur verwendung einer speichervorrichtung fuer ein anzeigesystem
DE2652900C2 (de) Steuerschaltung zur Bildwiederholung für ein Raster-Datensichtgerät
DE1774682B2 (de) Einrichtung zur sichtbaren Datenwiedergabe
DE2223332A1 (de) Einrichtung zur sichtbaren Anzeige von Daten auf einem Wiedergabegeraet
DE3716752C2 (de)
DE2510542A1 (de) Digitale bildwiedergabevorrichtung mit mehreren bildschirmen
DE69709695T3 (de) Verfahren zur seitenzusammensetzung
DE3702613A1 (de) Geraet zum verschieben digitaler daten in einem speicher eines datenverarbeitungssystems
DE3519338A1 (de) Datenreorganisierungseinrichtung
DE2324063A1 (de) Speicherzugriffseinrichtung fuer ein anzeigegeraet
DE2108801A1 (de) Verfahren zur Darstellung von Zeichen und/oder begrenzten Zeichnungen

Legal Events

Date Code Title Description
OD Request for examination
D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee