DE3588009T2 - Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung. - Google Patents
Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung.Info
- Publication number
- DE3588009T2 DE3588009T2 DE3588009T DE3588009T DE3588009T2 DE 3588009 T2 DE3588009 T2 DE 3588009T2 DE 3588009 T DE3588009 T DE 3588009T DE 3588009 T DE3588009 T DE 3588009T DE 3588009 T2 DE3588009 T2 DE 3588009T2
- Authority
- DE
- Germany
- Prior art keywords
- output
- memory
- data
- cache
- parallel
- 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 - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims description 9
- 238000000034 method Methods 0.000 title claims description 7
- 230000004044 response Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 3
- BLUGYPPOFIHFJS-UUFHNPECSA-N (2s)-n-[(2s)-1-[[(3r,4s,5s)-3-methoxy-1-[(2s)-2-[(1r,2r)-1-methoxy-2-methyl-3-oxo-3-[[(1s)-2-phenyl-1-(1,3-thiazol-2-yl)ethyl]amino]propyl]pyrrolidin-1-yl]-5-methyl-1-oxoheptan-4-yl]-methylamino]-3-methyl-1-oxobutan-2-yl]-3-methyl-2-(methylamino)butanamid Chemical compound CN[C@@H](C(C)C)C(=O)N[C@@H](C(C)C)C(=O)N(C)[C@@H]([C@@H](C)CC)[C@H](OC)CC(=O)N1CCC[C@H]1[C@H](OC)[C@@H](C)C(=O)N[C@H](C=1SC=CN=1)CC1=CC=CC=C1 BLUGYPPOFIHFJS-UUFHNPECSA-N 0.000 description 26
- 208000007934 ACTH-independent macronodular adrenal hyperplasia Diseases 0.000 description 26
- 102100038742 Cytochrome P450 2A13 Human genes 0.000 description 16
- LFERELMXERXKKQ-KMXXXSRASA-N Fenugreekine Chemical compound NC(=O)C1=CC=CC([C@H]2[C@@H]([C@H](O)[C@@H](COP(O)(=O)OP(O)(=O)OC[C@@H]3[C@H]([C@@H](O)[C@@H](O3)N3C4=NC=NC(N)=C4N=C3)O)O2)O)=N1 LFERELMXERXKKQ-KMXXXSRASA-N 0.000 description 16
- 101000957389 Homo sapiens Cytochrome P450 2A13 Proteins 0.000 description 16
- 238000012546 transfer Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0607—Interleaved addressing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/04—Addressing variable-length words or parts of words
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0862—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
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)
- Memory System (AREA)
Description
- Die vorliegende Erfindung betrifft Speichereinrichtungen und ein Verfahren zum Betreiben derselben in einem Digitaldatenverarbeitungs- oder Rechnersystem und bezieht sich auf den Zugriff auf die Speichereinrichtungen.
- Ein bei der Auslegung von Rechner- und Datenverarbeitungssystemen immer wieder auftauchendes Problem ist die Bereitstellung von Mitteln und Wegen zur Verbesserung der Leistungsfähigkeit eines Systems, z.B. der Speicherkapazität oder der Systembetriebsgeschwindigkeit, ohne daß das System in größerem Umfang geändert oder umgebaut werden müßte.
- Nach dem Stand der Technik ist bekannt, daß die Systemspeicherkapazität ohne weiteres erweiterbar ist, ohne daß das System bedeutend geändert werden muß. Bei vielen Systemen ist eine Erweiterung des Speichers durch einfaches Einsetzen zusätzlicher Speicherkarten je nach Bedarf möglich.
- Die Erhöhung der Betriebsgeschwindigkeit des Systems ist jedoch schwieriger, insofern die Faktoren, welche die Systembetriebsgeschwindigkeit, also die Geschwindigkeit, mit der das System Daten und Befehle bearbeiten kann, in großem Maße von der Auslegung der Speicher- und Prozessorelemente des Systems abhängig ist. Die Prozessor- und Speicherelemente des Systems sind integrierende Teile des Systems und eine Änderung eines Teils führt im allgemeinen zu bedeutenden Änderungen des Systems als Ganzes. Beispielsweise kann die Systemgeschwindigkeit durch die Geschwindigkeit beschränkt sein, mit welcher der Systemrechner Daten und Befehle empfangen und bearbeiten kann. Eine Erhöhung der Rechnergeschwindigkeit kann den Einbau eines verschiedenen Rechners erfordern, was seinerseits eine Änderung der Systembetriebsprogramme erforderlich machen kann, also der den gesamten Systembetrieb kontrollierenden Überwachungsprogramme.
- Die Hauptbeschränkung der Systembetriebsgeschwindigkeit geht jedoch in den meisten Fällen von der Geschwindigkeit aus, mit der Befehle und Daten vom Speicher zum Systemrechner übertragen werden können. Die Übertragungsgeschwindigkeit zwischen Speicher und Rechner wird in den meisten Fällen durch den Einbau eines schnelleren Speichers oder eines schnellen, komplexen Cachespeichersystems zwischen Systemspeicher und Rechner verbessert. Der Austausch gegen einen schnellen Speicher oder die Hinzufügung eines Cachespeichers macht jedoch häufig Änderungen an den Rechner- und Systemspeicherschnittstellen notwendig und erfordert häufig entsprechende Änderungen oder Ergänzungen der Systembetriebsprogramme.
- Ein Versuch zur Erhöhung der Übertragungsgeschwindigkeit zwischen Speicher und Rechner ist in der US-Patentschrift 4,156, 290 beschrieben. Eine Adressierungseinrichtung für eine Speichereinrichtung entsprechend dem Oberbegriff von Anspruch 1 enthält eine Anzahl M von Speicherbänken mit getrennten Datenausgangsregistern und -pfaden, wobei die genannten Datenausgangspfade als einzelner Ausgangspfad mit der Breite einer Bank konfiguriert sind. Die Bänke weisen eine Kapazität von 1024 8-Bit-Wörtern auf und jede hat einen getrennten Ausgangspfad; die genannten Datenausgangspfade sind über die steuerbaren Ausgangsregister zu einem einzelnen, eine Bank breiten Ausgangspfad 23 verbunden. Die Bänke sind an einen 10-Bit-Adressenkanal angeschlossen, wogegen Adressensteuerung und Adressendecodierer die aktuelle Adresse über einen 13- Bit-Kanal empfangen. Der Decodierer empfängt die drei niedrigstwertigen Bit der aktuellen Adresse. Diese drei Bit werden zur Adressierung einer der Bänke decodiert. Die aktuelle Adresse, die für einen sequentiellen Speicher mit der Breite eine Bank und der Tiefe M (=8) benutzt werden könnte, wird so rekonfiguriert, daß die Speichereinrichtung als ein paralleler Speicher mit der Breite M Bänke und der einfachen Tiefe adressiert wird, derart, daß Informationen aus M Bankspeicherplätzen parallel ausgelesen werden. Der Decodierer steuert ferner Einrichtungen zum Ansteuern bestimmter der parallelen Bankausgangspfade für die Verbindung mit dem genannten einzelnen, eine Bank breiten Ausgangspfad. Diese Konfiguration ergibt eine Erhöhung der Datenübertragungsgeschwindigkeit zwischen dem Hauptspeicher und der Zentraleinheit und benötigt keine bedeutenden Rechner- oder Systemspeicherschnittstellen.
- Der in den beigefügten Patentansprüchen definierten Erfindung liegt die Aufgabe zugrunde, für ein Datenverarbeitungssystem eine Speichereinrichtung und ein Verfahren zu ihrem Betrieb zu schaffen, welche die Geschwindigkeit der Informationsübertragung zwischen dem Systemspeicher und dem Systemrechner und dadurch ferner die Betriebsgeschwindigkeit des Systems erhöhen, ohne daß bedeutende Systemänderungen erforderlich sind.
- Der Systemspeicher ist von einer Vielzahl Speicherbänke gebildet, die je ein oder mehrere Wörter breit sind und je einen getrennten Datenausgangspfad aufweisen.
- Bei einer ersten, langsameren Konfiguration (die nicht Teil der vorliegenden Erfindung ist), adressiert eine Speichersteuerung die Speicherbänke als ein sequentieller Speicher, derart, daß jeweils aus einem Adressenplatz gelesen wird, und die Ausgangsdatenpfade der Speicherbänke sind zu einem einzelnen, eine Bank breiten Datenpfad zum Systemrechner konfiguriert. Wenn z.B. jede Bank ein Wort breit und N Wörter tief ist und M Speicherbänke vorhanden sind, erscheint der Speicher als ein sequentieller Speicher mit der Breite ein Wort und der Tiefe M×N Wörter, aus dem jeweils ein Wort ausgelesen werden kann. Die Informationsübertragungsgeschwindigkeit ist dadurch durch die Geschwindigkeit bestimmt, mit der ein Wort aus einer Bank gelesen werden kann.
- In einer zweiten Konfiguration ist der Speicher durch Hinzufügen einer Adressenübersetzungseinrichtung und einer Busrekonfigurierungseinrichtung umkonstruiert. Der Adressenübersetzer liefert Adressen zum parallelen Adressieren von M Bänken, so daß bei jeder Leseoperation M Speicherplätze gelesen werden. Die Busrekonfigurierungseinrichtung rekonfiguriert die Bankausgangsbusse zu parallelen Bussen, das heißt zu M parallelen Bussen und stellt eine Auswahleinrichtung bereit, die in Abhängigkeit von der Adressierungseinrichtung die Informationen, die an einem angesteuerten Bankausgangsbus anstehen, als den Speicherausgang des Systemrechners liefert. Unter der Annahmne desselben Beispiels wie zuvor, ist der Speicher dadurch zu einem parallelen Speicher mit der Breite M Wörter und der Tiefe N Wörter rekonfiguriert, bei dem jeweils M Wörter aus dem Speicher ausgelesen werden können. Die Informationsübertragungsgeschwindigkeit ist dadurch über die der seguentiellen Speicherkonfiguration hinaus erhöht.
- Sowohl bei der seguentiellen als auch der parallelen Konfiguration umfaßt der Datenpfad zum Systemrechner, das heißt der kombinierte, einfach breite Pfad der sequentiellen Konfiguration und der Auswahleinrichtungsausgang der parallelen Konfiguration, einen direkten Datenpfad vom Speicher zum Rechner. Das heißt, ein Pfad, über den aus dem Speicher ausgelesene Informationen beim Auslesen aus dem Speicher dem Rechner im wesentlichen direkt bereitgestellt werden.
- Erfindungsgemäß ist für den Speicher bei der zweiten Konfiguration ein Cachepfad vorgesehen, der zum direkten Datenpfad, das heißt von den parallelen Bankausgängen zum Auswahleinrichtungsausgang, parallel geschaltet ist, um gegenüber gegenwärtig verarbeiteten Informationen vorweggenommen zu speichern. Die Informationsübertragungsgeschwindigkeit ist dadurch weiter erhöht, insofern als auf Informationen aus dem Cachespeicher, der im wesentlichen ein kleiner, schneller Speicher ist, statt aus dem Systemspeicher zugegriffen werden kann.
- Eine Ausführungsform der Erfindung wird mit näheren Einzelheiten unter Bezugnahme auf die Zeichnungen beschrieben, in denen zeigt:
- Fig. 1 ein Teilblockschaltbild eines Systems mit dem rekonfigurierbaren Speicher in der cachefreien Konfiguration, und
- Fig. 2 ein Teilblockschaltbild eines Systems mit dem rekonfigurierbaren Speicher in der Cache-Konfiguration.
- Die nachstehende Beschreibung zeigt den Aufbau und die Arbeitsweise eines Speichersystems mit einem Cachespeicher. Das System und der Speicher werden zuerst in der cachefreien Grundkonfiguration und dann nach Rekonfiguration durch den Cachespeicher, das heißt in der Cache-Konfiguration beschrieben. Wie weiter oben unter Bezugnahme auf die Zeichnungen angegeben, ist die cachefreie Konfiguration in Fig. 1, die Cache-Konfiguration in Fig. 2 dargestellt. Die Fig. 1 und 2 können zur weiteren Erläuterung der nachstehend in Einzelheiten beschriebenen Konzepte nebeneinander angeordnet werden.
- Es wird zuerst Bezug genommen auf die in Fig. 1 dargestellte Grundkonfiguration. Ein Rechnersystem 10 umfaßt einen Hauptspeicher (MM) 12 zum Speichern von Daten und Befehlen und eine Zentraleinheit (CPU) 14, die ansprechend auf die Befehle Operationen an den Daten auszuführen vermag. Zwischen den MM 12 und die CPU 14 ist eine Speicher- und Bussteuerung (MBC) 16 zwischengeschaltet, welche die Übertragung von Befehlen und Daten zwischen dem MM 12 und der CPU 14 steuert.
- Die MEC 16 spricht auf Lese/Schreibadressen (CPAD) an, die von der CPU 14 über einen CPAD-Bus 18 geliefert werden, und stellt für den MM 12 entsprechende Lese/Schreibadressen (MMAD) über einen MMAD-Bus 20 bereit. Der MM 12 und die MBC 16 sprechen auf die zugehörigen MMAD- und CPAD-Adressen an, derart, daß Hauptspeicher-Lesedaten (MMRD), das heißt Daten und Befehle, vom MM 12 an die MBC 16 über MMRD-Busse 22-1 und 22-2 bzw. entsprechende Zentraleinheitsdaten (CPD) von der MBC 16 an die CPU 14 über einen CPD-Bus 24 ausgelesen werden. Der MM 12 und die MBC 16 sprechen auf ähnliche Weise auf MMAD- und CPAD-Adressen an, derart, daß Hauptspeicher- Schreibdaten (MMWD) von der CPU 14 über einen MMWD-Bus 26 in den MM 12 geschrieben werden.
- Gemäß Fig. 1 ist der MM 12 in der cachefreien Grundkonfiguration von einer oder mehreren Speicherbänken (MB) 28 gebildet. Aus Gründen der Erläuterung im Vergleich mit der nachstehenden Beschreibung des cache-rekonfigurierten MM 12 ist der MM 12 in der Grundkonfiguration mit zwei MB 28 dargestellt, welche mit MB 28-1 und MB 28-2 bezeichnet sind. Jede MB 28 umfaßt beim gezeigten Beispiel eine Speicherbank mit der Breite ein Wort und der Tiefe N Wörter mit getrennten Eingangsadressen- und Datenpfaden MMAD 20-1 bzw. MMAD 20-2 und MMWD 26-1 bzw. MMWD 26-2 sowie getrennten Ausgangsdatenpfaden MMRD 22-1 bzw. MMRD 22-2. Die Eingangs- und Ausgangsdatenpfade MB 28-1 und MB 28-2 sind je ein Wort breit.
- Beim gezeigten Beispiel kann das System 10 ein 32-Bit-System sein, das heißt, jedes Wort kann 32 Bit Befehls- oder Dateninformationen enthalten, wogegen N gleich 262 144 Wörter sein kann. Als weiteres Beispiel kann jedes in einer MB 28 gespeicherte Wort 32 Informationsbit plus 7 ERCC-Bit oder 39 Bit enthalten. Aus Gründen der Übersichtlichkeit in der nachstehenden Beschreibung bleiben jedoch die ERCC-Bit und die Funktionen von MM 12 und MBC 16 unbeachtet.
- Gemäß Fig. 1 ist der MMAD-Ausgang der MBC 16 von der Speicheradressiereinrichtung (MA) 29 über den MMAD-Bus 20 mit den Adresseneingängen MMAD 20-1 und MMAD 20-2 der MB 28-1 und der MB 28-2 parallel verbunden, damit jeder MMAD-Ausgang der MBC 16 beiden MB 28-1 und MB 28-2 gleichzeitig zugeleitet wird. Die MA 29 ist im wesentlichen ein Pufferspeicher, kann jedoch bestimmte Adressenübersetzungsfunktionen ausführen. Die in Abhängigkeit von jeder von der CPU 14 bereitgestellten CPAD- Adresse von der MA 29 bereitgestellten MMAD-Adressen bezeichnen einzelne Adressenplätze oder Wörter in den MB 28-1 und 28-2. Aus jeder CPAD-Adresse ergibt sich daher die Ansteuerung eines einzelnen Wortes im MM 12.
- Bei der in Fig. 1 dargestellten cachefreien Grundkonfiguration sind in der MBC 16 die getrennten ein Wort breiten Datenausgangspfade MMRD 22-1 und 22-2 der MB 28-1 28-2 über eine Daten-ODER-Verknüpfungseinrichtung (DOR) 30 zu einem einzelnen ein Wort breiten Ausgangsdatenpfad MMRD 22 konfiguriert. Die DOR 30 kann eine ein Wort breite ODER-Verknüpfungsschaltung oder z.B. eine einfache festverdrahtete ODER- Verknüpfung von MMRD 22-1 und 22-2 sein, wenn MB 28-1 und MB 28-2 mit Ausgangstreiberschaltungen mit drei Ausgangszuständen oder mit offenem Kollektor versehen sind. Weil bei jeder Leseoperation jede von der MA 29 an den MM 12 gesandte MMAD ein einziges aus dem MM 12 auszulesendes Wort abruft, erscheint auf den MMRD-Bussen 22-1 und 22-2 nur ein entsprechendes Ausgangswort. Es entstehen somit in der DOR 30 keine gleichzeitig nicht zulässige Datenausgänge, und die bei jeder Operation aus dem MM 12 ausgelesenen Einzelwörter erscheinen auf dem MMRD-Bus 22. Auf dem MMRD-Bus 22 anstehende Wörter werden, im wesentlichen durch eine Pufferoperation, über einen Direkt-Lese-Datenpfad (DIRD) 32 zum CPD-Bus 24 und zur CPU 14 übertragen.
- Bei der cachefreien Konfiguration sind daher die MB 28-1 und MB 28-2 hinsichtlich sowohl der Adressierung als auch der Datenausgabe durch die MBC 16 funktionell sequentiell konfiguriert, so daß der MM 12 von der Funktion her von einem ein Wort breiten und 2×N Wörter tiefen Speicher gebildet ist. Eine schematische Darstellung der cachefreien seguentiellen Konfiguration der MB 28-1 und MB 28-2 als ein ein Wort breiter und 2xN Wörter tiefer Speicher ist in Fig. 1 über dem MM 12 dargestellt.
- Alle Leseoperationen von Wörtern aus dem MM 12 durch die CPU 14 in der cachefreien Grundkonfiguration betreffen daher einzelne Wörter, und die Datenübertragungsgeschwindigkeit zwischen dem MM 12 und der CPU 14 wird daher durch die Geschwindigkeit bestimmt, mit der Wörter aus dem MM 12 ausgelesen werden.
- Es sei darauf hingewiesen, daß, weil die CPU 14 beim gezeigten Beispiel auf der Basis einzelner Wörter arbeitet, alle Datenschreiboperationen von der CPU 14 in den MM 12 üblicherweise aus einzelnen Wörtern bestehen. Die Dateneingangspfade MMWD 26-1 und MMWD 26-2 von der MB 28-1 bzw. 28-2 sind daher mit dem MMWD-Bus 26 parallel verbunden und bilden einen ein Einzelwort breiten Datenpfad in die MB 28-1 bzw. die MB 28-2.
- Es sei ferner darauf hingewiesen, daß in der Grundkonfiguration einzelne Wortspeicherplätze im MM 12, d.h. in den MB 28- 1 und MB 28-2, zugewiesen sein und sequentiell adressiert werden können. Bei einer alternativen Ausführungsform oder wie nachstehend hinsichtlich der Cache-Rekonfiguration des MM 12 beschrieben, können ungerade Adreßplätze beispielsweise in der MB 28-1, dagegen-gerade Adreßplätze in der MB 28-2 zugewiesen sein.
- Es wird nunmehr auf Fig. 2 Bezug genommen, in der das Rechnersystem 10 in der Cache-Konfiguration dargestellt ist. Wie weiter oben im Zusammenhang mit der Grundkonfiguration beschrieben, weist das System 10 eine CPU 14 und einen MM 12 auf. Statt einer oder mehrerer MB 28 enthält der MM 12 jedoch zwei oder ein Mehrfaches von zwei MB 28, und die MBC 16 ist durch eine Speicherbussteuerung/Cache-Einrichtung (MBC/C) 34 ersetzt.
- Wie sich aus einem Vergleich der Fig. 1 und 2 ergibt und weiter unten beschrieben wird, führt der Ersatz der MBC 16 durch die MBC/C 34 zur Rekonfiguration der Datenausgangspfade des MM 12, das heißt der MMRD 22-1 und MMRD 22-2, durch die MBC/C 34. Die Rekonfiguration der MMRD 22-1 und 22-2 durch die MBC/C 34 trennt die MMRD 22-1 und 22-2 in getrennte, parallele, ein Wort breite Datenausgangspfade von der MB 28-1 bzw. der MB 28-2, so daß der Datenpfad vom MM 12 zur MBC/C 34 zwei Wort breit ist. Wie weiter unten in Verbindung mit einer weiteren, detaillierteren Beschreibung der Bauteile von MBC/C 34 beschrieben wird, sind MMRD 22-1 und MMRD 22-2 in getrennte parallele Pfade durch einen Multiplexer (MUX) 38 rekonfiguriert, der die DOR 30 der MBC 16 ersetzt.
- Die MBC/C 34 führt ferner eine Übersetzungsoperation an den von der CPU 14 bereitgestellten CPAD-Adressen aus, damit für die geänderte Konfiguration des MM 12 geeignete entsprechende MMAD zur Verfügung-stehen. Die Konfigurationen und Funktionen aller übrigen Daten- und Adressenpfade erfahren keine Änderung gegenüber der cachefreien Konfiguration, ebenso wie die internen Operationen und die Schnittstellen der MB 28 und der CPU 14.
- Wie vorstehend hinsichtlich der cachefreien Konfiguration beschrieben wurde, arbeitet die CPU auf der Basis von Einzelwörtern und folglich beziehen sich die von der CPU 14 der MBC/C 34 bereitgestellten CPAD-Adressen auf Einzelwörter. Jedoch kann irgendein bestimmtes Einzelwort als ein Glied eines Ungerade/Gerade-Wortpaares betrachtet werden, das heißt, eines Wortpaares, in dem ein Wort des Paares durch eine ungerade Adresse und das andere Wort des Paares durch die benachbarte gerade Adresse oder umgekehrt bezeichnet sind. Die Adressen der beiden Wörter eines solchen Paares unterscheiden sich durch ein Bit, das heißt ein ungerades/gerades Bit, das ein bestimmtes Wort als das ungerade oder das gerade Wort eines Paares bezeichnet.
- Die von der MBC/C 34 durchgeführte Adressenübersetzungsoperation wird von einem Speicheradressenübersetzer (MAT) 36 ausgeführt, der die MA 29 der MBC 16 ersetzt. Der MAT 36 wandelt von der CPU 14 empfangene CPAD-Einzelwortreferenzen in MMAD- Adressen um, die sich auf entsprechende Ungerade/Gerade-Wortpaare beziehen, indem er das ungerade/gerade Bit der CPAD effektiv beseitigt. Aus einer von der CPU 14 bereitgestellten CPAD ergibt sich dadurch eine MMAD, die auf ein Ungerade/Gerade-Wortpaar verweist, in dem ein Wort des Paares das Wort ist, auf welches die anfängliche CPAD-Adresse verweist, und das andere Wort des Paares das entsprechende ungerade oder gerade Wort des Paares ist.
- Wie weiter oben beschrieben, wird der MM 12 in der Cache-Konfiguration wenigstens ein Paar MB 28, z.B. MB 28-1 und MB 28- 2 umfassen, und kann mehrere Paare MB 28 aufweisen, abhängig von dem durch die CPAD- und MMAD-Adressen definierten Adressenraum. In der Cache-Konfiguration sind die Adreßplätze im MM 12, das heißt in jedem MB 28-1/MB 28-2-Paar, zugeordnet, so daß alle ungeraden Adreßplätze z.B. in MB 28-1 liegen und alle geraden Adreßplätze in entsprechenden Adreßplätzen in der MB 28-2.
- Wie zuvor in bezug auf die MBC 16 beschrieben, ist der MMAD- Ausgang der MBC/C 34 über den MAT 36 und den MMAD-Bus 20 mit den Adresseneingängen MMAD 20-1 und 20-2 der MB 28-1 und 28-2 parallel so verbunden, daß jeder MMAD-Ausgang der MBC/C 34 beiden MB 28-1 und MB 28-2 gleichzeitig zugeleitet wird. Jede von der MBC/C 34 gelieferte MMAD-Ungerade/Gerade-Paar-Adresse spricht dadurch entsprechende parallele Speicherplätze in MB 28-1 und MB 28-2 an, so daß das entsprechende Ungerade/Gerade-Wortpaar zur gleichen Zeit und parallel auf den Datenausgangsbussen MMRD 22-1 und 22-2 des MM 12 ansteht.
- Jedes MB 28-1/MB 28-2-Paar wird dadurch sowohl hinsichtlich der Adressierung und der Datenausgangspfade durch die MBC 16 funktionell aus einer sequentiellen, ein Wort breiten Konfiguration in eine parallele, zwei Wort breite Konfiguration umgewandelt. Der Ersatz der MBC 16 durch die MBC/C 34 rekonfiguriert dadurch den MM 12 aus einem ein Wort breiten und 2×N Wort tiefen Speicher, in dem jede Leseoperation ein Wort liefert, in einen zwei Wort breiten und N Wort tiefen Speicher, in dem jede Leseoperation einen parallelen Ausgang von zwei Wörtern liefert. Die MBC/C 34 verdoppelt dadurch die Ausgangsdatengeschwindigkeit des MM 12 gegenüber der in Fig. 1 dargestellten cachefreien Konfiguration der MBC 16. Eine schematische Darstellung der parallelen Cache-Konfiguration der MB 28-1 und 28-2 als zwei Wort breiter und N Wort tiefer Speicher ist in Fig. 2 über dem MM 12 dargestellt.
- Zusätzlich zu der vorstehend beschriebenen Rekonfiguration des MM 12 stellt die MBC/C 34 ferner, wie nachstehend näher beschrieben wird, eine doppelten Datenpfad vom MM 12 zur CPU 14 bereit. Der erste Zweig des Pfades ist ein direkter Datenpfad für die Übertragung von Einzelwörtern direkt vom MMRD 22-1 oder MMRD 22-2 zum CPD-Bus 24 und entspricht dem Direkt- Lese-Datenpfad aus DOR 30 und DIRD 32 der MBC 16. Der parallel zum direkten Datenpfad geschaltete zweite Pfad enthält einen Cachespeicher zum Speichern von Wörtern unter Vorwegnahme des Bedarfs der CPU 14.
- Es wird zuerst auf den direkten Datenpfad Bezug genommen. Die DOR 30 der MBC 16 ist in der MBC/C 34 durch den Multiplexer (MUX) 38 ersetzt, der von den MMRD-Bussen 22-1 und 22-2 parallele Eingänge empfängt und einen ein Wort breiten Ausgang auf den MMRD-Bus 22 zum DIRD 32 der MBC/C 34 bereitstellt. Der Ausgang des DIRD 32 der MBC/C 34 ist seinerseits mit dem CPD-Bus 24 zur CPU 14 verbunden. Wie vorstehend beschrieben, ergibt jede dem MM 12 durch den MAT 36 gelieferte MMAD-Adresse ein Wortpaar, das parallel auf den MMRD-Bussen 22-1 und 22-2 erscheint, das heißt, an den Eingängen des MUX 38. Der MUX 38 spricht auf eine MUX-Adresse (MUXA) an, die der MAT 36 in Verbindung mit jeder MMAD bereitstellt, derart, daß das Einzelwort, auf das die entsprechende CPAD verweist, ausgewählt und auf den MMRD 22 übertragen wird. Die Einzelwörter werden dann durch den DIRD 32 auf den Einzelwort-Datenpfad CPD 24 der CPU 14 übertragen.
- Gemäß dem in Fig. 2 dargestellten parallelen Cache-Datenpfad enthält die MBC/C 34 einen CACHE-Speicher 40, der mit MUX 38 und DIRD 32 parallelgeschaltet ist. Der CACHE 40 weist einen zwei Wort breiten Dateneingangspfad auf, der von zwei parallelen Einzelwort-Pfaden gebildet ist, welche ausgehend von MMRD 22-1 und 22-2 zu den entsprechenden Eingängen des MUX 38 parallelgeschaltet sind. Der CACHE 40 weist einen ein Wort breiten Ausgangspfad auf, der an den CPD 24 in ODER-Konfiguration mit dem Ausgang des DIRD 32 verbunden ist.
- Jede CPAD-Adresse, welche die CPU 14 an die MBC/C 34 liefert, wird in der MBC/C 34 als CACHE-Eingangsadresse (CAD) zur Cacheeinrichtung der MBC/C 34 bereitgestellt. Wenn das adressierte Wort im CACHE 40 gegenwärtig resident ist, spricht CACHE 40 durch Bereitstellen einer zweckdienlichen Treffer/Fehlschlags-Anzeige (H/M) an den MAT 36 an. Der MAT 36 spricht auf einen Cachetreffer durch Sperren der Übertragung einer MMAD an den MM 12 an, und abhängig von der CAD liefert der CACHE 40 das angeforderte Wort über seinen Ausgang an den CPD 24 und somit an die CPU 14.
- Wenn sich das angeforderte Wort gegenwärtig nicht im CACHE 40 befindet, wird die CPAD in eine Ungerade/Gerade-Wortpaar-MMAD an den MM 12 übersetzt, und das angeforderte Wort und sein ihm zugeordnetes Paarwort werden aus dem MM 12 an die MBC/C 34 ausgelesen. Das angeforderte Einzelwort wird über den direkten Datenpfad, der vom MUX 38, dem DIRD 32 und dem CPD-Bus 24 gebildet ist, direkt zur CPU 14 übertragen. Die Wörter des Paares werden gleichzeitig in den CACHE 40 eingelesen und gespeichert. Leseanforderungen durch die CPU 14 führen dadurch zur Übertragung zusätzlicher Wörter zum CACHE 40, die über die sofort von der CPU 14 benötigten Wörter hinausgehen und im CACHE 40 unter Vorwegnahme des Bedarfs der CPU 14 gehalten werden. Bei einer weiteren bevorzugten Ausführungsform ist der CACHE 40 mit der in der Fachwelt bekannten Fähigkeit implementiert, Speicherzugriffszyklen, die von der CPU 14 nicht auf andere Weise benötigt werden, zum Lesen und Speichern noch weiterer Informationen aus dem MM 12 unter Vorwegnahme des Bedarfs der CPU 14 zu benutzen.
- Hinsichtlich Schreiboperationen von der CPU 14 an den MM 12 sei bei der Cache-Konfiguration darauf hingewiesen, daß bei der vorliegenden Ausführungsform der Schreibdatenpfad beibehalten wird, wie bei der cachefreien Konfiguration. Das heißt, daß die MMWD-Busse 26-1 und 26-2 vom MMWD-Bus 26 aus parallel als Einzelwort-Pfad an die MB 28 des MM 12 angeschlossen sind. Das Einschreiben der Wörter in einzelne Ungerade- oder Gerade-Adressenplätze im MM 12 geschieht durch eine Operation des MAT 36, der bei Schreiboperationen einen Schreibfreigabebefehl an die entsprechende ungerade oder gerade Adresse in den MB 28-Bänken leitet. Bei einer alternativen Ausführungsform kann jedoch der Schreibdatenpfad auf eine Mehrwortbreite vergrößert werden, die das gleichzeitige Schreiben einer entsprechenden Anzahl Wörter ermöglicht, wenn die CPU 14 die Fähigkeit hat, mehrere Wörter zu schreiben, oder so abgewandelt ist.
- Aus dem Ersatz der MBC 16 durch die MBC/C 34 ergibt sich dadurch eine Erhöhung der Datenübertragungsgeschwindigkeit zwischen dem MM 12 und der CPU 14, ohne daß der übrige Teil des Systems, insbesondere der MM 12 und die CPU 14, abgeändert oder umgebaut werden muß. Diese Verbesserung ergibt sich aus der effektiven Verdoppelung der Breite des Datenpfades vom MM 12 zur CPU mit einer entsprechenden Erhöhung der Datenübertragungsgeschwindigkeit und dem keine Systemänderung erfordernden Einschluß einer Cacheeinrichtung mit auch hier einer entsprechenden Erhöhung der Datenübertragungsgeschwindigkeit. Die MBC/C 34 erreicht diese Verbesserung durch die Rekonfiguration des MM 12 aus einem Einzelwort breiten und 2×N Wort tiefen Speicher in einen zwei Wort breiten und N Wort tiefen Speicher und durch Bereitstellen eines Cachedatenpfades parallel zu dem schon bestehenden direkten Datenpfad.
- Die vorliegende Erfindung kann in noch anderen speziellen Formen ausgeführt werden, ohne daß von ihrem Sinn oder wesentlichen Merkmalen abgewichen wird. Beispielsweise können die Dimensionen der Speicherbänke MB 28 von dem hier gezeigten Beispiel verschieden sein oder die vom System benutzte Wortbreite kann verschieden sein. Außerdem ist es nicht notwendig, daß alle MB 28-Paare in der Cache-Konfiguration tatsächlich ein Paar enthalten. Das heißt, daß ein oder mehrere "Paare" nur eine MB 28 aufweisen, und daß ein Teil des MM 12 in der Cache-Konfiguration als ein Einzelwort breiter Speicher erscheint. Bei einer noch anderen Ausführungsform der Cache-Konfiguration kann der MM 12 statt als Zwei-Wort breiter als Drei-, Vier-Wort breiter oder noch breiterer Speicher konfiguriert sein, mit einer entsprechenden Vervielfachung der MMRD-Busse 22. Auch kann jede MB 28 mehrere Wörter breit sein, mit einer entsprechenden Vergrößerung der Breite der Datenpfade und einer entsprechenden Vergrößerung der Anzahl Wörter, die bei jeder Lese- oder Schreiboperation aus jeder MB 28 ausgelesen oder in sie eingeschrieben werden. Bei einer noch weiteren Ausführungsform kann der Schreibdatenpfad von der CPU 14 zum MM 12 in der Breite so vergrößert sein, daß das gleichzeitige Schreiben mehrerer Wörter in den MM 12 möglich ist. Bei einer noch weiteren Ausführungsform kann die Breite der direkten und der Cachedatenpfade entsprechend der Breitenvergrößerung des rekonfigurierten Speichers vergrößert sein, wodurch das gesamte System von beispielsweise einem 8- Bit-Wort-System auf beispielsweise ein 16- oder 32-Bit-Wort- System umkonfiguriert werden kann.
Claims (4)
1. Speichereinrichtung (12) für ein Datenverarbeitungssystem,
das Mittel zum Erzeugen erster Adressen, die aus der
Speichereinrichtung auszulesenden Daten entsprechen, aufweist, wobei
die Speichereinrichtung eine Anzahl M von Speicherbänken (28-1,
28-2) mit getrennten Datenausgangspfaden (22-1, 22-2) aufweist,
eine auf die ersten Adressen ansprechende
Adressierungseinrichtung (36) zum Bereitstellen zweiter entsprechender Adressen, um
die Speicherbänke (28-1, 28-2) als einen parallelen M Bänke
breiten mal eine einzige Bank tiefen Speicher zu adressieren,
um Daten aus Speicherplätzen von M Bänken parallel auszulesen,
eine Einrichtung (38), um ansprechend auf eine Ausgabe der
Adressierungseinrichtung (36) die Datenausgangspfade (22-1,
22-2) der M Speicherbänke wahlweise mit einem Ausgangsdatenpfad
(24) der Speichereinrichtung zu verbinden, wobei der
Ausgangsdatenpfad (24) der Speichereinrichtung eine Breite von N hat,
wobei N kleiner als M ist,
gekennzeichnet durch
eine parallel zu der Einrichtung zum wahlweisen Verbinden
geschaltete Cache-Einrichtung (40) mit M Eingängen, von denen je
einer mit je einem der M parallelen Bankausgangsdatenpfade
(22-1, 22-2) verbunden ist, um auf den M parallelen
Bankausgangsdatenpfaden (22-1, 22-2) erscheinende Informationen zur
möglichen späteren Übertragung an den Ausgangspfad (24) der
Speichereinrichtung zu speichern, wobei die Cache-Einrichtung
(40) einen mit dem Ausgangsdatenpfad (24) der
Speichereinrichtung verbundenen Ausgang aufweist; und
dadurch gekennzeichnet, daß
die Cache-Einrichtung (40) auf eine erste Adresse anspricht,
die bereits in der Cache-Einrichtung (40) gespeicherte Daten
bezeichnet, um der Adressierungseinrichtung (36) eine
Trefferanzeige
bereitzustellen, und um die bezeichneten Daten an den
Ausgangsdatenpfad (24) der Speichereinrichtung auszugeben,
wobei die Trefferanzeige die Adressierungseinrichtung (36)
veranlaßt, das Ausgeben einer entsprechenden zweiten Adresse an
die M Speicherbänke (28-1, 28-2) zu sperren; und
dadurch, daß die Cache-Einrichtung (40) auf eine erste Adresse
anspricht, die nicht schon in der Cache-Einrichtung (40)
gespeicherte Daten bezeichnet, um der Adressierungseinrichtung
(36) eine Fehlschlagsanzeige zu liefern, wobei die
Fehlschlagsanzeige die Adressierungseinrichtung (36) veranlaßt, eine
entsprechende zweite Adresse an die M Speicherbänke (28-1, 28-2)
auszugeben, wodurch es der Cache-Einrichtung (40) ermöglicht
wird, die auf den M parallelen Bankausgangsdatenpfaden (22-1,
22-2) erscheinenden Daten parallel dazu zu speichern, daß die
Einrichtung (38) zum wahlweisen Verbinden einen ausgewählten
der M parallelen Bankausgangsdatenpfade (22-1, 22-2) mit dem
Ausgangsdatenpfad (24) der Speichereinrichtung verbindet.
2. Speichereinrichtung (12) nach Anspruch 1,
dadurch gekennzeichnet, daß die Ausgabe von der
Adressierungseinrichtung (36) zu der Einrichtung (38) zum wahlweisen
Verbinden mindestens ein geringstwertiges erstes Adreßbit aufweist.
3. Verfahren zum Betreiben einer Speichereinrichtung (12) in
einem Datenverarbeitungssystem, das Mittel zum Erzeugen erster
Adressen aufweist, die aus der Speichereinrichtung zu lesenden
Daten entsprechen, wobei die Speichereinrichtung eine Anzahl
M von speicherbänken (28-1, 28-2) mit getrennten
Datenausgangspfaden (22-1, 22-2) aufweist, eine auf die ersten Adressen
ansprechende Adressierungseinrichtung (36) zum Bereitstellen
zweiter entsprechender Adressen, um die Speicherbänke (28-1,
28-2) als einen parallelen M Bänke breiten mal eine einzige
Bank tiefen Speicher zum parallelen Lesen von Daten aus
Speicherplätzen der M Bänke zu adressieren, eine Einrichtung (38),
um die Datenausgangspfade (22-1, 22-2) der M Speicherbänke
ansprechend auf eine Ausgabe der Adressierungseinrichtung (36)
wahlweise mit einem Ausgangsdatenpfad (24) der
Speichereinrichtung
zu verbinden, wobei der Ausgangsdatenpfad (24) der
Speichereinrichtung eine Breite von N hat, wobei N kleiner als M
ist,
dadurch gekennzeichnet, daß
eine Cache-Einrichtung (40) bereitgestellt wird, die parallel
mit der Einrichtung ,zum wahlweisen Verbinden geschaltet ist,
die Cache-Einrichtung (40) M Eingänge hat, von denen je einer
mit je einem der M parallelen Bankausgangsdatenpfade (22-1,
22-2) verbunden ist, um auf den M parallelen
Bankausgangsdatenpfaden (22-1, 22-2) erscheinende Informationen für eine
mögliche spätere Übertragung zum Ausgangspfad (24) der
Speichereinrichtung zu speichern, wobei die Cache-Einrichtung (40) einen
mit dem Ausgangsdatenpfad (24) der Speichereinrichtung
verbundenen Ausgang hat;
eine Trefferanzeige von der Cache-Einrichtung (40) an die
Adressierungseinrichtung (36) in Reaktion auf eine erste
Adresse, die bereits in der Cache-Einrichtung (40) gespeicherte
Daten bezeichnet, bereitzustellen, wobei die Trefferanzeige die
Adressierungseinrichtung (36) veranlaßt, das Ausgeben einer
entsprechenden zweiten Adresse an die M Speicherbänke (28-1,
28-2) zu sperren; und
aus der Cache-Einrichtung (40) die bezeichneten Daten an den
Ausgangsdatenpfad (24) der Speichereinrichtung auszugeben;
eine Fehlschlagsanzeige von der Cache-Einrichtung (40) an die
Adressierungseinrichtung (36) in Reaktion auf eine erste
Adresse, die nicht bereits in der Cache-Einrichtung (40)
gespeicherte Daten bezeichnet, bereitzustellen, wobei eine
Fehlschlagsanzeige die Adressierungseinrichtung (36) veranlaßt, eine
entsprechende zweite Adresse an die M Speicherbänke (28-1, 28-2)
auszugeben;
entsprechende Daten von den M Speicherbänken (28-1, 28-2) an
die M parallelen Bankausgangsdatenpfade (22-1, 22-2)
auszugeben;
und mittels der Einrichtung (38) einen ausgewählten der M
parallelen Bankausgangsdatenpfade (22-1, 22-2) mit dem
Ausgangsdatenpfad (24) der Speichereinrichtung zu verbinden;
wodurch es der Cache-Einrichtung (40) ermöglicht wird, die auf
den M parallelen Bankausgangsdatenpfaden (22-1, 22-2)
auftretenden Daten parallel dazu zu speichern, daß die Einrichtung
(38) zum wahlweisen Verbinden einen ausgewählten der M
parallelen Bankausgangsdatenpfaden (22-1, 22-2) mit dem
Ausgangsdatenpfad (24) der Speichereinrichtung verbindet.
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die
Einrichtung (38) zum wahlweisen Verbinden abhängig von einer
Ausgabe der Adressierungseinrichtung (36) betrieben wird, die
mindestens ein geringstwertiges erstes Adreßbit aufweist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US06/568,997 US4747070A (en) | 1984-01-09 | 1984-01-09 | Reconfigurable memory system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3588009D1 DE3588009D1 (de) | 1995-05-24 |
DE3588009T2 true DE3588009T2 (de) | 1995-11-23 |
Family
ID=24273663
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE3588009T Expired - Lifetime DE3588009T2 (de) | 1984-01-09 | 1985-01-02 | Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung. |
Country Status (6)
Country | Link |
---|---|
US (1) | US4747070A (de) |
EP (1) | EP0149451B1 (de) |
JP (1) | JPS60147857A (de) |
AU (1) | AU577307B2 (de) |
CA (1) | CA1226673A (de) |
DE (1) | DE3588009T2 (de) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9405914D0 (en) * | 1994-03-24 | 1994-05-11 | Discovision Ass | Video decompression |
US5146572A (en) * | 1980-11-17 | 1992-09-08 | International Business Machines Corporation | Multiple data format interface |
US5111389A (en) * | 1987-10-29 | 1992-05-05 | International Business Machines Corporation | Aperiodic mapping system using power-of-two stride access to interleaved devices |
US5253358A (en) * | 1989-05-19 | 1993-10-12 | Compaq Computer Corporation | Cache memory expansion and transparent interconnection |
EP0398191A3 (de) * | 1989-05-19 | 1991-11-27 | Compaq Computer Corporation | Vierfachwort-, Multiplex-Seitenmodusspeicher und Cache-Speicher |
JPH04233642A (ja) * | 1990-07-27 | 1992-08-21 | Dell Usa Corp | キャッシュアクセスと並列的にメモリアクセスを行なうプロセッサ及びそれに用いられる方法 |
US5249277A (en) * | 1990-08-08 | 1993-09-28 | Compuadd Corporation | Optimized performance memory method and system |
US5301344A (en) * | 1991-01-29 | 1994-04-05 | Analogic Corporation | Multibus sequential processor to perform in parallel a plurality of reconfigurable logic operations on a plurality of data sets |
US5412788A (en) * | 1992-04-16 | 1995-05-02 | Digital Equipment Corporation | Memory bank management and arbitration in multiprocessor computer system |
US6079009A (en) * | 1992-06-30 | 2000-06-20 | Discovision Associates | Coding standard token in a system compromising a plurality of pipeline stages |
US5842033A (en) | 1992-06-30 | 1998-11-24 | Discovision Associates | Padding apparatus for passing an arbitrary number of bits through a buffer in a pipeline system |
US6330665B1 (en) | 1992-06-30 | 2001-12-11 | Discovision Associates | Video parser |
US6112017A (en) * | 1992-06-30 | 2000-08-29 | Discovision Associates | Pipeline processing machine having a plurality of reconfigurable processing stages interconnected by a two-wire interface bus |
DE69229338T2 (de) * | 1992-06-30 | 1999-12-16 | Discovision Associates, Irvine | Datenpipelinesystem |
US6034674A (en) * | 1992-06-30 | 2000-03-07 | Discovision Associates | Buffer manager |
US5809270A (en) * | 1992-06-30 | 1998-09-15 | Discovision Associates | Inverse quantizer |
US6067417A (en) * | 1992-06-30 | 2000-05-23 | Discovision Associates | Picture start token |
US6417859B1 (en) | 1992-06-30 | 2002-07-09 | Discovision Associates | Method and apparatus for displaying video data |
US5768561A (en) * | 1992-06-30 | 1998-06-16 | Discovision Associates | Tokens-based adaptive video processing arrangement |
US7095783B1 (en) | 1992-06-30 | 2006-08-22 | Discovision Associates | Multistandard video decoder and decompression system for processing encoded bit streams including start codes and methods relating thereto |
US6263422B1 (en) * | 1992-06-30 | 2001-07-17 | Discovision Associates | Pipeline processing machine with interactive stages operable in response to tokens and system and methods relating thereto |
US6047112A (en) * | 1992-06-30 | 2000-04-04 | Discovision Associates | Technique for initiating processing of a data stream of encoded video information |
US5764373A (en) | 1993-03-16 | 1998-06-09 | Mitsubishi Denki Kabushiki Kaisha | Image data compression-expansion circuit |
US6115547A (en) | 1993-03-29 | 2000-09-05 | Trilogy Development Group, Inc. | Flash configuration cache |
US5805914A (en) * | 1993-06-24 | 1998-09-08 | Discovision Associates | Data pipeline system and data encoding method |
IL109921A (en) * | 1993-06-24 | 1997-09-30 | Quickturn Design Systems | Method and apparatus for configuring memory circuits |
CA2145379C (en) * | 1994-03-24 | 1999-06-08 | William P. Robbins | Method and apparatus for addressing memory |
CA2145365C (en) * | 1994-03-24 | 1999-04-27 | Anthony M. Jones | Method for accessing banks of dram |
CA2145361C (en) * | 1994-03-24 | 1999-09-07 | Martin William Sotheran | Buffer manager |
WO1995032466A1 (en) * | 1994-05-19 | 1995-11-30 | Vlsi Technology, Inc. | Flexible register mapping scheme |
US5798719A (en) | 1994-07-29 | 1998-08-25 | Discovision Associates | Parallel Huffman decoder |
GB9417138D0 (en) * | 1994-08-23 | 1994-10-12 | Discovision Ass | Data rate conversion |
SE514348C2 (sv) * | 1995-06-09 | 2001-02-12 | Saab Dynamics Ab | Minnesstruktur anpassad för lagring och hämtning av vektorer |
US5806997A (en) * | 1996-02-20 | 1998-09-15 | Canon Business Machines, Inc. | Dot matrix printer |
US7266634B2 (en) | 2000-01-05 | 2007-09-04 | Rambus Inc. | Configurable width buffered module having flyby elements |
US7363422B2 (en) * | 2000-01-05 | 2008-04-22 | Rambus Inc. | Configurable width buffered module |
US7017002B2 (en) * | 2000-01-05 | 2006-03-21 | Rambus, Inc. | System featuring a master device, a buffer device and a plurality of integrated circuit memory devices |
US6502161B1 (en) | 2000-01-05 | 2002-12-31 | Rambus Inc. | Memory system including a point-to-point linked memory subsystem |
US7404032B2 (en) * | 2000-01-05 | 2008-07-22 | Rambus Inc. | Configurable width buffered module having switch elements |
US20050010737A1 (en) * | 2000-01-05 | 2005-01-13 | Fred Ware | Configurable width buffered module having splitter elements |
US7356639B2 (en) * | 2000-01-05 | 2008-04-08 | Rambus Inc. | Configurable width buffered module having a bypass circuit |
US20030002474A1 (en) * | 2001-03-21 | 2003-01-02 | Thomas Alexander | Multi-stream merge network for data width conversion and multiplexing |
US6754741B2 (en) | 2001-05-10 | 2004-06-22 | Pmc-Sierra, Inc. | Flexible FIFO system for interfacing between datapaths of variable length |
EP1345234A1 (de) * | 2002-03-11 | 2003-09-17 | STMicroelectronics S.r.l. | Halbleiterspeicher mit Selbstauffrisch-Modus |
US6877046B2 (en) * | 2002-03-29 | 2005-04-05 | International Business Machines Corporation | Method and apparatus for memory with embedded processor |
US6996686B2 (en) * | 2002-12-23 | 2006-02-07 | Sun Microsystems, Inc. | Memory subsystem including memory modules having multiple banks |
JP4451733B2 (ja) * | 2004-06-30 | 2010-04-14 | 富士通マイクロエレクトロニクス株式会社 | 半導体装置 |
US7562271B2 (en) * | 2005-09-26 | 2009-07-14 | Rambus Inc. | Memory system topologies including a buffer device and an integrated circuit memory device |
US7464225B2 (en) * | 2005-09-26 | 2008-12-09 | Rambus Inc. | Memory module including a plurality of integrated circuit memory devices and a plurality of buffer devices in a matrix topology |
US11328764B2 (en) | 2005-09-26 | 2022-05-10 | Rambus Inc. | Memory system topologies including a memory die stack |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3686640A (en) * | 1970-06-25 | 1972-08-22 | Cogar Corp | Variable organization memory system |
US3693165A (en) * | 1971-06-29 | 1972-09-19 | Ibm | Parallel addressing of a storage hierarchy in a data processing system using virtual addressing |
US3820078A (en) * | 1972-10-05 | 1974-06-25 | Honeywell Inf Systems | Multi-level storage system having a buffer store with variable mapping modes |
IT1052771B (it) * | 1975-12-31 | 1981-07-20 | Olivetti C E C S P A | Dispositivo di indirizzamento di una memoria |
US4093995A (en) * | 1976-03-26 | 1978-06-06 | Norland Corporation | Random access memory apparatus for a waveform measuring apparatus |
US4162534A (en) * | 1977-07-29 | 1979-07-24 | Burroughs Corporation | Parallel alignment network for d-ordered vector elements |
US4157587A (en) * | 1977-12-22 | 1979-06-05 | Honeywell Information Systems Inc. | High speed buffer memory system with word prefetch |
US4349871A (en) * | 1980-01-28 | 1982-09-14 | Digital Equipment Corporation | Duplicate tag store for cached multiprocessor system |
US4382278A (en) * | 1980-06-05 | 1983-05-03 | Texas Instruments Incorporated | Hierarchial memory system with microcommand memory and pointer register mapping virtual CPU registers in workspace cache #4 and main memory cache |
US4410944A (en) * | 1981-03-24 | 1983-10-18 | Burroughs Corporation | Apparatus and method for maintaining cache memory integrity in a shared memory environment |
-
1984
- 1984-01-09 US US06/568,997 patent/US4747070A/en not_active Expired - Lifetime
- 1984-08-24 AU AU32372/84A patent/AU577307B2/en not_active Expired
- 1984-10-09 JP JP59212405A patent/JPS60147857A/ja active Pending
- 1984-10-17 CA CA000465684A patent/CA1226673A/en not_active Expired
-
1985
- 1985-01-02 DE DE3588009T patent/DE3588009T2/de not_active Expired - Lifetime
- 1985-01-02 EP EP85100014A patent/EP0149451B1/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP0149451A2 (de) | 1985-07-24 |
AU577307B2 (en) | 1988-09-22 |
CA1226673A (en) | 1987-09-08 |
DE3588009D1 (de) | 1995-05-24 |
JPS60147857A (ja) | 1985-08-03 |
AU3237284A (en) | 1986-03-06 |
US4747070A (en) | 1988-05-24 |
EP0149451A3 (en) | 1989-09-06 |
EP0149451B1 (de) | 1995-04-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3588009T2 (de) | Vorrichtung und Verfahren zum Rekonfigurieren eines Speichers in einer Datenverarbeitungsanordnung. | |
EP0013737B1 (de) | Mehrstufige Speicherhierarchie für ein Datenverarbeitungssystem | |
DE2350884C2 (de) | Adreßumsetzungseinheit | |
DE68924306T2 (de) | Mehrprozessorrechneranordnungen mit gemeinsamem Speicher und privaten Cache-Speichern. | |
DE3724317C2 (de) | ||
DE2515696C2 (de) | Datenverarbeitungssystem | |
DE68926036T2 (de) | Speicherkonfiguration zur Verwendung für Schnittstellenbildung zwischen einer Systemsteuereinheit für ein Multiprozessorsystem und dem Hauptspeicher | |
DE69721590T2 (de) | Ein bereichsbasiertes seiten-table-walk-bit verwendendes verfahren sowie vorrichtung | |
DE69915243T2 (de) | Speicherplattenanordnung-Steuerungsvorrichtung | |
DE2224537C2 (de) | Einrichtung und Verfahren zur Instruktionsauswahl in einem Fließbandprozessor | |
DE2241257C3 (de) | Datenverarbeitende Anlage | |
DE68923863T2 (de) | Ein-/Ausgabecachespeicherung. | |
DE2617408B2 (de) | Speichermodul für ein Datenverarbeitungsgerät mit Speicherhierarchie | |
DE3909896A1 (de) | Vorrichtung und verfahren fuer den zugriff zu in einem seitenspeicher gespeicherten daten | |
DE3502147C2 (de) | ||
DE2404146A1 (de) | Digitales, hierarchisch in wenigstens drei hierarchie-stufen aufgebautes speichersystem | |
DE69838701T2 (de) | Vorrichtung zum Lese/-Schreibzugriff von Registern in zentraler Verarbeitungseinheit | |
DE3046912C2 (de) | Schaltungsanordnung zum selektiven Löschen von Cachespeichern in einer Multiprozessor-Datenverarbeitungsanlage | |
DE69119149T2 (de) | Struktur zur direkten Speicher-zu-Speicher-Übertragung | |
DE3911721C2 (de) | ||
DE19526008A1 (de) | Vertikal partitionierter, primärer Befehls-Cache-Speicher | |
DE19908618A1 (de) | Gemeinsam genutzter Hochleistungscachespeicher | |
DE69724732T2 (de) | Atomare Operation in Fernspeicher und Vorrichtung zur Durchführung der Operation | |
DE3650642T2 (de) | Speichermittel mit Mehrwortauslesen und Schreiben | |
DE2926351A1 (de) | Look-ahead-speicheradressen- steuereinrichtung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: WANG LABORATORIES, INC., BILLERICA, MASS., US |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: LG SEMICON CO., LTD., CHEONGJU, KR |
|
8327 | Change in the person/name/address of the patent owner |
Owner name: LG ELECTRONICS INC., SEOUL/SOUL, KR |
|
8328 | Change in the person/name/address of the agent |
Representative=s name: COHAUSZ & FLORACK, 40472 DUESSELDORF |