DE2002369C3 - Datenverarbeitungsanlage mit Pufferspeicher - Google Patents
Datenverarbeitungsanlage mit PufferspeicherInfo
- Publication number
- DE2002369C3 DE2002369C3 DE19702002369 DE2002369A DE2002369C3 DE 2002369 C3 DE2002369 C3 DE 2002369C3 DE 19702002369 DE19702002369 DE 19702002369 DE 2002369 A DE2002369 A DE 2002369A DE 2002369 C3 DE2002369 C3 DE 2002369C3
- Authority
- DE
- Germany
- Prior art keywords
- memory
- address
- word
- data
- buffer memory
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
- 230000015654 memory Effects 0.000 title claims description 266
- UIIMBOGNXHQVGW-UHFFFAOYSA-M buffer Substances [Na+].OC([O-])=O UIIMBOGNXHQVGW-UHFFFAOYSA-M 0.000 title claims description 101
- 230000000875 corresponding Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000004807 localization Effects 0.000 claims description 3
- 230000004913 activation Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 2
- 238000000034 method Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 102100016245 SPRTN Human genes 0.000 description 1
- 101700047625 SPRTN Proteins 0.000 description 1
- 230000003213 activating Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000003247 decreasing Effects 0.000 description 1
- 230000001066 destructive Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 231100000241 scar Toxicity 0.000 description 1
Description
Die vorliegende Erfindung betrifft eine Datenverarbeitungsanlage mit mindestens einer Verarbeitungseinheit, ferner mit einem Pufferspeicher, welcher
mehrere Speicherplätze enthält, in denen jeweils Information für die Verwendung in der Verarbeitungseinheit
und ein Kennungsabschnitt gespeichert sind, weiterhin mit einem aus zwei Teilen bestehenden
Adressengenerator zum Erzeugen zweier Adressen, von denen die erste einen Lokalisierungsabschnitt
zur Identifizierung eines Pufferspeicherplatzes und die zweite einen Suchabschnitt enthält, ferner mit
einem durch die vom Adressengenerator aus dem Lokalisierungsabschnitt erzeugte Adresse gesteuerten
und zum Abfragen von Information dienenden ersten Wähler, der aus dem adressierten Speicherplatz sowohl
die Information als auch den dort gespeicherten Kennungsabschnitt herausliest, mit mindestens einem
Satz von Verknüpfungsgliedern zur Übertragung von Information zwischen einem Speicherplatz und der
Verarbeitungseinheit und schließlich mit mindestens einem Vergleicher, dem der aus dem Speicherplatz
herausgelesene Kennungsabschnitt und der vom Adiessengenerator bereitgestellte Suchabschnitt zugeführt
sind und der bei Übereinstimmung ein Gleichheitssignal an den Satz von Torschaltungen liefert.
Datenverarbeitungseinheiten können bekanntlich schneller arbeiten als der gewöhnlich dazugehörige
große Randomspeicher (Speicher mit beliebigem Zugriff) oder anderweitige Speicher. Jedoch ist der
Zeitsteiierzyklus einer solchen Datenverarbeitungseinheit von der Speicherzykluszeit abhängig und
durch diese festgelegt. Datenverarbeitungsanlagen mit sogenanntem Zeitteilungsbetrieb sowie Datenverarbeitungsanlagen
mit Multiprozessierung stellen ferner bekanntlich größere Anforderungen an das Speicherwerk als Datenverarbeitungsanlagen vom
Standardtyp, bei denen z. B. eine Verarbeitungseinheit für die Durchführung jeweils eines Programms
auf der Grundlage eines Programms von Befehlen und Dalen, die von einem einzigen Hauptspeicher geliefert
werden können, vorgesehen sein kann. Bei einer Datenverarbeitungsanlage mit Zeitteilungsbetrieb führt eine Datenverarbeitungseinheit verschiedene
Programme nach einem Zeitmultiplexschema durch, d. h., jedes Programm benutzt die gesamte
Datenverarbeitungseinheit jeweils für kurze, aufeinanderfolgende Zeilintervalle, gewöhnlich gemessen
in Mikrosekunden, wobei einzelne Programmabschnitte mit Abschnitten der anderen Programme
verschachtelt sind. Multiprozessierung be-
deutet die gleichzeitige Durchführung verschiedener Programme oder die gleichzeitige Durchführung verschiedener
Teile eines Programms durch verschiedene Datenverarbeitungseinheiten (oder Rechenwerke)
innerhalb einer einzigen, speziell fü.: diesen Zweck
konstruierten Datenverarbeitungsanlage.
Bei einem Randomspeicher der obengenannten Art ist ein Speicherzyklus herkömmlicherweise in
zwei Teile, einen Lesezyklus und eineu Schreibzyklus unterteilt. Bei Speichern mit zerstörender Ablesung
bezeichnet man den Schieibzyklus auch als Rückspeicherzyklus. Der Wirkungsgrad von Anlagen der
obengenannten Art kann dadurch verbessert werden, daß man einen schnelleren Speicher oder daß man
mehrere kleine Speicher an Stelle eines großen Speichers verwendet. Die letztgenannte Methode
macht es möglich, daß die Verarbeitungseinheit nur während des Lesezyklus des Speichers wartet. Sobald
die Daten vom Speicher zur Vera^beitungseinheit übertragen sind, kann die Verarbeitungseinheit mit
den neugelieferten Daten arbeiten, während der Speicher den Rückspeicherzyklus vollführt. Sobald
der Zugriff zu einem ersten Speicher vollzogen ist, kann unmittelbar der Zugriff zu einem anderen
Speicher eingeleitet werden, so daß die Verzögerung vermieden wird, die sich ergibt, wenn auf die Beendigung
des Rückspeicherzyklus im ersten Speicher gewartet wird.
Bei der Multiprozessierung kann es geschehen, daß mehrere Verarbeitungseinheiten den Speicher
zugleich zu beanspruchen versuchen. In diesem Fall ergibt sich ein »Ansteheffekt«, derart, daß sämtliche
bis auf eine der verschiedenen Verarbeitungseinheiten auf den Zugang zum Hauptspeicher warten. Die
wartenden Verarbeitungseinheiten können erst dann mit ihren Operationen fortfahren, wenn ihre einzelnen
Speicheransuchen erfüllt sind.
Bei einer Anlage mit Multiprozessierung, mit verschiedenen unabhängigen Verarbeitungseinheiten, die
sich in einen gemeinsamen Hauptspeicher teilen, oder bei einer Anlage mit Multiprogrammierung (bei der
eine Verarbeitungseinheit auf die Durchführung verschiedener Programme programmiert wird) hat die
Verwendung eines kleinen Pufferspeichers für jede Verarbeitungseinheit zum Speichern der Daten, mit
welchen die dazugehörige Verarbeitungseinheit arbeitet, mindestens zwei Vorteile. Einmal ist (im
Falle einer Anlage mit Multiprozessierung oder im Falle einer Anlage mit Zeitteilungsbetrieb) der
Pufferspeicher kleiner und kann daher schneller arbeiten als der große Hauptspeicher. Sodann verringern
sich (im Falle einer Anlage mii Multiprozessierung) bei Verwendung eines Pufferspeichers die
Anforderungen an den Hauptspeicher, indem die Anzahl von Malen sich erniedrigt, die eine Verarbeitungseinheit
darauf warten muß, daß die Speichererfordernisse einer anderen Verarbeitungseinheit erfüllt
sind.
Im Interesse des Wirkungsgrades der Programmierung ist es erforderlich und wünschenswert, daß die
Daten stets durch ihre Adressen im Hauptspeicher adressiert werden, obwohl der größte Teil der Daten
aus einem Pufferspeicher geholt werden. Die Zuordnung der Speicherstellen wird erleichtert, und die
gleichen Daten können von verschiedenen Verarbeitungseinheiten verwendet werden. Der Pufferspeicher,
der weniger Speicherstellen hat als der Hauptspeicher, muß so organisiert sein, daß die Hauptspeicheradresse
dazu Verwender wird, entweder die Daten zu lokalisieren oder zu ermitteln, daß die Daten sich
nicht im Pufferspeicher befinden.
Wenn die adressierten Daten sich nicht im Pufferspeicher befinden, werden die Daten vom Hauptspeicher
abgerufen, so daß sie dann zur Verarbeitungseinheit auf deren Datenansuchen hin übertragen
werden können. Diese Daten können auch im Pufferspeicher gespeichert werden. Durch Übertragung
großer Anzahlen von Wörtern (Blöcken) in der Nachbarschaft der gewünschten Daten vom Hauptspeicher
in den Pufferspeicher wird der Wirkungsgrad einer Pufferanordnung verbessert, weil die
meisten Programme Daten verwenden, die sich in benachbarten Stellen des Hauptspeichers befinden.
Wenn daher ein adressiertes Wort nicht im Pufferspeicher ist, wird durch Übertragung verschiedener,
im Hauptspeicher diesem Wort benachbarter Wörter zusammen mit dem adressierten Wert zum Pufferspeicher
die Wahrscheinlichkeit erhöht, daß später adressierte Wörter sich im Pufferspeicher befinden.
Aus der Veröffentlichung von G. G. Scarrot, »The Efficient Use of Multilevel Storage«, erschienen
in den »Proceedings of the IFIPS Congress 1965« (Spartan Books), S. 137 bis 141, ist bereits eine
Datenverarbeitungsanlage des eingangs genannten Typs bekanntgeworden, bei der die Tatsache ausgenutzt
wird, daß bei vielen Programmen, insbesondere wissenschaftlichen Berechnungen, ein großer Teil
der Rechenzeit in kleineren Programmschleifen verbraucht wird und die Befehle in solchen Schleifen
gewöhnlich aufeinanderfolgende Adressen haben. Die bekannte Datenverarbeitungsanlage enthält z. B.
einen langsamen Speicher mit einer Kapazität von 16 384 Wörtern und einen schnellen Speicher mit
einer Kapazität von 16 Wörtern. Eine Adresse besteht dann für einen Platz des langsamen Speichers
aus 14 Bits und für einen Platz im schnellen Speicher aus 4 Bits. Jedem Wort im schnellen Speicher ist bei
der bekannten Datenverarbeitungsanlage eine 14-Bit-Adresse zugeordnet, von der die 4 Bits der niedrigsten
Stellen fest sind und mit der Adresse im schnellen Speicher übereinstimmen. Die restlichen
10 Bits sind veränderlich und werden von einem füt diesen Zweck vorgesehenen Adressenspeicherplatz
im schnellen Speicher aufgenommen. Benötigt das Rechenwerk für die Durchführung eines Befehls ein
Wort aus dem Speicherwerk, so wird das Wort aus der Adresse des schnellen Speichers herausgelesen,
die durch die vier niedrigsten Bits der vom Rechenwerk geforderten Adresse definiert ist. Die übriger
10 Bits der gewünschten Adresse werden dann mi' den 10 veränderlichen Adressenbits aus dem gelesenen
Platz des schnellen Speichers verglichen, unc bei Übereinstimmung wird das gelesene Wort zui
Durchführung des Befehls verwendet. Wird kein< Übereinstimmung festgestellt, so wird das benötigt«
Wort aus dem langsamen Speicher entnommen unc gleichzeitig mit der richtigen 10-Bit-Adressenver
längerung im schnellen Speicher gespeichert, wöbe dessen früherer Inhalt gelöscht wird. Durch diesi
Maßnahmen wird erreicht, daß die Operationen eine Programmschleife verhältnismäßig rasch durchgeführ
werden können, nachdem das erste Wort noch ver hältnismäßig langsam aus dem langsamen Speiche
entnommen worden ist.
Der vorliegenden Erfindung liegt die Aufgabe zu gründe, eine Datenverarbeitungsanlage dieses Typ
5 6
dahingehend weiterzubilden, daß die mittlere Spei- gemeint, der durch äußere Einrichtungen einzeh
cherzyklus- oder Zugriflszeit weiter herabgesetzt adressierbar ist. Der Inhalt einer Speicherstelle kam
wird. eme Zelle oder eine Gruppe von Zellen sein.
Diese Aufgabe wird durch die im Patentanspruch 1 Es wird zunächst eine Anlage erläutert, bei dei
unter Schutz gestellte Erfindung gelöst. 5 eine Verarbeitiingscinheit mehrere Speichereinheiter
Die Unteransprüche betreffen Weiterbildungen und verwendet. Eine bevorzugte Ausführungsform eine:
Ausgestaltungen der Erfindung. solchen Anlage ist in F i g. 1 gezeigt. Die einzelner
Bei der von Scar rot beschriebenen bekannten Teile oder Einheiten der Anlage sind bekannt unc
Datenverarbeitungsanlage kann im schnellen Puffer- brauchen hier nicht im einzelnen beschrieben zu wer-
speicher jeweils nur ein Wort von jedem der ent- io den. Die mit Schraffierung versehenen Linien steller
sprechenden Plätze des langsamen Hauptspeichers jeweils Sammelleitungen aus mehreren Einzeldrähter
aus dem zugehörigen Hauptspeicherabschnitt ge- oder Verbindungsleitern dar.
speichert werden, der Adressenbits entsprechend den Die Verarbeitungseinheit 10 ist irgendeine elektroniedrigstelligen
Bits hat, die für die Adressierung des nische Spezial- oder Allzweck-Datenverarbeitungs-Pufferspeichers
dienen. Im Gegensatz dazu können 15 einheit oder wissenschaftliche Computereinheit, die
bei der vorliegenden Datenverarbeitungsanlage im gewöhnlich in der Weise arbeitet, daß sie program-Pufferspeicher
Wörter aus π entsprechenden Sek- mierte Befehle sequentiell durchführt. Die für die
toren des Hauptspeichers gespeichert werden, die die Durchführung und Bearbeitung der Befehle erlordergleichen
niedrigstelligen Adressenbits enthalten, ohne liehen Daten sind in Speichereinheiten wie der ersten
daß hierfür zusätzliche Bits in der zur Adressierung ao Speichereinheit 20 und der zweiten Speichereinheit 22
der Pufferspeicherplätze dienenden Bitgruppe be- gespeichert. Während im vorliegenden Fall nur zwei
nötigt werden. Trotzdem mehr Wörter im Puffer- Speichereinheiten gezeigt sind, kann an sich die Anspeicher
zur Verfügung stehen, bleibt die Arbeits- lage mit einer beliebigen Anzahl von Speichereinheigeschwindigkeit
hoch, und außerdem steigt die ten mit gleichartiger Verschaltung in der nachstehend
Wahrscheinlichkeit, daß sich ein gesuchtes Wort im as zu beschreibenden Weise ausgerüstet sein.
Pufferspeicher befindet, erheblich. Die Speichereinheiten 20 und 22 haben je einen
Im folgenden werden Ausführungsbeispiele der Adressendecodierer 16 bzw. 18, der die Adresse der
Erfindung unter Bezugnahme auf die Zeichnung anzusteuernden Speicherzelle empfängt. Der Inhalt
näher erläutert; es zeigt der adressierten Speicherstelle ist in zwei Teilen,
Fig. 1 ein Blockschaltbild einer Ausführungsform 3° einem Datenspeicherteil und einem Adressenwortteil,
der vorliegenden Datenverarbeitungsanlage, bei der gespeichert. Die Adressenregister 12 und 14 erapfaneine
Verarbeitungseinheit mit verschiedenen Spei- gen von der Verarbeitungseinheit 10 die Adresse der
ehern gekoppelt ist, für die jeweilige Operation in der Verarbeitungsein-
F i g. 2 das Blockschaltschema einer Anlage mit heit benötigten Daten. Der Adressenregisterinhalt ist
einer anderen Ausführungsform des erfindungs- 35 in eine λ-Stellen-Untergruppe und eine /i-Stellen-
gemäßen Speicherwerks, wobei eine Verarbeitungs- Untergruppe unterteilt. Die fc-Stellen-Untergruppe ist
einheit eine Pufferspeicherung zur Zwischenspeiche- an die Decodierer 16 und 18 angekoppelt,
rung zwischen ihr und dem Hauptspeicher verwendet, Die Vergleicher 36 und 38 haben jeweils zwei Sätze
F i g. 3 ein Diagramm, das eine hypothetische Ver- von Eingängen und einen Ausgang. Der Ausgang
teilung von Hauptspeicherwörtern im Pufferspeicher 40 wird aktiviert, wenn die entsprechenden Stellen der
der Anlage nach F i g. 2 wiedergibt, ersten und zweiten Eingänge gleich sind. Der erste
F i g. 4 das Blockschaltschema einer Anlage, bei Satz von Eingängen der Vergleicher 36 und 38 ist jeder
als Pufferspeicher ein assoziativer Speicher ver- weils an die A-Stellen-Untergruppe des dazugehörigen
wendet wird, Adressenregisters 12 bzw. 14 angeschlossen, während
F i g. 5 das Blockschaltschema einer Anlage, bei 45 der zweite Satz von Eingängen an den Ausgang des
der ein Pufferspeicher verwendet wird, der in jeder Adressenwortteils der dazugehörigen Speichereinheit
Stelle zwei Datenwörter und zwei Adressenwörter 20 bzw. 22 angeschlossen ist.
enthält, Die Datenausgänge der Speichereinheiten 20 und
F i g. 6 ein Diagramm, das hypothetisch eine mög- 22 sind über die Kabel 24 und 26 jeweils an eine entliche
Anordnung von im Pufferspeicher der Anlage 50 sprechende Gruppe von UND-Gliedern 32 bzw. 34
nach F i g. 5 gespeicherten Hauptspeicherwörtern angeschlossen, die durch das Ausgangssignal des entwiedergibt,
und sprechenden Vergleichers 36 bzw. 38 über dies Lei-
F i g. 7 das Blockschaltschema einer Anlage, bei tungen 40 bzw. 42 aufgetastet werden. Die UND-
welcher gemäß einer weiteren Ausführungsform der Glieder der Gruppen 32 und 34 sind jeweils an den
Erfindung getrennte Speicher zum Speichern der 55 einen Eingang einer Gruppe von ODER-Gliedern 48
Datenwörter und ein getrennter Pufferspeicher zum angeschlossen, deren Ausgänge die Datenrückleitun-
Speichern der Adressenwörter verwendet werden. gen zur Verarbeitungseinheit bilden. Mittels der
In den verschiedenen Figuren sind gleichartige Gruppen von UND-Gliedern 44 und 46 wird ein zu
Teile jeweils mit den gleichen Bezugszeichen ver- speicherndes Wort von der Verarbeitungseinheit
sehen. 60 zur entsprechenden Speichereinheit 20 oder 22 ge-
Der Begriff »Wort« bedeutet im vorliegenden Falle leitet.
irgendeine Gruppe von Ziffern oder alphanumeri- Wenn die Verarbeitungseinheit 10 für die Durchsehen
Zeichen insgesamt. Wörter oder Gruppen von führung des laufenden Befehls Daten benötigt, wird
Wörtern können auch als »Blöcke« bezeichnet wer- die Adresse an die beiden Adressenregister 12 und
den. Eine »Zelle« ist eine adressierbare Stelle in 65 übertragen. Die Jfc-Stellen-Untergruppe jedes Registers
einem Speicher, die ein Wort oder eine Gruppe von wird durch den dazugehörigen Adressendecodierer
Wörtern enthält. Mit »Stelle eines Speichers« oder und 18 der Speichereinheiten 20 bzw. 22 decodiert.
»Speicherstelle« ist eine Untergruppe oder ein Platz Die in der Speichereinheit 20 gespeicherten Daten
stehen über das Kabel 24 an den UND-Gliedern 32 an, während die in der Speichereinheit 22 gespeicherten
Daten an den UND-Gliedern 34 anstehen. Die /i-Stellen-Untergruppe der Adressenregister 12 und
14 wird nach den Vergleichern 36 bzw. 38 übertragen. Das Adressenwort an der adressierten Speichersteile
der Speichereinheiten 20 und 22 wird über die Kabel 28 und 30 nach dem entsprechenden Vergleicher
36 bzw. 38 übertragen.
Wenn das Adressenwort in der adressierten Speicherstelle
der Speichereinheit 20 mit der /i-Stellen-Untergruppe
des Adressenregisters 12 übereinstimmt, werden durch das Ausgangssignal des Vergleichers
36 die UND-Glieder 32 aufgetastet. Entsprechend werden, wenn das Adressenwort in der adressierten
Speicherstelle der Speichereinheit 22 mit der Λ-Stellen-Untergruppe
des Adressenregisters 14 übereinstimmt, durch das Ausgangssignal des Vergleichers
38 die UND-Glieder 34 über die Leitung 42 aufgetastet. Durch das Ausgangssignal der UND-Glieder
32 oder 34 der Speichereinheit 20 bzw. 22, in welcher die angeforderten Daten gespeichert waren, werden
die ODER-Glieder 48 aktiviert, so daß die angeforderten Daten über sie zur Bearbeitungseinheit 10
übertragen werden.
Zum Einspeichern von Daten in die Speichereinheit 20 oder 22 wird der gleiche Adressierungsvorgang
durchgeführt. Durch das Ausgangssignal des Vergleichers 36 oder 38, je nachdem welche Speichereinheit
das richtige Adressenwort enthält, werden die UND-Glieder 44 oder 46 aufgetastet, so daß die
Daten in die entsprechende Speichereinheit 20 oder 22 eingespeichert werden. Über eine Steuerleitung,
eine der Ausgangsleitungen der Verarbeitungseinheit 10, wird der Speichereinheit angezeigt, daß Daten
gespeichert werden sollen.
Es ist auch möglich, Adressenwörter zwischen den Speichereinheiten auszutauschen. Die von der Verarbeitungseinheit
zum Adressenregister 12 oder 14 übertragene Adresse enthält als ^-Stellen-Untergruppe
die Adresse, an welcher das neue Adressenwort gespeichert werden soll. Die /i-Stellen-Untergruppe des
Adressenregisters enthält das zu speichernde neue Adressenwort. Die anfängliche Aufteilung der
Adressenwörter zwischen den Speichereinheiten sowie die nachträgliche Veränderung dieser Aufteilung
erfolgt durch Speichern der Adressenwörter jeder Speichereinheit nach irgendeinem beliebigen Schema.
Die Zuordnung der Adressenwörter kann auf Willkürlichkeit, bekannten Gebrauchsschemen, einem zyklischen
Schema oder irgendeiner anderen Voraussetzung beruhen, so daß ein großer Flexibilitätsgrad
möglich ist.
Vorstehend wurde gezeigt, wie durch die Unterteilung der Adresse die Verwendung mehrerer kleiner
Speicher eine größere Leistungsfähigkeit der Anlage ergibt als die Verwendung eines großen Speichers.
Die Speicher werden adressiert, als wenn sie einen großen Speicher bildeten, so daß die Programmierungsschwierigkeiten
entfallen, die sich ergeben, wenn die Adresse einer speziellen Speichereinheit zugeleitet
und dann diese Einheit adressiert werden muß. Durch die erfindungsgemäßen Maßnahmen wird
erreicht, daß das Speicherwerk die Flexibilität eines großen Speichers und zugleich die hohe Arbeitsgeschwindigkeit
eines kleinen Speichers hat. Ferner werden durch die Modularisierung des Speicherwerks
die bei großen Speichern auftretenden Warrungsprobleme verringert, da einzelne Speichereinheiten
ausgebaut und repariert werden können, während der übrige Teil des Speicherwerks arbeitsfähig bleibt.
Das sechsstellige Adressenregister in Fig. 1 kann 2°, also 64 Speicherstellen adressieren. Jede Speichereinheit
hat im vorliegenden Fall acht Speicherstellen, so daß ein vollständiges Speicherwerk für die Verarbeitungseinheit
gemäß Fi g. 1 acht statt zwei Speichereinheiten enthalten würde. In der Praxis ist in
ίο der Regel η größer als 6 und kann auf η — 1 verschiedene
Weisen aufgeteilt werden. Jede Speichereinheit enthält 2* Speicherstellen, und 2h Speichereinheiten
werden für die Besetzung von 2" Speicherstellen benötigt. Die Teilung der Speicheradresse ermöglicht
schnellere Verarbeitungszyklen als bei bekannten Anlagen.
Bei Verwendung eines Speichers umfaßt jeder Speicherzyklus die für einen Lesezyklus und einen
Schreibzyklus erforderliche Zeit. Erfindungsgemäß
ao umfaßt dagegen jeder Speicherzyklus nur die für den
Lesezyklus erforderliche Zeit, außer wenn der gleiche Speicher zweimal nacheinander angegangen wird.
Allgemein kann, wenn die Speicherstellen willkürlich auf 2* Speichereinheiten verteilt sind, die Speicher-Zykluszeit
durch die Gleichung
<m = tr + tjlk,
worin
'm — gesamte Speicherzykluszeit,
'm — gesamte Speicherzykluszeit,
tr = Lesezykluszeit des Speichers und
tw = Schreibzykluszeit des Speichers,
in guter Annäherung approximiert werden. Wenn A: = 3, so würde die Zeit tm durch tm = tr + tJ8
approximiert werden. Die obige Gleichung beruht auf einer annähernd normalen Verteilung der Speicheradressen,
so daß jeder Speicher zweimal nacheinander in einem Achtel der Zeit angegangen wird. Der
andere Vorteil der Ausführungsform nach F i g. 1 ergibt sich aus der Tatsache, daß ein kleiner Speicher
eine kürzere Zykluszeit hat als ein großer Speicher. Nachstehend werden Ausführungsformen der Er-
♦5 findung beschrieben, die auf Anlagen anwendbar
sind, bei denen mehrere Verarbeitungseinheiten mil einem oder mehreren gemeinsamen Hauptspeichern
gekoppelt sind. Die in F i g. 2 gezeigte Anlage enthält zwei Speicher: einen Hauptspeicher 52 und einer
Pufferspeicher 20. In diesem beispielsweisen Fall ist der Hauptspeicher 52 ein Speicher für 64 Wörter unc
enthält der Pufferspeicher 20 acht adressierbare Wörter. In der Praxis würden sich in den Hauptspeichei
52 mehrere Verarbeitungseinrichtungen mit je einen zugehörigen Pufferspeicher 20 teilen.
Eine Verarbeitungseinheit (nicht gezeigt) liefer eine Adresse an das Adressenregister 12, das in eini
Λ-Stellen-Untergruppe und eine fc-Stellen-Unter
gruppe unterteilt ist. Wie bei der oben beschriebene!
Anlage ist jede Speicherstelle des Pufferspeichers 21
in einen Datenteil und einen Adressenwortteil aufge teilt. Der Adressenwortteil ist an den einen Eingan
eines Vergleichers 36 angekoppelt, dessen andere Eingang an die A-Stellen-Untergruppe des Adressen
registers 12 angeschlossen ist. Der Vergleicher 36 ha
zwei Ausgänge, deren einer wirksam wird, wenn da Adressenwort der adressierten Speicherstelle de
Pufferspeichers 20 gleich der ft-Stellen-Untergrupp
609 616/1:
des Adressenregisters 12 ist, und deren anderer wirksam wird, wenn das Adressenwort nicht gleich dieser
Untergruppe ist.
Die Verarbeitungseinheit beliefert das Adressenregister 12 mit einer Adresse. Die £-Stel!en-Untergruppe
wird vom Decodierer 16 decodiert, der das Herausholen des Inhalts der adressierten Speicherstelle
einleitet. Der Datenteil des Inhalts der adressierten Speicherstelle tastet die Gruppe von UND-Gliedern
32 auf. Wenn die /i-Stellen-Untergruppe des Inhalts des Adressenregisters 12 gleich dem Adressenwortteil
der adressierten Speicherstelle des Pufferspeichers 20 ist, werden durch das Gleichheitsausgangssignal
des Vergleichers 36 die UND-Glieder 32 aktiviert, deren Ausgänge an die Gruppe von ODER-Gliedern
48 angekoppelt sind. Die ODER-Glieder 48 übertragen ausgangsseitig die Daten zur Verarbeitungseinheit.
Wenn die /i-Stellen-Untergruppe nicht gleich dem Adressemvortteil der adressierten Speicherstelle des
Pufferspeichers 20 ist, wird durch das Ungleichheitsausgangssignal des Vergleichers 36 die Gruppe von
UND-Gliedern 50 aktiviert, an deren anderen Eingängen sämtliche Bits des Adressenregisters 12 anstehen.
Wenn daher das Adressenwort sich nicht im Pufferspeicher 20 befindet, wird seine Adresse zum
Hauptspeicher 52 übertragen. Durch das Ausgangssignal des Hauptspeichers werden die UND-Glieder
der Gruppe 44 sowie die ODER-Glieder der Gruppe 48 aufgetastet und die Daten über letztere zur Verarbeitungseinheit
übertragen. Die /i-Stellen-Untergruppe
des Adressenregisters tastet die UND-Glieder der Gruppe 54 auf. Die UND-Glieder der Gruppen
44 und 54 werden durch das Ungleichheitsausgangssignal des Vergleichers 36 aktiviert, so daß das
adressierte, aus dem Hauptspeicher 52 herausgeholte Wort an der richtigen Speicherstelle des Pufferspeichers
20 zusammen mit dem die Λ-Stellen-Untergruppe der Adresse umfassenden Adressenwort gespeichert
wird.
Während der beschriebenen Vorgänge empfängt die Verarbeitungseinheit die Daten von der adressierten
Speicherstelle, gleichgültig ob im Pufferspeicher 20 oder im Hauptspeicher 52. Wenn das adressierte
Wort sich im Pufferspeicher 20 befindet, ist die Zugriffszeit kürzer, als wenn das adressierte Wort aus
dem Hauptspeicher herausgeholt werden muß. Ein weiteres Merkmal der Anordnung nach F i g. 2 besteht
darin, daß, wenn ein Wort aus dem Hauptspeicher 52 herausgeholt wird, dieses Wort im Pufferspeicher
20 gespeichert wird.
Es wird davon Gebrauch gemacht, daß während der Durchführung eines Programms die gleichen Datenspeicherstellen
des Hauptspeichers wiederholt verwendet werden. Statt daß jedesmal, wenn der Hauptspeicher
angegangen werden muß, nur eine kleine Datenmenge ausgelesen wird, kann jeder vom Hauptspeicher
52 zum Pufferspeicher 20 übertragene Datenblock aus mehreren hundert Wörtern bestehen.
Aus der Tatsache, daß jedesmal, wenn das adressierte Wort nicht im Pufferspeicher 20 verfügbar ist, ein
verhältnismäßig großer Datenblock übertragen wird, ergibt sich, daß der Hauptspeicher 52 erheblich
weniger oft angegangen wird und die Datenverarbeitungszeit sich beträchtlich verringert.
Die Verbesserung hinsichtlich der Arbeitszeit läßt sich zeigen, wenn man realistischerweise für den
Pufferspeicher eine Bezugszeit von 50 ns und für den Hauptspeicher eine Zykluszeit von 400 ns voraussetzt.
Wenn sich das adressierte Wort nicht im Pufferspeicher 20 befindet, beträgt die gesamte Blockübertragungszeit
450 ns (50 ns für das Überprüfen des Pufferspeichers plus 400 ns für den Zugang zum
Hauptspeicher). Wenn 100% der Datenansuchen eine Blockübertragung vom Hauptspeicher zum
Pufferspeicher erfordern, beträgt die Speicherzykluszeit 450 ns. Wenn alle Datenansuchen vom Pufferspeicher
erfüllt werden können, beträgt die Speicherzykluszeit 50 ns. Wenn 10% der Datenansuchen eine
Blockübertragung erfordern (was eine realistische Annahme ist), so beträgt die durchschnittliche Speicherzykluszeit
0,9-50 ns +0,1-450 ns, also 90 ns.
Die Anstehwahrscheinlichkeit ist ebenfalls verringert, so daß durch die erfindungsgemäßen Maßnahmen
auch die mittlere Zeit des Wartens der Verarbeitungseinheiten auf den Speicheraigang sich verkürzt. Die
Gesamterhöhung der Arbeitsgeschwindigkeit ist da-
her größer, als es der bloßen Erhöhung der mittleren
Speicherzugriffsgeschwindigkeit entspräche.
F i g. 3 gibt eine hypothetische Darstellung einer Situation wieder, wie sie bei der Anlage nach Fig. 2
sich ergeben kann. Die Spalte 56 stellt die ft-Stellen-
»5 Untergruppe und die Spalte 58 stellt die ifc-Stellen-Untergruppe
der Hauptspeicheradresse dar. Die 64 Wortspeicherstellen im Hauptspeicher 52 sind mit
ihrem entsprechenden hypothetischen Platz im Pufferspeicher 20 verbunden. Die Spalte 60 gibt die Adres-
sen der Wortspeicherstellen im Pufferspeicher 20 wieder. Das Adressenwort, das zusammen mit jedem
Datenwort erscheinen würde, ist ebenfalls im Pufferspeicher 20 dargestellt.
Die Darstellung in F i g. 3 zeigt den Vorteil der
Verwendung der Λ-Stellen-Untergruppe der Hauptspeicheradressen
als Adresse für den Pufferspeicher, indem dadurch die Speicherung von Wörtern, die
sich an benachbarten Speicherstellen im Hauptspeicher befinden, im Pufferspeicher möglich wird. Dies
wird ersichtlich, wenn man betrachtet, was die Folgen
sein würden die /?-SteIlen-Untergruppe als Pufferspeicheradresse
verwendet würde. Beispielsweise sei angenommen, daß die Adresse 101011 im Pufferspeicher
gespeichert werden sollte. Bei Verwendung der
/i-Stellen-Untcrgruppe wäre die Pufferspeicheradresse
101 und das gespeicherte Adressenwort 011. Kein anderes Wort mit der gleichen Adresse 101 könnte
dann im Pufferspeicher gespeichert werden, weil diese Adresse, sobald sie einmal verwendet ist, hinsichtlich
des Pufferspeichers verbraucht ist. Es könnten daher
imnDiate 1 n n WÖrter im Hauptspeicher bei lOlOOO,
0 001Ί01010, 101100, 101101, 101110, d.h. die
JUlUIl benachbarten Wörter, nicht im Pufferspeicher
gespeichert werden. Dies würde die Nützlichkeit des
Pufferspeichers beschränken, da dieser keine benachbarten Worter vom Hauptspeicher speichern kann
und, wie bereits erwähnt, die Verarbeitungseinheit wahrend der Durchführung eines Programms dazu
neigt, solche benachbarten Wörter zu verwenden Da-
gegen wird bei Verwendung der ^-Stellen-Untergruppe
als Pufferspeicheradresse gemäß der Erfindung dieser Nachteil vermieden und die Speicherung
uenac.uarter Wörter ermöglicht, wie sich aus der
Darstellung in F i g. 3 ergibt
Die Anordnung nach Fig. 2, eine Verbesserung gegenüber dem Stand der Technik, kann nur eine
beschrankte Anzahl von Kombinationen von acht Wörtern aus dem Hauptspeicher speichern. Es gibt
annähernd 4,456 · ΙΟ9 Kombinationen von acht aus
64 Wörtern im Hauptspeicher mit jeweils acht. Da jedoch zwei Wörter mit der gleichen fc-Stellen-Untergruppe
im Pufferspeicher nach F i g. 2 nicht gleichzeitig gespeichert werden können, ist die Anzahl der
Kombinationen der 64 Hauptspeicherwörter, die jeweils im Pufferspeicher 20 nach F i g. 2 gespeichert
werden können, auf 1,678 ■ 107, d.h. annähernd
0,3% der insgesamt möglichen Kombinationen beschränkt. Im allgemeinen Fall ist die Anzahl der
Kombinationen von r aus π Elementen durch die folgende Gleichung gegeben:
η!
r\in-r)\
Angenommen die Wurzel der Speicheradresse ist R, so ist die Gesamtzahl der adressierbaren Speicherstellen
R", wobei η die Stellenanzahl der Speicheradresse
ist. Die Anzahl der Kombinationen, die im Pufferspeicher 20 nach F i g. 2 gespeichert werden
können, ist durch den folgenden Ausdruck gegeben:
AK'
Durch Verändern der Aufteilung der η Stellen der Hauptspeicheradresse wird die Anzahl der Kombinationen
von Hauptspeicherwörtern, die im Pufferspeicher gespeichert werden können, verändert. Das
Verhältnis RhRk (R»J nimmt bis zum Maximalwert 1
zu, wenn der Wert von h gegen Null geht. Dies bedeutet effektiv, daß die Pufferspeicheradresse für
sämtliche Wörter im Pufferspeicher die gleiche ist und das Adressenwort an jeder Speicherstelle das
gleiche ist wie die Hauptspeicheradresse bei diesem maximalen Verhältniswert. Ein Pufferspeicher, das
diesen Erfordernissen genügt, ist ein assoziativer oder inhaltsadressierbarer Speicher.
F i g. 4 zeigt eine Pufferspeicheranordnung unter Verwendung eines abgewandelten inhaltsadressierbaren
Speichers 20 als Pufferspeicher. Ein inhaltsadressierbarer Speicher ist ein Speicher, in welchem das
adressierte Wort oder ein Teil desselben gleich der Adresse oder einem Teil derselben ist. Der inhaltsadressierbare
Speicher nach F i g. 4 ist dahingehend abgewandelt, daß ein Wort durch Bezeichnen einer
Speicherstelle durch Beliefern des Decodierers mit einer Adresse adressiert werden kann, und zwar zusätzlich
zu der ungewöhnlichen Betriebsweise des inhaltsadressierbaren Speichers. Wie in F i g. 4 gezeigt,
hat jede Speicherstelle im Pufferspeicher 20 einen eigenen Vergleicher, der den Inhalt der entsprechenden
Speicherstelle mit dem Adressenwort vom Adressenregister 12 vergleicht. Eine Schaltungsanordnung
schickt in die Leitung 64 ein Ungleichheitssignal (»Fehlanzeigesignal«), welches anzeigt,
daß keiner der Adressenwortteile der gespeicherten Wörter im Pufferspeicher 20 gleich dem Adressenwort
im Adressenregister 12 ist. Dieses Ungleichheitssignal wird unter anderem einer Wortwählschaltung
62 zugeleitet, die, wenn sie aktiviert wird, den Adressendecodierer des Pufferspeichers 20 mit der
Adresse beliefert, an welcher neue Daten zu speichern sind. Die Wortwählschaltung 62 wird lediglich
für die Speicherung neuer Daten im Pufferspeicher verwendet und kann in beliebiger Weise so ausgeführt
sein, daß sie eine Adresse auf der Grundlage der Willkürlichkeit, der Neuheit, eines zyklischen Schemas,
des Gebrauchs oder auf irgendeiner anderen gewünschten Basis liefert.
ίο Wenn die Verarbeitungseinheit (nicht gezeigt) dem
Adressenregister 12 ein Adressenwort anliefert, wird dieses mit dem Adressenwortteil jedes gespeicherten
Wortes im Pufferspeicher 20 verglichen. Wenn der Vergleicher 66 Gleichheit (»Übereinstimmung«) zwisehen
dem Inhalt des Adressenregisters 12 und irgendeinem der gespeicherten Adressenwörter feststellt,
wird der Datenteil des im Pufferspeicher 20 gespeicherten Wortes nach den ODER-Gliedern der
Gruppe 48 und von dort zur Verarbeitungseinheit
ao übertragen, womit der Speicherzyklus beendet ist.
Wenn das im Adressenregister 12 befindliche Adressenwort im Pufferspeicher 20 nicht vorgefunden
wird, aktiviert ein Signal in der Leitung 64 die Wortwählschaltung 62 und wird über die UND-Glieder
a5 der Gruppe 50 das Adressenwort vom Adressenregister
12 zum Hauptspeicher 52 übertragen. Das Ausgangswort des Hauptspeichers 52 wird auf die
ODER-Glieder der Gruppe 48 und die UND-Glieder der Gruppe 44 gekoppelt. Die ODER-Glieder 48
übertragen das Ausgangswort zur Verarbeitungseinheit als Antwort auf deren Ansuchen an den Speicher.
Das Ungleichheitssignal aktiviert außerdem die UND-Glieder der Gruppen 44 und 54, wodurch das an der
durch die Wortwählschaltung 62 bezeichneten Speicherstelle zu speichernde Wort zum Pufferspeicher 20
übertragen wird. Damit ist der Speicherzyklus beendet, und das neue Wort befindet sich nunmehr im
Pufferspeicher 20.
Der modifizierte inhaltsadressierbare Speicher 20 repräsentiert die Anwendung der Erfindung bei einer
Aufteilung von k = 0 und h = n, was die Speicherung jeder beliebigen Kombination von Hauptspeicherwörtern
im Pufferspeicher ermöglicht.
Der modifizierte inhaltsadressierbare Speicher ist jedoch teurer als der in der Anordnung nach F i g. 2
verwendete Pufferspeicher. Gemäß einer weiteren Ausführungsform der Erfindung wird ein Kompromiß
zwischen der beschränkten Anzahl von Kombinationen von Hauptspeicherwörtern, die in der Pufferspeicheranordnung
nach F i g. 2 gespeichert werden können, und den hohen Kosten eines modifizierten
inhaltsadressierbaren Speichers nach F i g. 4 geschlossen. F i g. 5 zeigt eine entsprechende Anordnung.
Der Pufferspeicher 20 der Anordnung nach F i g. 5 hat vier adressierbare Speicherstellen. Das im Adressenregister 12 festgehaltene Adressenwort ist so aufgeteilt, daß k = 2 und h = 4, wobei der Wert von η = 6 hier beispielsweise angenommen ist. Wie zuvor kann jedoch das Adressenwort auf n—1 verschiedene Weisen aufgeteilt sein. Jede Speicherstelle im Pufferspeicher 20 enthält zwei Zellen, wobei jede Zelle ein Adressenwort und ein Datenwort enthält. Wie zuvor können acht Datenwörter im Pufferspeicher 20 gespeichert werden. Jede Zelle des Pufferspeichers 20 ist mit eigenen Verknüpfungsgliedergruppen für die Ausgangs- und Eingangswörter sowie mit eigenen Vergleichern iür jedes Adressenwort versehen. Zusätzlich ist eine Wortwählschaltung 62 mit einem Ein-
Der Pufferspeicher 20 der Anordnung nach F i g. 5 hat vier adressierbare Speicherstellen. Das im Adressenregister 12 festgehaltene Adressenwort ist so aufgeteilt, daß k = 2 und h = 4, wobei der Wert von η = 6 hier beispielsweise angenommen ist. Wie zuvor kann jedoch das Adressenwort auf n—1 verschiedene Weisen aufgeteilt sein. Jede Speicherstelle im Pufferspeicher 20 enthält zwei Zellen, wobei jede Zelle ein Adressenwort und ein Datenwort enthält. Wie zuvor können acht Datenwörter im Pufferspeicher 20 gespeichert werden. Jede Zelle des Pufferspeichers 20 ist mit eigenen Verknüpfungsgliedergruppen für die Ausgangs- und Eingangswörter sowie mit eigenen Vergleichern iür jedes Adressenwort versehen. Zusätzlich ist eine Wortwählschaltung 62 mit einem Ein-
jang und zwei Ausgängen vorgesehen, wobei jeder 64 Hauptspeicherwörtera, die in der Anordnung nach
Ausgang einer anderen Zelle des Pufferspeichers 20 Fig. 5 gespeichert werden kann. Wenn die Anzahl
zugeordnet ist. Einer der Ausgänge der Wortwähl- von Zellen odei Reihen in jeder adressierten Speischalrung
62 wird durch Aktivieren des mit dem cherstelle des Pufferspeichers 20 mit m bezeichnet
UND-Glied 70 gekoppelten Eingangs aktiviert. Wenn 5 ist, ist die Gesamtzahl von Kombinationen, die in
die Verarbeitungseinheit (nicht gezeigt) vom Speicher einer Anordnung nach Art der Fig. 5 gespeichert
Daten benötigt, wird in das Adressenregister 12 ein d kö durch den Ausdruck /*V* gegeben.
Adressen won emgegeoen. Durch die Jfc-Stellsn-Unter- \mj ° °
gruppe des Adressenwortes wird eine Zelle im Puffer- Bei der Anordnung nach Fi g. 5 sind R = 2, h = 4,
speicher 20 gewählt und angegangen. Das Adressen- io k = 2,m = 2. Die im Pufferspeicher 20 speicherbare
wort von der einen Zelle, bezeichnet mit X in F i g. 5, Gesamtzahl von Kombinationen von acht Datenwörist
dem ersten Satz von Eingängen eines Vergleichers tern der 64 Datenwörter im Hauptspeicher 52 ist
36 zugeführt, und das Adressenwort von der anderen 2,074 · 108 oder ungefähr 5 °/o. Dies übersteigt um
Zelle, bezeichnet mit Y in F i g. 5, ist dem ersten mehr als eine ganze Größenordnung die bei der An-Satz
von Eingängen des Vergleichers 38 zugeführt. 15 Ordnung nach Fig.2 mögliche Anzahl und läßt sich
Die /i-Stellen-Untergruppe des Adressenwortes ist mit geringeren Kosten erreichen als bei einer Anorddem
zweiten Satz von Eingängen beider Vergleicher nung nach F i g. 4. Durch Verändern der Aufteilung
36 und 38 zugeführt. Durch das Datenausgangswort und Anzahl von Zeilen in jeder Speicherstelle läßt
der A'-Zelle werden die UND-Glieder der Gruppe 32 sich die Erfindung je nach den gegebenen Zweck-
und durch das Datenausgangswort der Y-Zelle wer- ao mäßigkeiten in der verschiedenartigsten Weise anden
die UND-Glieder der Gruppe 34 aufgetastet. wenden und ausgesta ten.
Wenn das Adressenwort der adressierten X- oder F i g. 7 zeigt eine weitere Ausführuiigsform der Er-
Y-Zelle der ft-Stellenl-Untergruppen des Adressen- findung. Erfindungsg-jmäß ist es möglich, mit großem
Wortes im Adressenregister 12 entspricht, werden Vorteil von der Übertragung großer Datenblöcke
durch das Ausgangssignal des Vergleichers 36 die as vom Hauptspeicher zum Pufferspeicher Gebrauch zu
UND-Glieder 32 oder durch das Ausgangssignal des machen. Je größer die Anzahl von Zellen in jeder
Vergleichers 38 die UND-Glieder 34 aktiviert. Die adressierten Speicherstelle des Pufferspeichers ist,
Ausgänge der UND-Glieder der Gruppen 32 und 34 desto größer wird die Anzahl von Stellen im Aussind
an zwei Sätze von Eingängen der ODER-Glieder gangswort. Durch diese Vergrößerung der Ausgangsder
Gruppe 48 angeschlossen, die ausgangsseitig die 30 wortlänge wird die Ansprechzeit des Pufferspeichers
angeforderten Daten zur Verarbeitungseinheit über- verlängert. Bei der Anordnung nach F i g. 7 ist der
tragen. Pufferspeicher in einen Pufferspeicheradressentabel-
Wenn das adressierte Datenwort sich nicht im Puf- lenteil 20, eine A'-Datenspeicherreihe oder -abteilung
ferspeicher 20 befindet, wird der Ungleichheitsaus- 22 und eine Y-Datenspeicherreihe oder -abteilung 23
gang beider Vergleicher 36 und 38 aktiviert. Beide 35 unterteilt. Jede adkessierbare Speicherstelle des Adres-Ungleichheitsausgänge
der Vergleicher 36 und 38 sentabellenteüs 20 enthält zwei Adressenwörter,
sind an das UND-Glied 70 angeschlossen, dessen deren eines dem an der entsprechenden Adresse der
Ausgangssignal anzeigt, daß das adressierte Daten- A'-Datenspeicherabteilung 22 und deren anderes dem
wort sich nicht im Pufferspeicher 20 befindet. Das an der entsprechenden Adresse der Y-Datenspeicher-Ausgangssignal
des UND-Gliedes 70 aktiviert die 40 abteilung 23 gespeicherten Datenwort zugeordnet ist.
UND-Glieder der Gruppe 50, die an ihren anderen Im übrigen entspricht die Anordnung in ihrem AufEingängen
die Stellen oder Bits des Adressenregisters bau und in ihrer Arbeitsweise der nach F i g. 5.
12 empfangen, so daß das Adressenwort vom Adres- Der Vorteil der Anordnung nach F i g. 7 besteht
12 empfangen, so daß das Adressenwort vom Adres- Der Vorteil der Anordnung nach F i g. 7 besteht
senregister 12 zum Decodierer des Hauptspeichers 52 darin, daß die Arbeitsgeschwindigkeit der getrennten
übertragen wird. Das Ausgangswort der adressierten as Speicher 20, 22 und 23 größer ist als die des Puffer-Speicherstelle
des Hauptspeichers 52 ist den UND- Speichers 20 nach F i g. 5, und zwar wegen der klei-Gliedern
der Gruppen 44 und 46 sowie den ODER- neren Datenausgangswortlänge.
Gliedern der Gruppe 48 zugeführt. Die /i-Stellen- Bei den hier beispielsweise beschriebenen Anord-
Gliedern der Gruppe 48 zugeführt. Die /i-Stellen- Bei den hier beispielsweise beschriebenen Anord-
Untergruppe des Adressenwortes im Adressenregister nungen haben die Hauptspeicher jeweils nur 64 adres-12
ist den UND-Gliedern der Gruppen 54 und 55 zu- 50 sierbare Speicherstellen und enthalten die Puffergeführt.
Bei Empfang des Ausgangssignals des UND- speicher nur acht Hauptspeicherdatenwörter. Ferner
Gliedes 70 werden durch eines der Ausgangssignale ist nur eine Pufferspeicheranordnung vorgesehen. In
der Wortwählschaltung 62 entwedsr die UND-Glieder der Praxis können der Hauptspeicher Millionen von
der Gruppen 44 und 54 oder die UND-Glieder der adressierbaren Speicherstellen und die Pufferspeicher
Gruppen 46 und 55 aktiviert, so daß das neue Daten- 55 mehrere hundert Datenwörter enthalten. Die Aufwort
und das neue Adressenwort in die entsprechende teilung des Adressenregisters und die Anzahl von
Zelle der adressierten Speicherstelle des Pufferspei- Reihen oder Abteilungen ist hier nur beispielsweise
chers 20 eingespeichert werden. gewählt. Die in einem gegebenen Fall am besten ge-
F i g. 6 zeigt eine hypothetische Darstellung einer eigneten Anordnungen ergeben sich dem Fachmann
Kombination von acht Pufferspeicherwörtern aus den 60 ohne weiteres.
Hierzu 4 Blatt Zeichnungen
Claims (4)
1. Datenverarbeitungsanlage mit mindestens einer Verarbeitungseinheit, ferner mit einem
runerspeicher, welcher mehrere Speicherplätze enthält, in denen jeweils Information für die Verwendung
in der Verarbeitungseinheit und ein Kennungsabschnitt gespeichert sind, weiterhin mit
einem aus zwei Teilen bestehenden Adressengenerator zum Erzeugen zweier Adressen, von
denen die erste einen Lokalisierungsabschnitt zur Identifizierung eines Pufferspeicherplatzes und
die zweite einen Suchabschnitt enthält, ferner mit einem durch die vom Adressengenerator aus dem
Lokalisierungsabschnitt erzeugte Adresse gesteuerten und zum Al/fragen von Information
dienenden ersten Wähler, der aus dem adressierten Speicherplatz sowohl die Information als auch
den dort gespeicherten Kennungsabschnitt her- *°
ausliest, mit mindestens einem Satz von Verknüpfungsgliedern zur Übertragung von Information
zwischen einem Speicherplatz und der Verarbeitungseinheit, und schließlich mit mindestens
einem Vergleicher, dem der aus dem Speicher- *5 platz herausgelesene Kennungsabschnitt und der
vom Adressengenerator bereitgestellte Suchabschnitt zugeführt sind und der bei Übereinstimmung
ein Gleichheitssignal an den Satz von Torschaltungen liefert, dadurch gekenn-30
zeichnet, daß jeder Speicherplatz im Pufferspeicher
η (η ganzzahlig und größer als 1) Zellen für jeweils ein Datenwort (BWXO usw.) sowie
ein zugehöriges Adressenwort (KX), die die Information bzw. den Kennungsabschnitt in der betreffenden
Zelle darstellen, enthält und daß η Sätze von Verknüpfungsgliedern (32, 34) sowie
η getrennte Vergleicher (36, 38) vorgesehen sind, denen jeweils eines der η Adressenwörter, das
von einem Pufferspeicherplatz herausgelesen worden ist, und der Suchabschnitt, der vom zweiten
Teil des Adressengenerators erzeugt wird, anspricht und bei Übeieinstimmung den zugehörigen
Satz von Verknüpfungsgliedern aktiviert.
2. Datenverarbeitungsanlage nach Anspruch 1 mit einem Hauptspeicher, der eine Anzahl von
Hauptspeicherplätzen zur Speicherung von Information enthält, und mit einem durch die von beiden
Teilen des Adressengenerators erzeugten Adressen gesteuerten zweiten Wähler zum Herauslesen
von Information aus einem adressierten Hauptspeicherplatz, dadurch gekennzeichnet, daß
jeder der η Vergleicher (36, 38) ein Ungleichheitssignal
(KX^zA, ΚΥφΑ) liefert, wenn der
vom zweiten Teil des Adressengenerators (12) erzeugte Suchabschnitt mit dem aus der entsprechenden
Zelle d~s adressierten Speicherplatzes herausgelesenen Adressenwort nicht übereinstimmt,
und daß die Ungleichheitssignale aller Vergleicher einem zusätzlichen Verknüpfungsglied
(70) zugeführt sind, das beim Empfang von Ungleichheitssignalen von allen Vcrgleichern ein
Aktivierungssignal an den zweiten Wähler (50) liefert.
3. Datenverarbeitungsanlage nach Anspruch 2, dadurch gekennzeichnet, daß die η Sätze von
Verknüpfungsgliedern (32, 34) einen Weg (über 48) zur Übertragung von Information aus dem
Hauptspeicher (52) zur Verarbeitungseinheit em
halten.
4. Datenverarbeitungsanlage nach Anspruch: oder 3, gekennzeichnet durch π Sätze von wei
teren Verknüpfungsgliedern (44, 46 in Fig. 5 414, 46, 54, 55 in Fig. 7), durch die einer ent
sprechenden der η Zellen des adressierten Puffer Speicherplatzes (BWXO, BWXl, BWYO usw.
ein vom Hauptspeicher (52) herausgelesene: Datenwort zuführbar äst, und einen vom zusatz
liehen Verknüpfungsglied (70) gesteuerten zu sätzlichen Wähler (62) zur wahlweisen Aktivierung
eines der η Sätze von zusätzlichen Verknüpfungsgliedern.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US79304369A | 1969-01-22 | 1969-01-22 | |
US79304369 | 1969-01-22 |
Publications (3)
Publication Number | Publication Date |
---|---|
DE2002369A1 DE2002369A1 (de) | 1970-07-30 |
DE2002369B2 DE2002369B2 (de) | 1975-09-04 |
DE2002369C3 true DE2002369C3 (de) | 1976-04-15 |
Family
ID=
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3011552C2 (de) | ||
DE2227882C2 (de) | Virtuelle Speicheranordnung | |
DE2231146C3 (de) | Datenverarbeitungsanlage mit virtueller Adressierung | |
DE2515696C2 (de) | Datenverarbeitungssystem | |
DE1956604B2 (de) | Datenverarbeitungsanlage | |
DE2154106A1 (de) | Arbeitsspeicherwerk | |
DE2523414A1 (de) | Hierarchische speicheranordnung | |
DE2547488C2 (de) | Mikroprogrammierte Datenverarbeitungsanlage | |
EP0013737A1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE2617408B2 (de) | Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie | |
DE2302074A1 (de) | Speicherschutzanordnung in einem multiprozessorsystem | |
DE2252489A1 (de) | Speichersystem | |
DE1922304A1 (de) | Datenspeichersteuergeraet | |
DE2648225A1 (de) | Datenspeicherwerk mit mehreren speichermodulen | |
EP0009625B1 (de) | Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher | |
CH495584A (de) | Datenverarbeitungsanlage | |
DE2002369C3 (de) | Datenverarbeitungsanlage mit Pufferspeicher | |
DE2349590A1 (de) | Vorrichtung zur datenverarbeitung | |
DE1774849C3 (de) | Adressierungseinrichtung für eine Speicherabschnittkette | |
DE2355814C2 (de) | Kanalzugriffseinrichtung für eine hierarchische Speicheranordnung | |
DE1449816C3 (de) | Schaltungsanordnung zur Steuerung des Zugriffs zu einem Magnettrommelspeicher | |
DE3009317A1 (de) | Hybrid-assoziativspeicher | |
DE3633227A1 (de) | Anordnung zur umwandlung einer virtuellen adresse in eine physikalische adresse fuer einen in seiten organisierten arbeitsspeicher einer datenverarbeitungsanlage | |
DE3851210T2 (de) | Datenbussteuerung von ROM-Einheiten in einer Informationsverarbeitungsanordnung. | |
DE2002369B2 (de) | Datenverarbeitungsanlage mit Pufferspeicher |