DE2508373A1 - Adressenumsetzer - Google Patents

Adressenumsetzer

Info

Publication number
DE2508373A1
DE2508373A1 DE19752508373 DE2508373A DE2508373A1 DE 2508373 A1 DE2508373 A1 DE 2508373A1 DE 19752508373 DE19752508373 DE 19752508373 DE 2508373 A DE2508373 A DE 2508373A DE 2508373 A1 DE2508373 A1 DE 2508373A1
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
Application number
DE19752508373
Other languages
English (en)
Other versions
DE2508373B2 (de
DE2508373C3 (de
Inventor
Eberhard Dipl Ing 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
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority claimed from DE19752508373 external-priority patent/DE2508373C3/de
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
Publication of DE2508373C3 publication Critical patent/DE2508373C3/de
Application granted granted Critical
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User 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)
  • Executing Machine-Instructions (AREA)
  • Memory System (AREA)

Description

Die Erfindung bezieht sich auf einen Adressenumsetzer zum Umsetzen von ersten Adressen in zweite Adressen, die einem Speicher einer Datenverarbeitungseinrichtung zugeführt werden, wobei die ersten Adressen erste und zweite Adressenwörter enthalten, wobei die zweiten Adressen dritte und vierte Adressenwörter enthalten und wobei die Adressenwörter Binärzahlen darstellen.
Es ist bereits bekannt, die Adressen eines Speichers einer Darenverarbeitungseinrichtung 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
VPA 9/240/4118 Ret/Ram
609837/0448
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 Bearbeitungszeit in der Datenverarbeitungseinrichtung.
Der Erfindung liegt die Aufgabe zugrunde, einen Adressenumsetzer anzugeben, mit dessen Hilfe auf einfache Weise bei der Bearbeitung von mehreren Vorgängen durch eine Datenverarbeitungsanlage die Adressen der Speicherbereiche im Speicher der Datenverarbeitungsanlage in Abhängigkeit von den Vorgängen geändert v/erden und eine Koordinierung der einzelnen Vorgänge erfolgen kann.
Erfindungsgemäß wird die Aufgabe bei dem Adressenumsetzer der eingangs genannten Art gelöst durch einen Vergleicher, dem das erste Adressenwort und eine vorgegebene Binärzahl zugeführt werden und der ein Binärsingal abgibt, das einen ersten bzw. zweiten Binärwert annimmt, wenn das erste Adressenwort kleiner bzw. nicht kleiner ist als die Binärzahl, durch einen Umschalter, der eine erste bzw. zweite Stellung einnimmt, wenn das Binärsignal den ersten bzw. zweiten Binärwert annimmt und der in der ersten bzw. zweiten Stellung das erste Adressenwort bzw. die Binärzahl als drittes Adressenwort durchschaltet und durch einen Zuordner, dem das erste und das zweite Adressenwort zugeführt werden und der das vierte Adressenwort abgibt.
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
VPA 9/240/4118 - 3 -
609837/0448
verschiedene Spexcherbereiche, 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.
Eine einfache Umsetzung der ersten Adressen in die zweiten Adressen, bei der-die zweiten Adressenwörter zyklisch vertauscht und am Ausgang als vierte Adressenwörter abgegeben v/erden wird erreicht, wenn der 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.
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-R-Addierers das zweite Adressenwort zugeführt wird und wenn ein zweiter Umschalter vorgesehen isi;, der in gleicher Weise wie der erste Umschalter eine erste und zweite Stellung einnimmt und über den bei der ersten Stellung das zweite Adressenwort und bei der zweiten Stellung das Adressenwort am Ausgang des Modulo-R-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 dein das erste Adressenwort 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
VPA 9/240/4118 609B37/Q448
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 N den Wertevorrat des dritten Adressenwortes angibt.
Die weiteren Speicherbereiche werden in vorteilhafter Weise weiteren Vorgängen zugeordnet, wenn dem ersten Eingang des Modulo-N-Addierers ein weiterer Addierer vorgeschaltet ist, der das erste Adressenwort modulo B 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, Addierer, Suotrahierer und Vergleicher binäre Verknüpfungsglieder vorgesehen sind.
Im folgenden werden Ausführungsbeispiele des Adressenumsetzers gemäß der .Erfindung anhand von Zeichnungen beschrieben.
Es zeigen:
Fig. 1 ein Blockschaltbild einer mit einem Adressenumsetzer versehenen Speicheranordnung,
Fig. 2 eine schematische Darstellung von Adressen von
Speicherbereichen eines Speichers und Zuordnungslisten für einen ersten Adressenumsetzer,
Fig. 3 ein Blockschaltbild des ersten Adressenumsetzers,
Fig. 4 Zuordnungslisten für einen zweiten Adressenumsetzer, Fig. 5 ein Blockschaltbild des zweiten Adressenumsetzers,
Fig. 6 ein Schaltbild des zweiten Adressenunsetzers,
Fig. 7 eine weitere schematische Darstellung von Adressen
von Speicherbereichen eines Speichers und eine Zuordnungsliste für einen dritten Adressenumsetzer,
Fig. 8 ein Blockschaltbild des dritten Adressenumsetzers,
Fig. 9 ein Schaltbild des dritten Adressenumsetzers.
VPA 9/240/4118 609837/0448 -5-
Das in Fig. 1 dargestellte Blockschaltbild zeigt einen Speicher SP einer Datenverarbeitungsanlage, einen Adressenumsetzer AU und zwei Register R1 und R2. 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 R1 und R2 eingespeichert. Diese ersten Adressen enthalten jeweils ein erstes und ein zweites Adressenwort A1 bzw. A2,die Binärzahlen darstellen. Das Adressenwort A1 ist beispielsweise ein Bestandteil des Adressenteils des Maschinenbefehls und gibt eine relative Adresse an. Es wird im Register R1 gespeichert. Das Adressenwort A2 gibt an, für welchen Vorgang das Adressenwort Al als relative Adresse dient und es wird im Register R2 gespeichert, Durch das Adressenwort A2 können auch eine von mehreren Programmebenen oder Bedingungen angegeben werden.
VPA 9/240/4118 - 6 -
609837/04A8
Weiterhin enthält die erste Adresse ein Adressenwort AO, das die Adresse der jeweils adressierten Speicherzelle innerhalb der Speicherbereiche ebenfalls als Binärzahl angibt. Da jedoch in den meisten Fällen nicht einzelne Speicherzellen, sondern ganze Speicherbereiche geändert werden, wird im folgenden dieses Adressenwort AO nicht berücksichtigt. Es wird in diesen Fällen unter Umgehung des Adressenumsetzers AU unmittelbar dem Speicher SP zugeführt.
Die Adressenwörter A1 und A2 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 A3 bzw. A4, die ebenfalls Binärzahlen darstellen. Falls ein matrixförmiger Speicher SP verwendet wird, ist es zweckmäßig, die Adressenwörter A3 und A4 den Spalten bzw. Zeilen der Matrix zuzuordnen. Beispielsweise gibt das Adressenwort A3 die Zeile und das Adressenwort A4 die Spalte des Speicher SP an.
Der Adressenumsetzer AU enthält einen Zuordner Z, einen Vergleicher VG1 und einen Umschalter S1. Der Vergleicher VG1 vergleicht das Adressenwort A1 mit einer vorgegebenen Binärzahl M, die das Adressenwort A3 für diejenigen Speicherbereiche angibt, die mehreren Vorgängen gemeinsam zugeordnet sind. In Abhängigkeit vom Ergebnis des Vergleichs wird der Umschalter S1 in die durchgezogen oder gestrichelt dargestellte La.ge gebracht.
Solange das Adressenwort A1 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 zuge-
7PA 9/240/4118 - 7 -
609837/0448
ordnet sind. Als Adressenwort A3 wird das Adressenwort A1 und als Adressenwort A4 wird ein im Zuordner Z in Abhängigkeit von den Adressenwörtern A1 und A2 erzeugtes Adressenwort abgegeben.
Wenn das Adressenwort A1 gleich oder größer ist als die Binärzahl M, nimmt das Binärsignal den Binärwert O an und der Umschalter S1 wird in die gestrichelt dargestellte Stellung gebracht und als Adressenwort A3 wird die Binärzahl M abgegeben. Damit werden diejenigen Speicherbereiche adressiert, die mehreren Vorgängen gemeinsam zugeordnet sind. Das Adressenwort A4 wird auch in diesem Fall aus den Adressenwörtern A1 und A2 im Zuordner Z erzeugt.
Der in Fig. 2a schematisch dargestellte matrixförmige Speicher SP hat N Zeilen O bis N-1, von denen zunächst nur M+1 Zeilen O bis M betrachtet werden und R Spalten O bis R-1. Das Adressenwort A3 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 und das zweite die Zeile bezeichnet. Die Speicherbereiche 0,0 bis R-1,M in den Zeilen O bis M-1 und in jeweils einer Spalte sind jeweils einem Vorgang individuell zugeordnet. Die Speicherbereiche 0,M bis R-1,M in der Zeile M sind allen durch das Adressenwort A2 angegebenen Vorgängen gemeinsam zugeordnet.
Bei der in Fig. 2b dargestellten. Zuordnungsliste für einen ersten Adressenumsetzer AU1 ist die Zuordnung zwischen den ersten und den zweiten Adressen dargestellt. Die Adressenwörter A3 und A4 stimmen in den Zeilen 0 bis M mit den Adressenwörtern A1 und A2 überein. Die Anzahl der durch das Adressenwort A1 angebbaren Adressen ist jedoch größer als M, da bei der Bearbeitung jedes Vorgangs auch noch diejenigen Speicher adressiert werden müssen, die allen Vorgängen gemeinsam zuge-
VPA 9/240/4118 - 8 -
(309837/0448
ordnet sind. In den Zeilen M+1 bis N-1 sind daher die Speicherbereiche angegeben, die den durch die Adressenwörter A2 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 A1 die (N-1)te Zeile aufgerufen wird, werden in Abhängigkeit von dem durch das Adressenwort A2 angegebenen Vorgang die Speicherbereiche R-1,M bis R-2/M adressiert. Mit Hilfe der gleichen im Adressteil 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 O bis 2 enthaltenen Speicherbereiche betrachtet. Die Speicherbereiche in den Zeilen O und 1 sind jeweils einem Vorgang individuell zugeordnet und die Speicherbereiche in der Zeile M=2 sind beiden Vorgängen gemeinsam zugeordnet.
Die Fig. 2d zeigt eine entsprechende Zuordnungsliste für diesen Speicher. Unter dem gleichen Adressenwort A1 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 At=3 entweder die Speicherbereiche mit den Adressen 1, 2 oder 0,2 angesprochen.
Das in Fig. 3 dargestellte Blockschaltbild eines ersten Adressenumsetzers AU1 zeigt den Vergleicher VG1, den Umschalter S1 und einen ersten Zuordner Z1. Dem Vergleicher VG1 werden eben-
VPA 9/240/4118 - 9 -
609837/0448
falls das Adressenwort A1 und die Binärzahl M, beispielsweise als Dualzahlen zugeführt. Die Binärzahl M gibt die Zeile des Speichers SP an, 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 A1 kleiner ist als M und den Binärwert O annimmt, wenn das Adressenwort A1 gleich oder größer als M ist. Mit diesem Signal wird der Umschalter S1 gesteuert, der beispielsweise aus binären Verknüpfungsgliedern besteht.
Der Zuordner Z1 enthält einen Umschalter S2, der ebenfalls von dem Vergleicher VG1 gesteuert wird, einen Subtrahierer SUB und einen Modulo-R-Addierer AD1, wobei R den Wertevorrat des Adreseenwortes A3 angibt.
Solange das Adressenwort A1 kleiner ist als die Binärzahl M befinden sich die Umschalter S1 und S2 in der durchgezogen dargestellten Stellung. Als Adressenwörter A3 und A4 werden damit die AdressenWörter A1 bzw. A2 zum Ausgang des Adressenumsetzers AU1 durchgeschaltet. Sobald jedoch das Adressenwort A1 gleich oder größer als M ist, werden die Umschalter S1 und S2 in die gestrichelt dargestellten Stellungen gebracht. Als Adressenwort A3 wird damit die Binärzahl M abgegeben. Mit Hilfe des Subtrahierers SUB und des Addierers AD1 wird ein Adressenwort A4 erzeugt, das einen der Speicherbereiche aus der Zeile M des Speichers SP auswählt.
Der Subtrahierer SUB bildet die Differenz zwischen dem Adressenwort A1 und der Binärzahl M. Diese Differenz wird mit Hilfe des Addierers AD1 zum Adressenwort A2 addiert. Die Summe wird über den Umschalter S2 als Adressenwort A4 abgegeben. Durch den Subtrahierer SUB und den Addierer AD1 wird das Adressenwort A4 in Abhängigkeit von den Adressenwörtern A1 und A2 zyklisch vertauscht.
VPA 9/240/4118 - 10 -
609837/0448
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 S2 verwendet werden. Der Vergleicher VG1 ist in diesen Fall nicht erforderlich.
Beispielsweise werden bei dem in Fig. 2c dargestellten Speicher SP die Umschalter S1 und S2 beim Anliegen eines Adressenwortes A1=3 in die gestrichelt dargestellte Stellung gebracht. Der Subtrahierer SUB gibt den Wert 3-2=1 ab und am Ausgang des Addierers AD1 wird als Adressenwort A4 in Abhängigkeit davon, ob das Adressenwort A2 den Wert O oder 1 annimmt, der Wert 1 oder O abgegeben.
Bei der in Fig. 4a dargestellten Zuordnungsliste werden auch in den Speicherbereichen, die den einzelnen Vorgängen individuell zugeordnet sind, die Adressenwörter A4 zyklisch vertauscht. Auf diese Weise wird die Schaltung des Adressenumsetzers wesentlich vereinfacht.
In Fig. 4b ist eine Zuordnungsliste für den in Fig. 2c dargestellten Speicher angegeben, bei der auch die Adressenwörter A4 in den Zeilen O und 1 zyklisch vertauscht v/erden.
Der in Fig. 5 dargestellte zweite Adressenumsetzer AU2 für eine Zuordnung der Adressen entsprechend den in Fig. 4 dargestellten Zuordnungstabellen unterscheidet sich von dem in Fig. 3 dargestellten ersten Adressenumsetzer AU1 dadurch, daß wegen der zyklischen Vertauschung der Adressenwörter A4 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 Fig. 4b dargestellten Zuordnungsliste, besteht aus einem
VPA 9/240/4118 - 11 -
609837/0448
UND-Glied U1, einem Inverter NI und einem Antivalenzglied EX. Die Adressenwörter A1 und A2 werden als Dualzahlen zugeführt. Das Adressenwort A1 wird durch Signale A11 und A1O und das Adressenwort A3 wird durch Signale A31 und A3O dargestellt. Die Signale A11 bzw. A1O und A31 bzw. A3O geben die höher bzw. niederwertigen Stellen der Dualzahlen an.
In dem Schaltbild entsprechen das Antivalenzglied EX dem Addierer AD1 und das UND-Glied U1 dem Umschalter S1. Auf den Vergleicher VG1 wird verzichtet, da das Signal A11 immer den Binärwert 1 animmt, wenn das Adressenwort A1 größer oder gleich M=2 ist. Über den Inverter N1 wird das UND-Glied U1 gesteuert.
Die Binärwerte der Signale A3O und A31-stimmen mit denen der Signale A1O und A11 überein, solange das Adressenwort A1 nicht größer als 2 ist. In diesem Fall nimmt das Signal A3O immer den Binärwert O an. Das Adressenwort A2 wird durch das Signal A2O dargestellt. Für den Fall, daß das Signal A2O gleich ist, ist das Signal A4O immer gleich dem Signal A1O und für den Fall, daß das-Signal A2O gleich 1 ist, ist es immer gleich dem invertierten Signal A1O.
Der in Fig. 7a schematisch dargestellte matrixförmige Speicher SP besteht wie der in Fig. 2c dargestellte Speicher aus acht Speicherbereichen, die in R=2 Spalten und N=4 Zeilen angeordnet sind. Die Speicherbereiche in den Zeilen O 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 A3 durch Dualzahlen der mit zwei Binärzeichen adressierbare Bereich des Speichers SP voll ausgenützt wird. Als Adressenwort A2 müssen in diesem Fall ebenfalls zwei Binärzeichen zur
VPA 9/240/4118 - 12 -
609837/0448
Verfügung gestellt werden, um weitere Vorgänge angeben zu können, die die in der Zeile 3 des Speichers SP angeordneten Speicherbereiche adressieren können.
Bei der in Fig. 7b dargestellten Zuordnungsliste eines dritten Adressenumsetzers, der sich durch die Erweiterung 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 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 Fig. 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 A1 und A2 das Adressenwort A4 gleich ist der Summe aus den Adressenwörtern A1 und A2 modulo R. In Abhängigkeit von der Größe von A1 und A2 ergeben sich für das Adressenwort A3 die Werte aus folgender Tabelle:
<M < R A2 ^R mod
mod
■4
A1 ^M A1 entweder (M+1)+(A1)
oder /(M+D+A1J
/>-(M+1j]
N
M M
VPA 9/240/4118
609837/0448
- 13 -
In dem Bereich der Tabelle, in dem das Adressenwort A1 kleiner als M und das Adressenwort A2 größer oder gleich R ist, sind in der oberen bzw. unteren Zeile die ZuordnungsVorschrif ten für den ersten bzw. zweiten Fall angegeben.
Der in Fig. 8 dargestellte dritte Adressenumsetzer AU3 enthält wie die Adressenuiusetzer AU1 und AU2 den Umschalter S1, den Vergleicher VG1 und den Addierer AD1. Weiterhin enthält er einen Umschalter S3, der durch einen zweiten Vergleicher VG2 gesteuert wird. Der Umschalter S3 bleibt in der durchgezogen dargestellten Stellung, solange das Adressenwort A2 kleiner als R ist. Andernfalls wird er in die gestrichelt dargestellte Stellung gebracht. Als Adressenwort A3 wird damit nicht mehr das Adressenwort A1 durchgeschaltet, sondern eine wahlweise mit Hilfe eines zweiten Addierers AD2 und gegebenenfalls eines dritten Addierers AD3 erzeugtes Adressenwort.
Für den in der Tabelle angegebenen ersten Fall wird das Adres senwort A1 modulo-B umgeformt, wobei B gleich N-(M+1) ist. Die Umformung erfolgt mit Hilfe des Addierers AD3, an dessen ersten Eingang das Adressenwort A1 und an dessen zweiten Eingang der Wert O anliegt. Anschließend wird mit Hilfe des Modulo-N-Addierers AD2 der Wert M+1 hinzuaddiert. Das so gewonnene Adressenwort wird über die Umschalter S3 und S1 durch geschaltet und als Adressenwort A3 abgegeben.
Für den in der Tabelle dargestellten zweiten Fall ist der Addierer AD3 nicht erforderlich und das Adressenwort A3 wird durch Addition des Adressenwortes A1 und der Binärzahl M+1 in dem Modulo-N-Addierer AD2 erzeugt.
Falls das Adressenwort A1 größer als M ist, wird der Umschalter S1 wie bei den Adressenumsetzern AU1 und AU2 in die gestrichelt dargestellte Stellung gebracht und als Adressenwort A3 wird die Binärzahl M durchgeschaltet.
VPA 9/240/4118 609837/OU8 "^-
Das in Fig. 9 dargestellte Schaltbild des AdressenUmsetzers AU3 für eine Zuordnung der Adressen entsprechend der in Fig. 7 dargestellten Zuordnungsliste für den ersten Fall enthält ebenso wie der in Fig. 6 dargestellte Adressenumsetzer einen Inverter N1 ein UND-Glied U1 und ein Antivalenzglied EX. Ein Signal A21, das die höherwertige Stelle des Adressenwortes A2 angibt, wird über ein ODER-Glied D1 zum Ausgang durchgeschaltet und dort als Signal A31 abgegeben, das die höherwertige Stelle des Adressenwortes A3 angibt. Außerdem wird das Signal A21 über einen ersten Eingang eines weiteren ODER-Glieds D2 dem UND-Glied U1 zugeführt. Dem zweiten Eingang des ODER-Glieds D2 wird das Signal A1O zugeführt. Das ODER-Glied D1 und das UND-Glied U1 entsprechen den Umschaltern S1 und S3 ■ und teilweise dem Vergleicher VG2. Das ODER-Glied D2 entspricht den Addierern AD2 und AD3 und ebenfalls teilweise dem Vergleicher VG2.
6 Patentansprüche
9 Figuren
VPA 9/240/4118 - 15 -
609837/0448

Claims (6)

  1. Patentansprüche
    μ) Adressenumsetzer zum Umsetzen von ersten Adressen in zweite Adressen, die einem Speicher einer Datenverarbeitungseinrichtung zugeführt v/erden, wobei die ersten Adressen erste und zweite Adressenwörter enthalten, wobei die zweiten Adressen dritte und vierte Adressenwörter enthalten und wobei die Adressenwörter Binärzahlen darstellen, gekennzeichnet durch einen Vergleicher (VG1), dem das erste Adressenwort (A1) und eine vorgegebene Binärzahl (M) zugeführt werden und der ein Binärsignal abgibt, das einen ersten bzw. zweiten Binärwert ("1" bzw. "0") annimmt, wenn das erste Adressenwort (A1) kleiner bzw. nicht kleiner ist als die Binärzahl (M), durch einen Umschalter (S1), der eine erste bzw. zweite Stellung einnimmt, wenn das Binärsignal den ersten bzw. zweiten Binärwert ("1" bzw. "0") annimmt und der in der ersten bzw. zweiten Stellung das erste Adressenwort (A1) bzw. die Binärzahl (M) als drittes Adressenwort (A3) durchschaltet und durch einen Zuordner (Z), dem das erste und das zweite Adressenwort (A1 und A2) zugeführt werden und der das vierte Adressenwort (A4) abgibt.
  2. 2. Adressenumsetzer nach Anspruch 1, dad u--r c h gekennzeichnet, daß der Zuordner (Z) einen Modulo-R-Addierer (AD1) enthält, dem das erste und das zweite Adressenwort (A1 und A2) zugeführt v/erden und der das vierte Adressenwort (A4) abgibt, wobei R den Wertevorrat des vierten Adressenwortes (A4) angibt.
  3. 3. Adressenumsetzer nach Anspruch 2, dadurch gekennzeichnet, daß einem ersten Eingang des 2-iodulo-R-Addierers (AD1) ein Subtrahierer (SUB) vorgeschaltet ist, der die Differenz zwischen dem ersten Adressenwort (A1) und der Binärzahl (M) bildet, daß dem zweiten Eingang des Modulo-R-Addierers (AD1) das zweite Adressenwort (A2) zugeführt wird
    VPA 9/240/4118 - 16 -
    609837/0448
    und daß ein zweiter Umschalter (S2) vorgesehen ist, der in gleicher Weise wie der erste Umschalter (S1) eine erste und zweite Stellung einnimmt und über den bei der ersten Stellung das zweite Adressenwort (A2) und bei der zweiten Stellung das Adressenwort am Ausgang des Modulo-R-Addierers (AD1) als viertes Adressenwort (A4) zum Ausgang durchgeschaltet wird.
  4. 4. Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß im Verbindungsweg zwisehen dem Eingang, an dem das erste Adressenwort (A1) anliegt und dem ersten Umschalter (S1) ein dritter Umschalter (S3) vorgesehen ist, der eine erste Stellung einnimmt, wenn das zweite Adressenwort (A2) kleiner ist als der Maximalwert des vierten Adressenwortes (A4), über den bei dieser Stellung das erste Adressenwort (A1) zum ersten Umschalter (S1) fortgeschaltet wird und der andernfalls eine zweite Stellung einnimmt, bei der die in einem Modulo-N-Addierer (AD2) gebildete Summe aus dem ersten Adressenwort (A1) und der um 1 erhöhten Binärzahl (M) zum ersten Umschalter (S1) fortgeschaltet wird, wobei N den Wertevorrat des dritten Adressenwortes (A3) angibt.
  5. 5. Adressenumsetzer nach Anspruch 4, dadurch gekennzeichnet, daß dem ersten Eingang des Modulo-N-Addierers (AD2) ein weiterer Addierer (AD3) vorgeschaltet ist, der das erste Adressenwort (A1) 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.
  6. 6. Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß als Umschalter (S1 bis S3), Addierer (AD1 bis AD3), Subtrahierer (SUB) und Vergleicher (VG1, VG2) binäre Verknüpfungsglieder vorgesehen sind.
    VPA 9/240/4118
    609837/0448
    Leerseite
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 true DE2508373A1 (de) 1976-09-09
DE2508373B2 DE2508373B2 (de) 1977-03-17
DE2508373C3 DE2508373C3 (de) 1977-10-27

Family

ID=

Also Published As

Publication number Publication date
US4056819A (en) 1977-11-01
CH613540A5 (de) 1979-09-28
SE7601520L (sv) 1976-08-27
FR2302561A1 (fr) 1976-09-24
FR2302561B1 (de) 1981-09-25
BE838971A (fr) 1976-08-26
DE2508373B2 (de) 1977-03-17
JPS51109745A (de) 1976-09-28
NL7601194A (nl) 1976-08-30
DK67276A (da) 1976-08-27

Similar Documents

Publication Publication Date Title
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
EP0529358B1 (de) Speichereinheit mit einem Adressgenerator
DE1956604B2 (de) Datenverarbeitungsanlage
DE2261694A1 (de) Speichersystem
DE2055784A1 (de) Datenverarbeitungssystem
DE2350884A1 (de) Datenverarbeitungssystem
DE3043100C2 (de)
DE2717658A1 (de) Anordnung zur ansteuerung eines mikroprogrammspeichers
DE2364254B2 (de) Schaltungsanordnung fuer datenverarbeitende geraete
DE1774682B2 (de) Einrichtung zur sichtbaren Datenwiedergabe
DE2510542A1 (de) Digitale bildwiedergabevorrichtung mit mehreren bildschirmen
DE2718551B2 (de)
DE1285218B (de) Datenverarbeitungsanlage
DE2508373A1 (de) Adressenumsetzer
DE2508373C3 (de) Adressenumsetzer
DE2605066C2 (de) Kanalzuordnungsschaltung zur Herstellung einer Zeitvielfach-Breitbandverbindung
DE2721235A1 (de) Elektronischer prozessrechner zur steuerung des fernsprechverkehrs
EP0561457A2 (de) Mikroprozessor zur Verarbeitung von Eingabe/Ausgabedaten
DE2601379C3 (de) Schaltungsanordnung zum Umwandeln virtueller Adressen in reelle Adressen
DE2327375C2 (de) PCM-Vermittlungsstelle mit Zeitvielfach- und Raumvielfacheinrichtungen
DE2907835C2 (de) Adressen-Multiplexer für einen Arbeitsspeicher
EP0176148A2 (de) Schaltungsanordnung zum Erzeugen eines Zeitmultiplexsignals
DE2143442B2 (de) Anordnung zur Erzeugung von Speicheradressen bei einem Zeitvielfachdatennetzwerk
DE2314070C3 (de) Verfahren und Schaltungsanordnung zum Erstellen der Einträge eines Kettungslistenspeichers in einem Verfahren und einer Schaltungsanordnung zum Durchfuhren von sequentiell ablaufenden Eingabe-/Ausgabeoperationen bei einer mit virtueller Adressierung arbeitenden Datenverarbeitungsanlage
DE2032265C3 (de) Umwerter für Fernsprechvermittlungsanlagen

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