DE2508373B2 - Adressenumsetzer - Google Patents
AdressenumsetzerInfo
- Publication number
- DE2508373B2 DE2508373B2 DE19752508373 DE2508373A DE2508373B2 DE 2508373 B2 DE2508373 B2 DE 2508373B2 DE 19752508373 DE19752508373 DE 19752508373 DE 2508373 A DE2508373 A DE 2508373A DE 2508373 B2 DE2508373 B2 DE 2508373B2
- Authority
- DE
- Germany
- Prior art keywords
- address
- address word
- word
- adder
- binary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000015654 memory Effects 0.000 claims description 86
- 238000000034 method Methods 0.000 claims description 49
- 210000004027 cell Anatomy 0.000 description 10
- 238000010586 diagram Methods 0.000 description 10
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 210000003608 fece Anatomy 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000005039 memory span Effects 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Memory System (AREA)
- Executing Machine-Instructions (AREA)
Description
Die Erfindung bezieht sich auf einen Adressenumsetzer zum Umsetzen von ersten Adressen in zweite
Adressen, wobei die zweiten Adressen einem Speicher einer DateRverarbeitungseinrichtung zugeführt werden,
wobei in dem Speicher einerseits Speicherbereiche adressiert werden, die verschiedenen Vorgängen
individuell zugeordnet sind und andererseits Speicherbereiche adressiert werden, die einer Mehrzahl von
Vorgängen gemeinsam zugeordnet sind, wobei die ersten Adressen erste und zweite Adreßwörter
enthalten, wobei die zweiten Adressen dritte und vierte \dießwörter enthalten, wobei die Adreßwörter Binärzahlen
darstellen und wobei ein Vergleicher vorgesehen ist. dem das erste Adressenwort und eine die
gemeinsamen Speicherbereiche angebende Binärzahl zugeführt werden.
Es ist bereits bekannt, die Adressen eines Speichers einer Datenverarbeitunpseinrkhtung durch eine Adressensubstitution,
die auch als indirekte Adressierung bekannt ist. zu ermitteln. Bei einer derartigen Adressen
substitution wird der Adressenteil des Maschinenbefehls durch den inhalt einer Speicherzelle oder eines
Registers ersetzt. Die indirekte Adressierung kann auch als Adressierung durch Basis- und Distanzadressen
durchgeführt werden. Bei dieser Art der Adressierung erhält der Adressenteil des Maschinenbefehls die
Distanzadresse, die den Abstand einer Speicherstelle zu einem Bereichsanfang angibt, und der Bereichsanfang
wird bestimmt durch den Inhalt eines Registers, das die
Basisadresse enthält.
Bei der Adressierung mit Hilfe eines Indexregisters wird zur Ermittlung der tatsächlichen Speicheradresse
der Inhalt eines Indexregisters zu dem Inhalt des Adressenteils des Maschinenbefehls addiert oder von
diesem subtrahiert. Eine Adressierung von Speicherzellen mittels der Adressensubstitution und mit Hilfe der
Indexregister hat jedoch den Nachteil, daß die I Imsetzung der Adressen sehr aufwendig ist, da oft eine
umfangreiche Adressenberechnung durchgeführt werden muß. Damit erhöht sich auch die für die Bearbeitung
der einzelnen Vorgänge erforderliche Bearbeitungszeit in der Datenverarbeitungseinrichtung.
Der Erfindung liegt die Aufgabe zugrunde, einen Adressenumsetz.er anzugeben, mit dessen Hilfe auf
einfache Weise bei der Bearbeitung von mehreren Vorgängen durch *ine Datenverarbeitungsanlage die
Adressen der Speicherbereiche im Speicher der Datenverarbeitungsanlage in Abhängigkeit von den
Vorgängen geändert werden und eine Koordinierung der einzelnen Vorgänge erfolgen kann.
Erfindungsgemäß wird die Aufgabe bei dem
\dressenumsetzer der eingangs genannten Art dadurch
gelöst, daß der Vergleicher ein Binärsignal abgibt, das
2inen ersten bzw. zweiten Binärwert annimmt, wenn das erste Adressenwort kleiner bzw. nicht kleiner ist als die
Binärzahl, daß ein Umschalter eine erste bzw. zweite Stellung einnimmt, wenn das Binärsignal den ersten
bzw. zweiten Binärwert annimmt und daß der Umschalter in der ersten bzw. zweiten Stellung das erste
Adressenwort bzw. die Binärzahl als drittes Adressenwort durchschaltet und daß ein Zuordner einen
Modulo- R-Addierer enthält, dem das erste und das
zweite Adressenwort zugeführt werden und der das vierte Adressenwort abgibt, wobei R den Wertevorrat
des vierten Adressenwortes angibt.
Der Adressenumsetzer gemäß der Erfindung hat die Vorteile, daß er einen geringen Aufwand erfordert und
daß die Programmierung der Vorgänge stark vereinfacht wird und damit die Zeitdauer für die Bearbeitung
der Vorgänge verkürzt wird. Mit Hilfe des Adressenumsetzers ist es möglich, mehrere gleichartige Vorgänge
durch ein und dasselbe Programm zu bearbeiten. Eine Verständigung der einzelnen Vorgänge erfolgt über
verschiedene Speicherbereiche, die unter jeweils gleichen relativen Adressen adressierbar sind. Die Vereinfachung
der Programmierung wirkt sich insbesondere dann aus, wenn mehrere Vorgänge simultan in einem
Zeitmultiplexverfahren bearbeitet werden.
Falls die zyklische Vertauschung des ersten Adressenwortes
nur dann durchgeführt wird, wenn das erste Adressenwort eine vorgegebene Binär/ahl überschreitet,
ist es zweckmäßig, wenn einem ersten Eingang des Modulo-R-Addierers ein Subtrahierer vorgeschaltet ist,
der die Differenz zwischen dem ersten Adressenwort und der Binärzahl bildet, wenn dem zweiten Eingang des
Modulo- R-Addierers das zweite Adressenwort zugeführt wird und wenn ein zweiter Umschalter vorgesehen
ist, der in gleicher Weise wie der erste Umschalter eine erste und zweite Stellung einnimmt und über den bei der
ersten Stellung das /weite Adressenwon und bei der zweiten Stellung das Adressenwort am Ausgang des
Modulo-fl-Addierers als viertes Adressenwort zum
Ausgang durchgeschaltet wird.
Falls durch den Adressenumsetzer weitere Speicherbereiche adressiert werden, die durch den Wertevorrat
des ersten Adressenwortes adressierbar sind, ist es vorteilhaft, wenn im Verbindungsweg /wischen dem
Hingang, an dem das erste Adressenwon anliegt und dem ersten Umschalter ein dritter Umschalter vorgesehen
ist, der eine erste Stellung einnimmt, wenn das zweite Adressenwort nicht kleiner ist als der Maximalwert
des vierten Adressenwortes, über den bei dieser Stellung das erste Adressenwon /um ersten Umschalter
fortgeschaltet wird und der andernfalls eine /weile Stellung einnimmt, bet der die in einem Modulo· N-Addierer
gebildete Summe aus dem ersten Adressenwort und der um 1 erhöhten ßinurzahl /um ersten
Umschalter fortgeschaltet wird, wobei /Vden Wertevorrat
des dritten Adressenwortes angibt.
Die weiteren Speicherbereiche werden in vorteilhafter
Weise weiteren Vorgängen zugeordnet, wenn dem ersten Eingang des Modulo-/V-Addii-rers ein weiterer
Addierer vorgeschaltet ist, der das erste Adressenwort modulo Π umformt, wobei ö gleich ist der Differenz aus
N und der um 1 erhöhten Binärzahl und wenn dem /weiten Eingang des Modulo-/V-Addierers die um 1
erhöhte Binärzahl zugeführt wird.
Der Adressenumsctzcr erfordert einen sehr kleinen Aufwand, wenn als Umschalter, Addierer, Subtrahieren
und Vergleicher binäre Verknüpfungsglieder vorgesehen sind
Im folgenden werden Ausführungsbeispiele des Adressenumsetzers gemäß der Erfindung anhand von
Zeichnungen beschrieben. Es zeigt
F i g. 1 ein Blockschaltbild einer mit einem Adressenumsetzer versehenen Speicheranordnung,
F i g. 2 eine schematische Darstellung von Adressen von Speicherbereichen eines Speichers und Zuordnungslisten
für einen ersten Adressenumsetzer,
F i g. 3 ein Blockschaltbild des ersten Adressenumsetzers,
F ι g. 4 Zuordnungslisten für einen zweiten Adressenumsetzer,
Fig.5 ein Blockschaltbild des zweiten Adressenumsetzers,
F i g. 6 ein Schaltbild des zweiten Adressenumsetzers, Fig.7 eine weitere schematische Darstellung von
Adressen von Speicherbereichen eines Speichers und eine Zuordnungsliste für einen dritten Adressenumsetzer,
F i g. 8 ein Blockschaltbild des dritten Adressenumsetzers,
F i g. 9 ein Schaltbild des dritten Adressenumsetzers.
Das in F i g. 1 dargestellte Blockschaltbild zeigt einen Speicher SP einer Datenverarbeitungsanlage, einen
Adressenumsetzer AU und zwei Register R 1 und R 2. Der Speicher SP besteht aus einer Mehrzahl von
Speicherbereichen, die jeweils mehrere Speicherzellen enthalten. Ein erster Teil der Speicherzellen ist
mehreren von der Datenverarbeitungsanlage zu bearbeitenden Vorgängen individuell zugeordnet. Ein
zweiter Teil der Speicherzellen ist diesen Vorgängen gemeinsam zugeordnet. Über diese gemeinsamen
Speicherzellen kann beispielsweise eine Koordinierung der einzelnen Vorgänge erfolgen.
Der Ablauf der von der Datenverarbeitungsanlage /u bearbeitenden Vorgänge wird durch aus Maschinenbefehlen
bestehende Programme gesteuert. Falls beispielsweise mehrere gleichartige Vorgänge durch die
Datenverarbeitungsanlage simultan bearbeitet werden, ist es zweckmäßig, diese Vorgänge durch ein und
dasselbe Programm zu bearbeiten. Jedem dieser Vorgänge werden bestimmte Speicherzellen individuell
zugeordnet. Falls außerdem die Vorgänge, beispielsweise in bezug auf belegte Ein-Ausgabekanäle voneinander
abhängig sind, werden bestimmte Speicherzellen diesen Vorgängen gemeinsam zugeordnet. Über diese gemeinsamen
Speicherzellen erfolgt dann eine Koordinierung
so der Vorgänge.
Die Adressen der Speicherzellen werden als erste Adressen in das erste und zweite Register R 1 und R 2
eingespeichert. Diese ersten Adressen enthalten jeweils ein erstes und ein zweites Adressenwort A 1 bzw. A 2
die Binärzahlen darstellen. Das Adressenwort A 1 ist
beispielsweise ein Bestandteil des Adressenteils des Maschinenbefehls und gibt eine relative Adresse an. Ei
wird im Register R 1 gespeichert. Das Adressenwon
A 2 gibt an, für welchen Vorgang das Adressenwort A 1
<>o als relative Adresse dient und es wird im Register R ί
gespeichert. Durch das Adressenwort A 2 können aucl eine von mehreren Programmebenen oder Bedingun
gen angegeben werden.
Weiterhin enthält die erste Adresse ein Adressenwor
('s Λ 0, das die Adresse der jeweils adressierten Speicher
/eile innerhalb der Speicherbereiche ebenfalls al Binar/.ahl angibt. Da jedoch in den meisten Fällen nich
einzelne Speicherzellen, sondern ganze Speicherberei
ehe geändert werden, wird im folgenden dieses Adressenwort A 0 nicht berücksichtigt. Es wird in diesen
Fällen unter Umgehung des Adressenumsetzers AU unmittelbar dem Speicher SPzugeführt.
Die Adressenwörter A 1 und A 2 werden als erste Adresse dem Adressenumsetzer AU zugeführt. Der
Adressenumsetzer erzeugt aus dieser ersten Adresse eine zweite Adresse, die als absolute Adresse des
adressierten Speicherbereichs dem Speicher SP zugeführt wird. Die zweite Adresse besteht aus einem dritten
und einem vierten Adressenwort A 3 bzw, A 4. die ebenfalls Binärzahlen darstellen. Falls ein matrixförmiger
Speicher SP verwendet wird, ist es zweckmäßig, die Adressenwörter A 3 und A 4 den Spalten bzw. Zeilen
der Matrix zuzuordnen. Beispielsweise gibt das Adressenwort A 3 die Zeile und das Adressenwort A 4 die
Spalte des Speichers SPan.
Der Adressenumsetzer AU enthält einen Zuordner Z. einen Vergleicher VG 1 und einen Umschalter 51. Der
Vergleicher VG 1 vergleicht das Adressenwort A 1 mit einer vorgegebenen Binärzahl M, die das Adressenwort
A 3 für diejenigen Speicherbereiche angibt, die mehreren Vorgängen gemeinsam zugeordnet sind. In Abhängigkeit
vom Ergebnis des Vergleichs wird der Umschalter 51 in die durchgezogen oder gestrichelt
dargestellte Lage gebracht.
Solange das Adressenwort A 1 kleiner ist als die Binärzahl M, gibt der Vergleicher VG 1 ein Binärsignal
mit dem Binärwert 1 ab und der Umschalter 51 befindet sich in der durchgezogen dargestellten Stellung. In
diesem Fall werden diejenigen Speicherbereiche adressiert, die den Vorgängen individuell zugeordnet sind. Als
Adressenwort A 3 wird das Adressenwort A 1 und als Adressenwort A 4 wird ein im Zuordner Z in
Abhängigkeit von den Adressenwörtern A 1 und A 2 erzeugtes Adressenwort abgegeben.
Wenn das Adressenwort A I gleich oder größer ist als die Binärzahl M. nimmt das Binärsignal den Binärwert 0
an und der Umschalter 51 wird in die gestrichelt dargestellte Stellung gebracht und als Adressenwort
A 3 wird die Binärzahl M abgegeben. Damit werden diejenigen Speicherbereiche adressiert, die mehreren
Vorgängen gemeinsam zugeordnet sind. Das Adressenwort A 4 wird auch in diesem Fall aus den
Adressenwörtern A 1 und A 2 im Zuordner Zerzeugt.
Der in Fig.2a schematisch dargestellte matrixförmige
Speicher SP hat N Zeilen 0 bis Λ/-1, von denen
zunächst nur M+1 Zeilen 0 bis M betrachtet werden
und R Spalten 0 bis R- 1. Das Adressenwort A 3 gibt die Zeile und das Adressenwort A4 gibt die Spalte des
Speichers SP an. Die absoluten Adressen der Speicherbereiche werden durch zwei Zeichen festgelegt wobei
das erste die Spalte and das zweite die Zeile bezeichnet Die Speicherbereiche 0,0 bis R- IM in den Zeilen 0 bis
M-I und in jeweils einer Spalte sind jeweils einem Vorgang individuell zugeordnet Die Speicherbereiche
ϋΜ bis R- XM in der Zeile M sind allen durch das
Adressenwort A 2 angegebenen Vorgängen gemeinsam zugeordnet
Bei der in F i g. 2b dargestellten Zoordnungsliste für
einen ersten Adressenamsetzer AUl ist die Zuordnung zwischen den ersten and den zweiten Adressen
dargestellt Die Adressenwörter/4 3 and/4 4 stimmen in
den Zeilen 0 bis M raft den Adresseowörtem A 1 und
A 2 Oberem. Die Anzahl der durch das Adressenwon ΛI angebbaren Adressen ist jedoch größer als Λί da bei
der Bearbeitung jedes Vorgangs auch noch diejenigen Speicher adressiert werden müssen, die alten Vorgängen gemeinsam zugeordnet sind. In den Zeilen M+1 bis
N- 1 sind daher die Speicherbereiche angegeben, die den durch die Adressenwörter A 2 angegebenen
Vorgängen gemeinsam zugeordnet sind. Die in den Zeilen M+ 1 bis N-1 angegebenen Adressen sind dabei
zyklisch vertauscht.
Falls beispielsweise durch das Adressenwort A 1 die (N- l)te Zeile aufgerufen wird, werden in Abhängigkeit
von dem durch das Adressenwort A 2 angegebenen
ίο Vorgang die Speicherbereiche R—\M bis R-2M
adressiert. Mit Hilfe der gleichen im Adreßteil eines Maschinenbefehls enthaltenen Adressenwörter A 1
werden somit bei den einzelnen Vorgängen unterschiedliche Speicherbereiche adressiert.
Der in Fig.2c dargestellte Speicher SP besteht
beispielsweise aus acht Speicherbereichen, die in /?«=2
Spalten und N= 4 Zeilen angeordnet sind. Von diesen Speicherbereichen werden zunächst nur die in den
Zeilen 0 bis 2 enthaltenen Speicherbereiche betrachtet.
Die Speicherbereiche in den Zeilen 0 und 1 sind jeweils einem Vorgang individuell zugeordnet und die
Speicherbereiche in der Zeile M= 2 sind beiden Vorgängen gemeinsam zugeordnet
Die F i g. 2d zeigt eine entsprechende Zuordnungsliste für diesen Speicher. Unter dem gleichen Adressen
wort A 1 werden in Abhängigkeit von dem jeweils zu bearbeitenden Vorgang entweder die den Vorgängen
individuell zugeordneten Speicherbereiche 0,0 bis 1,1 oder die den Vorgängen gemeinsam zugeordneten
Speicherbereiche 0.2 oder 1.2 aufgehoben. Beispielsweise
werden unter dem Adressenwort /41=3 entweder
die Speicherbereiche mit den Adressen 1, 2 oder 0.2 angesprochen.
Das in F i g. 3 dargestellte Blockschaltbild eines ersten Adressenumsetzers AUi zeigt den Vergleicher VGI. den Umschalter 51 und einen ersten Zuordner Zl. Dem Vergleicher VG1 werden ebenfalls das Adressenwort A 1 und die Binärzahl M. beispielsweise als Dualzahlen zugeführt. Die Binärzahl M gibt die Zeile des Speichers
Das in F i g. 3 dargestellte Blockschaltbild eines ersten Adressenumsetzers AUi zeigt den Vergleicher VGI. den Umschalter 51 und einen ersten Zuordner Zl. Dem Vergleicher VG1 werden ebenfalls das Adressenwort A 1 und die Binärzahl M. beispielsweise als Dualzahlen zugeführt. Die Binärzahl M gibt die Zeile des Speichers
SPan, die mehreren Vorgängen gemeinsam zugeordnet ist. Am Ausgang des Vergleichers VGi wird ein
Binärsignal abgegeben, das beispielsweise den Binärwert 1 annimmt wenn das Adressenwort A 1 kleiner ist
als M und den Binärwert 0 annimmt wenn das Adressenwort A i gleich oder größer als M ist. Mit
diesem Signal wird der Umschalter 51 gesteuert, der beispielsweise aus binären Verknüpfungsgliedern besteht.
Der Zuordner Zl enthält einen Umschalter 52, der
ebenfalls von dem Vergleicher VGl gesteuert wird,
einen Subtrahierer SLW und einen Modulo-Ä-Addierer
3 angibt
Solange das Adressenwort A 1 kleiner ist als die
Binärzahl H befinden sich die Umschalter S t and 5 2 in
der durchgezogen dargestellten SteBtmg. Als Adressen-Wörter /4 3 und A4 werden damit die Adressenwörter
A 1 bzw. A 2 zma Aasgang des Adressenumseizers
AUl dhhlh
A !gleich oder größer als Mist, werden die Umschalter
SI und S2 in dk gestrichelt dargestellten SteSongen
gebracht Als Adressenwort A3 wad dasei die
Binarzahl M abgegeben. »St WBe des SabtraMerers
SC® und des Addierers AOI wild ein Adressenwort
^5 /4 4 erzeugt das einen der Spekberbereiefae aas der
ZeHe Mdes Speichers SPanswäfalt
Der Subtrahierer St/ß bildet die Differenz zwischen
dem Adressenwort AI «id der Bmärzahl M Diese
Differenz wird mit Hilfe des Addierers AD 1 zum Adressenwort A 2 addiert. Die Summe wird über den
Umschalter S 2 als Adressenwort A 4 abgegeben. Durch den Subtrahierer SUB und den Addierer AD 1 wird das
Adressenwort Λ 4 in Abhängigkeit von den Adressenwörtern
A 1 und A 2 zyklisch verlauscht.
Falls ein Subtrahicrer SUB zur Verfugung steht, der
ein Signal abgibt, wenn ein Übertrag auftritt, so kann dieses Signal als Steuersignal für die Umschalter S 1 und
52 verwendet werden. Der Verglcicher VCI ist in
diesem Fall nicht erforderlich.
Beispielsweise werden bei dem in F i g. 2c dargestellten Speicher SP die Umschalter 51 und 52 beim
Anliegen eines Adressenwortes A 1 = 3 in die gestrichelt dargestellte Stellung gebracht. Der Subtrahierer SUB
gibt den Wert 3-2 = 1 ab und am Ausgang des Addierers AD\ wird als Adressenwort A4 in
Abhängigkeit davon, ob das Adressenwort A 2 den Wert 0 oder 1 annimmt, der Wert 1 oder 0 abgegeben.
Bei der in F ι g 4a dargestellten Zuordnungsliste
werden auch in den Speicherbereichen, die den ein/einen Vorgängen individuell zugeordnet sind, die
Adressenwörter A 4 zyklisch vertauscht. Auf diese Weise wird die Schaltung des Adressenumsetzers
wesentlich vereinfacht.
In F i g. 4b ist eine Zuordnungsliste für den in F ι g. 2c
dargestellten Speicher angegeben, bei der auch die Adressenwörtcr A 4 in den Zeilen 0 und 1 zyklisch
vertauscht werden.
Der in F i g. 5 dargestellte zweite Adressenumsetzer Al12 für eine Zuordnung der Adressen entsprechend
den in F ig. 4 dargestellten Zuordnungstabellen unterscheidet
sich von dem in F ι g. 3 dargestellten ersten Adressenumsetzer ACI dadurch, daß wegen der
zyklischen Vertauschung der Adressenwörter A 4 der Subtrahierer SUB und der Umschalter 52 nicht
erforderlich sind.
Das in Fig. 6 dargestellte Schaltbild des zweiten
Adressenumsetzers Al'2 für eine Zuordnung der
Adressen entsprechend der in F i g 4b dargestellten Zuordnungsliste. besteht aus einem UND-Glied U\,
einem Inverter NI und einem Antivalcnzglied EX. Die
Adressenwörter A 1 und A 2 werden als Dualzahlen zugeführt. Das Adressenwon A 1 wird durch Signale
A 11 und A 10 und das Adressenwort A 3 wird durch
Signale A 31 und A 30 dargestellt. Die Signale A 11 bzw.
A 10 und A 31 bzw. A 30 geben die höher bzw. mederwertigen Stellen der Dualzahlen an.
In dem Schaltbild entsprechen das Antivalenzglied EX dem Addierer ADI und das UND-Glied U\ dem
Umschalter S1. Auf den Vergleicher VC1 wird
verzichtet, da das Signal All immer den Binänvert 1
annimmt wenn das Adressenwort A 1 größer oder
gleich M= 2 ist Ober den Inverter Ni wird das
UND-Glied l/l gesteuert
Die liinärwcrtc der Signale A30 und A3! stimmen
mit denen der Signale A 10 und All überein, solange das Adressenwort A 1 nicht größer als 2 ist. In diesem
Fall nimmt das Signal A 30 immer den Binärwert 0 an. 1^ Das Adressenwort A 2 wird durch das Signal A 20
dargestellt. Für den Fall, daß das Signal A 20 gleich 0 ist, ist das Signal A 40 immer gleich dem Signal A 10 und für
den Fall, daß das Signal A 20 gleich 1 ist, ist es immer gleich dem invertierten Signal A 10.
ίο Der in F i g. 7a schematisch dargestellte matrixförmige
Speicher SPbesteht wie der in Fig.2c dargestellte
Speicher aus acht Speicherbereichen, die in W = 2
Spalten und N = 4 Zeilen angeordnet sind. Die Speicherbereiche in den Zeilen 0 und 1 sind wieder
is jeweils einem Vorgang individuell zugeordnet und die
Speicherbereiche in Zeile 2 sind mehreren Vorgängen gemeinsam zugeordnet. Die Speicherbereiche in Zeile 3
sind wieder einem oder auch mehreren Vorgängen individuell zugeordnet. Durch eine derartige Einteilung
des Speichers SP wird erreicht, daß bei einer
Darstellung des Adressenwortes A 3 durch Dualzahlen der mit z.wei Binärzeichen adressierbare Bereich des
Speichers SP voll ausgenützt wird. Als Adressenwort A 2 müssen in diesem Fall ebenfalls zwei Binärzeichen
2s zur Verfügung gestellt werden, um weitere Vorgänge
angeben zu können, die die in der Zeile 3 des Speichers 5Pangeordneten Speicherbereiche adressieren können.
Bei der in F i g. 7b dargestellten Zuordnungsliste eines
dritten Adressenumsetzers, der sich durch die Erweite-
w rung um die Spalten 2 und 3 von dem in Fig.4b
dargestellten unterscheidet, werden die Speicherbereiche in den Spalten 2 und 3 einem Dritten und einem
vierten Vorgang zugeordnet. Bei der Bearbeitung dieser Vorgänge können ebenfalls die gemeinsamen Speicher-
\5 bereiche 0.2 und 1,2 adressiert werden. Auf diese Weise
können auch diese Vorgänge mit den ersten beiden Vorgängen koordiniert werden.
Die Zuordnung der Speicherbereiche in der Zeile 1 und in den Spalten 2 und 3 der Zuordnungsliste kann auf
zweierlei Weise erfolgen, wie in F i g. 7b dargestellt ist.
Entweder werden die Speicherbereiche 1.3 bzw. 0,3 adressiert oder auch die Speicherbereiche 1.0 und 0,0
des ersten und zweiten Vorgangs. In diesem zweiten \ all sind nur die Speicherbereiche 1.1/0.1/0,3 und 1.3 den
jeweiligen Vorgängen individuell zugeordnet und bei jedem Vorgang können zwei Speicherbereiche von
anderen Vorgängen adressiert werden. Für den allgemeinen Fall gilt als Zuordnung zwischen Adresse
und adressiertem Speicherbereich, daß unabhängig von den Werten von A 1 und A 2 das Adressenwort A 4
gleich ist der Summe aus den Adressenwörtern A 1 und A 2 modulo R. In Abhängigkeit von der Größe von A 1
und A 2 ergeben sich für das Adressenwort A 3 die Werte aus folgender Tabelle:
i | <M | <R | A2 | mod[N-(A<i+ N |
D! | |
StM | Ai | |||||
A | M |
entweder (M+ J)+(A 1)
oder [(M+1) +Al] mod |
||||
M | ||||||
In dem Bereich der Tabelle, in dem das Adressenwort A 1 kleiner ah M und das Adressenwort A 2 größer
oder gleich R ist sind in der oberen bzw. unteren Zeile die Zuordmingsvorschriften for den ersten bzw. zweiten
Fall angegebea
7095*1/28?
Der in F i g. 8 dargestellte diine Adressenumselzer
AlJi enthält wie die Adresseruimsctzer ALI I und At'2
den Umschalter .S1I, den Vergleicher VG I und den
Addierer ADi. Weiterhin enthält er einen Umschalter 53, der durch einen /weiten Vergleichcr VG 2 gesteuert s
wird. Der Umschalter 5 3 bleibt in der durchgezogen dargestellten Stellung, solange das Adressenwort A 2
kleiner als R ist. Andernfalls wird er in die gestrichelt dargestellte Stellung gebracht. Als Adressenwort A 3
wird damit nicht mehr das Adressenwort A I durchge- ι« schaltet, sondern eine wahlweise mit Hilfe eines zweiten
Addierers AD2 und gegebenenfalls eines dritten
Addierers AD 3 erzeugtes Adressenwort.
Für den in der Tabelle angegebenen ersten Fall wird das Adressenwort A 1 modulo-B umgeformt, wobei B ι«,
gleich N-(M+ 1) ist. Die Umformung erfolgt mit Hilfe des Addierers A D 3, an dessen ersten Eingang das
Adressenwort A 1 und an dessen zweiten Eingang der Wert 0 anliegt. Anschließend wird mit Hilfe des
Modulo-N-Addierers ADl der Wert M + 1 hinzuaddiert.
Das so gewonnene Adressenwort wird über die Umschalter 53 und 51 durchgeschallt und als
Adressenwort A 3 abgegeben.
Für den in der Tabelle dargestellten zweiten Fall ist der Addierer ADi nicht erforderlich und das Adressenwort
A 3 wird durch Addition des Adressenwortes A 1 und der Binärzahl M+ 1 in dem Modulo-ZV-Addiercr
AD 2 erzeugt.
Falls das Adressenwort A X größer als M ist, wird der
Umschalter 51 wie bei den Adressenumsetzern AUX
und ALU in die gestrichelt dargestellte Stellung gebracht und als Adressenwort A 3 wird die Binärzahl
M durchgeschaltet.
Das in F 1 g. 9 dargestellte Schaltbild des Adressenumsetzers Ai/3 für eine Zuordnung der Adressen
entsprechend der in F i μ. 7 dargestellten Zuordnungsliste für den ersten Fall enthalt ebenso wie der in F i g. 6
dargestellte Adressenumsetzer einen Inverter NX ein
UND-Glied UX und ein Anlivalcnzglicd EX. Ein Signal
A 21, das die höhcrwertigc Stelle des Adressenwortes
A 2 angibt, wird über ein ODER-Glied DI zum
Ausgang durchgeschaltet und dort als Signal Λ 31
abgegeben, das die höherwertige Stelle des Adressenwortes A 3 angibt. Außerdem wird das Signal A 21 über
einen ersten Eingang eines weiteren ODER-Gliedes DT.
dem UND-Glied LJX zugeführt. Dem zweiten Eingang
des ODER-Glieds Dl wird das Signal A 10 zugeführt. Das ODER-Glied DX und das UND-Glied UX
entsprechen den Umschaltern 51 und Λ 3 und teilweise
dem Vergleicher VG 2. Das ODER-Glied D 2 entspricht
den Addierern ADl und ADi und ebenfalls teilweise dem Vergleicher VG 2.
Hier/11 4 Hkiit /eichnunuen
Claims (5)
1. Adressenumsetzer zum Umsetzen von ersten Adressen in zweite Adressen, wobei die zweiten
Adressen einem Speicher einer Datenverarbeitungseinrichtung zugeführt werden, wobei in dem
Speicher einerseits Speicherbereiche adressiert werden, die verschiedenen Vorgängen individuell
zugeordnet sind und andererseits Speicherbereiche adressiert werden, die einer Mehrzahl von Vorgängen
gemeinsam zugeordnet sind, wobei die ersten Adressen erste und zweite Adreßwörter enthalten,
wobei die zweiten Adressen dritte und vierte Adreßwörter enthalten, wobei die Adreßwörter
Binärzahlen darstellen und wobei ein Vergleicher vorgesehen ist, dem das erste Adressenwort und
eine die gemeinsamen Speicherbereiche angebende Binärzahi zugeführt werden, dadurch gekennzeichnet,
daß der Vergleicher (VG I) ein Binärsignal abgibt, das einen ersten bzw. zweiten
Binärwert (»1« bzw. »0«) annimmt, wenn das erste Adressenwort (A 1) kleiner bzw. nicht kleiner ist als
die Binärzahl (M), daß ein Umschalter (Si) eine erste bzw. zweite Stellung einnimmt, wenn das
Binärsignal den ersten bzw. zweiten Binärwert (»1« bzw. »0«) annimmt und daß der Umschalter (VG 1)
in der ersten bzw. /weiten Stellung das erste Adressenwort (A 1) bzw. die Binärzahl (A^aIs drittes
Adressenwori (A 3) durchschaltet und daß ein Zuordner (Z) einen Modulo-/?-Addierer (ADi)
enthält, dem das erste und das zweite Adressenwort (A 1 und A 2) zugeführt werden und der das vierte
Adressenwort (A 4) abgibt, wobei R den Wertevorrat des vierten Adressenwortes (A 4) angibt.
2. Adressenumsetzer njch Anspruch 1, dadurch
gekennzeichnet, daß einem ersten Eingang des Modulo-/?-Addierers (AD I) ein Subtrahierer (SUB)
vorgeschaltet ist, der die Differenz zwischen dem ersten Adressenwort (A I) und der Binärzahl (M)
bildet, daß dem zweiten Eingang des Modulo-/?-Addierers (AD\) das zweite Adressenwort (A 2)
zugeführt wird und daß ein zweiter Umschalter (S2)
vorgesehen ist, der in gleicher Weise wie der erste Umschalter (Si) eine erste und zweite Stellung
einnimmt und über den bei der eisten Stellung das zweite Adressenwort (A 2) und bei der zweiten
Stellung das Adressenwort am Ausgang des Modulo-/?-Addierers (ADi) als viertes Adressenwort
(A 4) zum Ausgang durchgeschaltet wird.
3. Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß im
Verbindungsweg zwischen dem Eingang, an dem das erste Adressenwort (A I) anliegt und dem ersten
Umschalter (.SI) ein dritter Umschalter (Sl)
vorgesehen ist, der eine erste Stellung einnimmt. v,enn das zweite Adressenwori (A 2) kleiner ist als
der Maximalwert des vierten Adressenwortes (A 4), über den bei dieser Stellung das erste Adressenvvort
(A 1) /um ersten Umschalter (Si) fortgeschaltet <
>o wird und der andernfalls eine /weite Stellung
einnimmt, bei der die in einem Moclulo/V-Addierer
(A I) 2) gebildcu· Summe aus dem ersten Adressenwon
(A I) und der um I erhöhten Binärzahl (M)zum
ersten Umschalter (.V 1) fortgeschaltet wird, wobei N <
>s den Werievorrai des drillen Adressenwortes (A 3)
iingibt.
4. A<iiesseniimset/er nach Anspruch 3, dadurch
gekennzeichnet, daß dem ersten Eingang des Modulo-N-Addierers (AD 2) ein weiterer Addierer
(AD 3) vorgeschaltet ist, der das erste Adressen wort
(A i) modulo B umformt, wobei B gleich ist der
Differenz aus N und der um 1 erhöhten Binärzahl (M) und daß dem zweiten Eingang des Modulo-N-Addierers
(AD2) die um 1 erhöhte Binärzahl (M) zugeführt wird.
5 Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß als
Umschalter (Sl bis 53), Addierer (ADi bis AD3),
Subtrahierer (SUB) und Vergleicher (VG 1, VG 2)
binäre Verknüpfungsglieder vorgesehen sind.
Priority Applications (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752508373 DE2508373C3 (de) | 1975-02-26 | Adressenumsetzer | |
CH106676A CH613540A5 (de) | 1975-02-26 | 1976-01-28 | |
FR7602454A FR2302561A1 (fr) | 1975-02-26 | 1976-01-29 | Convertisseur d'adresses |
US05/655,145 US4056819A (en) | 1975-02-26 | 1976-02-04 | Address converter |
NL7601194A NL7601194A (nl) | 1975-02-26 | 1976-02-05 | Adresomzetter. |
SE7601520A SE7601520L (sv) | 1975-02-26 | 1976-02-11 | Adressomvandlare |
DK67276*#A DK67276A (da) | 1975-02-26 | 1976-02-18 | Adresseomsetter |
JP51019806A JPS51109745A (de) | 1975-02-26 | 1976-02-25 | |
BE164674A BE838971A (fr) | 1975-02-26 | 1976-02-26 | Convertisseur d'adresses |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19752508373 DE2508373C3 (de) | 1975-02-26 | Adressenumsetzer |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2508373A1 DE2508373A1 (de) | 1976-09-09 |
DE2508373B2 true DE2508373B2 (de) | 1977-03-17 |
DE2508373C3 DE2508373C3 (de) | 1977-10-27 |
Family
ID=
Also Published As
Publication number | Publication date |
---|---|
FR2302561A1 (fr) | 1976-09-24 |
DK67276A (da) | 1976-08-27 |
US4056819A (en) | 1977-11-01 |
DE2508373A1 (de) | 1976-09-09 |
JPS51109745A (de) | 1976-09-28 |
SE7601520L (sv) | 1976-08-27 |
FR2302561B1 (de) | 1981-09-25 |
CH613540A5 (de) | 1979-09-28 |
BE838971A (fr) | 1976-08-26 |
NL7601194A (nl) | 1976-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE68914172T2 (de) | Datenverarbeitungssystem und Videoverarbeitungssystem mit einem derartigen Datenverarbeitungssystem. | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE1966633C3 (de) | Datenverarbeitungsanlage mit überlappter Arbeitsweise bei Verwendung eines Haupt- und Pufferspeichers | |
DE2322674C3 (de) | Mikroprogramm-Steuereinrichtung | |
DE3036711C2 (de) | Verfahren zum Verkleinern von grafischen Mustern | |
DE2055784A1 (de) | Datenverarbeitungssystem | |
DE10151091B4 (de) | Scheduling-System und Scheduling-Verfahren dafür | |
DE2714346A1 (de) | Vorrichtung zur darstellung von zeichen auf einem sichtgeraet | |
DE3043100C2 (de) | ||
DE2556617C2 (de) | Schiebe- und Rotierschaltung | |
DE69030941T2 (de) | Verfahren und Vorrichtung zur Verarbeitung von Bild-Daten | |
DE3811145C2 (de) | ||
DE69031317T2 (de) | Bearbeitung von einem zweidimensionalen Teilchen eines digitalen Bildsignals | |
DE2654010A1 (de) | Fernsehanordnung | |
EP0230076A2 (de) | Verfahren und Anschaltungsanordnung zur Auflösungsumwandlung von binären Pseudo-Halbtonbildern | |
DE2508373B2 (de) | Adressenumsetzer | |
DE2508373C3 (de) | Adressenumsetzer | |
EP0414950B1 (de) | Verfahren zur Vermittlung von jeweils auf mehrere Zeitfächer von Zeitkanälen verteilt übertragenen Sprach- und/oder Daten-informationen | |
DE3435816A1 (de) | Vorrichtung zur numerischen signalverarbeitung | |
DE3142495C2 (de) | Digitaler Hörtongenerator | |
DE2907835C2 (de) | Adressen-Multiplexer für einen Arbeitsspeicher | |
DE2710602C3 (de) | Schaltung zur Minderung der Anzahl Bits in einer Adresse zur Festlegung eines alphanumerischen Zeichens auf dem Schirm einer Kathodenstrahlröhre | |
DE2204680A1 (de) | Mikroprogramm-steuereinrichtung | |
WO2006131167A2 (de) | Verfahren zur speicherverwaltung von digitalen recheneinrichtungen | |
DE2417840C3 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C3 | Grant after two publication steps (3rd publication) | ||
E77 | Valid patent as to the heymanns-index 1977 | ||
8339 | Ceased/non-payment of the annual fee |