DE2617408B2 - Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie - Google Patents

Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie

Info

Publication number
DE2617408B2
DE2617408B2 DE2617408A DE2617408A DE2617408B2 DE 2617408 B2 DE2617408 B2 DE 2617408B2 DE 2617408 A DE2617408 A DE 2617408A DE 2617408 A DE2617408 A DE 2617408A DE 2617408 B2 DE2617408 B2 DE 2617408B2
Authority
DE
Germany
Prior art keywords
memory
bits
module
address
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE2617408A
Other languages
English (en)
Other versions
DE2617408A1 (de
DE2617408C3 (de
Inventor
William Philip Carlisle Mass. Churchill Jun. (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.)
EMC Corp
Original Assignee
Data General 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 Data General Corp filed Critical Data General Corp
Publication of DE2617408A1 publication Critical patent/DE2617408A1/de
Publication of DE2617408B2 publication Critical patent/DE2617408B2/de
Application granted granted Critical
Publication of DE2617408C3 publication Critical patent/DE2617408C3/de
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0851Cache with interleaved addressing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

Die Erfindung betrifft einen Speichermodul gemäß Oberbegriff des Anspruchs 1.
Der Zugriff zu schnellen Speichern ist von außerordentlicher Bedeutung, um eine schnelle Verarbeitung der Daten zu erhalten und die hoge Geschwindigkeit der zur Zeit verfügbaren Rechenwerke auszunutzen. Ein Weg, eine erhöhte Speichergeschwindigkeit zu erreichen, besteht darin, eine Speicherhierarchie vorzusehen, in der eine große und verhältnismäßig langsame Hauptspeichereinheit und eine kleinere, schnelle Hilfs-Speichereinheit mit dem Rechenwerk verbunden sind. Der schnelle Speicher, allgemein als »Cache«-Speichereinheit bekannt, dient als ein Mittel zur Speicherung von aus dem Hauptspeicher ausgewählten Daten. Die Daten vom Hauptspeicher, die in die Cache-Einheit auf einmal t>o in Mengen von üblicherweise einigen Worten (oder Bytes) eingespeichert werden, werden so ausgewählt, daß sie Daten enthalten, von denen man annimmt, daß sie durch das Rechenwerk bei nachfolgenden Speicheranfragen angefordert werden. Wenn dies der Fall ist, b5 dann wird die Speichergeschwindigkeit dadurch entsprechend erhöht, daß das Rechenwerk von dem schnellen Cache-SDeicher bedient wird, und nicht von dem langsameren Hauptspeicher.
Ein Speichersystem vom Cache-Typ erfordert eine Speichersteuerung, die folgendes feststellen muß:
1. ob durch das Rechenwerk angeforderte Daten im Cache-Speicher sind, und falls ja. wo:
2. falls diese Daten nicht im Cache-Speicher sind, an welche Stelle innerhalb des Cache-Speichers die Daten von dem langsamen Speicher eingespeichert werden müssen;
3. wie das Rechenwerk den schnellen und den langsamen Speicher modifiziert und
4. welche Zustände das System beim Einschalten einnehmen soll.
Eine Cache-Speicheranordnung macht auch Gebrauch von einer assoziativen Speichereinheit, die die sich auf den langsamen Speicher beziehenden Adressen der Daten im Cache-Speicher enthält. Dieser Assoziativspeicher kann wirkungsvoll als ein inhaltsadressierter Speicher verwirklicht werden, der für eine gleichzeitige Suche auf all seinen Speicherplätzen sorgt, um festzustellen, ob die von dem Rechenwerk gewünschten Daten im Cache-Speicher sind, und falls ja, wo.
Unter den verschiedenen Punkten, die Einfluß auf die Leistung eines Speichersystems des besprochenen Typs haben, ist auch das Verhältnis der Geschwindigkeiten zwischen dem langsamen Speicher und dem Cache-Speicher. Dies kann auch durch das Größenverhältnis des Cache-Speichers und des langsamen Speichers bestimmt werden. Wenn einmal die Größe des Cache-Speichers und seine Geschwindigkeit ausgewählt sind, um eine gewünschte Leistung zu erhalten, muß die Speichersteuerung so ausgelegt werden, daß sie fur eine wirkungsvolle Methode zum Austausch alter Worte im Cache-Speicher gegen neue Worte sorgt
Durch die DE-OS 23 50 215 ist ein Datenverarbeitungsgerät der im Oberbegriff des Anspruchs 1 genannten Art bekannt. Bei dem bekannten Gerät kann die HilfsSpeicherkapazität verringert werden, um die Kosten des Geräts zu verringern. Die Hauptspeicherteile sind durch Module gebildet und die Hilfsspeicherteile sind durch von den Hauptspeicherteilen getrennte Module gebildet, so daß bei einer Vergrößerung der Hauptspeicherkapazität der Hilfsspeicher in seiner Größe unverändert bleibt Bei dem bekannten Gerät ist bereits vorgesehen, die Hauptspeichermodule mit Adressenverschränkung und Speicherüberlappung zu betreiben. Wird der Hauptspeicher vergrößert so nimmt bei dem bekannten Gerät wegen der nur begrenzten Größe des HilfsSpeichers die wirksame Zugriffszeit zu.
Auch durch die Zeitschrift »Elektronische Rechenanlagen«, 12. Jahrgang, 1970, Heft 2, S. 95 bis 103 ist ein Datenverarbeitungsgerät bekannt, dessen Hauptspeicher mit Verschränkung oder Verteilung arbeiten und dem ein schneller Pufferspeicher vorgeschaltet ist. In dieser Druckanschrift ist erwähnt, daß eines oder mehrere Segmente mit 1024 Wörtern des Pufferspeichers, dessen Gesamtkapazität 4096 Wörter beträgt, abgeschaltet werden können, wobei das Gerät funktionsfähig bleibt
Der Erfindung liegt die Aufgabe zugrunde, eine Möglichkeit zu schaffen, die Arbeitsgeschwindigkeit eines Geräts der im Oberbegriff des Anspruchs 1 genannten Art zu erhöhen, wobei die sich ergebende hohe Arbeitsgeschwindigkeit auch bei einer Vergrößerung der Speicherkapazität beibehalten werden soll.
Diese Aufgabe wird durch die im Anspruch 1 angegebenen Merkmale gelöst Weiterbildungen der Erfindung sowie ein erfindungsgemäßes Datenverarbeitungsgerät sind in den Unteransprüchen gekennzeichnet
Die Erfindung ermöglicht es durch das Cache-Speichersystem mit Verteilung oder Versehachtelung, die Operationsgeschwindigkeit im Ganzen gesehen zu erhöhen, denn die im Cache-Speicher gespeicherten Daten aller Speichermodule sind verteilt oder verschachtelt angeordnet, so daß Daten, von denen erwartet wird, daß sie nachfolgend während der Operation des Datenverarbeitungsgeräts benötigt werden, aufeinander folgend in verschiedenen Cache-Speichereinheiten der Speichermodule gespeichert sind. Beim Stand der Technik wurden derartige aufeinander folgende Daten dagegen bisher in einer einzigen Cache-Speichereinheit gespeichert, und diese konnten daher nicht gleichzeitig verfügbar gemacht werden, weil in einem bestimmten Zeitpunkt ein Zugriff nur zu einem einzigen Modul erfolgen kann. Durch die Technik der verteilten Speicherung im Cache-Speicher wird die Wahrscheinlichkeit verringert, daß Wörter, die aufeinander folgend benötigt werden, im selben Cache-Speicher sich befinden und es wird die Wahrscheinlichkeit erhöht, daß solche aufeinander folgende Wörter tatsächlich gleichzeitig zugänglich sind, das heißt, es ist der Zugriff zu dem nächsten Wort einer Sequenz möglich, bevor die Verarbeitung des früheren Worts abgeschlossen worden ist Auf diese Weise kann die Gesamtgeschwindigkeit der Operation bei solchen Systemen, in denen ein derartiger überlappender Zugriff durchgeführt werden kann, erhöht werden.
to Ein weiterer wichtiger Vorteil der Erfindung liegt in der Tatsache, daß jeder Speichermodul sowohl einen Hauptspeicherteil als auch einen Cache-Speicherteil einschließt Wenn die Speicherkapazität durch Hinzufügen von einem oder mehreren Modulen erhöht wird, wird auch die Cache-Speicherkapazität erhöht so daß die wirksame Zugriffszeit im wesentlichen unverändert bleibt Durch die dem Speich«rmodul zugeordneten Schaltmittel zum überlappenden Speichern wird eine relativ leichte Auswahl einer geeigneten Verteilung der
Cache-Speicher in Übereinstimmung mit der Anzahl der verwendeten Speichermodule gestattet
Speziell bei relativ kleinen Rechnersystemen, in denen die Speicherkapazität verhältnismäßig klein ist, kann das gesamte Speichersystem in der Form einer Anzahl derartiger Speichermodule angeordnet werden, wobei der Hauptspeicherteil eine i-elativ niedrige Arbeitsgeschwindigkeit und eine relative große Kapazität aufweist und der Cache-Speicherteil eine viel kleinere Kapazität und eine viel höhere Arbeitsge-
JO schwindigkeit aufweist Beispielsweise kann ein Speichersystem für 64 K Wörter in der Weise angeordnet werden, daß es acht Modulen benutzt, wobei jeder Modul einen Hauptspeicherteil mit 8 K aufweist und einen Cache-Teil, der vier Blöcke mit
J5 jeweils vier Wörtern aufweist In einem solchen System sind 32 Blöcke von Cache-Wörtern verfügbar, wobei man in der Lage ist, diese Wörter in einer Zwei-Wege-Verteilung, einer Vier-Wege-Verteilung oder einer Acht-Wege-Verteilung, wie weiter unten näher beschrieben, zu speichern.
Nachfolgend werden an Hand der Zeichnung Ausführungsbeispiele der Erfindung näher erläutert.
F i g. 1 ist ein Übersichts-Blockdiagramm eines Speichermoduls gemäß der Erfindung mit einem Hauptspeicher und einem Hilfs-Cache-Speicher;
F i g. 2 zeigt eine detailliertere Ansicht eines Teils des Hauptspeichers und Cache-Speichers des Moduls nach Fig.l;
F i g. 3 zeigt eine nochmals detailliertere Ansicht
so eines Teils des Hauptspeichers und Cache-Speichers des Speichermoduisnach Fig. 1;
F i g. 4 zeigt einen detaillierteren Abschnitt eines anderen Teils des Speichermoduls nach F i g. 1;
F i g. 5 und 6 zeigen die Zeitlogik des Speichermoduls nach F i g. 1;
F i g. 7 zeigt ein Zeitdiagramm, das die zeitliche Abhängigkeit zwischen verschiedenen Signalen der Zeitlogik nach F i g. 5 und 6 zeigt;
F i g. 8, 9 und 10 zeigen detailliertere Diagramme der
bo Speichersteuerlogik von F i g. 1;
F i g. 11 zeigt detailliertere Diagramme der Auffrischungslogik nach F i g. 1;
F i g. 12 zeigt eine detailliertere Zeichnung der Logik zur Erzeugung einer Arbeitsweise des Cache-Speichers
b5 des Speichermoduls nach Fig.l mit Verteilung oder ohne Verteilung der zu speichernden Information;
Fig. 13 zeigt eine andere Ausführungsform der in F i g. 12 gezeigten Logik;
Fig. 14 bis 16 sind Diagramme zur Erläuterung der Operation der Logik von F i g. 13.
Ein Blockdiagramm, das allgemein einen typischen Speichermodul beschreibt, der bei der vorliegenden Erfindung verwendet wird, ist in F i g. 1 dargestellt, in der ein Hauptspeicher 31 gezeigt ist, der eine Zykluszeit von beispielsweise 600 ns hat, und ein kleinerer Halbleiterspeicher mit einer größeren Geschwindigkeit, der allgemein als Cache-Speicher 32 bezeichnet ist, mit einer Zykluszeit von beispielsweise 100 ns bis 200 ns. Der Hauptspeicherteil 31 ist mit einer Speicher-Datensammelleitung verbunden und zusätzlich mit einem Speicheradressenregister 33, das wiederum mit einer Adreß-Sammelleitung, wie gezeigt, verbunden ist, über ein Speicherdatenregister 38.
Eine Assoziativspeichereinheit in der Form eines inhaltsadressierbaren Speichers 34 ist mit dem Speicheradreßregister 33 verbunden und wird von diesem beaufschlagt und ist so ausgebildet, daß es Daten an seinen Eingängen mit bereits in seinem Speicher gespeicherten Daten vergleicht, um eine Übereinstimmung anzuzeigen, wenn diese Daten identisch sind. Diese Untersuchung auf Gleichheit wird bei allen Bits parallel durchgeführt Die gespeicherten Daten sind gebildet durch vier Wörter mit zwölf Bits, und der Signaleingang ist ein Wort mit elf Bits vom Speicheradreßregister 33 und ein Prüfbit. Die Ausgangssignale des inhaltsadressierbaren Speichers 34 enthalten ein zum Cache-Speicher 32 geleitetes Signal, wenn eine Obereinstimmung gefunden wird (GLEICH), und ein zum Hauptspeicher 31 geleitetes Signal, wenn eine Übereinstimmung nicht gefunden wird (GLEICH). Zusätzlich wird eine Adresse, die als A4 und RB bezeichnet ist, und die einen Schnellspeicherplatz im Cache-Speicher 32 bezeichnet, zu dem Cache-Speicher 32 geleitet, wenn eine Übereinstimmung auftritt.
Der Hauptspeicher 31 ist auch so verbunden, daß er den Cache-Speicher 32 mit vier Wörtern oder einem Block von Speicherdaten lädt, wenn ein derartiger Befehl vorliegt. Die Signale WA und WB, die zum Cache-Speicher 32 und zum inhaitsadressierbaren Speicher 34 geliefert werden, bezeichnen immer die Cache-Speicheradresse, wo die vom Hauptspeicherteil 31 stammenden Daten eingeschrieben werden müssen und werden von der Cache-Wortaustauschlogikeinheit 35 erhalten. Die spezielle für diese Einheit verwendete Logik bildet keinen notwendigen Teil der vorliegenden Erfindung und jede geeignete Methode zur Auswahl der Wörter, die im Cache-Speicher gespeichert werden müssen, kann benutzt werden. Eine geeignete Technik und die Logik hierfür ist in der US-PS 39 49 369 mit dem Titel »Memory Access Technique« (Speicherzugrifftechnik), angemeldet von William P. Churchill am 23. Januar 1974 und auf den Anmelder der vorliegenden Erfindung übertragen, beschrieben.
Eine Speichersteuerlogik 37 ist mit dem Cache-Speicher 32, dem Hauptspeicher 31, dem inhaltsadressierbaren Speicher 34 und der Cache-Wortaustauschlogik 35 verbunden, um sicherzustellen, daß eine geeignete Abfolge der Behandlung der Information aufrechterhalten wird, was im folgenden deutlich werden wird.
Das System gemäß der Erfindung verwendet vorzugsweise einen dynamischen Halbleiterhauptspeicher 31, der deswegen, weil die in ihm gespeicherten Daten innerhalb einer Zeitperiode sich verschlechtern, es erfordert, daß diese Daten periodisch in geeigneter Weise aufgefrischt werden. Eine geeignete Auffrischlogik 39 und ein »Adressenerhaltungs«-Register 40 werden für diesen Zweck benötigt, wie genauer unten beschrieben wird.
Wie bei der in F i g. 2 beschriebenen Ausführungsform erkennbar ist, weist der Hauptspeicher vier Zeilen 31Λ, 31ß, 31Cund 31£> von Speicher-Halbleiterplättchen entsprechend der Zeile 0, Zeile 1, Zeile 2 bzw. Zeile 3 auf, wobei jede Zeile 21 Speicherhalbleiterplättchen aufweist und jedes Plättchen ein (2 K. χ I)-Plättchen ist.
ίο Der Hauptspeicher hat so eine Kapazität für die Speicherung von 8 K Wörtern, wobei jedes Wort 21 Bit lang ist. Der Cache-Speicher 32 umfaßt 21 4-Bit-Speicherhalbleiterplättchen und hat daher eine Gesamtkapazität von 84 Bit, die vier Worte mit 21 Bit
!5 repräsentieren. Das System ist so ausgelegt, daß vier Wörter aus dem Hauptspeicher in den Cache-Speicher mit einem Takt geschrieben werden, während ein einzelnes Wort mit jedem einzelnen Takt in den Hauptspeicher von dem Rechenwerk geschrieben wird.
Wie man mehr im einzelnen in Fig.3 sieht, sind typische Verbindungen zwischen einer speziellen Spalte von vier Registern 50, 51, 52 und 53 im Hauptspeicher dargestellt, von denen jedes ein Bit von jeden« von 8 K Worten, die im gesamten Hauptspeicher gespeichert sind, speichert, und ein Register 54 des Cache-Speichers, das ein Bit von vier Wörtern, die im Cache-Speicher gespeichert sind, speichert. Für das hier beschriebene System repräsentiert diese Spalte eine von 21 solcher Spalten zur Speicherung von Wörtern mit 21 Bit im Hauptspeicher und Cache-Speicher, wobei 16 dieser Bits die Bits eines 16-Bit-Daten worts repräsentieren und die übrigen fünf Bits für Fehlerkorrekturzwecke benutzt werden, die nicht Teil der vorliegenden Erfindung bilden. Entsprechend sind die Verbindungen in bezug auf die letztgenannten Bits nicht im einzelnen beschrieben.
Die Zwischenverbindungen zwischen den vier Zeilen der Hauptspeicherregister (wobei jede Zeile 16 solcher Register enthält) und den Cache-Speicherregistern (die 16 solcher Register aufweisen) sind in Gruppen von vier Spalten angeordnet, wobei eine solche Gruppe speziell in F i g. 3 mit Bezug auf die Zwischenverbindungen zwischen den Hauptspeicherregistern 1 bis 4 der Zeilen 0 bis 3 und den Cache-Speicherregistern 1 bis 4 gezeigt ist Obwohl in den Zeichnungen nicht im einzelnen gezeigt, sind im wesentlichen die gleichen entsprechenden Verbindungen vorgesehen mit Bezug auf die Hauptspeicherregister 5 bis 8 der Zeilen 0 bis 3 und die Cache-Speicherregister 5 bis 8, die Hauptspeicherregiso ster 9 bis 12 der Zeilen 0 bis 3 und die Cache-Speicherregister 9 bis 12, und die Hauptspeicherregister 13 bis 16 der Zeilen 0 bis 3 und die Cache-Speicherregister 13 bis
16.
Die Speicherbist MBO bis MB\5 werden von der Speicherdatensammelleitung über das Speicherdatenregister 41 geliefert. Das Cache-Register Nr. 1 beispielsweise speichert ein Bit von jedem von vier Registern einer einzelnen Zeile, die hier als Beispiel als Zeile 0 des Hauptspeichers bezeichnet ist, während das Cache-Register Nr. 2 ein Bit von jedem von vier Registern der Zeile 1 des Hauptspeichers speichert, das Cache-Register Nr. 3 ein Bit von jedem von vier Registern der Zeüe 2 des Hauptspeichers speichert und das Cache-Register Nr. 4 ein Bit von jedem von vier Registern der Zeile 3 des Hauptspeichers speichert
Auf diese Weise speichern die 16 Cache-Datenregister vier 16-Bit-Datenwörter (sowie vier 5 Bit Fehlerkorrekturwörter) in dem beschriebenen System.
Die Signale WA und WB bezeichnen die Adressen, in die die Wörter einzuspeichern sind, wobei eine derartige Speicherung als Ergebnis eines Signals OACHE LD erfolgt. Der Cache-Speicher kann ein Wort zu der Speicherdatensammelleitung über Speichersammeileitungstreiber 42 übertragen (ein Element der ersten Spalte ist hierbei als Element 42Λ bezeichnet, wie in F i g. 3 gezeigt ist). Die Signale RA und RB bezeichnen die Adresse, aus der ein solches Wort gelesen werden soll, und eine solche Übertragung erfolgt als Ergebnis ι ο eines Signals DA TEN ZUR SAMMELLEITUNG. Es werden geeignete Taktsignale zum Hauptspeicher 31 geliefert, ebenso Adreß-Signale AQ bis A10, wie gezeigt, wobei Daten in den Hauptspeicher beim Auftreten von Schreibaktiviersignalen WO bis W3 für jede der Zeilen des Hauptspeichers eingegeben werden.
Wie man in F i g. 4 sieht, liefert das Speicheradreßregister 33 zusätzlich zu der Tatsache, daß es die 11-Bit-Adresse und die Prüf information zu dem inhaltsadressierbaren Speicher 34 liefert, auch die Bits MD14 und MD15, die diejenige Adresse identifizieren, die in der Adressenerhaltungslogik 44 während der Schreiboperation aufbewahrt werden muß, wie unten beschrieben.
Die Fig.5 und 6 zeigen die Zeitlogik für den Speichermodul und weisen ein Synchrontaktregister 45 auf, das die Taktsignale TX bis Γ4 liefert und die Logik zur Herstellung der Treibersignale FIl, F12 und F13 aufweist. Aus Gründen der elektrischen Belastung werden diese Signale als eine Mehrzahl von Signalen FHA bis FIIL, FI2A bis F/2Fund FI3A bis F/3F,die in Fig.6 gezeigt sind, erzeugt, um unterschiedliche logische Elemente, die für die Arbeit des Hauptspeichers erforderlich sind, zu speisen. Der zeitliche Zusammenhang der Zeitsignale der F i g. 5 und gewisser anderer Signale des Speichermoduls ist in dem Zeitdiagramm der F i g. 7 gezeigt für die Operation innerhalb des 800-Nanosekunden-Operationszyklus des Hauptspeichers.
Die Taktgeber des MOS-Hauptspeichers werden durch die in F i g. 6 gezeigten Taktgebertreibersignaie angesteuert, welche Signale wiederum von den Zeitsignalen aus dem Synchrontaktregister 45 getrieben werden. Die Taktgebertreiber arbeiten in drei Stufen. Die erste Stufe, die die Taktgebertreibersignale FIXA bis FIXL benötigt, bewirkt ein Vorladen und Bereitmachen des Hauptspeichers, wodurch ein wirkungsvolles Starten der Tätigkeit des Hauptspeichers und ein Einrasten der Adressen am Ende dieser Stufe erfolgt. Alle Zeilen des Hauptspeichers werden gleichzeitig in den Cache-Speicher eingelesen.
Die zweite Stufe, die die Taktgebertreibersignaie FI2A bis F/2F benötigt, ist eine »Lese«-Stufe zum Auslesen von Daten aus jeder Speichereinheit-matrix (d.h, jedes 2 K-Halbleiterplättchen des Hauptspeichers).
Die dritte Stufe, die die Taktgebertreibersignaie FI3A bis F/3F benötigt, ist eine »Schreib«-Stufe und schreibt Daten aus dem Speicherdatenregister in den Hauptspeicher oder vervollständigt den Auffrischzyldus (wie unten diskutiert wird).
Die Speichersteuerlogik ist in den Fig.8, 9 und 10 dargestellt Fi g. 8 zeigt drei Register 46,47 und 48 zur Lieferung geeigneter Steuersignale, wie gezeigt Ist beispielsweise einmal der Speichermodul durch das es Rechenwerk ausgewählt worden, zeigt ein geeignetes Steuersignal an, daß der ausgewählte Modul die Adresse von der Speicheradressensammelleitung erhalten hat und daß die Verarbeitung dieser Adresse beginnen kann. Weiterhin werden Signale zum Beginn der Leseoder Schreibzyklen (LESEZYKLUS, SCHREIBZY KLUS) geliefert, ebenso Signale, die anzeigen, ob eine Datenübertragung vom Speichermodul noch schwebt (TRANSPEND), und ob die Speicherdatensammelleitung zum Transport von Daten dorthin bereit ist (BEREITTP). Weitere Signale umfassen eine Anforderung nach einem Auffrischzyklus (AUFFRISCH) und die Einleitung eines solchen Auffrischzyklus (AUFFZYK). Wenn sich der Modul in einem Fehlerkorrekturzyklus (FKOR ZY) befindet, wird ein Signal geliefert, während die Anwesenheit eines geeigneten Taktsignals (MCASYN) für die interne Synchronisation der Lese- und/oder Schreiboperationen sorgt, ohne daß eine externe Synchronisation vom Rechenwerk erforderlich ist. Wenn es gewünscht wird, daß die Daten an einer ausgewählten Adresse im Hauptspeicher des Moduls geändert werden und Daten einer solchen Adresse auch im Cache-Speicher gespeichert sind, wird ein Signal ENTF geliefert, während die Daten im Hauptspeicher auf den neuesten Stand gebracht werden, welches Signal anzeigt, daß die im Cache-Speicher früher gespeicherten Daten ungültig sind und verhindert, daß durch ein Einschreiben der ungültigen Bedingung in den inhaltsadressierbaren Speicher 34 (IASPLD) in diesem inhaltsadressierbaren Speicher 34 eine Übereinstimmung festgestellt wird. Wenn ein Befehl zum Laden des Cache-Speichers (CACHELD) gegeben wurde, sind die Daten, die so in den Cache-Speicher geladen werden, für einen Zugriff nicht verfügbar, bis eine Zeitspanne verstrichen ist, die ausreichend ist, um diese Operation völlig zu vollenden. Um die Übertragung solcher Cache-Daten auf die Speicherdatensammelleitung bis zu diesem Zeitpunkt zu verhindern, werden diese Daten nicht verfügbar gemacht, bis ein Signal CACHELDSV durch das Register 48 geliefert wird, welches Signal um eine geeignete Zeitverzögerung nachdem das Laden des Cache-Speichers begonnen wurde, vorhanden ist
Das in F i g. 9 gezeigte Register 49 liefert ein Signal ENTFSV, ein Signal BUSYSV, ein Signal MEMSE- LECTSV und ein Signal GLEICHSV, wie gezeigt. In einer Art ähnlich der oben an Hand des Signals CACHE LD SV diskutierten werden diese Signale um vorbestimmte Zeiten, die der Einleitung der angegebenen Operationen folgen, verzögert, so daß diese Operationen völlig abgeschlossen werden können, bevor eine folgende Operationen in Verbindung mit diesen beginnen kann.
Die Auffrischlogik ist in F i g. 11 gezeigt Wie bekannt ist erfordern MOS-Speicher, daß die in ihnen gespeicherten Daten periodisch aufgefrischt werden. Entsprechend dem gezeigten System haben die (2 K χ lJ-Speicher-Halbleiterplättchen Speicherzellen, die in einer 32 χ 64-Matrix angeordnet sind, wobei die 64 Bits einer einzelnen aus den 32 Zeilen gleichzeitig (innerhalb weniger als 2 Millisekunden) aufgefrischt werden, und eine spezielle Zeile alle 25 Mikrosekunden aufgefrischt wird, so daß die gesamte Speichermatrix von jedem (2Kx 1)-Halbleiterplättchen alle 800 Mikrosekunden aufgefrischt wird, was zum periodischen Auffrischen von z.B. gegenwärtig verfügbaren MOS-Speichern ausreichend ist
Wie man in F i g. 11 sieht, wird ein Zeitgeber 60 für 25 Mikrosekunden zusammen mit einem 5-Bit-Auffrischzahler 61 verwendet, um die Zählersignale zu liefern, um das Auffrischen aller 32 Zeilen zu gestattea
Ein Festwertspeicher 62 (FWSP) liefert die Schreibsignale WO bis W3 für jede der vier Zeilen der (2 K χ l^Speicher-Halbleiterplättchen des Hauptspeichers in Übereinstimmung mit dem Signal SCHREIB ZYKLUS von den Speichersteuerregistern der F i g. 8 und den Signalen WD14 und WD15 von der Adressenerhaltungslogik der Fig.4. Die Adressentreibersignale Λ 0 bis Λ 4 werden während des Auffrischzyklus von den Signalen Ri bis R 5 des Zählers 51 abgeleitet in Übereinstimmung mit dem Signal SET REF CYCLE; von F i g. 8.
Fig. 12 zeigt die Verbindungen, die am Speichermodul erforderlich sind, um Operationen des Cache-Speichers mit Verteilung oder ohne Verteilung vorzusehen. Seine Operation für jede Art eines Verteilungsprozesses benutzt die 18-Bit-Adresse des Systems, Von den in einer Adresse verfügbaren 18 Bits erfordert die Hauptspeicheradresseninformation, wie oben erwähnt, 11 Bits, die Identifizierung des ausgewählten Speichermoduls erfordert 5 Bits (für ein System, das 32 Speichermoduln verwendet), und die Identifizierung eines speziellen Worts im Cache-Speicher des ausgewählten Moduls erfordert 2 Bits. Für ein System ohne Verteilung sind die Adressenbits in der folgenden Weise vom höchstwertigen Bit (HWB) bis zum niedrigstwertigen Bit (NWB) angeordnet:
HWB <-
Modulauswahl
(5 Bits)
Hauptspeicheradresse
Bits)
18 Bits
(1
HWB <r-
Modulauswahl
(4 Bits)
HWB <-
Modulauswahl
(3 Bit)
HWB <Modul
auswahl
(2 Bits)
Hauptspeicher- Moduladresse auswahl
(11 Bits) (I Bit)
18 Bits
Hauptspeicher- Moduladresse auswahl
(11 Bits) (2 Bits)
18 Bits
Hauptspeicheradresse
(11 Bits)
18 Bits
Modulauswahl
(3 Bits)
So benutzt für einen Prozeß mit einer Zweiwege-Verteilung ein 16 K-Speichersystem zwei 8 K-Speichermoduln (bezeichnet als Moduln 1 und 2\ von denen jeder einen Cache-Speicher hat, der in der Lage ist, vier Blöcke von Wörtern (bezeichnet als Block A, B, C und D) zu speichern. In Übereinstimmung hiermit kann eine Folge von 32 Wortblöcken 0 bis 31 in den Wortblöcken
>NWB
Cache-Wort
(2 Bits)
Für Systeme mit einer Verteilung, die eine Zweiwege-Verteilung, Vierwege-Verteilung und Achtwege-Verteilung benutzen, sind die Adressenbits in der folgenden Weise angeordnet:
> NWB
Cache-Wort (2 Bit)
> NWB Cache-Wort
(2 Bit)
> NWB Cache-Wort (2 Bits)
der Cache-Speicher der Moduln in der folgenden Weise gespeichert werden:
Wortblöcke 0 bis 31 -
Cache-Speicherblöcke IA bis ID und 2A bis 2D
0 1 2 3 4 5 6 7
IA 2A IB 2B IC 2C ID 2D
8 9 10 11. 12 13 14 15
10 IA 2A IB 2B IC 2C ID 2D
16 17 18 19 20 21 22 23
IA 2A IB 2B IC 2C ID 2D
is 24 25 26 27 28 29 30 31
IA 2A IB 2B IC 2C ID 2D
Für einen Prozeß mit einer Vierwege-Verteilung in einem 32 K-Speichersystem, das vier 8 K-Speichermoduln benutzt, kann eine Folge von 32 Wortblöcken in den Cache-Speichern wie folgt gespeichert werden:
Wortblöcke 0 bis 31 -
Cache-Speicherblöcke IA bis ID, 2A bis 2D, 3 A bis 3D und 4A bis 4D
0 1 2 3 4 5 6 7
IA 2A 3A 4A IB 2B 3B 4B
9 10 11 12 13 14 15
IC 2C 3C 4C ID 2D 3D 4D
16 17 18 19 20 21 22 23
IA 2A 3A 4A IB 2B 3B 4B
35 24 25 26 27 28 29 30 31
IC 2C 3C 4C
ID 2D 3D 4D
Für einen Prozeß mit einer Achtwege-Verteilung in einem 64 K-Speichersystem, das acht 8 K-Speichermoduln verwendet, kann eine Folge von 32 Wortblöcken in den Cache-Speichern wie folgt gespeichert werden:
Wortblöcke 0 bis 31 -
Cache-Speicherblöcke IAbis ID,2A bis2D,3Abis3D, 4A bis 4D, 5A bis 5D, 6A bis 6D, 7A bis 7D, 8A bis 8D
0 1 2 3 4 5 6 /
50 IA 2A 3A 4A 5A 6A 7A 8A
8 9 10 11 12 13 14 15
IB 2B 3B 4B 5B 6B 7B 8B
16 17 18 19 20 21 22 23
55 IC 2C 3C 4C 5C 6C 7C 8C
24 25 26 27 28 29 30 31
ID 2D 3D 4D 5D 6D 7D
Beim Einrichten jedes Speichermoduls für die Benutzung in einer Arbeitsweise ohne Verteilung oder mit Verteilung werden die Bits der 18-Bit-Adressen in dem speziellen hier beschriebenen System in der Weise identifiziert, daß sie 15 Adreßbus, Λ4 0 bis PA15, aufweisen und drei besondere Adreß-Bits, XPA 0 bis XPA 2, welche Bits folgendermaßen für jeden Operationstyp zugeteilt werden können.
Operation
Adresse
Ohne Verteilung
Zweiwege-Verteilung
Vierwege-Verteilung
Achtwege-Verteilung
HWB <
Modul-Auswahl
(5 Bits)
XPA 0-XPA 2 PA 1, PA 2
HWB <
Modul-Auswahl
(4 Bits)
XPA H-XPA 2 PA 1
HWB <
Modul-Auswahl
(3 Bits)
XPA 0-XPA 2
HWB <
Modul-Auswahl
(2 Bits)
XPA 0, Λ"Ρ/4 1
Speicher-Adresse (11 Bits)
PA 3-PA
Speicher-Adresse (11 Bits)
PA 1-PA Modul-Auswahl (1 Bit)
PA 13
Speicher-Adresse (11 Bits) PA 1-PA Modul-Auswahl
(2 Bits)
PA 12, Λ4 13
Speicher-Adresse
(11 Bits)
XPA 2, PA I-PA Modul-Adresse (3 Bits)
PyI 11 -PA 13
> NWB
Cache-Wort (2 Bits)
Λ4 14, PA 15
> NWB
Cache-Wort (2 Bits)
PA 14, PA 15
-> NWB
Cache-Wort
(2 Bits)
PA 14, PA 15
> NWB
Cache-Wort
(2 Bits)
PA 14, PA 15
Zum Beispiel sind in dem Fall, daß keine Verteilung vorgenommen wird, die ersten fünf höchstwertigen Bits jo verfügbar, um den Speichermodul zu identifizieren, der ausgewählt wird. Bei einem System mit Achtwege-Verteilung werden die Moduln durch die ersten zwei höchstwertigen Bits zusammen mit dem dritten, vierten und fünften niedrigstwertigen Bit identifiziert. Die Speicheradresse weist 11 Bits auf, die den Cache-Block im Cache-Speicher in dem ausgewählten Modul identifizieren, und zwei Bits werden benötigt zur Identifizierung des Cache-Worts innerhalb des identifizierten Cache-Blocks.
Eine Verwirklichung der oben diskutierten Schemata in jedem Speichermodul wird in Fi g. 12 gezeigt, in der die Logik Adreßinformation mit Bezug auf die Bits XPAO bis XPA 2, PAh PA 2, und PAU bis PA 13 erhält, welche Bits, wie man oben sieht, die einzigen Bits sind, die für die Identifizierung der Modul- und Cache-Auswahl in allen Fällen mit oder ohne Verteilung der im Cache-Speicher zu speichernden Information dienen.
Das niedrige Bit 0, das niedrige Bit 1 und das niedrige Bit 2 repräsentieren das fünfte, vierte bzw. dritte am wenigsten signifikante Bit oder am niedrigstenwertige Bit der 18-Bit-Adresse. Die Hauptspeicheradresse benutzt alle drei niedrigen Bits als PA 11, PA 12 und PA 13 für ein Schema ohne Verteilung, sie benutzt nur das niedrige Bit 0 und das niedrige Bit 1 als PA 11 und PA12 für eine Zweiwege-Verteilung, sie benutzt nur das niedrige Bit 0 als PA11 für eine Vierwege-Verteilung und sie benutzt keines der drei niedrigen Bits für eine Achtwege-Verteilung. In jedem einzelnen Fall, wo eo PA11, PA12 und PA 13 nicht in der Hauptspeicheradresse verwendet werden, werden sie benutzt, um den richtigen Modul, der ausgewählt werden soll, zu identifizieren, wie oben diskutiert wurde.
Eine Anzahl von Schaltern 80 bis 87 wird benutzt, um geeignete Verbindungen zur Auswahl des gewünschten Speichermoduls sowohl für eine Situation ohne Verteilung als auch für eine mit Verteilung zu liefern.
Für ein System, das 32 8 K-Speichermoduln benutzt, wird deren Auswahl bestimmt durch geeignete Benutzung der Schalter 80, 81, 83, 85 und 87, welche in jeder einzelnen Situation der Einfachheit halber so betrachtet werden können, als wenn sie einen 5-Bit-Code zur Kennzeichnung eines ausgewählten von 32 Moduln repräsentieren. Die Stellung solcher Schalter in ihrer linken Lage, wie sie in der Zeichnung gezeigt ist, kann als Repräsentierung einer »0« bezeichnet werden und die Stellung auf der rechten Seite als »1«, wie in F i g. 12 dargestellt ist. Wenn beispielsweise eine Auswahl des dem niedrigsten Speichermodul benachbarten Moduls getroffen werden soll und dieser Modul dem 5-Bit-Code 00001 entspricht, sind die Schalter 80, 81, 83 und 85 in ihrer linken (oder »0«) Position, während der Schalter 87 in seiner rechten (oder »1«) Position ist.
Weiterhin liefert die Wahl der Stellung der Schalter 82, 84 und 86 ein geeignetes Mittel zur Auswahl einer geeigneten Betriebsweise mit Verteilung oder ohne Verteilung. Soll keine Verteilung stattfinden, sind alle die zuletzt genannten Schalter in ihrer linken (oder »N«) Stellung, während für eine Zweiwege-Verteilung nur der Schalter 86 in seine rechte (oder »I«) Lage gebracht ist, für eine Vierwege-Verteilung sind beide Schalter 84 und 86 in ihrer rechten Stellung, und für eine Achtwege-Verteilung sind alle drei Schalter 82, 84 und 86 in ihrer rechten Stellung.
Als weiteres Beispiel sind dann, wenn ein Modul, der durch den 5-Bit-Modul-Auswahlcode 00010 bei einer Zweiwege-Verteilung ausgewählt werden soll, die Schalter 80,81,83 und 87 ebenso wie die Schalter 82 und 84 in ihrer linken Stellung, während die Schalter 85 und 86 in ihrer rechten Stellung sind.
Als weiteres Beispiel sind dann, wenn der höchste Adressenblock der 32 Speichermoduln (repräsentiert durch 11111) bei einer Achtwege-Verteilung ausgewählt wird, alle Schalter 80 bis 87 in ihrerTechten Stellung.
Als Alternative können die Schalter durch Anschlüsse ersetzt werden, die in passender Weise durch geeignete Schaltdrahtverbindungen, wie in Fig. 13 gezeigt.
untereinander verbunden sind. Um zu illustrieren, wie solche Schaltdrahtverbindungen für besondere beispielhafte Selektionen angeordnet sind und um die spezielle beispielhafte Auswahl eines Zustands mit Verteilung oder ohne Verteilung zu illustrieren, sind alle Anschlüsse der F i g. 13 (d. h. entsprechend den Anschlüssen in den Spalten, die mit 90 bis 94 bezeichnet sind) in den F i g. 14, 15 und 16 in einem Schema aufgeführt und die Schaltdrahtverbindungen entsprechend den Schalterverbindungen für die drei oben mit Bezug auf die Fig. 12 diskutierten Beispiele sind in diesen Figuren gezeigt
So sind in F i g. 14 die Schaltdrahtverbindungen 95 zur Auswahl eines Moduls so angeschlossen, wie gezeigt, um eine Modulselektion entsprechend dem Modulselektionscode 00001 zu ergeben, während die Schaltdrehverbindungen 96 in der gezeigten Weise vorgenommen sind, um einen Zustand ohne Verteilung herzustellen.
In F i g. 15 sorgen die Schaltdrahtverbindungen 95 zur Modulselektion für die Auswahl eines Moduls entsprechend dem Modulauswahlcode 00010, während die Schaltdrahtverbindungen 96 für eine Zweiwege-Verteilung sorgen.
In F i g. 16 sorgen die Schaltdrahtverbindungen 95 zur Mc'dulauswahl für die Auswahl eines Moduls entsprechend dem Modulselektionscode 11111, während die Schaltdrahtverbindungen 96 für eine Achtwege-Verteilung sorgen.
In jedem Fall ist das Muster der Schaltdrahtverbindungen in Fig. 13 und das Muster der Schalterverbindüngen in Fig. 12, die für unterschiedliche Zustände erforderlich sind, aus den oben diskutierten Beispielen offenbar.
Die Erfindung eignet sich speziell für Kleinrechner (Mini-Computer). Die auf jedem Speichermodul angeordneten Verbindungsmittel gestatten es erfindungsgemäß wahlweise, entweder mit einer Verteilung der zi speichernden Information auf eine Mehrzahl vor Cache-Speichern zu arbeiten, oder ohne derartige Verteilung. Wenn zusätzliche Moduln zum Systerr hinzugefügt werden, wird automatisch ein zusätzliche! »Cache«-Speicher hinzugefügt und die Fähigkeit, eine Verteilung höherer Ordnung vorzunehmen, wird aui einfache Weise ermöglicht.
ίο Die in den einzelnen Figuren gezeigten Schaltunger sind teilweise in der obigen Beschreibung nicht irr einzelnen erläutert In diesen Fällen müssen die Schaltungseinzelheiten den Zeichnungen entnommer werden. Einige der in den Zeichnungen und in dei Beschreibung vorkommenden Begriffe aus der aus den amerikanischen stammenden Rechnerfachsprache wur den nicht ins Deutsche übersetzt
In einigen der Figuren sind mehrere UND-Gliedei zusammengezeichnet und ausgangsseitig in nicht nähei dargestellter Weise mit einem ODER-Glied verbunden vgl. beispielsweise Fig.5, oder es sind mehrere zusammengezeichnete ODER-Glieder ausgangsseitig ir nicht näher dargestellter Weise mit einem UND-Glied verbündet vgl. beispielsweise F i g. 8, linke untere Ecke. Diese vereinfachte zeichnerische Darstellung is· in der Weise zu verstehen, daß die einzelnen Ausgänge der UND-Glieder bzw. ODER-Glieder alle mit Eingän gen des ihnen nachgeschalteten ODER- bzw. UND Glieds verbunden sind. Diese vereinfachte Darstellung
jo wurde deswegen gewählt, weil die Verknüpfungsgliedei üblicherweise auf einem einzigen Halbleiterplättcher angeordnet sind und die geschilderten Verbindunger der Ausgänge mit den Eingängen des nachfolgender Verknüpfungsglieds intern vorgenommen sind.
Hierzu 13 Blatt Zeichnungen

Claims (10)

Patentansprüche:
1. Speichermodul für ein eine Mehrzahl von Speicherteilen und Hilfsspeicherteilen aufweisendes Datenverarbeitungsgerät mit Adressenverschränkung und Speicherüberlappung, wobei jeder Hauptspeicherteil mit einer ersten Geschwindigkeit betreibbar ist und jeder Hilfsspeicherteil mit einer zweiten Geschwindigkeit betreibbar ist, die höher ist ι ο als die erste Geschwindigkeit, zum zeitweiligen Speichern von ausgewählten Abschnitten der im Hauptspeicherteil gespeicherten Daten; mit einem Assoziativspeicher zum zeitweiligen Speichern von ausgewählten Hauptspeicheradressen und zum Vergleichen der gespeicherten Adressen mit einer neu empfangenen Adresse in einer Lese/Schreiboperation, um Vergleichsdaten zu erzeugen zur Bestim-•itiung, ob die durch die neu empfangene Adresse angeforderten Daten im Hilfsspeicher gespeichert sind; dadurch gekennzeichnet, daß ein Hauptspeicherteil (31), ein Hilfsspeicherteil (32) und ein Assoziativspeicher (34) Bestandteile eines zu einem Datenverarbeitungsgerät zu- oder abschaltbaren Speichermoduls sind und daß dem Speichermodul Schaltmittel (Schalter 80—87, Schakdrahtverbindungen 95,96) zum überlappenden Speichern von Informationen in den Hilfsspeicherteilen mehrerer Module zugeordnet sind.
2. Speichermodul nach Anspruch 1, dadurch gekennzeichnet, daß er eine Logik (Schalter 80', 81, 83, 85) aufweist, die auf eine Anzahl von Bits einer Adresse zur Bestimmung des ausgewählten Speichermoduls anspricht.
3. Speichermodul nach Anspruch 2, dadurch gekennzeichnet, daß die Logik veränderbare Schaltverbindungen (80—87,95,96) aufweist, die wahlweise in Übereinstimmung mit dem ausgewählten Speichermodul und in Übereinstimmung mit der Art, in der die Daten im Hilfsspeicher verteilt werden sollen, einstellbar sind, derart, daß bestimmte Bits der Adresse bestimmten Stellen der Moduladresse und der Speicheradresse innerhalb eines Moduls zugewiesen werden.
4. Speichermodul nach Anspruch 3, dadurch gekennzeichnet, daß die veränderbaren Schaltverbindungen eine Anzahl von Schaltern (80—87) aufweisen, die selektiv betätigbar sind.
5. Speichermodul nach Anspruch 3, dadurch gekennzeichnet, daß die veränderbaren Schaltverbindungen eine Anzahl von beweglichen Schaltdrahtverbindungen (95,96) aufweisen.
6. Datenverarbeitungsgerät mit Speichermoduln nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß es N Speichermoduln aufweist, daß die ausgewählten Datenabschnitte in einer N-Wege-Verteilung oder N-fach-Verteilung so gespeichert sind, daß jede aufeinanderfolgende Gruppe von N aufeinanderfolgenden Wörtern aufeinanderfolgend in den Hilfsspeichern (32) der N Spejchermoduln gespeichert ist
7. Datenverarbeitungsgerät nach Anspruch 6, dadurch gekennzeichnet, daß N = 8 ist.
8. Datenverarbeitungsgerät nach Anspruch 6, dadurch gekennzeichnet, daß N = 4 ist
9. Datenverarbeitungsgerät nach Anspruch 6, dadurch gekennzeichnet, daß N = 2 ist
10. Datenverarbeitungsgerät nach einem der Ansprüche 6 bis 9, dadurch gekennzeichnet, daß die Wortadressen, die benutzt werden, eine erste Anzahl von Bits zur Identifizierung eines ausgewählten Speichermoduls, eine zweite Anzahl von Bits zur Identifizierung einer Adresse im Hauptspeicherteil des ausgewählten Speichermoduls aufweisen und eine dritte Anzahl von Bits zur Identifizierung eines ausgewählten Worts im Hilfsspeicherteil des ausgewählten Moduls aufweisen.
DE2617408A 1975-04-25 1976-04-21 Speichermodul fur ein Datenverarbeitungsgerät mit Speicherhierarchie Expired DE2617408C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/571,573 US4056845A (en) 1975-04-25 1975-04-25 Memory access technique

Publications (3)

Publication Number Publication Date
DE2617408A1 DE2617408A1 (de) 1976-11-04
DE2617408B2 true DE2617408B2 (de) 1979-12-06
DE2617408C3 DE2617408C3 (de) 1980-08-28

Family

ID=24284238

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2617408A Expired DE2617408C3 (de) 1975-04-25 1976-04-21 Speichermodul fur ein Datenverarbeitungsgerät mit Speicherhierarchie

Country Status (5)

Country Link
US (1) US4056845A (de)
JP (1) JPS51128232A (de)
CA (1) CA1056954A (de)
DE (1) DE2617408C3 (de)
GB (1) GB1532278A (de)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5459846A (en) * 1988-12-02 1995-10-17 Hyatt; Gilbert P. Computer architecture system having an imporved memory
US5526506A (en) * 1970-12-28 1996-06-11 Hyatt; Gilbert P. Computer system having an improved memory architecture
US4954951A (en) * 1970-12-28 1990-09-04 Hyatt Gilbert P System and method for increasing memory performance
US4285040A (en) * 1977-11-04 1981-08-18 Sperry Corporation Dual mode virtual-to-real address translation mechanism
US4323968A (en) * 1978-10-26 1982-04-06 International Business Machines Corporation Multilevel storage system having unitary control of data transfers
GB2037039B (en) * 1978-12-11 1983-08-17 Honeywell Inf Systems Cache memory system
US4245304A (en) * 1978-12-11 1981-01-13 Honeywell Information Systems Inc. Cache arrangement utilizing a split cycle mode of operation
US4298929A (en) * 1979-01-26 1981-11-03 International Business Machines Corporation Integrated multilevel storage hierarchy for a data processing system with improved channel to memory write capability
DE3068498D1 (en) * 1979-05-09 1984-08-16 Int Computers Ltd Hierarchical data storage system
JPS5619575A (en) * 1979-07-25 1981-02-24 Fujitsu Ltd Data processing system having hierarchy memory
EP0039227A3 (en) * 1980-04-25 1982-09-01 Data General Corporation Data processing system
US4386399A (en) * 1980-04-25 1983-05-31 Data General Corporation Data processing system
CA1168377A (en) * 1980-04-25 1984-05-29 Michael L. Ziegler Data processing system having a memory system which utilizes a cache memory and unique pipelining techniques for providing access thereto
US4370710A (en) * 1980-08-26 1983-01-25 Control Data Corporation Cache memory organization utilizing miss information holding registers to prevent lockup from cache misses
US4464713A (en) * 1981-08-17 1984-08-07 International Business Machines Corporation Method and apparatus for converting addresses of a backing store having addressable data storage devices for accessing a cache attached to the backing store
DE3138972A1 (de) * 1981-09-30 1983-04-14 Siemens AG, 1000 Berlin und 8000 München Onchip mikroprozessorchachespeichersystem und verfahren zu seinem betrieb
US4442487A (en) * 1981-12-31 1984-04-10 International Business Machines Corporation Three level memory hierarchy using write and share flags
US4575814A (en) * 1982-05-26 1986-03-11 Westinghouse Electric Corp. Programmable interface memory
US4587610A (en) * 1984-02-10 1986-05-06 Prime Computer, Inc. Address translation systems for high speed computer memories
US4736293A (en) * 1984-04-11 1988-04-05 American Telephone And Telegraph Company, At&T Bell Laboratories Interleaved set-associative memory
US4783736A (en) * 1985-07-22 1988-11-08 Alliant Computer Systems Corporation Digital computer with multisection cache
US4794521A (en) * 1985-07-22 1988-12-27 Alliant Computer Systems Corporation Digital computer with cache capable of concurrently handling multiple accesses from parallel processors
US4953073A (en) * 1986-02-06 1990-08-28 Mips Computer Systems, Inc. Cup chip having tag comparator and address translation unit on chip and connected to off-chip cache and main memories
US5446844A (en) * 1987-10-05 1995-08-29 Unisys Corporation Peripheral memory interface controller as a cache for a large data processing system
AU2278688A (en) * 1988-02-16 1989-08-17 Sun Microsystems, Inc. Distributed cache architecture
GB9008145D0 (en) * 1989-05-31 1990-06-06 Ibm Microcomputer system employing address offset mechanism to increase the supported cache memory capacity
US5053991A (en) * 1989-10-06 1991-10-01 Sanders Associates, Inc. Content-addressable memory with soft-match capability
US5125098A (en) * 1989-10-06 1992-06-23 Sanders Associates, Inc. Finite state-machine employing a content-addressable memory
US5434990A (en) * 1990-08-06 1995-07-18 Ncr Corporation Method for serially or concurrently addressing n individually addressable memories each having an address latch and data latch
ATE179810T1 (de) * 1991-03-01 1999-05-15 Advanced Micro Devices Inc Mikroprozessor mit externem speicher
JPH04293135A (ja) * 1991-03-20 1992-10-16 Yokogawa Hewlett Packard Ltd メモリアクセス方式
US5630098A (en) * 1991-08-30 1997-05-13 Ncr Corporation System and method for interleaving memory addresses between memory banks based on the capacity of the memory banks
US5581734A (en) * 1993-08-02 1996-12-03 International Business Machines Corporation Multiprocessor system with shared cache and data input/output circuitry for transferring data amount greater than system bus capacity
TW321744B (de) * 1994-04-01 1997-12-01 Ibm
JPH08314794A (ja) * 1995-02-28 1996-11-29 Matsushita Electric Ind Co Ltd 安定記憶装置へのアクセス待ち時間を短縮するための方法およびシステム
US5752260A (en) * 1996-04-29 1998-05-12 International Business Machines Corporation High-speed, multiple-port, interleaved cache with arbitration of multiple access addresses
US5987581A (en) * 1997-04-02 1999-11-16 Intel Corporation Configurable address line inverter for remapping memory
US6101589A (en) * 1998-04-01 2000-08-08 International Business Machines Corporation High performance shared cache
US6661421B1 (en) 1998-05-21 2003-12-09 Mitsubishi Electric & Electronics Usa, Inc. Methods for operation of semiconductor memory
US6559851B1 (en) 1998-05-21 2003-05-06 Mitsubishi Electric & Electronics Usa, Inc. Methods for semiconductor systems for graphics processing
US6535218B1 (en) 1998-05-21 2003-03-18 Mitsubishi Electric & Electronics Usa, Inc. Frame buffer memory for graphic processing
US6504550B1 (en) 1998-05-21 2003-01-07 Mitsubishi Electric & Electronics Usa, Inc. System for graphics processing employing semiconductor device
US7310706B1 (en) 2001-06-01 2007-12-18 Mips Technologies, Inc. Random cache line refill
US7136960B2 (en) * 2002-06-14 2006-11-14 Integrated Device Technology, Inc. Hardware hashing of an input of a content addressable memory (CAM) to emulate a wider CAM
US7171439B2 (en) * 2002-06-14 2007-01-30 Integrated Device Technology, Inc. Use of hashed content addressable memory (CAM) to accelerate content-aware searches
US7290084B2 (en) * 2004-11-02 2007-10-30 Integrated Device Technology, Inc. Fast collision detection for a hashed content addressable memory (CAM) using a random access memory
FR2989504B1 (fr) * 2012-04-12 2014-04-25 St Microelectronics Rousset Registre protege contre des attaques par injection de fautes

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR1541240A (fr) * 1966-11-10 Ibm Accès à chevauchement et à intercalation pour mémoires à plusieurs vitesses
US3588829A (en) * 1968-11-14 1971-06-28 Ibm Integrated memory system with block transfer to a buffer store
US3588839A (en) * 1969-01-15 1971-06-28 Ibm Hierarchical memory updating system
US3699530A (en) * 1970-12-30 1972-10-17 Ibm Input/output system with dedicated channel buffering
US3693165A (en) * 1971-06-29 1972-09-19 Ibm Parallel addressing of a storage hierarchy in a data processing system using virtual addressing
US3764996A (en) * 1971-12-23 1973-10-09 Ibm Storage control and address translation
US3829840A (en) * 1972-07-24 1974-08-13 Ibm Virtual memory system
US3820078A (en) * 1972-10-05 1974-06-25 Honeywell Inf Systems Multi-level storage system having a buffer store with variable mapping modes
US3810110A (en) * 1973-05-01 1974-05-07 Digital Equipment Corp Computer system overlap of memory operation
US3866183A (en) * 1973-08-31 1975-02-11 Honeywell Inf Systems Communications control apparatus for the use with a cache store
US3840862A (en) * 1973-09-27 1974-10-08 Honeywell Inf Systems Status indicator apparatus for tag directory in associative stores

Also Published As

Publication number Publication date
JPS51128232A (en) 1976-11-09
DE2617408A1 (de) 1976-11-04
US4056845A (en) 1977-11-01
CA1056954A (en) 1979-06-19
DE2617408C3 (de) 1980-08-28
GB1532278A (en) 1978-11-15

Similar Documents

Publication Publication Date Title
DE2617408C3 (de) Speichermodul fur ein Datenverarbeitungsgerät mit Speicherhierarchie
DE3909896C2 (de)
DE3834759C2 (de)
DE1956604C3 (de) Datenverarbeitungsanlage
DE3588009T2 (de) Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung.
DE10343525B4 (de) Verfahren zum Betreiben von Halbleiterbausteinen, Steuervorrichtung für Halbleiterbausteine und Anordnung zum Betreiben von Speicherbausteinen
DE3032630C2 (de) Halbleiterspeicher aus Speicherbausteinen mit redundanten Speicherbereichen und Verfahren zu dessen Betrieb
EP0908893B1 (de) Speicherarchitektur mit Mehrebenenhierarchie
EP0013737A1 (de) Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem
DE102005056351A1 (de) Speichervorrichtung, Speichersteuereinheit und Verfahren zum Betreiben derselben
DE3724317A1 (de) Speicherzugriffssystem
DE2803989A1 (de) Wahlfreie zugriffsspeichervorrichtung fuer digitale daten
DE2359178A1 (de) Speicheranordnung
DE2163342A1 (de) Hierarchische binäre Speichervorrichtung
DE10147592A1 (de) System und Verfahren zum Vorsehen geichzeitiger Zeilen- und Spaltenbefehle
DE2310631C3 (de) Speicherhierarchie für ein Datenverarbeitungssystem
DE2404146A1 (de) Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem
DE102013018135B4 (de) Adressenbit-Wiederabbildungsschema zur Reduzierung einer Zugriffsauflösung von DRAM-Zugriffen
DE69011867T2 (de) Nibble-mode-d-ram-festkörperspeichereinrichtung.
DE1922304A1 (de) Datenspeichersteuergeraet
DE69025782T2 (de) Registerbankschaltung
EP0009625B1 (de) Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher
DE4302754C1 (de) Monolithisch integrierte Datenspeicheranordnung und Verfahren zu deren Betrieb
EP0012207B1 (de) Speicherhierarchie mit Ladungsverschiebungsspeicher
CH495584A (de) Datenverarbeitungsanlage

Legal Events

Date Code Title Description
OGA New person/name/address of the applicant
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee