DE2456746C3 - Anordnung zur Zeichen- und Symboldarstellung auf Kathodenstrahl-Bildschirmeinheiten und Verfahren unter Anwendung der Anordnung - Google Patents
Anordnung zur Zeichen- und Symboldarstellung auf Kathodenstrahl-Bildschirmeinheiten und Verfahren unter Anwendung der AnordnungInfo
- Publication number
- DE2456746C3 DE2456746C3 DE19742456746 DE2456746A DE2456746C3 DE 2456746 C3 DE2456746 C3 DE 2456746C3 DE 19742456746 DE19742456746 DE 19742456746 DE 2456746 A DE2456746 A DE 2456746A DE 2456746 C3 DE2456746 C3 DE 2456746C3
- Authority
- DE
- Germany
- Prior art keywords
- register
- vector
- data
- value
- memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000015654 memory Effects 0.000 claims description 181
- UIIMBOGNXHQVGW-UHFFFAOYSA-M buffer Substances [Na+].OC([O-])=O UIIMBOGNXHQVGW-UHFFFAOYSA-M 0.000 claims description 135
- 230000000875 corresponding Effects 0.000 claims description 40
- 241001442055 Vipera berus Species 0.000 claims description 29
- 125000004122 cyclic group Chemical group 0.000 claims description 29
- 238000003860 storage Methods 0.000 claims description 20
- 239000011159 matrix material Substances 0.000 claims description 15
- 230000001186 cumulative Effects 0.000 claims description 14
- 230000001965 increased Effects 0.000 claims description 12
- 230000036961 partial Effects 0.000 claims description 11
- 230000002829 reduced Effects 0.000 claims description 9
- 238000000034 method Methods 0.000 claims description 5
- 210000004072 Lung Anatomy 0.000 claims description 4
- TVMXDCGIABBOFY-UHFFFAOYSA-N Octane Chemical compound CCCCCCCC TVMXDCGIABBOFY-UHFFFAOYSA-N 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 claims description 2
- 230000001629 suppression Effects 0.000 claims 1
- 238000011068 load Methods 0.000 description 27
- 238000010586 diagram Methods 0.000 description 9
- 239000003086 colorant Substances 0.000 description 8
- 230000001174 ascending Effects 0.000 description 5
- 239000003550 marker Substances 0.000 description 5
- 230000000717 retained Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000003247 decreasing Effects 0.000 description 4
- 241000143392 Oar Species 0.000 description 3
- 230000000052 comparative effect Effects 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 3
- 238000007781 pre-processing Methods 0.000 description 3
- LMDZBCPBFSXMTL-UHFFFAOYSA-N 1-Ethyl-3-(3-dimethylaminopropyl)carbodiimide Chemical compound CCN=C=NCCCN(C)C LMDZBCPBFSXMTL-UHFFFAOYSA-N 0.000 description 2
- 241000270295 Serpentes Species 0.000 description 2
- 235000004652 Tilia americana var heterophylla Nutrition 0.000 description 2
- 240000007313 Tilia cordata Species 0.000 description 2
- 235000015450 Tilia cordata Nutrition 0.000 description 2
- 235000010840 Tilia tomentosa Nutrition 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 230000001066 destructive Effects 0.000 description 2
- 238000005286 illumination Methods 0.000 description 2
- 229910017145 AlU Inorganic materials 0.000 description 1
- 101700026482 CCRL2 Proteins 0.000 description 1
- 241000283153 Cetacea Species 0.000 description 1
- 210000001513 Elbow Anatomy 0.000 description 1
- 210000003608 Feces Anatomy 0.000 description 1
- 241001190717 Hea Species 0.000 description 1
- 240000006240 Linum usitatissimum Species 0.000 description 1
- 240000002834 Paulownia tomentosa Species 0.000 description 1
- 235000010678 Paulownia tomentosa Nutrition 0.000 description 1
- 241001441724 Tetraodontidae Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004026 adhesive bonding Methods 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 230000003111 delayed Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000013601 eggs Nutrition 0.000 description 1
- 239000010437 gem Substances 0.000 description 1
- 230000012447 hatching Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000002452 interceptive Effects 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006011 modification reaction Methods 0.000 description 1
- 239000012557 regeneration buffer Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 125000003696 stearoyl group Chemical group O=C([*])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])C([H])([H])[H] 0.000 description 1
Description
Die Erfindung betrifft eine Anordnung, wie sie dem Oberbegriff des Patentanspruchs 1 zu entnehmen ist,
und ein Verfahren unter Anwendung dieser Anordnung.
Datensichtgeräte üblicher Bauart erzeugen Linienzeichnungen durch Speicherung eines Anzeige-Bits für
jedes Bildebment. F i g. 1 zeigt ein typisches Datensichtgerät dieser Art. Von einem externen Prozessor als
Rechner 6 werden die für die bildliche Darstellung vorgesehenen Vektoren und Zeichen aus einer Gruppe
von Anzeige-Bits aufgebaut, die vom Zeichengenerator 10 und dem Vektorgenerator 12 bereitgestellt sind und
einem Rasterspeicher 14, üblicherweise einem
20
30
Kernspeicher 14, zusammengesetzt werden. Bei Datensichtgeräten mit einer Rastermatrix von 1024 Bildpunkten müßten insgesamt eine Million Anzeige-Bits im
Rasterspeicher 14 gespeichert werden. Nach Zusammensetzung der Anzcigedarstellung wird eine Folge
von einer Million Anzeige-Bits aus dem Rasterspeicher 14 über einen Multiplexer 16 auf einen vorgegebenen
Kanal zur Speicherung in einem zugeordneten Auffrischungspuffer 22 übertragen. Falls das Datensichtgerät
eine farbige Anzeige mit den drei Grundfarben gestattet, sind drei separate Übertragungslinien mit
Speicherung einer Million Bits für jede der drei darzustellenden Grundfarben erforderlich.
Ein wesentlicher Nachteil derartiger Datensichtgeräte besteht darin, daß jede Änderung der dargestellten
Abbildung entweder die Erzeugung einer neuen Abbildung oder die Entfernung einer Millionen Bits aus
dem Auffrischungspuffer, der eine Speicherplatte 22 sein kann, unter Eingabe in den Rastcrspcichcr 14
erfordert, um die Veränderung der gewünschten Bits mit anschließender RUckUbcrtragung einer Million Bits
in den Auffrischungspuffer 22 vorzunehmen. Um beispielsweise einen Vektor zu löschen, müßte das
ganze Raster im Speicher 14 neu zusammengesetzt
werden.
Wenn zwei Vektoren sich einander kreuzen, wird durch dieses Löschen aber auch eine Anzahl von den
beiden Vektoren gemeinsamen Bits entfernt, so daß der verbleibende Vektor mit einer die Teile zu beiden Seiten
des gelöschten Vektors trennenden Lücke verschen ist.
Wenn die abzubildende Darstellung einmal in den
Auffrischungspuffer 22 geschrieben ist, verlieren damit die Vektoren ihre Identität, d. h„ jedes Bit wird in
gleicher Weise in den Auffrischungspuffcr 22 und in das Datensichtgerät 34 geschrieben. Um mit dieser Technik
eine Grauwert- oder Farbnnzcigc zu ermöglichen, müssen zusätzliche Spcichcrcinhcitcri belegt werden,
die zudem synchron arbeiten müssen. Infolgedessen
braucht man zur Erzeugung von Anzeigen mit mehreren
Intensitätsstufen, verschiedenen Farben oder anderer,
die Einzelbehandlung von Vektoren erfordernder
Wirkung im allgemeinen das Zwei- oder Dreifache des
Speicherplatzbedarfs als für einen Kanal allein.
Ein Problem besteht weiterhin darin, jeden Vektor für
sich in verdichteter und identifizierbarer Form zu
speichern, so daß sich seine Besonderheiten beibehalten
lassen und seine Identifizierung ohne großen Speicherplatzbedarf möglich ist. Ohne einen mit Eingabe/Ausgabe-Geräten nicht zu vereinbarendem Großraumspeicher ist man bisher allerdings nicht in der Lage,
individuelle Vektoren im Auffrischungsspeicher zu
adressieren oder Vektoren verschiedener Farbe, unterschiedlichen Grauwerts oder mit anderen Merkmalen
im selben Speichermodul zu speichern.
Es ist zwar mit der deutschen Offenlegungsschrift
DT-OS 2063 243 eine Anordnung zur Zeichen- und
Symboldarstellung der eingangs beschriebenen Art
bekanntgeworden; jedoch gilt auch hier, daß trotz der
Partialrasterspeicherung ein Massenspeicher erforderlich ist, um alle zur Zeichen- und Symboldarstellung
erforderlichen Daten zu speichern.
Die Aufgabe der Erfindung besteht darin, Vektorbilddaten in verdichteter Form so zu speichern, daß sie ihre
Identität und Sondereigenschaften, wie Farbe, Grauwert oder Aufblinken beibehalten und entsprechend
aufgerufen werden können, ohne daß ein Großraumspeicher zur zuverlässigen und zufriedenstellenden
Betriebsweise erforderlich sein soll.
Die Lösung dieser Aufgabe geschieht erfindungsgemäß durch die im Patentanspruch angeführte Lehre zum
technischen Handeln.
Vorteilhafte Ausgestaltungen und Weiterbildungen
der Erfindung lassen sich den Unteransprüchen
entnehmen.
Das erfindungsgemäße Datensichtgerät unter Verwendung codierter Vektoren enthält einen Kleinrcchner od. dgl. zur Berechnung des Anfangspunktes, der
Richtung und der Länge des auf dem Bildschirm
darzustellenden Vektors. Ein mit seinem Eingang an den
Kleinrechner angeschlossener Vektorsegmentcodiercr
empfängt die Daten für Anfangspunkt, Richtung und
Länge des Vektors und verarbeitet diese Daten zu einer
Folge von Vektorsegmentwörtern, die in eine Folge von
Vektorsegmenten, gewissermaßen als Einheitsvektoren
des abzubildenden Vektors darstellen. Jedes Vektorsegment ist also ein vereinheitlichtes Symbol, das in einem
Symbolsatz enthalten und durch einen Symbolcode
bezeichnet ist. Jedes Vektorsegmentwort enthalt die
Koordinatenwerte für den Vektoranfangspunkt, eine
Längenangabc und den Symbolcode.
Ein Warteschlangcn-Zwischenrcgister ist mit seinem
Eingang an den Vektorsegmentcodiercr angeschlossen
und empfängt Vcktorscgmcntwörtcr mit zufälliger
Folge von X- Y-Anfnngspunkt-Koordinatcnwcrtcn und
sortiert und speichert diese verschachtelten Wörter in
Wartcschlungen, je nach gleichem Y- Wert.
Ein elastischer Auffrischungspuffer ist mit seinem
Eingang an diis Wartcschlangcnzwischcnrcgistcr angeschlossen und fragt ihn nach Vcktorscgmcnlwörtern ab,
die einen durch den Auffrischungspuffer bezeichneten
V-Wcrt haben und speichert dann diese Vcktoisegmcntwörtcr in einer nach V-Wcrtcn geordneten
verdichteten Liste. Der elastische Auffrischungspuffcr
liest zyklisch die Vcklorscgmentwörtcr um Kopf der
verdichteten Liste «us und leitet jedes Wort zur
35
Decodie
dann dit
Liste in 1
puffer ί
V-Koon
die von
werden,
gleichze.
schungsi
mehr ge
mentwö·
Auffrisc
gleichze
Liste au?
Auffrisci
ner Vek
verschie
Merkma
schungsi gestatte dem BiI Ergänzu mehr be Ein S; elastisch
empfän{ Vektors SymboU Symbol; Symbol;
beleuch den Vek Ein b seinem angesch punktbc net nac und zui dem P
punktkt ment, < gespcic! dienen, den Pai
stellend zur wal speiche Ein 1 Partialt fängt d tung de
Dies Vektor Form s Aufiris dung / weise bzw. / wicht s
sichtg» KunUli
oder 1 Spciel Vor schirn gcmäl
moglii
Decodierung sowie Anzeige zyklisch aus und schreibt dann dieses Vektorsegmentwort wieder am FuO der
Liste in den Speicher ein. Der elastische Auffrischungspuffer schreibt am Fuß der Liste geordnet nach
V-Koordinatenwerte neue Vektorsegmentwörteir ein, die vom Warteschlangenzwischenregister zugeführt
werden, während das zyklische Lesen am Kopf der Liste gleichzeitig unterbrochen wird. Der elastische Auffrischungspuffer liest zyklisch am Kopf der Liste nicht
mehr gebrauchte bzw. nicht mehr aktuelle Vektorsegmentwörter aus, die aus der Liste gestrichen, also im
Auffrischungspuffer gelöscht werden sollen, wobei gleichzeitig das zyklische Neueinschreiben am Fuß der
Liste ausgesetzt wird. Die Organisation des elastischen Auffrischungspuffers gestattet die Adressierung dnzelner Vektoren und die Speicherung von Vektoren mit
verschiedenen Farben, Grauwerten oder anderen Merkmalen.
Das Wechselspiel zwischen elastischem Auffrischungspuffer und Warteschlange und Zwischenregister
gestattet, die zyklische Auffrischung der Anzeige auf dem Bildschirm, Annahme wahlweiser Zusätze bzw.
Ergänzungen in der Liste sowie eine Löschung nicht mehr benötigter Daten.
Ein Symbolgenerator ist mit seinem Eingang an den elastischen Auffrischungspuffer angeschlossen und
empfängt die von diesem zyklisch ausgegebenen Vektorsegmentwörter und decodiert den jeweiligen
Symbolcode in den Vektorsegmentwörtern, der dem Symbolsatz entnommen und hierin enthalten ist. Der
Symbolgenerator erzeugt ein Musler von Rasterpunktbelcuchtungssignalen, welches dem eines darzustellenden Vektorsegments entspricht.
Ein besonderer Partialrasteraufbauspeichcr ist mit seinem Eingang an den Symbolgeneratorausgang
angeschlossen und empfängt das Muster der Rasterpunktbeleuchtungssignale und speichert dieses geordnet nach einem X- Y- Koordinatenwert zum Auslesen
und zur Anzeige. Der Symbolgenerator überträgt auf dem Partialrasteraufbauspcicher die X Y-Anfangspunktkoordinatcn für das darzustellende Vektorsegment, die als Stcllcnadrcsse für das Muster aus
gespeicherten Signalen im Partialrasteraufbauspcicher dienen. Der Symbolgcncrator überträgt außerdem auf
den Partialaufbaurasterspcichcr die Länge eines darzustellenden Vektorsegments, die in Form eines Signals
zur wahlwcisen Abkappung des im Partialrasteraufbauspcicher gespeicherten Signalmustcrs dient.
Ein Bildschirmmonitor ist mit seinem Eingang an den
Pariialrastcraufbauspcichcr angeschlossen und cmpfängt das dort gespeicherte Signalmuster zur Beleuchtung der gewählten Bildpunktc.
Dieses crfindungsgemiiße Datensichtgerät kann jedes
Vektorsegment in verdichteter und identifizierbarer Form so speichern, daß seine Eigenheit und Identität im M
Auffrischungsspcichcr erhalten blieben. Das der Erfindung zugrunde liegende Prinzip ermöglicht die wahlweise Anzeige von Vektoren, wobei ihre Veränderung
bzw. Abänderung ohne Zerstörung des ßildglcichgcwichts erfolgen kann. Das erfindungsgemäße Daten- f*>
sichtgerät gestattet die Anzeige über verschiedene
Kanäle mit unterschiedlichen Färb· und Grnuwcrtcn oder mit anderen Eigenschaften aus einem einzigen
Spcichcrinodul.
Vorteilhafter Multiplexbetrieb mit mehreren Bild- M
schirmgcrätcn mit Hilfe einer gemeinsamen crfindungsgemäßen Vcktorcodicrung ist in cinfucher Weise
mnulich. Ein Ausführungsbcispicl der Erfindung ist in
den Zeichnungen dargestellt und wird anschließend näher beschrieben. Es zeigt
Fig. 1 ein Beispiel für ein bisher übliches digitales
Kathodenstrahldatensichtgerät, Blockschaltbild unter Anwendung konventioneller Auffrischungsverfahren,
F i g. 2A, 2B das codierte Vektorsegment und den codierten alphanumerischen Zeichensatz,
F i g. 3 als Beispiel die Zerlegung darzustellender Vektoren in Vektorsegmentsymboie, wie sie sich aus
Fig. 2A.2B ergeben,
Fig.4 das erfindungsgemäße digitale Kathodenstrahldatensichtsystem für codierte Vektoren im Blockschaltbild,
F i g. 5 ein Schema für das aufeinanderfolgende Laden des Warteschlangen-Zwischenspeichers,
F i g. 6 ein Organisationsschema für den Warteschlangen-Zwischenspeicher.
Fig.7A bis 7D die Grundlagen des Teilrasterbildungsspeichers,
F i g. 10 die Grundlage des vom Vektorsegmentcodierer angewandte Verfahren zur Gewährleistung der
graphischen Stetigkeit zwischen aufeinanderfolgenden Vektorsegmenten,
Fig. 11 das Blockschaltbild des erfindungsgemäßen
Vektorsegmentcodierers,
Fig. 12 das Blockschaltbild des erfindungsgemäßen
Warteschlangen-Zwischenregisters,
Fi g. 13 die Auffrischungszwischenspeicher-Wortformate,
Fig. 14 den elastischen Auffrischungszwischenspeicher gemäß der Erfindung als Blockschaltbild,
Fig. 15 den Zeichengenerator und den Teilrastcrbildungsspeicher als Blockschaltbild,
Fig. 16 eine durch das mit codierten Vektoren arbeitende digitale Kathodenstrahl-Datcnsichlsystcm
erzeugte Musterdarstellung.
Eine Grundlage des erfindungsgemäßen digitalen Datensichtsystems ist die Verwendung eines Satzes von
Untervektorcodes. Diese Codes werden erzeugt durch Zuordnung einer Zahl zu jeder Linie, die von einem
Grund-Teilsatz von Bilddcmenten in einem rechteckigen Bildschnitt ausgehen kann, wenn ein Ende der Linie
entsprechend der Darstellung in F i g. 2A, 2B im oberen linken oder rechten Element liegen kann. Der
Grund-Bildausschnitt ist 16 mal 16 Video Bits groß. An der oberen linken Ecke am Bit mit der Bezeichnung
»Adrcßclcmcnt links« (AEL) beginnende Untcrvcktoren sind so mit den Code-Zahlen 0 bis 31 bezeichnet. An
der oberen rechten Ecke des.Bildausschnitts am Video
Bit mit der Bezeichnung »Adrcßclcmcnt rechts« (AER) beginnende Untervektoren sind mit den Codc-Zuhlcn
32 bis 63 bezeichnet.
Untervektoren, die ihren Ursprung in der linken oberen Ecke AEL des Bildausschnilts mit 16 mal Ib
Elementen der F i g. 2 haben, liegen entweder im ersten oder im zweiten Oktantcn der Fig.9. Im ersten
Oktanlcn können Untervektoren in einem der sechzehn Elcmcniarquadratc in der rechten Spalte des Bildaus·
Schnitts mit 16 mal 16 Elementen enden. Diese Quadrate
sind in aufsteigender Reihenfolge, beginnend oben, mit 0 und unten endend mit 15, numeriert. Im zweiten
Oktnntcn können die Unlcivektorcn in einem der 16
Elcmcntarquudrntc in der untersten Reihe des Bildausschnitts mit 16 mal 16 Elementen enden'. Diese Quadrate
sind in nufstcigcndcr Reihenfolge von links nach rechts, beginnend mit 16 ganz links und endend mit 31 ganz
rechts, numeriert.
Untervektoren mit einem Ursprung in der rechten oberen Ecke AER des Grund-Bildausschnitts mit 16 mal
16 Elementen der Fig.2A, 2B liegen entweder im dritten oder vierten Oklanten der Fig.9. Im vierten
Oktanten können Untervektoren in jedem der 16 Elementquadrate in der äußersten linken Spalte des
Bildausschnitts mit 16 mal 16 Elementen enden. Diese Quadrate sind in aufsteigender Reihenfolge numeriert,
beginnend mit 32 oben und endend mit 47 unten. Im dritten Oktanten können Untervektoren an jedem der
Ί6 Elementquadrate in der untersten Zeile des Bildausschnitts mit 16 mal 16 Elementen enden. Diese
Quadrate sind in aufsteigender Reihenfolge von rechts nach links numeriert, beginnend mit 48 rechts und
endend mit 63 links.
Alle darzustellenden Vektoren werden dadurch zusammengesetzt, daß man diese Untervektoren
verkettet auf den Bildschirm überträgt. Der unterste Untervektor eines jeden Vektors kann auf die richtige
Länge abgekappt werden. Die Untervektoren werden durch ihre oberen rechten Bildelemente AER oder ihre
Bildelemente in der oberen linken Ecke AEL adressiert. Ein vollständiger Zeichensatz aus 256 Zeichen kann mit
acht binären Bits codiert werden und zusätzlich zu den 64 Untervektorelementen in Fig.2A, 2B einen kompletten Satz alphanumerischer Zeichen von A bis Z und
von 0 bis 9 sowie Sonderzeichen enthalten, die durch die Maschinenbedienung oder Programmierung zur Erzeugung von Sonderdarstellungen bezeichnet werden
können. Unter diesen Sonderdarstellungen befindet sich: Bereichsschwärzung, Kreuzschraffur, Bereichsschattierung oder -einfärbung. Andere Sonderzeichen
können charakteristisch für die jeweilige Anwendung sein, in der das erfindungsgemäße System verwendet
wird; so können beispielsweise bei Anwendung in der Luftverkehrskontrolle Flugbahn-Verfolgungszeichen
benutzt werden. Das Datensichtsystem mit codierten Vektoren kann gemäß der Erfindung solche Sonderzeichen durch Abkappen, Verbinden und Überlagern so
zusammensetzen, daß gewünschte Makrozeichen zur Wiedergabe gebildet werden. Mit der Möglichkeit,
programmierte Zeichen auf frei gewählte Rastcrstcllen zu setzen, kann man eine Vielzahl von Sondcrdarstellungcn erzeugen.
Fig.3 zeigt ein Beispiel zur Darstellung zweier Vektoren A und ßals verkettete Folge von Untervektoren. Der Vektor A benutzt Untervektoren mit dem
Anfangspunkt oben links (Codes 0-31, insbesondere Untervektorcode 13). Der Vektor B benutzt Untcrvcktorcn mil dem Anfangspunkt oben rechts (Codes
32-63, insbesondere Untervektorcode 51). Dur Anfangspunkt (XY)UCS Vektors A ist gleich 2, 93 und der
Endpunkt gleich 76,28. Der Vektor A wird zerlegt in die
Untcrvcktorclcmcntc A 1 mit einem linken Adrcßelemcnt AKL von XVglcich 2,93; den Untervektor A 2 mit
dem linken Adrelklement Aiii. 18,79; den Untervektor
A 3 mit dorn AEL 34,65; den Untervektor A 4 mit dem
AlU. 50. 51 und den Untorvektor A 5 mit dem Aiii. 50,
51 und den Untervektor A 5 mit dem ARL 66, 37. Das Anfangs-A/:/. eines jeweils nnchfolgcndcn Untcrvcktorelcmcnts schließt somit immer an tins F.ml-Hiklele·
mcnt des vorhergehenden Untervektors an. leder der
/t-lJntcrvcklurcn hut einen Unlcrvcktor vom Code !3.
Hs ist zu beuchten, daß der abschließende Untervektor
A 5 ubgckuppt ist und am Punkt 76, 28 endet. Der
Vektor A wird durch eine Folge von fünf Untervektorwortern in codierter Form dargestellt, von denen jedes
die Koordinate des linken Adreßelements, den Code für den Untervektor und, falls er abgekappt ist, die
Restlänge enthält. Daraus geht hervor, daß die Spezifikation von A vollständig unabhängig von der
Spezifikation des Vektors B ist. Der Vektor A kann unabhängig vom Vektor B angesprochen werden und
ganz andere Attribute haben als der Vektor B. Die Implementierung dieser Eigenschaften in einem Bildanzeigesystem wird anschließend weiter im Zusammen-
hang mit dem digitalen Datensichtsystem für codierte Vektoren beschrieben.
Dieses Datenüichtsystem ist in F i g. 4 in Form eines
Blockdiagramms dargestellt. Der Kleinrechner 50 als Spezialrecheneinheit stellt ein Informationsaustausch-
'5 glied zwischen externem Rechner 40 und Datensichtsystem über Kanali 42 dar und nimmt an der Vektorerzeugung durch Vorverarbeitung der Vektoren teil. Er
trennt zusammenhängende Vektoren auf und vertauscht bei Bedarf Anfangs- und Endpunkte so, daß alle an den
»ο Vektorsegmentcodieirer 100 gesendeten Vektoren von
oben nach unten gerichtet sind, indem so der Vektoranfangspunkt immer einen größeren V-Wert als
der Vektorendpunkt zugewiesen bekommt. Der Kleinrechner 50 errechnet auch die Richtung der Vektoren.
An den Vektorsegmentcodierer 100 gesendete Vektoren werden durch die Anfangspunktkoordinaten X und
V, ihre Länge und ihre Richtung in bezug zur X-Achse bestimmt. Die angegebene Länge ist der größere der
beiden Werte von Delta X oder Delta Y. Die Richtung
ist definiert ah reiner Zahlenwert, der gleich dem
kleineren der beiden Absolutwerte von Delta X über Delta V und Delta Vüber Delta X ist. Mit zwei binären
Bits wird einer der vier möglichen Oktanten angegeben, in dem der Vektor liegt. Diese Daten werden über die
Leitung 62 an den Vektorsegmentcodierer 100 übertragen.
Der Kleinrechner 50 trennt auch Schreibmaschinenbetriebszcichen unter Errechnung des richtigen Abstands ab und spezifiziert die alphanumerischen Zeichen
durch Anfangskoordinaten ihres Symbolblocks-Adreßelcments-links, gemäß F i g. 2 und Symbolcode. Die
alphanumerischen Daten werden auf der Leitung 60 direkt in das Warteschlangenzwischenregister bzw.
Warteschlungenpuffer 200 übertragen. Die Steucrinfor-
mation für Vektoren und alphanumerischen Zeichen ist
auf Leitung 60 !festgehalten, so daß der Kleinrechner 50 nur diejenigen Stcucrwörter zu senden braucht, die sich
zwischen aufeinanderfolgenden Zeichen ändern. Ein zusätzliches zu jedem Symbol gehörendes Wort gibt die
eine Schrcib-i'Löschbczcichnung und Sondcreigcn-
schaften, wie Farbandcmngen, Intensiintsiindcrung
oder An/.eigcfluktationcn, wie Blinken, an.
codierer geladen worden sind, wird dieser eingeschulte!. Der Vektorsegmentcodierer 100 bestimmt die Anfangskoordinaten für den Anfang AEL oder AER eines jeden
Vckiorsegmcnls, errechne! seinen Symbolcode und seine Lunge. Mil Ausnahme des abschließenden
Vektorsegments am EmIe des darzustellenden Vektors hüben ulic Segmente eine llöchstlllnge von lt>
l-inhcitcn. Das letzte Segment ist kürzer und so abgekappt,
daß es am KmIpunkt des dargestellten Vektors aufhört
Sowie jedes Segment errechnet ist, wird es in den
ft5 Wurlcschlangiinpuffer 200 geladen. Alphanumerische
Zeichen gelangen ohne weitere Verarbeitung am Vcktorgcnerulor vorbei auf Leitung 60 direkt in den
Warteschlungenpuffer 200.
Der Warteschlangenpuffer 200 ist ein 8 K mal 18 Bit
großer Kernspeicher, mit zwei Funktionen. Er empfängt Zeichen in zufälliger Reihenfolge vom Vektorsegmentcodierer
und Kleinrechner und speichert sie, bis sie in den elastischen Auffrischungspuffer 300 geladen werden
können. Dann sortiert der Warteschlangenpuffer die gespeicherten Symbole nach der V-Adresse ihres AEL-
oder /lEÄ-Anfangs. Die Sortierung im Warteschlangenpuffer
ist ein wesentliches Merkmal der Erfindung und befreit von der Erfordernis eines großen Rasterspei- >°
chers 14, wie in herkömmlichen Systemen, z. B. nach Darstellung in Fig. 1. Die Symbole werden aus dem
Warteschlangenpuffer 200 in Symbolbündeln jeweils gleicher V-Adresse ausgelesen.
Nach der X-Koordinate wird nicht sortiert, und die «5
X-Adresse wird mit jedem Zeichen geführt. Die Speicherung erfordert einen Abschnitt, der aus drei
Wörtern pro Zeichen besteht, von denen das erste in der Sortierung benutzt wird. Die Sortierung erfolgt durch
verschachtelte Listen, wobei eine Liste für jede «>
V-Adresse entsprechend jeder sichtbaren Anzeigezeile auf dem Bildschirm vorgesehen ist. Die Index Wörter
oder Zeiger dieser Listen werden in den ersten Speicherregistern gespeichert, von denen für jede Liste
eines verwendet wird. Zur laufenden Erfassung aller leeren Register verwendet man eine weitere Liste. Da
diese Liste jedesmal adressiert wird, wenn ein Zeichen eingegeben wird, ist ihre Hinweisadresse, nämlich das
nächste leere Register, als aktives Register implementiert. Die Warteschlange wird gestartet durch den
Kleinrechner 50, so daß alle Drei-Wort-Abschnitte ineinander verschachtelt sind, wobei jeder die Adresse
des anderen in seinem ersten Wort speichert. Die Adresse des ersten Wortes in einer Folge wird im
nächsten leeren Register gespeichert und das Ende der Folge wird durch ein Kennzeichen markiert. Kennzeichen
in allen Indexwörtern werden gelöscht, um anzuzeigen, daß ihre Listen leer sind, und die erste
Eintragung in einer Liste anzeigenden Kennzeichen jedes Abschnitts werden gelöscht. Da die Warteschlangc
als »zuletzt-cin-zucrst-ausw-Puffcr arbeitet, ist damit
das Ende einer Liste beim Auslesen markiert.
Daten vom Vcktorsegmcntcodierer 100 werden in den Warlcschlangcnpuffer 200 in vier Speicherzyklcn
geladen, wobei zum Vcrschachteln der Liste ein Adreßaustausch erfolgt. Nach Darstellung in Fig. 5
wird das Indexregister gewählt und gelesen, welches der V-Adresse entspricht. Die Liste enthalt einen Abschnitt
mit zugefügten Endmarkicriingsbits. Das letzte leere Register gibt die Adresse eines leeren Abschnitts (p)i\n. so
Die Adresse von ρ wird in das Indexregister geladen und dünn der Abschnitt ρ gelesen, um die Adresse dos leeren
Abschnitts (q) zur Benutzung beim nllchslcn MnI zu erhalten. Wenn ρ erneut geschrieben wird, ersetzt »das
dort gespeicherte q, um damit diis Verschachtelt! zu
beenden. Die übrigen beiden Speicherzyklcn weiden /um Speichern von Daten benutzt. IMg. b zeigt das
Vcrschachteln der Liste nach Abschluß dieser Operation. Das Indexregister verweist jetzt auf den Abschnitt
/) und dieser wiederum auf den Abschnitt n. Die <*
einmal zugefügte Markierung wird hierbei verschoben; sie wird aber geloscht, wenn sein Inhalt in den
Atiffrischungspuffcr übertrugen wird.
Der Wartcschlnngcnpuffer 200 wird die V-Speieherstclle
ausgelesen, Das Indexregister wird gelesen, seine '1S Markierung auf »leer« gelöscht und die Abschnitte
werden in umgekehrter Reihenfolge gelesen, wie sie Besehrieben wurden. Heim Lesen jeden Abschnitts wird
er geleert, wobei seine Adresse im nächsten leeren Register gespeichert wird, während der vorherige Inhalt
des nächsten leeren Registers im Abschnitt gespeichert wird. Das Verschachteln leerer Abschnitte wird somit
beibehalten, während sich der Warteschlangenpuffer füllt und leert trotz gegenüber Schreiben anderer
Reihenfolge beim Lesen.
Der elastische Auffrischungspuffer 300 enthält die geordneten Listen der codierten Daten nach Färb- und
Längenbits, X-Position, Kanalzahl und Steuerbits. Er kann von mehreren Anzeigekanälen gleichzeitig benutzt
werden. Die V-Position ist angegeben durch ein V-Steuerwort, welches in den Auffrischungspuffer vor
den Daten für jede Anzeigezeile geladen wird. An den V-Steuerwörtern sind alle Kanäle beteiligt. Ein Kernspeicher
wurde als wirtschaftlichstes Mittel zur Verwirklichung des elastischen Auffrischungspuffers
ausgewählt, andere Speichertypen, wie Halbleiterspeicher, sind an sich ebensogut geeignet.
Im erweiterungsfähigen Auffrischungspuffer wird eine kontinuierliche Verschiebeorganisation verwendet.
Man arbeitet mit einer Art geteilten Zyklus, in dem Daten gelesen, die Adresse verändert und die Daten
dann wieder in die neue Adresse geschrieben werden. Lesen und Schreiben sind zyklische Operationen, wobei
die Adresse nach jeder Operation fortgeschaltet wird, so daß die beschriebene Stelle durch die jeweils
vorhergehende Leseoperation dieser Stelle gelöscht ist. Einschiebungen und Streichungen können nur während
des Lesens in zyklischer Routine erfolgen, die mit einer Anzeigeoperation im Schritt ist. Dieses Verfahren hält
al'e vollen Register in einer geschlossenen Gruppe oder
als Bündel zusammen; gewissermaßen umlaufend, da der Speicher in zyklischer Adreßfolge betrieben wird.
Den Betrieb eines erweiterungsfähigen Auffrischungspuffers stellt man sich am besten so vor, daß eine
Datenspalte, die oben gelesen und gelöscht wird, unten wieder geschrieben wird. Zum Löschen von Daten wird
oben gelöscht und unten nicht wieder geschrieben und zur Dateneingabe wird einfach unten geschrieben.
Der Zeichengenerator 400 kann als wahlfreier Zugriffsspeicher, Festspeicher oder Kombination beider
Speichertypen ausgeführt sein und von mehreren Datensichtgeräten gemeinsam benutzt sein.
Zeichen werden spaltenparallel und zcilenscricll erzeugt. Anzeigen erfolgen ineinandergreifend, und
daher hat jede Spalte nur acht und nicht sechzehn Bits, um so die DatenfUhrung zu erleichtern. Der Zeichengenerator
400 ist in vier Abschnitte unterteilt, von denen jeder vier Spalten pro Zeichen liefert und anschließend
Zeichencode und Kanalbezeichnung in den nächsten Abschnitt weiterleitet. Daten für einen Kanal können
Zugriff zum ersten Abschnitt haben, sobald dieser frei ist, vorausgesetzt, daß der Kanal keinen Abschnitt
benutzt. Der Daleiulurchsalz kann verbessert werden,
indem man den elastischen Auffrischtingspuffcr mit der
Höchstzahl von Kanalanschlüssen IiIiIl
Daten vom Zeichengenerator 400 und Steuerinformalion
vom einmischen Auffrischiingspuffei· werden in den
jeweils zugeordneten Pnrlialrustcrauibuu-Spcieher
(PRAS) WK) bis 622 geleitet, wo ein kleines Band des Bildes zusammengesetzt wird. Hin Minimal-PRAS
konnte einen Speicher für neue An/.eigebild/.eilen
haben, von denen acht für die eigentliche Duten/.usummcnscl/.ung
benutzt würden, wahrend die Neunte ausgelesen werden würde. Bei Benutzung eines PRAS
dieser (1 rolle müßten alle auf einer Zeile nach dem ausgelesenen Zeichen beginnenden Zeichen wllhrend
dieser Zeilenzeit zusammengesetzt werden, so daß
Datenspitzen nicht aufgefangen werden könnten. Aus diesem Grund sind nach Darstellungen in den F i g. 7
sechszehn Anzeigebildzeilen im Speicher vorgesehen. Acht Zeilen bilden dabei die erforderliche Grundaufbaukapazität,
sechs Zeilen sorgen für den Ausgleich während einer Spitzenbelastung und eine Zeile ist zum
Auslesen gedacht. Die sechzehnte Zeile wird gebraucht, weil TTL-Festspeicher, die wegen ihrer Zugriffsgeschwindigkeit
benutzt werden, nicht destruktiv auslesen und jede Zeile während der Anzeigebildzeile gelöscht
sein muß, nachdem sie gelesen ist. Jeder PRAS umfaßt eine Steuerlogik und sechzehn identische Speichereinheiten
(SU). Für Färb- oder Graupegel können zusätzlich Sätze von Speichereinheiten vorgesehen
werden. St/s mit vier wahlfreien Zugriffsspeichern von 256 mal 1 Bit bilden einen Speicher für 1024 Elemente
mit ausreichender Zugriffsgeschwindigkeit, für den Betrieb mit 1125 Fernsehzeilen.
die in F i g. 2 gezeigten Elementar-Untervektoren von
16 mal 16 Bildbits vornimmt, die wiederum in codierter Form in den Puffer 200 geladen werden.
Der Kleinrechner liefert die Anfangskoordinaten X und Y für den Vektoranfang. Außerdem liefert er die
Richtung als negativen Wert Delta Y über dem Absolutwert von Delta X für Vektoren in den
Oktanten 1 und 4 der F i g. 9 und die umgekehrte Richtung in Form von Absolutwerten von Delta Λ über
dem negativen Delta Y für Vektoren in den Oktanten 2 und 3. Außerdem liefert er die Länge bzw. Anzahl von
Punkten im Vektor, womit der Absolutwert von Delta X in den Oktanten 1 und 4 und negative Wert von Delta Y
in den Oktanten 2 und 3 vorliegt. Mit zwei Bits werden die Oktanten bestimmt. Horizontale Zeilen werden
gemäß Darstellung in F i g. 8C codiert.
Der Kleinrechner an sich ist kein wesentliches Element der Erfindung. Die obenerwähnten von ihm
ausgeführten Funktionen können auch durch eine d
Fig.7 zeigt die PRAS-Operation. Fig.7A stellt »I« 20 entsprechend ausgebildete Logik oder im externen
Rechner 40 selbst ausgeführt werden.
Der Vektorsefementcodierer 100 ist im einzelnen in
F i g. 11 dargestellt. Vier Datenwörtcr werden vom
Kleinrechner 50 über Leitung 62 an den Vektorseg-
dar, dessen oberer Querbalken auf Anzeigebildzeile 14 erscheinen soll, die gerade in den PRAS geschrieben
wurde. Da das Feld A des ineinandergreifenden Bildes geschrieben wird, ist der untere Querbalken nicht
vorhanden, da er im Feld ß steht. Das I wird in den 25 mentcodierer übertragen. Die Wörter 1 und 2 stellen die
PRAS geladen, während die Feldzeile 0, die gleichzeitig die Anzeigebildzeile 0 ist, gelesen wird. Dies ist der
früheste Zeitpunkt, zu dem die Zeile 0 geschrieben worden wäre, da die vorhergehende Anzeigebildzeile
Zeile 2 St/6) gelöscht wurde. Wenn eine Zeile früher geschrieben worden wäre, hätte es keinen Platz für das
unterste Element gegeben. Es hätte erst geschrieben werden können, während die Feldzeit 6 gelesen worden
wäre. Damit ist ein Ausgleich von Datenspitzenbelastung über sieben Feldzeilen möglich.
Fig.7B zeigt das »I« eine Zeile später. Es können
noch mehr Daten für die Anzeigebildzeile 14 hinzugefügt werden, indem man die SiJs 15 bis 6 adressiert.
F i g. 7C zeigt, wie der obere Querbalken des »I« Koordinaten Y und X des Vektoranfangs dar und
werden in den Registern 108 und 106 des Vektorsegmentcodierers
gespeichert. Das Wort 3 gibt den Oktanten des Vektors und seine Länge an, die der
größere der beiden Werte Delte X und Delta Yist, und
diese Daten werden im Register 104 des Vektorsegmentcodierers
gespeichert. Das Wort vier gibt die Richtung des Vektors an und wird im Register 102, des
in F i g. 11 gezeigten Vektorsegmentcodierers gespeichert.
Die sechs höherstelligen Bits des Längen- oder Streckenfeldes des Wortes 3 bestimmen die Anzahl
vollständiger Vektorsegmente, die je eine Länge von 16 haben, in die der darzustellende Vektor zerlegt wird.
gelesen wird und F i g. 7D zeigt, wie das Fußelement des 40 Wenn angenommen wird, daß mindestens ein Vektor-
halben »I« gelesen wird.
In der in Fig.4 gezeigten Ausführung können
insgesamt vier Kanäle aufgefrischt werden. Die Bildschirme haben 1024 mal 1024 Rastereinheiten. Das
segment gebraucht wird, so werden die fünf höherstelligen Bits der Richtung untersucht, um festzustellen,
welche der zwei möglichen Stellen für den Anfang des nächsten Vektorsegments zu wählen ist Um den
Bild ist äquivalent 1130 Vektoren und 570 Zeichen (o^er 45 Anfangspunkt für das nächste Vektorsegment bestim-
4800 Zeichen ohne Vektoren) auf dem der vier Datensichtgeräte. Der für alle Puffer, Symbolspeicher
und Auffrischungsspeicher benutzte Speicher, liegt unter zwei Millionen Bits. Zur Erzeugung äquivalenter
Bildanzeige mit herkömmlichen zweideutigen Auffrischungsverfahren brauchte man immerhin über fünf
Millionen Bits.
Der Kleinrechner 50 hat einen 15 Bit parallelen
Datenweg, der zwei Arten von Bildinformationen für das System vorbereitet, nämlich alphanumerische
Information zur Ausgabe über die Leitung 60 und Vektorinformation zur Ausgabe über Leitung 62.
Alphanumerische Information wird direkt in den Warteschlangenpuffer 200 eingegeben und der Kleinrechner
50 führt die ganze AdrelBberechnung und Datenformatierung aus. Formate üind in Fig.8B
gezeigt. Die Vektorvorverarbeitung durch den Kleinrechner 50 stellt sicher, daß Delta Y immer negativ ist
(wobei der Ursprung des Bildes in der linken unteren Ecke liegt) und trennt verbundene Vektoren. Vektoren
in den Formaten der F i g. 8D werden in den Vektorsegmentcodierer 100 eingespeist, der die erforderlichen
Berechnungen zur Zerlegung der Vektoren in men zu können, muß ein laufender Vergleich zwischen
dem aufgelaufenen Richtungsfehler und der bereits berechneten Untervektoren und der Soll-Richtung des
darzustellenden Vektors vorgenommen werden. Kumulative Richtungsfehler der Untervektoren müssen dann
so korrigiert werden, daß der anzuzeigende Vektor genau dargestellt wird. Diese Korrektur wird wie folgt
vorgenommen. Während der Anfangseinstellung werden die zehn wertniederen Bits der Richtung, die im
Register 102 gespeichert sind, in das Prüfregister 150 übertragen. Diesen Wert nennt man den Richtungsrest
und wenn er kleiner als 0,5 ist, bleibt der ganzzahlige Wert der Richtung, wie er durch die werthohen Bits der
Richtung im Register 102 angezeigt wird, unverändert Wenn der Rest größer als 0,5 ist, wird der Richtungswert
in den werthohen Bits des Registers 102 um eins erhöht, wodurch der Anfangspunkt des nächsten Vektorsegments
um eine Einheit verschoben wird. Jedesmal wenn ein Untervektor erzeugt wird, werden die zehn
6<l wertniederen Bits der Richtung akkumuliert mit dem
vorhergehenden Inhalt des Prüf registers, so daß der kumulative Fehler bei Darstellung des Vektors durch
die Folge von Untervektoren bestimmt wird. Jedesmal,
on
ter
ter
die
:m
en
rte
»er
12
on
X Y
en
en
:m
en
rte
»er
12
on
X Y
en
en
es
m
ie
m
ie
Z-ie
id
id
η
:r
d
:r
d
nn festgestellt ist, daß der Anfangspunkt für einen
ä hsten Untervektor um eine Einheit zu verschieben "ι weil der Rest des kumulativen Richtungsfehlers
-fler als 0,5 ist, wird der Inhalt des Prüfregisters 150
!Leins reduziert.
Die Anfangskoordinaten des Vektors XY, die in den
istern 106 unc) tO8 gespeichert sind, werden als
Anfangsadresse des ersten Vektorsegments benutzt.
C cn Codierung des ersten Vektorsegments wird der
Wert X und Y in den Registern 110 und 112
rechend ^61. Anfangslage des nächsten Untervektors
verändert, und die sechs im Register 104
speicherten werthohen Bits des Längenfeldes werden
m eins erniedrigt. Vollständige Vektorsegmente werden erzeugt, bis die sechs werthohen Durchlaufbits
gleich Null sind, was durch den Inhalt des Längenregit «118 bestimmt wird. Wenn die sechs werthohen Bits
für die Strecke 0 sind, werden die vier wertniederen Bits untersucht. Wenn sie von 0 verschieden sind, muß ein
Segment mit einer kleineren Länge als 16 erzeugt werden. Das erfolgt genauso wie die Erzeugung
vollständiger Segmente, der Längencode wird jedoch gegenüber der verbleibenden Strecke um eins vermindert,
das bedeutet, daß z. B. eine Länge von eins als Null dargestellt wird.
[m Betrieb wird der Wert für die X- und y-Koordinaten des Anfangs eines darzustellenden
Vektors in den Registern 106 und 108 gespeichert und zunächst in den Registern 110 und 112 dargestellt. Der
Betrieb des Vektorsegmentcodierers wird durch die Steuerung 152 gesteuert, die feststellt, daß das
Streckenregister 118 einen Wert größer als Null enthält und anzeigt, daß mindestens ein weiteres Vektorsegment
codiert werden muß. Wenn diese Bedingung herrscht, befinden sich die Koordinatenwerte des zu
codierenden Anfangs des Vektorsegments auf den Ausgangsleitungen 116 und 206. Das Streckenregister
hat einen Wert größer als eins, und daher schaltet der Vergleicherblock 120 das Schaltglied 122 ein, wodurch
der Wert 16 in das Längenregister 124 und auf die Ausgabeleitung 126 gegeben wird. Der wertniedere Teil
der Richtung im Register 102 wird zum bereits im Prüfregister 150 akkumulierten Rest des Richtungsfehlers
addiert. Die Summe wird in das Vergleicherregister 134 eingegeben und mit dem Wert 0,5 durch den
Vergleicherblock 136 verglichen. Wenn der kumulative Richtungsfehler im Fehlerregister jetzt größer als 0,5 ist,
ist der kumulative Richtungsfehler damit groß genug, um eine Korrektur der Richtung des vorliegenden
Untervektors zu rechtfertigen. Diese Korrektur erfolgt durch Einschalten des UND-Gliedes 138, wodurch der
Wert eins zum werthohen Teil der im Register 102 gespeicherten Richtungsneigung addiert wird. Diese
Summe wird in das modifizierte Richtungsregister 142 eingegeben. Da die Korrektur vorgenommen wurde, um
den kumulativen Richtungsfehler auszugleichen, wird der Wert des Restes im Prüfregister 150 durch den
Subtraktionsblock 158 um eins vermindert, indem eine Eins vom Inhalt des Prüfregisters 150 subtrahiert wird.
Wenn der Inhalt des Vergleichsregisters 134 kleiner als 0,5 ist, wird der Inhalt des Vergleicherregisters lediglich
für den vorliegenden Inhalt des Prüfregisters 150 eingesetzt, das UND-Glied 138 wird nicht eingeschaltet
und die im Register 102 gespeicherten werthohen Richtungsbits nicht verändert, sondern direkt in das
modifizierte Richtungsregister 142 eingegeben.
Der Inhalt des modifizierten Richtungsregisters gibt an welchem der 16 Endpunkte in einem der
an.
geltenden Oktanten, wie in Fig. 10 gezeigt, der Untervektor endet. Diese Daten müssen mit dem
Vier-Wert-Oktantencode im Register 104 kombiniert werden, um anzugeben, welcher von den 64 Untervektorcodes
der F i g. 2 das Vektorsegment darstellen soll. Diese Kombination erfolgt durch die Vektorsegment-Codiermatrix
128, die nur ein 4 mal 16-Matrixschalter ist, der auf die Ausgabeleitung 130 den Code für das
durch das modifizierte Richtungsregister und den Oktantencode angegebene Vektorsegment abgibt. Die
vier wertniederen Bits des von der Matrix 128 ausgegebenen Vektorzeichencode sind gleich dem
Inhalt des modifizierten Richtungsregisters, wenn es einen Wert zwischen 0 und 7 hat. Die vier wertniederen
Bits des von der Matrix 128 ausgegebenen Vektorcodes sind gleich dem Inhalt des modifizierten Richtungsregisters
minus Eins, wenn der Wert des Inhalts zwischen 8 und 16 liegt. Die beiden werthohen Bits des von der
Matrix 128 ausgegebenen Vektorcodes sind gleich dem Oktantencode entsprechend der Darstellung in Fig. 9.
Wenn also die modifizierte Richtung 5 ist (0101), ist der Symbolcode für den ersten Oktanten 5 (000101); für den
zweiten Oktanten ist er 21 (010101); für den dritten Oktanten 53 (110101); und für den vierten Oktanten 37
(100101). Wenn die modifizierte Richtung 10 ist (1010), dann ist 10 weniger 1 gleich 9 (1001), und der
Symbolcode für den ersten Oktanten ist 9 (001001); für den zweiten Oktanten ist er 25 (0011001); für den dritten
Oktanten ist er 57 (111001) und für den vierten Oktanten 41 (101001). Die Ausgabeleitung 116 überträgt die
X-Koordinate für den Anfang des vorliegenden Vektorsegmenis, die Ausgabeleitung 130 den Code für
das vorliegende Vektorsegment. Diese Leitungen bilden die Eingabedatenleitung 204 für die Warteschlange. Die
Ausgabeleitung 206 enthält den V-Wert für das vorliegende Vektorsegment, welches an die Warteschlange
geleitet wird.
Die Koordinaten für den Anfang des nächsten Vektorsegments werden wie folgt erzeugt. Den Inhalt
des modifizierten Richtungsregisters für das vorliegende Vektorsegment wird an die arithmetische und
logische Einheit (ALU) 146 geleitet. Der Oktantencode für den darzustellenden Vektor, der im Register 104
gespeichert ist, wird an die ALU 146 durch die Steuerung 156 geleitet. Der numerische Wert 16 wird
außerdem an die ALU 146 gegeben. Wenn der darzustellende Vektor im· ersten Oktanten liegt, wird
der im Register 110 gespeicherte X-Wert in der ALU 146 um 16 erhöht und der im Register 112 gespeicherte
V-Wert in der ALU 146 um den Inhalt des modifizierten
Richtungs-Registers 142 heruntergesetzt.
Wenn der darzustellende Vektor im zweiten Oktanten liegt, wird der X-Wert im Register 110 in der ALU
146 um den Inhalt des modifizierten Richtungs-Registers 142 erhöht und der V-Wert im Register 112 in der
ALU 146 um den Wert 16 erniedrigt.
Wo der dazustellende Vektor im dritten Oktanten liegt, wird der X-Wert im Register UO durch die ALU
146 um den Inhalt des modifizierten Richtungs-Registers 142 und der Y-Wert im Register 112 um den Wert
16 heruntergesetzt.
Wenn der darzustellende Vektor im vierten Oktanten liegt, wird der λ'-WeH im Register 110 durch die ALU
146 um 16 und der V-Wert im Register 112 um den Inhalt des modifizierten Richtungs-Registers 142 heruntergesetzt.
Die Codierung des nächsten Vektorsegments wird beendet durch Auslesen des Inhalts des Längenregisters
/Λ
18
124 auf die Leitung 126 und die Erzeugung des Codes für das Vektorsegment aus der Segment-Codiermatrix 128
zur Ausgabe auf die Ausgabeleitung 130. Der Vektorsegment-Codierzyklus läuft unter Steuerung der Steuereinheit
152 weiter, bis das Streckenregister 118 den Wert 0 enthält. Zu diesem Zeitpunkt wird die im
Register 104 gespeicherte wertniedere Strecke in das Längenregister 124 eingegeben und der letzte den
anzuzeigenden Vektor darstellende Uniervektor mit einer abgekappten Länge so codiert, daß der Untervektor
am Endpunkt des darzustellenden Vektors endet. Alle Ausgangssignale des Vektorsegmentcodierers
werden in den Warteschlangenpuffer 200 der Fig. 12 geleitet.
Fig. 12 zeigt in Form eines Rlockdiagramms den erfindungsgemäß verwendeten Warteschlangenpuffer.
Um neue Daten in die Warteschlange 202 zu laden, werden die Daten auf die Eingangsleitung 204 und die
K-Koordinate für die Daten auf die Leitung 206 gegeben und ein Ladebefehl an die Leitung 208 geliefert.
Durch den Ladebefehl prüft die Steuerung 210 über Leitung 240 den Zustand des Endbits 212 des nächsten
leeren Registers 214. Wenn dieses Endbit auf Eins steht, ist die Schlange 202 voll, und der Ladebefehl auf Leitung
208 wird ausgesetzt, bis eine Warteschlangenstelle verfügbar wird. Die Verfügbarkeit wird angezeigt durch
die Nullstellung des Endbits (EOT) des nächsten leeren Registers (NER)2i4.
Wenn das EOT-Bh des NER 214 gleich 0 ist, wird die K-Koordinate für die Daten auf der Leitung 205 in das
Indexadreßregister (IAR)216 geladen. Das Indexadreßregister
adressiert über Leitung 242 das Indexhinweisadressenwort im Indexspeicher 232, welches der
K-Koordinate entspricht. Das Indexhinweisadressenwort wird über Leitung 244 in das Indexdatenregister
(IDR)HS und in das Kurzzeitadreßregister (TAR)220
gelesen. Die Steuerung 210 setzt dann über Leitung 248 das ElNE-Bh 222 des Indexdatenregisters 218 auf 1, und
das Adreßfeld des nächsten leeren Registers (NER) 214 wird über die Leitung 252 in das Hinweisadressenfeld
des Indexdatenregisters (IDR) 218 geladen. Der Inhalt
des IDR 218 wird jetzt über Leitung 254 im Indexspeicher 232 an der im Indexadreßregister
gehaltenen Stelle, die noch der K-Koordinate entspricht, gespeichert. Dadurch, daß das Leer/Nichtleer-Bit
auf 1 gesetzt ist, wird angezeigt, daß Daten im Warteschlangenspeicher 202 vorhanden sind. Das
Adreßfeld des NER 214 wird ebenfalls über Leitung 252 in das Warteschlangenadreßregister (QAR) 224 geschrieben.
Dieses Register adressiert das Warteschlangenwort, welches dieser Adresse entspricht, über
Leitung 258. Das adressierte Wort wird über Leitung 260 in das Warteschlangendatenregister (QDR) 226
gelesen. Das Endbit 112 und das nächste Adreßfeld des
QDR 22§ werden ebenfalls in das nächste leere Register
NER 214 geladen. Das Endbit 228 im Warteschlangendatenregister wird jetzt über Leitung 264 auf 1 gesetzt,
wenn das Markierungsbit im Kurzzeitdatenregister TDR 220 auf 0 steht. Das Endbit 228 wird auf 0 gesetzt,
wenn das Markierungsbit im TDR 220 auf 1 steht. Diese Umkehrungen erfolgen durch den Inverter 226. Das
Adreßfeld des TDR 220 wird über Leitung 268 in das nächste Adreßfeld des Warteschlangendatenregisters
226 geladen und die Daten werden in das Datenfeld des QDR durch Leitung 204 übertragen. Das modifizierte
QDR-Won wird jetzt durch Leitung 270 in das Warteschlangenregister 202 an derjenigen Stelle neu
geschrieben, die im Warteschlangenadreßregister 224 gespeichert ist. Damit wird der Ladezyklus beendet.
Um Daten zu entladen, wird die V-Koordinate für die gewünschten Daten auf die Eingabeleitungen 206
gesetzt und das Endladekommando auf die Leitung 230 gegeben. Die Steuerung 210 veranlaßt dann über
Leitung 250 ein Laden der K-Koordinate auf Leitung in das Indexadreßregister 216 und das Lesen des
entsprechenden Indexwortes über Leitung 244 in das Indexdatenregister 218. Wenn das EINE-Bh 222 im
Indexdatenregister 218 gemäß der Abfühlung auf der Leitung 272 eine 0 ist, stehen keine Daten in der
Warteschlange 202 für die angegebene K-Koordinate und die Steuerung 210 signalisiert den Abschluß des
Entladens auf Leitung 236. Die nächste K-Koordinate kann dann in der tntladefolge verarbeitet werden.
Wenn das E.'NE-Bh 222 auf 1 steht, wird das
Zeigerfeld des Indexdatenregisters 218 über die Leitung in das Waneschlangenadreßregister 224 geladen
und das EINE-Bh 222 des Indexdatenregisters 218 über Leitung 248 auf 0 gesetzt. Der Inhalt des Indexdatenregisters
218 wird dann über Leitung 254 neu in den Index an der Stelle geschrieben, die im Indexadreßregister
gespeichert ist.
Die Daten in den durch das Warteschlangenadreßregister 224 angezeigten Warteschlangenstellen werden
jetzt durch Leitung 260 in das Warteschlangendatenregister 226 gelesen und die Steuerung 210 gibt ein
entsprechendes Signal für vorhandene Daten auf die Leitung 234. Die gewünschten Daten werden dann aus
dem Warteschlangendatenregister auf Leitung 238 ausgelesen. Wenn die angenommenen Daten auf
Leitung 290 auftreten, werden die auf Leitung 234 vorhandenen Daten fallengelassen. Das Endbit 228 und
das nächste Adreßfeld des Warteschlangendatenregisters 226 werden ebenfalls durch Leitung 262 in das
Markierungs-Bit- und Adreßfeld des Kurzzeitadreßregisters 220 geladen. Der Inhalt des nächsten leeren
Registers 214 wird dann durch Leitung 276 in das Endbit und nächste Adreßfeld des Warteschlangendatenregisters
226 geladen. Der Inhalt des Warteschlangendatenregisters wird dann durch Leitung 270 in die
Warteschlange 202 an der jeweiligen Stelle geschrieben, die auf dem Warteschlangenadreßregister 224 gespeichert
ist. Gleichzeitig wird der Inhalt des Warteschlangenadreßregisters 224 durch Leitung 256 in das
Adreßfeld des nächsten leeren Registers 214 geschrieben und das Endbit 212 durch die Leitung 278 auf 0
zurückgestellt. Das Markierungsbit des Kurzzeitdatenregisters 220 wird jetzt über Leitung 280 an der
Steuerung 210 geprüft. Entspricht es 1, sind keine weiteren Daten für die K-Koordinate vorhanden, und
das Abschlußsignal für das Entladen wird auf die Leitung 236 gegeben. Wenn das Markierungsbit eine 0
ist, wird das Adreßfeld im Kurzzeitdatenregister 220 durch Leitung 282 in das Warteschlangenadreßregister
geladen und die entsprechende Stelle im Warteschlangenregister 202 durch Leitung 260 in das
Warteschlangendatenregister 226 gelesen. Die nach dem vorher beschriebenen Leseschritt folgenden
Schritte werden so lange wiederholt, bis keine Daten für die K-Koordinate mehr in Betracht kommen. Ein
Entiadeabschlußsignal wird dann auf Leitung 236 erzeugt.
Der in Fig. 14 im einzelnen gezeigte elastische Auffrischungspuffer empfängt Daten vom Warteschlangenpuffer
300 und gibt die Daten wiederholt zur Bildanzeige an die Monitore 700. Wortformate für den
Auffrischungspuffer sind in F i g. 13 gezeigt.
ein; Sch eint wie· gesi zyki so
vorl Dad mit schl. posi
Bild neuf koni Länj zum seric Adri
ster Anfz im Bilde K- Rf einei Sehr
Stell. Bilde die Date 328 Won Ausg Ausg ange: von i bei (
Addi. te W gespe Sumn Aufd Datei regist
ig
es
as
m
er
er
te
es
te
es
as
m
er
er
te
es
te
ig
;n
er
;n
er
Der elastische Auffrischungspuffer ist eng mit dem Betrieb des Partialrasteraufbau-Speichers 604 verbunden
Der PRAS besteht aus 16 identischen Speichereinh-iten
(SU)nach Darstellung in den F i g. 7 A bis 7D. Der
Aufbau des Rasters erfolgt in den unteren 14 Speichereinheiten 800. Die 15. Speichereinheit 802 wird
an den Monitor 700 ausgelesen und die 16. Speichereinheit 804 in ihrem Inhalt gelöscht, und zu diesem
Zeitpunkt wird die Adresse aller Speichereinheiten um 1 erhöht Dabei nimmt die gelöschte Speichereinheit eine ·ο
Adreßstelle unten in der Zusammensetzung der Speichereinheit ein, die für den Rasteraufbau (Schreiben)
800 zur Verfügung steht. Wenn jede Speichereinheit in PRAS ausgelesen und gelöscht wird, wird die
Bildanzeige-Zeilenzahl um 1 in der PRAS-Steuerung erhöht und über Leitung 320 an den elastischen
Auffrischungspuffer übertragen. Mit dtr Bildanzeige-Zeilenzahl wird der Auffrischungspuffer nachgefiihrt,
und beim Vergleich dieser Zahl mit der vorliegenden Datenposition im Auffrischungspuffer ist sie ein Maß für
die Nachlaufzeit, die für das Aufnehmen neuer Daten aus dem Warteschlangenpuffer 200 zur Verfugung steht.
Der elastische Auffrischungspuffer 300 ist im einzelnen in Fig. 14 gezeigt. Es sind separate Lese- und
Schreibadreßregister 302 und 304 vorhanden. Es wird *5
eine Form eines aufgeteilten Zyklus verändert, und dann wieder in den Speicher 306 an dieser neuen Adresse
geschrieben werden. Das Lesen und Schreiben erfolgt zyklisch, die Adresse wird nach jeder Operation erhöht,
so daß die einzuschreibende Stelle jeweils durch vorhergehendes Auslesen dieser Stelle gelöscht wurde.
Dadurch ist jedoch die Verwendung eines Festspeichers mit nicht destruktivem Auslesen keineswegs ausgeschlossen.
In diesem Fall ist die Schreiboperation immer positiv,da Einsen und Nullen geschrieben werden.
Der elastische Auffrischungspuffer speichert zyklisch Bilddaten in einem gepackten Bündel, das beim Laden
neuer Daten erweitert werden kann. Die Grundpufferkonfiguration umfaßt den Umlaufspeicher 306 mit einer
Länge von π Wörtern und einer Eingangsleitung 238 zum Empfang von Bilddaten aus dem Puffer 200 in
seriell benachbarten Stellen im Speicher 306. Mit einem Adreßeingang des Speichers 306 ist das Leseadreßregister
302 verbunden, welches zyklisch erste Stellen am Anfang des gepackten Bündels der Speicherbilddaten
irn Speicher 306 zum destruktiven Auslesen von Bilddatenwörtern aus diesem Speicher 306 in das
V-Register310unddas Datenregister 334 adressiert. An
einem Adreßeingang des Speichers i()6 ist das
Schreibadreßregister 304 angeschlossen, um zweite Stellen am Ende des gepackten Bündels gespeicherter
Bilddaten im Speicher 306 zyklisch zu adressieren und die gespeicherten Bilddatenwörter am Ende des
Datenbündels neu zu schreiben. Eine den Wortzähler 328 und den Modulo-n-Addierer 330 umfassende
Wortzähleinrichtung ist mit einem Eingang an den Ausgang des Leseadreßregisters 302 und mit einem
Ausgang an den Eingang des Schreibadreßregisters 304 angeschlossen. Der Wortzähler 328 zählt die Anzahl
von im Speicher 306 gespeicherten Bilddatenwörtern bei der Abfühlung durch die Steuerung 338. Der
Addierer 330 addiert die im Wortzähler 328 gespeicherte Wortzah! Modulo-/? zu dem Leseadreßregister 302
gespeicherten Inhalt. Der Addierer 330 lädt dann die Summe in den Eingang des Schreibadreßregisters 304.
Auf diese Weise werden von einer Stelle am Anfang des Datenbündels im Speicher 306 durch die im Leseadreßregister
202 gespeicherte Adresse gelesene Daten am Ende des Datenbündels neu geschrieben, und zwar an
derjenigen Adresse, die im Schreibadreßregister 304 gespeichert ist. Ein den Modi«!o-/?-Addierer324 und eine
das neue Leseadreßregister 326 umfassende Adreßerhöhungseinrichtung ist mit einem Ausgang an den
Eingang des Leseadreßregisters 302 angeschlossen, um das Leseadreßregister mit einer serienweise Modulo-n
indexierten Adresse vor jedem Speicherzugriff durch das Leseadreßregister 302 zu laden. Die im Leseadreßregister
302 gespeicherte Leseadresse wird durch den Modulo-n-Addierer 324 ausgegeben und dazu der
Wert 1 addiert, um die Summe in das neue Adreßregister 326 zu übertragen. Das neue Adreßregister 326 gibt
dann seinen Inhalt an das Leseadreßregister 302 aus, um den nächsten Lesezugriff des Speichers 306 unter
Steuerung der Steuereinheit 338 vorzubereiten. Ein Modulo-/7-Addierer hat die Eigenschaft, daß die
arithmetische Summe des Augenden und des Addenden durch die Menge η dividiert und der Rest ausgegeben
wird. Wenn die Bildanzeigedaten weder ausgegeben noch zu dem im Speicher 306 gespeicherten Datenbündel
addiert werden, stellt man sich diese zyklischen Operationen am besten als eine Spalte von Daten vor,
die oben gelesen und gelöscht und unten neu eingeschrieben wird. Um Daten zu löschen, wird oben
gelöscht, ohne neu zu schreiben, und um Daten zu addieren, werden die neuen Daten einfach unten
geschrieben ohne zu lesen.
Um ein neues Anzeigedatenwort auf der Leitung 238 in den Speicher 306 zu laden, stoppt der Steuerkreis 338
die zyklische Adressierung durch das Leseadreßregister 302, während das Schreibadreßregister 304 den
Speicher 306 weiter zyklisch adressiert. Zu jedem Zyklus gehört die Erhöhung der Einheit im Wertzähler
328. Ein Anzeigedatenwort wird aus dem Speicher 306 gelöscht, indem die Steuerung 338 die zyklische
Adressierung des Speichers 306 durch das Schreibadreßregister 304 unterbricht, während die zyklische
Adressierung des Speichers durch das Leseadreßregister 302 fortgesetzt wird und der Wortzähler 328 in
jedem Zyklus um eine Einheit abwärts zählt.
Beim Lesen einer jeden Stelle aus dem Speicher 306 wird das Bit 2 des BSM-2-Wortes geprüft. Wenn es eine
Eins ist, ist das Wort ein Steuerwort, welches die y-Adresse der nachfolgenden Datenwörter enthält. Das
Steuerwort wird im V-Register 310 gespeichert. Wenn das nächste Wort kein Steuerwort ist, wird das
Steuerwort an die Stelle im Speicher 306 geschrieben, die der Schreibadresse im Register 304 entspricht. Jedes
Steuerwort, dem ein anderes Steuerwort unmittelbar folgt, wird nicht wieder eingeschrieben, sondern
gelöscht. Der Inhalt des V-Registers 310 wird kontinuierlich durch den Vergleicher 316 mit der
darzustellenden Anzeigebild-Zeilen-Zahl 320 verglichen. Wenn die Differenz zwischen 1 und 8 liegt, werden
Anzeigedatenwörter aus dem Speicher 306 in den Auffrischungspuffer gelesen und über die Ausgabeleitungen
314 und 368 an den Symbolgenerator 400 geleitet. Wenn der Symbolgenerator das Wort empfängt,
überträgt er die X-Adresse an den entsprechenden PRAS-Modul 604 und das Anzeigedatenwort wird
im Speicher 306 an der Stelle wieder eingeschrieben, die durch das K-Schreibadreßregister 304 bezeichnet ist.
Wenn ein »Blinkbit« im Feld 5 des tlSM-Wortes 1 des Symbolwortes in Fig. 13A in Form einer binären 1
auftritt und der Blinktaktgeber sich im Zustand »nicht anzeigen« befindet, wird das Datenwort nicht an den
Zeichengenerator 400 gegeben, sondern direkt in den
Speicher 306 an der Stelle wieder eingeschrieben, die durch das Schreibadreßregister 304 bezeichnet ist.
Der Auffrischungspuffer 300 kann einer Datenspitzenbelastung ausgesetzt sein, so daß eine entsprechende
Zusammensetzung im PRAS-Modul 604 in der verfügbaren Zeit nicht erfolgen kann. Wenn diese Situation
auftritt und nicht aus einem Zeitverlust resultiert, der sich ergibt, weil der Puffer 200 Daten an den
Auffrischungspuffer 300 überträgt, werden die adressierten Daten gelöscht und ein Zustandsanzeiger im
Steuerkreis 338 gesetzt. Die Bedingung wird durch eine Daten-Überschußverriegelung in der Steuerung 338
erkannt, die jedesmal beim Auslesen eines Steuerworts aus dem Speicher 306 gesetzt wird, wenn der
Unterschied zwischen dem im V-Register 310 gespeicherten Inhalt und der Feldzeile 320 sich auf 8 beläuft.
Die Verriegelung wird zurückgestellt, sobald ein Leer/Nichtleer-Bit im Indexspeicher 232 des Puffers 200
als Dinare 1 festgestellt wird. Die Überlaufbedingung besteht, wenn der Unterschied zwischen dem im
V-Register 310 gespeicherten Inhalt und der Feldzeile 320 gleich Null ist, während die Datenüberschußverriegelung in der Steuerung 338 eingestellt ist. Die Daten
werden dann gelöscht, bis das nächste Steuerwort aus dem Speicher 306 gelesen wird.
Wenn der Speicher mit zyklischer Adreßfolge im erweiterungsfähigen Auffrischungspuffer 300 zur Bildanzeige ausgelesen wird, sollte er auch geladen und über
Eingangsleitung 238 vom Warteschlangenpuffer 200 von Bilddaten gereinigt werden. Beim Lesen eines jeden
Steuerwortes aus dem Speicher 306 und Laden in das V-Register 310 wird der vorhergehende Inhalt des
V-Registers 310 in das V-Register 318 übertragen. Da die Bilddaten aus dem Speicher 306 in aufsteigenden
Werten für V ausgelesen werden, ist der Wert des im V-Regtster 318 gespeicherten Inhalts niedriger als der
Wert des im V-Register 310 gespeicherten Inhalts. Somit kann der Indexspeicher 232 des Puffers 200 an
den V-Index wertstellen von V + l bis V während der Zeit abgefragt werden, in der das Steuerwort des
Wertes V im V-Register 310 gespeichert bleibt, um festzustellen, ob der Warteschlangenspeicher 202
Bilddaten entsprechend einem Wert des V-lndcxes zwischen V + l und V gespeichert hat. Der Indexspeicher 232 w ird über den Zähler 362, den Addierer 360, die
Vergleichereinrichtung 364 und das Schaltglied 366 des elastischen Auffrischungspuffers 300 adressiert. Der
Zähler 362 wird auf 0 gesetzt und durch die Steuerung 338 mit einer Einheit induziert. Die Ausgabe des Zählers
wird vom Addierer 360 zum Wert des im V-Register 318 gespeicherten Inhalts von V hinzuaddiert. Die
Summe wird über Vergleiche!· 364 mit dem im V-Rcgistcr 310 gespeicherten VWert verglichen, und
wenn sie nicht größer als V ist, wird das Schaltglicd eingeschaltet und die hier als V-Index bezeichnete
Summe über die Leitung 206 an das Indcxndrcßregistcr
216 des Puffers 200 ausgegeben. Die entsprechende Stelle im Indcxspcichcr 232 wird adressiert und die
fndcxdutcn in das Indcxdntcnrcgistcr 218 übertragen,
wo der Zustand des Lcer/Nicht-Lccr-Bits über die
Leitung 272 durch die Steuerung 210 ermittelt wird. Wenn dieses Bit eine binäre 0 ist, sind keine Bilddaten im
Warteschlangcnspcichcr 202 gespeichert, die dem Wert
des V-Indcx entsprechen, und daher überträgt die
Steuerung 210 des Puffers 200 ein Entladeabschlußsignal über die Leitung 236 an die Steuerung 338 des
elastischen Auffrischutigspuffcrs 300. Die Steuerung
indiziert dann den Zähler 362 so, daß die Abfrage der
nächsthöheren V-Indexstelle im Indexregister 232
beginnt. Wenn das Leer/Nicht-Leer-Bit im Indexdatenregister 218 des Puffers 200 eine binäre 1 ist, dann heißt
das, daß Bilddaten im Speicher 202 gespeichert sind, die
dem V-Indexwert entsprechen, der vom elastischen Auffrischungspuffer 300 auf die Leitung 206 ausgegeben
wurde. In diesem Fall sendet die Warteschlangen-Puffersteuerung 210 einen Datenauftrittimpuls über die
Leitung 234 an die Steuerung 238 des elastischen
ίο Auffrischungspuffers. Der Empfang des ersten Datenauftrittimpulses über Leitung 234 veranlaßt die Warteschlangen-Entladebefehlsleitung 230 zum Einschalten
und zeigt damit der Warteschlangenpuffersteuerung 210 an, daß sie mit dem Entladen des Warteschlangen·
is Speichers 202 beginnen soll. Die erste Dateneingabe
zum Speicher mit zyklischer Adressierung 306 ist das in Fig. 13C gezeigte Steuerwort, welches den V-Indexwert vom Addierer 360 enthält, der gleich der
V-Rasterstelle ist, an der die neuen Bilddaten stehen.
Wenn das erste Wort der Bilddaten auf die Leitung 238 vom Warteschlangenpuffer ausgegeben wird, wird der
zweite Datenauftrittimpuls über die Leitung 234 übertragen. Die Steuerung 338 unterbricht dann die
zyklische Leseoperation des Leseadreßregisters 302
und erhöht den Wortzähler 328 um 1, während sie die zyklische Operation des Schreibadreßregisters 304 für
einen Zyklus beibehält und so die von dem Warteschlangenpuffer übertragenen Bilddaten in die unterste Stelle
des Datenbündels im Speicher 306 lädt, die durch den
Inhalt des Schreibadreßregisters 304 angegeben ist. Die Steuerung 338 des elastischen Auffrischungspuffers
sendet dann einen Datenempfangsimpuls über die Leitung 290 an die Steuerung 210 des Wartcschlangenpuffers und zeigt an, daß das nächste im Warteschlan-
genspeicher 202 gespeicherte Bilddatenwort adressiert werden kann. Wenn das Ende der Bilddatenreihe, die im
Speicher 202 gespeichert ist, entsprechend dem V-Indexwert in das Datenregister 226 gelesen wird, ist
das Folgenendbit im Folgendalenwort gleich I, die
Puffersteuerung 210 erkennt diesen Zustand und überträgt ein Entlade-Fcrtigsignal über die Leitung 236
an v!C StCUCrUug 23S dc» c'iUMiMjiicii AufffiiCuUngSpl!·"
fers. Die Steuerung 338 nimmt dann die lnduzicrung des
V-Indexwcrtes und die Abfrage des Index 232 wieder
auf. bis die Vcrgleichereinrichtung 364 feststellt, daß der
V-Index gleich dem V-Register 310gespeicherten Inhalt
ist. Zu diesem Zeitpunkt wird das im Umlaufspeicher
306 gespeicherte Stcucrwort oben in das Datcnbündcl gelesen an der Stelle, die im Lcscadreßrcgistcr
gespeichert ist, und es wird normal für die Bildnn/cigc
zyklisch ausgelesen.
Ein Löschbcfchlzusatz ist im Symbolwort vor Laden
im Auffrischungspuffer vorgesehen. Das entsprechende Format ist in Tabelle 4 gezeigt. Wenn der Wert des
V-Indcx auf der Leitung 206 gleich ist dem ""
V-Register 310 gespeicherten Wert, wird in einem Ober die Leitung 238 eingegebenen Symbolwort ein Loschbc·
fehl erkannt und das Symbolwort in das l-oschrcgister
332 gespeichert. Die im Speicher 306 unmittelbar hinter
dem V-Stcucrwort gespeicherten Bilddaten werden in
das Datenregister 334 geschoben, wo ihr Inhalt mit dem
Inhalt des im Löschregistcr 332 gespeicherten Symbol·
Wortes verglichen wird. Wenn im Vcrglcichcrblock eine Übereinstimmung festgestellt wird, wird dieses
Symbol nicht in den Speicher erneut geschrieben und damit dann »us dem Datenbündcl gelöscht. Auf diese
Weise sorgt die Steuerung 338 dafür, daß die Lcscadressc ihre normale zyklische Operation durch-
23
datenheißt ad, die isdien
geben j-Puf-
:r die sehen taten-'arte· ialten ;fung
igen- I
las in idexder :hea -23J
ί der 2M > die
•diel IfOi Jj
Jan \ .eile !
Die '.
fers ί
die .t «d ί
) uf- -S les ' !er :;
*r ill er IeI
läuft, während die zyklische Operation des Schreibadreßregisters 304 aussetzt und der Wortzähler 328 um
eine Einheit heruntergezählt wird. Wenn Löschwörter gefunden werden, bevor der y-lndex auf der Leitung
206 den gleichen Wert hat wie der Inhalt des S V-Registers 310, handelt es sich um Fehler, die eliminiert
werden. Der Kleinrechner 50 ist durch Lesen des Zustands informiert. Eine Warteschlange für Auffrischungspufferübertragungen
kann dazu führen, daß das Lesen des Auffrischungspuffers gegenüber der anzuzeigenden
Anzeigen-Zeilenzahl verzögert ist. Dieser Umstand wird durch den Vergleicherblock 316 erkannt,
wenn die Differenz zwischen Inhalt des V-Registers und Anzeigen-Zeilenzahl 320 gleich 0 ist. In diesem Fall
laufen die Operationen des Auffrischungspuffers und der Warteschlange weiter, der PRAS-Modul 604 wird
jedoch so lange angehalten, bis der Auffrischungspuffer aufgeholt hat.
Fig. 15 zeigit im einzelnen den Symbolgenerator 402,
der den K-Wert für das Raster über Leitung 368 empfängt, welcher im wesentlichen das Steuerwort der
Fig. 13C ist und vom elastischen Auffrischungspuffer 300 über Leitung 314 die Bilddaten, die im wesentlichen
das Symbolwort der Fig. 13A sind. Die Steuerung erzeugt ein Datenannahmesignal über Leitung 346, a$
wenn die Ras'erstelle und die Bilddaten vom Auffrischungspuffer angenommen werden. Symbolmuster
werden in vier separaten elektrisch änderbaren Segmentspeichern 410, 412, 413 und 414 gespeichert.
Hierin sind jeweils 1024 Wörter mit je 16 Bits enthalten,
wobei alle diese Bits mit 4 vertikalen Spalten für alle Zeichen des alphanumerischen und Vektorsegment-Zeichensatzes
gespeichert sind. Mit anderen Worten: Jeder Symbolspeicher enthält 256 Symbole χ 4 Spalten pro
Symbol χ 8 Zeilen pro Feld χ 2 Felder. Die
Symbolcoderegister 404, 406, 407 und 408 empfangen den Symbolcode von der Steuerung 402 und erzeugen in
Verbindung mit dem A- oder ß-Feldsignal die A- oder
ß-Feldkonfiguration für das gewünschte Symbol als
Muster von Rasterleuchtpunkten. Die Bildkanaldaten werden in den Registern 424. 426, 427 und
empfangen und an den Multiplexer 4io zusuiumcü mit
dem aus den Symbolspcichern abgelesenen Symbolmuster weitcrgeleitet. Der Multiplexer gibt das Rastcrleuchtmustcr
an die durch die Kanalzahl bezeichnete PRASSteuerung 430, 432, 434 oder 436 aus. Die
PRAS-Stcuerung sortiert die Daten nach Farben oder anderen Eigenschaften und ladt die 8 Zeilen des
Symbols im jeweils anzuzeigenden A- oder ö-I-cld in
den Rastcrbercich 800 des PRAS wie in Hg. 7Λ gezeigt.
In jedem PRAS sind 16 Anzcige-Spcichcrzcilcn
vorgesehen. Acht Zeilen sind für die Grunduufbaukapnzitat
vorgesehen, während sechs Zeilen während eier Datcnspilzcnbelastung zuerst als Ausgleich dienen; eine
Zeile ist für das Auslesen und eine weitere für das
Löschen vorgesehen. Die Löschstufc ist erforderlich, da
die wegen ihrer Umschalt-Gcschwindigkcit verwendeten wahlfreien Halblcitcr-Zugriffsspcichcr nicht ccstruktiv
ausgelesen werden und jede Zeile während der Anzcigc-Zeilc nech ihrem Lesen gelöscht werden muli.
Jeder PRAS umfaßt eine Stcuerlogik und 16 wcnii«chL
Spcichcrcinhcitcn (SU). Jede SU ist ein 4 x 256 Bit
großer wahlfreier Zugriffsspeicher, der 1024 Llemcnit
mit einer für den Betrieb von 1125 Anzeige-Zeilen es
ausreichenden Geschwindigkeit speichern kann. Die in
der Speichcrcinhcit 802 des in FI g. 7A gezeigten l ras
KCSDcichertcn Daten werden an den digitalen lcrnscnmonitor
700 als Anzeigeausgangssignal ausgegeben.
Die beschriebene digitale Datensichtanzeigeanlage verwendet codierte und alphanumerische Vektorsymbole,
die im erfindungsgemäßen Vektorsegmentcodierer codiert, im erfindungsgemäßen Warteschlangenverschachtelungspuffer
sortiert und im erfindungsgemäßen elastischen Auffrischungspuffer zusammengesetzt werden,
der die Speicherung eines jeden Vektors so ermöglicht, daß seine Eigenschaften und Identität darin
beibehalten bleiben und damit die Bildanzeige mehrerer Kanäle, Farben, Intensitäten oder anderer Attribute von
einem einzigen Speichermodul ermöglicht wird.
Die Arbeitsweise des digitalen Datensichtsystems, die
codierte Vektordarstellungen verwendet, wird im Zusammenhang mit der Anzeige von Vektordaten und
alphanumerischen Daten beschrieben, wie sie in F i g. 16 und in den Tabellen 1,2 und 3 dargestellt sind. Für dieses
Beispiel sei angenommen, daß momentan Bilddaten gespeichert, in den Zeilen 100 und 195 dargestellt
werden sollen und daß neue Daten in dem elastischen Auffrischungspuffer zur Bildanzeige eingegeben werden
sollen.
Fi g. 16 zeigt die neue einzugebende Information, die
aus den Vektoren 1,2 und 3 und dem alphanumerischen Zeichen B besteht, wie sie durch das Datensichtgerät
das erfindungsgemäß mit codierten Vektoren arbeitet, angezeigt werden würde. Die in den Kleinrechner 50
vom externen Rechner 40 für die darzustellenden Vektoren eingegebenen Daten sind demnach Anfangsund
Endpunkte für jeden Vektor, nämlich: Vektor 1 (X\, V1) = (161, 224) und (X2, Y2) = (240. 184 und 176/256);
Vektor 2 (Xy, Yx) = (193,224) und (X2, Y2) = (239.161).
Das alphanumerische Zeichen B hat ein Adreßelement links, mit den Koordinaten (X, Y) - (161, 1684). Diese
Daten werden sequentiell vom Kleinrechner 50 nach der vom Fremdprozessor für Farbe, Blinken, Länge,
Schreib- oder Löschkommandos, Betriebsart und Kanalanzeigccharakteristik eines jeden Symbols oder
Vektors verarbeitet. Betriebsartenwärter im in F i g. 8A gezeigten Format werden vom Kleinrechner auf die
Leitung 60 ausgegeben. Alphanumerische Daten im in Γ ί E. SS "C'ci*"'"!'. Format vycrdcn ob?*"' "itnni» 60 vom
Kleinrechner ausgegeben. Vektordaten mit dem in F i g. 8B gezeigten Format werden über Leitung 62 vom
Kleinrechner 50 an den Vektorsegmentcodiercr 100 ausgegeben. Die vom Kleinrechner für die Vektorzahl 1
ausgegebenen Daten sind in Tabelle 1 aufgeführt, nämlich Vcktorrichtung 8 und V|b, Oktant 1 und 5, bei
Anfangskoordinaten (X, Y) - (161, 224). Die vom
Kleinrechner 50 an den Vektorsegmentcodiercr 100 für die Vektorzahl 2 ausgegebenen Daten sind in Tabelle 2
gezeigt und betragen: Vcktorrichtung 16, Oktant 1 Länge 3, bei Anfangskoordinaten (X, Y) - (193, 224)
Die vom Kleinrechner 50 an den Vcktorscgmcntcodic rcr 100 für die Vektorzuhl 3 ausgegebenen Daten sind ir
Tabelle 3 gezeigt und betragen: Vektorrichtung 7 V4
Oktant 2, Länge 4, bei Anfangskoordinaten (X1 Y) (209,
224). Nachdem die Vcktordatcn-Vorvcrarbcitunt des Kleinrechners abgeschlossen ist, erscheint auf dci
Leitung 154 ein Datcnvcrfügbarkcitssignal für du Steuerung 152 des Vcklorscgmcntcodicrcrs, um anzu
zeigen, daß Daten für einen darzustellenden Vektor an Kleinrechner zur Verfügung stehen. Wenn der Vektor
scgmcntcodicrcr 100 nicht anderweitig belegt ist, sende
die Steuerung 152 einen Datenimpuls 155 an dci
Kleinrechner. Zu diesem Zeitpunkt werden Daten fü den darzustellenden Vektor über Leitung 62 übertrager
Das Wort 1 der F i g. 8D wird in das V-Rcgistcr 108, da
26
Wort 2 der F i g. 8D in das X-Register 106 eingegeben,
Wort 3 enthält die Oktanten- und Längeninformation und wird in das Register 104 eingegeben, Wort 3 enthält
die Oktanten- und Längeninformation und wird in das Register 104 eingegeben, und Wort 4 enthält die
Richtungsinformation und wird in das Register 102 des Vektorsegmentcodierers der F i g. 11 eingegeben.
Zu diesem Zeitpunkt beginnt die Zerlegung des Vektors in die darzustellende verkettete Reihenfolge
von Vektorsegmente und seine Codierung in Vektorsegmentwörtern, die an den Speicher 202 des verschachtelten
Warteschlangenpuffers ausgegeben werden. Wenn jedes Segment erzeugt ist, wird ein
Datenverfügbarkeitssignal von der Steuerung 152 des Vektorsegmentcodierers über Leitung 209 an die
Puffersteuerung 210 in Fig. 12 ausgegeben. Wenn der
verschachtelte Warteschlangenpuffer nicht anderweitig belegt ist, gibt seine Steuerung 210 einen Ladebefehl
über Leitung 208 zur Steuerung 152 des Vektorsegmentcodierers. Die Tabelle 1 zeigt den Zustand der im
Prüfregister 150, im Vergleicherregister 134, im modifizierten Richtungsaddierer 140 und im modifizierten
Richtungsregister 152 für jedes für die Vektorzahl 1 errechnete Vektorsegment die gespeicherten Daten an.
Außerdem sind für jedes errechnete Vektorsegment der Zeichensatzcode, die Koordinaten der jedem errechneten
Vektorsegment zugeordneten Adreßelemente links und die entsprechenden Koordinaten des wahren
darzustellenden Vektors gezeigt, um einen Vergleich der errechneten Lage der Vektorsegmente und der
tatsächlichen Lage des wahren Vektors zu ermöglichen. Für den Vektor 1 hat das erste errechnete Vektorsegment
die Anfangskoordinaten des Adreßelements links mit: (X, Y) - (161,224). Entsprechende Signale ergeben
sich auf den Ausgangsleitungen 116 bzw. 206. Das Längenrestregister 118 enthält die Menge 5 und somit
veranlaßt der Vergleicher 122, der feststellt, daß dieser Wert größer als 0 ist, das Längenregistcr 124 zur
Ausgabe der Länge 16 auf die Ausgabeleitung 126. Das Prüfregister 150 hat zu diesem Zeitpunkt noch keinen
Richtungsfehler aufgenommen und enthält so den Wert 0. Hierzu werden die im Register 162 gespeicherten
niedrigen Stellen des Richtungswerts hinzuaddiert und in das Vergleicherrcgister 134 als Quantität 1/16
eingegeben. Der Vergleichcrblock 136 stellt fest, daß die Quantität kleiner als 0,5 ist, und daher wird das
Schaltglied 128 nicht betätigt, der modifizierte Riehtungsaddiercr
überträgt lediglich den Inhalt der hohen Stellen des Richtungswertes im Register 102 und gibt
den Wert acht in das modifizierte Richtungsregister ein. Der vom modifizierten Richtungsregister in die
Rcgmcntcodicrmatrix 128 ausgegebene Wert 9 ergibt
mich Reduzierung um I in Kombination mit dem
Oktuntcn-Wcrt von 00, wie er in der Oktanicn-Stclle
des Registers 104 gespeichert ist, einen Symbolcode Hilf Leitung 130 zur Darstellung des errechneten
Vektorsegments. Die K-Adrossc wird in das Indcxudreßrcgister
216 des Warteschlangenpiiffcr.s und die
,Y-Koordmaie uuf die Leitung 116 ausgegeben, die
Vcktorsegmcntlllnge auf der Leitung 126 und der Symbolcode auf der Leitung 130 werden über Leitung
204 in den Datenteil des Warlcsehlangcndatenrcgisters
des in Fig. 12 gezeigten Puffers eingegeben. Die Vektorscgmentcodicrersleueriing 152 betätigt jetzt die
ALU 146, die den Oklantencodewert (K) empfangt, der im Register 104 gespeichert ist, als Schlüssel zur
Modifizierung der in den Registern 110 bzw. gespeicherten Werte für X und Y. Der Wert von X wird
um 16 erhöht und wieder in das X-Regisler 110
eingegeben. Der Wert von Y wird um den im modifizierten Richtungsregister gespeicherten Wert 8
erniedrigt und dann wieder in das Y-Register 112 eingegeben. Der Inhalt der X- und V-Register 110 und
112 besteht jetzt aus den Werten 177 bzw. 216 als Koordinaten des Adreßelement-Iinks-Anfangs für das
nächste zu erzeugende Vektorsegment. Die Steuerung 152 veranlaßt jetzt den Längenrestvergleicher 121 zur
Feststellung, ob der jetzt im Restregister 118 gespeicherte Wert, nämlich der Wert 4, größer als der Wert 0
ist. Unter Feststellung des Zustands betätigt der Vergleicher das Schaltglied 122, so daß dadurch das
Längenregister 124 den Wert 16 auf die Ausgabeleitiing »5 126 als Länge des nächsten zu erzeugenden Vektorsegments
ausgibt. Das Prüfregister enthält jetzt den Wert '/i6, der durch den Richtungsaddierer 132 zum
wertniederen Inhalt des Richtungsregisters 102 hinzuaddiert
wird und dann wird die Summe in das Vergleicherregister 134 eingegeben. Diese Quantität 2Im
wird durch den Vergleicher 136 als kleiner als der Wert 0,5 bestimmt, und daher wird das Schaltglied 128 nicht
betätigt. Der modifizierte Richtungsaddierer 140 überträgt lediglich den werthohen Inhalt im Richtungsregi-
»5 ster 102 in das modifizierte Richtungsregister 142 als
Werte. Wieder wird der Inhalt des modifizierten Richtungsregisters mit dem Oktanten des Registers 104
in der Segmentcodiermatrix 128 zum Symbolcode 107 auf der Ausgabeleitung 130 kombiniert. Die Daten für
das zweite Vektorsegment stehen somit auf den Ausgangsleitungen 206, 116, 1126 und 130 zur Eingabe
in den Warteschlangenpuffer 200 zur Verfugung. Der Vektorsegmentcodierer arbeitet weiter, bis die im
Restregister 118 gespeicherte Menge gleich 0 ist. Zu diesem Zeitpunkt stellt die Steuerung 152 fest, ob das
wertniedere Längenfeld des Registers 104 einen gebrochenen Längenwert enthält. Wenn das der Fall ist.
wird diese Quantität in das Längenregister 124 als Lange des abschließenden Vektorsegments eingegeben.
Im Fall der Vektorzahl 1 ist im wertniederen Langenfeld
nichts gespeichert, und daher wurde die Vektorzahl I vollständig in eine Folge von 5 Vektorsegmenten
zerlegt, von denen jedes als ein Vektor«ymholcode 7
codiert ist, und an den Puffer 200 der Fig-12
ausgegeben. Die Hauplsteuerung 550 der Fig.4
synchronisiert den Betrieb des Kleinrechners 50, des Vektorsegmentcodierers 100 und des Puffers 200 so, daß
jedes durch den Veklorscgmentcodierer 100 erzeugte und auf die Leitung 64 ausgegebene codierte Vektorsegmcnlwort
mit einem in Fig.8Λ gezeigten Betriebsartenwort
gemischt wird, welches die Merkmale des durch
das Vektorsegment dargestellten Vektors so enthüll, daß das kombinierte Bctriebsurtenworl und d«s
codierte Vcklorsegmeniwort, welches in den Diitentcil
des Warleschlangenclatenregisters 226 über die Leitung
204 eingegeben wird, das dus unter Überschrift »Daten« in Tabelle 4 gezeigte Format hat.
Tabelle 4 zeigt den Zustand des Indexspeichers und des Warleschlangenspcichers des Puffers 200 vor
Eingabe von Daten vom Vektorsegmcntcodierer. Die
leeren Stellen sind miteinander verbunden und das nächste leere Register NhR zeigt auf die Wartcsehlnn·
gensiclle I als den Anfang der Verschnchtelung. '?|C
Warteschlangenslellc Ib enthalt ein Einerbil Mt Feldeiule und zeigt nn, daß es sich hier um das linde der
Reihe leerer Stellen im Wartesehlimgenspcieher handelt.
9 Raslerlinienwerte sind unter der Überschrift O'-Koordinate) im liulexspeicher angegeben. Has
Leer-Nicht-1
enthält ein r< Bilddaten irr Rasterliniens Tabelle 5a
232, und <k ersten Untei mentcodiere
Y-Adreßleiti ster 216 zur Indexspeicht
Nichtleer-Fe V-Wert 22
lndexdatenr 220 ausgegel Signal auf lndexdatenr. Adreßfeldes
über die Leil gisters 218 g wird jetzt üt die im Inde?
K-Koordina Das so ges| schlangensti von in die entsprechen
Stelle für Bi Vektors 1 ei 21 zeigt i Warteschlar des NER 21
in das War Das Wartes tung 258 da Zeigerwort gcnwoit wir
datenadrcßi endbil212u gendatenrcf
leere Regist endbit 228 i durch ein Si1
Kennzeichc 0 steht. Das stelle im W das Ende d Kurzzcitadr
nächste Ad 226 und die Datenfeld < Das modif
wird jetzt ii register 2< Warteschla
damit wird Inhalts des Speichers Tabelle ί Speichers ;
Vcktorsegi Die Wailt linden scr
Inhalt der zeigerfeld 232 und Warteschi im Indcxsr
27
und : als das •ung zur
pel· :rtO der das ung seg-'/ert ium
hindas
/en icht jeregi· als •ten 104
107 für den abe Der im Zu das ien isi. als ien.
eld Ml ten
Ie? .12
IaO gtc et· »·
rch alt, das teil ing
ind vor Die das
an· Die im der in· rill
>as
Leer-Nicht-Leer-Feld an jedem Y-Koordinatenwert
enthält ein Nullbit und zeigt an, daß gegenwärtig keine Bilddaten im Speicher 202 gespeichert sind, die dieser
Rasterlinienstelle entsprechen.
Tabelle 5a zeigt die Arbeitsweise des Indexspeichers
,232, und der Warteschlangenspeicher 202 lädt den ' ersten Untervektor des Vektors 1 aus dem Vektorsegmentcodierer.
Der V-Adreßwert von 224 wird über die V-Adreßleitung 206 eingegeben und im Indexadreßregister
216 zur Adressierung des V-Stellenwerts 224 im Indexspeicher 232 gespeichert. Der Inhalt des Leer-Nichtleer-Feldes
und des Zeigerfeldes in der dem V-Wert 224 entsprechenden Stelle wird in das Indexdatenregister 218 und das Kurzzeitadreßregister
220 ausgegeben. Die Steuerung 210 setzt dann durch ein >S Signal auf der Leitung 248 das BNE-Bn 22 des
Indexdatenregisters 218 auf 1, und der Inhalt des Adreßfeldes des nächsten leeren Registers 214 wird
über die Leitung 252 in das Zeigerfeld des Indexdatenregisters 218 geladen. Der Inhalt des Indexdatenregisiers »°
wird jetzt über Leitung 244 in den Indexspeicher 232 an die im Indexadreßregister beibehaltene und noch dem
V-Koordinatenwert 224 entsprechende Stelle geladen. Das so gespeicherte Zeigerfeld zeigt auf die Warteschlangenstelle
Nr. 1, die das Ende der Verschachtelung »5 von in die Warteschlange einzugebenden Daten ist,
entsprechend dem V'-Wert 224 und ist tatsächlich die Stelle für Bilddaten, die dem ersten Vektorsegment des
Vektors 1 entsprechen. Das Einschalten des £/£/V-Bits
21 zeigt an, daß die entsprechende Stelle im Warteschlangenregister nicht leer ist. Das Adreßfeld
des NER 214 enthält die Quantität 1 und wird ebenfalls in das Warteschlangenadreßregister 224 geschrieben.
Das Warteschlangenadreßregistcr adressiert über Leitung 258 dasjenige Warteschlangenwort, welches dem
Zeigerwort entspricht. Das adressierte Warteschlangcnwort wird über Leitung 260 in das Warteschlangendatenadrcßregister
226 gelesen. Das Verschachtelungsendbit 212 und das nächste Adreßfeld des Warteschlangenclatenregisters
226 werden ebenfalls in das nächste leere Register NER 214 geladen. Das Verschachtclungscndbit
22S im WärtSicbliingpnrliMpnrpeister wird ietzt
durch ein Signal auf Leitung 264 auf 1 gesetzt, wenn das Kennzeichenbit im Kurzzeichenadreßregister TAR auf
0 steht. Das zeigt, daß der in die erste Wartcschlangcnstelle
im Wartcüchlangcnspeichcr 202 geladene Inhalt das Ende der Verschachtelung ist. Das Adreßfeld des
Kurzzcitadrcßregisters 220 wird über Leitung 268 in das nächste Adreßfeld des Wartcschlnngcndutcnrcgistcrs
226 und die Daten werden über die Leitung 204 in das
Datenfeld des Warteschlangcndatcnregisters geladen.
Das modifizierte Wartcschlangen-Datenrcgislcrwort
wird jetzt über Leitung 270 neu in das Warteschlangenrcgister
202 un der Stelle geschrieben, die im Wiirtesehlangenadreßregister 224 gespeichert ist, und
damit wird der Ladczyklus beendet. Der Zustand des Inhalts des Indexspeichers 234 und des Wartesehlangcnspcichcrs
202 sind in Tabelle 5u gezeigt.
Tabelle 5b zeigt den Zustand des Wnrtcschlanger.-speichers
202, nachdem die Bilddaten für das zweite Vektorsegment des Vektors Nr. 1 geladen worden sind.
Die Wurtcschlangcnstcllc I und die Stelle 2 sind die linden separater Vcrschnchtulungen, wobei auf den
Inhalt der Stelle 1 durch das Wnrtesehliingcnstcllen·
zeigerfcld an der V-Koordinate 224 im Indexspeichcr «5
232 und mif den Inhalt der Stelle 2 durch den Waricschlangenstcllen/.cigcr an der V-Konrdinole 21b
im Indexspeichcr 232 gezeigt wird.
Tabelle 5c zeigt den Zustand des Warteschlangenspeichers 202 im Indexspeicher 232 nach dem
vollständigen Laden des Vektors 1 in die Warteschlange, derart, daß das erste Vektorsegment in der
Warteschlangenstelle 1, das zweite Vektorsegment in der Stelle 2, das dritte Vektorsegment in der Stelle 3, das
vierte Vektorstellensegment in der Warteschlangenstelle 4 und das fünfte Vektorsegment in der Stelle 5 steht.
Die Bilddaten in jeder der Stellen 1 bis 5 werden jeweils als Ende einer separaten Datenverschachtelung bezeichnet,
die den 5 separaten Rasterlinienpositionen für den Anfang des Adreßelement-links eines jeden
Vekiorsegments nach Darstellung in Fig. 16 entsprechen.
Die Reihe der leeren Stellen beginnt an der Warteschlangenstelle 6 nach den Angaben im yV£7?der
Tabelle 5c.
Nachdem der Vektor Nr. 1 vollständig zerlegt und in den Puffer 200 geladen wurde, zeigt der vorverarbeitete
Daten für den Vektor Nr. 2 bereithabende Kleinrechner 50 an, daß Daten über Leitung 154 für die Steuerung 152
des Vektorsegmentcodierers zur Verfugung stehen. Der Vektorsegmentcodierer gibt ein Daitensendesignal über
die Leitung 155 ab und die Register 102,104,106 und 108
des Vektorsegmentcodierers werden über Leitung 62 vom Kleinrechner geladen. Tabelle 2 zeigt den Zustand
des Prüfregisters 150, des Vergleichel registers 134, des modifizierten Richtungsaddterers 140, des modifizierten
Richtungsregisters 142 und die Ausgabe der Segmentcodiermatrix 128 für jedes der drei Vektorsegmente an,
in die der Vektor Nr. 2 zerlegt ist. Auf der Leitung 209 wird von der Vektorsegmentcodiersteuerung 152 ein
Datenverfügbarkeitssignal erzeugt, welches der Puffersteuerung 210 anzeigt, wenn jedes Vektorsegment
verfügbar wird. Wenn die Steuerung 210 bereit ist, gibt sie einen Ladebefehl auf die Leitung 208 zurück. Das
Laden des ersten Untervektors des Vektors 2 in den Warteschlangenspeicher 202 ist in Fig.6a gezeigt.
Wenn der V-Rasterwert 224 in das Indexadreßregister 216 eingegeben und das entsprechende im Indexspeicher
232 gespeicherte Indexzeigerwort adressiert und in das IDR 218 gelesen wird, wird der Inhalt des nächsten
leeren Registers, welches die Stelle des gegenwärtigen Anfangs der Reihe der leeren Stellen im Warteschlangenspeicher
ist, im Zcigerfeld des IDR gespeichert. Das Zeigerfcld des IDR enthält jetzt den Wert 6, der die
Stelle des Anfangs der Datenverschachtelung für
Y " 224 ist. Wenn das Datenwort in dem Warteschlangen-Datenrcgister
zur Speicherung im Wartcschlangcnspcichcr
202 angesetzt wird, wird das Adreßfeld des TAR, welches den Wert 1 als vorherigen Anfang der
Datenverschachtelung für Y ·» 224 enthält, eingesetzt
in das Wartesehlangendatenwort des QDR. Dci
V-Koordinntenwert 224 im Indexspeicher 232 enthäl
also einen Wartcsehlungenstellcnzeiger mit den
Wert 6, der auf den neuen Anfang der Diitcnversehiieh
telling für V - 224 zeigt. Der Inhalt des Warteschlan gcnwortes an der Stelle b und die Wurtcschliingi
enthalten den Wert I, welches die Stelle des nnchstci Bilddiitenwortcs in der Daicnversdiaehtclung fü
V - 224 ist. Die Reihe von leeren Stellen hat ihrci Anfang jetzt im der Wuricschlnngc 7.
TubcUcbb zeigt den Zustand dos Wurtcschlangcn
Speichers 202 und lies Indcxspcichcrs 232, nachdem di
Vektor/.nhl 2 vollständig geladen worden ist. h
Wiirteschlnngenspeicher gibt es drei Reihen von Date
und eine Reihe leere Stellen. Die Datenreihe für V 22 hat ihren Anfang an der Stelle b und ihr Uncle an de
Stelle I. Die Diitcnrcihc für V » 208 hut ihren Anfiin
an der Stelle 7 und ihr Ende an der Stelle 3. Die
Datenreihe für Y = 192 hat ihren Anfang an der Stelle 8 und ihr Ende an der Stelle 5. Die Reihe leerer Stellen hat
ihren Anfang an der Stelle 9 und ihr Ende an der Stelle 16.
Nachdem die Vektorzahl 2 vollständig zerlegt und ihre Segmente codiert und an den Puffer 200 übertragen
wurden, reagiert der Vektorsegmentcodierer 100 auf das Datenverfügbarkeitssignal auf der Leitung 154 vom
Kleinrechner und überträgt auf Leitung 162 die vorverarbeitenden Daten für die Vektorzahl 3 und lädt
die Register 102, 104, 106 und 108 des Vektorsegmentcodierers. Die Vektorzahl 3 hat eine Richtung von 7 und
3Z4 und liegt im Oktanten 2 mit einer Länge von 4. Der
große Restwert der Richtung, der im wertniederen Richtungswert des Registers 102 gespeichert ist, zeigt
an, daß ein ausreichender Richtungsfehler während der Zerlegung der Vektorzahl 3 aufgelaufen ist, so daß die
Fehlerkompensation des Vektorsegmentcodierers eingeleitet wird. Tabelle 3 zeigt den Zustand des Prüfregi- ao
sters 150, des Vergleicherregisters 134, des modifizierten Richtungsaddierers 140, des modifizierten Richtungsregisters
142 und die Ausgaben der Segmentcodiermatrix 128 für jedes der vier Vektorsegmente an, in
die die Vektorzahl 3 zerlegt wurde. Wenn der erste »5
Untervektor verarbeitet wird, ist der Inhalt des Prüfregisters 150 gleich 0, und hierzu werden die
wertniederen Stellen des Richtungswerts von 3/4
hinzuaddiert und im Vergleicherregister 134 durch den Vergleicher 136 mit dem Wert 0,5 verglichen, wobei 3»
festgestellt wird, daß dieser Wert größer ist. Der Vergleicher veranlaßt dann den Subtraktionsblock 148
zur Subtraktion des Wertes 1 vom Inhalt des Prüfregisters 150 und zur Speicherung der Differenz im
Prüfregister 150. Der Vergleicher 136 schaltet dann das Schaltglied 128 ein, wodurch der modifizierte Richtungsaddierer
150 die Quantität I zum Wert 7, der im werthohen Stellen des Richtungsregisters 102 gespeichert
ist, addiert wird und die Summe 8 in das modifizierte Richtungsregister 142 gelangt. Der so
korrigierte Richtungswert wird vom Register 142 in die Vektorsegmentcodiermatrix 128 übertragen, die bei
Reduzierung um 1 und Kombination mit dem im Oktanten-Teil des Registers 104 gespeicherten Wert Ot
einen Symbolcode von 23 für das erste codierte Vektorsegment ergibt. Die durch Einschalten dos
Schaltglieds 128 bewirkte Korrektur addiert die Quantität V4 zur wahren Richtung der Vektorzahl 3 und
schließt dadurch einen Abrundungsfehler dieser Größenordnung ein. Dieser Abrundungsfehler von V4 wird
als Viertel mit negativem Vorzeichen im Prüfregister 150 gespeichert. Während der Codierung des zweiten
Vektorsegments wird die im Prüfregister 150 gespeicherte Quantität von - V4 zu der im unteren Teil des
Richtungsregisters 102 gespeicherten Quantität von 3/4
addiert und ergibt die Summe V2, die in das Vergleichsregister 134 eingegeben wird. Der Vergleicher
136 stellt fest, daß diese Quantität genauso groß oder größer als 0,5 ist und veranlaßt noch einmal den
Subtraktionsblock 148 zum Substrahieren der Quantitat 1 vom Inhalt des Prüfregisters, zum Einsetzen dieser
Differenz in das Prüfregister 150 und schaltet das Schaltglied 128 ein. Die Quantität 1 wird vom
modifizierten Richtungsaddierer 140 zum Inhalt der Quantität 7 der werthohen Stellen des Richtungsteils
des Registers 102 addiert und ergibt einen modifizierten Richtungswert 8, der im modifizierten Richtungsregister
142 gespeichert wird. Wieder erzeugt die Vektorsegmentcodiennatrix 128 einen Vektorsegmentcode
23 für das zweite Vektorsegment. Während der Codierung des dritten Vektorsegments ist im Prüfregister
150 der Wert - V2 gespeichert und diese Quantität
wird durch den Addierer 132 zu wertniederen Stellen der Richtung mit der Quantität V4 addiert, die im
Register 102 gespeichert ist, und ergibt die Summe V4,
die im Vergleichsregister 134 gespeichert wird. Diese Quantität wird durch den Vergleicher 136 als kleiner
ermittelt als die Quantität 0,5, und daher wird der Inhalt des Vergleichsregisters 134 übertragen und an die Stelle
des Inhalts des Prüfregisters 150 gesetzt, und das Schaltglied 128 bleibt abgeschaltet. Der modifizierte
Richtungsaddierer 140 überträgt daher lediglich den Wert 7 von werthohen Stellen des Richtungsregisters
102 in das modifizierte Richtungsregister 142 und enthält dadurch keine Korrektur für den hohen
Richtungswert. Dadurch wird effektiv der durch die Richtungskorrekturen des codierten ersten und zweiten
Vektorsegments angesammelte Rundungsfehler kompensiert.
Die Menge wii .1 vom modifizierten Richtungsregister
142 in die Segmentcodiermatrix 128 übertragen, wo sie nicht um 1 reduziert wird, da sie, wie in F i g. 10, kleiner
als 8 ist. Sie wird mit dem im Oktanten-Register 104 gespeicherten Wert 01 kombiniert und ergibt einen
Vektorsymbolcode 23, der auf die Ausgabeleitung 130 gesendet wird. Die X-Koordinate für den Anfang des
Adreßelements links für den ersten Untervektor wurde mit 209 errechnet und für den zweiten Unlervektor mit
217 und für den dritten Untervektor mit 225. Für die X-Werte des codierten ersten, zweiten und dritten
Untervektors ergibt sich eine Differenz von 8 Einheiten. Durch die Kompensation für die Rundungsfehlerakkumulation,
die für das codierte dritte Vektorsegment erfolgt, wird die resultierende X-Koordinate für das
vierte Vektorsegment, die graphisch an das dritte Vektorsegment anschließen muß, nach Darstellung in
Tabelle 3 modifiziert. Nachdem das Datenwort für das dritte Vektorsegment errechnet und an den Puffer 200
ausgegeben wurde, veranlaßt die Vektorsegmentcodierersteuerung 152 die ALU zur Addition der im
modifizierten Richtungsregister gespeicherten Menge 7 zur X-Koordinate des dritten Vektorsegments, die noch
im Register 110 gespeichert ist und setzt diese Summe an Stelle des Inhalts des A"-Registers 110. Die Differenz
zwischen aufeinanderfolgenden Werten von X für die Koordinaten der Adreßelemente links in aufeinanderfolgenden
Vektorsegmenten ist nun nicht mehr 8, sondern statt dessen ist der Wert der -Y-Koordinate für
den Anfang des vierten codierten Vektorsegments 232, also genau 7 Einheiten kleiner als der vorher für das
dritte Vektorsegment errechnete Wert von 225. Während der Codierung des vierten Vektorsegments
hat der Inhalt des Prüfregisters 150 den Wert V4. Dieser
Wert wird zum Inhalt der wertniederen Stellen der Richtung mit der Quantität 3/4 im Addierer 132 addiert,
und die Summe 1 wird in das Vergleichsregister 134 gegeben. Der Vergleicher 136 stellt fest, daß die
Quantität größer als 0,5 ist und veranlaßt daher den Subtraktionsblock 148 zur Subtraktion der Quantität 1
von dem im Prüfregister 150 gespeicherten Wert und setzt die Differenz wieder in das Prüfregister 150 und
schauet auch das Schaiiglied 12S ein. Der modifizierte
Richtungsaddierer 140 addiert daher die Quantität zum hohen Richtungswert 7, der im Register 102 gespeichert
ist, und diese Summe von 8 wird im modifizierten Richtungsregister 142 gespeichert. Die modifizierte
Vek Kor runj VeK ner T
eher ersti Vek drei verli
Nr.: in c ents War diesi dem lung le H Stell dem lung
Stell· Ende enthi den j Ende ihren gems
16.
zerle;
zyklis
Stelle
regist
ist da
sters;
aufste
des im
Der Ii
Richtung von 8 wird vom modifizierten Richtungsregister
142 in die Segmentcodiermatrix 128 übertragen und bei Kombination mit der im Oktanten-Register 104
gespeicherten Quantität ergibt sich der Vektorsegmentcode 23 für das Viertelvektorsegment, und dieser Code
wird auf Leitung 130 ausgegeben. Die Zerlegung des Vektors Nr. 3 ist damit abgeschlossen und enthält eine
Korrektur für Rundungsfehler, die sich durch Annäherung der wahren Richtung des Vektors 3 an die von den
Vektorsegmentsymbolen festgesetzte Richtung zu seiner Darstellung ergibt.
Tabelle 7 zeigt den Zustand des Warteschlangenspeichers 202 und des Indexspeichers 234, nachdem das
erste, zweite, dritte und vierte Vektorsegment des Vektors Nr. 3 in den Puffer 200 geladen wurden. Die
drei Datenverschachtelungen der Tabelle 6b wurden so verlängert, daß sie die Untervektordaten des Vektors
Nr. 3 enthalten und die Reihe von leeren Stellen wurde in der Länge reduziert. Die Datenverschachtelung
entsprechend Y = 224 hat einen Anfang an der Warteschlangenstelle 9, die auf die Stelle 6 zeigt und
diese wiederum auf die Stelle 1. das Ende der Reihe. Die dem Wert Y = 208 entsprechende Datenverschachtelung
liegt mit ihrem Anfang an der Warteschlangenstelle 10, die wiederum auf die Stelle 7 und diese auf die
Stelle 3 zeigt, die das Ende dieser Datenreihe bildet. Die dem Wert Y= 192 entsprechende Datenverschachtelung
liegt mit ihrem Anfang an der Stelle 11, die auf die
Stelle 8 und diese wiederum auf die Stelle 5 zeigt, die das Ende dieser Reihe bildet. Die Warteschlangenstelle 12
enthält die einzigen der V-Koordinate 176 entsprechenden
gespeicherten Daten und hat daher ein Einerbit im Ende des Reihenfeldes. Die Reihe leerer Stellen liegt mit
ihrem Anfang an der Warteschlangenstelle 13 und endet
gemäß Anzeige im NER an der Warteschlangenstelle
Zweckmäßigerweise sei angenommen, daß während einer vorausgegangenen Periode, in der die Vektoren
Nr. 1, 2 und 3 durch den Vektorsegmentcodierer 100 zerlegt und ihr codiertes Vektorsegment in den Puffer
200 geladen wird, der elastische Auffrischungspuffer ausgelesen ist und für die V-Rasterzeilenstellen von
y= 225 bis Y= 1023 und von Y = 0 bis 0 = 175
gespeicherte Daten dargestellt hat. Diese Annahme eestattet die Beendigung des Ladeprozesses, bevor die
Übertragung in den elastischen Auffrischungspuffer beginnt. In diesem Bildanzeigebetrieb arbeitet man mit
einer Art aufgeteiltem Zyklus im elastischen Auffrischungspuffer, in den aus dem Speicher 306 mit
zyklischer Adressierung an der Spitze eines dichtgepackten Datenbündels ausgelesene Bilddaten an eine
Stelle eingegeben werden, deren Adresse im Leseadreßregister 302 gespeichert ist. Das erste ausgelesene Wort
ist das in Fig. 13C gezeigte Steuerwort, welches den K-Wert für die Rasterstelle der zugehörigen Daten
enthält. Dieser V-Wert wird im V-Register 310 gespeichert und der vorhergehende Inhalt des V-Registers
310 in das V-Register 318 übertragen. Der Inhalt des V-Registers 310 wird kontinuierlich im Vergleicher
316 mit der gegenwärtig im Monitor 700 angezeigten Anzeige-Zeilenzahl 320 verglichen. Da die Auslesereihenfolge
der Bilddaten vom Umlaufspeicher 306 in aufsteigenden Werten für Y geordnet ist, ist der Wert
des im V-Register 318 gespeicherten Inhalts kleiner als der Wert des im V-Register 310 gespeicherten Inhalts.
Der Indexspeicher 232 des Warteschlahgenpuffers 200 kann somit an V-Indexwertstellen von V + 1 bis V
während der Zeit abgefragt werden, in der das Steuerwort des Y-Werts im V-Register 310 gespeichert
bleibt, um so festzustellen, ob der Warteschlangenspeicher 202 angezeigte Daten gespeichert hat, um auf einen
V-Indexwert zwischen V -i- I und V zu reagieren. Die
Abfrage des Indexspeichers erfolgt durch den Zähler 362, durch Addition ganzer Zahlen im Erneuerungspuffer
zum Inhalt des V-Registers und Ausgabe dieser Werte als V-Index auf die Leitung 206. Diese Summe
wird in der Vergleichereinrichtung 364 mit dem im V-Register 310 gespeicherten Wert verglichen und
wenn der V-Summenindex genauso groß ist wie der im V-Register 310 gespeicherte Inhalt, sind die Indexspeicherstellen
zwischen V + 1 und Verschöpft. Wenn die Differenz zwischen dem Inhalt des V-Registers 310
und der Anzeige-Zeilenzahl 320 zwischen 1 und 8 liegt, werden die Bilddatenwörter, die dem im V-Register 310
gespeicherten V-Wert entsprechen, oben aus dem gepackten Datenbündel im Speicher 306 mit zyklischer
Adressierung ausgelesen und über die Ausgabeleitungen 314 mit dem auf die Leitung 368 ausgegebenen
Wert an den Symbolgenerator 400 geleitet. Wenn der Symbolgenerator das Wort annimmt, wird die X-Adresse
an den entsprechenden PRAS-Modul 604 übertragen und das Bilddatenwort in den Umlaufspeicher unten am
dichtgepackten Datenbündel an der Stelle wieder eingeschrieben, die durch das Schreibadreßregister 304
bezeichnet ist.
Wenn also das den Wert V= 100 enthaltende Steuerwort aus dem Speicher 306 mit zyklischer
Adressierung gelesen und in das V-Register 310 gesetzt wird, stellt der Vergleicher 364 fest, daß es größer ist als
der vorhergeheüde Inhalt des V-Registers 310, der jetzt im V-Register 318 steht. Wenn diese Bedingung
vorliegt, werden V-Werte zwischen dem im V-Register gespeicherten Inhalt und dem Wert V= 100 erzeugt,
und die Puffersteuerung 210 gibt das Entlade-Abschlußsignal auf die Leitung 236 für jede Abfrage, da keine
Daten an diesen Stellen im Warteschlangenspeicher 202 gespeichert sind. Nachdem der Wert des V-Index
erhöht wurde und den Wert V = 100 im V-Register erreicht hat und wenn die Anzeigezeilenzahl zwischen
92 und 99 liegt, werden die im Speicher mit zyklischer Adressierung oben im gepackten Datenbündel gespeicherten
Bilddaten auf den Symbolgenerator 400 zur Anzeige ausgelesen und dann unten im gepackten
Datenbündel im Speicher 306 mit zyklischer Adressierung an der Adresse wieder eingeschrieben, die durch
das rechte Adreßregister 304 angegeben ist.
Das nächste im elastischen Auffrischungspuffer gespeicherte Steuerwort hat den V-Wert 195 und wird
aus dem Speicher 306 mit zyklischer Adressierung gelesen und in das V-Register 310 gesetzt. Der
vorhergehende Inhalt des V-Registers 310 mit dem Wert 100 wird in das V-Register 318 übertragen.
Solange der Wert der Anzeige-Zeilenzahl 320 kleiner ist als 187, kann der Indexspeicher 232 des Warteschlangenpuffers
auf V-Indexwerte zwischen 100 und 195 abgefragt werden. Die Steuerung 338 setzt den Zähler
362 auf 0, und die zyklische Erhöhung des V-Indexwertes
auf der Leitung 206 beginnt. Wenn der Wert des V-Index 176 beträgt, erzeugt die Puffersteuerung 210
ein Signal auf der Leitung 234, welches anzeigt, daß Daieii vorhanden sind. Diese genannten Daten sind das
codierte Wort für das codierte Vektorsegment des Vektors 3. Der V-Indexwert von 176 wird in den
Speicher mit zyklischer Adressierung als das in Fig. 13C für die aus dem Warteschlangenpuffer
entsprechenden Wert V= 176 zu ladenden Daten
gezeigte Steuerwort geleitet. Dieses Steuerwort wird in den Speicher 306 mit zyklischer Adressierung unten am
gepackten Datenbündel an derjenigen Adresse geladen, die im Schreibadreßregister 304 gespeichert ist.
Gleichzeitig erhöht die Auffrischungspuffersteuerung 338 den Wert im Wortzähler 328 und damit die
Schreibadresse um eine Einheit, während die Leseadresse im Leseadreßregister 302 unbeeinflußt bleibt. Ein
Entladekommandosignal wird durch die Steuerung 338 auf der Leitung 230 erzeugt und der Warteschlangen- >°
puffer beginnt, alle im Warteschlangenspeicher 202 gespeicherten Bilddaten zu entladen, die dem V-Indexwert
176 entsprechen.
Der V-lndexwert 176 wird über die Leitung 206 im
Warteschlangenpuffer 200 in das Indexadreßregister >5 216 gegeben. Das dem Y-Wert 176 entsprechende
Indexzeigerwort wird vom Indexspeicher 232 adressiert und an das Indexdatenregister und das Kurzzeitadreßregister
218 bzw. 220 ausgegeben. Das ElNE-Bn 222 im Indexdatenregister wird auf 0 gesetzt, da nach dem
Entladen der entsprechenden Bilddaten aus dem Speicher 202 die Warteschlange leer ist. Der Inhalt des
Indexdatenregisters 218 wird dann in den Indexspeicher 232 neu geschrieben. Das Adreßfeld des TAR220 wird
in das Warteschlangenadreßregister 224 geladen, und *5
der Anfang der zu dem Wert Y = 176 gehörenden Datenverschachtelung wird im Speicher 202 adressiert
und in das Warteschlangendatenregister 226 geladen. Die Puffersteuerung 210 geht jetzt zu dem Signal
«Daten vorhanden« auf der Leitung 224, und dann werden die gewünschten Daten aus dem Datenregister
auf die Leitung 238 ausgelesen und in den Speicher 306 mit zyklischer Adressierung des elastischen Auffrischungspuffers
geladen. Das Format der in den Speicher mit zyklischer Adressierung geladenen Bilddaten ist in
Fig. 13A gezeigt. Diese Daten werden unten in das
gepackte Datenbündel im Speicher 306 an der Stelle geladen, die durch das Schreibadreßregister 304
angegeben ist. Die Steuerung 338 des Auffrischungspuffers erhöht dann den Inhalt des Wortzählers 328 um 1
und veranlaßt das Schreibadreßregister 304 zur Erhöhung seines Inhalts um 1, während der Inhalt des
Leseadreßregisters 302 derselbe bleibt. Im Puffer 200 werden die Verschachtelungsendbits 328 und das
nächste Adreßfeld im Warteschlangenregister 226 durch die Leitung 262 in das Kennzeichenbit und das
Adreßfeld des Kurzzeitadreßregisters 220 geladen. Der Inhalt des nächsten leeren Registers 214 wird dann über
die Leitung 276 in das Verschachtelungsendbit 228 und das nächste Adreßfeld des Warteschlangenregisters 226
geladen. Der Inhalt des Warteschlangenregisters 226 wird dann über die Leitung 270 in den Warteschlangenspeicher
202 an der Stelle geschrieben, die im Warteschlangenadreßregister 224 gespeichert ist.
Gleichzeitig wird der Inhalt des Warteschlangenadreßregisters 224 über die Leitung 256 in das Adreßfeld des
nächsten leeren Registers 214 geladen, und das Verschachtelungsendbit 212 wird über ein Signal auf der
Leitung 276 auf 0 zurückgestellt. Das Kennzeichenbit des Kurzzeitdatenregisters 220 wird jetzt durch ein
Signal auf der Leitung 280 an der Steuerung 210 geprüft. Wenn es auf 1 steht, gibt es keine weiteren Daten für die
V-Koordinaie, und das Entlade-Abschlußsignal wird auf
die Leitung 236 gegeben. Das Ergebnis dieser Operation ist in Tabelle 8A gezeigt. Die Reihe der leeren Stellen
wurde also auf den neuesten Stand gebracht und enthält die Stelle 12, wo die dem Wert Y - 1 76 entsprechenden
Bilddaten entladen wurden.
Der elastische Auffrischungspuffer nimmt die Erhö- nimmt die hung des V-Indexwertes auf der Leitung 206 und die 2O6 wied(
Abfrage des Indexspeichers 232 wieder auf. Wenn der der Wert
K-Indexwert 192 ist, erzeugt die Puffersteuerung 210 ein Wenn dii
Signal (Daten vorhanden) auf der Leitung 234. Somit liegt, wer wird der V-Indexwert 192 in den Speicher 306 mit Bilddaten
zyklischer Adressierung vom Addierer 360 unten in das gepackte: gepackte Datenbündel als an der Stelle geladenes inhalt de;
Steuerwort eingegeben, die durch das Schreibadreßre- und untei
gister 304 angegeben ist. Die Steuerung 338 erhöht den wieder ei Inhalt des Wortzählers 328 und des Schreibadreßregi- ster 304
sters 304 um 1. Die Steuerung 338 erzeugt dann den Schreiba( Warteschlangenentladebefehl auf der Leitung 230. Die nachfolge
Tabelle 8A zeigt den Zustand des Warteschlangenspei- zejgt.
chers 202, wenn dei Warteschlangenentladebefehl In dies
gegeben wird. Der Warteschlangenstellenzeiger im damit bes Indexspeicher 232, der der V-Koordinate 292 entspricht, lesen und
zeigt auf die Warteschlangenstelle 11 im Speicher 202 befehlslei als den Anfang der Datenverschachtelung entsprechend steht daht
Y= 192. Bei Adressierung und Ausgabe der Bilddaten dierer od
an der Stelle 11 auf die Leitung 238 gibt die zur Verl
Puffersteuerung 210 einen Impuls »Daten vorhanden« Wartesch über die Leitung 234 an die Steuerung 238. Dieses vom Klei;
Vektorsegmentwort entspricht dem dritten Vektorseg- rjscne Ze
ment des Vektors 3 und wird in den Speicher 306 mit ist. Die P
zyklischer Adressierung des elastischen Auffrischungs- den Kleii
puffers unten in das gepackte Datenbündel geladen. Zeichen I
Wenn die Stelle 11 aus dem Speicher 202 entladen ist, nächste k
wird sie an den Anfang der Reihe leerer Stellen im des NER Warteschlangenspeicher gesetzt durch Übertragen Speichers
ihrer Stellenzahl in das Adreßfeld des nächsten leeren Zeitpunkt Registers. Das Kurzzeitadreßregister 220 enthält in jedes c
seinem Adreßfeld den Zeigerwert, der in der nächsten symbol st
Adreßstelle des Datenworts in der Warteschlangenstel- tor 400 2
Ie 11 stand und bezeichnet die Stelle Nr. 8 als die nächste dem YR
Stelle im Speicher 202, die entladen und auf die Leitung kleiner ί
238 zum Auffrischungspuffer ausgegeben wird. Dieses PRAS-Of codierte Vektorwort entspricht dem zweiten Vektor- alphanurr
segment des Vektors Nr. 2 und wird in den Speicher 306 werden s mit zyklischer Adressierung des elastischen Auffri- oder das
schuiigspuffers unten in das gepackte Datenbündel teilen Ab geladen. Der Inhalt des Wortzählers 328 und des den Buc
Schreibadreßregisters 304 wird jeweils um 1 erhöht. Das elastische nächste Stellenfeld des an der Warteschlangenstelle 8
gespeicherten Datenwortes enthält den Wert 5 und zeigt auf die Warteschlangenstelle 5, die das Ende der
dem Y-Wert 192 entsprechenden Datenverschachtelung ist. Die Stelle 5 wird entladen und auf die Leitung
238 zum elastischen Auffrischungspuffer ausgegeben. Das in der Warteschlangenstelle 5 gespeicherte Datenwort
entspricht dem 5. Vektorsegment des ersten Vektorwortes und wird in den Speicher 306 mit
zyklischer Adressierung des elastischen Auffrischungspuffers am Boden des gepackten Datenbündels geladen.
Der Inhalt des Wortzählers 328 und des Schreibadreßregisters 304 wird um 1 erhöht. Tabelle 8B zeigt den
Zustand des Speichers 202, nachdem die dem Y-Wert 192 entsprechende Datenverschachtelung entladen
wurde. Die Warteschlangenstelle 5, die das Ende der Datenreihe für Y= 192 ist, ist jetzt das nächste leere
Register entsprechend der Anzeige des Adreßfeldes NER und stellt den Anfang der Reihe leerer Stellen im
Warteschlangenspeicher dar. Beim Entladen von Daten aus dem Warteschlangenspeicher werden die entsprechenden
Stellen in die Reihe leerer Stellen eingereiht. Wenn das Verschachtelungsendbit erkannt wird, gibt
die Puffersteuerung 210 Entladeabschlußsignale auf die Leitung 236 und die Auffrischungspuffersteuerung 338
35
e Erhö- und die enn der : 210 ein l· Somit
306 mit ■η in das :ladenes idreßreiöht
den reßregiann den 230. Die genspei-Jebefehl iger im
tspricht, -her 202 rechend ilddaten 7M die
banden« - Dieses ktorseg-306 mit ichungsgeladen. aden ist, eilen im
ertragen η leeren ithält in lächsten
igenstel-1 nächste Leitung t Dieses
Vektorcher3O6
Auffriraböndel ^ad des
immt die Erhöhung des V-Indexwertes auf der Leitung
706 wieder auf, bis der V-Indexwert 195 beträgt, das ist
Her Wert, der jetzt im V-Register 310 gespeichert ist.
Wenn die Anzeige-Zeilenzahl zwischen 187 und rlgt werden die dem V-Indexwert 195 entsprechenden
Bilddaten aus dem Auffrischungspuffer oben am I eDackten Datenbündel an einer Stelle gelesen, die dem
"'· fnhalt des Leseadreßregisters 302 entspricht, dargestellt
< d unten in das gepackte Datenbündel an der Stelle
wieder eingeschrieben, die durch das Schreibadreßregiter 304 angegeben ist. Die Leseadresse und die
Schreibadresse werden dann um eins erhöht und nachfolgende Bildanzeigewörter ausgelesen und angezeigt·
•stelle 8 π 5 und Inde der
ehachte-Leimng
gegeben, f Dztea-
: ersten 386 mit
\n dieser Zeit ist der elastische Auffrischungspuffer '5
damit beschäftigt, vorher gespeicherte Bilddaten auszulesen und anzuzeigen. Auf der Warteschlcngen-Entladehefehlsleitung
230 liegt kein Signal an. Der Puffer : teht daher zum Empfang neuer vom Vektorsegmentcodierer
oder dem Kleinrechner 50 eingegebener Daten : zur Verfügung. Zu diesem Zeitpunkt erhält der
Warteschlangenpuffer ein Datenverfügbarkeitssignal vom Kleinrechner, welches anzeigt, daß das alphanumerische
Zeichen B zum Laden auf der V-Zeile 176 bereit
ist Die Puffersteuerung 210 gibt einen Ladebefehl an den Kleinrechner und das codierte alphanumerische
Zeichen B wird in die Warteschlangenstelle 5, das nächste leere Register gemäß Anzeige des AdreÜfeldes
des NER geladen. Der Zustand des Warteschlangenspeichers 202 und des Indexspeichers 232 zu diesem
Zeitpunkt ist in Tabelle 9 gezeigt.
jedes codierte alphanumerische und Vektorsegmentsvmbol
steht zur Übertragung an einem Symbolgenerator 400 zur Verfügung, wenn die Differenz zwischen
dem y-Register 310 und der Anzeige-Zeilenzahl 320 kleiner als 8 ist. Aus der in Fig.7A gezeigten
PRAS-Operation geht der Grund hervor. Wenn das alphanumerische Symbol 1 in das PRAS geschrieben
werden soll, wird zu einem Zeitpunkt nur das A-FeId oder das ß-Feld beschrieben auf Grund der verschach-
\ te|len Abtastung der Daten-Bildanzeige. Wenn also das
• den Buchstaben 1 darstellende Zeichen aus dem elastischen Erneuerungspuffer 300 genau zu dem
Zeitpunkt ausgelesen wird, an dem die Differenz zwischen dem V-Wert, bei dem der Buchstabe
darzustellen ist, und der Anzeige-Zeilenzahl gleich 8 ist, wird das A-FeId des Buchstaben 1 in PRAS gemäß der
Darstellung in Fig. 7A zusammengesetzt. Wenn die Differenz zwischen der Y-Rasterlinie, an der der
Buchstabe darzustellen ist, und der Anzeige-Zeilenzahl, die gegenwärtig dargestellt wird, genau 7 ist, liegt das
A-FeId für das alphanumerische Zeichen 1 in PRAS so, wie es in Fig.7B gezeigt ist. Da 14 Speichereinheiten
800 im PRAS zur Verfügung stehen, wo das Symbol zusammengesetzt werden kann und das A-FeId des
Symbols acht dieser Speichereinheiten belegt, gibt es also einen Zeitabschnitt mit 7 Speichereinheiten Breite,
in dem das darzustellende Symbol zusammengesetzt werden kann. Wenn also die Differenz zwischen dem
y-Register 310 und der Anzeige-Zeilenzahl 320 größer als 8 ist, könnte das Zeichen im Abschnitt 800 des PRAS
nicht vollständig zusammengesetzt werden. Wenn diese Differenz kleiner als 1 ist, kommt die vom Auffrischungspuffer
an das PRAS über den Symbolgenerator übertragene Bildinformation zu spät an, um im
Abschnitt 800 des PRAS zusammengesetzt zu werden.
Wenn die Differenz zwischen dem V-Register und der Anzeige-Zeilenzahl 8 oder kleiner ist, wird durch die
Steuerung 338 des elastischen Auffrischungspuffers ein Datenverfügbarkeitssignal auf der Leitung 348 erzeugt
und wenn der Symbolgenerator 400 nicht belegt ist, wird durch die Steuerung 402 des Symbolgenerators auf der
Leitung 346 ein Datenannahmesignal erzeugt. Die Daten werden dann zyklisch zur Anzeige aus dem
elastischen Auffrischungspuffer gelesen. Die codierten Symboldaten werden im Symbolspeicher 410, 412, 413,
414 des Symbolgenerators zu einem entsprechenden Muster von Rasterleuchtsignalen decodiert. Diese
Rasterleuchtsignale werden durch den Multiplexer 415 an den entsprechenden Kanal und die PRAS-Steuerung
430 geleitet. Im vorliegenden Beispiel wird der Vektor 1 im blauen PRAS 444, der Vektor 2 im roten PRAS
und der Vektor 3 im grünen PRAS 442 des Kanals 1 zusammengesetzt. Die Vektoren werden wie in Fig.
gezeigt auf dem Bildschirm-Monitor dargestellt.
22Et den
37 Tabelle 1
Vektor 1 (Xl, Yl) = (161, 224) (XZ, Y2) = (240,184"·/*«)
Vektor-Richtung =
Oktant = 1
Länge = 5
Oktant = 1
Länge = 5
Vektor-Abschnitte | Vektor-Segment | Test- | Vergleichs- | Addierer | Modifizierte | Symbol |
Register | Register | Richtungs- | Code | |||
X Y | A'-Register X-Register | Register | ||||
(110 (200 | (150) | (134) | (140) | (142) | (130) |
161 | 224 | 224 | 224 | 224) | 161 | 224 | 0 | = 1 | 224 | 0 | 2 | 224 | 0 | Vu | 0 | 8 | 7 |
177 | 215»/h | 208 | 208 | 177) | 177 | 216 | Vu | 3 | 208 | 0 | 4 | 208 | .... i/4 | Vu | 0 | 8 | 7 |
193 | 2071Vu | 192 | 192 | 193 | 208 | Vu |
Vektor-Segment Test-
Register A'-Register K-Register (110 (20O (15·) |
192 | 0 |
Veklor-Stgment Te»t-
Regidtcr Λ-Register V-Register (HO (2M) (IM) |
192 | ■ -V1 | Vu | 0 | 8 | 7 | |
209 | 199>V.« | 176 | 209 | 200 | Vu | 193 | 209 | 176 | V4 | Vu | 0 | 8 | 7 | ||||
225 | 191«/»· | 225 | 192 | Vu | 209 | Vektor-Richtung = 7V4 | 217 | 5Ae | 0 | 8 | 7 | ||||||
Tabelle 2 | = (209, | 225 | Oktant = | 225 | |||||||||||||
Vektor 2 | = (239, | Vektor-Richtung = 16 | Länge - | 232 | |||||||||||||
(X 1,Yl) | = (193, |
Vektor-Abschnitte
* Y |
Oktant = | ||||||||||||||
(X2, Yl) | = (240, | 209 | 224) | Länge = | |||||||||||||
Vektor-Abschnitte
X Y |
216V4 | 161) |
Vergleichs-
Register (134) |
Addierer
(140) |
Modifilierte
Richtungs- Register (142) |
Symbol
Code (130) |
|||||||||||
193 | 224'Ί | 0 | 0 | 16 | 15 | ||||||||||||
209 | 232V4 | 0 | 0 | 16 | 15 | ||||||||||||
225 | 0 | 0 | 16 | 15 | |||||||||||||
Tabelle 3 | |||||||||||||||||
Vektor 3 | |||||||||||||||||
(Xl.Yl) | |||||||||||||||||
(X 2, Y 2) | |||||||||||||||||
Vergleichs-
Register (1Λ4) |
Addierer
(140) |
Modifizierte
Rii-htungs- Register (142) |
Symbol
Code (130) |
||||||||||||||
V4 | 1 | 8 | 23 | ||||||||||||||
Vt | 1 | 8 | 23 | ||||||||||||||
V4 | 0 | 7 | 23 | ||||||||||||||
1 | I | H | ?1 |
y a •c
TABELLE 4
Grundai;ustand der verschachtelten Warteschlange
XHDBX
Y-RDOTd.
224
216
192
184
176
Leer/ Sichtleer
2OO [Ι
E/tE
11X1
I b"
Harteschl.· Stellen-Anzeige
E/NE
NÄCHST.1,EESES REG. QftR
CO Il
JLl JL2 JLl
DATEN
X-Koord.
<j2 c
Lade-Velctor 1 in Warteschlange
1. Untervektor (161,224)
INDEX |
i
Υ—Roord. |
Leer/
ffichtleer • E/NE |
4 | ! O | 1 |
Warteschl.-
Stellen- Anzeige |
I r | b | ι ι |
• | 1 ι | ο I | b | ||||||
224 | 1 | O | 1 | ||||||
• f | k I | O | |||||||
216 Il O | O | b | |||||||
t « | |||||||||
208 j I 0 | » · | ||||||||
b | |||||||||
I ( | |||||||||
2CO 11 0 | b | ||||||||
• · | ► · | ||||||||
192 [ | b | ||||||||
: ,· | » · | ||||||||
184 t | b | ||||||||
: !· | |||||||||
176 I | |||||||||
168 I | |||||||||
160 I | |||||||||
S Iff:
■6|ί
11
J.4
1 fi
INFORMATIONS-WARTESCHLANGE
il
Q_
10
15
τ fi
DATEN
0011
ι ι I
Χ-KOord·
-b-
Γ)
WR
TAR
Ε/ΝΕ
NSCHST.LERES REG. QAR
I1ABELLE 5b
Lade-Vektor 1 in Warteschlange 2. Untervektor (177,216)
INDEX | Y-Koord, |
Leer/
Sichtleer «Ε/ΙΕ |
1 | I I |
Warteschl.-
SteUei- Anzeige |
• | 2 | ι | h |
• | ι | > < | I ° | ι ι | » · | ||||
224 | 216 |i 1 | 1 | h | ||||||
ϊ t | _ί · | 1 ο | h | ||||||
2OS | I ° | > · | |||||||
209 ! | > · | ||||||||
ΐ ι | h | ||||||||
I ο | h | ||||||||
184 I | 168 Η O | h | |||||||
16Ο Η Ο | |||||||||
ι?6 I | : 'ft 1 |
ζ
ζ
INFORMATIONS-WARTESCHLANGE
JLCL
_LL
14
1 ς
CPR
Ό θ Ο
Φ Ό
Π W Il
DATEN
X""Koord.
177
CQ
_ O
Ii
IhIiI?! 177
JL6
lfi
J_fi_
IBR [
NSCESTJLEERES BEG. [
OAR
ΤΊ
Lade-Vektor 1 in Warteschlange
3., 4. und 5. Untervektor (193,208) ;2O9,200) ;225,192).
INDEX
Leer/ »ichtleer * E/NE |
4 | 1 | 1 |
Wtoteschl.-
Stellen- Anzaige |
f | |
: i | i i | 1 t | 3 I | |||
224 | 1 | I ι | 1 | 1 | ||
i | 4 | |||||
216 J | 0 | 2 | > · | |||
* ι | 5 | |||||
208 I | I ° | ■ · | ||||
;: ι | b | |||||
200 I | J-a— | I · | ||||
:: < | I ο | b | ||||
192 I | ■I | |||||
b | ||||||
184 I | b | |||||
: \ | ||||||
176 I | ||||||
168 I | ||||||
160 I | ||||||
: 1 |
C-
c-
C-
6^
JJL
TA.
Tfi INFORMATIONS-WARTESCHLANGE
Ii.
DATEN
I τ I X—Koord.
TfiT
177
2Q9
τ I ? I
-H r-t
cn
JLS
ι ρ
IDR
'CAR
'CAR
Έ/ΝΕ
MVRK
nKcbst.leeres reg.
OAR
JL-J
JJM Γ
1SSUi £
Lade-Vektor 2 in Warteschlange 1. Subvektor (193,224)
INDEX
Y-Jtoord. |
Leer/
Sichtleer - Ε/ΪΒ |
1 | 1 |
Warteechl.-
Stellet- Anaeige |
1 | ■ 5 |
: | I I | ι · | ||||
224 | ι · | 1 | 6 | I ° | b | |
» I | ι ι | \ ι | f · | |||
216 j | I ι | 2 | 0 | b | ||
ι ι | \ i | ► · | ||||
208 ! | 3 | 168 I 0 | b | |||
200 I | 4 | ioO i | b | |||
: J | : I | I I | ||||
192 1 | \ * | |||||
i ° | ||||||
184 I | ||||||
: | ||||||
176 J | ||||||
lfi INFORMATIONS-WARTESCHLANGE
<u5 J
DATEN
0)
GPR InT X—Koord.
16Ί
177
2Ο9
Cu
L H a>
_Q
JL6
JL£_
1 fi
JLfi_
1 fi
τ ς
ι ς
E/NE
REG* OAR
INDEX
Lade-Vektor 2 in Warteschlange
2. und 3. Untervektor (209,208) und (225,192)
INFORMATIONS-WARTESCHLANGE
Y-Kbord. |
Leer/.
Nichtleer = E/HE |
1 | i | 216 |! 1 | »! * | • | 0 | i |
Warteschi.-
Stellen- Anzeige |
6 | • | 2 |
: | ·< | s ,· | I ι | • | ||||||||
224 | I I | 7 | ||||||||||
: ■■ | 208 j! 1 | 1 | ||||||||||
»1 * | 4 | |||||||||||
200 j | 0 | |||||||||||
; I | ■{ < | 8 | ||||||||||
192 | I 0 | ι ι | ||||||||||
Ί ' | b | |||||||||||
184 I | 0 | > O | ||||||||||
: | b | |||||||||||
176 j | ι I | |||||||||||
b | ||||||||||||
168 I | ||||||||||||
b | ||||||||||||
160 | ||||||||||||
Ύ/Μ
TAR [_
MARK
-LQ
Jl
JLl
JlA
JL5.
JLA
DATEN
X-Koord.
lfil
177
I η I * I ι I ? I
NÄ3ST.LEERES REG. QAR fei
CQ
IfS
if;
1 fi,
1 fi
1 fi
Tisl
TAR
rJOT
MARK
INDEX | 1 | 1 | 1 | Warteschl.- Stellen- Anzeige |
|
Υ-Kbord. | Leer/ SJichtleer = EAJE |
||||
< | i * ·, | 0 | 9 | ||
224 | 208 Il 1 | J « | |||
: * | I ° | 2 | |||
216 j | 200 I | 10 | |||
192 | 4 | ||||
> ' | |||||
184 I | 11 | ||||
: | |||||
176 j | b | ||||
: · t | ι ι | ||||
168 I | 12 | ||||
: f | ι ι | ||||
160 I | b | ||||
: \ | |||||
ft ' I | b | ||||
I ι | f t | ||||
1 | |||||
·; « | |||||
0 |
Lade-Vektor 3 in Warteschlange
1, 2, 3, und 4, Untervektor (209,224)τ(217 ,208);C25,192)j*
(232,176)
INFORMATIONS-WARTESCHLANGE
10
11
12
13
14
ι ς
lfi
(D Ό
'S W Il
DATEN
co
B I \
14
lfi
J I
X-Koord.
161
177
193
209
225
193
209
717
Farbe
r;
ken
Bli
16
16
16
16
lfi
lfi
1 fi
16
lfi
16
1 6
1 1 1 h 1 1 1 2 I 239 I
O (U
I5
23
93
O I lfi
IDR
TAR
Έ7ΝΕ
0
KBVSK
KBVSK
12
.leeres reg.
S3
« H
K) «Η GO W
W 9 W H
S £
13
υ co
CQ SS
aqiB.1
•41PBIPSJ3,
in u»
ν cm
g §
I
Γ ι I ·> |
k
i |
>·■ | <^ | ·· | (M | ·■ |
D
H |
·· | "* | ·· |
<H
•H |
■·< | A | ·· | ΓΜ |
·■
• |
O | ■·■ | X) |
Anzeige j | H | H | H | iH | O | O | ·· |
DO
to |
·' | O | |||||||||
>■ | * | ·■ | ·· |
at>
O N |
·· | 8 |
M
^> |
I 184 1 | I 176 1 | I 16O_l | |||||||||
j | ·<►■ »■ |
||||||||||||||||||
(M
§ ί
Ε/ΜΕ
OKIt
SUIT
Entlade alle Daten mit y = 192
INDEX
Y-KDOxd. | I Leer/ foichtleer j = E/KE |
Warteschl.- StPiIpn- Anzeige |
• | I ( | |
224 | j 1 | 9 |
: | ι I | |
216 | 1 | 2 |
: | ■ 4 | |
2O8 | 1 1 | 10 |
• < | ||
200 I | j 1 | 4 |
• | ». * | » · |
192 Il 0 | 11 j | |
• | » * | |
!
;
9
'[I
IER
JftRK
12
I 0 I | 11 I |
E/NE | |
I .i I | b I |
Z.
JL
dL
JL
i. INFORMATIONS-WARTESCHLANGE
CPR
t5
Ul Il
Ul Il
JJL
JJ2
JJ.
15
Ji
DATEN
(U
X-Kcord.
161
177
193
2Ω3.
209
Ja.
209
217
0. L-Q-
JL
SL
SL
Sl
16
16
Ji.
JLL·
16
0 (D
JLo.
J L
JJL
JJl
JiJ-J
0 I 8 | I b | I i ! |
IKUEX
Y—Köonl.
224
Leer/
^ichtleer = E/NE
Warteschi.· Stellen-Anzeige
216 ίΐ | 1 | < | 1 | 1 | 2 | » | 10 | » | 4 | » | 11 | f | 0 | « | 0 | » | b | » | b | τ |
: · | 0 j 12 | |||||||||||||||||||
208 | 1 | 5 | « | • | ||||||||||||||||
: · | ||||||||||||||||||||
200 H | 1 | • | ||||||||||||||||||
192 Η | 0 | • | ||||||||||||||||||
184 j! | • | |||||||||||||||||||
176 Jj | • | |||||||||||||||||||
J | ||||||||||||||||||||
16S | • | |||||||||||||||||||
: · | ||||||||||||||||||||
160 {j | ||||||||||||||||||||
: ft |
Lade alphanumerisches Symbol B- (161,184)
INFORMATIONS-WARTESCHLANGE
Λ2.
JJL
JJ.
DATEN
(U
X-Koord.
177.
-L3JL
209
209
209
217
Ja.
•H
rH
OQ
SL
SL
SL
SL
SL
bid.
AL·
IL·
JJEl
AL·.
JLfi.
-UL
Jy »TI U)
_L5-
23
ι 1 121 ι I 3 1 lsi I η I ι 1 h
IDR
TAR
TAR
E/NE
Claims (15)
1. Anordnung zur Zeichen- und Symboldarstellung auf Kathodenstrahl-Büdschirmeinheiten als Monitoren
mit Einrichtungen zur Bereitstellung von Zeichen und Vektoren, die im Ansprechen auf
zugeführte Eingangs- bzw. Steuerdaten über eine Speichervorrichtung darzustellender Symbole und
einen Multiplexer mit den einzelnen Monitorkanälen wahlweise in Verbindung stehen, indem durch einen
hieran angeschlossenen Generator ein Muster von Bildpunkten erzeugt wird und Partialrasteraufbauspeicher
vorgesehen sind; gekennzeichnet durch eine Spezialrecheneinheit (50) sowohl zur
Festlegung von Anfangspunkt, Richtung und Länge eines jeweils darzustellenden Vektors als auch zur
Bestimmung des Zeichenabstands, Unterdrückung von Betriebszeichen und Spezifizierung darzustellender
Zeichen, die direkt einem Warteschlangen-Zwischenregister (200) zuführbar sind, durch einen
an die Spezialrecheneinheit (50) angeschlossenen Vektorsegmentcodierer (100) sowohl zur Zerlegung
des Vektors in eine untereinander verbundene Folge von Vektorsegmenten als auch zur Codierung der
Segmente in Vektorsegmentworte, die jeweils aus den Anfangskoordinatenwerten, der Länge und den
Symbolcodedaten bestehen, durch das sowohl zur Übertragung alphanumerischer Zeichen mit der
Spezialrechnereinheit (50) direkt verbundene als auch an den Vektorsegmentcodierer (100) angeschlossene
Warteschlangenzwischenregister (200) zur Sortierung der in zufälliger Reihenfolge
zugelieferten Symbole nach der K-Adresse ihres jeweiligen Anfangs und Ausgabe in entsprechender
Verschachtelung als Symbolbündel jeweils gleicher K-Adresse; durch ein hieran angeschlossenes Auffrischungsregister
(300), in dem die Vektorsegmentworte in einem erweiterungs- bzw. fortschreibungsfähigen
Listenspeicher (Liste 306* geordnet nach Rasterzeilenwerten der Bildschirmanzeige speicherbar
sind, wobei die Vektorsegmentworte zyklisch am Kopf der Liste zur Ausgabe für Decodierung und
Anzeige auslesbar und am Fuß dieser Liste (306) geordnet nach dem K-Wert zyklisch wieder
einschreibbar sind, indem neue Vektorsegmentworte vom Vektorsegmentcodierer (100) bei Unterbrechung
der zyklischen Operation des Lesens vom Kopf der Liste (306) zuführbar und überholte bzw.
nicht mehr gebrauchte Vektorsegmentworte aus der Liste (306) durch Unterbrechung des zyklischen
Schreibvorgangs am Fuß der Liste (306) ausstreichbar sind.
2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß der Vektorsegmentcodierer (Fig. 11)
jeweils Register (102, 104, 106, 108) zur Aufnahme der Daten für Richtung (Steigungsregister), Oktanten,
Länge (Abstandsregister) und Anfangspunktkoordinaten (X- und V-Eingangsregister) der darzustellenden
Vektoren von einem externen Prozessor (40) enthält, daß zur Zerlegung in Untervektoren
eine mit dem Abstandsregister (104) verbundene zyklisch betriebene Subtraktionsanordnung (118,
120,121), der eine Vektorstandardlänge als Substrahent zuführbar ist und die ein Restregister (118) zur
zyklischen Speicherung der jeweils reduzierten Vektorlänge als Restlänge unter jeweiligem zyklischen
Längenvergleich aufweist, und daß mit dem Steigungsregister (102) verbundene Richtungsmcdifizierungsmittel
(132, 134, 136, 148, 150) zyklisch die Differenz zwischen eingegebenen Richtungswerten
und einem Standardrichtungswert für eins von mehreren Vektorsegmenten, in welche der darzustellende
Vekior zerlegt ist, ermitteln, wobei Mittel (138, 140) vorgesehen sind, um einen kumulierten
Richtungsabrundungsfehler zu korrigieren, an deren Ausgang ein modifiziertes Steigungs-Register (142)
liegt, das mit seinem Ausgang einerseits mit der Vektorsegmentcodiermatrix (128) verbunden ist,
deren zweiter Eingang am Ausgang des Oktantenregisters (OKT) liegt, und andererseits mit einer ALU
(146) (arithmetisch logische Einheit) zur Berechnung und zyklischen Erzeugung der jeweiligen Anfangspunktkoordinaten
der Vektorsegmente des darzustellenden Vektors verbunden ist.
3. Anordnung nach Anspruch 1 und/oder Anspruch 2, dadurch gekennzeichnet, daß das Warteschlangenregister
(Fig. 12) einen mit seiner Eingangsleitung verbundenen Indexspeicher (232) zur
Speicherung der Warteschlangen-Hinweisadressen entsprechend den jeweils zugeordneten Rasterzeilenwerten
der Darstellungsanzeige besitzt, wobei die Hinweisadressen jeweils diejenige Stelle in
einem Wurteschlangenspeicher (202) anzeigen, die den Anfang entsprechender Datenverschachtelung
zugeordnet ist, daß der Indexspeicherausgang mit dem Eingang des Warteschlangenspeichers (202)
zum Erfassen des Verschachtelungsanfangs der hierin gespeicherten Darstellungsanzeigedaten verbunden
ist, daß ein NER-Register (214) mit dem Warteschlangenspeicher (202) in Verbindung steht,
um die Warteschlangen-Speicherstelle des Verschachtelungsanfangs für die Warteschlange leerer
Register zu speichern und daß mit dem A/FÄ-Regjster
(214) und mit dem Warteschlangenspeicher (202) sowohl zum Auslesen der Darstellungsanzeigedaten
in einer Verschachtelungsdatenfolge entsprechend denn akzeptierten Rasterzeilenwert im Indexspeicher
(232) als auch zum Verschachteln der geleerten Speicherstellen im Warteschlangenspeicher
(202) mittels Speicherung der jeweils zugeordneten Adresse in das NER-Register (214) als
nächster Verschachtelungsanfang leerer Speicherstellen ein Steuerkreis (210) vorgesehen ist.
4. Anordnung mindestens nach Anspruch 1, dadurch gekennzeichnet, daß das Auffrischungsregister
(Fig. 14) aie Liste als Speicher (306) mit zyklischer Adreßfolge für η aufeinanderfolgende
Worte enthält, dessen Eingang mit dem Ausgang des Warteschlaingenregisters (200) verbunden ist, dessen
abgegebene Daten in Form der aufeinanderfolgenden Worte speicherbar sind und dessen Ausgang an
den Eingang des Symbolgenerators (400) angeschlossen ist, daß eine Speicherleseeinrichtung (302,
326, 324) mit einer Lesezugriffsstation (326) versehen ist, um erste Speicherstellen am Kopf der Liste
unter Übertragung der hierin enthaltenen Darstellungsanzeijieworte
auf den Symbolgenerator löschend auszulesen, daß eine Schreibzugriffsstation
(304) vorgesehen ist, um diese Darstellungsanzeigeworte wieder in zweite Speicherstellen am Fuß der
Liste einzuschreiben, daß Steuermitte! (338) im elastischen Auffrischungsregister enthalten sind, um
sowohl den zyklischen Lese-Zugriff der Eingabe neuer Darstellungsanzeigeworte an den Fuß der
Liste als auch den zyklischen Schreib-Zugriff zum
Löschen gespeicherter
am kopf der Liste zu umei-breche».
5. Anordnung nach einem der ^iibprüche t bis 4,
dadurch gekennzeichnet, tiaU jedes Vektorsegmeutwort
die Vektorunfangspunkikooidinaieri als X-,
y-Werte, die Vektorlänge und eilten Synibolco.je für
das jeweils zugehörige Vektorsegment spezifiziert,
wobei di<i Vektorsegnientworte in zufälliger Kolge
ihrer X-. y-Anfaogskoordinatenwerie vom Warteschlangenregister
(200) aufgenommen, jeweils ent sprechend gemeinsamer Y-Werte in Form verschachtelter
Warteschlangen hierin speicherbar sind, daß der Eingang des Auffrischungsregisiers
(300) am Ausgang des Warteschlangenregisiers
(200) liegt, um die Vektorsegmentworte mit einem
durch das Auffrischungsregister (300) spezifizierten
Y-Wert hierin in einer nach V-Werten geordneten
Liste (306) zu speichern
6. Anordnung mindestens nach Anspruch l, dadurch gekennzeichnet, daö der Eingang jedes
Partialrasteraufbauspeichers (z. B. 604) zur Aufnahme des Rasters von Punktbeleuchtungssignalen
dient, die zum Auslesen und zur Anzeige in einem hieran angeschlossenen Speicher, geordnet nach ,Y-.
y-Werten speicherbar sind, wobei die X-, V-Anfangskoordinatenwerte
des jeweils darzustellenden Vektorsegmems als Speicherstetlenadresse des
genannten Rasters und die Vektorseginentlängensignale
zur wählbaren Abkappung obengenannter, im Speicher vorhandener Signalraster dienen.
7. Anordnung nach den Ansprüchen I bts b,
dadurch gekennzeichnet, daß die Vektorsegmentfolge zur Beschreibung eines darzustellenden Vektors
aus einem Symbolsatz von 4 n-Vektoren ausgewählt
ist, wovon jedes vollständige Vektorsegmem orthogonale
Komponenten der Größen und nt besitzt,
wobei gilt: 0 < m < η für ganzzahlige .α
8. Anordnung nach den Ansprüchen 1 bis 7. dadurch gekennzeichnet, daß in der Spezialrecheneinheit
(50) Mittel vorgesehen sind, um sicherzustellen, daß die Ordinate des Vektoranfang:spunktes für
den darzustellenden Vektor nicht kleiner ist als die Ordinate der Vektorspitze.
9. Anordnung nach den Ansprüchen I bis 8. dadurch gekennzeichnet, daß die Richtungsdatenworte
für einen darzustellenden Vektor aus einem Oktantenteil zur Beschreibung, welcher der vier
Oktanten einen negativen Ordinatemvert besitzt, aus einem hohen Stellenwertteil, der den angenäherten
Wert als min für den Winkel zwischen darzustellendem Vektor und der Abszisse bzw.
Ordinate, wie er im Oktantenteit enthalten ist, wiedergibt, und aus einem niedrigen Stellenwertlei!
besteht, der die Differenz zwischen dem Wert ml η und dem wahren Wert für den Tangens des
genannten Winkels wiedergibt.
10. Anordnung nach den Ansprüchen 1 bis 9,
dadurch gekennzeichnet, daß die Längendatenworte aus einem Oktantenteil, aus einem hohen Stellenwertteil
zur ohne Überschreitung der wahren Länge des darzustellenden Vektors dienenden Erfassung
der Anzahl vollständiger Vektorsegmente mit orthogonalen Komponenten jeder Lunge η längs
der in in dem durch den Oktantenteil definierten Oktanten enthaltenen Ordinate bzw. Abszisse, und
aus einem niederen Stellenwertteil zur bei sonst gleichen Bedingungen dienenden Erfassung der
Differenz zwischen wahrer Vektorlänge und der
40
50
5s durch die Gesamtheit aller Vektorseginente gebildete»
Vektorlänge.
11. Anordnung imch den Ansprüchen I bis 10,
dadurch gekennzeichnet. Juli ein X-Abszisst;nregister
(110) und ein V-Ordinatenregister (t!2)
steuerbar mit dein X- bzw. Y-EUigangsregister (106,
1(W) verbunden sind, um den Anfangskoordinatenwert für ein erstes Vekiorsegmem zu speichern.
12. Anordnung mindestens nach Anspruch 2 und
Anspruch 10, dadurch gekennzeichnet, daß das
Resiregisicr (I tS) für die Vektoriänge steuerbar nut
dem hohen Stellenweriieil des Abstandsregisters
(104) zur Speicherung der Anzahl vollständiger
V'ektorseginente verbunden ist, wobei zur schrittweisen
Verminderung des Resrregisterinhaits nach
Codierung jedes Vektorsegmeniwories eine Subirakiiomeinrichiung
(123) an das Restregister (118)
angeschlossen ist, und eine Vergleichsemnchtung
(120) den Kegisterinhak mitO vergleicht
i i. Anordnung mindestens nach Anspruch 2 und Anspruch tO, dadurch gekennzeichnet, daß ein erste!
Addierer (132) steuerbar mit dem niederen Stellenwmieil
des Sieigungsregisters (102) verbunden ist,
um den Richtungs-Restwert für ein vorgegebenes
Vektorsegment zu den kumulierten Richtungs-Restwerten
vorher codierter Vektorsegmeute zu addieren, indem das Testregister (150) als kumulatives
Richtungs-Restregtster steuerbar mit dem ersten
Addierer (132) verbunden ist» um die kumulierten
Richtungs-Restwerte für die vorher codierten Vektorsegmente zu speichern und auf den erste»
Addierer (132) übertragen zu können, und ein zweiter Vergleicher (136) zum Vergleich de>
kumulativen Richtungsrestes mit dem Wert 0.5 an
den ersten Addierer (132) angeschlossen ist, so daß
der Inhalt des kumulativen Richtungs-Restregisters jeweils um den Richtungsrestwert bei Werten
kleiner als 0,5 erhöht und jeweils um 1 verringert wird, wenn der kumulative Richtungs-Restwert
größer als 0,5 ist und daß fernerhin ein, zweiter Addierer (140) mit dem hohen Stellenwertteti des
Steigungsregisters (102) steuerbar verbunden ist und andererseits an den Richtungsvergleichsmitteln
(136) angeschlossen ist. so daß selektiv die Richtung
des zu codierenden Vektorsegments von cn/η nach
(m + ly/i abgeändert wird, wenn der kumulative
Richtungs-Restwert größer als Oö wird.
14. Anordnung mindestens nach den Ansprüchen I, 2 und 13, dadurch gekennzeichnet, daß die
arithmetisch logische Einheit (146) ALU jeweils steuerbar mit dem zweiten Addierer (140X mit dem
Oktanlen-Register und mit dem A'-Abszissenregistei
(110) sowie dem V-Ordinatenregister (112) in
Verbindung steht, um die Anfangspunktkoordinaten des nächsten zu codierenden Vektorsegments
einmal durch Addition vom Wert η entweder zu den
Inhalten des Λ-Abszissen- (HO) txier V-Ordinaten
Registers (112), wenn X- oder V-kooidinatenwerte
jeweils den im X-Abszissenregister (HO) und im V-Ordinatenregister (112) enthaltenen Werten entsprechen,
oder zu den im durch das Oktantenregister ausgewiesenen Oktanten enthaltenen Abszissen·
und Ordinatenwerten zu errechnen und zum anderen, wenn X- oder V-Koordinaten werte jeweils
den im X-Abszissenregister (110) und im V-Ordinatenregister
(112) enthaltenen Werten nicht entsprechen,
durch Addieren oder Subtrahieren des Wertes der modifizierten Richtung zum bzw. von den
Inhalten der X-Abszissen (UO), V-Ordinatenregister
(112) oder zu bzw. von den Abszissen- oder Ordinatenwerten im Oktanten.
15. Verfahren zur Erzeugung einer Folge von Vektorsegmentworten unter Anwendung einer
Anordnung nach den Ansprüchen 1 bis 14, dadurch gekennzeichnet, daß ein darzustellender Vektor mit
einer solchen Orientierung, bei der die Ordinate des Vektoranfangspunktes nicht kleiner als die der
Vektorspitze ist bezüglich seines Anfangspunkts, seiner Länge und seiner Richtung berechnet und
entsprechende Datenworte codiert werden und daß der im Richtungsdatenwort enthaltene Oktantenteil
anzeigt, welcher der vier negativen Oktanten den darzustellenden Vektor enthält.
IO
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19742456746 DE2456746C3 (de) | 1974-11-30 | Anordnung zur Zeichen- und Symboldarstellung auf Kathodenstrahl-Bildschirmeinheiten und Verfahren unter Anwendung der Anordnung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19742456746 DE2456746C3 (de) | 1974-11-30 | Anordnung zur Zeichen- und Symboldarstellung auf Kathodenstrahl-Bildschirmeinheiten und Verfahren unter Anwendung der Anordnung |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2456746A1 DE2456746A1 (de) | 1976-08-12 |
DE2456746B2 DE2456746B2 (de) | 1977-02-10 |
DE2456746C3 true DE2456746C3 (de) | 1977-09-29 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2829668C3 (de) | Kanaldatenpufferspeicher | |
DE3335162C2 (de) | Vorrichtung und Verfahren für graphische Darstellungen mittels Computer | |
EP0096079B1 (de) | Verfahren zur Aufbereitung von Punktrasterdaten für Zeichen- und/oder Bilddarstellungen | |
DE3718501A1 (de) | Videoanzeigegeraet | |
DE3625390A1 (de) | Graphisches anzeigesystem mit beliebiger rberlappung von bildausschnitten | |
DE2132250C3 (de) | Datenübertragungssystem | |
DE2264090A1 (de) | Datenverdichtungssystem | |
DE2731955A1 (de) | Zeichengenerator mit hoher aufloesung | |
DE2550268A1 (de) | Schnelldrucker fuer datenverarbeitungssysteme | |
DE3131341A1 (de) | "pufferspeicherorganisation" | |
DE4408990C2 (de) | Verfahren zur Verwaltung von Farbdaten | |
DE3490148C2 (de) | Vorrichtung zur Erzeugung unterschiedlicher Figuren in einem computergesteuerten Darstellungssystem | |
DE2652900C2 (de) | Steuerschaltung zur Bildwiederholung für ein Raster-Datensichtgerät | |
DE1549474B2 (de) | Anordnung in einer elektronischen digitalen Datenverarbeitungsanlage zur Ausführung eines ersten Befehls und gleichzeitigen Decodierung eines folgenden Befehls | |
DE3347644A1 (de) | Grafikanzeigeeinrichtung | |
DE2423817A1 (de) | Verfahren und schaltungsanordnungen zur codierung zweidimensionaler bildinformationen | |
DE2900586C2 (de) | Anordnung zum Decodieren von Codewörtern variabler Länge | |
EP0099321B1 (de) | Anordnung zur Wiedergabe von graphischen Informationen | |
DE2213953C3 (de) | Schaltungsanordnung zum Darstellen von Zeichen auf dem Bildschirm eines Sichtgerätes | |
DE2550212B2 (de) | Drucker mit pufferspeicher | |
DE3209187A1 (de) | Verfahren zur darstellung eines textes auf einer einzeiligen anzeigevorrichtung eines texterstellungsgeraetes | |
DE2744321A1 (de) | Bildschirmgeraet | |
DE3941550C2 (de) | Schaltungsanordnung zum Zerlegen einer auf einem Computer-Ausgabedisplay anzuzeigenden Graphikfigur | |
DE2456746C3 (de) | Anordnung zur Zeichen- und Symboldarstellung auf Kathodenstrahl-Bildschirmeinheiten und Verfahren unter Anwendung der Anordnung | |
DE2641971A1 (de) | Digitale tisch-buchungs- und -rechenmaschine |