DE68925631T2 - Speicheranordnung mit automatisch variabler Verschachtelung - Google Patents

Speicheranordnung mit automatisch variabler Verschachtelung

Info

Publication number
DE68925631T2
DE68925631T2 DE68925631T DE68925631T DE68925631T2 DE 68925631 T2 DE68925631 T2 DE 68925631T2 DE 68925631 T DE68925631 T DE 68925631T DE 68925631 T DE68925631 T DE 68925631T DE 68925631 T2 DE68925631 T2 DE 68925631T2
Authority
DE
Germany
Prior art keywords
memory
modules
module
interleaving
address
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 - Fee Related
Application number
DE68925631T
Other languages
English (en)
Other versions
DE68925631D1 (de
Inventor
David Castle
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.)
Unisys Corp
Original Assignee
Unisys 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 Unisys Corp filed Critical Unisys Corp
Publication of DE68925631D1 publication Critical patent/DE68925631D1/de
Application granted granted Critical
Publication of DE68925631T2 publication Critical patent/DE68925631T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related 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/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0607Interleaved addressing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Executing Machine-Instructions (AREA)

Description

  • Diese Erfindung betrifft verbesserte Einrichtungen und Verfahren zum Zugreifen auf in einem Computerspeicher gespeicherte Daten und insbesondere verbesserte Einrichtungen und Verfahren zum Bereitstellen einer Verschachtelung für ein System, das mehrere Speichermodule verwendet.
  • Es ist im Stand der Technik bekannt, daß in einem Computersystem, das mehrere Speichermodule verwendet, die Geschwindigkeit des Speicherzugriffs durch Anordnen sequentieller Speicheradressen zum Speichern in unterschiedlichen Modulen und Zugreifen auf die Module in verschachtelter Weise signifikant erhöht werden kann. Als Ergebnis kann die zum Zugriff auf eine Folge von Speicherplätzen erforderliche Gesamtzeit deutlich verringert werden, da mehrere Speicherzugriffe durch einen Hochgeschwindigkeitsdatenprozessor überlappen können. 2-Weg- und 4-Weg-Verschachtelung sind gebräuchlich. Weitergehende Informationen über solches Verschachteln können in Encyclopedia of Computer Science and Engineering, Anthony Ralston, Herausgeber, zweite Ausgabe, Seite 791 - 792 gefunden werden.
  • In Computer Design, Vol. 24, Nr.15, November 1985, Seite 93 - 96, 98 und 100, welche den nächstkommenden Stand der Technik bildet, von dem die Erfindung ausgeht, ist eine weitere Speicherverschachtelungsvorrichtung zum Bereitstellen variabel verschachtelter Zugriffe auf Speicheradressen in einem Computersystem offenbart, wobei das Gerät mehrere Speicherplatinen umfaßt, eine Hardware- Speichersteuerung zum selektiven Freigeben und Adressieren selektierter Speichermodule in variabel verschachtelter Weise; dabei ist die Steuerung in Abhängigkeit einer aufgerufenen Adresse in der Lage, eine Platinenselektionslogik freizugeben, welche eine Speicherbausteinadresse enthält, die der aufgerufenen Adresse entspricht, und zum Ableiten einer der aufgerufenen Adresse entsprechenden Speicherbausteinadresse. Die höchste Ebene der Speicherverschachtelung wird gemäß der aktuellen Speichergröße selektiert, abhängig davon, wieviele Speicherplatinenpaare verfügbar sind; dabei können verschiedene Ebenen der Verschachtelung gleichzeitig für verschiedene Speichermodule verwendet werden. Das System ist dynamisch, d.h., die Steuerungslogik überprüft automatisch das Verschachtelungsschema, wenn sich die Maschinenkonfiguration ändert.
  • Ein bei gegenwärtig bekannten verschachtelten Speicherzugriffssystemen vorliegendes Problem ist, daß die Rasterung der Verschachtelung vorbestimmt und festgelegt ist. Wenn zusätzliche Module hinzugefügt werden, müssen diese somit in Vielfachen der Verschachtelung hinzugefügt werden. Wenn z.B. eine 4-Weg- Verschachtelung angewendet wird, sind zusätzliche Module als Vielfaches von vier hinzuzufügen. Dies kann für einen Kunden teuer werden, der gegenwärtig nur ein zusätzliches Modul benötigt. Andererseits verliert ein System mit acht Speichermodulen die Hälfte seines Speichers, wenn ein Modul ausfällt. Dieses Problem wird ergänzt durch die Tatsache, daß heute Speichermodule in einer Packung mit mehreren Modulen bereitgehalten werden, vier Module pro Packung sind typisch. Somit ist in einem System mit fester Verschachtelung ein gesamtes Mehrfachmodulpacket auszutauschen, auch wenn nur ein Modul versagt.
  • ABRISS DER ERFINDUNG
  • Es ist eine Aufgabe der vorliegenden Erfindung, eine Speicherverschachtelungsvorrichtung anzugeben, mit einer Speicheradressensteuerung mit signifikanten Vorteilen bezogen auf die Geschwindigkeit, die Einfachheit und die Ökonomie der Gestaltung.
  • Um die vorstehende Aufgabe zu verwirklichen, wird erfindungsgemäß eine Speicherverschachtelungsvorrichtung zur Verwendung in einem Speichersystem angegeben, mit:
  • mehreren adressierbaren Speichermodulen; und
  • einer Speicheradressenteuerung zum selektiven Freigeben und Adressieren selektierter Speichermodule in variabel verschachtelter Weise als Reaktion auf von dem Computer empfangene Speicheradressen, wobei jede Speicheradresse mehrere Stellen einschließlich einer signifikantesten Stelle umfaßt, wobei die Speicheradressensteuerung verschiedene Verschachtelungsfaktoren für verschiedene Speichermodule abhängig von der Anzahl der verfügbaren Module bereitstellt und automatisch die für die Module vorgesehenen Verschachtelungsfaktoren in Abhängigkeit von der Anzahl der Module variiert; dadurch gekennzeichnet, daß
  • die Speicheradressensteuerung gleichzeitig mehrfache Verschachtelung und keine Verschachtelung zum Ermöglichen der Verwendung aller verfügbaren Module vorsieht und beinhaltet:
  • - einen Dekodierer, welcher auf die Anzahl der verfügbaren Module und die signifikanteste Stelle einer angelegten Speicheradresse zum Erzeugen des Verschachtelungsfaktors reagiert, der auf das die Speicheradresse enthaltende bestimmte Modul anwendbar ist,
  • - eine Modulselektionslogik, die auf den Verschachtelungsfaktor und vorbestimmte Stellen der Speicheradresse zum Freigeben des bestimmten Modules reagiert, und
  • - eine Moduladressenschaltung, die auf den Verschachtelungsfaktor und vorbestimmte Stellen der Speicheradresse zum Zugreifen auf die Moduladresse in dem der Speicheradresse entsprechenden Modul reagiert.
  • Die Implementation eines solchen Dekodierers, einer solchen Modulselektionslogik und einer solchen Moduladressenschaltung in der Speicheradressensteuerung bietet signifikante Vorteile hinsichtlich der Geschwindigkeit ebenso wie der Einfachheit und der Wirtschaftlichkeit der Gestaltung der Speicheradressensteuerung.
  • Weitere vorteilhafte Ausführungsformen sind durch die Unteransprüche gekennzeichnet.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Fig. 1 ist ein vereinfachtes elektrisches Blockschaltbild eines die Speicherverschachtelung anwendenden bekannten Systems;
  • Fig. 2 ist eine Reihe von Graphen, welche die Wirkungsweise aus Fig. 1 illustrieren;
  • Fig. 3 ist ein vereinfachtes elektrisches Blockschaltbild, das eine besonders bevorzugte Ausführungsform eines erfindungsgemäßen Speicher- systems mit variabler Verschachtelung darstellt;
  • Fig. 4 ist ein vereinfachtes elektrisches Blockschaltbild, das eine bevorzugte Ausführungsform der Speicheradressensteuerung in Fig. 3 darstellt;
  • Fig. 5 ist eine Darstellung der Weise, in welcher der Verschachtelungsfaktor des die angesprochene Speicheradresse enthaltenden Modules in der bevorzugten Ausführungsform aus Fig. 4 bestimmt wird; und
  • Fig. 6 istein Flußdiagramm der Wirkungsweise der bevorzugten Ausführungsform aus Fig. 4.
  • BESCHREIBUNG EINER BEVORZUGTEN AUSFÜHRUNGSFORM
  • Gleiche Bezugszeichen bezeichnen in den Figuren der Zeichnungen gleiche Elemente.
  • In Fig. 1 ist ein vereinfachtes elektrisches Blockschaltbild dargestellt, das eine typische Weise zeigt, in welcher die Verschachtelung konventionell für acht Speichermodule M0, M1, M2, M3, M4, M5, M6 und M7 vorgesehen ist, welche über eine Speichermodulsteuerung 17 und einen Speicherbus 19 an einen Datenprozessor (DP) 15 angeschlossen sind (die Speichermodulsteuerung 17 kann in dem Datenprozessor 15 enthalten sein). Fig. 1 zeigt z.B. eine 4-Weg-Verschachtelungsanordnung, in welcher aufeinanderfolgende Worte in verschiedenen Modulen gespeichert sind. Die typische konventionelle Wirkungsweise ist derart, daß Datenprozessoradressanforderungen für aufeinanderfolgende Worte an die Speicheradressensteuerung 17 abgegeben werden, welche wiederum in jedem Zyklus ein anderes Speichermodul freigibt und geeignet adressiert. Somit kann auf aufeinanderfolgende Worte in aufeinanderfolgenden Zyklen zugegriffen werden, ohne einige Zyklen zu warten, die typisch zum Zugriff auf ein Speichermodul erforderlich sind. Dies ist durch die Graphen in Fig. 2 dargestellt, welche den Datenprozessor (DP) zeigt, der aufeinanderfolgende Worte A, B, C und D jeweils aus den Speichermodulen M0, M1, M2 und M3 während aufeinanderfolgender Zyklen anfordert.
  • In einer konventionellen 4-Weg-Speicherverschachtelungsanordnung, wie in Fig. 1 dargestellt, müssen zusätzliche Speichermodule in Vierergruppen zugefügt werden, da eine Variation der Verschachtelung nicht vorgesehen ist. Dies ist erforderlich, auch wenn nur ein Speichermodul benötigt wird. Weiterhin wird das Versagen eines Speichermodules die Verwendung der zugehörigen drei Speichermodule verhindern.
  • Fig. 3 zeigt die grundlegende Weise, in welcher eine automatisch variable Verschachtelung mehrerer Speichermodule erfindungsgemäß vorgesehen ist. Fig. 3 zeigt eine Anordnung aus sieben Speichermodulen M0, M1, M2, M3, M4, M5 und M6, wobei die ersten vier Module M0, M1, M2 und M3 eine 4-Weg-Verschachtelung aufweisen, die nächsten zwei Module M4 und M5 eine 2-Weg-Verschachtelung und das letzte Modul M6 eine 1-Weg-Verschachtelung (das ist keine Verschachtelung) aufweisen. Daher versteht es sich, daß die spezielle vorgesehene Verschachtelung abhängig von der Anzahl der vorgesehenen Speichermodule variabel ist. Wenn z.B. neun Speichermodule vorgesehen sind, werden die ersten vier Module und die zweiten vier Module eine 4-Weg-Verschachtelung aufweisen und das verbleibende Speichermodul wird nicht verschachtelt.
  • Der Datenprozessor 15 stellt typisch eine absolute Speicheradresse für die Speicheradressensteuerung 17 bereit. Diese absolute Adresse liegt im Bereich von Null bis zur für das System verfügbaren Maximaladresse, wie sie durch die Anzahl der betriebenen Speichermodule bestimmt ist. Wie es konventionell während Initiahsierungsoperationen, welche gewöhnlich dem Einschalten folgen, der Fall ist, bestimmt der Datenprozessor 15 die Identität und die Gesamtzahl der verwendbaren Speichermodule in dem System. Zum Zweck dieser Beschreibung wird angenommen, daß alle sieben Speichermodule M0, M1, M2, M3, M4, M5 und M6 als betriebsbereit gefunden wurden. Es ist erkennbar, daß die in Fig. 3 dargestellte Siebenmodulanordnung das Ergebnis eines Versagens eines Modules in einer Achtmodulanordnung sein kann.
  • Fig. 4 zeigt eine bevorzugte Weise zum Implementieren der Speicheradressensteuerung 17 in Fig. 3, um eine Speichermodulfreigabe und Adressierung in einem erfindungsgemäßen automatisch variablen Speicherverschachtelungssystem bereitzustellen. Für die hier betrachtete, insbesonders bevorzugte Ausführungsform aus Fig. 4 wird angenommen, daß das in Fig. 3 gezeigte System in der Lage ist, zwischen 1 und 16 Speichermodulen zu verwenden, wobei jedes Speichermodul Speicher für OF FF FF Worte (Adressnotation) bereitstellt, was 0000 1111 1111 1111 1111 1111 Worten (binäre Notation) oder 1.048.575 Worten (dezimale Notation) entspricht. Die verfügbare Gesamtspeicherkapazität beträgt, wenn alle 16 Module vorhanden sind, somit FF FF FF Worte (Adressnotation) oder 16.777.215 Worte (dezimale Notation).
  • Wie in Fig. 4 gezeigt, wird durch den Datenprozessor 15 eine absolute Speicheradresse A0-A5 angegeben, die eine bestimmte Wortadresse anzeigt, die in einem der Module M0-M6 enthalten ist. Für das angenommene System aus Fig. 3 reicht diese absolute Speicheradresse A0-A5 von 0 bis 5F FF FF (Adresse) und wird repräsentiert durch sechs Adresstellen A5, A4, A3, A2, A1 und A0, wobei A0 die am wenigsten signifikante Adresstelle ist und A5 die signifikanteste Adresstelle ist. Wie in Fig. 4 gezeigt, wird die signifikanteste Stelle A5 der absoluten Speicheradresse A0-A5 zusammen mit einem von dem Datenprozessor bereitgestellten Signal N, das die Anzahl der betreibbaren Speichermodule in dem System anzeigt, an einen Dekodierer 21 abgegeben. Wie vorstehend erwähnt, ist der Wert von N (welcher für die Ausführungsform in Fig. 3 sieben ist) in konventioneller Weise durch den Datenprozessor 15 während der Initialisierung bestimmt.
  • Der Zweck des Dekodierers 21 in Fig. 4 ist es, für die Anzahl der betreibbaren Module N den Verschachtelungsfaktor n (4-Weg-Verschachtelung, 2-Weg-Verschachtelung oder 1-Weg-Verschachtelung) zu bestimmen, der auf das bestimmte Speichermodul anwendbar ist, welches die Adresse enthält, die der angelegten absoluten Speicheradresse A0-A5 entspricht. Der Dekodierer 21 ist auf der Basis der Darstellung in Fig. 5 implementiert, welche den Verschachtelungsfaktor n durch Verwenden der signifikantesten Adresstelle A5 (das sind die höchsten vier binären Bits) der absoluten Adresse (vertikale Achse) und der durch den Datenprozessor 15 (Fig. 3) bestimmten Anzahl der betreibbaren Module N (horizontale Achse) identifiziert. Für das z.B. in Fig. 3 gezeigte 7-Modulsystem, für welches N = 7 ist, resultiert eine angelegte absolute Speicheradresse 5000 09 (Adresse) mit einer signifikantesten Adresstelle A5 = 5 in der Darstellung von Fig. 5 im Erkennen eines Verschachtelungsfaktors von n = 2. Als anderes Beispiel resultiert, wenn das System auf 9 Module erweitert ist, die gleiche absolute Speicheradresse von 50 00 09 angelegt wird und die signifikanteste Adresstelle wiederum A5 = 5 ist, während N jetzt N = 9 ist, in einem Verschachtelungsfaktor von n = 4 gegenüber n = 2 in einem 7-Modulsystem.
  • Als nächstes sorgt die Speicheradressensteuerung 17 aus Fig. 4 für das Bestimmen des bestimmten der sieben Speichermodule M0 bis M6 in dem System aus Fig. 3, welches die Adresse enthält, die der angelegten absoluten Speicheradresse A0-A5 entspricht. Wie gezeigt, wird dies verwirklicht durch Anlegen eines Signals, das dem Verschachtelungsfaktor n (durch den Dekodierer 21 bestimmt) an eine Modulselektionslogik 23 zusammen mit den drei signifikantesten Bits B1, B2 und B3 der signifikantesten Adresstelle A5 der absoluten Speicheradresse A0-A5 und der zwei am wenigsten signifikanten Bits B0 und B1 der am wenigsten signifikanten Adresstelle A0 der absoluten Speichermoduladresse A0-A5 entspricht. Wie bekannt ist, entspricht jede Adresstelle vier binären Bits, welche hier als B0, B1, B2 und B3 bezeichnet sind, wobei B0 das am wenigsten signifikante Bit ist. Die Selektionslogik 23 wirkt in Abhängigkeit von diesen angelegten Signalen, um ein Modulfreigabesignal 5 an den Speicherbus 19 zum Freigeben des einen besonderen der Module M0 bis M6 bereitzustellen, welches die der angelegten absoluten Speicheradresse A0-A5 entsprechende Adresse enthält.
  • Die Selektionslogik 23 ist insbesondere mit der folgenden Wirkungsweise implementiert:
  • (1) Wenn n = 4 (4-Weg-Verschachtelung) oder n = 2 (2-Weg-Verschachtelung) ist, wird das selektierte Speichermodul bestimmt durch geeignetes Verknüpfen der Bits B0A0 und B1A0 der Adresstelle A0 mit den Bits B3A5 und B2A5 der Adresstelle A5. Für N = 7 und eine absolute Adresse von 50 00 09 ist z.B. der Verschachtelungsfaktor n = 2 (siehe Fig. 5) und A0 = 9 (B0A0 = 1 und B1A0 = 0) und A5 = 5 (mit B2A5 = 1 und B3A5 = 0). Somit erzeugt das Verknüpfen der Bits B0A0 und B1A0 von A0 mit B2A5 und B3A5 von A5 ein Modulfreigabesignal S = B3A5B2A5B1A0B0A0 = 0101, was dezimal 5 ist. Somit wird für eine absolute Adresse von 500009 in einem System mit N = 7 ein Freigabesignal 5 = 5 erzeugt, welches im Freigeben des fünften Speichermodules resultiert, welches M4 in Fig. 3 ist.
  • (2) Wenn n = 1 ist (keine Verschachtelung oder 1-Weg-Verschachtelung), wird das selektierte Speichermodul einfach durch die Adresstelle A5 bestimmt. Für ein System N = 7 z.B. und einer absoluten Adresse von 7001A2 ist der Verschachtelungsfaktor 1(s. Figur 5) und A5 = 7. Somit ist S = A5 = 7, was im Freigeben des siebten Speichermoduls M6 in Fig. 3 resultiert.
  • Nachdem beschrieben ist, wie das Speichermodul, welches die Adresse, die der absoluten Adresse entspricht, enthält, freigegeben wird, wird jetzt beschrieben, wie die zum Ansprechen dieses freigegebenen Modules benutzte Moduladresse Am aus der angelegten absoluten Speicheradresse A0-A5 bestimmt wird. Dies wird in der bevorzugten Implementation aus Fig. 4 verwirklicht durch Anlegen der fünf am wenigsten signifikanten Adresstellen A0-A4 und der zwei am wenigsten signifikanten Bits B1A5 und B0A5 der Adresstelle A5 zusammen mit dem Verschachtelungsfaktor n (durch den Dekodierer 21 bereitgestellt) an eine Moduladressenschaltung 25, welche in Abhängigkeit davon eine Moduladresse Am für das freigegebene Modul über den Speicherbus 19 bereitstellt. Die besondere Wirkungsweise der Moduladressenschaltung 25 ist wie folgt:
  • (1) Für n = 1 (1-Weg- oder keine Verschachtelung) bilden die fünf am wenigsten signifikanten Adresstellen A0-A4 die Moduladresse Am. Wenn z.B. die sechsstellige absolute Adresse 7001A2 ist, ist die Moduladresse Am 001A2.
  • (2) Für n = 2 (2-Weg-Verschachtelung) wird die Moduladresse Am abgeleitet durch geeignetes Verknüpfen der vier Adresstellen A4, A3, A2 und A1 mit den drei signifikantesten Bits B3A0, B2A0 und B1A0 der Adresstelle A0 und dem am wenigsten signifikanten Bit B0A5 der Adresstelle A5. Dieses erzeugt eine Moduladresse Am = A4, A3, A2, A1, B3A0, B2A0, B1A0, B0A5. Wenn die sechsstellige angelegte absolute Adresse 400009 ist, ist somit die Moduladresse Am 00008.
  • (3) Für n = 4 (4-Weg-Verschachtelung) wird die Moduladresse Am abgeleitet durch geeignetes Verknüpfen der vier Adresstellen A4, A3, A2 und A1 mit den zwei signifikantesten Bits B3A0 und B2A0 der Adresstelle A0 und der zwei am wenigsten signifikanten Bits B1A5 und B0A5 der Adresstelle A5. Dies erzeugt eine Moduladresse Am = A4, A3, A2, A1, B3A0, B2A0, B1A5, B0A5. Wenn die sechsstellige absolute Adresse 50B2F7 ist, ist somit die Moduladresse Am 0B2F5.
  • Das Ableiten des Modulfreigabesignals S und der Moduladresse Am durch geeignetes Verknüpfen der Adressbits, wie oben beschrieben, ist vorteilhaft, da es einfach, ökonomisch und schnell ausgeführt werden kann. Während ein solches Verknüpfen einen Bereich von Wortadressen erzeugt, der auf jedes der Module M0- M6 in Fig. 3 zeigt, versteht es sich, daß die spezielle Organisation der Wortpositionen in jedem Modul von seinem Verschachtelungsfaktor abhängt. Dies ist jedoch nicht von praktischer Bedeutung, da ausgenommen bei der 1-Weg-Verschachtelung (d.h. keine Verschachtelung) aufeinanderfolgende Worte in verschiedenen Modulen sein werden, so daß die Vorteile der Verschachtelung verwirklicht werden können.
  • Die Verknüpfungen und andere vorstehend beschriebene Operationen der Speicheradressensteuerung 17 in Fig. 4 werden in dem Flußdiagramm in Fig. 6 zusammengefaßt.
  • Obwohl die vorliegende Erfindung in Verbindung mit insbesondere bevorzugten Ausführungsformen der Erfindung beschrieben wurde, versteht es sich, daß verschiedene Modifikationen in Konstruktion, Anordnung und Verwendung ausgeführt werden können. Z.B. geht aus dem Flußdiagramm in Fig. 6 hervor, daß die Erfindung durch Verwenden von Software ebenso wie von Hardware implementiert werden kann.

Claims (7)

1. Speicherverschachtelungsvorrichtung zur Verwendung in einem Computersystem, mit:
mehreren adressierbaren Speichermodulen (M0, ..., M6); und einer Speicheradressensteuerung (17) zum selektiven Freigeben und Adressieren selektierter Speichermodule (M0, ..., M6) in variabel verschachtelter Weise als Reaktion auf von dem Computer empfangene Speicheradressen (A0-A5), wobei jede Speicheradresse (A0-A5) mehrere Stellen (A0, ..., A5) einschließlich einer signifikantesten Stelle (A5) umfaßt, wobei die Speicheradressensteuerung (17) verschiedene Verschachtelungsfaktoren (n) für verschiedene der Speichermodule (M0, ..., M6) bereitstellt, von der Anzahl (N) der verfiigbaren Module (M0, ..., M6) abhängig und automatisch die für die Module (M0, ..., M6) vorgesehenen Verschachtelungsfaktoren (n) in Abhängigkeit von der Anzahl (N) der Module (M0, M6) variiert; dadurch gekennzeichnet, daß
die Speicheradressensteuerung (17) gleichzeitig mehrfache Verschachtelung und keine Verschachtelung zum Ermöglichen der Verwendung allerverfügbaren Module (M0, ..., M6) vorsieht und beinhaltet:
- einen Dekodierer (21), welcher auf die Anzahl (N) der verfügbaren Module (M0, M6) und die signifikanteste Stelle (A5) einer angelegten Speicheradresse (A0-A5) zum Erzeugen des Verschachtelungsfaktors (n) reagiert, der auf das die Speicheradresse (A0-A5) enthaltende bestimmte Modul anwendbar ist,
- eine Modulselektionslogik (23), die auf den Verschachtelungsfaktor (n) und vorbestimmte Stellen (A0, ..., A5) der Speicheradresse (A0-A5) zum Freigeben des bestimmten Modules reagiert, und
- eine Moduladressenschaltung (25), die auf den Verschachtelungsfaktor (n) und vorbestimmte Stellen (A0...., A5) der Speicheradresse (A0-A5) zum Zugreifen auf die Moduladresse (Am) in dem der Speicheradresse (A0-A5) entsprechenden Modul reagiert.
2. Vorrichtung nach Anspruch 1, bei welcher die Speicheradressensteuerung (17) Einrichtungen zum gleichzeitigen Bereitstellen einer 4-Weg- und 2-Weg-Verschachtelung und keiner Verschachtelung für die Speichermodule (M0, ..., M6) in einer Weise beinhaltet, welche die maximale Verschachtelungsmöglichkeit für die Anzahl (N) der verfügbaren Module (M0, ..., M6) verwirklicht.
3. Vorrichtung nach Anspruch 3, bei welcher die Anzahl (N) der Module wenigstens sechs ist und bei welcher die Speicheradressensteuerung (17) eine 4-Weg-Verschachtelung für wenigstens vier Module (M0, M1, M2, M3) und eine 2-Weg-Verschachtelung für wenigstens zwei andere Module (M4, MS) bereitstellt.
4. Vorrichtung nach Anspruch 3, bei welcher die Anzahl (N) der Module wenigstens sieben ist und die Speicheradressensteuerung (17) zusätzlich keine Verschachtelung für wenigstens ein Modul (M6) bereitstellt.
5. Vorrichtung nach Anspruch 1, bei welcher die Moduladresse (Am) abgeleitet wird durch Verknüpfen vorbestimmter Stellen (A0, ..., A5) in einer Weise, welche durch den Verschachtelungsfaktor (n) bestimmt ist.
6. Vorrichtung nach Anspruch 5, bei welcher ein Modulfreigabesignal (5), welches das freizugebende Modul bezeichnet, abgeleitet wird durch Verknüpfen vorbestimmter Stellen (A0, ..., A5) in einer durch den Verschachtelungsfaktor (n) bestimmten Weise.
7. Vorrichtung nach einem der Ansprüche 1 bis 6, bei welcher die Anzahl (N) der verfügbaren Module bei der Initialisierung der Vorrichtung bestimmt wird.
DE68925631T 1988-10-27 1989-10-26 Speicheranordnung mit automatisch variabler Verschachtelung Expired - Fee Related DE68925631T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/263,569 US5341486A (en) 1988-10-27 1988-10-27 Automatically variable memory interleaving system
PCT/US1989/004750 WO1990004576A2 (en) 1988-10-27 1989-10-26 Automatically variable memory interleaving system

Publications (2)

Publication Number Publication Date
DE68925631D1 DE68925631D1 (de) 1996-03-21
DE68925631T2 true DE68925631T2 (de) 1996-06-27

Family

ID=23002319

Family Applications (1)

Application Number Title Priority Date Filing Date
DE68925631T Expired - Fee Related DE68925631T2 (de) 1988-10-27 1989-10-26 Speicheranordnung mit automatisch variabler Verschachtelung

Country Status (5)

Country Link
US (1) US5341486A (de)
EP (1) EP0394436B1 (de)
JP (1) JPH03502019A (de)
DE (1) DE68925631T2 (de)
WO (1) WO1990004576A2 (de)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241665A (en) * 1990-08-31 1993-08-31 Advanced Micro Devices, Inc. Memory bank comparator system
US5269010A (en) * 1990-08-31 1993-12-07 Advanced Micro Devices, Inc. Memory control for use in a memory system incorporating a plurality of memory banks
ATE191802T1 (de) * 1990-08-31 2000-04-15 Advanced Micro Devices Inc Speicherbankvergleichseinrichtung
US5247645A (en) * 1991-03-12 1993-09-21 International Business Machines Corporation Dynamic memory mapper which supports interleaving across 2N +1, 2.sup.NN -1 number of banks for reducing contention during nonunit stride accesses
US5293607A (en) * 1991-04-03 1994-03-08 Hewlett-Packard Company Flexible N-way memory interleaving
JPH0823843B2 (ja) * 1991-10-11 1996-03-06 インターナショナル・ビジネス・マシーンズ・コーポレイション メモリ・コントローラ、及びデータ処理システム
JPH05282199A (ja) * 1992-03-30 1993-10-29 Sony Corp 画像メモリ装置
EP0613088A1 (de) * 1993-02-24 1994-08-31 Digital Equipment Corporation Verfahren zur Speicherverschachtelung und dadurch verschachtelte Speichersysteme
CA2116985C (en) * 1993-03-11 1999-09-21 Cynthia J. Burns Memory system
US5530837A (en) * 1994-03-28 1996-06-25 Hewlett-Packard Co. Methods and apparatus for interleaving memory transactions into an arbitrary number of banks
US5655113A (en) * 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
US5590299A (en) * 1994-10-28 1996-12-31 Ast Research, Inc. Multiprocessor system bus protocol for optimized accessing of interleaved storage modules
DE69615278T2 (de) * 1995-06-06 2002-06-27 Hewlett Packard Co SDRAM-Datenzuweisungsanordnung und -verfahren
US5924111A (en) * 1995-10-17 1999-07-13 Huang; Chu-Kai Method and system for interleaving data in multiple memory bank partitions
US5860133A (en) * 1995-12-01 1999-01-12 Digital Equipment Corporation Method for altering memory configuration and sizing memory modules while maintaining software code stream coherence
US5809555A (en) * 1995-12-15 1998-09-15 Compaq Computer Corporation Method of determining sizes of 1:1 and 2:1 memory interleaving in a computer system, configuring to the maximum size, and informing the user if memory is incorrectly installed
US5960462A (en) * 1996-09-26 1999-09-28 Intel Corporation Method and apparatus for analyzing a main memory configuration to program a memory controller
EP0931290A1 (de) * 1997-03-21 1999-07-28 International Business Machines Corporation Adressabbildung für speichersystem
US6035371A (en) * 1997-05-28 2000-03-07 3Com Corporation Method and apparatus for addressing a static random access memory device based on signals for addressing a dynamic memory access device
US5896346A (en) * 1997-08-21 1999-04-20 International Business Machines Corporation High speed and low cost SDRAM memory subsystem
TWI220474B (en) * 2003-03-12 2004-08-21 Glovic Electronics Corp Physical page allocation method of flash memory
US20070022261A1 (en) * 2005-07-19 2007-01-25 Gateway Inc. Method of interleaving asymmetric memory arrays
US20070050593A1 (en) * 2005-08-30 2007-03-01 Seagate Technology Llc Interlaced even and odd address mapping
JP4603481B2 (ja) * 2005-12-22 2010-12-22 エヌイーシーコンピュータテクノ株式会社 情報処理装置、情報処理方法、および、プログラム
WO2007132399A1 (en) * 2006-05-09 2007-11-22 Koninklijke Philips Electronics N.V. Programmable data processing circuit
EP2605143A4 (de) * 2010-08-13 2014-10-08 Fujitsu Ltd Speichersteuerungsvorrichtung, informationsverarbeitungsvorrichtung und steuerverfahren für eine speichersteuerungsvorrichtung
US9092327B2 (en) 2012-12-10 2015-07-28 Qualcomm Incorporated System and method for allocating memory to dissimilar memory devices using quality of service
US9110795B2 (en) 2012-12-10 2015-08-18 Qualcomm Incorporated System and method for dynamically allocating memory in a memory subsystem having asymmetric memory components
US8959298B2 (en) 2012-12-10 2015-02-17 Qualcomm Incorporated System and method for managing performance of a computing device having dissimilar memory types
US9495291B2 (en) * 2013-09-27 2016-11-15 Qualcomm Incorporated Configurable spreading function for memory interleaving
US9465735B2 (en) * 2013-10-03 2016-10-11 Qualcomm Incorporated System and method for uniform interleaving of data across a multiple-channel memory architecture with asymmetric storage capacity
US11036642B2 (en) * 2019-04-26 2021-06-15 Intel Corporation Architectural enhancements for computing systems having artificial intelligence logic disposed locally to memory
US11150839B2 (en) 2019-12-19 2021-10-19 Western Digital Technologies, Inc. Host and method for interleaving data in a storage system for enhanced quality of service
US11221950B2 (en) * 2019-12-19 2022-01-11 Western Digital Technologies, Inc. Storage system and method for interleaving data for enhanced quality of service

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5128450B2 (de) * 1971-10-06 1976-08-19
FR2225809A1 (en) * 1973-04-13 1974-11-08 Pentru Intreprind Intreprinder Data memory with automatic cct. for interlacing addresses - has group of switches and logic circuit for each memory block
US3958222A (en) * 1974-06-27 1976-05-18 Ibm Corporation Reconfigurable decoding scheme for memory address signals that uses an associative memory table
US4280176A (en) * 1978-12-26 1981-07-21 International Business Machines Corporation Memory configuration, address interleaving, relocation and access control system

Also Published As

Publication number Publication date
US5341486A (en) 1994-08-23
DE68925631D1 (de) 1996-03-21
EP0394436B1 (de) 1996-02-07
WO1990004576A3 (en) 1990-05-31
WO1990004576A2 (en) 1990-05-03
JPH03502019A (ja) 1991-05-09
EP0394436A1 (de) 1990-10-31

Similar Documents

Publication Publication Date Title
DE68925631T2 (de) Speicheranordnung mit automatisch variabler Verschachtelung
DE3587137T2 (de) Inhaltsadressierbarer speicher.
DE69221356T2 (de) Flexible N-fach-Speicherverschachtelung
DE69027348T2 (de) Speicherblockadressenermittlungsschaltkreis
DE3850901T2 (de) Datenverarbeitungsanordnung mit Mitteln zur angrenzenden Adressierung eines Speichers.
DE68907518T2 (de) Inhaltsadressierte Speicheranordnung.
DE2637054C3 (de) Steuervorrichtung für einen Pufferspeicher
DE3032630A1 (de) Halbleiterspeicher aus speicherbausteinen mit redundanten speicherbereichen
DE2527062C3 (de) Anpassungsfähiger Adressendecodierer
DE2758829C2 (de) Datenverarbeitungsanlage mit mehreren Prozessoren
DE3788502T2 (de) Verfahren zur zuweisung einer leiterplattensteckplatznummer.
DE2718551C3 (de) Adressenumsetzer
DE2117581C3 (de) Einrichtung zur Adressenprüfung
DE3718750A1 (de) Datenverarbeitungssystem mit adressenumsetzung
DE2926322A1 (de) Speicher-subsystem
DE68925376T2 (de) In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas
DE2648225C2 (de) Datenspeicherwerk
DE3024153A1 (de) Speicher-subsystem
DE3586524T2 (de) Durch beide, physikalische und virtuelle addressen, addressierbarer cache-speicher.
DE2233193A1 (de) Stapel-speichersystem
DE19628039B4 (de) Speicheradressen-Steuerschaltung
EP0009625B1 (de) Datentransferschalter mit assoziativer Adressauswahl in einem virtuellen Speicher
DE2556357A1 (de) Adressiereinrichtung
DE2004934A1 (de)
DE1806464A1 (de) Adressengenerator fuer einen Digitalrechner

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee