DE112006001543T5 - Antwortplanung bei einem Speicherkanal - Google Patents

Antwortplanung bei einem Speicherkanal Download PDF

Info

Publication number
DE112006001543T5
DE112006001543T5 DE112006001543T DE112006001543T DE112006001543T5 DE 112006001543 T5 DE112006001543 T5 DE 112006001543T5 DE 112006001543 T DE112006001543 T DE 112006001543T DE 112006001543 T DE112006001543 T DE 112006001543T DE 112006001543 T5 DE112006001543 T5 DE 112006001543T5
Authority
DE
Germany
Prior art keywords
storage agent
requests
responses
answer
storage
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.)
Ceased
Application number
DE112006001543T
Other languages
English (en)
Inventor
Pete Boulder Vogt
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of DE112006001543T5 publication Critical patent/DE112006001543T5/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Speicheragent, der aufweist:
eine Antwortdatei, um lokale und durchlaufende Antworten zu speichern; und Logik, um das Senden der Antworten entsprechend einem Identifizierer für jede Antwort zu planen.

Description

  • HINTERGRUND
  • 1 veranschaulicht ein Speichersystem des Standes der Technik mit einem Speichercontroller 10 und Speichermodulen 12, die auf einem Kanal durch Datenverbindungen 16 verbunden sind. Der Speichercontroller sendet Anfragen an die einzelnen Speichermodule über die Datenverbindungen. Wenn das Modul, das dem Speichercontroller am nächsten ist, eine Anfrage empfängt, die für ein anderes Modul gedacht ist, schickt es die Anfrage an das näch ste Modul. Die Anfrage wird wiederholt verschickt, bis sie das beabsichtige Modul erreicht. Jedes Speichermodul bedient seine eigenen Anfragen, im allgemeinen durch Zugriff auf Speichervorrichtungen, so wie einen Nur-Lese-Speicher (ROM – Read Only Memory), einen dynamischen Speicher mit wahlfreiem Zugriff (DRAM – Dynamic Random Access Memory), einen Flash-Speicher usw., die sich auf dem Modul befinden, und erzeugt eine entsprechende Antwort, die über den Kanal zurück zu dem Controller gesendet wird.
  • Jedes Speichermodul umfaßt einen Puffer 14, der zeitweilig Daten speichert, wenn sie zwischen dem Modul und dem Controller laufen. Der Kanal umfaßt auch besondere Flußsteuer-Quittungsbetriebsignale 18, die verwendet werden, um das Überlaufen der Puffer zu verhindern, wenn der Controller oder eines der Module mehr Daten verwendet, als der Puffer oder ein anderes Modul unterbringen kann.
  • 2 veranschaulicht ein weiteres Speichersystem des Standes der Technik, das einen Speichercontroller 20 und ein oder mehrere Speichermodule 22 umfaßt, die über einen Kanal kommunizieren, der aus unidirektionalen Verbindungen aufgebaut ist. Der Kanal hat einen auslaufenden Weg, der eine oder mehrere auslaufende Verbindungen 24 umfaßt, und einen einlaufenden Weg, der eine oder mehrere einlaufende Verbindungen 26 umfaßt. Jedes Modul ist in der Lage, die Signale auf dem auslaufenden Weg von Verbindung zu Verbindung und auf dem einlaufenden Weg von Verbindung zu Verbindung weiter zu treiben. Jedes Modul umfaßt eine oder mehrere Speichervorrichtungen 28, die so angeordnet sind, daß sie Daten zu und/oder von dem einen oder den mehreren Wegen übertragen.
  • Das System der 2 verwendet ein deterministisches Protokoll, bei dem Anfragen an die Module über den auslaufenden Weg geschickt werden und Antworten zu dem Controller während vorbestimmter Zeitnischen in einem Rückführdaten-Frame auf dem einlaufenden Weg zurückgeführt werden. Der Speichercontroller plant die gesamte Kommunikation über dem Kanal, und jedes Modul kann nur seine Antworten an den Controller während der ihm zuge wiesenen Zeitnischen senden. Da alle Kommunikation zu vorbestimmten Zeiten geschieht, ist kein Quittungsbetrieb notwendig, um den Überlauf jeglicher Puffer zu verhindern, die sich auf den Modulen befinden können.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 veranschaulicht ein Speichersystem des Standes der Technik.
  • 2 veranschaulicht ein weiteres Speichersystem des Standes der Technik.
  • 3 veranschaulicht eine Ausführungsform eines Speicheragenten gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung.
  • 4 veranschaulicht Ausführungsformen von Speicherkomponenten gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung.
  • 5 veranschaulicht eine weitere Ausführungsform eines Speicheragenten gemäß des erfinderischen Grundsätzen dieser Patentoffenbarung.
  • GENAUE BESCHREIBUNG
  • Diese Patentoffenbarung umfaßt mehrere erfinderische Grundsätze, die unabhängig Anwendung finden. In manchen Fällen kann Zusatznutzen realisiert werden, wenn einige der Grundsätze in verschiedenen Kombinationen miteinander verwendet werden, was somit zu zusätzlichen Erfindungen Anlaß gibt. Diese Grundsätze können in zahllosen Ausführungsformen realisiert werden. Obwohl für den Zweck des Veranschaulichens der erfinderischen Grundsätze einige bestimmte Einzelheiten gezeigt sind, können viele andere Anordnungen gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung ins Auge gefaßt werden. Somit sind die erfinderischen Grundsätze nicht auf die hierin offenbarten bestimmten Einzelheiten beschränkt.
  • 3 veranschaulicht eine Ausführungsform eines Speicheragenten gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung. Die Ausführungsform der 3 kann in einem Speichersystem benutzt werden, das ein transaktionsbasiertes Protokoll verwendet, bei dem die einzelnen Speicheragenten ihre eigenen Antworten auf Anfragen von einem Speichercontroller planen. Die Ausführungsform der 3 kann durchlaufende Antworten von anderen Speicheragenten über die Verbindung 30 empfangen. Eine Antwortdatei 32 speichert durchlaufende Antworten ebenso wie lokal erzeugte Antworten. Jede Antwort hat einen Identifizierer. Eine Logik 34 plant das Senden von Antworten aus der Antwortdatei 32 an einen anderen Agenten oder Speichercontroller über die Verbindung 36. Der Identifizierer für jede Antwort kann Prioritätsinformation umfassen, die die Planungslogik verwendet, um die Abfolge neu zu ordnen, in welcher die Antworten gesendet werden. Der Identifizierer für jede durchlaufende Antwort kann über dieselbe Verbindung empfangen werden wie die Antwort selbst, zum Beispiel kann er in der Antwort eingebettet sein.
  • 4 veranschaulicht eine Ausführungsform eines Speichersystems, das Ausführungsformen eines Controllers und eines oder mehrerer Speicheragenten gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung umfaßt. Ein Speichercontroller 38 umfaßt Logik 40, um Anfragen mit Identifizierern über einen Speicherkanal zu senden. Bei diesem Beispiel umfaßt der Kanal auslaufende Verbindungen 42, 44 und einlaufende Verbindungen 46, 48. Der Speicheragent 50 umfaßt eine Antwortdatei 54, um durchlaufende Antworten, die über die Verbindung 40 empfangen werden, ebenso wie lokal erzeugte Antworten zu speichern. Eine Anfragedatei 52 speichert Anfragen, die auf der Verbindung 42 empfangen worden sind. Die Anfragen können lokale Anfragen sein, die für Speicherressourcen gedacht sind, die sich beim Agenten 50 befinden, oder sie können durchlaufende Anfragen sein, die an einen anderen Agenten über die Verbindung 44 geschickt werden.
  • Jede Anfrage und ihre sich ergebende Antwort haben einen Identifizierer. Der Identifizierer für jede Anfrage und durchlaufende Antwort kann über dieselbe Verbindung empfangen werden, wie die Anfrage oder die Antwort selbst; zum Beispiel kann er in die Anfrage oder Antwort eingebettet sein. Eine Logik 56 plant die Sendung von Antworten aus der Antwortdatei 54 an einen anderen Agenten oder Speichercontroller über die Verbindung 46 entsprechend der Identifikation für jede Antwort in der Antwortdatei. Sie kann auch die Identifizierer für Anfragen in der Anfragedatei 52 betrachten, wenn die Antworten geplant werden.
  • Der Identifzierer für jede Anfrage und Antwort kann Prioritätsinformation umfassen, die die Planungslogik verwendet, um die Abfolge neu zu ordnen, in der die Antworten gesendet werden. Die Identifizierer können auch eindeutig sein. Wenn zum Beispiel die Controllerlogik 40 eine maximale Anzahl ausstehender Anfragen hat, kann sie jeder Anfrage ein eindeutige Zahl bis zu der maximalen Anzahl von Anfragen zuweisen, und die Anfrage- und Antwortdateien in dem Speicheragenten können groß genug gestaltet werden, um Anfragen und Antworten für die maximale Anzahl der Anfragen zu speichern. Als ein weiteres Beispiel können die Identifzierer als Zeitstempel implementiert werden, wobei früheren Anfragen eine höhere Priorität als späteren Anfragen gegeben wird. Die Anfragen und Antworten können dann in ihren jeweiligen Dateien in der relativen Ordnung ihrer Identifizierer gespeichert werden.
  • Die Speicherkomponenten der 3 und 4 können in irgendeiner geeigneten physikalischen Anordnung implementiert werden. Zum Beispiel kann einer der Speicheragenten 34 und 50 monolithisch als integrierte Schaltung (IC – Integrated Circuit) hergestellt werden, die dann zum Beispiel auf einer gedruckten Schaltkarte (PC-Karte – Printed Circuit Board) angeordnet werden kann. Ein Speicheragent kann auch eine Speicherschnittstelle zum Kommunizieren mit Speichervorrichtungen, so wie DRAM-Chips, umfassen. Ein Speicheragent gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung kann als ein Speicher-Hub implementiert werden, der viel der gleichen Funktionalität wie ein Speicherpuffer umfaßt, kann jedoch auch zusätzliche Funktionalität umfassen, so wie ein Controller für Speichervorrichtungen, z.B. ein DRAM-Controller.
  • Ein Speichermodul gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung kann einen Speicherpuffer umfassen, der als ein IC-Chip hergestellt und auf einer PC-Karte angeordnet ist, zusammen mit Speichervorrichtungen, die auch auf der Karte angeordnet sind und mit dem Puffer durch die Speicherschnittstelle kommunizieren. Das Modul kann mit der Basisplatine eines Computers zum Beispiel durch einen Kartenkantenverbinder verbunden werden. Ein Speichercontroller gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung kann als ein Teil eines Prozessors oder eines Prozessor-Chipsatzes hergestellt werden und auf der Basisplatine angebracht werden, um einen Steuerkanal mit dem gepufferten Modul bilden. Als Alternative können der Speichercontroller, der Speicheragent und die Speichervorrichtungen auf einer einzigen PC-Karte hergestellt werden. Andere Anordnungen sind gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung möglich.
  • 5 veranschaulicht eine weitere Ausführungsform eines Speicheragenten gemäß den erfinderischen Grundsätzen dieser Patentoffenbarung. Die Ausführungsform der 5 implementiert einen Speicher-Hub zur Verwendung in einem Speicherkanal mit dualen Datenwegen mit unidirektionalen Verbindungen zwischen Komponenten. Eine Schicht 58 auslaufender Verbindungen umfaßt Empfänger 60, die Signale auf Signalspuren OBLI empfangen, eine Spurentzerrschaltung 62 und eine Weitertreibeschaltung 64, um auslaufende Anfragen an andere Hubs auf den Signalspuren OBLO weiterzusenden. Eine Seriell-zu-Parallel (S2P – Serial-to-Parallel)-Schaltung 66 wandelt Anfragen in paralleles Format für die Anfragedatei 68 um, die groß genug ist, um die Anfragen für die maximale Anzahl ausstehender Anfragen zu behandeln, die von einem Speichercontroller auf dem Speicherkanal implementiert werden kann. Eine Speicherschnittstelle 70 verbindet den Hub mit Speichervorrichtungen, die in diesem Beispiel DRAM-Chips 72 sind. Die Schnittstelle umfaßt einen DRAM-Speichercontroller 71, um die Steuerung der Speichervorrichtungen von dem Controller abzuziehen. Als Alternative kann der Speichercontroller weggelassen werden, wobei in diesem Fall der Speichercontroller DRAM-Befehle erzeugen könnte, die direkt zu den Speichervorrichtungen geschickt werden können. Die Speicherschnittstelle umfaßt auch Schaltung 74 für den Dateneinfang, die Fehlererfassung und -korrektur usw.
  • Antworten, die lokal erzeugt werden, sind in einer Antwortdatei 76 abgespeichert, die auch groß genug ist, um Antworten für das Maximum ausstehender Anfragen zu speichern, die durch den Speichercontroller implementiert werden können. Die Antwortdatei 76 speichert auch durchlaufende Antworten, die von weiter außen liegenden Hubs empfangen werden können. Eine Schicht 78 einlaufender Verbindungen umfaßt Empfänger 80, um Signale auf Signalspuren IBLI zu empfangen, eine Spurentzerrschaltung 82 und eine Weitertreibeschaltung 84, um einlaufende Antworten an andere Hubs oder einen Speichercontroller auf Signalspuren IBLO weiter zu senden. Eine Seriell-zu-Parallel (S2P)-Schaltung 86 wandelt Antworten in paralleles Format zum Speichern in der Antwortdatei auf. Die Schicht einlaufender Verbindungen umfaßt weiter Verschmelzungsauswahllogik 88, um lokale Antworten in dem einlaufenden Datenstrom einzuschmelzen, wobei versucht wird, einen blasenfreien Datenstrom zu dem Speichercontroller beizubehalten. Eine Parallel-zu-Seriell (P2S – Parallel to Serial)- und Frame-Ausrichte-FIFO-Schaltung 89 zusammen mit einem Multiplexer 90 vervollständigen die Verbindung von der Antwortdatei zu der einlaufenden Datenverbindung.
  • Eine Planungslogik 92 schnuppert die Anfrage- und Antwortdateien durch, um die Reihenfolge zu planen, in der die lokalen und durchlaufenden Antworten auf der einlaufenden Verbindung gesendet werden.
  • Bei einer Ausführungsform weist der Speichercontroller jeder Anfrage einen eindeutigen Identifizierer als einen inkrementierenden Wert zu, der als ein Zeitstempel verwendet wird, um die relative Priorität der Anfrage darzustellen. Anfragen mit niedrigeren Werten (und daher höherer Priorität) wird allgemein die Priorität gegenüber späteren Anfragen mit höheren Werten gegeben. Der Controller kann somit Identifizierer in einer Weise zuweisen, daß Antworten auf Anfragen hoher Priorität zu dem Controller vor den Antworten auf Anfragen niedriger Priorität geschickt werden, wobei trotzdem das Aushungern von Antworten von den äußersten Hubs vermieden wird.
  • Wenn ein Hub eine Anfrage empfängt, decodiert er die Anfrage, greift auf lokale Speicherressourcen zurück, um die Anfrage zu bedienen, und erzeugt einen einlaufende Antwort. Ein Hub an dem äußersten Ende des Kanals hat keine Konflikte mit Antworten von anderen Hubs, so kann er seine Antwort, sobald sie verfügbar ist, senden. Hubs, die näher am Speichercontroller sind, müssen jedoch nicht wissen, wann ein äußerer Hub das Senden einer Antwort an die einlaufende Verbindung beginnen mag. Ein Hub kann somit einlaufende Antworten von anderen Hubs in seine Antwortdatei speichern. Indem die Antwortdatei groß genug gemacht wird, um Antworten für alle ausstehenden Anfragen zu speichern, kann es möglich sein sicherzustellen, daß auf dem einlaufenden Weg keine Kollisionen geschehen und keine Antworten verlorengehen. Dies kann sogar ohne irgendwelche besondere Quittungsbetrieb-Signalgebung oder -logik möglich sein. Wenn jeder Anfrage/Antwort ein eindeutiger Identifizierer zugewiesen wird und die Antwortdatei einen Raum umfaßt, der für jeden Identifizierer der Antwort zur Verfügung steht, kann es immer Raum geben, jedwede Antwort zu speichern, ob sie lokal erzeugt ist oder durchläuft.
  • Bei einer beispielhaften Ausführungsform werden die Antworten, die in dem Speicherhub gepuffert werden, in der Antwortdatei in der relativen Reihenfolge ihrer Identifizierer gespeichert. Bevor ein Hub seine eigene lokal erzeugte Antwort sendet, prüft die Planungslogik die Antwortdatei, um zu sehen, ob irgendwelche Antworten mit höherer Priorität verfügbar sind. Wenn es sie gibt, kann der Hub seine eigene Antwort in der Antwortdatei speichern und dann die Antwort höherer Priorität vor seiner eigenen senden. Wenn Antworten auf der einlaufen den Verbindung gesendet werden, können mehr Antworten von äußeren Hubs empfangen werden. Einige dieser Antworten können höhere Priorität haben als Antworten, die bereits in der Antwortdatei sind, wobei in diesem Fall sie vor den zuvor empfangenen Antworten neu angeordnet werden können.
  • Während die Antwortplanung arbeitet, bedient der lokale Speicherhub weiter seine eigenen Anfragen. Wenn eine lokale Anfrage mit einer höheren Priorität als irgendeiner in der Antwortdatei abgeschlossen ist, kann sie unmittelbar auf der einlaufenden Verbindung gesendet werden. Wenn die Beendigung der lokalen Anfrage eine geringere Priorität hat als eine Antwort in der Antwortdatei, wird die Antwort mit höherer Priorität an den Controller geschickt, und die lokale Antwort mit niedrigerer Priorität wird an ihrem bezeichneten Ort in der Antwortdatei für die Lieferung zu einem späteren Zeitpunkt gespeichert.
  • Die Planungslogik kann auch den Status der Anfragen betrachten, die noch in der Anfragedatei anhängig sind, wenn sie bestimmt, wie der Strom der Antworten neu zu ordnen ist.
  • Die Ausführungsformen, die oben beschrieben sind, können in Anordnung und Einzelheiten abgeändert werden, ohne daß man sich von den erfinderischen Grundsätzen entfernt. Zum Beispiel sind einige Ausführungsformen der Speicheragenten mit Schnittstellen zu vier Verbindungen zur Verwendung in einem Speicherkanal mit dualen Datenwegen mit unidirektionalen (Simplex)-Verbindungen zwischen Komponenten veranschaulicht, jedoch können die erfinderischen Grundsätze auf Speicheragenten angewendet werden, die in einer Ringtopologie angeordnet sind. Als ein weiteres Beispiel kann Logik entweder als Schaltung (Hardware) oder als Software implementiert werden, ohne daß man sich von den erfinderischen Grundsätzen entfernt. Demgemäß werden solche Änderungen und Modifikationen so betrachtet, daß sie in den Umfang der folgenden Ansprüche fallen.
  • ZUSAMMENFASSUNG
  • Ein Speicheragent plant lokale und durchlaufende Antworten entsprechend einem Identifizierer für jede Antwort. Eine Antwortdatei kann groß genug sein, um Antworten für eine maximale Anzahl von Anfragen zu speichern, die auf einem Speicherkanal ausstehen. Eine Anfragedatei kann groß genug sein, um Anfragen für eine maximale Anzahl Anfragen zu speichern, die auf dem Speicherkanal ausstehen können. Der Identifizierer für jede Anfrage und/oder Antwort kann auf derselben Kanalverbindung empfangen werden, wie die Anfrage und/oder Antwort. Weitere Ausführungsformen werden beschrieben und beansprucht.

Claims (29)

  1. Speicheragent, der aufweist: eine Antwortdatei, um lokale und durchlaufende Antworten zu speichern; und Logik, um das Senden der Antworten entsprechend einem Identifizierer für jede Antwort zu planen.
  2. Speicheragent nach Anspruch 1, bei dem die Identifizierer für die durchlaufenden Antworten auf derselben Verbindung empfangen werden wie die durchlaufenden Antworten.
  3. Speicheragent nach Anspruch 1, bei dem die Identifizierer Prioritätsinformation aufweisen.
  4. Speicheragent nach Anspruch 3, bei dem die Logik zum Planen der Sendung eine Logik zum Neuordnen von Sendungen basierend auf der Priorität jeder Antwort aufweist.
  5. Speicheragent nach Anspruch 1, bei dem die Antworten in der Antwortdatei in der relativen Reihenfolge ihrer Identifizierer gespeichert werden.
  6. Speicheragent nach Anspruch 1, weiter mit einer Anfragedatei, um Anfragen mit Identifizierern zu speichern.
  7. Speicheragent nach Anspruch 6, bei dem die Identifizierer für jede Anfrage auf derselben Verbindung wie Anfragen empfangen werden.
  8. Speicheragent nach Anspruch 6, bei dem die Anfragedatei lokale Anfragen und durchlaufende Anfragen speichert.
  9. Speicheragent nach Anspruch 6, bei dem die Anfragen in der Anfragedatei in der relativen Reihenfolge ihrer Identifizierer gespeichert sind.
  10. Speicheragent nach Anspruch 1, bei dem: die durchlaufenden Antworten auf einer ersten Verbindung; und die lokalen und durchlaufenden Antworten auf einer zweiten Verbindung gesendet werden.
  11. Speicheragent nach Anspruch 7, bei dem: die durchlaufenden Antworten auf einer ersten Verbindung empfangen werden; die lokalen und durchlaufenden Antworten auf einer zweiten Verbindung gesendet werden; und die Anfragen auf einer dritten Verbindung empfangen werden.
  12. Speicheragent nach Anspruch 9, bei dem die durchlaufenden Antworten auf einer ersten Verbindung empfangen werden; die lokalen und durchlaufenden Antworten auf einer zweiten Verbindung gesendet werden; die lokalen und durchlaufenden Anfragen auf einer dritten Verbindung empfangen werden; und die durchlaufenden Anfragen auf einer vierten Verbindung gesendet werden.
  13. Speichersystem, das aufweist: einen Speichercontroller, der Logik aufweist, um Anfragen mit Prioritäten über einen Kanal zu senden; und einen Speicheragenten, der mit dem Kanal gekoppelt ist und aufweist: eine Antwortdatei, um lokale Antworten und durchlaufende Antworten zu speichern; und Logik, um Sendung der Antworten an den Speichercontroller gemäß der Priorität jeder Antwort zu planen.
  14. System nach Anspruch 13, bei dem: die Logik des Speichercontrollers eines maximale Anzahl ausstehender Anfragen hat; und die Antwortdatei groß genug ist, um Antworten für die maximale Anzahl der Anfragen zu speichern.
  15. System nach Anspruch 13, bei dem der Speicheragent weiter eine Anfragedatei aufweist, um Anfragen mit Prioritäten zu speichern.
  16. System nach Anspruch 15, bei dem: die Logik des Speichercontrollers eine maximale Anzahl ausstehender Anfragen hat; und die Anfragedatei groß genug ist, um Anfragen für die maximale Anzahl von Anfragen zu speichern.
  17. System nach Anspruch 15, bei dem die Logik des Speicheragenten eine Logik zum Planen von Sendung der Antworten gemäß der Priorität jeder Anfrage und Antwort aufweist.
  18. System nach Anspruch 13, bei dem die Prioritäten Zeitstempel aufweisen.
  19. System nach Anspruch 13, bei dem der Speicheragent weiter eine Speicherschnittstelle aufweist.
  20. System nach Anspruch 19, bei dem die Antwortdatei, die Logik und die Speicherschnittstelle auf einer integrierten Schaltung hergestellt sind.
  21. System nach Anspruch 20, bei dem der Speicheragent weiter Speichervorrichtungen aufweist, die an die Speicherschnittstelle gekoppelt sind.
  22. System nach Anspruch 21, bei dem die integrierte Schaltung und die Speichervorrichtungen auf einer gedruckten Schaltkarte angeordnet sind.
  23. Verfahren das aufweist: Speichern lokaler und durchlaufender Antworten in einer Antwortdatei an einem Speicheragenten; und Senden der Antworten gemäß einem Identifizierer für jede Antwort.
  24. Verfahren nach Anspruch 23, das weiter das Empfangen der Identifizierer für die durchlaufenden Antworten auf derselben Verbindung wie die durchlaufenden Antworten aufweist.
  25. Verfahren nach Anspruch 23, das weiter das Speichern lokaler und durchlaufender Anfragen mit Identifizierern bei dem Speicheragenten aufweist.
  26. Verfahren nach Anspruch 25, das weiter das Senden der Antworten entsprechend einem Identifizierer für jede Anfrage und Antwort aufweist.
  27. Verfahren das aufweist: Senden von Anfragen mit Prioritäten von einem Speichercontroller an einen Speicheragenten über einen Kanal; Speichern lokaler und durchlaufenden Antworten in einer Antwortdatei an dem Speicheragenten; und Senden der Antworten von dem Speicheragenten an den Speichercontroller gemäß der Priorität jeder Antwort.
  28. Verfahren nach Anspruch 27, das weiter das Speichern lokaler und durchlaufender Anfragen mit Prioritäten bei dem Speicheragenten aufweist.
  29. Verfahren nach Anspruch 28, das weiter das Senden der Antworten von dem Speicheragenten an den Speichercontroller entsprechend der Priorität jeder Anfrage und Antwort aufweist.
DE112006001543T 2005-06-22 2006-06-22 Antwortplanung bei einem Speicherkanal Ceased DE112006001543T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/165,582 2005-06-22
US11/165,582 US20070016698A1 (en) 2005-06-22 2005-06-22 Memory channel response scheduling
PCT/US2006/024720 WO2007002546A2 (en) 2005-06-22 2006-06-22 Memory channel response scheduling

Publications (1)

Publication Number Publication Date
DE112006001543T5 true DE112006001543T5 (de) 2008-04-30

Family

ID=37595938

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112006001543T Ceased DE112006001543T5 (de) 2005-06-22 2006-06-22 Antwortplanung bei einem Speicherkanal

Country Status (7)

Country Link
US (1) US20070016698A1 (de)
JP (1) JP4920036B2 (de)
KR (1) KR100960542B1 (de)
DE (1) DE112006001543T5 (de)
GB (1) GB2442625A (de)
TW (1) TWI341532B (de)
WO (1) WO2007002546A2 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7331010B2 (en) 2004-10-29 2008-02-12 International Business Machines Corporation System, method and storage medium for providing fault detection and correction in a memory subsystem
US7685392B2 (en) * 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
US7562285B2 (en) 2006-01-11 2009-07-14 Rambus Inc. Unidirectional error code transfer for a bidirectional data link
US20100189926A1 (en) * 2006-04-14 2010-07-29 Deluca Charles Plasma deposition apparatus and method for making high purity silicon
JP5669338B2 (ja) * 2007-04-26 2015-02-12 株式会社日立製作所 半導体装置
US8601181B2 (en) 2007-11-26 2013-12-03 Spansion Llc System and method for read data buffering wherein an arbitration policy determines whether internal or external buffers are given preference
CN102609378B (zh) 2012-01-18 2016-03-30 中国科学院计算技术研究所 一种消息式内存访问装置及其访问方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493250B2 (en) * 2000-12-28 2002-12-10 Intel Corporation Multi-tier point-to-point buffered memory interface
US6820181B2 (en) * 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US20050166006A1 (en) * 2003-05-13 2005-07-28 Advanced Micro Devices, Inc. System including a host connected serially in a chain to one or more memory modules that include a cache
US20050050237A1 (en) * 2003-08-28 2005-03-03 Jeddeloh Joseph M. Memory module and method having on-board data search capabilities and processor-based system using such memory modules
US7779212B2 (en) * 2003-10-17 2010-08-17 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US7120743B2 (en) * 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7412574B2 (en) * 2004-02-05 2008-08-12 Micron Technology, Inc. System and method for arbitration of memory responses in a hub-based memory system
KR100549869B1 (ko) * 2004-10-18 2006-02-06 삼성전자주식회사 의사 차동 출력 버퍼, 이를 이용한 메모리 칩 및 메모리시스템

Also Published As

Publication number Publication date
GB2442625A (en) 2008-04-09
WO2007002546A2 (en) 2007-01-04
TWI341532B (en) 2011-05-01
JP2008547099A (ja) 2008-12-25
KR20080014084A (ko) 2008-02-13
US20070016698A1 (en) 2007-01-18
GB0722954D0 (en) 2008-01-02
JP4920036B2 (ja) 2012-04-18
TW200713274A (en) 2007-04-01
KR100960542B1 (ko) 2010-06-03
WO2007002546A3 (en) 2007-06-21

Similar Documents

Publication Publication Date Title
DE3751091T2 (de) Übertragungsprotokoll zwischen Prozessoren.
DE2913288C2 (de) Multiprozessoranlage mit einer Vielzahl von Prozessorbausteinen
DE2646296C3 (de) Elektronische assoziative Mehrrechner Schaltungsanordnung mit einem modularen Aufbau
DE4121446C2 (de) Terminal-Server-Architektur
DE4019519A1 (de) Verbesserte vorrichtung und protokoll fuer ein lokales netzwerk
DE69735936T2 (de) Seriendatenschnittstellenverfahren und vorrichtung #
DE112006001543T5 (de) Antwortplanung bei einem Speicherkanal
DE69230656T2 (de) Universelle Koppeleinrichtung zwischen einem Rechnerbus und einer Steuereinheit einer Gruppe von Periphergeräten
EP0179936A1 (de) Verfahren und Einrichtung zur Steuerung einer Sammelleitung
DE68927795T2 (de) Übertragungssystem mit einem gemeinsamen Speicher
DE112007001135T5 (de) Gemeinschaftliche Nutzung von Daten durch Partitionen in einem partitionierbaren System
DE2921419A1 (de) Schaltungsanordnung und verfahren zur uebertragung digitaler information zwischen wenigstens einer ersten und einer zweiten sammelleitung
DE112004002043B4 (de) Verfahren, System und Programm zum Aufbau eines Pakets
DE112010005609T5 (de) Speichern von Daten in einem einer Mehrzahl von Puffern in einer Speichersteuerung
DE3853337T2 (de) Mechanismus und Verfahren zur Fernverwaltung von Speichern.
DE112006003503T5 (de) Mehrfachanschluss-Speicher mit Banksätzen zugeordneten Anschlüssen
DE2148956A1 (de) Datenuebertragungssystem
DE3142504A1 (de) Mehrfachplattenspeicher-uebertragungssystem
DE102020111039A1 (de) Geräteunterstützung bestellte und unbestellte transaktionsklassen
EP1370952B1 (de) Kommunikationsverfahren zur realisierung von ereigniskanälen in einem zeitgesteuerten kommunikationssystem
DE69719123T2 (de) System zur Datenverarbeitung und -kommunikation mit PCI-Hochdurchsatzbus
DE69521387T2 (de) Datenverarbeitungssystem mit minderstens zwei Prozessoren
DE60022952T2 (de) Verteilter Bus für Dienstanforderungen mit Token zur Auflösung von Kollisionen
DE3333847C2 (de)
DE19846913A1 (de) Elektronische Steuereinrichtung mit einem parallelen Datenbus und Verfahren zum Betreiben der Steuereinrichtung

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection