DE2920230C2 - Digitaler Vektorengenerator für graphische Sichtgeräte - Google Patents

Digitaler Vektorengenerator für graphische Sichtgeräte

Info

Publication number
DE2920230C2
DE2920230C2 DE2920230A DE2920230A DE2920230C2 DE 2920230 C2 DE2920230 C2 DE 2920230C2 DE 2920230 A DE2920230 A DE 2920230A DE 2920230 A DE2920230 A DE 2920230A DE 2920230 C2 DE2920230 C2 DE 2920230C2
Authority
DE
Germany
Prior art keywords
vector
register
counter
adder
inputs
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
Application number
DE2920230A
Other languages
English (en)
Other versions
DE2920230A1 (de
Inventor
Philippe Paris Matherat
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Thales SA
Original Assignee
Thomson CSF SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thomson CSF SA filed Critical Thomson CSF SA
Publication of DE2920230A1 publication Critical patent/DE2920230A1/de
Application granted granted Critical
Publication of DE2920230C2 publication Critical patent/DE2920230C2/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G1/00Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data
    • G09G1/06Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows
    • G09G1/08Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam directly tracing characters, the information to be displayed controlling the deflection and the intensity as a function of time in two spatial co-ordinates, e.g. according to a cartesian co-ordinate system
    • G09G1/10Control arrangements or circuits, of interest only in connection with cathode-ray tube indicators; General aspects or details, e.g. selection emphasis on particular characters, dashed line or dotted line generation; Preprocessing of data using single beam tubes, e.g. three-dimensional or perspective representation, rotation or translation of display pattern, hidden lines, shadows the beam directly tracing characters, the information to be displayed controlling the deflection and the intensity as a function of time in two spatial co-ordinates, e.g. according to a cartesian co-ordinate system the deflection signals being produced by essentially digital means, e.g. incrementally
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/20Function-generator circuits, e.g. circle generators line or curve smoothing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Image Generation (AREA)
  • Digital Computer Display Output (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

Die Erfindung betrifft einen digitalen Vektorengenerator nach dem Oberbegriff des Patentanspruchs 1.
Datenverarbeitungssysteme zur Sichtbarmachung eines aus geometrischen Figuren, alphanumerischen Typen und verschiedenen Symbolen zusammengesetzten graphischen Bildes auf einem Bildschirm sind in der Technik als Sichtgerät-Endstationen bekannt. Eine Sichtgerät-Endstation enthält insbesondere eine Kathodenstrahlröhre; je nach Art der Ablenkung auf dem Bildschirm der Kathodenstrahlröhre werden die Sichtgeräte in zwei Gruppen unterteilt: die eine Gruppe enthält Geräte, die mit einer Speicher-Kathodenstrahlröhre ausgerüstet sind, auf deten Bildschirm die Bilddaten direkt mit einer sog. »Cavalier«-Ablenkung aufgeschrieben werden, und die andere Gruppe enthält die mit einer Kat'nodenstrahlröhre geringer Remanenz ausgerüsteten Geräte, bei denen vorausgesetzt wird, daß die Bilddaten in einer Speichereinheil gespeichert werden, die zyklisch mit hoher Frequenz ausgelesen wird, wobei diese Geräte mit einer »Fernsehablenkung« arbeiten, um ein Flimmern des auf dem Bildschirm sichtbar gemachten Bildes zu verhindern. Insbesondere befaßt sich die Erfindung mit der letztgenannten Art von Sichtgeräten. Die Technik der Sichtgeräte ist bereits in der Literatur beschrieben, insbesondere in P. Morvan »Images et Ordinateurs«, Hrsg. Larousse, Paris, 1976.
Zusätzlich zu dem Sichtgerät und der Speichereinheit, die als Bildpunktspeicher bezeichnet wird, enthält eine
M) Sichtgerät-Endstation folgende Elemente: eine Steuereinheit, die das Auslesen und Sichtbarmachen des Inhalts der Speichereinheil und die Synchronisierung der Fernsehablenkung des Geräts ermöglicht; eine Schreibereinheit, die die Erzeugung der Bilddaten und das Einschreiben derselben in die Speichereinheit gestattet; Dialogwerkzeuge, z. B. Leuchtstift, Tastatur usw. Die so gebildete Endstation ist an eine Steuereinheit angeschlossen, z. B. an einen Mikroprozessor (MPU) oder an ein Rechenzentrum. Eine Sichtgerät-Endstation dieser Art ist aus NTZ-Report 15, 1973, S. 47-51 bekannt.
Die Schreibereinheit, die in der technischen Literatur auch als »Generator für graphische Funktionen« bezeichnet wird, enthält im allgemeinen einen Typenger.erator und einen Vektorengenerator, die an einen einzigen Schreib-Anzeiger bzw. eine einzige Schreib-Adressierungsverwaltung des Bildpunktspeichers angekoppelt
sind; die Erfindung belaßt sich insbesondere mit einem solchen Vektorengenerator.
Bei Vektorengeneratoren ist es z. B. aus »Control Engineering«, Juni 1964, S. 79-83 bekannt, zum digitalen Aufzeichnen eines orientierten geraden Segments einen diskreten Frequenzmultiplizierer zum Multiplizieren eines Taktsignals mit einem bestimmten Faktor vorzusehen. Dieser Faktor entspricht der Steigung des betreffenden geraden Segments. Aus der DE-OS 15 49 920 ist es ferner bereits bekannt, durch Erzeugung eines geeig- s neten Helltastsignals in Verbindung mit einem Impulsmustergenerator periodisch unterbrochene Verbindungslinien zwischen Bildpunkten zu erzeugen.
Der Erfindung liegt die Aufgabe zugrunde, einen digitalen Vektorengenerator fur graphische Sichtgeräte zu schaffen, der eine hohe Zeichengeschwindigkeit und einen optimalen Verlauf der einen Vektor darstellenden Punkte unter Zugrundelegung des vorgegebenen Punktrasters ermöglicht, um die Vielfalt der darstellbaren Arten von Vektoren zu steigern.
Diese Aufgabe wird durch die Lehre des Patentanspruchs 1 gelöst.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
Der erfindungsgemäGc Vektorengenerator ermöglicht insbesondere das Anzeigen verschiedener Arten von Vektoren wie kurze Vektoren, die durch ein Oktett angegeben werden, lange Vektoren, die durch ein Wort aus drei Oktetts angegeben werden und Vektoren in bevorzugten Richtungen, die z. B. den Hauptachsen des graphischen Bildes entsprechen. Ferner kann eine konstante Zeichengeschwindigkeit erhalten werden. Durch eine Weiterbildung der Erfindung kann das Aufzeichnen eines Vektors jederzeit unterbrochen und wieder aufgenommen werden. Ferner kann ein bereits aufgezeichneter Vektor gelöscht werden, indem allein die Einschreibweise in den Bildspeicher geändert wird.
Einzelheiten und weitere Vorteile der Erfindung ergeben sich aus der Beschreibung von Austüiirungsbeispielen anhand der Figuren. Von den Figuren reigt:
Fig. 1 ein Blockschaltbild der wesentlichen Elemente, die ein Datensichtgerät bilden,
Fig. 2 die wesentlichen Verbindungen zwischen dem Vektorgenerator und den anderen Elementen,
Fig. 3 ein Gitter, das das Aufzeichnen des Segments einer Geraden gestattet, Fig. 4 den Zeichenraum eines Vektors,
Fig. 5 die wesentlichen Elemente eines Vektorgenerators und das symbolische Ersatzschaltbild,
Fig. 6 das Format eines Wortes, das einem kurzen Vektor und dem Richtungscode des Vektors entspricht, F i g. 7 die wesentlichen, dem Vektorgenerator zugeordneten Elemente,
Fig. 8 ein Blockschaltbild einer Frequenz-Multiplikationsvorrichtung vom »BRM«-Typ,
Fig. 9 Zeitdiagramme der zu den Frequenz-Multiplikationsvorrichtungen vom »BRM«-Typ und »iV-fach«- Typ gehören,
Fig. 10 eine schematische Darstellung eines »/V-fach«-Zählers,
Fig. 11 eine symbolische Darstellung eines Modulo-.W-Zählers,
Fig. 12 eine schematische Darstellung eines A'-fach-Modulo-AZ-Zählers, Fig. 13 eine Ausführungsform eines /V-fach-Modulo-Λ/-Zählers,
Fig. 14 einen Vektor mit den Komponenten M = 33 und N = 5,
Fig. 15 eine schematische Darstellung eines AZ-fach-Modulo-A/-Zählers,
Fig. 16 eine Ausführungsform eines M-fach-Modulo-A/-Zählers,
Fig. 17 oine schematische Darstellung einer Kombination aus den Zählern nach Fig. 13 und Fig. 16, Fig. 18 eine Vorrichtung, die es gestattet, den Vektorgenerator zu initiieren,
Fig. 19 die Hinzufügung einer Einrichtung zum Anhalten des Aufzeichnens eines Vektors,
Fig. 20 digitale Einrichtungen, die es gestatten, den Richtungscode eines Vektors zu decodieren,
Fig. 21 ein schematisches Schaltbild der Einrichtungen für die Eingabe von Daten in den Vektorget.-erator, Fig. 22 eine Einrichtung, die das Punktieren des Verlaufs eines Vektors gestattet, Fig. 2? die Hiiu.ufiigung einer Hinrichtung zum Punktieren eines Vektors bei dem Vektorgenerator.
Fig. 24 ein digitales Gesamtschaltbild eines Vektorgenerators,
Fig. 25 das elektrisch" Schaltbild einer Ausführungsform des Vektorgenerators, und
Fig. 26 eine Ausfuhrungsform der Register zum Einschreiben der Vektorkomponenten M und N.
Die Tabelle I zeigt ein Beispiel für die Zuweisung der Vektor-Codewörter.
In der nun folgenden Beschreibung wird ein Vekiorgenerator in Anwendung auf ein Datensicht-Standgerät beschrieben, das mit einer Kathodenstrahlröhre mit geringer Remanenzzeit versehen ist und das die Verwendung eines Bildspeichers erfordert, in den die Daten des aufgezeichneten Vektors in Form von Punkten eingeschrieben werden. Zahlreiche spezifische Einzelheiten bezüglich des Vektorgenerators, z. B. die Zähler, Register, Addierer, werden nicht beschrieben, da diese in der Technik bekannt sind und die Beschreibung beiasten und die neuen Merkmale des Generators verdecken würden. Weiter ist zwar eine Anzahl von Einzelheiten beschrieben, z. B. die Wortformate, um die neuen Merkmale des Generators zu erläutern, diese sind jedoch für die Ausführung der Erfindung nicht spezifisch.
Fig. 1 zeigt als Blockschaltbild die wesentlichen Elemente einer DatenJcht-Endstation vom Fernsehtyp. Diese Endstation muß an eine Steuereinheit angeschlossen werden, 1. B. an einen Mikroprozessor (MPU). Die Endstation enthält:
ein Fernsehgerät 10, z. B. einen normalen Fernsehempfänger; dieser Fernsehempfänger en'ihält: eine Kathodenstrahlröhre 11, schwarz/weiß oder farbig, einen Verstärker/Demodulator 12, der der Kathodenstrahlröhre ein Videosignal und Horizontal- und Vertikal-Synchron isationsimpulse (SYNC) einer Schaltung 13 zu führt, d ie d ie Ablenksignale des Elektronenstrah Is erzeugt; d ie;er Empfänger erhält an seinem Eingang ein zusammengesetztes Videosignal V- C (mit einer HF-Trägerschwingung moduliert oder auch nicht moduliert);
einen HF(R.F)-Modulator 15, der wahlweise vorhanden ist, wenn das Fernsehgerät mit einem direkten
Videoeingang ausgerüstet ist;
einen Videomischer 16, der wahlweise vorhanden ist, wenn das Fernsehgerät ein Fernsehmonitor ist, der mit getrennten Synchronisations- und Videoeingängen ausgerüstet ist;
eine modulfbrmige Speichereinheit 20, die aus gewöhnlichen RAM-(Arbeitsspeicher mit willkürlichem s Zugriff) Speichermoduln gebildet ist und in den die Bilddaten eingeschrieben werden;
eine Steuereinheit 30, in der die Synchronisationssignale SYNC des Fernsehgeräts, die Lesc-Adrcßsignale der Speichereinheit, die Signale zur Steuerung der Helligkeit des Schirms der Kathodenstrahlröhre erzeugt werden; durch diese Einheit werden ferner die verschiedenen Signale für den Austausch zwischen den Einheiten erzeugt;
- einen Generator Tür graphische Funktionen, der hier als Veittorgenerator 40 bezeichnet wird und der die Aufzeichnung eines graphischen Bildes gestattet; er enthält insbesondere einen Generator zum Zeichnen von Vektoren. Oialogwerkzeuge (die in der Zeichnung nicht dargestellt sind, z. B. Leuchtstift, Tastatur, Schreibbrett usw.).
Die Steuereinheit und der Vektorgenerator arbeiten mit Zeitteilung bei zwei Betriebsweisen: einer Lese/ Sichtbarmachung-Schreibweise der Speichereinheit und einer Schreib-Betriebsweise der Bilddaten in der Speichereinheit.
F i g. 2 zeigt die wesentlichen Verbindungen zwischen dem Vekiorgenerator und den anderen Elementen. Der Vektorgenerator 40 enthält zwei wesentliche Elemente, den Schreibgenerator 50 und den Schreib-Anzeiger 60
:o fur die Speichereinheit Zu {im). Der Schreib-Anzcigcr cni'niüi ^wci Register: ein X-Register {XREClST) ursd ein y-Register (YREGIST1, die zum einen mit einer gegebenen Adresse geladen werden können und zum anderen durch die Ausgangssignale des Schreibgenerators inkrementiert oder dekrementiert werden. Wie bereits erwähnt, arbeiten der Vektorgenerator 40 und die Steuereinheit 30 mit Zeitteilung; hierzu werden die Adreßausgänge dieser Elemente an einen Multiplexer 35 angelegt. Die Steuereinheit gibt insbesondere ein Taktsignal CKIN für die Folgesteuerung des Schreibgenerators und ein Signal GUWE ab, das die Funktion des Schreibgenerators freigibt, und zwar außerhalb der Sichtbarmachungsperiode der Bilddaten; dieses Signal GUWE steuert gleichzeitig den Multiplexer 35.
Der Vektorgenerator empfängt aus der Steuereinheit (MPU) die Datensignale auf einem bidirektionalen Datenbus (MPDB), Adreßsignale auf einem Adreßbus MPA B uini Steuer- bzw. Austauschsignale aufLeitungen CS. Der Vektorgenerator gibt Signale IMWA zur Schreibadressierung des Bildspeichers IM, ein Signal IMWE zur Freigabe eifies Schreibvorgangs in dem Bildspeicher und ein Signal IMDI für die Eingangsdaten in dem Bildspeicher ab. Die Steuereinheit 30 erzeugt Signal IMRA zur Leseadressierung des Bildspeicher, Signale SYNC zur Fernseh-Ablenksynchronisation und Signale LUM zur Steuerung der Helligkeit dea Bildschirms. Die Signale IMAB der gemultiplexten Adressen werden dem Bildspeicher 20 zugeführt.
Fig. 3 zeigt einen Bruchteil des graphischen Bildes; dieses ist ausgehend von einer Menge raus n2 Punkten gebildet, die an den Schnittpunkten der waagerechten und senkrechten Linien eines Gitters liegen. Diese diskreten Punkte können »SCHWARZ« oder »WEISS« sein. Die Erzeugung eines Vektors mit dem Ursprung (X1, Y,) und den Komponenten A/ und ,V besteht darin, daß ί ine Untergruppe P aus Punkten der Menge ε erzeug! wird, so daß bei einem Beobachter der Eindruck entsteht, daß ein Segment bzw. ein Abschnitt einer Geraden zwischen den Punkten (,V,. Y1) und (X1 + M. Y1 + N) vorhanden ist.
Fig. 4 zeigt die Gleichung N ■ χ = My der angestrebten Geraden. Ein Vektor wird durch eine Folge vor Punkten dargestellt, wobei jeder Punkt auf jeder senkrechten Linie in einem Abstand von der theoretischer Geraden liegt, der kleiner oder gleich einem 'Λ Gitterfeld ist; wenn zwei Punkte sich im Abstand von einem V: Feld darüber oder darunter befinden, so wird nur der obere Punkt berücksichtigt; alle so zur Darstellung eines
■»5 geraden Abschnittes aufgeschriebenen Punkte liegen in dem Raum, der zwischen den zwei Geraden mit folgenden Gleichungen liegt:
/ N ■ χ = M (y - '/:) \N-x = M (y+'h) 50
Bei dem besonderen dargestellten Beispiel sind Af = 17 und N = 13. Der Vektorgenerator ist in F i g. 5 a äußerst vereinfacht dargestellt; der Generator ist ein Amomat dessen Ein
gangsdaten die Projektionen M und N des Vektors auf die X- und Y- Achse des graphischen Billdes sind. Die Grä
Ben M und N werden also in der Form| M | und | N | und mit ihrer zugeordneten Richtung geliefert. Der Genera·
tor erzeugt Signale CK ■ Y und CK ■ X zum Inkrementieren der Register Y und X des Schrei b-Anzeigers sowie ein Signal !MWE zur Freigabe des Eingangs (WE) bei einem Einschreibvorgang in den Bildspeicher IM.
Der Generator arbeitet unter Steuerung eines Takitsignals CKIN; seine Funktion wird durch ein Steuersigna CMD.VECT. ausgelöst und hängt von einem Freigabesignal GUWE eines Vektor-Zeichenvorgangs ab.
Durch den Generator können lange Vektoren VECT. und kurze Vektoren VECT.S sowie Vektoren mit bevor Ni zugter Richtung aufgezeichnet werden. Im Falle der Vektoren VECT. werden die Größen| M |und| N |sowie die
zugeordneten Zeichen ARG. getrennt festgelegt; z. B. werden | M | und | N !jeweils durch ein Wort aus einerr
Oktett und ARG durch drei niederwertige BiU eines Steuerwortes von einem Oktett bezeichnet, wodurch e<
zum einen ermöglicht wird, daß
-255 < M < 255
-255 < N < 255
und zum anderen, daß 8 in F i g. 6 a dargestellte und in der zugehörigen, in F i g. 6 b aufgeführte Richtungen ver
fügbar sind. Diese Darstellungsweise ermöglicht es, über den Quadranten zu verfugen, in dem der Vektor liegt, und eventuell über die Richtungen 0,2,4 und 6, in denen eine der Komponenten des Vektors verschwindet. Für den Fall, wo die aufzuzeichnenden Vektoren parallel zu den Achsen oder Winkelhalbierenden des graphischen Bildes sind, gestatten es spezielle Codewörter (siehe Tabelle 1) H'18'bis ΗΊ F', nur eine einzige Größe M oder N zu berücksichtigen, wobei dann die Projektionen der Vektoren in den beiden Richtungen X und Y gleich gewählt werden nach der Bedingung
IM I = I /V I = sup. (reg. | M \, reg. | /V | ),
z. B. I M I= 100 Einheiten und|/V| = 0 Einheiten; durch das Codewort H'l 8'(Richtung 0) kann ein Vektor der Länge 100 parallel zur A"-Achse des graphischen Bildes gezeichnet werden. Kurze Vektoren VECT.S werden durch ein Oktett gemäß dem Format nach Fig. 6c bezeichnet, also
I A/ I < 3 und I/V I < 3;
die Codewörter dieser Vektoren VECT.Ssind M'80'bis H1FF'und sind in Tabelle 1 angeführt; die Codewörter der langen Vektoren VECT s\x\a H'lO'bis H'l T. Diese Art der Bezeichnung der verschiedenen Vektortypen ermöglicht die Herabsetzung der erforderlichen llnformationsmenge zur Beschreibung eines aus Strichen gebildeten graphischen Bildes auf ein Minimum.
Das Aufzeichnen der Vektoren kann punktiert erfolgen, und hierfür ist ein 2-Bit-Steuerregister CNTRLREGfST. vorgesehen (Fig. 7), das die Art des Striches bezeichnet, z. B.:
Code 00 - durchgehender Strich
Code 01 - punktierter Strich (ein vorhandener Punkt und ein unterdrückter Punkt) Code 10 - gestrichelte Linie (zwei vorhandene Punkte und zwei unterdrückte Punkte)
Code 11 - Strichpunktierung (10 vorhandene und 2 unterdrückte Punkte, 2 vorhandene Punkte, 2 unterdrückte Punkte)
Die Einrichtung, die es gestattet, nicht durchgehende Striche herzustellen, ist für einen gegebenen Vektor zu Beginn eines Zeichenvorgangs immer in derselben Stellung, wodurch sichergestellt wird, daß die Löschung eines punktierten Vektors stets möglich ist, ohne ihn durchgehend zu machen, allerdings unter der Bedingung, daß die Zeichenrichtung des Vektors dieselbe ist.
Der in Fig. Sagezeigte Vektorgenerator kann in zwei Teile unterteilt werden, wie dies in Fig. 5bgezeigt ist, wo/., die Frequenz des Taktsignals CKIN ist und/v und/,, die Ausgangsfrequenzen der lnkrementierungs/ Dekfcfncniierungs-Signaie der Register X und Y des Schrcib-Anzcigcrs sind. Die beider. Blöcke A und 5 sind
diskrete Frequenzmultiplikatoren, die die Eingangsfrequenz fm mit einem Faktor τ: multiplizieren (P < K). Es gelten also die folgenden Beziehungen:
JV y Jilt AC
K > sup (M ■ N) oder in einer Form mit der Zeit »r« als Variable
Λ >S (
0 < / < KTo S
To = Uf1. j
Das Zeichnen eines Vektors belegt K Perioden des Taktsignals CKlN. Die verschiedenen möglichen Vektorge- |
neratoren unterscheiden sich durch die Ausbildung des diskreten Frequenzmultiplikators und durch die Anzahl der erforderlichen Taktperioden zum Zeichnen eines Vektors gegebener Länge. Fig. 7 zeigt die wesentlichen, dem Vektorgenerator zugeordneten Elemente:
- ein Steuerregister (CNTRL-REGtST..). welches das Steuerwort enthält, durch weiches insbesondere die Art der Striche und die Einschreibweise der Daten des Vektors »Markierung oder Löschung« bestimmt werden können;
2V2U23U
'■■■ - ein Befehlsregister (CMD.REGIST), das die Befehlswörter enthält, insbesondere die Wörter, die den
Beginn der zu zeichnenden Vektoren bezeichnen;
Datenregister: ein Register| M \ VECT.REGIST., das die Größe der AT-Vektorkomponente des graphischen Bildes enthält, und ein Register | .V | VECT.REGIST., das die Größe der K-Vektorkomponente des graphi-
y. 5 sehen Bildes enthält;
jfi - ein bidirektionaler Datenbus MPDB, der mit den verschiedenen Registern verbunden ist; und
/;■ - ein Adreßbus MPAB und seine Einrichtungen zum Decodieren der Adfeßwörter.
_v Der Vekforgenerator wird gesteuert von einem Taktsignal CKIN und einem Signal GUWE für die Freigabe des
;; lo Zeichnens eines Vektors, der von der Steuereinheit geliefert wird.
Ik Der Vektorgenerator gibt an die Register X und Y des Schreib-Anzeigers folgende Befehlssigrutle ab:
EN· X. EN ■ Y, U/D ■ X, U/D ■ Y sowie das Taktsignal CKIN; er liefert femer dem Bildspeicher IM ein Signal IMWE zur Freigabe eines Schreibvorgangs.
Er gibt an die Steuereinheit 30 ein Signal (VGBY) ab, das die Perioden bezeichnet, während welcher der :/ 15 Generator »besetzt« ist.
\ij Eine erste Art eines möglichen Multiplizierers ist der diskrete Multiplizierer, der besser unter der handelsübli-
i'1 chen Bezeichnung BRM-Schaltung (»Binary Rate Multiplier«) bekannt ist. Das Schaltbild einer BRM-Schal-
>g; tung ist in Fig. 8 gezeigt. Diese Schaltung enthält einen Synchronzähler mit »Λ« Abschnitten (Bits) mit der
ii5 Bedingung, daß A = 2" = max (M, N), und eine Digitaleinrichlung, die aus /> UND-Digitalschaltungen gebildet
2u ist, und bei dem gezeigten Ausfuhrungsbeispiel einer BRM-Schaltung (4 Bits) befinden sich die niedrigen Werte ;;■: des Zählers rechts und die der Größe N links wobei nur die Komponente des Rangs 2 des Ausgangssignals ange-
1 geben ist; die Ausgänge der UND-Schaltungen werden von einer ODER-Digilalschaltung zusammengefaßt.
;; Wenn das /-te Bit von N den Pegel »1« aufweist, so entsteht jedesmal ein Impuls am Ausgang der Anordnung,
wenn die Stufe des Rangs (b - i'■ - 1) des Zählers auf Pegel »1« geht. Da eine Stufe des Zählers mit dem Rang α r 25 mit einer Frequenz f„/l ff+l kippt, gibt das /-te Bit von N ein Ausgangssignal auf der Frequenz
Ύ f /?*-' — f -£—
y. Jin11· Jm «4
ff 30 frei. Es wird also eine Frequenzteilung von /V/2* mit der Basis 2 erreicht.
i| Die erforderliche Zeit zum Erhalten von N Impulsen am Ausgang der Anordnung ist unabhängig von N und
I gleich 2* · To. mit To = Mf111, so daß gilt: A = 2" = max (M. N).
§1 Das Zeitdiagramm der Signale ist für N = 6 in Fig. 9a gezeigt, wo der Inhalt des Zählers gegenüber dem
;■:. Bezugssignal CNT gezeigt ist; es ist eine sehr ungleichmäßige Verteilung der Ausgangsimpulsc der BRM-Schal-
;i 35 tung zu beobachten.
ü Ein anderer Typ eines diskreten Frequenimultiplizierers, der eine bessere Verteilung der Impulse als die
g BRM-Anordnung liefert, ist ein »/V-fachVzählcr, der die Eigenschaft besitzt, bei jeder Eingangs-Taktperiode
J um N Einheilten hochgezähii zu werden. Das symbolische Schaltbild eine /V-iaeh-Zähiers isi in Fi g. 10 a gezeigt.
^, Der Ausgang D stellt den Überlauf des Zählers dar; er liegt auf Pegel »hoch«, wenn (m +N)t(m +N) Modulo
I 40 2\ worin m der Wert des vorhergehenden Inhalts und b die Anzahl von Abschnitten (Bits) des Zählers sind. Jj Wie in Fig. 10b gezeigt ist, kann ein /V-fach-Zähler geschaffen werden, indem ein Schieberegister 1, ein VoII-
p addierer 2 und eine UND-Schaltung 3 vereint werden, wobei das Register und der Addierer b Abschnitte auf-
|j weisen. Der Überlauf D, also hier der Übertrag des Addierers, erfolgt /V-mal häufiger als der Übertrag oder Über-
I laufeines herkömmlichen Zählers mit derselben Anzahl von b Abschnitten; es gilt also
-; J um' ~*f, Jift
fi und es ist eine Anzahl von 2* Impulsen am Eingang erforderlich, um N Ausgangsimpuise zu erhalten. Wenn q
|| so der Quotient von 2* durch N ist, so kann die Zahl der Taktperioden CK zwischen zwei aufeinanderfolgenden g Impulsen am Ausgang nur q oder q + 1 Einheiten betragen. Die Ausgangsimpulse stellen die bestmögliche zeit-
p liehe Aufteilung dar, wenn berücksichtigt wird, daß in einem diskreten Frequenzmultiplizierer ein Ausgangsim-
p puls notwendigerweise zeitlich mit einem Eingangsimpuls einhergeht.
il Wenn der A'-fach-Zähler, genauer das Register des Zählers, mit dem Wert Ό' initiiert wird, so tritt der erste
j 55 Ausgangsimpuls beim q-tca oder (q + l)-ten Taktimpuls auf, und wegen der Periodizität von 2* To einer Folge
Sj aus N Ausgangsimpulsen fallt der /V-te Ausgangsimpuls genau mit dem 2*-ten Taktimpuls zusammen, wie dies
im Zeitdiagramm der F i g. 9 b gezeigt ist. Die Ausgangsimpulse werden in einen besseren »Rahmen« gefaßt, » enn das Register mit dem Wert 2* ' initiiert wird, wie dies im Zeitdiagramm der F i g. 9 c gezeigt ist In den F i g. 9 b und 9 c ist die Anzahl der Zählerabschnitte 6=4 und der Wert N = 6, der Inhalt des Registers derselbe, und w) zwar gegenüber der Bezugsgröße REG., in Hexadezimalschreibweise.
Eine andere Mulliplizieranordnung ist ein Modulo-A#-Zähler, ein »Einfach«-Zähler, der symbolisch in F i g. 11 gezeigt ist. Der M odulo-M-Zähler gestattet es, z. B. vom Wert -M bis zum Wert -1 zu zählen; hierfür muß lediglich der Zähler auf den Wert -M geladen werden, wenn der Ausgangszustand -1 (Ausgangsübertrag) bekannt ist. Der Ausgangsübertrag erfolgt M-mal weniger häufig als das Taktsignal CA'; es gilt also
Jaul ~ "TT Jtn M
Venn die Eigenschaften des /V-fach-Zählers und des Modulo-M-Zählers kombiniert werden, so kann ein N-fach-Modulo-A/-Zähler geschaffen werden, der in F i g. 12 gezeigt ist. Dieser wird also verwendet, um folgende Beziehung herzustellen:
/ = 77 /,. mit 0 t Af < 2*
Λ-/. und N<M.
K ist also gleich M anstelle von 2" bei der BRM-Schaltung oder bei dem einfachen /V-fach-Zähler. iu
Es muß also ein Zähler geschaffen werden, der von dem Wert -M bis zu dem Wert -1 durch Sprünge von N hochgezählt wird, und das bedeutet, daß M die Aufgabe erfüllen muß, die bei dem /V-fach-Zähler K = 2b erfüllte; dieser Wert tritt bei dem Überlauf auf; zu diesem Zeitpunkt ist nämlich der talsächlich dem Inhalt des Registers hinzugefugte Wert gleich N - 2"; es müssen also N-M Einheiten hinzugefügt werden; da ein Überlauf erfolg?, gehen also in diesem Falle 2b Einheiten verloren. Hinzugefügt werden muß also genau Λ' - M + 2* = {N - M) Modulo 2*. da N < M.
Die Werte m des Registers mit -2*<m < -M sind verboten. Das Register darf also nicht auf einen dieser Werte initiiert werden. Aus dem vorausgehenden Hinweis bezüglich der Initiierung des /V-fach-Zählers wird durch Analogie abgeleitet, daß das Register vorteilhafterweise auf den Wert -M12 initiiert werden kann (die Abrundunpsfehler können schlimmstenfalls die Ausgangsimpulse nur um eine Täktperiode CK verschieben).
Zur Verwirklichung eines /V-fach-Modulo-Af-Zählers wird ein Multiplexer 4 zwischen den Eingang des Addierers und die Eingangsdaten N und (N- M) modulo 2* eingefügt. Wenn die Addition des Wertes N zu einem Überlauf führt, so erzeugt die Addition des Wertes (N - M) modulo 2* erst recht einen Überlauf. Es gilt nämlich (N-M) mod 2* = N - M + 2\ denn N<M, oder N - M + 2* > /V, denn M < 2". Wenn aber die Addition von N keinen Überlauf verursacht, so kann die Addition von N-M einen solchen verursachen, und dieser Zustand ist stabil, ohne der erwartete Zustand zu sein. Hinsichtlich der praktischen Verwirklichung der Schaltung gilt jedoch, daß die Schleifenbildung Addierer-Multiplexer unstabil ist.
Aus diesen beiden Gründen wird am Ausgang des Addierers eine nicht-transparente Kippschaltung eingefügt, wie dies in Fig. 13a gezeigt ist. Jede Taktperiode CK enthält dann folgende Phasen:
Eingangsbefehl des Multiplexers auf 0 setzen
eventuellen Überlauf des Addierers abtasten
Multiplexer durch Abtastwert steuern lassen
Ausgang des Addierers schließlich im Register abtasten.
Die Formen der zu den Anordnungen gehörenden Signale sind in Fig. 13b gezeigt.
Wenn davon ausgegangen wird, daß M und N die kartesischen Komponenten X und Y eines Vektors sind, der im ersten Oktant liegt, so kann überprüft werden, daß die vorstehend beschriebene Anordnung es gestattet, praktisch einwandfreie Vektoren zu zeichnen. Wenn nämlich niemals eine Inkrementierung längs 'y' ohne Inkrementierung längs V erfolgt, so wird für jede Taktperiode ein neuer Punkt des Vektors geschaffen, mit: der Folge, daß die Zeichengeschwindigkeit des Vektors optimal ist. Es kann aber auch gezeigt werden, daß alle Punkte des gezeichneten Vektors in einem Raum liegen, der definiert ist durch
Nx <M (y + '/:)
Ferner differieren die Abweichungen zwischen den Segmenten in Richtung dery-Achse höchstens um einen Schritt in Richtung der x-Achse; der bezüglich des Wertes für die Initiierung gegebene Hinweis zeigt, daß die Segmente der Enden die Hälfte (bis auf eine Einheit) dieser Abweichungen betragen, wodurch eine einwandfreie Anknüpfung von zwei gleichen Vektoren ermöglicht wird, wie dies in Fig. 14 gezeigt ist.
Gemäß der bisherigen Beschreibung enthält die Anordnung noch keine Einrichtung, die es gestatten würde, die Zeichenphase (Länge des gezeichneten Vektors) zu bestimmen. Die so gebildete Vorrichtung ermöglicht das Zeichnen einer Geraden der Steigung N/M. Um die Anordnung nach M Impulsen anzuhalten, kann ein Zähler vorgesehen werden, der vom Anfangswert -M bis zum Anhaltwert -1 hochbezahlt wird (mit Schritten jeweils einer Einheit). Eine weitere Möglichkeit besteht darin, den Wert von X zu verwenden, der im ^-Register des Schreib-Anzeigers verfügbar ist; bei diesem praktischen Beispiel ist der Ursprung X des Vektors nicht gleich Null, und dies führt dann dazu, daß der Anfangswert X1 gespeichert wird, die Größe M hinzugefügt wird und das Ergebnis mit dem laufenden Wert X verglichen wird.
Bisher wurde das Zeichnen eines Vektors betrachtet, der in dem ersten Oktanten liegt. Es werden nun die Einrichtungen beschrieben, die es gestatten, einen Vektor auf der Gesamtheit der Oktanten aufzuzeichnen. Es wird auf Fig. 13 a Bezug genommen. Ersichtlich können die Eingänge des Multiplexers vertauscht werden und die Ausgangssignale zu den Registern X und Y des Schreib-Anzeigers geleitet werden, je nach Rang der Größen M und N. Diese Lösung benötigt einen Vergleicher zum Vergleichen zwischen den Größen M und N, dessen Ausgangssignal die Multiplexer steuert, die an den Eingängen und Ausgängen der Anordnung vorhanden sind. Wenn aber alle Werte der in F i g. 10 b gezeigten Anordnung durch ihre entgegengesetzten Werte ersetzt werden und die Werte /V und M permutiert werden, so wird ein Ai-fach-Moduio-zv-cA/ < N) Zähler geschaffen, und in diesem Fall liegt der Inhalt des Registers zwischen den Werten Null und N - 1, und es wird ein Ausgangsimpuls erzeugt, wenn kein Überlauf vorhanden ist, wie dies aus dem Schaltbild nach Fig. 15 hervorgeht Alle bisheri-
gen Erläuterungen können leicht übertragen werden; insbesondere muß die Iniiiierung des Registers den Wert N/l haben, und der Anhalttest wird von einem weiteren Zähler durchgeführt, der vom Wert N auf den Wert 1 während des Zeichnens heruntergezählt wird. Aus dem bereits angegebenen Grund muß eine Kippschaltung am Ausgang des Addierers eingefügt werden. Das Schaltbild der Anordnung ist dann das in Fig. 16 gezeigte. Die Anordnungen nach F i g. 13 a und Fi g. 16 können zusammengefaßt werden, um eine einzige Anordnung zu erhalten, die in Fig. 17 gezeigt ist. Der Multiplexer 4 wird dann ein solcher mit drei Eingängen. In Fig. 17 ist ein zweiter Addierer ί gezeigt, der die Operation (N- M) mod. 2* durchführt, und hierfür wird an den Eingang 1 dieses Addierers der Wert N und an den Eingang 2 der Wert M angelegt Der Übertrag am Ausgang S stellt also N >M dar. Dieser Ausgangsüberlauf steuert das hochwertige Bit (MSB) des Multiplexers 4, während das nie-
drigwertige Bit (LSB) des M ultiplexers durch den Ausgang eines zweiten Multiplexers gesteuert wird, der durch ' *
Elemente 7,8 und 9 gebildet ist. Wenn die Steuerbefehle des M ultiplexers auf Pegel »11« sind, so führt der Aus- /
gang 5 des Multiplexers 4 den Wert M und nicht -M. Es muß also eine Einheit am Eingang C1n des Addierers 2 '
über eine UND-Schaltung 1·· zugefügt werden. Eine vollständige Symmetrie der Anordnung wird dadurch :;
erreicht, daß Verknüpfungsschaltungen 110 und 120 zur Leitung der Ausgangssignale zu ODER-Schaltungen
13C und 140 hinzugefügt werden. k
Die initiierungsoperationen der Anordnung sind: ■■:'
wenn N <M, Laden des Wertes -M in einen Anhalttest-Aufwärtszähler und in das Register 1, Verschieben dieses Registers nach rechts, wobei das höchstwertige Bit auf den Wert »1« gesetzt wird (Teilung durch 2); U
- venn M < N, Laden des Wertes W in einen Anhalttest-Abwärtszähler und in das Register 1 und Verschieben dieses Registers nach rechts, wobei das höchstwertige Bit dieses Registers auf den Wert »0« gesetzt wird.
Dies kann folgendermaßen geschehen: Der Ausgang des Addierers 2 lädt außer dem Register 1 einen Aufwärts/Abwärts-Zähler; der Steuerbefehl D/U dieses Zählers ist dann das Ausgangssignal (N < M) des Addie rers 6. Die Initiierungssequenz der Anordnung ist:
a) Setzen des Registers 1 auf Inhalt Ό' ■
b) Setzen der zwei Steuerbefehle des Multiplexers 4 auf einen identischen Wert (W > M) c) Laden des Ausgangssignals des Addierers 2 in das Register 1 und den Anhalttest-Zähier
d) Verschieben des Registers um einen Schritt nach rechts, wobei das höchstwertige Bit auf den Wert (N >M) gesetzt wird.
Wenn folgende Elemente verwendet werden:
- ein Register 1 mit einem synchronen Null-Rückstelleingang
- ein Register 1 und ein Anhalttest-Aufwürts/Abwärts-Zähler mit einem synchronen Ladeeingang, so sind die Befehlssignale einer Initiierungsoperation die in Fig. 18b gezeigten, worin
Signal A dem Setzen des Multiplexers entspricht,
- Signal B dem Null-Rücksetzen des Registers (Vorrangbefehl);
Signal C dem Laden des Anhalttest-Aufwärts/Abwärts-Zählers entspricht;
- Signal D der Verschiebung und dem Laden des Registers entspricht.
Es können also vier Phasen betrachtet werden:
die Phase 0, die einer Ruhephase der Anordnung entspricht, während welcher der Inhalt des Registers beliebig ist;
- Phase 1 der Initiierung, deren Dauer gleich einer Taktperiode CKIN ist, wobei am Anfang derselben der Inhalt des Registers auf den Wert 0 zurückgesetzt wird;
Phase 2 der Initiierung, deren Dauer gleich einer Taktperiode CKIN ist, wobei zu deren Beginn das Register geladen wird;
- Phase 3 bzw. die tatsächliche Zeichenphasc eines Vektors, während welcher die Ausgänge CA" - X und CK ■ Y der Anordnung freigegeben werden.
Die Initiierungssequenz kann von einer Anordnung aufgestellt werden, die aus einem Hilfszähler gebildet ist, wie dies in F i g. 18 a gezeigt ist. Der Zähler 200 wird an seinem Eingang CK durch das Taktsignal CKlN hochgezühlt, und seine Funktion wird durch das Vorhandensein eines Steuersignals (CMD.VECT) ausgelöst.
M) Die Funktion der Anordnung hängt üb von einem Signal [GUWE), das eine Zeichenoperation freigibt. Der Ausgang E wird dii/.u verwendet, den Anhalttcst-Aufwärts/Abwärts-Zähler freizugeben. Der Ausgang B wird zur Null-Rücksut/ung des Registcrinhalts verwendet. Der Ausgang C wird zum Laden des Anhalttest-Aufwiirt.s/ Abwärts-Zählcrs verwendet. Der Ausgang D wird zum Laden und Verschieben des Registers verwendet; der Ausgang A wird zum Setzen des Multiplexers verwendet. Das Erkennen der 2:uslände (-1 und aufwärts) oder (I und abwärts) des Anhalttest-Aufwärts/Abwärts-Zählers zieht eine synchrone Null-Rücksetzung des Zählers 200 am Anschluß CL nach sich. In der Praxis kann der Zustand (1 und abwärts) eines Zählers schwer erkannt werden; es ist einfacher, den Zähler von M auf 0 und von (-Λ/ - I) auf -1 weiterlaufen zu lassen, indem er während der Initiierungsphase 2 um eine Taktperiode hochgezählt wird, während welcher die Ausgänge CK ■ X und
CK ■ Y der Anordnung nicht freigegeben sind. Dies beinhaltet, daß der Anhalttest-Aufwärts/Abwärts-Zähler auf den Wert (-M -1) initiiert wird, daß also der Eingangsübertrag des Addierers 2 während der Initiierungsphase vermieden wird. Der Ausgang F, Zustand des Zählers 200 auf 11', kann dazu verwendet werden, um die Ausgänge CK · X und CK ■ Y der Anordnung freizugeben. Durch den Ausgang G wird über ein Signal (VG.BY) verfügt, welches anzeigt, daß der Vektorgenerator besetzt ist,
Gewählt wird eine Freigabe des Anhalttest-Aufwärts/Abwärts-Zählers während der Initiierungsphasen 2 und 3, wodurch während der Phase 2 und während der ersten Periode der Phase 3 in den Bildspeicher eingeschrieben werden kann, und zwar an der Ursprungsadresse des Vektors, denn die ersten aktiven Flanken an den Ausgängen CK ■ X und CK ■ Y treten am Ende der ersten Periode der Phase 3 auf. Die Freigabe des Anhalttest-Aufwärts/ Abwärts-Zählers während der Phase 2 der Initiierungsoperation ist vorteilhaft, wenn ein Vektor gezeichnet werden soll, für den W = M = 0; ab der Phase 2 wird dann der Anhalttest-Aufwärts/ Abwärts-Zähler auf den Wert N = O geladen, und es wird der Zustand (0 und abwärts) erkannt, der eine Null-Rücksetzung des Zählers 2·· befiehlt. Von der Phase 2 erfolgt also direkt ein Sprung zur Phase 0, nachdem der Adreßpunkt (X1. >,) in dem Bildspeicher während der Phase 2 markiert ist.
Allgemein gilt, daß wenn sup. (| M |, | N |), die Dauer der Phase 3 m To und die Gesamtdauer zum Zeichnen ι s eines Vektors (m + 3) To ist, gerechnet vom Zeitpunkt der Aktivierung durch das Signal CMD.VECT. an.
Die vorstehenden Betrachtungen bezüglich der Initiierungsoperationen gestatten es, den /V-fach-Modulo-A/-Zähler gemäß dem Schaltbild in Fig. 19 zu vervollständigen. Der Anhalttest-Aufwärts/Abwärts-Zähler ist mit ISO bezeichnet. Er empfangt das Freigabesignai E und das Ladesigna! C, die von der iniiiicruRgssnordnurig erzeugt werdende Ausgangssignale des Addierers 2 an seinem Eingang D und das Zählrichtungssignal an seinem Eingang D/U; er erzeugt an seinem Ausgang R ein Anhaltesigna! H, welches die Null-Rückstellung der Initiierungsanordnung gestattet Das Register 1 empfängt das Signal B zur Rücksetzung des Inhalts auf Null an seinem Eingang CL und das Lade- und Srhiebesignal D an seinem Eingang L/S. Die Hinzufügung des Multiplexers 160 ermöglicht es, die zwei Steuerbefehle des Multiplexers 4 auf denselben zuvor angegebenen Wert zu setzen; er empfängt das Steuersignal A, das gleichzeitig an den dritten Eingang der UND-Schaltung 100 angelegt wird. Der Zähler ISO, das Register 1 und die D-Kippschaltung empfangen an einem Eingang EN das Signal GUWE, welches einen Vektorzeichenvorgang freigibt. Zu beachten ist, daß es nicht unbedingt erforderlich ist, dieses Signal GUWE an die Kippschaltung 5 anzulegen; dadurch wird es jedoch möglich, den elektrischen Stromverbrauch der Anordnung zu reduzieren, indem verhindert wird, daß der Multiplexer 4 und der Addierer während einer Zeichenoperation dauernd arbeiten.
Γτη vollständig zu sein, benötigt der Vektorgenerator zusätzlich zu dem W-fach-Modulo-A/-Zähler und der Aktivierungsschaltung und Initiierungsschaltung, die vorstehend beschrieben wurden, weitere Hilfseinrichtungen: eine Einrichtung zum Identifizieren der Vektorrichtung, eine Einrichtung zum Zeichnen von normalen Vektoren VECT oder Kurzvektoren VECT.S oder aber von Vektoren mit bevorzugter Richtung sowie eine Einrichtung zum Punktieren der Linie eines Vektors.
Die Länge (Anzahl der Bits) der Bestandteile des Vektorgenerators wird von der maximalen Größe der Komponenten M und jV der Vektoren bestimmt:
0 <|ΛΜ<255
0<|A/|<255
wodurch die Länge dieser Bestandteile auf 8 Bits festgelegt wird.
Die Eingangsdaten des Vektorgenerators sind nicht die bisher betrachteten Größen M und N, sondern | M \ und INI, während die Vorzeichen dieser Größen auf 3 Bits eines Codeworts angegeben werden. Der Schreibteil des Vektorgenerators berücksichtigt nur die Größen | M \ und | N |, während die Vorzeichen dieser Größen von den Registern X und Y des Schreib-Anzeigers berücksichtigt werden.
Die die Richtung (ARG) der Vektoren angebenden Bits sind die niedrigwertigen Bits eines im Befehlsregister (CMD.REGIST) gespeicherten Wortes; sie werden von einer in Fig. 20 dargestellten Decodierschaltung 300 decodiert. Das Bit mit dem Rang 2 gibt direkt die Zählrichturtr des Registers Y des Schreib-Anzeigers an; der DecodermitdenBauelementen310,320 und 301 ermöglicht die Bildung d-.s Signals, das die Zählrichtung des .^-Registers des Schreib-Anzeigers angibt.
Wie weiter unten erläutert wird, gestatten es die Befehlssignale E · X und E ■ Y, zum einen die Ausgänge des Schreibteils freizugeben und die möglicherweise verschwindenden Werte der Größen M und N zu berücksichtigen. Wenn nämlich angenommen wird, daß ein Vektor der Richtung 2 gezeichnet werden soll, ARG (M = 0 und N>0), und daß der Inhalt der Registerl N \REGISTuna\ M \REGIST5 bzw. 100 beträgt, so wird das Register X des Schreib-Anzeigers nicht inkrementiert; der Schreibteil, der die Daten IM] und \N\ empfängt, ermittelt jedoch, daß | M \ t\N | und gibt fünf Inkrementierungen ab, und zwar in Richtung Y, die auf 100 Perioden des Taktsignals verteilt sind. Um hierbei die Zeichengeschwindigkeit zu vergrößern, muß der Eingang | Af | des Generators auf Null gesetzt werden, und dieser Vorgang des Nullsetzens darf nicht auftreten, wenn ein Vektor mit »bevorzugter Richtung« gezeichnet wird, denn in diesem Falle müssen, wie eingangs in der Beschreibung dargelegt wurde, 100 Inkrementierungen längs der K-Achse erfolgen.
Die Einrichtung zur Erzeugung der Eingangsdaten | N | und | M | des Schreibteils des Vektorgenerators sind in F i g. 21 gezeigt. Wie bereits in F i g. 20 angegeben ist, werden die Bits A R G (Richtungscode der Vektoren) von einer Einrichtung 300 decodiert. Die Daten| M |und| N |sind in zwei Registern 70,71 verfügbar, und die einem kurzen Vektor VECT.S entsprechenden Daten sind auf einem Oktett in einem Befehlsregister 72 CMD.REGIST verfugbar. Je nach Art des zu zeichnenden Vektors - VECT. oder VECT.S - werden die Register M, N oder das Register CMD von den Multiplexern 73 und 74 für einen Befehl VECT.S auf niedrigem Pegel ausgewählt.
Eine Einrichtung zum Punktieren der Linien ist in Fig. 22a gezeigt. Sie enthält einen Zähler 600 mit vier
Abschnitten (Bits) und einen Multiplexer 61 mit vier Eingängen und einem Ausgang. Der Multiplexer wird durch zwei Bits des Befehlswortes gesteuert, das in dem Register CNTRL.REGIST enthalten ist, wobei die Eingänge euter ODER-Schaltung 62 an die Abschnitte mit den Rängen 1 und 3 (Ä und D) angeschlossen sind. Das Zeitdiagramm der Signale für die Erzielung der drei Punktierungsarten ist in Fig. 22b wiedergegeben. Die S Neuinitiierung des Zählers durch den Eingang CL (Null-Rückstellung) kann in einer der Initiierungsphasen des Vektorzeichnens erfolgen, wodurch gewährleistet wird, daß die Punktierung der Striche mit einer Folge beginnt, die bei jedem Zeichenvorgang eines Vektors dieselbe ist
Es ist hier anzumerken, daß dieser Zähler 600 und der in Fig. 19 gezeigte Zähler 150 dieselbe Aufgabe erfüllen, wobei von letzterem die vier niedrigwertigen Ausgänge verwendet werden können. In diesem Falle begin- nen zwei verschiedene Vektoren nicht notwendigerweise mit derselben Punktierungsfolge, es ist jedoch gesichert, daß derselbe Vektor immer mit derselben Folge beginnt, und dies ist ausreichend, um zu gewährleisten, daß eine gegebene Figur in allen Fällen gelöscht werden kann, indem sie neu gezeichnet wird, nachdem der Einschreibmodus von »Markierung« auf »Löschung« geändert wurde. Fig. 23 zeigt die Zuordnung des Multiplexers 61 zu dem Anhalttest-Zähler 150 des Vektorgenerators. Der Ausgang S des Multiplexers ist an einen ersten
IS Eingang einer UND-Schaltung 63 angelegt, die ferner das Freigabesißnal GUWE und das Signal E des Zählers 150 empfangt.
Fig. 24 zeigt in Form eines Schaltbildes die Gesamtheit de» Vektorgenerators. Da die Register X und Y des Schreib-Anzeigers synchrone Register sind, die von dem Taktsignal CATiW gesteuert werden, sind die Ausgangssignale des !/ektorgenerators nicht CK X und CK Y sondern EN ■ X und EN ■ Y, mit der Annahme XREGlST und Y REGIST. Alle Elemente des von dem Taktsignal CKlN gesteuerten Generators empfangen das Schrei b-Freigabesignal GUWE, damit ihre Funktion außerhalb der Schreibperioden angehalten werden kann.
Fig. 25 zeigt als elektrisches Schaltbild eine Ausführungsform des Vektorgenerrtors unter Anwendung von üblichen Schaltungsbausteinen mittlerer Integrationsdichte (MSI) und üblicher Bauelemente geringer Integrationsdichte (SSI).
Das Register 1 ist gebildet aus zwei Elementen LS195; der Addierer 2 ist gebildet aus zwei Elementen LS 283; die Abtast-Kippschaltung 5 ist gebildet aus einer Einheit LS 74, der Anhaltzähler 150 ist aus zwei Elementen LS 169 gebildet; der Punktierungsmuitiplexer 61 ist durch ein Bauelement LS 153 gebildet; der Multiplexer 8 ist aus vier Bauelementen LS 153 gebildet;
der Multiplexer 16 ist aus einem Bauelement LS 157 gebildet; der Addierer 6 ist aus rwei Bi:.elcmenten LS 283 gebildet: die Initiierungsanordnunc ist aus einem Bauelement LS 163 gebildet; die Multiplexer 73 und 74 sind sweils aus einem halben Bauelement LS 157 gebildet. Fig. 26 zeigt eine Ausfiihrungsförm der Speicherregister der Vektorkomponenten M und N, wobei folgende
Bauelemente zum Einsatz gelangen:
- für das Register M REGIST zwei Bauelemente LS 175;
- für das Register N zwei Bauelemente LS 175;
- die Dreifachzustand-Sperrschaltungen, die es gestatten, die Daten einzuschreiben und den Inhalt dieser Register auszulesen, sind aus zwei Bauelementen DM 8097 gebildet.
Außer den bereits erwähnten Vorzügen besteht ein weiterer Vorteil der Erfindung darin, daß eine Ausführung
in MOS-Technik (Metall-Oxid-Halbleiter) mit hoher Integrationsdichte (VLSI) möglich ist und daß eine hohe
Zeichengeschwindigkeit eines graphischen Bildes erreicht wird, da in jeder Taktperiode ein Vektorpunkt
gezeichnet wird, der der Erzeugung eines Punktes des graphischen Bildes entspricht, wenn die kurze Zeitspanne vernachlässigt wird, die der Initiierungsperiode des Generators zukommt.
Es sind weitere Ausfuhrungsformen der Erfindung vorgesehen, insbesondere solche, bei denen die Größe der Parameter M und N verschieden von den angeführten Werten sind, das Format der Befehlswörter und der Daten kann ein anderes sein, und die Vektor-Richtungscodes können an die Darsteliungsweise der Vektoren in der Steuereinheit angepaßt werden.
Eine Anwendung der Erfindung ist bei den verschiedenen Systemen zur Sichtbarmachung von graphischen Bildern möglich, insbesondere bei Standgeräten, die mit einer Speicher-Kathodenstrahlröhre, mit Plasmaschirmen und dgl. ausgerüstet sind, ebenso wie bei X1 K-Schreibern.

Claims (7)

Patentansprüche:
1. Digitaler Vektorengenerator für graphische Sichtgeräte, der zwischen einem Bildpunktwiederholspeicher mit einem X, K-Adressierregister und einer externen Steuereinheit angeordnet ist, welche die Komponentenl M |,| N |, die Richtung ARG und den Ursprung X1, K, der zu zeichnenden Vektoren sowie weitere Steuersignale abgibt und ein Taktsignal CKlN erzeugt, mit einem von der Steuereinheit ausgehenden Datenbus MPDB, dadurch gekennzeichnet, daß an den Datenbus MPDB ein erstes Register (71) zum Speichern der ersten Vektorkomponente| M |, ein zweites Register (70) zum Speichern der zweiten Vektorkomponente INI sowie ein drittes Register (72) zum Speichern der Vektorrichtung ARG angeschlossen sind.
UaB die Ausgänge des erstes und des zweiten Registers (71,70) mit den Steuereingängen eines /V-Jach-Modulo-A/-Zählers (1,2,3,4, S) verbunden sind, dessen Zähleingang (A) an das Taktsignal CKIN angelegt ist und dessen Ausgänge (CK X,CK- Y) über Torschaltungen an zugeordnete Eingänge des X, y-Adressierregisters (CO) des Bildwiederholspeichers (20) angelegt sind,
und daß an das dritte Register (72) eine_Velctqrrichtung-DeccKlierschaltung (300) angeschlossen ist, die
is zwei Inkrementierrichtungsausgänge (D/UY, DAJX\ die mit zugeordneten Eingängen des X, X-Adressier; registers (60) des Bildwiederholspeichers (20) verbunden sind, und zwei Inkrementierfreigabeausgänge (E • X, E ■ Y) aufweist, die mit zugeordneten Eingängen dieses X. K-Adressierregisters (60) verbunden sind.
2. Vektorengenerator nach Anspruch 1, dadurch gekennzeichnet, daß der /V-fach-Modulo-Af-Zähler einen Addierer (2) umfaßt, der in Reihe mit einem Schieberegister (1) geschaltet ist, das durch das Taktsignal CKlN inkrementiert wird, daß der Ausgang dieses Schieberegisters (1) mit einem ersten Eingang des Addierers (2) verbunden ist, dessen zweiter Eingang mit einem Multiplexer (4) verbunden ist, dessen Steuereingang mit dem Überlaufausgang des Addierers (Z) und dessen zwei Signaieingänge mit dem erster, bzw. dem zweiten Register (71,70) verbunden sind.
3. Vektorengenerator nach Anspruch 2, dadurch gekennzeichnet, daß der /V-fach-Modulo-AZ-Zähler mit einem programmierbaren Aufwärts/Abwärts-Zähier (150) versehen ist, der durch das Taktsignal CKIN inkremeritiert wird und an den Addierer (2) des /V-fach-Modulo-.W-Zählers angeschlossen ist und an seinem Ausgang ein Stopsignal für diesen erzeugt.
4. Vektorengenerator nach einem der vorstehenden Ansprüche, gekennzeichnet durch ein Vektor-Punktier-Befehlsregister, das an den Datenbus MPDB angeschlossen ist, und eine Punktierschaltung mit einem programmierbaren Auf/Abwärts-Zähler (600), der durch das Taktsignal CKIN inkrementiert wird und dessen Ausgange mit den zugeordneten Eingängen eines Multiplexers (61) verbunden sind, dessen Steuereingänge mit dem Vektor-Punktier-Befehlsregister verbunden sind und dessen Signaleingang mit dem Bildwiederholspeicher (20> verbunden ist.
5. Vektorengenerator nach einem der vorstehenden Ansprüche, dadurch gekennzeichnet, daß ein Punk- :<5 tierzähler durch die LSB (ni Jrigwertigen Bits)-Stufen des das Stopsignal abgebenden Zählers (150) gebildet ist.
6. Vektorengenerator nach einem der vorstehenden Ansprüche, gekennzeichnet durch eine Einrichtung zum Identifizieren der Werte der Vektorkomponenten| MI und| N |, mit einem Addierer (6), an dessen zwei Dateneingänge der erste Werte | N | bzw. der zweite Wert | M | angelegt ist.
7. Vekuorengenerator nach einem der vorstehenden Ansprüche, dadurch gekenneeichm. 2, daß der /V-fach-Modulo-A/-Zähler für den Betrieb mit 8-Bil-Vektordaten eingerichtet ist.
DE2920230A 1978-05-18 1979-05-18 Digitaler Vektorengenerator für graphische Sichtgeräte Expired DE2920230C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR7814766A FR2426296A1 (fr) 1978-05-18 1978-05-18 Generateur de vecteurs pour console graphique

Publications (2)

Publication Number Publication Date
DE2920230A1 DE2920230A1 (de) 1979-11-29
DE2920230C2 true DE2920230C2 (de) 1985-03-21

Family

ID=9208404

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2920230A Expired DE2920230C2 (de) 1978-05-18 1979-05-18 Digitaler Vektorengenerator für graphische Sichtgeräte

Country Status (6)

Country Link
US (1) US4311998A (de)
JP (1) JPS5513496A (de)
CA (1) CA1130004A (de)
DE (1) DE2920230C2 (de)
FR (1) FR2426296A1 (de)
GB (1) GB2029178B (de)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4566038A (en) * 1981-10-26 1986-01-21 Excellon Industries Scan line generator
US4532605A (en) * 1982-04-12 1985-07-30 Tektronix, Inc. True zoom of a displayed image
JPS59105685A (ja) * 1982-12-09 1984-06-19 アルプス電気株式会社 文字パタ−ンの発生方法
US4625288A (en) * 1984-10-01 1986-11-25 Tektronix, Inc. Method and apparatus for creating a structured image data set based on acquired image data
US4672370A (en) * 1984-11-01 1987-06-09 Microtel Limited Technique for scaling characters in a stroke-vector display system
US4660028A (en) * 1984-11-01 1987-04-21 Microtel Limited Stroke-vector character generator
US4658248A (en) * 1984-11-01 1987-04-14 Microtel Limited Method for generating stroke-vector characters for use in a display system
FR2574575B1 (fr) * 1984-12-11 1987-02-06 O Donnell Ciaran Processeur de trace de vecteur
JPS62187977A (ja) * 1986-02-13 1987-08-17 Dainippon Screen Mfg Co Ltd 画像デ−タ処理装置
JPH0727571B2 (ja) * 1987-10-26 1995-03-29 テクトロニックス・インコーポレイテッド ラスタ走査表示装置及び図形データ転送方法
US5233335A (en) * 1989-06-22 1993-08-03 Hughes Aircraft Company Symbol/raster generator for CRT display
US5164711A (en) * 1990-02-08 1992-11-17 International Business Machines Corporation System and method for generating graphical output
US6357047B1 (en) 1997-06-30 2002-03-12 Avid Technology, Inc. Media pipeline with multichannel video processing and playback
US5883670A (en) * 1996-08-02 1999-03-16 Avid Technology, Inc. Motion video processing circuit for capture playback and manipulation of digital motion video information on a computer
US6105083A (en) * 1997-06-20 2000-08-15 Avid Technology, Inc. Apparatus and method for controlling transfer of data between and processing of data by interconnected data processing elements

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3471847A (en) * 1966-08-03 1969-10-07 California Computer Products Cathode ray tube digital display system
FR1504774A (fr) * 1966-10-27 1967-12-08 Nouvelles Tech Radio Electr Et Dispositif pour afficher des vecteurs sur l'écran d'un tube à rayons cathodiques
DE1549920A1 (de) * 1967-07-18 1971-05-13 Telefunken Patent Helltaststeuerung zum Sichtbarmachen oder Verdunkeln gerader Verbindungslinien zweier Punkte auf dem Bildschirm einer Elektronenstrahlroehre
JPS5134257B2 (de) * 1971-12-14 1976-09-25
US3938130A (en) * 1972-02-23 1976-02-10 Hughes Aircraft Company Direction coded digital stroke generator providing a plurality of symbols
JPS49124935A (de) * 1973-04-03 1974-11-29
JPS5431774B2 (de) * 1974-02-15 1979-10-09
JPS5433817B2 (de) * 1974-02-15 1979-10-23
DE2619496A1 (de) * 1976-05-03 1977-11-10 Siemens Ag Interpolationsverfahren bei einem funktionsgenerator und interpolationsschaltung zur durchfuehrung des verfahrens

Also Published As

Publication number Publication date
CA1130004A (en) 1982-08-17
JPS5513496A (en) 1980-01-30
GB2029178A (en) 1980-03-12
DE2920230A1 (de) 1979-11-29
FR2426296A1 (fr) 1979-12-14
US4311998A (en) 1982-01-19
GB2029178B (en) 1983-01-06
FR2426296B1 (de) 1980-09-19

Similar Documents

Publication Publication Date Title
DE2703579C2 (de) Anordnung zur Verarbeitung von Videosignalen
DE2950712C2 (de) Einrichtung zur Erzeugung eines elektronischen Hintergrundrasters
DE2438272C3 (de) Anzeigesteuereinrichtung für die Positionierung einer Leuchtmarke auf einer Anzeigeeinrichtung
DE2920230C2 (de) Digitaler Vektorengenerator für graphische Sichtgeräte
DE2935746C2 (de) Farbgenerator für eine Einrichtung zur digitalen Steuerung einer Raster-Abtast-Bildwiedergabe
DE2807788C2 (de) Digitaler Prozessor für eine Datenstation
DE2023693A1 (de)
DE2438202A1 (de) Vorrichtung zur erzeugung von videosymbolen
DE3342004A1 (de) Eingabevorrichtung fuer fernsehbilddaten
DE2920227C2 (de) Digitalprozessor für einen als Datensichtgerät zu verwendenden Fernsehempfänger
DE2607842C2 (de)
DE2261141C3 (de) Einrichtung zur graphischen Darstellung von in einem Computer enthaltenen Daten
DE2651543A1 (de) Digitales raster-anzeigesystem
DE1774682C3 (de) Einrichtung zur sichtbaren Datenwiedergabe
DE3015887C2 (de) Serien-Parallel-Signalumsetzer
DE2438203C3 (de) Anzeigeeinrichtung
DE2223332B2 (de) Einrichtung zur sichtbaren Anzeige von Daten auf einem Wiedergabegerät
DE4009823C2 (de)
DE2741161C3 (de) Schaltungsanordnung für ein Anzeige-System zur Anzeige eines Musters
DE2848918C2 (de) Anordnung zur Darstellung von Rechenergebnissen eines Rechners auf dem Bildschirm eines Fernsehempfängers
DE2921045C3 (de) Einrichtung zur Modifizierung eines Videosignals quantisierten Pegels
DE2854348A1 (de) Schaltungsanordnung fuer eine kathodenstrahlroehre zur positionsbestimmung einer datenanzeige
DE2625840A1 (de) Radaranzeigesystem
DE2855731C2 (de) Verfahren und Einrichtung zur farbigen Darstellung von Informationen
DE2920228A1 (de) Signalgenerator fuer schreiber- datenstation

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
D2 Grant after examination
8364 No opposition during term of opposition