DE3713627C2 - - Google Patents
Info
- Publication number
- DE3713627C2 DE3713627C2 DE3713627A DE3713627A DE3713627C2 DE 3713627 C2 DE3713627 C2 DE 3713627C2 DE 3713627 A DE3713627 A DE 3713627A DE 3713627 A DE3713627 A DE 3713627A DE 3713627 C2 DE3713627 C2 DE 3713627C2
- Authority
- DE
- Germany
- Prior art keywords
- address
- data
- memory
- image
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000015654 memory Effects 0.000 claims description 214
- 239000000872 buffer Substances 0.000 claims description 44
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000000034 method Methods 0.000 description 24
- 230000002457 bidirectional effect Effects 0.000 description 13
- 101100365883 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SLG1 gene Proteins 0.000 description 11
- 101100156780 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) WSC2 gene Proteins 0.000 description 11
- 101100156779 Schizosaccharomyces pombe (strain 972 / ATCC 24843) wsc1 gene Proteins 0.000 description 11
- 101100033865 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RFA1 gene Proteins 0.000 description 8
- 102100036464 Activated RNA polymerase II transcriptional coactivator p15 Human genes 0.000 description 7
- 101000713904 Homo sapiens Activated RNA polymerase II transcriptional coactivator p15 Proteins 0.000 description 7
- 229910004444 SUB1 Inorganic materials 0.000 description 7
- 229910004438 SUB2 Inorganic materials 0.000 description 6
- 101100311330 Schizosaccharomyces pombe (strain 972 / ATCC 24843) uap56 gene Proteins 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 101150018444 sub2 gene Proteins 0.000 description 6
- 102100038204 Large neutral amino acids transporter small subunit 1 Human genes 0.000 description 4
- 108091006232 SLC7A5 Proteins 0.000 description 4
- 101100524516 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) RFA2 gene Proteins 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 102100038235 Large neutral amino acids transporter small subunit 2 Human genes 0.000 description 3
- 108091006238 SLC7A8 Proteins 0.000 description 3
- 101150110971 CIN7 gene Proteins 0.000 description 2
- 101000708573 Homo sapiens Y+L amino acid transporter 2 Proteins 0.000 description 2
- 101150110298 INV1 gene Proteins 0.000 description 2
- 101100397044 Xenopus laevis invs-a gene Proteins 0.000 description 2
- 102100032803 Y+L amino acid transporter 2 Human genes 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 102100024032 Linker for activation of T-cells family member 1 Human genes 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
- G06T3/606—Rotation of whole images or parts thereof by memory addressing or mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/387—Composing, repositioning or otherwise geometrically modifying originals
- H04N1/3877—Image rotation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
- Controls And Circuits For Display Device (AREA)
Description
Die Erfindung betrifft eine Speicherschaltung zum Speichern
von Bilddaten.
Derartige Speicherschaltungen werden z. B. bei Flüssigkristall-
Druckern und/oder Flüssigkristallanzeigen eingesetzt.
Der Fortschritt auf dem Gebiet der Mikroprozessoren hat es
ermöglicht, Bilddaten einer umfangreichen Bearbeitung zu
unterziehen, derzufolge z. B. grafische Muster bei der Anzeige
oder beim Druck gedreht werden können.
Die Bilddaten für graphische Muster umfassen eine
Vielzahl von Bits, wobei jedes Bit einen Punkt als
weißen oder scharzen Punkt in Form einer "0" bzw.
"1" darstellt. In dem Speicher sind mehrere Punkte
als eine Einheit abgespeichert. Enthalten die
graphischen Muster Farben und Farbtöne, so sind einem
Punkt mehrere Bits zugeordnet. Fig. 1 zeigt die
Anordnung eines Speichers zum Speichern von Bilddaten
(256×256 Punkte). Eine Adresse umfaßt ein
Wort (16 Bits), und 16 Punkte in horizontaler oder
Quer-Richtung eines Bildes (d. h. in X-Richtung des
Bildes), sowie einen Punkt in vertikaler oder Längs-Richtung
des Bildes (d. h. in Y-Richtung des Bildes).
Die 16 Punkte umfassende Gruppe wird in Form eines
Wortes gespeichert, um eine entsprechende Stelle des
Bildes darzustellen. Zählt man von dem oberen linken
Punkt nach rechts, so ist das Bild beim 16. Punkt getrennt,
und die Daten dieser 16 Punkte (oder 16 Bits)
sind unter einer Bildadresse "000H" gespeichert.
Daten bezüglich der nächsten 16 Punkte, die rechts
anschließen, sind unter einer Bildadresse XG "001H"
abgespeichert. Da in horizontaler Richtung 256 Punkte
vorhanden sind, entsprechen 16 Adressen (die niedrigstwertigen
Bits der Adressen umfassen 4 Bits) einer
Zeile oder Reihe. Jeder Punkt in Y-Richtung, d. h.
entsprechend den Bildadressen YG, repräsentiert eine
Reihe. Diese Punkte sind unter "000H", "010H", . . .
abgespeichert (hier bedeutet der Zusatz "H" die Sedezimal-Schreibweise
(auch als Hexadezimal-Schreibweise
bezeichnet)).
Werden die in dem Speicher abgespeicherten Daten in
herkömmlicher Weise ausgelesen, so werden die Adressen
000, 001, . . . 010, 011, . . . in dieser Reihenfolge ausgelesen,
so daß die ein graphisches Muster darstellenden
Bilddaten in ihrer "richtigen" oder unverdrehten Lage
(d. h. wenn das Bildmuster nicht gedreht ist) vorliegen.
Um spezielle Bilddaten für das Graphikmuster zu erhalten,
z. B. um ein Graphikmuster darzustellen, welches gegenüber
der zuerst auf einer Anzeigevorrichtung dargestellten
Anordnung um 90° im Uhrzeigersinn verdreht ist,
müssen diejenigen Bits, die dem unteren linken Punkt
entsprechen, so ausgelesen werden, daß sie sich in
der oberen linken Position befinden. Genauer gesagt:
wenn das höchstwertige Bit MSB (B15) von 16 Bits der
linken Seite eines Anzeigschirms entspricht, werden 16
Wörter der Adressen FF0-F00 sukzessive ausgelesen,
1 Bit 15 (B15) jedes der 16 Wörter wird als ein Wort betrachtet,
und dieses eine Wort wird für das eine Wort
(Adresse 000) an der oberen linken Ecke des Anzeigeschirms
hergenommen. Es werden 16 Wörter mit den Adressen EF0-E00
anschließend ausgelesen, und ein Bit 15 (B15) jedes
der 16 Wörter wird als ein Wort hergenommen und als
das nächste einzelne Wort (Adresse 001) hergenommen.
Nachdem auf diese Weise eine Spalte ausgelesen wurde,
werden 16 Wörter der gleichen Adressen FF0-F00 ausgelesen
und es wird ein Bit 14 (B14) jedes der 16
Wörter als ein Wort hergenommen. Nachdem 16 Spalten
ausgelesen wurden, wird in ähnlicher Weise ein Wort
aus einem Bit 15 jedes der 16 Wörter der Adressen
EF0-E00 herausgegriffen. Auf diese Weise lassen sich
Bilddaten erhalten, die im Uhrzeigersinn um 90° verdreht
sind, indem 16 Wörter ausgelesen wurden und die
Auswahl eines Bits in jedem der Wörter erfolgte.
Bei dem oben beschriebenen herkömmlichen Verfahren zum
Erhalten von um 90° gedrehten Bilddaten werden sämtliche
Daten in jeweils einer Einheit von einem einzelnen
Wort ausgelesen, es wird jedoch lediglich ein Bit
aus jedem ausgelesenen Wort als effektiver Datenwert
genutzt. In anderen Worten: von den 16 Bits ausgelesenen
Daten sind 15 Bits nutzlose Daten. Beim Schreiben
werden die 16 Bits umfassenden, zu speichernden Daten
unterteilt und einem einzelnen Bit zugewiesen, so daß
genau das eine Wort ausgelesen wird, welches der beabsichtigten
Stelle für solche Bits in dem Speicher entspricht.
Somit wird lediglich die Position eines einzigen
Bits eines Worts, das in eine neue Stelle gelangen
soll, ausgelesen, um die Bilddaten um 90° zu drehen, und
anschließend erfolgt die Speicherung an einer neuen
Stelle. Kurz gesagt: Das Auslesen und das Einschreiben
erfolgt in Form von 16 Bits, der Prozeß selbst wird jedoch
in Form von jeweils einem Bit durchgeführt, so daß
für das Schreiben und das Lesen viel Zeit in Anspruch
genommen wird. Speziell beim Schreiben erfolgt jeweils
nur ein Lesevorgang, und anschließend erfolgt das
Abspeichern und mithin benötigt der Prozeß wesentlich
mehr Zeit, als eigentlich notwendig wäre.
Wenn bei der oben erläuterten Speichereinrichtung ein
sukzessiver direkter Speicherzugriff in Horizontalrichtung
erfolgt, um Videosignale an eine Anzeigevorrichtung
zu liefern, z. B. an eine Kathodenstrahlröhre,
so geschieht dies mit einer Schaltung, die in der Lage
ist, den beschriebenen Prozeß abzuwickeln. Allerdings
unterscheidet sich die Lesegeschwindigkeit in Horizontalrichtung
von derjenigen in Vertikalrichtung, und
auch unterscheidet sich die Art der Verarbeitung der
Wörter bei jedem Punkt in Horizontalrichtung von der
Verarbeitung in Vertikalrichtung. Der Prozeß wird durchgeführt
mit Hilfe von Registern, in die parallel eingelesen
und aus denen seriell ausgelesen wird, jedesmal
dann, wenn ein Wort in Horizontalrichtung gelesen wird.
Während bei jedem Auslesen eines Wortes in Vertikalrichtung
ein bestimmtes Bit ausgewählt und ausgegeben
wird, ist eine komplizierte Schaltung erforderlich.
Wenn außerdem das graphische Muster nicht über den gesamten
Bereich des Anzeigeschirms gedreht werden soll,
sondern nur über einen Teil des Anzeigeschirms, so
wird eine äußerst komplizierte Verarbeitungsschaltung
benötigt.
Aus der US-PS 45 54 638 ist eine Speicherschaltung bekannt,
die es gestattet, durch einen geeigneten Zugriff eine um
90° nach links oder nach rechts gedrehte oder eine gekippte
Bilddarstellung zu erreichen. Es ist ein Speicher vorgesehen,
der mehrere in Matrixform angeordnete Festspeicher umfaßt,
von denen jeder bei einem Speicherzugriff die gleiche
X-Adresse und die gleiche Y-Adresse empfängt, außerdem ein
Chip-Auswahlsignal empfängt.
Bei jedem Speicherzugriff entsprechend einer gewissen
(X/Y)-Adresse in jedem einzelnen Chip wird auf die gleiche
Adresse zugegriffen. Beim Drehen von Bildern muß durch
geeignete Kombination der X/Y-Adressen und der Chip-Auswahl
signale erreicht werden, daß die gespeicherten Bildpunktdaten
beispielsweise nicht Zeile für Zeile von links nach rechts
und von oben nach unten ausgelesen werden, sondern beispiels
weise von oben nach unten und von links nach rechts Spalte
für Spalte.
Ein rascher Zugriff auf die einzelnen gespeicherten Bild
punkte ist also nicht möglich, obschon ein Drehen des ge
speicherten Bildes um 90°, 180° und 270° möglich ist.
Bei dem bekannten Bildspeicher müssen bei punktweiser
(= bitweiser) Darstellung z. B. in den oben beschriebenen
Weise die Daten reihenweise oder Spaltenweise Bit für Bit
ausgelesen werden.
Der Erfindung liegt die Aufgabe zugrunde, eine Speicherschal
tung der oben genannten Art anzugeben, die einerseits den
Zugriff auf mehrere Bildpunktdaten mittels einer einzigen
Adresse gestattet und andererseits auch bei Drehung des durch
die gespeicherten Bilddaten repräsentierten Bildes einen
raschen Speicherzugriff ermöglicht.
Diese Aufgabe wird durch die im Anspruch 1 angegebene Erfindung
gelöst. Vorteilhafte Ausgestaltungen der Erfindung sind in
den Unteransprüchen angegeben.
Durch die Verwendung einer Verschiebeeinrichtung in Verbindung
mit Blockspeichereinrichtungen läßt sich durch einfache
Adressierung ein rascher Zugriff auf mehrere Bits (z. B. 16 Bits)
erreichen, und man kann mit üblichen Datenbussystemen arbeiten.
Von einer Bilddatenmenge, die (n×n) Punkte umfaßt, werden
mehrere Punkte zusammengefaßt als eine Einheit unter einer
einzelnen Adresse gespeichert. Die Art und Weise der
Speicherung der Punkte in dem Bildspeicher erfolgt durch
Verschieben der Punkte der Bilddaten zumindest entweder in
Quer- oder Reihenrichtung oder in Längs- oder Spaltenrichtung,
sukzessive, also Punkt für Punkt entsprechend der Quer-
oder Reihenrichtung bzw. der Längs- oder Spaltenrichtung der
Bilddaten. Deshalb
wird auf die Bilddaten der (n×n) Punkte als Einheit
mit mehreren Punkten in Querrichtung, und anschließend
in Längsrichtung, zugegriffen, und umgekehrt. Der Bild
speicher bildet einen Bildspeicherabschnitt, und
mehrere Bildspeicher umfassen ein Bild. Ein Bildadressenwert,
welcher einen speziellen Bildspeicherabschnitt in
einer Zeile der Bildspeicherabschnitte kennzeichnet,
wird von der Maximal-Zahl der Bildspeicherabschnitte,
welche die eine Zeile des Bildspeichers bilden, substrahiert,
um dadurch einen Bildadressenwert des Bildspeichers
zu erhalten, wenn auf die eine Zeile des Bildspeichers,
die mehrere Bildspeicherabschnitte umfaßt,
in Rückwärtsrichtung zugegriffen wird.
Im folgenden werden Ausführungsbeispiele der Erfindung
anhand der Zeichnung näher erläutert. Es zeigt
Fig. 1 eine Speicherübersicht, die zeigt, wie Daten
in einem herkömmlichen Speicher gespeichert
sind,
Fig. 2 eine Speicherübersicht zur Veranschaulichung
der vorliegenden Erfindung,
Fig. 3 eine Schaltungsskizze einer ersten Aus
führungsform der Erfindung,
Fig. 4A und 4B Eingabedaten- und Ausgabedaten-Tabellen eines
im Rahmen der Erfindung verwendeten Adreßdecoders,
Fig. 5 eine Speicherübersicht unter Bezugnahme
auf die Zugriffszeit,
Fig. 6 eine Schaltungsskizze einer zweiten Ausführungsform
der Erfindung,
Fig. 7 eine Tabelle, die die relativen Positionen
eines beim Lesen und beim Schreiben erhaltenen
Bildes veranschaulicht,
Fig. 8
eine Schaltungsskizze einer dritten Ausführungsform
der Erfindung,
Fig. 9 eine Tabelle, die die Beziehung zwischen den
Dreh-Steuersignalen und Adreßwerten bei der
Ausführungsform nach Fig. 8 veranschaulicht,
Fig. 10A Bilddaten von einem nicht-gedrehten Bild,
Fig. 10B Bilddaten des um 90° im Uhrzeigersinn gedrehten
Bildes,
Fig. 10C Bilddaten in bezug auf ein um 180° im Uhrzeigersinn
gedrehtes Bild,
Fig. 10D Bilddaten eines im Uhrzeigersinn um 270° gedrehten
Bildes,
Fig. 11 eine Schaltungsskizze einer vierten Ausführungsform
der Erfindung,
Fig. 12 ein Beispiel von Blocknummern, die zugeordnet
werden, wenn ein Bild des Formats B4
mit der Ausführungsform nach Fig. 11 dargestellt
werden soll, und
Fig. 13 eine Tabelle, die die Dreh-Steuersignale
und den Speicher nach der Ausführungsform
nach Fig. 11 zugeführten Adreßwerte veranschaulicht.
Im folgenden soll die Ausgestaltung eines (n×n) Punkte
umfassenden Speichers und eines Bildspeichers beschrieben
werden, zu dem mit Hilfe einer Speicher-Treiberschaltung
aus horizontaler und vertikaler Richtung, von
links und von rechts und von oben sowie von unten zugegriffen
werden kann.
Fig. 2 zeigt eine Speicherübersicht gemäß der Erfindung.
Die oberen Bits, die jedem der Punkte entsprechen, befinden
sich in einem kleinen Rahmen und stellen die
Speicheradressen dar, während die unteren Bits in jedem
Rahmen eine Bitstelle der Speicheradresse kennzeichnen.
Wenn die Y-Koordinate YK eines Grundbildes "00" und
die X-Koordinate XK ebenfalls "00" beträgt, ist ein
Bit 15 (D15) einer Adresse ADD "0000" des Speichers zugeordnet.
In Richtung der X-Koordinate XK sind jeweils
16 Adressen (FH, wobei H die Sedezimal-Schreibweise
bedeutet) sukzessive und schrittweise in Einheiten von
16 Bits nach vorne verschoben, und die Punkte in jeder
einzelnen Adresse sind den Bits 15-0 (D15-D0) zugeordnet.
Wenn die Y-Koordinate YK des Grundbildes "01"
beträgt, sind das Bit 0 (D0) unter einer Adresse "0100"
sowie die dort rechts anschließenden Bits 15-1 (D15-D1)
jeweils um einen Punkt nach rechts verschoben, und bei
jedem Vorverschieben der Adressen in der Y-Koordinate
YK des Grundbildes sind die jeweils 16 Bits horizontal
um einen Punkt nach rechts verschoben.
In anderen Worten: wenn die Y-Koordinate YK des Grundbildes
"00" beträgt, umfaßt die Adresse "0000" die
Bits 15-0 (D15-D0), die Adresse "0001" enthält die
Bits 15-0 (D15-D0) und die Adresse "0002" enthält
die Bits 15-0 (D15-D0), usw. Wenn die Y-Koordinate
YK "01" lautet, enthält die Adresse "0100" das Bit 0
(D0) und anschließend die Bits 15-1 (D15-D1), die
Adresse "0101" enthält das Bit 0 (D0) und anschließend
die Bits 15-1 (D15-D1), und die Adresse "0102" enthält
das Bit 0 (D0) und anschließend die Bits 15
(D15-D1) usw. Wenn die Y-Koordinate YK den Wert "02"
hat, enthält die Adresse ADD "0200" die Bits 1, 0 (d. h.
D1, D0) und anschließend die Bits 15-2 (D15-D2),
die Adresse ADD "0201" enthält die Bits 1, 0 und anschließend
die Bits 15-2 (D15-D2), usw. Da die
Y-Koordinate des Grundbildes schrittweise erhöht wird,
wird jeweils eine 16 Bits umfassende Einheit horizontal
nach rechts verschoben, wodurch jede 16 Bits umfassende
Einheit zyklisch verschoben oder einer Rotation oder
Drehung
unterworfen wird.
Aufgrund der oben beschriebenen Ausbildung der Speicheranordnung
unterscheiden sich die Stellen der Bitwerte
(D15-D0) der 16-Bit-Einheit gegenüber dem Zustand,
gemäß dem das Grundbild in Form von jeweils 16 Bits in
horizontaler oder vertikaler Richtung ausgelesen wird.
Der Zugriff ist also jetzt möglich in Einheiten von 16
Bits entweder in horizontaler oder in vertikaler Richtung.
Jeder Zugriff in Horizontalrichtung erfolgt unter
Verwendung der gleichen Adresse, während ein Zugriff
in Vertikalrichtung in bezug auf jedes Bit zu einer
anderen Speicheradresse erfolgt.
Die Bilddaten sind innerhalb einer Zeile
(Reihe) unterteilt in Einheiten von mehreren Punkten, z. B.
von 16 Punkten, und die unterteilten Daten werden in
einer einzelnen Adresse des Speichers abgespeichert.
Mehrere sequentiell unterteilte Punkte werden in dem
Speicher entsprechend den Bits des Speichers gespeichert.
Speziell zeichnet sich die Erfindung durch einen Speicheraufbau
aus, bei dem unterteilte Bilddaten und die
oben erwähnte Mehrzahl von Punkten sowie deren gegenseitige
Beziehung anders ist als im Stand der Technik.
Der Speicher umfaßt mehrere Speicherabschnitte oder
Speicherteile mit jeweils einem Eingangsanschluß und
einem Ausgangsanschluß für ein einzelnes Bit und einem
unabhängigen Adreß-Anschluß. Die Beziehung zwischen den
unterteilten Punkten und der Bitposition zum Speichern
mehrerer Punkte ist derart ausgebildet, daß die Daten
innerhalb der unterteilten Daten um ein Bit zyklisch
oder rotierend verschoben werden und in der gleichen
Adresse in mehreren Speichern gespeichert werden. Beim
Lesen oder beim Einschreiben der Daten in Querrichtung
werden die jeweiligen Punkt-Einheiten in die gleiche
Adresse mehrerer Speicher eingeschrieben bzw. aus der
gleichen Adresse mehrerer Speicher ausgelesen. Andererseits
wird beim Einschreiben oder beim Lesen der Daten
in Längsrichtung zweckmäßigerweise so vorgegangen, daß
die Mehrzahl von Speichern mit jeweiligen Eingangs- und
Ausgangsanschlüssen für ein Bit und mit mehreren Adreßanschlüssen
ausgestattet sind.
Wenn die gespeicherten Daten in Längsrichtung ausgelesen
werden, unterscheiden sich die Adressen der jeweiligen
gespeicherten Punkte, und die den jeweiligen
Speichern hinzugefügten Adressen sollten umgesetzt
werden. Diese Umsetzung ermöglicht ein gleichzeitiges
Auslesen der Daten in Vertikalrichtung. Nach Einschreiben
der Daten in Querrichtung sind die Daten
in Form einer zyklischen Verschiebung gespeichert,
und mithin werden die gespeicherten Daten ebenfalls
zyklisch verschoben. Diese zyklische oder Dreh-Verschiebung
wird entsprechend der Bitposition während des
Lesevorgangs in vertikaler Richtung durchgeführt.
Ändert man also die zyklische Verschiebung in den ursprünglichen
Zustand ab, so ist dann das Lesen der
Daten in vertikaler Richtung möglich.
Fig. 3 ist eine Schaltungsskizze einer ersten Ausführungsform
der Erfindung. Jeder Rahmenspeicher
(M15-M0) besitzt einen Eingabe/Ausgabe-Anschluß I/O
für ein Bit, und die Speicher bilden zusammen eine
Speichereinrichtung zum Eingeben und Ausgeben von
16 Bits umfassenden Daten (D15-D0). Die an Schrägstrichen
in Leitungen in Fig. 3 angebrachten Ziffern
bezeichnen die jeweilige Anzahl der Bits. Jeder der
Rahmenspeicher M15-M0 besitzt Adressen-Eingangsanschlüsse,
über die Adreßwerte (Y7-Y0, X3-X0) angelegt
werden, und besitzt Block-Eingangsanschlüsse,
über die Blockwerte (BLK6-BLK0) angelegt werden. Die
Rahmenspeicher M15-M0 besitzen eine Kapazität zum
Speichern mehrerer Bilder und die Block-Eingangsanschlüsse,
über die die Blockwerte (BLK6-BLK0) angelegt
werden, kennzeichnen eines solcher Bilder. Jede
beabsichtigte Blockbildung oder Seitenbildung des
Bildes wird durch die Blockwerte (BLK6-BLK0) angeordnet.
Die oberen vier Bits (YK7-YK4) auf der Y-Koordinate
YK des Grundbildes werden dem Eingangsanschluß A eines
Selektors SL1 und dem Eingangsanschluß B eines Selektors
SL2 zugeführt, während die oberen vier Bits (XK7-XK4)
der X-Koordinate XK dem Eingangsanschluß B des Selektors
SL1 sowie dem Eingangsanschluß A des Selektors SL2 zugeführt
werden. Die Selektoren SL1 und SL2 wählen von
den ihnen an den Eingangsanschlüssen A und B zugeführten
Daten bestimmte Daten aus und geben die ausgewählten
Daten an Ausgangsanschluß C ab. Die Auswahl erfolgt
in Abhängigkeit eines Horizontal/Vertikal-Umschaltsignals
H/V, welches dem jeweiligen Auswahlanschluß SEL zugeführt
wird. Hat das Signal H/V einen niedrigen Pegel
"0", wählen die Selektoren SL1 und SL2 die den Eingangsanschlüssen
A zugeführten Daten aus und geben diese am
Ausgangsanschluß C ab, während dann, wenn das Signal
H/V einen hohen Pegel "1" hat, die Selektoren die dem
Eingangsanschluß B zugeführten Daten auswählen und sie
am Ausgangsanschluß C abgeben.
Bei diesem Ausführungsbeispiel der Erfindung umfaßt die
Adresse des Grundbildes acht Bits (YK7-YK0) in Y-Richtung
und vier Bits (XK7-XK4) in X-Richtung.
Der Speicher ist so aufgebaut, daß auf das Bild in Einheiten
von mehreren Punkten (16 Punkten) zugegriffen
werden kann. Folglich sind die unteren Bits in einer
Querrichtung nicht notwendig, und diese unteren Bits
entsprechen der Bitpositionen am Datenausgang.
Die Selektoren SL1 und SL2 schalten die Adressen für
die Speicher in Längsrichtung und die Adressen für
die Speicher in Querrichtung um oder vertauschen erstere
gegen letztere. Wenn die Adressen in Vertikalrichtung
ausgetauscht werden gegen die Adressen in Querrichtung,
wird die ansteigende Reihenfolge der Adresseneingabe
umgekehrt. Bei dem Ausführungsbeispiel der Erfindung
wird das obere linke Ende des Grundbildes auf einen Ursprungspunkt
eingestellt, und die Adreßwerte erhöhen
sich nach rechts oder nach unten. Allerdings schaltet
die oben angesprochene Auswahl die Adressen in Querrichtung
um auf solche in Längsrichtung, um eine im
Uhrzeigersinn erfolgende Drehung um 90° beim Auslesen
der Daten zu bewirken, und die ansteigende Reihenfolge
der Adressen wird umgekehrt. Da der Ursprungspunkt des
Grundbildes stets an dem oberen linken Ende eingestellt
wird, wird dies durch die logischen Exklusiv-ODER-Glieder
EORG1 und EORG2 korrigiert.
Ist die Drehung des Bildes nicht beabsichtigt, so werden
die Längsadressen gemeinsam den Rahmenspeichern M0-M15
zugeführt. Ist eine Drehung beabsichtigt, sollten die
den jeweiligen Rahmenspeichern zugeführten Adressen
geändert werden. Dieser Vorgang wird durch den Adreßdecoder
ADRR durchgeführt. Die Einzelheiten des Adreßdecoders
ADRR werden unten näher erläutert.
Zunächst soll eine Situation beschrieben werden, in der
das Signal H/V niedrigen Pegel hat. Der Selektor SL1 wählt
die oberen vier Bits (YK7-YK4) der Y-Koordinate YK
des Grundbildes aus, während der Selektor SL2 die oberen
vier Bits (XK7-XK4) der X-Koordinate XK auswählt, und
die Ausgänge der Selektoren liefern die entsprechend ausgewählten
Datenwerte an den zugehörigen Ausgangsanschluß
C. Der Ausgangsanschluß C des Selektors SL1
liefert die oberen vier Bits (YK7-YK4) des ausgewählten
Grundbildes XK in Form von Signalen YS3-YS0
zu denjenigen Anschlüssen der Rahmenspeicher M15-M0,
denen die Adreßwerte X7-Y3 zugeordnet sind, und zwar
über das Exklusiv-ODER-Glied EORG2. Das H/V-Umschaltsignal
wird einem anderen Eingang des Exklusiv-ODER-Glieds
EORG2 zugeführt. Somit dient die Schaltung
EORG2 als Puffer, und die Ausgangslogik des Selektors
SL1 wird nicht invertiert, sondern statt dessen den
oben erwähnten Anschlüssen der Rahmenspeicher M15-M0
zugeführt. Die Ausgangsanschlüsse des Selektors SL2
liefern obere vier Bits (XK7-XK4) des ausgewählten
Grundbildes XK an diejenigen Anschlüsse der Rahmenspeicher
M15-M0, die den Adreßwerten X3-X0 zugeordnet
sind. Andererseits werden untere vier Bits (YR3-YR0)
der Y-Koordinaten YK des Grundbildes über das Exklusiv-ODER-Glied
EORG1 denjenigen Anschlüssen des Adreßdecoders
ADRR zugeführt, die mit Decodier-Eingangswerten YB3-YB0
bezeichnet sind, und sie werden außerdem jenen Anschlüssen
eines Decoders DRR zugeführt, die mit dem Decodier-Eingangswerten
YB3-YB0 bezeichnet sind. Dem anderen Eingang
der Schaltung EORG1 wird das Signal H/V zugeführt.
Die unteren vier Bits (YK3-YK0) der Adresse YK des
Grundbildes werden dem anderen Eingang zugeführt. Hat
das Signal H/V niedrigen Pegel, dient mithin die Schaltung
EORG1 als nicht-invertierende Schaltung oder als Pufferschaltung.
Die Ausgangssignale der Schaltung EORG1 werden als Adreßwerte
YA3-YA0 dem Adreßdecoder ADRR zugeführt, während
das Signal H/V dessen Eingang S zugeleitet wird. Ansprechend
auf diese Signale gibt der Adreßdecoder ADRR
spezielle Decodierwerte QF3-QF0, . . . Q03f-Q00 an die
unteren vier Bits jener Anschlüsse der Speicher M15-M0,
denen die Adreßwerte Y3-YF0 zugeordnet sind.
Fig. 4A zeigt eine Eingangs/Ausgangs-Datentabelle für
den Adreßdecoder ADRR für den Fall, daß das Signal H/V
niedrigen Pegel hat (H/V=0). Fig. 4B zeigt den Fall,
daß das H/V-Umschaltsignal hohen Pegel hat (H/V=1).
Hat das Signal H/V niedrigen Pegel, so bestimmen sich
die Ausgangsdaten gemäß Fig. 4A. Demnach werden die
Adreßwerte Y3-Y0, d. h. die den Rahmenspeichern M15-M0
zugeführten decodierten Ausgangssignale QF3-QF0, . . .
Q03-Q00 die gleichen wie die Decodier-Eingangswerte
YB3-YB0, und die Adreßwerte werden den Rahmenspeichern
M15-M0 zugeführt.
Wenn die oben erwähnten Werte (Blockwerte BLK6-BLK0
und Adreßwerte Y7-Y0 sowie X3-X0) den Rahmenspeichern
M15-M0 zugeführt werden, geben diese Speicher M15-M0
entsprechend den zugeführten Werten Ausgangsdatenwerte
D15-D0 ab oder empfangen diese Daten als Eingangsdaten.
Außerdem wird ein Lese/Schreib-Signal R/W den Rahmenspeichern
M15-M0 zugeführt. Hat das Signal R/W niedrigen
Pegel, sind die Speicher M15-M0 fertig für den Lesebetrieb
und hat das Signal R/W hohen Pegel, sind die
Speicher bereit zum Schreiben. Bei niedrigem Pegel des
Signals R/W senden die Speicher gespeicherte Daten aus,
und bei hohen Pegel empfangen sie ihnen zugeführte Daten.
Adreßwerte Y7-Y0 und X3-X0 bedeuten, daß ein Zugriff
von 16 Bits in horizontaler Richtung gemäß Fig. 2 erfolgt.
Wenn also z. B. gelesen wird, werden Daten, die
16 Bits entsprechen, gleichzeitig in horizontaler Richtung
ausgelesen. Bei der Ausführungsform gemäß Fig. 2
werden 16 Bits in horizontaler Richtung stets in Form
einer Reihe in Querrichtung um ein Bit verschoben,
wenn man den Speicher in vertikaler Richtung betrachtet.
Diese Verschiebung wird durch eine Bit-Schiebeschaltung
BSC korrigiert, um ansprechend auf eine Punktposition
in den Koordinaten X und Y der Grundbildes eine Speicherposition
zu erhalten. Die Bit-Schiebeschaltung BSC ermöglicht
es, die Daten DB15-DB0 entsprechend den
Positionen der X- und Y-Koordination zu erhalten.
Die oben erwähnten Signale YK3-YK0 werden dem Decoder
DRR über die Exklusiv-ODER-Schaltung EORG1 zugeführt.
Wenn das Signal H/V niedrigen Pegel hat, dient die
Schaltung EORG1 als nicht invertierende Schalter oder
Puffer und die unteren vier Bits (YK3-YK0) der Y-Koordinate
YK des Grundbildes werden an den Decoder DRR gelegt.
Der Decoder DRR decodiert die empfangenen Datenwerte
(Adreßwerte) YB3-YB0. Wenn z. B. die vier Bits Adreßwerte
YB3-YB0 "0000" sind, wird das Ausgangssignal
SD0 "1", während die anderen Ausgänge auf "0" bleiben.
Bei der Adresse "0001" wird der Ausgangs SD1 "1", und
die anderen Ausgänge bleiben auf "0". Es werden also
lediglich diejenigen Ausgänge des Decoders DRR "1",
die dem empfangenen Eingangswert entsprechen. Andererseits
enthält die Bit-Schiebeschaltung BSC 16-Bit-Schiebeschaltungen
BSC0-BSC15, und sie ist so ausgebildet,
daß das Ausmaß der Verschiebung dem oben erwähnten
decodierten Wert entspricht. Die Bit-Schiebeschaltung
BSC0 macht eine Verschiebung um 0 Bit, so
daß die Eingangsdaten bzw. Ausgangsdaten D15-D0 den
Eingangsdaten bzw. Ausgangsdaten DB1-DB0 entsprechen,
also eine 1-zu-1-Entsprechung darstellen. Die Bit-Schiebeschaltung
BSC1 macht eine Verschiebung um 1 Bit,
so daß der Eingangsdatenwert bzw. der Ausgangsdaten
D0 dem Eingangs- bzw. Ausgangsdatenwert DB15 entspricht,
während die Datenwerte D15-D0 den Datenwerten
DB14-DB15 entsprechen. In ähnlicher Weise
bewirken die Bit-Verschiebeschaltungen BSC2-BSC15
eine Verschiebung um 2 bis 15 Bits.
Ein Ausgangssignal der Bit-Schiebeschaltung BSC ist
einer Position zugeordnet, die den Punktdaten der
jeweiligen Rahmenspeicher M15-M0 entspricht. Die
Bit-Schiebeschaltungen BSC0-BSC15 umfassen 16 bidirektionale
Puffer. Das oben erwähnte Ausmaß der
Verschiebung bestimmt sich durch eine Schaltungsverbindung
in den bidirektionalen Puffern, und die
Schieberichtung wird gesteuert durch das Lese/Schreibsignal
R/W.
Wenn das Signal H/V niedrigen Pegel ("0") hat, kann
auf die Daten in dem Speicher mit dem Aufbau nach
Fig. 2 durch eine externe Einrichtung derart zugegriffen
werden, als ob jeder Punkt der Daten in dem
Speicher angeordnet wäre, wie es in Fig. 5 gezeigt
ist. Auf die Ausgangssignale des Speichers kann in
Einheiten von 16 Bits zugegriffen werden, wobei die
unteren vier Bits durch XK3-XK0 dargestellt werden.
Die X-Koordinate XK des Grundbildes wird nicht benötigt,
da die Bits Datenwerte innerhalb einer Einheit von
16 Bits bezeichnen.
Als nächstes soll die Situation erläutert werden, in
der das Vertikal/Horizontal-Umschaltsignal H/V hohen
Pegel (H-Pegel) hat. In diesem Fall wählen die Selektoren
SL1 und SL2 Daten aus, die ihrem Eingang B zugeführt
werden, so daß diese Daten am Ausgang C erscheinen. Die
höheren vier Bits XK7-XK4 der X-Koordinate XK des
Grundbildes erscheinen am Ausgangsanschluß C des
Selektors SL1. Diese Signale werden der Schaltung EORG2
zugeführt, dessen anderem Eingang das Signal H/V mit
hohem Pegel zugeführt wird. Deshalb werden die vom
Ausgangsanschluß C des Selektors SL1 kommenden oberen
vier Bits XK 7-XK 4 der X-Koordinate XK des Grundbildes
invertiert (negiert). Diese Invertierung bewirkt, daß
die Adreßwerte Y7-Y4 der Rahmenspeicher M15-M0
genau denjenigen Werten entsprechen, die man durch
Invertieren der oberen vier Bits XK7-XK4 der X-Koordinaten
des Grundbildes enthält.
Wenn beispielsweise ein Zugriff vom oberen linken Ende
aus nach rechts erfolgt, z. B. ein Zugriff auf das Grundbild,
ändern sich die Eingangssignale sequentiell in
der Reihenfolge F, E, . . . 0; und F, E . . . 0, . . . 0. Andererseits
werden die unteren vier Bits YK3-YK0 der
Y-Koordinate YK des Grundbildes einem Eingang der
Exklusiv-ODER-Schaltung EORG1 zugeführt, deren anderer
Eingang das Signal H/V hohen Pegels empfängt. Die
Schaltung EORG1 invertiert mithin die niedrigen vier
Bits YK3-YK0 der Y-Koordinate, so daß dem Adreßdecoder
ADRR und dem Decoder DRR die invertierten Signale
als Adreßwerte YB3-YB0 zugeführt werden. Der Adreßdecoder
ADRR schaltet die Ausgangsdaten aufgrund des
Signals H/V um und setzt dadurch die Adreßwerte YB3-YB5
in der Fig. 4B dargestellten Weise um, um den Rahmenspeichern
M15-M0 die entsprechenden decodierten Werte
QF3-QF0, . . . Q03-Q00 zuzuführen. Wenn z. B. ein
Zugriff auf das linke obere Ende des Grundbildes erfolgt,
werden die unteren vier Bits YK3-YK0 der Y-Koordinate
YK des Grundbildes in "1111" invertiert, und die
dem Adreßdecoder ADRR zugeführten Signale "1111" setzt
dieser so um, daß den einzelnen Rahmenspeichern M15-M0
die Datenwerte "0000", "1111", "1110", . . . "0111",
"0110", "0101", "0100", "0011", "0010" und "0001" zugeführt
werden. Der Selektor SL2 wählt die oberen vier
Bits YK7-YK4 der Y-Koordinate YK des Grundbildes aus,
die den Rahmenspeichern M15-M0 als Punktwerte X3-X0
zugeführt werden. Erfolgt also der Zugriff zu dem
oberen linken Ende, so empfangen die Rahmenspeicher
M15-M0 als Adreßwerte die Werte F 00H und F 0H und F 0H-F 10H.
Wenn diese Adreßwerte Y7-Y0 und X3-X0 den Rahmenspeichern
M15-M0 zugeführt werden, werden 16 Bits
umfassende Daten, gezählt vom linken unteren Ende nach
oben gemäß Fig. 2, von den einzelnen Rahmenspeichern
M15-M0 abgegeben. Die Daten umfassen 16 Bits, aufwärts
gezählt vom unteren linken Ende des Grundbildes aus,
wobei die Ordnung der 16 Bits verschoben ist. Die Ordnung
dieser 16 Bits umfassenden Daten wird mit Hilfe der
Bit-Schiebeschaltung BSC korrigert, so daß die Daten
D14-D0 und D15 gemäß Fig. 2 erhalten werden.
Wenn also das Signal H/V hohen Pegel hat, werden die
unteren vier Bits der Y-Koordinate YK des Grundbildes
durch das Exklusiv-ODER-Glied EORG1 invertiert, um
dem Decoder DRR als Adreßwerte YB3-YB0 zugeführt zu
werden. Somit wird das Ausgangssignal SD15 des Decoders
DRR, welches der Bit-Schiebeschaltung BSC15 zugeführt
wird, hoch, so daß das Signal mit H-Pegel den Eingang
E der Bit-Schiebeschaltung BSC freigibt und diese Schaltung
in Betrieb setzt. Der Eingangs- oder Ausgangsdatenwert
D15 der Bit-Schiebeschaltung BSC15 entspricht dem
Eingangs- oder Ausgangsdatenwert DB0. Die Datenwerte
D0-D14 entsprechen den Eingangs- oder Ausgangsdaten
DB1-DB15. Die Bit-Schiebeschaltung BSC15 bewirkt also,
daß die Datenwerte DB15-DB0 den 16 Bits so entsprechen,
daß sie die richtige Reihenfolge haben, wenn vom linken
unteren Ende aus nach oben gezählt wird. Wenn die
oberen vier Bits der X-Koordinate des Grundbildes sich
sequentiell ändern, werden die Rahmenspeicher M15-M0
in Längsrichtung sequentiell ausgelesen, wie es oben
erläutert wurde, und die Bit-Schiebeschaltung BSC bewirkt
dann eine vorbestimmte Anzahl von Bit-Verschiebungen.
Bei der Ausführungsform nach Fig. 3 handelt es sich bei
der Bit-Schiebeschaltung BSC um einen bidirektionalen
Puffer, dessen Richtung sich durch das Signal R/W ändern
läßt. Wenn die X- und die Y-Koordinaten-Daten des Grundbildes
angelegt werden und auf den Speicher zugegriffen
wird, werden die Rahmenspeicher M15-M0 ausgelesen,
wenn das Signal R/W niedrigen oder L-Pegel hat, während
ein Lesen dann erfolgt, wenn das Signal hohen oder
H-Pegel aufweist. Da das Auswahlsignal H/V einen Zugriff
in Spaltenrichtung oder einen Zugriff in Reihenrichtung
auswählt, erfolgt das Lesen bzw. Schreiben in einer
Normallage, d. h. ohne eine Drehung des Bildes während
des L-Pegels des Signals H/V. Die Daten zum Drehen des
Grundbildes um 90° im Uhrzeigersinn werden im Lesezustand
erzeugt, während das Signal H/V hohen Pegel oder
H-Pegel hat. In einem Schreibzustand werden diejenigen
Daten in den Rahmenspeicher eingeschrieben, die man erhält,
wenn man die während des L-Pegels des Signals H/V nach
links eingeschriebenen Daten im Gegenuhrzeigersinn um 90°
dreht. In der oben beschriebenen Weise lassen sich die
beim Drehen der Bilddaten um 90° im Uhrzeigersinn erhaltenen Daten
während des L-Pegels des Signals H/V auslesen.
Die Daten, die durch Drehen des Bildes um 90°
im Gegenuhrzeigersinn erhalten werden, können während
des H-Pegels des Signals H/V ausgelesen werden. Die
16 Bits stehen gleichzeitig zur Verfügung und können durch
einen einzelnen Lese- bzw. Schreibvorgang verarbeitet
werden, so daß der Speicher eine hohe Zugriffsgeschwindigkeit
aufweist.
Fig. 6 zeigt eine Schaltung nach einer zweiten Ausführungsform
der Erfindung. Ein Bildspeicher CHG
besitzt den Aufbau, der bereits für den Speicher gemäß
Fig. 3 erläutert wurde. Der Bildspeicher CHG besitzt
Anschlüsse zum Empfangen der Blockwerte BLK5-BLK0
des Vertikal/Horizontal-Auswahlsignals H/V, der Adreßwerte
Y7-Y0, X3-X0, und des Lese/Schreibsignals
R/W, sowie Anschlüsse zum Senden der Daten DB15-DB0
bei einem Lesevorgang sowie zum Empfangen der Daten
DB15-DB0 bei einem Schreibvorgang. Die in Fig. 3
gezeigte Schaltung ermöglicht es, nicht nur die Daten
zu lesen, die man erhält, wenn man das Grundbild um 90°
im Uhrzeigersinn dreht, sondern auch Daten zu schreiben,
die man erhält, wenn man das Grundbild um 90° im
Gegenuhrzeigersinn dreht. Die Schaltung nach Fig. 6 vermag
Daten zu lesen oder zu schreiben, die man erhält,
wenn man das Grundbild in Schritten von 90°, nämlich
um 90°, um 180° und 270° im Uhrzeigersinn dreht, oder
um 270°, um 180° und um 90° im Gegenuhrzeigersinn dreht.
Da das Bild mit der Schaltung nach Fig. 6 um ± 90° gedreht
werden kann, läßt sich eine gewünschte Drehung
des Bildes ebenso erreichen wie ein Bild, bei dem vorne
und hinten vertauscht sind, und zwar dadurch, daß man
die Adreßwerte des Bildspeichers CHG umkehrt und die
Bits der Daten vertauscht, d. h. das höchstwertige Bit
MSB und die anderen oberen Bits mit dem niedrigstwertigen
Bit MSB bzw. den anderen unteren Bits vertauscht.
Die Adresse wird durch die Exklusiv-ODER-Schaltung EORG3
und EORG4 invertiert, und die Datenbits werden durch
die Datenaustauscherschaltung WSC ausgetauscht.
Ein Invertier-Steuersignal YINV wird an einen Eingang
der Exklusiv-ODER-Schaltung EORG3 gelegt, und an die
anderen Eingänge dieser Schaltung werden die Adreßsignale
YA7-YA0 der Y-Koordinate gelegt. Wenn das
Steuersignal YINV den Wert "1" hat, also hohen oder
H-Pegel, werden die Adreßwerte YA7-YA0 umgekehrt und
anschließend dem Bildspeicher CHG als Adreßwert YK
zugeführt. Hat das Invertier-Steuersignal YINV den
Wert "0", d. h. L-Pegel, so wird das Ausgangssignal der
Schaltung nicht invertiert und die Adreßwerte YA7-YA0
werden dem Bildspeicher OHG als Adreßwert YK zugeführt.
Ein Eingang der Schaltung EORG4 empfängt das Invertier-Steuersignal
XINV und die anderen Eingänge empfangen
die Adreßwerte XA7-XA4 der X-Koordinate. Lediglich
die oberen vier Bits der Adreßwerte sind notwendig,
und die unteren Bits werden nicht benötigt, da 16 Bits
parallel gelesen werden. Wenn das Steuersignal XINV
den Wert "1" hat, werden die Adreßwerte XA7-XA4 umgekehrt
und so dem Bildspeicher CHG als Adreßwert XK
zugeführt. Hat das Invertier-Steuersignal XINV den
Wert "0", os ist das Ausgangssignal der Schaltung invertiert
und die invertierten Adreßwerte XA7-XA4
werden dem Bildspeicher CHG als Adreßwert XK zugeführt.
Die Exklusiv-ODER-Schaltungen EORG3 und EORG4 vollziehen
eine Invertierung bzw. eine Nicht-Invertierung
der Adreßsignale YA7-YA0 und XA7-XA4, um die so behandelten
Signale dem Bildspeicher CHG zuzuführen.
Die Datentauscherschaltung WSC besitzt zweiphasige
bidirektionale Puffer WSC1 und WSC2, die jeweils
16 Einheiten umfassen. Der bidirektionale Puffer WSC1
bewirkt, daß die Eingangs- und Ausgangsanschlüsse
DB15-DB0 des Bildspeichers den Daten DD15-DD0 entsprechen.
Die Puffergruppe WSC2 bewirkt, daß die
Eingangs- und Ausgangsanschlüsse DB0-DB15 des
Bildspeichers CHG den Daten DD15-DD0 entsprechen.
Der Freigabeanschluß E der Puffergruppe WSC1 empfängt
über den Inverter oder Negator INV das Datentauschersignal
WS, wobei der Anschluß E den Betrieb der Puffergruppe
WSC1 steuert. Die Puffergruppe WSC2 empfängt
das Datentauschersignal WS direkt. Jede Puffergruppe
WSC1 und WSC2 arbeitet, wenn ihre Freigabeklemme E
ein Signal "1" (H-Pegel) empfängt. Wenn das Datentauschersignal
den Wert "1" hat, wird erreicht, daß
die Eingangs- und Ausgangsanschlüsse DB0-DB15 den
Daten DD15-DD0 entsprechen, und die Daten werden
zwischen oberen und unteren Bits vertauscht. Wenn das
Datentauschersignal den Wert "0" hat, wird erreicht,
daß die Eingangs- und Ausgangsanschlüsse DB15-DB0
den Daten DD15-DD0 in einer 1-zu-1-Entsprechung
folgen. Die bidirektionalen Puffergruppen WSC1 und WSC2
empfangen das Signal R/W. Beim Lesen (R/W=0), werden
die Daten DB15-DB0 den Daten DD15-DD0 oder den
Daten DD0-DD15 gleichgemacht, um dadurch das Ausgangssignal
zu erzeugen. Beim Schreiben (R/W=1) sprechen
die Daten DD15-DD0 auf die Daten DB15-DB0 oder die
Daten DB0-DB15 an, um das Ausgangssignal des Bildspeichers
CHG zu liefern.
Fig. 7 zeigt das aus dem Speicher ausgelesene Bild nach
einer Lese-Zeitspanne und das in den Speicher eingeschriebene
Bild nach einer Schreib-Zeitspanne, wenn
das Signal H/V, die Invertier-Steuersignale YINV und
XINV und das Datentauschersignal festliegen.
In Fig. 7 ist eine Lese-Zeitspanne dargestellt, die
den Positionszustand des aus dem Speicher ausgelesenen
Bildes veranschaulicht, wobei in dem Speicher ein
normales Grundbild eingeschrieben ist. Außerdem ist
eine Schreib-Zeitspanne dargestellt, die den Positionszustand
des aus dem Speicher ausgelesenen Bildes
veranschaulicht, wenn sämtliche Signale YINV, XINV,
WS und H/V den Wert "0" haben.
Zunächst zur Situation, in der das Umschaltsignal H/V=0
ist: Wenn die Invertier-Steuersignale YINV und XINV und
das Datentauschersignal WS sämtlich "0" sind, kann man
ein normales Grundbild sowohl während des Schreibvorgangs
als auch während des Lesevorgangs erhalten. In
anderen Worten: Die Daten, die keinerlei Drehung unterworfen
werden, können sowohl gelesen als auch geschrieben
werden. Ist das Invertier-Steuersignal YINV "1",
so werden die Adreßwerte YA-YA 0 durch die Schaltung
EORG3 invertiert und man erhält ein von rückwärts betrachtetes
oder invertiertes Bild. Wenn das Grundbild
in der normalen Lage eingeschrieben ist, wird ein auf
dem Kopf stehendes, von hinten betrachtetes Bild ausgelesen.
Wenn das Grundbild eingegeben wird, läßt sich
ein auf dem Kopf stehendes, von hinten betrachtetes Bild
einschreiben.
Wenn das Invertier-Steuersignal YINV "0" ist, während
das Invertier-Steuersignal XINV und das Datentauschersignal
WS jeweils "1" sind, kann das von rückwärts betrachtete
Bild (bei dem die linke und die rechte Seite
vertauscht oder umgekehrt sind) gelesen und geschrieben
werden. Wenn die Steuersignale YINV und XINV und das
Datentauschersignal WS "1" sind, werden die X-Koordinaten
und die Y-Koordinaten bezüglich linker und rechter Seite
sowie oberer und unterer Seite umgekehrt und die Daten
werden durch das Datentauschersignal ausgetauscht, so
daß das Grundbild - um 180° gedreht - gelesen oder geschrieben
werden kann.
Wenn das Signal H/V den Wert "1" hat und wenn sämtliche
anderen Signale YINV, XINV und WS "0" sind, kann das
Grundbild - um 90° im Uhrzeigersinn gedreht - gelesen und
- um 90° im Gegenuhrzeigersinn gedreht - geschrieben
werden. Das Signal H/V wird dazu verwendet, um 90°
im Uhrzeigersinn gedrehte Daten zu liefern oder zu
empfangen, ansprechend auf die dem Speicher angebotenen
Adreßwerte. Wenn das Signal H/V den Wert "1" hat und
das Invertier-Steuersignal YINV den Wert "1" aufweist,
während das Invertier-Steuersignal XINV sowie das Datentauschersignal
WS den Wert "0" haben, kann man das
Bild kopfstehend, ausgetauscht (oder invertiert) und
um 90° im Uhrzeigersinn gedreht, lesen und man kann
das kopfstehende Bild ausgetauscht (oder umgekehrt) sowie
um 90° im Gegenuhrzeigersinn gedreht, schreiben. Wenn
das Signal H/V den Wert "1" hat und das Invertier-Steuersignal
YINV den Wert "0" hat, während das Invertier-Steuersignal
XINV und das Datentauschersignal jeweils
"1" sind, können die Bilddaten, bei denen die linke und
die rechte Seite vertauscht sind, welches nach hinten
umgekehrt ist, und das um 90° im Uhrzeigersinn gedreht
ist, gelesen werden, während die Bilddaten mit vertauschten
rechten und linken Seiten, nach hinten gedrehten
und um 90° im Gegenuhrzeigersinn gedreht geschrieben
werden können. Wenn das Signal H/V ebenso
wie die Invertier-Steuersignale YINV und XINV und das
Datentauschersignal WS den Wert "1" haben, kann das
im Uhrzeigersinn um 270° gedrehte Bild gelesen und
das um 270° im Gegenuhrzeigersinn gedrehte Bild geschrieben
werden.
Indem man den verschiedenen Signalen einen bestimmten
Wert gibt, wird das Bild von der Vorderseite oder
von der Rückseite, um 0°, 90°, 180° und 270° gedreht.
In einer Spalte in Fig. 7 bedeutet ein waagerechter
Strich (Bindestrich) andere Daten als die oben beschriebenen
Daten, und in den meisten Fällen erhält
man die Daten durch Austauschen der Daten nach oben
und nach unten oder zwischen rechts und links in Einheiten
von jeweils 16 Bits.
Das oben beschriebene Ausführungsbeispiel bezieht sich
auf eine Schaltung, bei der gedrehte Daten in vier
Richtungen auf der Vorderseite und der Rückseite des
Bildes geschrieben und gelesen werden können. Es ist
selten, ein rückwärtiges Bild zu verwenden, wenn
aktuelle Bilddaten einer Drehung unterworfen werden,
und in den meisten Fällen erfolgt eine Drehung in
bezug auf das vorderseitige Bild.
Fig. 8 zeigt eine dritte Ausführungsform
der Erfindung. Das vorderseitige Bild kann
als Drehbild in vier Richtungen (nämlich gedreht um 0°,
90°, 180° und 270°) gelesen oder geschrieben werden.
Gemäß der Skizze der Ausführungsform der vorliegenden
Erfindung sind am Eingang des Bildspeichers CHG
Exklusiv-ODER-Schaltungen vorgesehen. Die Daten werden
von den Schaltungen EORG3 und EORG4 invertiert und
die Daten werden weiter invertiert und in ihre ursprüngliche
Position zurückgebracht. Diese logischen Schaltungen
werden vereinfacht und so ausgebildet, daß
sie nicht die rückwärtigen Bilder erzeugen, wodurch
man zu der Dreh-Anordnung gemäß dem dritten Ausführungsbeispiel
kommt.
Die Schaltung hat die gleiche Funktion wie die erste
und die zweite Ausführungsform gemäß Fig. 3 und Fig. 6
und entsprechende Teile sind hier mit entsprechenden
Bezugszeichen versehen.
Die Dreh-Steuersignale FDIR0 und FDIR1 werden ausgelesen,
indem das Grundbild während einer Schreibperiode
um 90°, 180° und 270° im Gegenuhrzeigersinn gedreht
wird, und während einer Schreibperiode eingeschrieben,
indem das Grundbild um 90°, 180° und 270° im Uhrzeigersinn
gedreht wird.
Das Dreh-Steuersignal FDIR0 wird an den Auswahlanschluß
SEL von Selektoren SL3 und SL4 gelegt. Die Adreßwerte
YA7-YA4 und XA7-XA4 werden den Eingangsanschlüssen
A und B des Selektors SL3 zugeführt, während
die Adreßwerte XA7-XA4 sowie YA7-YA4 den Eingangsanschlüssen
A und B des Selektors SL4 zugeführt werden.
Wenn daher das Dreh-Steuersignal FDIR0 den Wert "0"
hat, wählt der Selektor SL3 die Adreßwerte YA7-YA4 am
Eingangsanschluß A aus, während der Selektor SL4 die
Adreßwerte YA7-YA4 an seinem Eingang A auswählt, wobei
die Ausgangssignale der Selektoren SL3 und SL4 dem
einen Eingang einer Gruppe von Exklusiv-ODER-Gliedern,
EORG5 bzw. EORGF6 zugeführt werden. Die anderen Eingänge
von EORG5 empfangen das Dreh-Steuersignal FDIR1, und
deshalb werden die Ausgangssignale des Selektors SL3
bei dem Wert "0" des Dreh-Steuersignals FDIR1 nicht invertiert,
beim Signalanfang "1" des Dreh-Steuersignals
FDIR1 jedoch invertiert, um so die Rahmenspeicher M15-M0
zu veranlassen, die Ausgangssignale des Selektors SL3
als Adreßwerte YA7-YA4 zu empfangen. Die Eingänge
eines Exklusiv-ODER-Glieds EOR empfangen die Dreh-Steuersignale
FDIR0 und FDIR1.
Die Ausgangssignale des Selektors SL4 werden einem der
Eingänge der Exklusiv-ODER-Schaltung EORG6 zugeführt,
der andere Eingang von EORG6 empfängt das Ausgangssignal
des Exklusiv-ODER-Glieds EOR. Wenn also die Dreh-Steuersignale
FDIR0 und FDIR1 die Werte "1" und "0" oder aber
"0" und "1" haben wird das ausgewählte Signal invertiert,
wohingegen dann, wenn die Signale den gleichen
Wert haben (d. h. also beide "0" oder beide "1" sind),
das ausgewählte Signal nicht invertiert ist, so daß
die Rahmenspeicher M15-M0 die Dreh-Steuersignale
empfangen.
Fig. 9 zeigt die Beziehung zwischen den Dreh-Steuersignalen
FDIR1 und FDIR0 und den Adreßwerten Y7-Y4 sowie X3-X0.
Wenn die Dreh-Steuersignale FDIR1 und FDIR0 die Werte "0"
und "0" haben, empfangen die Rahmenspeicher M15-M0 die
Eingangs-Adreßwerte YA7-YA4 als Adreßwerte Y7-Y4,
sowie die Eingangs-Adreßwerte YA7-YA4 als Adreßwerte
X3-X0. Wenn die Dreh-Steuersignale FDIR1 und FDIR0 die
Werte "0" bzw. "1" haben, empfangen die Rahmenspeicher
M15-M0 die Adreßwerte YA7-YA4 als die Adreßwerte Y7-Y4
und die invertierten Werte (die durch einen Querbalken
"-" in Fig. 9 angedeutet sind) der Adreßwerte YA7-YA4
als Adreßwert Y7-Y4.
Wenn die Dreh-Steuersignale FDIR1 und FDIR0 die Werte
"1" bzw. "0" haben, werden die Adreßwerte YF7-Y4 die
invertierten Werte der Adreßwerte YA7-YA4, und die
Adreßwerte X3-X0 sind die invertierten Werte der
Adreßwerte XA7-XA4. Wenn die Dreh-Steuersignale FDIR1
und FDIR0 die Werte "0" bzw. "1" haben, sind die Adreßwerte
Y7-Y4 die invertierten Werte der Adreßsignale
YA7-YA4, und die Adreßwerte X3-X0 sind die Adreßwerte
YA7-YA4.
Das Dreh-Steuersignal FDIR1 wird einem der Eingänge der
Exklusiv-ODER-Schaltung EORG7 zugeführt. Da die Adreßwerte
YA3-YA0 dem anderen Eingang dieser Schaltung
EORG7 zugeführt werden, werden deren Ausgangssignale
dann nicht invertiert, wenn das Dreh-Steuersignal FDIR1
"0" ist, und sie werden invertiert, wenn dieses Signal
den Wert "1" hat, so daß dem Adreßdecoder ADRR sowie
dem Decoder DRR die entsprechenden Signale als Adreßwerte
YB3-YB0 zugeführt werden.
Die Verbindung zwischen dem Adreßdecodierer ADRR und
den Rahmenspeichern M15-M0, zwischen dem Decodierer
und der Bit-Schiebeschaltung BSC sowie zwischen den
Rahmenspeichern M15-M0 und der Bit-Schiebeschaltung BSC
entspricht der Verbindung nach Fig. 3. Die Anschlüsse
des Adreßdecodierers empfangen das Dreh-Steuersignal
FDIR 0, welches die decodierten Daten auswählt, die in
Fig. 4A und 4B gezeigt sind.
Die Bit-Schiebeschaltung BSC ist an die Datentauscherschaltung
WSC angeschlossen. Die Ausgangssignale der
Schaltung EOR bestimmen, ob die beiden Schaltungen
bitweise
durchgeschaltet werden oder ob das niedrigstwertige
Bit LSB durch das höchstwertige Bit MSB ausgetauscht
wird, d. h.: beide Schaltungen sind so verschaltet,
daß sie stellenweise die einzelnen Bits austauschen
oder durchschalten können. Das Lese/Schreib-Signal R/W
wird einem Richtungssteueranschluß der Datentauscherschaltungen
WSC1 und WSC2 oder einem Richtungssteueranschluß
der Bit-Schiebeschaltungen BSC0-BSC15 sowie
dem Lese/Schreib-Anschluß der Rahmenspeicher M15-M0
zugeführt. Wenn das Signal R/W den Wert "1" hat, ist
die Richtung in den Datentauscherschaltungen WSC1 und
WSC2 sowie in den Bit-Schiebeschaltungen BSC0-BSC15
so gewählt, daß die Daten den Rahmenspeichern M15-M0
zugeführt werden, welche schließlich die Daten empfangen.
Ist allerdings das Signal R/W "0", so liefern die Rahmenspeicher
M15-M0 die in ihnen gespeicherten Daten, und
die Datentauscherschaltungen WSC1 und WSC2 haben ihre
Richtungen so festgelegt, daß die Daten von den Rahmenspeichern
M15-M0 zu einer externen Einrichtung
übertragen werden.
Wenn beide Dreh-Steuersignale FDIR1 und FDIR0 den Wert
"0" haben, so entspricht dies dem Fall, daß sämtliche
Invertier-Steuersignale YINV und XINV, das Datentauschersignal
WS und das Signal H/V den Wert "0" haben.
Die Adreßwerte Y7-Y0 der Rahmenspeicher M15-M0
werden zu den Adreßwerten YA7-YA0, die Adreßwerte
X3-X0 werden zu den Adreßwerten XA0-XA4. Die Eingangs-
und Ausgangsdaten D15-D0 der Rahmenspeicher
M15-M0 werden in Wort-Einheiten (16 Bits) um einen
Betrag der Adreßwerte YA3-YA0 durch die Bit-Schiebeschaltung
BSC verschoben, so daß sie den Eingangs- und
Ausgangsdaten DB15-DB0 der externen Schaltung entsprechen.
Das Ausgangssignal ("0") der Schaltung EOR
wird von dem Negator INV zu einer "1" invertiert. Dieses
Signal wird der Datentauscherschaltung WSC1 zugeführt,
so daß die Eingangs- und Ausgangsdaten DB0-DB15 den
Eingangs- und Ausgangsdaten DD0-DD15 in direkter
Zuordnung entsprechen. Man erhält also dadurch den
gleichen Speicherzugriff wie bei der grundlegenden Speicheranordnung
gemäß Fig. 2.
Wenn die Dreh-Steuersignale FDIR1 und FDIR0 die Werte
"0" bzw. "1" haben, werden die Adreßwerte Y7-Y4 die
Adressen YA7-YA4, und die Adreßwerte X3-X0 werden
YA7-YA4. Die Adressen der Speicher M15-M0 sind die
invertierten Werte der Adreßwerte YA7-YA4, und die
Adreßwerte YA7-YA4 sind die invertierten Signale der
Adreßwerte YA7-YA4. Die Adreßwerte YA7-YA4 der
Y-Koordinate sowie die Adreßwerte YA7-YA4 der X-Koordinate
werden invertiert und dann den Rahmenspeichern zugeführt.
Jetzt empfängt der S-Anschluß des Adreßdecodierers
ADRR eine "0", und außerdem empfängt der Adreßdecodierer
die Adreßwerte YA3-YA0, nachdem diese durch
die Schaltung EORG7 invertiert wurden. Somit beginnt
der Zugriff auf den Speicher an der unteren rechten
Stelle und schreitet entlang einer einzelnen Querzeile
fort. Da dem Decodierer DRR die invertierten Daten zugeführt
werden, werden sie um einen bestimmten Betrag
verschoben, wenn die Daten entlang einer einzelnen
Horizontalzeile aus der unteren rechten Position ausgelesen
werden, d. h. wenn das Grundbild in umgekehrter
Richtung ausgelesen wird. Wenn die Daten in umgekehrter
Folge ausgelesen werden, liegen die 16 Bits eines Worts
in der Reihenfolge des Grundbildes vor. Folglich wird
eine "1" an den Anschluß E der Datentauscherschaltung WSC2
gelegt, wodurch die Positionen MSB und LSB der Bits vertauscht
werden. Deshalb ist es möglich, die Daten in
Einheiten von 16 Bits in Querrichtung auszulesen,
beginnend damit, daß der unter Decodierer die nichtinvertierten
Adreßwerte YA3-YA0 über die Exklusiv-ODER-Schaltung
EORG7 empfängt und sie dann den Rahmenspeichern
zuführt, nachdem sie der in Fig. 4B gezeigten
Adressen-Decodierung unterzogen wurden. Folglich wird
auf die Rahmenspeicher M15-M0 in der Weise zugegriffen,
daß der Zugriff an der oberen rechten Stelle
beginnt und fortlaufend entlang einer einzelnen vertikalen
Zeile fortschreitet. In diesem Moment empfängt
der Anschluß E der Datentauscherschaltung WSC2 das
Ausgangssignal "1" der Exklusiv-ODER-Schaltung EOR,
so daß die Eingangs- und Ausgangsdaten DD15-DD0 den
Daten DB0-DB15 der Bit-Schiebeschaltung BSC entsprechen.
Wie oben erläutert, werden die 16 Bits der vertikalen
einzelnen Zeile ausgelesen und die Bitpositionen umfassen
ein Wort derart, daß sie sich von unten nach
oben erstrecken. Dadurch wird die Aufwärts/Abwärts-Beziehung
der Bitpositionen durch die Datentauscherschaltung
WSC2 vertauscht. Durch diesen Vorgang wird auf
die Speicher in der Form zugegriffen, daß eine Drehung
im Uhrzeigersinn um 90° erfolgt, wenn die Dreh-Steuersignale
FDIR1 und FDIR0 die Werte "0" bzw. "1" haben.
Die im Gegenuhrzeigersinn um 90° gedrehten Daten werden
während eines Lesevorgangs ausgelesen und um 90° im
Uhrzeigersinn gedreht eingeschrieben.
Wenn die Dreh-Steuersignale FDIR1 und FDIR0 die Werte "1"
bzw. "0" haben, werden die Adreßwerte Y7-Y14 den rechten
Stellen der Rahmenspeicher zugeführt, so daß die Bitpositionen
von MSB und LSB invertiert werden, wodurch ein
Lesebetrieb oder ein Schreibbetrieb unter Drehung des
Grundbildes im Uhrzeigersinn oder im Gegenuhrzeigersinn
möglich ist.
Wenn beide Dreh-Steuersignal FDIR1 und FDIR0 den Wert
"1" haben, sind die den Rahmenspeichern M15-M0 zugeführten
Adreßwerte Y7-Y4 die invertierten Werte der
Adreßwerte XA7-XA4 und die Adreßsignale X3-X0 sind
die Adreßwerte YA7-YA4. Da der Exklusiv-ODER-Schaltung
EORG7 ebenfalls eine "1" zugeführt wird, werden die
Adreßwerte YA3-YA0 invertiert und dann dem Adreßdecodierer
ADRR und dem Decodierer DRR zugeführt. Da eine
"1" außerdem dem Anschluß S des Adreßdecodierers ADRR
zugeführt wird, werden andere Andreßwerte den unteren
Adressen Y3-Y0 der jeweiligen Rahmenspeicher M15-M0
zugeführt, so daß ein Zugriff auf eine einzelne vertikale
Zeile des Speichers erfolgt, beginnend an der
unteren linken Position. Dieser Zugriff ist der gleiche
wie der, bei dem das Grundbild aus dem unteren linken
Ende in Aufwärtsrichtung ausgelesen wird. Die Bit-Schiebeschaltung
BSC ändert sequentiell das Ausmaß der Verschiebung
während eines Lesevorgangs durch die invertierten
Adreßwerte YA3-YA0. Dann wird dem Anschluß E der
Datentauscherschaltung WSC1 eine "1" zugeführt, und
folglich entsprechen die Datenwerte an den Eingangs- und
Ausgangsanschlüssen DB15-DB0 der Bit-Schiebeschaltung
BSC den Datenwerten an den Eingangs- und Ausgangsanschlüssen
DD15-DD0 einer externen Vorrichtung. Deshalb
wird fortlaufend in vertikaler Richtung ein Lese- oder
ein Schreibvorgang durchgeführt, und zwar in Einheiten
von 16 Bits, beginnend an der unteren linken Position.
Das heißt: ein Lesevorgang erfolgt bei einer Drehung um
270° im Gegenuhrzeigersinn, und ein Schreibvorgang erfolgt
bei einer Drehung um 90° im Uhrzeigersinn.
Fig. 10A-10D zeigen Anzeige-Beispiele eines Drehbildes,
die man erhält, wenn man einen Lese- oder Schreibvorgang
gemäß der Erfindung durchführt. Ein Schreibvorgang
wird durchgeführt, indem die Dreh-Steuersignale
FDIR1 und FDIR0 folgende Werte aufweisen "0", "0" gemäß
Fig. 10A; "0", "1" gemäß Fig. 10B; "1", "0" gemäß
Fig. 10C; "1", "1" gemäß Fig. 10D (diese entspricht
der Tabelle in Fig. 9). Der Schreibvorgang wird durchgeführt,
indem beide Dreh-Steuersignale FDIR1 und FDIR0
den Wert "0" haben. Dabei werden die Bilddaten im Uhrzeigersinn
um 0°, 90°, 180° und 270° gedreht, wie in
den Fig. 10A-10D gezeigt ist. Die Drehung des Bildes
erfolgt nicht nur während des Schreibvorgangs, sondern
kann auch während des Lesevorgangs durchgeführt werden,
d. h. dann, wenn die Dreh-Steuersignale FDIR1 und FDIR0
während des Lesevorgangs geändert werden, wobei die
Drehung der Bilddaten in ähnlicher Weise vonstatten
geht. Während des Lesevorgangs können die Bilddaten so
erhalten werden, daß eine Drehung im Gegenuhrzeigersinn
um 90°, um 180° und um 270° - entgegen dem Schreibvorgang -
erfolgt. Wenn die Dreh-Steuersignale FDIR1 und FDIR0
während des Anlegens eines Grundbildes nicht die Werte
"0", "0" haben, entsprechen ihre Werte einer Speicherstelle
des Grundbildes. Dies gilt auch für die Ausführungsbeispiele
nach Fig. 3 und Fig. 6.
Aus der obigen Beschreibung geht der Aufbau eines
Speichers für (n×n) Punkte und der Aufbau einer Treiberschaltung
für einen solchen Speicher hervor. Im
folgenden soll eine Treiberschaltung für mehrere Bildspeicher
mit den oben erläuterten Speichern und deren
Treiberschaltungen erläutert werden, wobei auf die
Bildspeicher in vertikaler oder Querrichtung, im Uhrzeigersinn
oder im Gegenuhrzeigersinn, nach oben oder
nach unten zugegriffen wird.
Fig. 11 zeigt eine Schaltungsskizze der vierten Ausführungsform
der Erfindung. Die Skizze nach Fig. 11
zeigt eine Treiberschaltung für die Speicher gemäß dem
dritten Ausführungsbeispiel der Erfindung.
Ein Adreßbus ADRBUS eines Mikroprozessors CPU ist an
einem Adressen-Decodierer CADR und an einen Puffer BUF1
angeschlossen. Ein Datenbus DABUS des Mikroprozessors
CPU ist an Zwischenspeicher LAT1 und LAT3 sowie an
einen bidirektionalen Puffer BBUF angeschlossen. Der
Mikroprozessor CPU führt ein Programm aus, welches in
einem (nicht gezeigten) Speicher abgespeichert ist, und
er verarbeitet Bilddaten, um sie in die oben erwähnten
Speicher einzuschreiben. Um das Schreiben von Daten
in Verbindung mit einer speziellen Anzeigefunktion zu
erreichen, werden die notwendigen Daten in die erwähnten
Zwischenspeicher LAT1-LAT3 eingeschrieben, und die
Adreßwerte YA11-YA0 sowie XA11-XA4, die von einem
Adressengenerator kommen, werden für den Zugriff auf
(nicht gezeigt) Rahmenspeicher gesteuert. Das Schreiben
in die Zwischenspeicher LAT1-LAT3 erfolgt durch
Empfang eines Adreßsignals von dem Mikroprozessor CPU
über den Adreßbus ADRBUS, durch Decodieren des Adreßsignals
mit Hilfe des Adressen-Decodierers CADR und
durch Anlegen eines empfangenen Zeitsteuersignals an
die Zwischenspeicher LAT1-LAT3 nach Empfang eines
speziellen Adressenwerts, der den jeweiligen Zwischenspeichern
LAT1-LAT3 zugeordnet ist, um diese in die
Lage zu versetzen, Daten von dem Datenbus DABUS zu
empfangen. Der Zwischenspeicher LAT3 speichert die Dreh-Steuersignale
FDIR0 und FDIR1 und liefert sie an die
in Fig. 8 und 11 dargestellten Anschlüsse.
Der Puffer BUF1 ist an den Adreßbus ADRBUS angeschlossen,
während der bidirektionale Puffer BBUF an den Datenbus
DABUS angeschlossen ist. Wenn von dem Adreßbus ADRBUS
eine spezielle Adresse an den Adressen-Decodierer CADR
gegeben wird, liefert dieser ein Freigabesignal E an
die Puffer BUF1 und BBUF, damit die Adressenwerte auf
dem Adreßbus ADRBUS an die Anschlüsse des Speichers RAM
angelegt werden, damit dieser die Adreßwerte A7-A0
empfängt, und die Daten auf dem Datenbus DABUS werden an
die Anschlüsse des Speichers RAM gelegt, damit die Eingangs-
und Ausgangsdatenwerte DX6-DX0 empfangen bzw.
gesendet werden. Der Speicher RAM umfaßt 7×256 Bits
und speichert Zuordnungsdaten zum Festlegen einer Anordnung
eines Speichers aus 256×256 Punkten. Die gespeicherten
Daten werden ausgewählt durch von dem Puffer
BUF2 angelegte Werte, und die Daten werden dann als
die Blockwerte BLK6-BLK0 dem Bildspeicher zugeführt.
Wenn man annimmt, daß ein Bild der Größe B4 2304×3334
Punkte umfaßt, umfassen die Bildspeicher 9 Blöcke in
Querrichtung und 14 Blöcke in vertikaler Richtung. Fig. 12
zeigt ein Beispiel für die Blöcke, die dem Bild der
Größe B4 für die Anzeige zugeordnet sind. Neun Blöcke
0H-8H, 9H-11H und 75H-7DH in Querrichtung und
14 Blöcke in vertikaler Richtung werden adressiert, und
insgesamt sind 126 Blöcke vorhanden. Blöcke 7E und 7F
bleiben übrig. Die Daten in 9 Blöcken werden so ausgelesen,
daß der Zugriff auf die Blöcke 0H, 1H, . . . 8H
nacheinander in bezug auf 256 Zeilen erfolgt, woraufhin
anschließend
sämtliche Bilder aus den Blöcken 9H-11H,
. . . 75H-7DH für die jeweils 256 Zeilen ausgelesen werden.
Bei diesem Vorgang kann der ein Bild der Größe B4
speichernde Speicher einem Zugriff unterzogen werden,
und das Bild kann ausgelesen werden, nachdem es um
90°, 180° und 270° gedreht wurde. Der Betrieb dieser
Ausführungsform wird im folgenden näher erläutert.
Insgesamt erfolgt ein Zugriff auf 126 Bilder durch
Bereitstellen der jeweiligen Blockwerte BLK6-BLK0
aus dem Speicher RAM, wie es oben erläutert wurde, und
dies geschieht auf der Grundlage der zuvor in den
Speicher RAM eingeschriebenen Daten. Von dem Puffer
BUF2 werden dazu sequentiell Adressen geliefert, und
es werden dementsprechend Blockwerte BLK6-BLK0 gespeichert,
die später dem Bildspeicher zugeführt
werden sollen.
Erfolgt jedoch eine Drehung um 90°, 180° oder 270°, so
ist die Reihenfolge davon abhängig, ob die Drehrichtung
im Uhrzeigersinn oder im Gegenuhrzeigersinn oder in
Querrichtung erfolgt, oder ob die Bewegung von unten
nach oben oder von oben nach unten in der vertikalen
Richtung erfolgt. Dies wird gesteuert durch die Dreh-Steuersignale
FDIR0 und FDIR1, die den Betrieb der Selektoren
SL5-SL8 und der Subtrahierschaltungen SUB1
und SUB2 festlegen.
Puffer BUF3 und BUF4 empfangen Vertikalrichtungsadressen
YA11-YA0 und Querrichtungsadressen XA11-XA4, wenn
die Darstellung der Größe B 4 einem Einzelbild entspricht.
Da die Daten in Einheiten von 16 Bits parallel in Querrichtung
vorliegen können, werden die Querrichtungsadressen
XA3-XA0 nicht angelegt. Die Adressen YA11-YA8
in vertikaler Richtung werden an den Anschluß A des
Selektors SL5 und an den Anschluß B des Selektors SL6
über den Puffer BUF3 angelegt. Die Adressen XA11-XA8
in Querrichtung werden über den Puffer BUF4 an den
Anschluß A des Selektors SL6 und an den Anschluß B des
Selektors SL5 angelegt. Die Selektoren SL5 und SL6
liefern an ihrem Ausgangsanschluß abhängig vom Pegel
des dem Anschluß SEL zugeführten Signals die am Eingang
A oder am Eingang B anstehenden Signale. Wird dem
Anschluß SEL eine "0" zugeführt, so wird das am Anschluß
A anstehende Signal durchgeschaltet, und wenn am Anschluß
SEL eine "1" ansteht, wird das am Anschluß B anstehende
Signal ausgewählt. Wenn das Signal FDIR0 den
Wert "0" hat, wählen die Selektoren SL5 und SL6 die
Vertikalrichtungsadressen YA11-YA8 und die Querrichtungsadressen
XA11-XA8 am Anschluß A aus. Die Ausgänge
der Selektoren SL5 und SL6 werden den Subtrahiereingängen
SB einer Subtrahierschaltung SUB1
bzw. SUB2 zugeführt, außerdem dem Anschluß A von
Selektoren SL7 und SL8. In den Zwischenspeichern LAT2
und LAT1 gespeicherte Daten YB0-YB3 sowie XB0-XB3
werden einem Eingang SA der Subtrahierschaltungen SUB1
bzw. SUB2 zugeführt. Ein Differenz-Ausgang SQ der
beiden Subtrahierschaltungen SUB1 und SUB2 ist verbunden
mit dem Anschluß B des Selektors SL7 bzw. SL8.
Die Selektoren SL5 und SL6 wählen entweder Vertikalrichtungsadressen
YA11-YA8 oder Querrichtungsadressen
XA11-XA8 aus und liefern sie als Adressen BY3-BY0
und BX3-BX0.
Die ausgewählten Ausgangssignale BY3-BY0 und BX3-BX0
der Selektoren SL5 und SL6 bestimmen andererseits die
Ergebnisse BA7-BA4 und BA3-BA0 der Subtrahierschaltungen.
Das Dreh-Steuersignal FDIR1 wird an den Auswahlanschluß
SEL des Selektors SL7 gelegt. Wenn also das
Dreh-Steuersignal FDIR1 den Wert "0" hat, werden die
Ausgänge BY3-BY0 des Selektors SL5 ausgewählt; hat
das Signal FDIR1 den Wert "1", so werden die Ausgänge
BA7-BA4 der Subtrahierschaltung SUB1 ausgewählt.
Der Auswahlanschluß SEL des Selektors SL8 ist an den
Ausgang der Exklusiv-ODER-Schaltung EORG1 angeschlossen,
wenn die Dreh-Steuersignale FDIR0 und FDIR1 zugeführt
werden. Wenn also diese Signale beide den Wert "0" oder
beide den Wert "1" haben, wählt der Selektor SL8 den
Ausgang des Selektors SL6 aus, und wenn das Signal
FDIR0 oder FDIR1 den Wert "0" und das andere Signal den
Wert "1" hat, wählt der Selektor SL8 die Ausgänge
BA3-BA0 der Subtrahierschaltung SUB2 aus. Das decodierte
Signal vom Adressen-Decodierer CADR wird dem
Freigabeanschluß E des Puffers BUF2 über den Negator
INV1 zugeführt. Wenn also ein Prozessor über den Puffer
BUF2 auf den Speicher zugreift, wird der decodierte
Wert "1", wodurch der Puffer BUF2 und der bidirektionale
Puffer BBUF arbeiten und ein Lesen/Schreiben des Speichers
ermöglichen. Das Lese/Schreib-Signal R/W des Prozessors
wird an den bidirektionalen Puffer BBUF und den Speicher
RAM angelegt, und während eines Lesevorgangs liefert
der bidirektionale Puffer BBUF die Daten von dem Speicher
zum Datenbus DABUS, während bei einem Schreibvorgang der
bidirektionale Puffer BBUF die Daten von dem Datenbus
DABUS zu dem Speicher RAM liefert, der die Daten empfängt.
Wenn die anderen Adreßwerte an den Adreßbus ADRBUS zum
Zugreifen auf die anderen Schaltungen, die Zwischenspeicher
LAT1-LAT3 und die übrigen in der Zeichnung
dargestellten Schaltungen gelegt werden, liefert der
Adressen-Decodierer CADR eine "0" an den Puffer BUF1 sowie
den bidirektionalen Puffer BBUF, um dadurch den Betrieb
dieser Pufferschaltungen zu beenden. Da die Ausgangssignale
des Adressen-Decodierers CADR dem Freigabeanschluß
des Puffers BUF2 über den Negator INV1 zugeführt
werden, wird eine "0" in eine "1" umgesetzt,
bevor das Signal dem Freigabeanschluß E des Puffers
BUF2 zugeführt wird, so daß der Puffer BUF2 arbeitet.
Das heißt: in dieser Situation wird das von den
Selektoren SL7 und SL8 ausgewählte Signal an diejenigen
Anschlüsse des Speichers gelegt, denen die Adreßwerte
zugeführt werden.
Fig. 13 ist eine Tabelle, die verschiedene Zustände
der Dreh-Steuersignale FDIR1 und FDIR0 mit den dazugehörigen,
dem Speicher zugeführten Adreßwerten darstellt.
Wenn beide Dreh-Steuersignale FDIR1 und FDIR0 den Wert
"0" haben, werden die oberen vier Bits YA11-XA8 der
Queradresse an die oberen bzw. die unteren Adressen
des Speichers RAM gelegt. Da die unteren acht Bits
YA7-YA0 der Vertikaladresse sowie die unteren vier
Bits XA7-XA4 der Queradresse dem Bildspeicher zugeführt
werden, wird die Normallage (d. h. das Bild in
der ungedrehten Lage) der Bilddaten angesprochen. Da
die Drehung des Bildes durch die Dreh-Steuersignale
FDIR0 und FDIR1 gesteuert wird, wie in Fig. 8 dargestellt
ist, wird die Normallage des Bildes erhalten.
Wenn die Dreh-Steuersignale FDIR1 und FDIR0 die Werte
"0" bzw. "1" haben, werden der Wert, der durch das
Subtrahieren der Vertikaladressen YA11-YA8 von den
Vertikaladressen XA11-XA8 erhalten wird, und die
Werte XB3-XB0, die im Zwischenspeicher LAT1 gespeichert
sind, den oberen bzw. den unteren Adressen
des Speichers RAM zugeführt. Die maximale Zahl der
Blockwerte (d. h.: die maximale Zahl der Blöcke, die
eine einzelne Querreihe der normalen Bildlage bilden)
sind in dem Zwischenspeicher LAT gespeichert. Die
oberen vier Bits der Adresse des Speichers RAM stellen
die Vertikaladresse der Normalbildlage dar und die
unteren vier Bits der Adresse des Speichers RAM bilden
die Queradressen der Normalbildlage. Somit werden die
Querrichtungsadressen XA11-XA8 verwendet für den
Zugriff in vertikaler Richtung des Normalbildes, und
die Querrichtungsadressen YA11-YA8 werden für den
Zugriff in Querrichtung und in umgekehrter Richtung
(d. h. von rechts nach links) benutzt. Das obere rechte
Ende des Normalbildes wird als Bezugs- oder Basispunkt
betrachtet.
Wenn das Dreh-Steuersignal FDIR1 den Wert "1" und das
Dreh-Steuersignal FDIR0 den Wert "0" hat, empfängt
der Auswahlanschluß SEL der Selektoren SL7 und SL8
eine "1", und die Selektoren SL7 und SL8 wählen das
Ergebnis der Subtrahierschaltungen SUB1 und SUB2 aus.
Der maximale Blockwert der anderen Zeile (d. h.: der
maximale Blockwert, der eine vertikale Zeile der
Normalbildlage darstellt) ist in dem Zwischenspeicher
LAT2 gespeichert. Die Adreßwerte des Speichers RAM
sind (YB3-YB0)-(YA11-YA8) und (XB3-XB0)-(XA11-XA8).
Diese Werte entsprechen dem Fall, daß
der Zugriff zu der Normalbildlage einer Drehung von
180° unterzogen wird.
Haben die Dreh-Steuersignale FDIR1 und FDIR0 beide
den Wert "1", so wählt der Selektor SL7 das Ausgangssignal
der Subtrahierschaltung SUB1 aus, und der
Selektor SL8 wählt das Auswahlergebnis des Selektors
SL6 aus, und die Adreßwerte für den Speicher RAM sind
dann (YB3-YB0)-(XA11-XA8) und YA11-YA8, d. h.:
ein Lesevorgang erfolgt unter Berücksichtigung des
unteren linken Endes der Normalpositions-Koordinate
als Bezugspunkt. Die Adreßwerte A7-A0 werden dem
RAM zugeführt, und die jeweiligen Blöcke, die vorab entsprechend
den Daten gebildet wurden, werden ausgewählt
und dann erfolgt ein Lesevorgang oder ein Schreibvorgang.
Wenn auf den Bildspeicher zugegriffen wird mit einer
im Uhrzeigersinn erfolgenden Drehung um 90°, 180°
oder 270°, wird auch auf die jeweiligen Blöcke mit
einer im Uhrzeigersinn erfolgenden Drehung um 90°,
180° oder 270° zugegriffen, was in bezug auf den jeweiligen
Block erfolgt. Die oberen vier Bits der
Querrichtungsadressen XA11-XA4 und die oberen Bits
der Vertikaladressen YA11-YA0 werden den Blockadressen
zugeordnet. Die Vertikaladressen XA3-XA0 werden beim
Zugriff auf den Speicher, der in Einheiten von 16 Bits
erfolgt, nicht benötigt. Wenn der maximale Blockwert
erhalten wurde, nachdem die jeweilige Drehung in den
Zwischenspeichern LAT1 und LAT2 gespeichert ist, wird
das Normalbild um 90°, 180° oder 270° gedreht, um die
Bilddaten zu liefern.
Obschon in der Zeichnung nicht dargestellt, ist ein
Lese- oder ein Schreibvorgang bezüglich des Rahmenspeichers
möglich durch den Zugriff auf den Speicher in
Einheiten des in Fig. 11 dargestellten Blocks. Während
des Schreibvorgangs erfolgt das Schreiben durch Drehen
des Grundbildes um 90°, 180° oder 270° im Uhrzeigersinn,
und während eines Lesevorgangs erfolgt das Lesen bei
einer Drehung von 90°, 180° oder 270° bezüglich der
Leserichtung des Bildspeichers. Da es sich bei dem
Normalbild um ein regelmäßiges Rechteck handeln kann,
ist der maximale Adreßwert beim Lesevorgang und beim
Schreibvorgang verschieden.
Wie oben beschrieben, haben Speicheranordnung und Treiberschaltung
des Speichers einen speziellen Aufbau bei
dem dargestellten Ausführungsbeispiel, jedoch ist die
Erfindung nicht auf die Speicheranordnung nach Fig. 2
beschränkt. Das erfindungsgemäße Verschieben kann auch
in Einheiten von 3 Bits bezüglich der jeweiligen Reihe
durchgeführt werden. Möglich ist auch eine Anordnung
in Einheiten von ungeraden Zahlen oder eine Anordnung
mit beliebigen Zahlen.
Die Speicher lassen sich in vertikaler und in Querrichtung
in Einheiten von 16 Bits unterteilen. Die
Anordnung kann mit beliebigen Zahlen derart erfolgen,
daß die Daten in vertikaler oder horizontaler Richtung
innerhalb eines Bereichs von 10×16 Punkten ausgelesen
werden, wobei das gleiche Bit jeweils beim Lesen
eliminiert wird.
In diesem Fall sollten der Adressen-Decodierer ADRR und
der Decodierer DRR in ähnlicher Weise ausgebildet sein,
um die Adressen nach Art beliebiger Zahlen oder Zufallszahlen
zu decodieren.
Bei dem oben beschriebenen Ausführungsbeispiel der
Erfindung werden die Adressen in Querrichtung und
die Adressen in Vertikalrichtung durch den Selektor
ausgewählt, um dem Speicher zugeführt zu werden,
allerdings ist die Erfindung nicht auf diesen speziellen
Fall beschränkt. Zum Beispiel können die Querrichtungs-
und die Vertikalrichtungsadressen dem Adressen-Decodierer
zugeführt werden und der Wert des Adressen-Decodierers
kann durch das Vertikal/Horizontal-Auswahlsignal
H/V ausgewählt werden.
Bei einem Ausführungsbeispiel der Erfindung wird die
Subtrahierschaltung dazu verwendet, die Adressen zu
erfassen, wenn der Zugriff in umgekehrter Richtung
erfolgt. Allerdings kann auch der Speicher selbst in
der Lage sein, die gleiche Adreßumsetzung zu vollziehen.
Außerdem muß es sich bei dem Speicher RAM nicht
um einen Lese/Schreib-Speicher handeln, sondern es
kann auch ein Festspeicher verwendet werden. Ferner ist
es möglich, daß die Adreßwerte A7-A0 dem Blockwert
direkt in einer 1-zu-1-Zuordnung entsprechen.
Claims (13)
1. Speicherschaltung zum Speichern von Bilddaten, umfassend
eine Speicheranordnung (M0-M15, CHG) mit Ein-Block-Speichereinrichtungen
zum Speichern von n×n Bildpunkten der Bilddaten,
und eine Zugriffseinrichtung für den Zugriff auf die Blockspeichereinrichtung,
gekennzeichnet durch folgende Merkmale:
- - in je einer einzelnen Zeilenadresse ist eine vorbestimmte Mehrzahl von Punktdaten in Zeilenrichtung der Blockspeichereinrichtung gespeichert;
- - in Zeilenrichtung ist die Mehrzahl von Punktdaten von Zeile zu Zeile zeilenweise zyklisch versetzt gespeichert;
- - die Zugriffseinrichtung (SL1, SL2, EORG1, EORG2, ADRR; EORG3, EORG4; SL3, SL4, EORG5-EORG7, ADRR; BUF1-BUF4, SL5-SL8, SUB1, SUB2, EOR1, RAM) greift abhängig von der Bilddarstellungsrichtung mit Zeilenadressierung oder mit Spaltenadressierung auf je eine vorbestimmte Mehrzahl von Punktdaten einer Zeile oder die vorbestimmte Mehrzahl von Punktdaten zu, die in anderen Spaltenadressen der vorbestimmten Anzahl von Zeilen gespeichert sind, und
- - an den Datenanschluß der Blockspeichereinrichtung ist eine Verschiebeeinrichtung (BSC, WSC, BBUF) angeschlossen, die die aus der Blockspeichereinrichtung ausgelesenen Punktdaten derart verschiebt, daß die beim Speichern erfolgte Verschiebung rückgängig gemacht wird.
2. Schaltung nach Anspruch 1, dadurch gekennzeichnet,
daß die Punktdaten in Zeilenrichtung von Zeile zu Zeile
jeweils um 1 Bit verschoben gespeichert sind.
3. Schaltung nach Anspruch 1 oder 2, dadurch gekennzeichnet,
daß die Verschiebeeinrichtung eine zyklische
Schiebeschaltung (BSC) aufweist, um die Punktdaten der
einzelnen Adressen der Speichereinrichtung zyklisch zu verschieben.
4. Schaltung nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß die Speichereinrichtung (M0-M15) m
Speicherabschnitte (M0 . . . M15) aufweist, die jeweils Eingangs-
und Ausgangsanschlüsse besitzen, die einem Bildpunkt entsprechen,
und die jeweils (n×n)/m Bildpunkte speichern.
5. Schaltung nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet, daß die Zugriffseinrichtung eine Einrichtung
(ADRR) aufweist, die zumindest einen Teil einer
Adresse in Spaltenrichtung decodiert, um auf den jeweiligen
der m Speicherabschnitte zuzugrifen.
6. Schaltung Anspruch 4 oder 5, dadurch gekennzeichnet,
daß die Zugriffseinrichtung aufweist:
- - eine erste Selektoreinrichtung (SL1, SL4) und eine zweite Selektoreinrichtung (SL2, SL3) zum Auswählen zumindest eines Teils einer Adresse in Zeilenrichtung der Speichereinrichtung und zumindest eines Teils einer Adresse in Spaltenrichtung, um jeweils den einen Teil gemeinsam den m Speicherabschnitten zuzuführen, und
- - eine Einrichtung zum Decodieren zumindest eines Teils der Zeilenadresse, um das decodierte Signal separat den m Speicherabschnitten zuzuführen.
7. Schaltung nach Anspruch 6, dadurch gekennzeichnet,
daß die erste Selektoreinrichtung eine erste gesteuerte Invertiereinrichtung
(EORG2) aufweist, die ein Invertier-Steuersignal
empfängt, um einen logischen Zustand einer von der
Selektoreinrichtung ausgewählten Adresse zu invertieren.
8. Schaltung nach Anspruch 7, dadurch gekennzeichnet,
daß die Decodiereinrichtung eine zweite gesteuerte Invertiereinrichtung
(EORG1) aufweist, die ein Invertier-Steuersignal
empfängt.
9. Schaltung nach einem der Ansprüche 4 bis 8,
dadurch gekennzeichnet, daß die Zugriffseinrichtung:
- - eine erste Subtrahiereinrichtung (SUB1), die von dem Maximal-Blockadressenwert in einer Zeilenrichtung des Speicherraums, der von der Anzeige-Größe bestimmt wird, eine obere X-Richtungs-Blockadresse oder eine obere Y-Richtungs-Blockadresse subtrahiert.
10. Schaltung nach einem der Ansprüche 4 bis 9,
dadurch gekennzeichnet, daß die Zugriffseinrichtung aufweist:
- - eine erste und eine zweite Selektoreinrichtung (SL5, SL6) zum Empfangen der oberen Bits, welche Adressen in der Zeilen- oder Spaltenrichtung festlegt, um die Adressen in der Zeilen- oder in der Spaltenrichtung auszuwählen,
- - eine erste Subtrahiereinrichtungen (SUB1) zum Subtrahieren des Ausgangssignals der ersten Selektoreinrichtung von der Maximalzahl der Block-Speichereinrichtungen, um eine Spalte Speicheranordnung zu bilden,
- - eine zweite Subtrahiereinrichtung (SUB2) zum Subtrahieren eines Ausgangssignals der zweiten Selektoreinrichtung von der Maximalzahl der Block-Speichereinrichtungen, die eine Zeile der Speicheranordnung bilden, und
- - einen Bildauswahlspeicher (RAM) mit Adreßanschlüssen zum Empfangen des Ausgangssignals der Subtrahiereinrichtungen und zum Abgeben eines Signals, welches einen von mehreren Block-Speichereinrichtungen kennzeichnet.
11. Schaltung nach Anspruch 10,
dadurch gekennzeichnet, daß die Zugriffseinrichtung aufweist:
- - eine dritte Selektoreinrichtung (SL7) die ein Ausgangssignal der ersten Subtrahiereinrichtung (SUB1) und ein Ausgangssignal der ersten Selektoreinrichtung (SL4) empfängt, um eines von ihnen auszuwählen, und
- - eine vierte Selektoreinrichtung (SL8), die ein Ausgangssignal der zweiten Subtrahiereinrichtung (SUB2) und das Ausgangssignal der zweiten Selektoreinrichtung (SL6) empfängt, um eines von ihnen auszuwählen und dadurch einen der Block-Speichereinrichtungen freizugeben, der von dem Ausgangssignal der dritten und der vierten Selektoreinrichtung ausgewählt wird.
12. Schaltung nach Anspruch 11,
dadurch gekennzeichnet, daß ein Pufferspeicher (BUF2) vorgesehen
ist, der ein Ausgangssignal der dritten und der
vierten Selektoreinrichtung empfängt und eine der Block-
Speichereinrichtungen kennzeichnet.
13. Schaltung nach einem der vorhergehenden Ansprüche,
dadurch gekennzeichnet, daß die Zeile durch eine Spalte
und die Spalte durch eine Zeile vertauscht wird.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9358986A JPS62249283A (ja) | 1986-04-23 | 1986-04-23 | 動的メモリ駆動回路 |
JP9359086A JPS62249284A (ja) | 1986-04-23 | 1986-04-23 | メモリ駆動回路 |
JP9358886A JPS62249282A (ja) | 1986-04-23 | 1986-04-23 | 画像メモリ |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3713627A1 DE3713627A1 (de) | 1987-10-29 |
DE3713627C2 true DE3713627C2 (de) | 1991-05-29 |
Family
ID=27307323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19873713627 Granted DE3713627A1 (de) | 1986-04-23 | 1987-04-23 | Bildspeicherschaltung, insbesondere zur verwendung beim drehen von bilddaten |
Country Status (2)
Country | Link |
---|---|
US (1) | US5068904A (de) |
DE (1) | DE3713627A1 (de) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5233168A (en) * | 1991-09-30 | 1993-08-03 | Pitney Bowes Inc. | Method of deskewing an image |
JP3193424B2 (ja) * | 1991-11-11 | 2001-07-30 | キヤノン株式会社 | 画像処理システム |
US5365601A (en) * | 1991-12-23 | 1994-11-15 | Xerox Corporation | N-bit wide parallel rotation algorithm |
JPH05182455A (ja) * | 1991-12-30 | 1993-07-23 | Sony Corp | メモリ装置 |
US5361339A (en) * | 1992-05-04 | 1994-11-01 | Xerox Corporation | Circuit for fast page mode addressing of a RAM with multiplexed row and column address lines |
US5625719A (en) * | 1992-10-19 | 1997-04-29 | Fast; Bruce B. | OCR image preprocessing method for image enhancement of scanned documents |
JP3483273B2 (ja) * | 1993-05-28 | 2004-01-06 | キヤノン株式会社 | 画像処理装置および画像処理方法 |
US6226016B1 (en) * | 1996-02-05 | 2001-05-01 | Seiko Epson Corporation | Display apparatus and method capable of rotating an image by 180 degrees |
DE19611409C2 (de) * | 1996-03-22 | 2001-01-04 | Oce Printing Systems Gmbh | Verfahren und Schaltungsanordnung zum Ändern von Bilddaten |
JPH10230638A (ja) * | 1997-02-20 | 1998-09-02 | Oki Data:Kk | 画像メモリ制御回路 |
US5942745A (en) * | 1997-12-17 | 1999-08-24 | Presstek, Inc. | Method and apparatus for digital imaging with reduced periodic artifacts |
US6208767B1 (en) * | 1998-09-01 | 2001-03-27 | Xerox Corporation | Hardware rotation of images with line sorting in L*A*B* color space |
WO2000016260A1 (fr) * | 1998-09-11 | 2000-03-23 | Sony Corporation | Processeur de donnees et procede de conversion de sequences de donnees |
US6310986B2 (en) * | 1998-12-03 | 2001-10-30 | Oak Technology, Inc. | Image rotation assist circuitry and method |
US6721724B1 (en) | 2000-03-31 | 2004-04-13 | Microsoft Corporation | Validating multiple execution plans for database queries |
US7315294B2 (en) * | 2003-08-25 | 2008-01-01 | Texas Instruments Incorporated | Deinterleaving transpose circuits in digital display systems |
US7167148B2 (en) * | 2003-08-25 | 2007-01-23 | Texas Instruments Incorporated | Data processing methods and apparatus in digital display systems |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5121529B1 (de) * | 1971-07-23 | 1976-07-03 | ||
GB1547119A (en) * | 1977-12-09 | 1979-06-06 | Ibm | Image rotation apparatus |
US4631750A (en) * | 1980-04-11 | 1986-12-23 | Ampex Corporation | Method and system for spacially transforming images |
JPS5776649A (en) * | 1980-10-31 | 1982-05-13 | Toshiba Corp | Picture information display device |
US4578812A (en) * | 1982-12-01 | 1986-03-25 | Nec Corporation | Digital image processing by hardware using cubic convolution interpolation |
US4635292A (en) * | 1983-12-19 | 1987-01-06 | Matsushita Electric Industrial Co., Ltd. | Image processor |
JPS60140470A (ja) * | 1983-12-28 | 1985-07-25 | Hitachi Ltd | 画像情報処理装置 |
US4627020A (en) * | 1983-12-30 | 1986-12-02 | International Business Machines Corporation | Method for rotating a binary image |
JPS616393A (ja) * | 1984-06-19 | 1986-01-13 | 日石三菱株式会社 | 紙用塗被材料 |
JPS619081A (ja) * | 1984-06-25 | 1986-01-16 | Oki Electric Ind Co Ltd | イメージパターン面回転印刷装置 |
JPS6136876A (ja) * | 1984-07-30 | 1986-02-21 | Ricoh Co Ltd | 画像情報のマスク処理回路 |
JPS6154529A (ja) * | 1984-08-24 | 1986-03-18 | Sharp Corp | 縦横変換回路 |
JPS6163891A (ja) * | 1984-09-05 | 1986-04-02 | 株式会社日立製作所 | 書式回転方式 |
JPS6167367A (ja) * | 1984-09-10 | 1986-04-07 | Nec Corp | 画像制御装置 |
US4736442A (en) * | 1985-05-23 | 1988-04-05 | Kornfeld Cary D | System and method for orthogonal image transformation |
US4661987A (en) * | 1985-06-03 | 1987-04-28 | The United States Of America As Represented By The Secretary Of The Navy | Video processor |
US4797852A (en) * | 1986-02-03 | 1989-01-10 | Intel Corporation | Block shifter for graphics processor |
US4805117A (en) * | 1986-09-26 | 1989-02-14 | International Business Machines Corporation | Method for controlling concatenation of transformation matrices in a graphics display system |
-
1987
- 1987-04-23 DE DE19873713627 patent/DE3713627A1/de active Granted
-
1990
- 1990-09-28 US US07/590,532 patent/US5068904A/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US5068904A (en) | 1991-11-26 |
DE3713627A1 (de) | 1987-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3713627C2 (de) | ||
DE69122226T2 (de) | Verfahren und Einrichtung zur Zugriffsanordnung eines VRAM zum beschleunigten Schreiben von vertikalen Linien auf einer Anzeige | |
DE3782756T2 (de) | Direktzugriffspeichereinrichtung. | |
EP0038411B1 (de) | Einrichtung zur Speicherung und Darstellung graphischer Information | |
DE69633477T2 (de) | Bildspeicher für graphische Daten | |
DE3636394C2 (de) | Einrichtung und Verfahren zur Speicherorganisation | |
DE3788747T2 (de) | Halbleiterspeicher. | |
DE2637054C3 (de) | Steuervorrichtung für einen Pufferspeicher | |
DE3879637T2 (de) | Pufferspeichergeraet und -verfahren, insbesondere fuer die matrixtransposition von datenfolgen. | |
DE68919781T2 (de) | Videospeicheranordnung. | |
DE2852253A1 (de) | Drehung der wiedergabe auf einem bildschirm | |
DE2524303A1 (de) | Zeichengenerator zur wiedergabe in einer punktmatrix mit hoher aufloesung | |
DE2843609A1 (de) | Bildschirm-datenendstation | |
DE2652900C2 (de) | Steuerschaltung zur Bildwiederholung für ein Raster-Datensichtgerät | |
DE3716752C2 (de) | ||
DE69633716T2 (de) | Hochgeschwindigkeitssystem zur Skalierung von Bildern | |
DE3784533T2 (de) | Verfahren und vorrichtung zur informationsuebertragung von einem speicherbereich zu einem anderen speicherbereich. | |
DE4218686A1 (de) | Statischer direktzugriffsspeicher | |
DE68927245T2 (de) | Bildverarbeitungssystem | |
DE3248978T1 (de) | Bildanzeigeeinrichtung | |
DE3013064C2 (de) | Schaltungsanordnung zur Übertragung von Bitgruppen zwischen einer von mehreren peripheren Einheiten und einem Pufferspeicher | |
DE69320744T2 (de) | Sortierverarbeitungsgerät | |
DE3933253A1 (de) | Einrichtung und verfahren zur durchfuehrung von booleschen rasteroperationen an quellen- und zieldaten | |
DE3702613A1 (de) | Geraet zum verschieben digitaler daten in einem speicher eines datenverarbeitungssystems | |
DE69225390T2 (de) | N-Bit paralleler Drehungsalgorithmus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |