DE2508373C3 - Adressenumsetzer - Google Patents
AdressenumsetzerInfo
- Publication number
- DE2508373C3 DE2508373C3 DE19752508373 DE2508373A DE2508373C3 DE 2508373 C3 DE2508373 C3 DE 2508373C3 DE 19752508373 DE19752508373 DE 19752508373 DE 2508373 A DE2508373 A DE 2508373A DE 2508373 C3 DE2508373 C3 DE 2508373C3
- 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.)
- Expired
Links
- 230000015654 memory Effects 0.000 claims description 86
- 238000000034 method Methods 0.000 claims description 52
- 241001442055 Vipera berus Species 0.000 claims description 30
- 210000004027 cells Anatomy 0.000 description 11
- 238000010586 diagram Methods 0.000 description 11
- 239000007787 solid Substances 0.000 description 4
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000000875 corresponding Effects 0.000 description 2
- 230000005039 memory span Effects 0.000 description 2
- 239000003595 mist Substances 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 210000003296 Saliva Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000001419 dependent Effects 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
Description
Die Erfindung bezieht sich auf einen 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ärzahl zugeführt werden.
Es ist bereits bekannt, die Adressen eines Speichers einer Datenverarbeitungseinrichtung durch eine Adressensubstitution,
die auch als indirekte Adressierung bekannt ist, zu ermitteln. Bei einer derartigen Adressensubstitution
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 Umsetzung 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 Bearbeitungszeil in der Datenverarbeitungseinrichtung.
Der Erfindung liegt die Aufgabe zugrunde, einer Adressenumsetzer anzugeben, mit dessen Hilfe au
einfache Weise bei der Bearbeitung von mehrerei Vorgängen durch eine Datenverarbeitungsanlage dii
Adressen der Speicherbereiche im Speicher de Datenverarbeitungsanlage in Abhängigkeit von dei
Vorgängen geändert werden und eine Koordinierun] der einzelnen Vorgänge erfolgen kann.
Erfindungsgemäß wird die Aufgabe bei der
iHressenumsetzer der eingangs genannten Art dadurch I st, daß der Vergleicher ein Binärsignal abgibt, das
en ersten bzw. zweiten Binärwert annimmt, wenn das f" Adressenwort kleiner bzw. nicht Kleiner ist als die
R-fiärzahl daß ein Umschalter eine erste bzw. zweite
stellung einnimmt, wenn das Binärsignal den ersten h7w zweiten Binärwert annimmt und daß der
ι imschalter in der ersten bzw. zweiten Stellung das erste
Adressenwort bzw. die Binärzahl als drittes Adressen-Cort
durchschaltet und daß ein Zuordner einen ι ο Modulo-K-Addierer enthält, dem das erste und das
!weite Adressenwort zugeführt werden und der das jerte Adressenwort abgibt, wobei R den Wertevorrat
Ls vierten Adressenwortes angibt.
Der Adressenumsetzer gemäß der Erfindung hat die Vorteile, daß er einen geringen Aufwand erfordert und
,n die Programmierung der Vorgänge stark vereinf
cht wird und damit die Zeitdauer für die Bearbeitung Her Vorgänge verkürzt wird. Mit Hilfe des Adressenum-
«tzers ist es möglich, mehrere gleichartige Vorgänge Hurch 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ärzahl ü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-Ä-Addierers das zweite Adressenwort zügefü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 zweite Adressen wort und bei der zweiten Stellung das Adressenwort am Ausgang des
Modulo-K-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 zwischen dem
Eingang an dem das erste Adressenwort anliegt und dem ersten Umschalter ein dritter Umschalter vorgesehen
ist, der eine erste Stellung einnimm:, wenn das zweite Adressenwort nicht kleiner ist als der Maximalwert
des vierten Adressenwortes, über den bei dieser Stellung das erste Adressenwort zum ersten Umschalter
fortgeschaltet wird und der andernfalls eine zweite Stellung einnimmt, bei der die in einem Modulo-N-Addierer
gebildete Summe aus dem ersten Adressenwort und der um 1 erhöhten Binärzahl zum ersten
Umschalter fortgeschaltet wird, wobei Nden Wertevorrat des dritten Adressenwortes angibt.
Die weiteren Speicherbereiche werden in vorteilhafter
Weise weiteren Vorgängen zugeordnet, wenn dem «o
ersten Eingang des Modulo-N-Addierers ein weiterer Addierer vorgeschaltet ist, der das erste Adressenwort
«od"lo F umformt, wobei B gleich ist der Differenz aus
N und der um 1 erhöhten Binärzahl und wenn dem zweiten Eingang des Modulo-N-Addierers die um 1
erhöhte Binärzahl zugeführt wird. .
Der Adressenumsetzer erfordert einen sehr kleinen Aufwand, wenn als Umschalter, Addieren Subtrahierer
und Vergleicher binäre Verknüpfungsglieder vorgesehen sind.
Im foigenden werden Ausführungsbeispiele des
Adressenumsetzers gemäß der Erfindung anhand von Zeichnungen beschrieben. Es zeigt
F1 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 i g. 4 Zuordnungslisten für einen zweiten Adressenumsetzer,
F i g 5 ein Blockschaltbild des zweiten Adressenumsetzers,
F i g. 6 ein Schaltbild des zweiten Adressenumsetzers, F i g. 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 Ri 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 zu 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 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 isl beispielsweise ein Bestandteil des Adressenteils de;
Maschinenbefehls und gibt eine relative Adresse an. Ei wird im Register R1 gespeichert Das Adressenwor
A 2 gibt an, für welchen Vorgang das Adressenwort A 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 Adressenwoi
A 0, das die Adresse der jeweils adressierten Speichel zelle innerhalb der Speicherbereiche ebenfalls a
Binärzahl angibt. Da jedoch in den meisten Fällen nicl
einzelne Speicherzellen, sondern ganze Speichcrbere
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 A U enthält einen Zuordner Z, einen Vergleicher VG X und einen Umschalter 51. Der
Vergleicher VG1 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 VG1 ein Binärsignal
mit dem Binärwert 1 ab und der Umschalter S1 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 1 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 AA wird auch in diesem Fall aus den
Adressenwörtern A 1 und Λ 2 im Zuordner Zerzeugt.
Der in F i g. 2a schematisch dargestellte matrixförmige Speicher SP hat N Zeilen 0 bis /V-I, 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 A 4 gibt die Spalte des Speichers SP an. Die absoluten Adressen der Speicherbereiche
werden durch zwei Zeichen festgelegt, wobei das erste die Spalte und das zweite die Zeile bezeichnet.
Die Speicherbereiche 0,0 bis R-\Min den Zeilen 0 bis
M-I und in jeweils einer Spalte sind jeweils einem Vorgang individuell zugeordnet. Die Speicherbereiche
O1M bis R-\,M in der Zeile M sind allen durch das
Adressenwort A 2 angegebenen Vorgängen gemeinsam zugeordnet.
Bei der in Fig.2b dargestellten 7uordnungsliste für
einen ersten Adressenumsetzer AUi ist die Zuordnung
zwischen den ersten und den zweiten Adressen dargestellt. Die Adressenwörter A 3 und A 4 stimmen in
den Zeilen 0 bis M mit den Adressenwörtern A 1 und A 2 überein. Die Anzahl der durch das Adressenwort
A 1 angebbaren Adressen ist jedoch größer als M, da bei der Bearbeitung jedes Vorgangs auch noch diejenigen
SDeicher adressiert werden müssen, die allen Vorgängen gemeinsam zugeordnet sind In dein 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—2.M
adressiert. Mit Hilfe der gleichen im Adreßteil eines Maschinenbefehls enthaltenen Adressenwörter A1
werden somit bei den einzelnen Vorgängen unterschiedliche Speicherbereiche adressiert.
Der in Fig.2c dargestellte Speicher SP besteht
beispielsweise aus acht Speicherbereichen, die in R=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 Adressenwort
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 Ai =3 entweder
die Speicherbereiche mit den Adressen 1, 2 oder 0,2 angesprochen.
Das in F i g. 3 dargestellte Blockschaltbild eines ersten Adressenumsetzers AU\ zeigt den Vergleicher VGl, den Umschalter S1 und einen ersten Zuordner Z1. 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 VG1 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 1 gleich oder größer als M ist. Mil diesem Signal wird der Umschalter 51 gesteuert, dei beispielsweise aus binären Verknüpfungsgliedern besteht.
Das in F i g. 3 dargestellte Blockschaltbild eines ersten Adressenumsetzers AU\ zeigt den Vergleicher VGl, den Umschalter S1 und einen ersten Zuordner Z1. 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 VG1 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 1 gleich oder größer als M ist. Mil diesem Signal wird der Umschalter 51 gesteuert, dei beispielsweise aus binären Verknüpfungsgliedern besteht.
Der Zuordner Zl enthält einen Umschalter S 2, dei
ebenfalls von dem Vergleicher VG1 gesteuert wird
einen Subtrahierer SUB und einen Modulo-Ä-Addierei
ADX, wobei R den Wertevorrat des Adressenwortes /
3 angibt.
Solange das Adressenwort A 1 kleiner ist als dii
Binärzahl M, befinden sich die Umschalter S1 undS2ii
der durchgezogen dargestellten Stellung. Als Adressen Wörter A 3 und A 4 werden damit die Adressenwörte
A 1 bzw. A 2 zum Ausgang des Adressenumsetzer AUX durchgeschaltet. Sobald jedoch das Adressenwor
A X gleich oder größer als Mist, werden die Umschalte
Sl und S 2 in die gestrichelt dargestellten Stellungei
gebracht. Als Adressenwort /4 3 wird damit di Binärzahl M abgegeben. Mit Hilfe des Subtrahierer
SUB und des Addierers ADX wird ein Adressenwor
f>5 A 4 erzeugt, das einen der Speicherbereiche aus de
Zeile Mdts Speichers SPauswählL
Der Subtrahierer SUB bildet die Differenz zwischc dem Adressenwort A 1 und der Binärza'! M. Dies
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 A 4 in Abhängigkeit von den Adressenwörtern A 1 und A 2 zyklisch vertauscht.
Falls ein Subtrahierer SUB zur Verfügung steht, der
ein Signal abgibt, wenn ein Übertrag auftritt, so kann dieses Signal als Steuersignal für die Umschalter S1 und
S 2 verwendet werden. Der Vergleicher VGl ist in diesem Fall nicht erforderlich.
Beispielsweise werden bei dem in F i g. 2c dargestellten Speicher SP die Umschalter Sl und S2 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 1 wird als Adressenwort A 4 in
Abhängigkeit davon, ob das Adressenwort A 2 den Wert 0 oder 1 annimmt, der Wert 1 oder 0 abgegeben.
Bei der in Fig.4a dargestellten Zuordnungsliste werden auch in den Speicherbereichen, die den
einzelnen 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 i g. 2c
dargestellten Speicher angegeben, bei der auch die Adressenwörter A 4 in den Zeilen 0 und 1 zyklisch
vertauscht werden.
Der in Fig.5 dargestellte zweite Adressenumsetzer
AU2 für eine Zuordnung der Adressen entsprechend
den in F i g. 4 dargestellten Zuordnungstabellen unterscheidet sich von dem in F i g. 3 dargestellten ersten
Adressenumsetzer AU 1 dadurch, daß wegen der zyklischen Vertauschung der Adressenwörter A 4 der
Subtrahierer SUB und der Umschalter S2 nicht
erforderlich sind.
Das in Fig.6 dargestellte Schaltbild des zweiten Adressenumsetzers AU2 für eine Zuordnung der
Adressen entsprechend der in F i g. 4b dargestellten Zuordnungsliste, besteht aus einem UND-Glied LJl,
einem Inverter N 1 und einem Antivalenzglied EX Die
Adressenwörter Λ 1 und A 2 werden als Dualzahlen zugeführt. Das Adressenwort A 1 wird durch Signale
Λ 11 und A 10 und das Adressenwort A 3 wird durch
Signale Λ 31 und A 30 dargestellt. Die Signale A 11 bzw.
A10 und A 31 bzw. A 30 geben die höher bzw.
niederwertigen Stellen der Dualzahlen an.
In dem Schaltbild entsprechen das Antivaien/.glied
EX dem Addierer AD\ und das UND-Glied U\ dem Umschalter Sl. Auf den Vergleicher VCl wird
verzichtet, da das Signal A 11 immer den Binärwert 1 annimmt, wenn das Adressenwort A 1 größer oder
gleich M- 2 ist. Über den Inverter N\ wird das UND-Glied U\ gesteuert.
Die Binärwerte der Signale A 30 und A 31 stimmen mit denen der Signale A 10 und A 11 ü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.
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 Fi g. 7a schematisch dargestellte matrixförmige
Speicher SP besteht wie der in F i g. 2c dargestellte Speicher aus acht Speicherbereichen, die in R- 2
Spalten und N=4 Zeilen angeordnet sind. Die Speicherbereiche in den Zeilen 0 und 1 sind wieder
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 zwei Binärzeichen adressierbare Bereich des
Speichers SP voll ausgenützt wird. Als Adressenwort A 2 müssen in diesem Fall ebenfalls zwei Binärzeichen
zur Verfügung gestellt werden, um weitere Vorgänge angeben zu können, die die in der Zeile 3 des Speichers
SPangeordneten Speicherbereiche adressieren können.
Bei der in F i g. 7b dargestellten Zuordnungsliste eines
dritten Adressenumsetzers, der sich durch die Erweiterung um die Spalten 2 und 3 von dem in F i g. 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 Speicherbereiche
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
Fall 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 A
gleich ist der Summe aus den Adressenwörtern A 1 unc 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 di< Werte aus folgender Tabelle:
Λ 2
entweder (M+l) + (.4 I) mod[N-(M+ I)]
oder [(M+\) +A 1] mod N
oder [(M+\) +A 1] mod N
Indem Bereich der Tabelle, indem das Adressenwort A 1 kleiner nK Λ/ und ckis Adresssnwori Λ 2 gröl!
oder gleich R ist. sind in der oberen b7w. unteren Zeile die ZuonJnungsvorschrilten für den ersten bzw. /wen
Fall angegeben.
709 w ;>/:*
Der in Fig.8 dargestellte dritte Adressenumsetzer
AUZ enthält wie die Adressenumsetzer AUi und AU2
den Umschalter SI, den Vergleicher VGl und den
Addierer ADl. Weiterhin enthält er einen Umschalter
S3, der durch einen zweiten Vergleicher VG 2 gesteuert
wird. Der Umschalter S3 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 1 durchgeschaltet,
sondern eine wahlweise mit Hilfe eines zweiten Addierers AD 2 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 ADZ, 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 AD2 der Wert M+\ hinzuaddiert.
Das so gewonnene Adressenwort wird über die Umschalter S3 und Sl durchgeschaltet und als
Adressenwort A 3 abgegeben.
Für den in der Tabelle dargestellten zweiten Fall ist der Addierer AD 3 nicht erforderlich und das Adressenwort
A 3 wird durch Addition des Adressenwortes A 1 und der Binärzahl M+\ in dem Modulo-N-Addierer
AD 2 erzeugt.
Falls das Adressenwort A 1 größer als Mist, wird der
Umschalter Sl wie bei den Adressenumsetzern AUi
und AU2 in die gestrichelt dargestellte Stellung
gebracht und als Adressenwort A 3 wird die Binärzahl Mdurchgeschaltet.
Das in F i g. 9 dargestellte Schaltbild des Adressenumsetzers AU3 für eine Zuordnung der Adressen
entsprechend der in F i g. 7 dargestellten Zuordnungsliste für den ersten Fall enthält ebenso wie der in F i g. 6
dargestellte Adressenumsetzer einen Inverter Ni ein UND-Glied Ui und ein Antivalenzglied EX. Ein Signal
A 21, das die höherwertige Stelle des Adressenwortes Λ 2 angibt, wird über ein ODER-Glied Dl zum
Ausgang durchgeschaltet und dort als Signal A 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 D 2
dem UND-Glied Ui zugeführt. Dem zweiten Eingang des ODER-Glieds D 2 wird das Signal A 10 zugeführt.
Das ODER-Glied Dl und das UND-Glied Ui entsprechen den Umschaltern S! und S3 und teilweise
dem Vergleicher VG 2. Das ODER-Glied D 2 entspricht den Addierern AD2 und AD3 und ebenfalls teilweise
dem Vergleicher VG 2.
Hierzu 4 Blatt Zeichnungen
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 uncf vierte Adieß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, dadurch gekennzeichnet,
daß der Vergleicher (VG 1) 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 (Sl) 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. zweiten Stellung das erste Adressenwort (A 1) bzw. die Binärzahl (M) als drittes
Adressenwort (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 nach Anspruch 1, dadurch gekennzeichnet, daß einem ersten Eingang des
Modulo-Λ-Addierers (,4D1) ein Subtrahierer (SUB)
vorgeschaltet ist, der die Differenz zwischen dem ersten Adressenwort (A 1) und der Binärzahl (M)
bildet, daß dem zweiten Eingang des Modulo- R- Addierers (ADl) das zweite Adressenwort (A 2)
zugeführt wird und daß ein zweiter Umschalter (S 2) vorgesehen ist, der in gleicher Weise wie der erste
Umschalter (Sl) eine erste und zweite Stellung einnimmt und über den bei der ersten 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 1) anliegt und dem ersten
Umschalter (Sl) ein dritter Umschalter (S3) vorgesehen ist, der eine erste Stellung einnimmt,
wenn das zweite Adressenwort (A 2) kleiner ist als der Maximalwert des vierten Adressenwortes (A 4),
über den bei dieser Stellung das erste Adressenwort (Al) zum ersten Umschalter (Sl) fortgeschaltet
wird und der andernfalls eine zweite Stellung einnimmt, bei der die in einem Modulo-N-Addierer
(AD 2) gebildete Summe aus dem ersten Adressenwort (A 1) und der um 1 erhöhten Binärzahl (M) zum
ersten Umschalter (S 1) fortgeschaltet wird, wobei N den Wertevorrat des dritten Adressenwortes (A 3)
angibt.
4. Adressenumsetzer nach Anspruch 3, dadurch
gekennzeichnet, daß dem ersten Eingang des Modulo-N-Addierers (AD2) ein weiterer Addierer
(AD'S) vorgeschaltet ist,der das erste Adressenwort
(A 1) 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-/V-Addierers (AD 2) die um 1 erhöhte Binärzahl (M)
zugeführt wird.
5. Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß als
Umschalter (S 1 bis S3), Addierer (AD 1 bis AD3), Subtrahierer (SUB) und Vergleicher (VGl, 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 DE2508373B2 (de) | 1977-03-17 |
DE2508373C3 true DE2508373C3 (de) | 1977-10-27 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE3036711C2 (de) | Verfahren zum Verkleinern von grafischen Mustern | |
AT398506B (de) | Signalverarbeitungsschaltung | |
EP0529358A1 (de) | Speichereinheit mit einem Adressgenerator | |
DE1193996B (de) | Schiebespeicher mit Steuervorrichtung | |
DE3043100C2 (de) | ||
EP0024708A1 (de) | Zeitlagenvielfach für ein Zeitmultiplexsystem zur Durchkopplung digitaler, insbesondere deltamodulierter, Nachrichtensignale | |
DE2510542A1 (de) | Digitale bildwiedergabevorrichtung mit mehreren bildschirmen | |
DE3811145C2 (de) | ||
DE1271433B (de) | Adressiereinrichtung fuer einen Tabellenwertspeicher | |
EP0230076A2 (de) | Verfahren und Anschaltungsanordnung zur Auflösungsumwandlung von binären Pseudo-Halbtonbildern | |
DE2508373C3 (de) | Adressenumsetzer | |
DE2605066C2 (de) | Kanalzuordnungsschaltung zur Herstellung einer Zeitvielfach-Breitbandverbindung | |
DE2508373A1 (de) | Adressenumsetzer | |
DE2233164B2 (de) | Schaltungsanordnung zur uebertragung von aufeinanderfolgenden bitstellen zwischen zwei registern | |
DE2601379C3 (de) | Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen | |
DE1499284B2 (de) | Datenverarbeitungsanlage | |
EP0561457A2 (de) | Mikroprozessor zur Verarbeitung von Eingabe/Ausgabedaten | |
DE2327375C2 (de) | PCM-Vermittlungsstelle mit Zeitvielfach- und Raumvielfacheinrichtungen | |
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 | |
DE2213215C3 (de) | Anordnung zur Programmsteuerung für Industrie-Automaten (Roboter) | |
DE2246405C3 (de) | Schaltungsanordnung zum Adressieren eines Speichersystems mit logischen Adressen | |
DE2716286A1 (de) | Zentralgesteuerte zeitmultiplexe fernmelde-, insbesondere fernsprechvermittlungsanlage mit einem oder mehreren verbindungsspeichern | |
DE2363100C3 (de) | Mikroprogramm-Steuerwerk und Verfahren zu seinem Betrieb |