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 kathodenstrahlbildschirmstationenInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/39—Control of the bit-mapped memory
- G09G5/393—Arrangements for updating the contents of the bit-mapped memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/42—Control 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.
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.
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.
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.
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.
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
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.
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.
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)
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
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)
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)
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)
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)
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 |
-
1974
- 1974-06-10 US US05/477,717 patent/US3973245A/en not_active Expired - Lifetime
-
1975
- 1975-04-29 FR FR7514035A patent/FR2274112A1/fr active Granted
- 1975-05-16 JP JP50057508A patent/JPS589451B2/ja not_active Expired
- 1975-05-19 GB GB21127/75A patent/GB1504975A/en not_active Expired
- 1975-06-06 DE DE2525155A patent/DE2525155C2/de not_active Expired
Patent Citations (2)
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)
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 |