DE2508373C3 - Adressenumsetzer - Google Patents

Adressenumsetzer

Info

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
Application number
DE19752508373
Other languages
English (en)
Other versions
DE2508373A1 (de
DE2508373B2 (de
Inventor
Eberhard Dipl.-Ing 8190 Wolfratshausen Lukas
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE19752508373 priority Critical patent/DE2508373C3/de
Priority to CH106676A priority patent/CH613540A5/xx
Priority to FR7602454A priority patent/FR2302561A1/fr
Priority to US05/655,145 priority patent/US4056819A/en
Priority to NL7601194A priority patent/NL7601194A/xx
Priority to SE7601520A priority patent/SE7601520L/xx
Priority to DK67276*#A priority patent/DK67276A/da
Priority to JP51019806A priority patent/JPS51109745A/ja
Priority to BE164674A priority patent/BE838971A/xx
Publication of DE2508373A1 publication Critical patent/DE2508373A1/de
Publication of DE2508373B2 publication Critical patent/DE2508373B2/de
Application granted granted Critical
Publication of DE2508373C3 publication Critical patent/DE2508373C3/de
Expired legal-status Critical Current

Links

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.
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
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)

Patentansprüche:
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.
DE19752508373 1975-02-26 1975-02-26 Adressenumsetzer Expired DE2508373C3 (de)

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