DE2508373B2 - Adressenumsetzer - Google Patents

Adressenumsetzer

Info

Publication number
DE2508373B2
DE2508373B2 DE19752508373 DE2508373A DE2508373B2 DE 2508373 B2 DE2508373 B2 DE 2508373B2 DE 19752508373 DE19752508373 DE 19752508373 DE 2508373 A DE2508373 A DE 2508373A DE 2508373 B2 DE2508373 B2 DE 2508373B2
Authority
DE
Germany
Prior art keywords
address
address word
word
adder
binary
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE19752508373
Other languages
English (en)
Other versions
DE2508373A1 (de
DE2508373C3 (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
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)
  • Memory System (AREA)
  • Executing Machine-Instructions (AREA)

Description

Die Erfindung bezieht sich auf einen Adressenumsetzer zum Umsetzen von ersten Adressen in zweite Adressen, wobei die zweiten Adressen einem Speicher einer DateRverarbeitungseinrichtung zugeführt werden, wobei in dem Speicher einerseits Speicherbereiche adressiert werden, die verschiedenen Vorgängen individuell zugeordnet sind und andererseits Speicherbereiche adressiert werden, die einer Mehrzahl von Vorgängen gemeinsam zugeordnet sind, wobei die ersten Adressen erste und zweite Adreßwörter enthalten, wobei die zweiten Adressen dritte und vierte \dießwörter enthalten, wobei die Adreßwörter Binärzahlen darstellen und wobei ein Vergleicher vorgesehen ist. dem das erste Adressenwort und eine die gemeinsamen Speicherbereiche angebende Binärzahl zugeführt werden.
Es ist bereits bekannt, die Adressen eines Speichers einer Datenverarbeitunpseinrkhtung durch eine Adressensubstitution, die auch als indirekte Adressierung bekannt ist. zu ermitteln. Bei einer derartigen Adressen substitution wird der Adressenteil des Maschinenbefehls durch den inhalt einer Speicherzelle oder eines Registers ersetzt. Die indirekte Adressierung kann auch als Adressierung durch Basis- und Distanzadressen durchgeführt werden. Bei dieser Art der Adressierung erhält der Adressenteil des Maschinenbefehls die Distanzadresse, die den Abstand einer Speicherstelle zu einem Bereichsanfang angibt, und der Bereichsanfang wird bestimmt durch den Inhalt eines Registers, das die Basisadresse enthält.
Bei der Adressierung mit Hilfe eines Indexregisters wird zur Ermittlung der tatsächlichen Speicheradresse der Inhalt eines Indexregisters zu dem Inhalt des Adressenteils des Maschinenbefehls addiert oder von diesem subtrahiert. Eine Adressierung von Speicherzellen mittels der Adressensubstitution und mit Hilfe der Indexregister hat jedoch den Nachteil, daß die I Imsetzung der Adressen sehr aufwendig ist, da oft eine umfangreiche Adressenberechnung durchgeführt werden muß. Damit erhöht sich auch die für die Bearbeitung der einzelnen Vorgänge erforderliche Bearbeitungszeit in der Datenverarbeitungseinrichtung.
Der Erfindung liegt die Aufgabe zugrunde, einen Adressenumsetz.er anzugeben, mit dessen Hilfe auf einfache Weise bei der Bearbeitung von mehreren Vorgängen durch *ine Datenverarbeitungsanlage die Adressen der Speicherbereiche im Speicher der Datenverarbeitungsanlage in Abhängigkeit von den Vorgängen geändert werden und eine Koordinierung der einzelnen Vorgänge erfolgen kann.
Erfindungsgemäß wird die Aufgabe bei dem
\dressenumsetzer der eingangs genannten Art dadurch gelöst, daß der Vergleicher ein Binärsignal abgibt, das 2inen ersten bzw. zweiten Binärwert annimmt, wenn das erste Adressenwort kleiner bzw. nicht kleiner ist als die Binärzahl, daß ein Umschalter eine erste bzw. zweite Stellung einnimmt, wenn das Binärsignal den ersten bzw. zweiten Binärwert annimmt und daß der Umschalter in der ersten bzw. zweiten Stellung das erste Adressenwort bzw. die Binärzahl als drittes Adressenwort durchschaltet und daß ein Zuordner einen Modulo- R-Addierer enthält, dem das erste und das zweite Adressenwort zugeführt werden und der das vierte Adressenwort abgibt, wobei R den Wertevorrat des vierten Adressenwortes angibt.
Der Adressenumsetzer gemäß der Erfindung hat die Vorteile, daß er einen geringen Aufwand erfordert und daß die Programmierung der Vorgänge stark vereinfacht wird und damit die Zeitdauer für die Bearbeitung der Vorgänge verkürzt wird. Mit Hilfe des Adressenumsetzers ist es möglich, mehrere gleichartige Vorgänge durch ein und dasselbe Programm zu bearbeiten. Eine Verständigung der einzelnen Vorgänge erfolgt über verschiedene Speicherbereiche, die unter jeweils gleichen relativen Adressen adressierbar sind. Die Vereinfachung der Programmierung wirkt sich insbesondere dann aus, wenn mehrere Vorgänge simultan in einem Zeitmultiplexverfahren bearbeitet werden.
Falls die zyklische Vertauschung des ersten Adressenwortes nur dann durchgeführt wird, wenn das erste Adressenwort eine vorgegebene Binär/ahl überschreitet, ist es zweckmäßig, wenn einem ersten Eingang des Modulo-R-Addierers ein Subtrahierer vorgeschaltet ist, der die Differenz zwischen dem ersten Adressenwort und der Binärzahl bildet, wenn dem zweiten Eingang des Modulo- R-Addierers das zweite Adressenwort zugeführt wird und wenn ein zweiter Umschalter vorgesehen ist, der in gleicher Weise wie der erste Umschalter eine erste und zweite Stellung einnimmt und über den bei der ersten Stellung das /weite Adressenwon und bei der zweiten Stellung das Adressenwort am Ausgang des Modulo-fl-Addierers als viertes Adressenwort zum Ausgang durchgeschaltet wird.
Falls durch den Adressenumsetzer weitere Speicherbereiche adressiert werden, die durch den Wertevorrat des ersten Adressenwortes adressierbar sind, ist es vorteilhaft, wenn im Verbindungsweg /wischen dem Hingang, an dem das erste Adressenwon anliegt und dem ersten Umschalter ein dritter Umschalter vorgesehen ist, der eine erste Stellung einnimmt, wenn das zweite Adressenwort nicht kleiner ist als der Maximalwert des vierten Adressenwortes, über den bei dieser Stellung das erste Adressenwon /um ersten Umschalter fortgeschaltet wird und der andernfalls eine /weile Stellung einnimmt, bet der die in einem Modulo· N-Addierer gebildete Summe aus dem ersten Adressenwort und der um 1 erhöhten ßinurzahl /um ersten Umschalter fortgeschaltet wird, wobei /Vden Wertevorrat des dritten Adressenwortes angibt.
Die weiteren Speicherbereiche werden in vorteilhafter Weise weiteren Vorgängen zugeordnet, wenn dem ersten Eingang des Modulo-/V-Addii-rers ein weiterer Addierer vorgeschaltet ist, der das erste Adressenwort modulo Π umformt, wobei ö gleich ist der Differenz aus N und der um 1 erhöhten Binärzahl und wenn dem /weiten Eingang des Modulo-/V-Addierers die um 1 erhöhte Binärzahl zugeführt wird.
Der Adressenumsctzcr erfordert einen sehr kleinen Aufwand, wenn als Umschalter, Addierer, Subtrahieren und Vergleicher binäre Verknüpfungsglieder vorgesehen sind
Im folgenden werden Ausführungsbeispiele des Adressenumsetzers gemäß der Erfindung anhand von Zeichnungen beschrieben. Es zeigt
F i g. 1 ein Blockschaltbild einer mit einem Adressenumsetzer versehenen Speicheranordnung,
F i g. 2 eine schematische Darstellung von Adressen von Speicherbereichen eines Speichers und Zuordnungslisten für einen ersten Adressenumsetzer,
F i g. 3 ein Blockschaltbild des ersten Adressenumsetzers,
F ι g. 4 Zuordnungslisten für einen zweiten Adressenumsetzer,
Fig.5 ein Blockschaltbild des zweiten Adressenumsetzers,
F i g. 6 ein Schaltbild des zweiten Adressenumsetzers, Fig.7 eine weitere schematische Darstellung von
Adressen von Speicherbereichen eines Speichers und eine Zuordnungsliste für einen dritten Adressenumsetzer,
F i g. 8 ein Blockschaltbild des dritten Adressenumsetzers,
F i g. 9 ein Schaltbild des dritten Adressenumsetzers.
Das in F i g. 1 dargestellte Blockschaltbild zeigt einen Speicher SP einer Datenverarbeitungsanlage, einen Adressenumsetzer AU und zwei Register R 1 und R 2. Der Speicher SP besteht aus einer Mehrzahl von Speicherbereichen, die jeweils mehrere Speicherzellen enthalten. Ein erster Teil der Speicherzellen ist mehreren von der Datenverarbeitungsanlage zu bearbeitenden Vorgängen individuell zugeordnet. Ein zweiter Teil der Speicherzellen ist diesen Vorgängen gemeinsam zugeordnet. Über diese gemeinsamen Speicherzellen kann beispielsweise eine Koordinierung der einzelnen Vorgänge erfolgen.
Der Ablauf der von der Datenverarbeitungsanlage /u bearbeitenden Vorgänge wird durch aus Maschinenbefehlen bestehende Programme gesteuert. Falls beispielsweise mehrere gleichartige Vorgänge durch die Datenverarbeitungsanlage simultan bearbeitet werden, ist es zweckmäßig, diese Vorgänge durch ein und dasselbe Programm zu bearbeiten. Jedem dieser Vorgänge werden bestimmte Speicherzellen individuell zugeordnet. Falls außerdem die Vorgänge, beispielsweise in bezug auf belegte Ein-Ausgabekanäle voneinander abhängig sind, werden bestimmte Speicherzellen diesen Vorgängen gemeinsam zugeordnet. Über diese gemeinsamen Speicherzellen erfolgt dann eine Koordinierung
so der Vorgänge.
Die Adressen der Speicherzellen werden als erste Adressen in das erste und zweite Register R 1 und R 2 eingespeichert. Diese ersten Adressen enthalten jeweils ein erstes und ein zweites Adressenwort A 1 bzw. A 2 die Binärzahlen darstellen. Das Adressenwort A 1 ist beispielsweise ein Bestandteil des Adressenteils des Maschinenbefehls und gibt eine relative Adresse an. Ei wird im Register R 1 gespeichert. Das Adressenwon A 2 gibt an, für welchen Vorgang das Adressenwort A 1
<>o als relative Adresse dient und es wird im Register R ί gespeichert. Durch das Adressenwort A 2 können aucl eine von mehreren Programmebenen oder Bedingun gen angegeben werden.
Weiterhin enthält die erste Adresse ein Adressenwor
('s Λ 0, das die Adresse der jeweils adressierten Speicher /eile innerhalb der Speicherbereiche ebenfalls al Binar/.ahl angibt. Da jedoch in den meisten Fällen nich einzelne Speicherzellen, sondern ganze Speicherberei
ehe geändert werden, wird im folgenden dieses Adressenwort A 0 nicht berücksichtigt. Es wird in diesen Fällen unter Umgehung des Adressenumsetzers AU unmittelbar dem Speicher SPzugeführt.
Die Adressenwörter A 1 und A 2 werden als erste Adresse dem Adressenumsetzer AU zugeführt. Der Adressenumsetzer erzeugt aus dieser ersten Adresse eine zweite Adresse, die als absolute Adresse des adressierten Speicherbereichs dem Speicher SP zugeführt wird. Die zweite Adresse besteht aus einem dritten und einem vierten Adressenwort A 3 bzw, A 4. die ebenfalls Binärzahlen darstellen. Falls ein matrixförmiger Speicher SP verwendet wird, ist es zweckmäßig, die Adressenwörter A 3 und A 4 den Spalten bzw. Zeilen der Matrix zuzuordnen. Beispielsweise gibt das Adressenwort A 3 die Zeile und das Adressenwort A 4 die Spalte des Speichers SPan.
Der Adressenumsetzer AU enthält einen Zuordner Z. einen Vergleicher VG 1 und einen Umschalter 51. Der Vergleicher VG 1 vergleicht das Adressenwort A 1 mit einer vorgegebenen Binärzahl M, die das Adressenwort A 3 für diejenigen Speicherbereiche angibt, die mehreren Vorgängen gemeinsam zugeordnet sind. In Abhängigkeit vom Ergebnis des Vergleichs wird der Umschalter 51 in die durchgezogen oder gestrichelt dargestellte Lage gebracht.
Solange das Adressenwort A 1 kleiner ist als die Binärzahl M, gibt der Vergleicher VG 1 ein Binärsignal mit dem Binärwert 1 ab und der Umschalter 51 befindet sich in der durchgezogen dargestellten Stellung. In diesem Fall werden diejenigen Speicherbereiche adressiert, die den Vorgängen individuell zugeordnet sind. Als Adressenwort A 3 wird das Adressenwort A 1 und als Adressenwort A 4 wird ein im Zuordner Z in Abhängigkeit von den Adressenwörtern A 1 und A 2 erzeugtes Adressenwort abgegeben.
Wenn das Adressenwort A I gleich oder größer ist als die Binärzahl M. nimmt das Binärsignal den Binärwert 0 an und der Umschalter 51 wird in die gestrichelt dargestellte Stellung gebracht und als Adressenwort A 3 wird die Binärzahl M abgegeben. Damit werden diejenigen Speicherbereiche adressiert, die mehreren Vorgängen gemeinsam zugeordnet sind. Das Adressenwort A 4 wird auch in diesem Fall aus den Adressenwörtern A 1 und A 2 im Zuordner Zerzeugt.
Der in Fig.2a schematisch dargestellte matrixförmige Speicher SP hat N Zeilen 0 bis Λ/-1, von denen zunächst nur M+1 Zeilen 0 bis M betrachtet werden und R Spalten 0 bis R- 1. Das Adressenwort A 3 gibt die Zeile und das Adressenwort A4 gibt die Spalte des Speichers SP an. Die absoluten Adressen der Speicherbereiche werden durch zwei Zeichen festgelegt wobei das erste die Spalte and das zweite die Zeile bezeichnet Die Speicherbereiche 0,0 bis R- IM in den Zeilen 0 bis M-I und in jeweils einer Spalte sind jeweils einem Vorgang individuell zugeordnet Die Speicherbereiche ϋΜ bis R- XM in der Zeile M sind allen durch das Adressenwort A 2 angegebenen Vorgängen gemeinsam zugeordnet
Bei der in F i g. 2b dargestellten Zoordnungsliste für einen ersten Adressenamsetzer AUl ist die Zuordnung zwischen den ersten and den zweiten Adressen dargestellt Die Adressenwörter/4 3 and/4 4 stimmen in den Zeilen 0 bis M raft den Adresseowörtem A 1 und A 2 Oberem. Die Anzahl der durch das Adressenwon ΛI angebbaren Adressen ist jedoch größer als Λί da bei der Bearbeitung jedes Vorgangs auch noch diejenigen Speicher adressiert werden müssen, die alten Vorgängen gemeinsam zugeordnet sind. In den Zeilen M+1 bis N- 1 sind daher die Speicherbereiche angegeben, die den durch die Adressenwörter A 2 angegebenen Vorgängen gemeinsam zugeordnet sind. Die in den Zeilen M+ 1 bis N-1 angegebenen Adressen sind dabei zyklisch vertauscht.
Falls beispielsweise durch das Adressenwort A 1 die (N- l)te Zeile aufgerufen wird, werden in Abhängigkeit von dem durch das Adressenwort A 2 angegebenen
ίο Vorgang die Speicherbereiche R—\M bis R-2M adressiert. Mit Hilfe der gleichen im Adreßteil eines Maschinenbefehls enthaltenen Adressenwörter A 1 werden somit bei den einzelnen Vorgängen unterschiedliche Speicherbereiche adressiert.
Der in Fig.2c dargestellte Speicher SP besteht beispielsweise aus acht Speicherbereichen, die in /?«=2 Spalten und N= 4 Zeilen angeordnet sind. Von diesen Speicherbereichen werden zunächst nur die in den Zeilen 0 bis 2 enthaltenen Speicherbereiche betrachtet.
Die Speicherbereiche in den Zeilen 0 und 1 sind jeweils einem Vorgang individuell zugeordnet und die Speicherbereiche in der Zeile M= 2 sind beiden Vorgängen gemeinsam zugeordnet Die F i g. 2d zeigt eine entsprechende Zuordnungsliste für diesen Speicher. Unter dem gleichen Adressen wort A 1 werden in Abhängigkeit von dem jeweils zu bearbeitenden Vorgang entweder die den Vorgängen individuell zugeordneten Speicherbereiche 0,0 bis 1,1 oder die den Vorgängen gemeinsam zugeordneten
Speicherbereiche 0.2 oder 1.2 aufgehoben. Beispielsweise werden unter dem Adressenwort /41=3 entweder die Speicherbereiche mit den Adressen 1, 2 oder 0.2 angesprochen.
Das in F i g. 3 dargestellte Blockschaltbild eines ersten Adressenumsetzers AUi zeigt den Vergleicher VGI. den Umschalter 51 und einen ersten Zuordner Zl. Dem Vergleicher VG1 werden ebenfalls das Adressenwort A 1 und die Binärzahl M. beispielsweise als Dualzahlen zugeführt. Die Binärzahl M gibt die Zeile des Speichers
SPan, die mehreren Vorgängen gemeinsam zugeordnet ist. Am Ausgang des Vergleichers VGi wird ein Binärsignal abgegeben, das beispielsweise den Binärwert 1 annimmt wenn das Adressenwort A 1 kleiner ist als M und den Binärwert 0 annimmt wenn das Adressenwort A i gleich oder größer als M ist. Mit diesem Signal wird der Umschalter 51 gesteuert, der beispielsweise aus binären Verknüpfungsgliedern besteht.
Der Zuordner Zl enthält einen Umschalter 52, der ebenfalls von dem Vergleicher VGl gesteuert wird,
einen Subtrahierer SLW und einen Modulo-Ä-Addierer
ADt. wobei R den Wertevorrat des Adressenwortes A
3 angibt
Solange das Adressenwort A 1 kleiner ist als die Binärzahl H befinden sich die Umschalter S t and 5 2 in der durchgezogen dargestellten SteBtmg. Als Adressen-Wörter /4 3 und A4 werden damit die Adressenwörter A 1 bzw. A 2 zma Aasgang des Adressenumseizers AUl dhhlh
A !gleich oder größer als Mist, werden die Umschalter SI und S2 in dk gestrichelt dargestellten SteSongen gebracht Als Adressenwort A3 wad dasei die Binarzahl M abgegeben. »St WBe des SabtraMerers SC® und des Addierers AOI wild ein Adressenwort
^5 /4 4 erzeugt das einen der Spekberbereiefae aas der ZeHe Mdes Speichers SPanswäfalt
Der Subtrahierer St/ß bildet die Differenz zwischen dem Adressenwort AI «id der Bmärzahl M Diese
Differenz wird mit Hilfe des Addierers AD 1 zum Adressenwort A 2 addiert. Die Summe wird über den Umschalter S 2 als Adressenwort A 4 abgegeben. Durch den Subtrahierer SUB und den Addierer AD 1 wird das Adressenwort Λ 4 in Abhängigkeit von den Adressenwörtern A 1 und A 2 zyklisch verlauscht.
Falls ein Subtrahicrer SUB zur Verfugung steht, der ein Signal abgibt, wenn ein Übertrag auftritt, so kann dieses Signal als Steuersignal für die Umschalter S 1 und 52 verwendet werden. Der Verglcicher VCI ist in diesem Fall nicht erforderlich.
Beispielsweise werden bei dem in F i g. 2c dargestellten Speicher SP die Umschalter 51 und 52 beim Anliegen eines Adressenwortes A 1 = 3 in die gestrichelt dargestellte Stellung gebracht. Der Subtrahierer SUB gibt den Wert 3-2 = 1 ab und am Ausgang des Addierers AD\ wird als Adressenwort A4 in Abhängigkeit davon, ob das Adressenwort A 2 den Wert 0 oder 1 annimmt, der Wert 1 oder 0 abgegeben.
Bei der in F ι g 4a dargestellten Zuordnungsliste werden auch in den Speicherbereichen, die den ein/einen Vorgängen individuell zugeordnet sind, die Adressenwörter A 4 zyklisch vertauscht. Auf diese Weise wird die Schaltung des Adressenumsetzers wesentlich vereinfacht.
In F i g. 4b ist eine Zuordnungsliste für den in F ι g. 2c dargestellten Speicher angegeben, bei der auch die Adressenwörtcr A 4 in den Zeilen 0 und 1 zyklisch vertauscht werden.
Der in F i g. 5 dargestellte zweite Adressenumsetzer Al12 für eine Zuordnung der Adressen entsprechend den in F ig. 4 dargestellten Zuordnungstabellen unterscheidet sich von dem in F ι g. 3 dargestellten ersten Adressenumsetzer ACI dadurch, daß wegen der zyklischen Vertauschung der Adressenwörter A 4 der Subtrahierer SUB und der Umschalter 52 nicht erforderlich sind.
Das in Fig. 6 dargestellte Schaltbild des zweiten Adressenumsetzers Al'2 für eine Zuordnung der Adressen entsprechend der in F i g 4b dargestellten Zuordnungsliste. besteht aus einem UND-Glied U\, einem Inverter NI und einem Antivalcnzglied EX. Die Adressenwörter A 1 und A 2 werden als Dualzahlen zugeführt. Das Adressenwon A 1 wird durch Signale A 11 und A 10 und das Adressenwort A 3 wird durch Signale A 31 und A 30 dargestellt. Die Signale A 11 bzw. A 10 und A 31 bzw. A 30 geben die höher bzw. mederwertigen Stellen der Dualzahlen an.
In dem Schaltbild entsprechen das Antivalenzglied EX dem Addierer ADI und das UND-Glied U\ dem Umschalter S1. Auf den Vergleicher VC1 wird verzichtet, da das Signal All immer den Binänvert 1 annimmt wenn das Adressenwort A 1 größer oder gleich M= 2 ist Ober den Inverter Ni wird das UND-Glied l/l gesteuert
Die liinärwcrtc der Signale A30 und A3! stimmen mit denen der Signale A 10 und All überein, solange das Adressenwort A 1 nicht größer als 2 ist. In diesem Fall nimmt das Signal A 30 immer den Binärwert 0 an. 1^ Das Adressenwort A 2 wird durch das Signal A 20 dargestellt. Für den Fall, daß das Signal A 20 gleich 0 ist, ist das Signal A 40 immer gleich dem Signal A 10 und für den Fall, daß das Signal A 20 gleich 1 ist, ist es immer gleich dem invertierten Signal A 10.
ίο Der in F i g. 7a schematisch dargestellte matrixförmige Speicher SPbesteht wie der in Fig.2c dargestellte Speicher aus acht Speicherbereichen, die in W = 2 Spalten und N = 4 Zeilen angeordnet sind. Die Speicherbereiche in den Zeilen 0 und 1 sind wieder
is jeweils einem Vorgang individuell zugeordnet und die Speicherbereiche in Zeile 2 sind mehreren Vorgängen gemeinsam zugeordnet. Die Speicherbereiche in Zeile 3 sind wieder einem oder auch mehreren Vorgängen individuell zugeordnet. Durch eine derartige Einteilung des Speichers SP wird erreicht, daß bei einer Darstellung des Adressenwortes A 3 durch Dualzahlen der mit z.wei Binärzeichen adressierbare Bereich des Speichers SP voll ausgenützt wird. Als Adressenwort A 2 müssen in diesem Fall ebenfalls zwei Binärzeichen
2s zur Verfügung gestellt werden, um weitere Vorgänge angeben zu können, die die in der Zeile 3 des Speichers 5Pangeordneten Speicherbereiche adressieren können.
Bei der in F i g. 7b dargestellten Zuordnungsliste eines
dritten Adressenumsetzers, der sich durch die Erweite-
w rung um die Spalten 2 und 3 von dem in Fig.4b dargestellten unterscheidet, werden die Speicherbereiche in den Spalten 2 und 3 einem Dritten und einem vierten Vorgang zugeordnet. Bei der Bearbeitung dieser Vorgänge können ebenfalls die gemeinsamen Speicher-
\5 bereiche 0.2 und 1,2 adressiert werden. Auf diese Weise können auch diese Vorgänge mit den ersten beiden Vorgängen koordiniert werden.
Die Zuordnung der Speicherbereiche in der Zeile 1 und in den Spalten 2 und 3 der Zuordnungsliste kann auf zweierlei Weise erfolgen, wie in F i g. 7b dargestellt ist. Entweder werden die Speicherbereiche 1.3 bzw. 0,3 adressiert oder auch die Speicherbereiche 1.0 und 0,0 des ersten und zweiten Vorgangs. In diesem zweiten \ all sind nur die Speicherbereiche 1.1/0.1/0,3 und 1.3 den jeweiligen Vorgängen individuell zugeordnet und bei jedem Vorgang können zwei Speicherbereiche von anderen Vorgängen adressiert werden. Für den allgemeinen Fall gilt als Zuordnung zwischen Adresse und adressiertem Speicherbereich, daß unabhängig von den Werten von A 1 und A 2 das Adressenwort A 4 gleich ist der Summe aus den Adressenwörtern A 1 und A 2 modulo R. In Abhängigkeit von der Größe von A 1 und A 2 ergeben sich für das Adressenwort A 3 die Werte aus folgender Tabelle:
i <M <R A2 mod[N-(A<i+
N
D!
StM Ai
A M entweder (M+ J)+(A 1)
oder [(M+1) +Al] mod
M
In dem Bereich der Tabelle, in dem das Adressenwort A 1 kleiner ah M und das Adressenwort A 2 größer oder gleich R ist sind in der oberen bzw. unteren Zeile die Zuordmingsvorschriften for den ersten bzw. zweiten Fall angegebea
7095*1/28?
Der in F i g. 8 dargestellte diine Adressenumselzer AlJi enthält wie die Adresseruimsctzer ALI I und At'2 den Umschalter .S1I, den Vergleicher VG I und den Addierer ADi. Weiterhin enthält er einen Umschalter 53, der durch einen /weiten Vergleichcr VG 2 gesteuert s wird. Der Umschalter 5 3 bleibt in der durchgezogen dargestellten Stellung, solange das Adressenwort A 2 kleiner als R ist. Andernfalls wird er in die gestrichelt dargestellte Stellung gebracht. Als Adressenwort A 3 wird damit nicht mehr das Adressenwort A I durchge- ι« schaltet, sondern eine wahlweise mit Hilfe eines zweiten Addierers AD2 und gegebenenfalls eines dritten Addierers AD 3 erzeugtes Adressenwort.
Für den in der Tabelle angegebenen ersten Fall wird das Adressenwort A 1 modulo-B umgeformt, wobei B ι«, gleich N-(M+ 1) ist. Die Umformung erfolgt mit Hilfe des Addierers A D 3, an dessen ersten Eingang das Adressenwort A 1 und an dessen zweiten Eingang der Wert 0 anliegt. Anschließend wird mit Hilfe des Modulo-N-Addierers ADl der Wert M + 1 hinzuaddiert. Das so gewonnene Adressenwort wird über die Umschalter 53 und 51 durchgeschallt und als Adressenwort A 3 abgegeben.
Für den in der Tabelle dargestellten zweiten Fall ist der Addierer ADi nicht erforderlich und das Adressenwort A 3 wird durch Addition des Adressenwortes A 1 und der Binärzahl M+ 1 in dem Modulo-ZV-Addiercr AD 2 erzeugt.
Falls das Adressenwort A X größer als M ist, wird der Umschalter 51 wie bei den Adressenumsetzern AUX und ALU in die gestrichelt dargestellte Stellung gebracht und als Adressenwort A 3 wird die Binärzahl M durchgeschaltet.
Das in F 1 g. 9 dargestellte Schaltbild des Adressenumsetzers Ai/3 für eine Zuordnung der Adressen entsprechend der in F i μ. 7 dargestellten Zuordnungsliste für den ersten Fall enthalt ebenso wie der in F i g. 6 dargestellte Adressenumsetzer einen Inverter NX ein UND-Glied UX und ein Anlivalcnzglicd EX. Ein Signal A 21, das die höhcrwertigc Stelle des Adressenwortes A 2 angibt, wird über ein ODER-Glied DI zum Ausgang durchgeschaltet und dort als Signal Λ 31 abgegeben, das die höherwertige Stelle des Adressenwortes A 3 angibt. Außerdem wird das Signal A 21 über einen ersten Eingang eines weiteren ODER-Gliedes DT. dem UND-Glied LJX zugeführt. Dem zweiten Eingang des ODER-Glieds Dl wird das Signal A 10 zugeführt. Das ODER-Glied DX und das UND-Glied UX entsprechen den Umschaltern 51 und Λ 3 und teilweise dem Vergleicher VG 2. Das ODER-Glied D 2 entspricht den Addierern ADl und ADi und ebenfalls teilweise dem Vergleicher VG 2.
Hier/11 4 Hkiit /eichnunuen

Claims (5)

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 und vierte Adreßwörter enthalten, wobei die Adreßwörter Binärzahlen darstellen und wobei ein Vergleicher vorgesehen ist, dem das erste Adressenwort und eine die gemeinsamen Speicherbereiche angebende Binärzahi zugeführt werden, dadurch gekennzeichnet, daß der Vergleicher (VG I) ein Binärsignal abgibt, das einen ersten bzw. zweiten Binärwert (»1« bzw. »0«) annimmt, wenn das erste Adressenwort (A 1) kleiner bzw. nicht kleiner ist als die Binärzahl (M), daß ein Umschalter (Si) eine erste bzw. zweite Stellung einnimmt, wenn das Binärsignal den ersten bzw. zweiten Binärwert (»1« bzw. »0«) annimmt und daß der Umschalter (VG 1) in der ersten bzw. /weiten Stellung das erste Adressenwort (A 1) bzw. die Binärzahl (A^aIs drittes Adressenwori (A 3) durchschaltet und daß ein Zuordner (Z) einen Modulo-/?-Addierer (ADi) enthält, dem das erste und das zweite Adressenwort (A 1 und A 2) zugeführt werden und der das vierte Adressenwort (A 4) abgibt, wobei R den Wertevorrat des vierten Adressenwortes (A 4) angibt.
2. Adressenumsetzer njch Anspruch 1, dadurch gekennzeichnet, daß einem ersten Eingang des Modulo-/?-Addierers (AD I) ein Subtrahierer (SUB) vorgeschaltet ist, der die Differenz zwischen dem ersten Adressenwort (A I) und der Binärzahl (M) bildet, daß dem zweiten Eingang des Modulo-/?-Addierers (AD\) das zweite Adressenwort (A 2) zugeführt wird und daß ein zweiter Umschalter (S2) vorgesehen ist, der in gleicher Weise wie der erste Umschalter (Si) eine erste und zweite Stellung einnimmt und über den bei der eisten Stellung das zweite Adressenwort (A 2) und bei der zweiten Stellung das Adressenwort am Ausgang des Modulo-/?-Addierers (ADi) als viertes Adressenwort (A 4) zum Ausgang durchgeschaltet wird.
3. Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß im Verbindungsweg zwischen dem Eingang, an dem das erste Adressenwort (A I) anliegt und dem ersten Umschalter (.SI) ein dritter Umschalter (Sl) vorgesehen ist, der eine erste Stellung einnimmt. v,enn das zweite Adressenwori (A 2) kleiner ist als der Maximalwert des vierten Adressenwortes (A 4), über den bei dieser Stellung das erste Adressenvvort (A 1) /um ersten Umschalter (Si) fortgeschaltet < >o wird und der andernfalls eine /weite Stellung einnimmt, bei der die in einem Moclulo/V-Addierer (A I) 2) gebildcu· Summe aus dem ersten Adressenwon (A I) und der um I erhöhten Binärzahl (M)zum ersten Umschalter (.V 1) fortgeschaltet wird, wobei N < >s den Werievorrai des drillen Adressenwortes (A 3) iingibt.
4. A<iiesseniimset/er nach Anspruch 3, dadurch
gekennzeichnet, daß dem ersten Eingang des Modulo-N-Addierers (AD 2) ein weiterer Addierer (AD 3) vorgeschaltet ist, der das erste Adressen wort (A i) modulo B umformt, wobei B gleich ist der Differenz aus N und der um 1 erhöhten Binärzahl (M) und daß dem zweiten Eingang des Modulo-N-Addierers (AD2) die um 1 erhöhte Binärzahl (M) zugeführt wird.
5 Adressenumsetzer nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß als Umschalter (Sl bis 53), Addierer (ADi bis AD3), Subtrahierer (SUB) und Vergleicher (VG 1, VG 2) binäre Verknüpfungsglieder vorgesehen sind.
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 true 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
NL7601194A (nl) 1976-08-30
CH613540A5 (de) 1979-09-28
FR2302561B1 (de) 1981-09-25
DE2508373A1 (de) 1976-09-09
BE838971A (fr) 1976-08-26
JPS51109745A (de) 1976-09-28
DK67276A (da) 1976-08-27
FR2302561A1 (fr) 1976-09-24
SE7601520L (sv) 1976-08-27

Similar Documents

Publication Publication Date Title
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE1966633C3 (de) Datenverarbeitungsanlage mit überlappter Arbeitsweise bei Verwendung eines Haupt- und Pufferspeichers
DE2322674C3 (de) Mikroprogramm-Steuereinrichtung
AT398506B (de) Signalverarbeitungsschaltung
DE3036711C2 (de) Verfahren zum Verkleinern von grafischen Mustern
DE2542010C2 (de) Datenverarbeitende Anlage
DE2055784A1 (de) Datenverarbeitungssystem
DE2261694A1 (de) Speichersystem
DE10151091B4 (de) Scheduling-System und Scheduling-Verfahren dafür
DE2714346A1 (de) Vorrichtung zur darstellung von zeichen auf einem sichtgeraet
DE3043100C2 (de)
DE2556617C2 (de) Schiebe- und Rotierschaltung
DE3811145C2 (de)
DE2654010A1 (de) Fernsehanordnung
EP0230076A2 (de) Verfahren und Anschaltungsanordnung zur Auflösungsumwandlung von binären Pseudo-Halbtonbildern
DE2508373B2 (de) Adressenumsetzer
DE2508373C3 (de) Adressenumsetzer
EP0414950B1 (de) Verfahren zur Vermittlung von jeweils auf mehrere Zeitfächer von Zeitkanälen verteilt übertragenen Sprach- und/oder Daten-informationen
DE3435816A1 (de) Vorrichtung zur numerischen signalverarbeitung
DE3516077A1 (de) Digitales system mit serien-parallel-serien-betrieb
DE2907835C2 (de) Adressen-Multiplexer für einen Arbeitsspeicher
DE2710602C3 (de) Schaltung zur Minderung der Anzahl Bits in einer Adresse zur Festlegung eines alphanumerischen Zeichens auf dem Schirm einer Kathodenstrahlröhre
DE2204680A1 (de) Mikroprogramm-steuereinrichtung
DE2417840C3 (de)
DE102008004978A1 (de) Verfahren zum Speichern und Auslesen einer Folge von Datenwerten

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