DE2002369C3 - Datenverarbeitungsanlage mit Pufferspeicher - Google Patents

Datenverarbeitungsanlage mit Pufferspeicher

Info

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
Application number
DE19702002369
Other languages
English (en)
Other versions
DE2002369A1 (de
DE2002369B2 (de
Inventor
Joseph A. Cherry Hill N.J. Weisbecker (V.St.A.)
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.)
RCA Corp
Original Assignee
RCA Corp
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 RCA Corp filed Critical RCA Corp
Publication of DE2002369A1 publication Critical patent/DE2002369A1/de
Publication of DE2002369B2 publication Critical patent/DE2002369B2/de
Application granted granted Critical
Publication of DE2002369C3 publication Critical patent/DE2002369C3/de
Expired legal-status Critical Current

Links

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

Patentansprüche:
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.
DE19702002369 1969-01-22 1970-01-20 Datenverarbeitungsanlage mit Pufferspeicher Expired DE2002369C3 (de)

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