WO2001029673A1 - Memory module for a multi-processor system and a multi-processor system - Google Patents

Memory module for a multi-processor system and a multi-processor system Download PDF

Info

Publication number
WO2001029673A1
WO2001029673A1 PCT/DE2000/003735 DE0003735W WO0129673A1 WO 2001029673 A1 WO2001029673 A1 WO 2001029673A1 DE 0003735 W DE0003735 W DE 0003735W WO 0129673 A1 WO0129673 A1 WO 0129673A1
Authority
WO
WIPO (PCT)
Prior art keywords
processor
memory
access
prn
controller
Prior art date
Application number
PCT/DE2000/003735
Other languages
German (de)
French (fr)
Inventor
Frank Bellosa
Alexander Mircescu
Original Assignee
Siemens Aktiengesellschaft
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 Siemens Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Priority to DE10083192T priority Critical patent/DE10083192D2/en
Publication of WO2001029673A1 publication Critical patent/WO2001029673A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache

Definitions

  • the invention relates to a memory device for a multi-processor system in which multiple processors via a processor to the interface of the block CONNECTING ⁇ are bar.
  • the invention also relates to a multiprocessor system with a memory chip.
  • DRAMs ie dynamic RAM memories
  • DRAMS synchronous DRAMS
  • the actual access time can be kept relatively short by using known reference locations, but it is disadvantageous that in addition to the actual data transfer between memory and processors, a complex coherence protocol on the bus is also kept - System must run, which ultimately also increases the power dissipation of a block.
  • the problem of cache coherence together with a much used coherence protocol is the ME S I protocol, for example, explained in: olfgang K. Giolo, "Computer Architecture", Springer-Verlag 1993, pages 111 to 116.
  • DRAM SRAM static RAM
  • This object is achieved according to the invention with a memory module of the type mentioned at the outset by providing a DRAM memory bank connected to a plurality of controllers via an internal bus, the controllers, which are also connected to the interface, being equipped with a RAM cache and are configurable.
  • the invention de facto shifts the caches from the processors m the memory chip, since the SRAMS small size z. B. 1024 bits represent a kind of cache to the controllers assigned to the memory bank. This also avoids the not inconsiderable effort for a complex chache coherence protocol for the processor chaches and its operation.
  • a memory chip according to the invention can also be easily adapted to the respective application, with memory blocks connected via a reference local act already in the Main memory can be cached and their transfer to the processors can take place concurrently.
  • the invention is particularly advantageous for embedded systems because there PEIC the S h of the processors erzugriffs previously known and is equential A deterministic. Therefore, the storage system can be configured for optimal caching and pre-fetching to minimize the mean memory access time.
  • Another object of the invention is to create a multiprocessor system which uses a main memory with at least one memory module and which offers short access times at low costs.
  • This object is achieved with a multiprocessor system which contains a memory chip of the type according to the invention and in which the number m of controllers is at least equal to the number n of processors and at least one controller is provided for each processor.
  • Such a multi-processor system offers the advantages already mentioned above. Due to the spatial proximity of the controllers with their caches to the memory bank, an easy-to-implement coherence protocol can be used, which runs on the internal bus of the memory module.
  • a controller assigned to a processor can be programmed taking into account the access characteristics of the processor. This enables the prefetch strategy to be optimally adapted to the system conditions. In certain cases, it is also recommended that a cache coherence protocol be run on the internal bus of the memory chip.
  • W ie he d figure is removed includes a multiprocessor system is essentially a number n of processors PRl, PR2 ... PRn, a memory block SPB, an input / output unit I / O processor and a PBU. All processors PR1 ... PRn can access the shared memory SPB via the processor bus PBU.
  • Such multiprocessor systems are known and are described, for example, in: W. Oberschelp /
  • the path followed by the invention now provides that the memory module SPB not only contains a DRAM memory bank DSB, but also a plurality of controllers 1 CO1 ... COm, z. B. 16 pieces, each containing a RAM cache RAC and can communicate with the DRAM memory tape DSB via an internal bus IBU.
  • This memory bank DSB can have a size of 256 kByte, 1 MByte or 4 MByte, for example, the RAM caches RAC, on the other hand, have a small size of z. B. only one kByte, with, for example, cache lines ("cache lines") of 32 bytes.
  • the controllers COl ... COm are connected to the processor bus PBU via an interface IFA, symbolically indicated here.
  • controllers CI1 ... COm are configurable, whereby a controller COl ... COm can be programmed for each processor PRl ... PRn, so that it has (main) memory access, ie access to controls the DRAM memory bank DSB of the respective processor.
  • a controller COl ... COm must be provided for each processor PRl ... PRn, but other configurations can also be expedient. For example be when there are four processors to the first processor, eight of the sixteen controller associated with the second processor six of the controller and the third and fourth processor j in each case a single controller dependent on the task area and the power of the individual processors.
  • the access characteristics of the assigned processor PRl ... PRn are communicated to each of the controllers COl COm, and the following characteristics can generally be provided.
  • the memory content is transferred asynchronously to the current requirements in a RAM cache RAC of the controller COl ... COm, namely:
  • COl ... COm is used for each storage area, e.g. 4 MB, the block size, typically in the range of 64 to 1024 bytes. With e.g. third access to a block, the entire block is transferred to the RAM cache RAC.
  • the invention thus enables a virtually parallel access of the processors PR1 ... PRn to the DRAM memory bank SPB, but direct access of a processor to the memory bank is not possible.
  • the single number "memory bank” used here cannot be seen physically and should not rule out that there are also several memory banks or several memory modules in a system.

Abstract

The invention relates to a memory module (SPB) for a multi-processor system in which several processors (PR1 PRn) can be connected to the interface (IFA) of the module via a processor bus (PBU). To this end, a DRAM memory bank (DSB) is provided which is connected to a number of controllers (CO1 ... COm) via an internal bus (IBU), and the controllers which are connected to the interface (IFA) on the other side are each equipped with a RAM cache (RAC) and can be configured.

Description

Beschreibungdescription
Speicherbaustein für ein Mehrprozessorsystem und Mehrprozes¬ sorsystem S PEICHER b Austein for a multi-processor system and Mehrprozes ¬ sorsystem
Die Erfindung bezieht sich auf einen Speicherbaustein für ein Mehrprozessorsystem, bei welchem mehrere Prozessoren über einen Prozessorbus an das Interface des Bausteins anschlie߬ bar sind.The invention relates to a memory device for a multi-processor system in which multiple processors via a processor to the interface of the block CONNECTING ¬ are bar.
Ebenso bezieht sich die Erfindung auf ein Mehrprozessorsystem mit einem Speicherbaustein.The invention also relates to a multiprocessor system with a memory chip.
Bei Mehrprozessorsystemen sollen mehrere Mikroprozessoren über einen gemeinsamen Bus an einen gemeinsamen Speicher zugreifen. Man verwendet dabei üblicherweise DRAMs, d. s. dynamische RAM-Speicher, die sich für große Speicherkapazitäten eignen, jedoch eine Zugriffszeit von ca. 60 ns aufweisen. Bei Mikroprozessoren, die mit hoher Frequenz getaktet sind, wird die Systemleistung maßgeblich von der Speicherzugriffszeit bestimmt und die vorhin genannte Zugriffszeit von 60 ns für DRAMS hat einen erheblichen Anteil an der mittleren Speicherzugriffszeit . Nach dem Stand der Technik werden als Speicher sogenannte „Synchronous DRAMS" verwendet, und die damit erzielbare Zugriffsgeschwmdigkeit in der genannten Größenordnung wird akzeptiert. Dabei besitzen die einzelnen Prozessoren, die auf den Speicher zugreifen sollen, Chaches und ein eigenes Chache-Koharenzprotokoll sorgt dafür, dass die Cha- che-Koharenz aufrecht erhalten wird. Durch aufwendige Chache- Koharenzprotokolle kann die tatsachliche Zugriffszeit durch Ausnutzung bekannter Referenzlokalitaten verhältnismäßig gering gehalten werden. Es ist edoch nachteilig, dass neben der eigentlichen Datenübertragung zwischen Speicher und Prozessoren auch ein aufwendiges Koharenzprotokoll auf dem Bus- System laufen muss, welches letztlich auch die Verlustleistung eines Bausteins erhöht. Das Problem der Chachekohärenz ist zusammen mit einem viel verwendeten Kohärenzprotokoll dem MESI-Protokoll beispielsweise erläutert in: olfgang K. Gi- loi, „Rechnerarchitektur", Springer-Verlag 1993, Seiten 111 bis 116.In multiprocessor systems, several microprocessors are to access a common memory via a common bus. DRAMs, ie dynamic RAM memories, are usually used, which are suitable for large memory capacities, but have an access time of approx. 60 ns. For microprocessors that are clocked at high frequency, the system performance is largely determined by the memory access time and the previously mentioned access time of 60 ns for DRAMS has a significant share in the mean memory access time. According to the state of the art, so-called “synchronous DRAMS” are used as the memory, and the access speed of the order of magnitude that can be achieved with this is accepted. The actual access time can be kept relatively short by using known reference locations, but it is disadvantageous that in addition to the actual data transfer between memory and processors, a complex coherence protocol on the bus is also kept - System must run, which ultimately also increases the power dissipation of a block. The problem of cache coherence together with a much used coherence protocol is the ME S I protocol, for example, explained in: olfgang K. Giolo, "Computer Architecture", Springer-Verlag 1993, pages 111 to 116.
Neben DRAMS sind auch sogenannte SRAMS (statische RAMS) be¬ kannt, die mit einer durchschnittlichen Latenz von 10 ns wesentlich schneller als DRAMS arbeiten, jedoch von ihrer Flache her wesentlich großer sind. Für die Speicherung eines Bits oder Bytes ist bei einem SRAM etwa die 4-fache Flache notwendig, die bei einem DRAM erforderlich ist. Das heißt aber, dass die Verwendung eines SRAMs als Speicher wesentlich kürzere Zugriffszeiten ergäbe, jedoch von der Kostenseite her nicht m Frage kommt.In addition, so-called DRAM SRAM (static RAM) be ¬ are known, which operate with an average latency of 10 ns much faster than DRAM, but are of its Flat forth substantially greater. The storage of a bit or byte with SRAM requires approximately 4 times the area required with DRAM. However, this means that the use of an SRAM as memory would result in considerably shorter access times, but there is no question of costs.
Es ist nun eine Aufgabe der Erfindung, einen Speicherbaustein zu schaffen, welcher eine wesentlich geringere Zugriffszeit bietet, ohne dass von der prinzipiellen Verwendung eines DRAMS abgegangen wird.It is now an object of the invention to provide a memory module which offers a significantly shorter access time without departing from the principle use of a DRAM.
Diese Aufgabe wird mit einem Speicherbaustein der eingangs genannten Art erfmdungsgemaß dadurch gelost, dass eine über einen internen Bus mit mehreren Controllern verbundene DRAM- Speicherbank vorgesehen ist, wobei die Controller, welche andererseits mit dem Interface verbunden sind, e mit einem RAM-Cache ausgestattet sowie konfigurierbar sind.This object is achieved according to the invention with a memory module of the type mentioned at the outset by providing a DRAM memory bank connected to a plurality of controllers via an internal bus, the controllers, which are also connected to the interface, being equipped with a RAM cache and are configurable.
Die Erfindung verlagert de facto die Chaches von den Prozessoren m den Speicherchip, da nun die SRAMS geringer Große z. B. 1024 Bit m den der Speicherbank zugeordneten Control- lern eine Art Chache darstellen. Dadurch wird auch der nicht unbeachtliche Aufwand für ein aufwendiges Chache-Koharenz- protokoll für die Prozessorchaches und dessen Betrieb vermieden.The invention de facto shifts the caches from the processors m the memory chip, since the SRAMS small size z. B. 1024 bits represent a kind of cache to the controllers assigned to the memory bank. This also avoids the not inconsiderable effort for a complex chache coherence protocol for the processor chaches and its operation.
Ein Speicherbaustein nach der Erfindung kann außerdem leicht an die jeweilige Anwendung angepasst werden, wobei über eine Referenzlokalltat verbundene Speicherblocke bereits in dem Hauptspeicher gecacht werden können und ihr Transferieren in die Prozessoren nebenlaufig erfolgen kann. Die Erfindung ist besonders vorteilhaft bei eingebetteten Systemen, da dort das Speicherzugriffsverhalten der Prozessoren vorbekannt und im Ablauf deterministisch ist. Daher kann das Speichersystem für optimales Caching und Pre-Fetching konfiguriert werden, um die mittlere Speicherzugriffszeit zu minimieren.A memory chip according to the invention can also be easily adapted to the respective application, with memory blocks connected via a reference local act already in the Main memory can be cached and their transfer to the processors can take place concurrently. The invention is particularly advantageous for embedded systems because there PEIC the S h of the processors erzugriffsverhalten previously known and is equential A deterministic. Therefore, the storage system can be configured for optimal caching and pre-fetching to minimize the mean memory access time.
Eine weitere Aufgabe der Erfindung besteht darin, ein Mehr- prozessorsystem zu schaffen, welches einen Hauptspeicher mit zumindest einem Speicherbaustein verwendet und welches geringe Zugriffszeiten bei geringen Kosten bietet.Another object of the invention is to create a multiprocessor system which uses a main memory with at least one memory module and which offers short access times at low costs.
Diese Aufgabe wird mit einem Mehrprozessorsystem gelöst, welches einen Speicherbaustein der erfindungsgemäßen Art enthalt und bei welchem die Anzahl m der Controller zumindest gleich der Anzahl n der Prozessoren ist und für jeden Prozessor zumindest ein Controller vorgesehen ist.This object is achieved with a multiprocessor system which contains a memory chip of the type according to the invention and in which the number m of controllers is at least equal to the number n of processors and at least one controller is provided for each processor.
Ein solches Mehrprozessorsystem bietet die oben bereits genannten Vorteile. Durch die raumliche Nähe der Controller mit ihren Caches zu der Speicherbank kann ein einfach realisierbares Koharenzprotokoll Anwendung fingen, welches auf dem internen Bus des Speicherbausteins ablauft.Such a multi-processor system offers the advantages already mentioned above. Due to the spatial proximity of the controllers with their caches to the memory bank, an easy-to-implement coherence protocol can be used, which runs on the internal bus of the memory module.
Es ist auch von Vorteil, wenn ein einem Prozessor zugeordneter Controller unter Berücksichtigung der Zugriffscharakteristik des Prozessors programmierbar ist. Dadurch lässt sich eine optimale Anpassung der Prefetch-Stategie an die System- gegebenheiten erzielen. Dabei ist es für bestimmte Fälle auch empfehlenswert, wenn auf dem internen Bus des Speicherbausteins ein Cachekoharenzprotokoll ablauft.It is also advantageous if a controller assigned to a processor can be programmed taking into account the access characteristics of the processor. This enables the prefetch strategy to be optimally adapted to the system conditions. In certain cases, it is also recommended that a cache coherence protocol be run on the internal bus of the memory chip.
Die Erfindung samt weiterer Vorteile ist im folgenden anhand beispielsweiser Ausfuhrungen unter Zuhilfenahme der Zeichnung näher erläutert. In dieser zeigt die einzige Figur in einem Blockschaltbild ein Mehrprozessorsystem mit einem Speicher¬ baustein nach der Erfindung.The invention together with further advantages is explained in more detail below on the basis of exemplary embodiments with the aid of the drawing. In this shows the only figure in one Block diagram of a multiprocessor system having a memory ¬ module according to the invention.
Wie der Figur entnehmbar ist, enthält ein Mehrprozessorsystem im wesentlichen eine Anzahl n von Prozessoren PRl, PR2 ... PRn, einen Speicherbaustein SPB, eine Ein-/Ausgabe-Einheit I/O sowie einen Prozessorbus PBU. Sämtliche Prozessoren PRl ... PRn können dabei über den Prozessorbus PBU auf den gemeinsamen Speicher SPB zugreifen. Derartige Multiprozessorsysteme sind bekannt und beispielsweise beschreiben in: W. Oberschelp/ W ie he d figure is removed, includes a multiprocessor system is essentially a number n of processors PRl, PR2 ... PRn, a memory block SPB, an input / output unit I / O processor and a PBU. All processors PR1 ... PRn can access the shared memory SPB via the processor bus PBU. Such multiprocessor systems are known and are described, for example, in: W. Oberschelp /
G. Bossen, „Rechenaufbau und Rechnerstrukturen", 7. Auflage, R. Oldenburg Verlag, 1998, ISBN 3-486-24288-1, Kapitel 13, p. 415 ff. Wie bereits eingangs erwähnt sind bei solchen bekannten Strukturen die Cache-Speicher bei bzw. in jedem Prozessor für den Zugriff auf den Speicher von Bedeutung.G. Bossen, "Computing structure and computer structures", 7th edition, R. Oldenburg Verlag, 1998, ISBN 3-486-24288-1, Chapter 13, p. 415 ff. Memory at or in each processor is important for access to the memory.
Der im Gegensatz dazu von der Erfindung beschrittene Weg sieht nun vor, dass der Speicherbaustein SPB nicht nur eine DRAM-Speicherbank DSB enthält, sondern auch mehrere Control- 1er COl ... COm, z. B. 16 Stück, die je ein RAM-Chache RAC enthalten und über einen internen Bus IBU mit der DRAM-Speicherband DSB kommunizieren können. Diese Speicherbank DSB kann beispielsweise eine Größe von 256 kByte, 1 MByte oder 4 MByte besitzen, die RAM-Caches RAC hingegen weisen eine ge- ringe Größe von z. B. lediglich ein kByte auf, mit beispielsweise Cache-Zeilen („Cachelines") von 32 Byte. Die Controller COl ... COm stehen über ein Interface IFA, hier symbolisch angedeutet, mit dem Prozessorbus PBU in Verbindung.In contrast, the path followed by the invention now provides that the memory module SPB not only contains a DRAM memory bank DSB, but also a plurality of controllers 1 CO1 ... COm, z. B. 16 pieces, each containing a RAM cache RAC and can communicate with the DRAM memory tape DSB via an internal bus IBU. This memory bank DSB can have a size of 256 kByte, 1 MByte or 4 MByte, for example, the RAM caches RAC, on the other hand, have a small size of z. B. only one kByte, with, for example, cache lines ("cache lines") of 32 bytes. The controllers COl ... COm are connected to the processor bus PBU via an interface IFA, symbolically indicated here.
Neben dieser Struktur ist es wesentlich, dass die Controller CI1 ... COm konfigurierbar sind, wobei für jeden Prozessor PRl ... PRn ein Controller COl ... COm programmiert werden kann, sodass er den (Haupt) speicherzugriff, d. h. den Zugriff auf die DRAM-Speicherbank DSB, des jeweiligen Prozessors steuert. Dazu muss natürlich für jeden Prozessor PRl ... PRn zumindest ein Controller COl ... COm vorgesehen sein, doch können auch andere Konfigurationen zweckmäßig sein. Beispielsweise können bei Vorhandensein von vier Prozessoren dem ersten Prozessor acht der sechzehn Controller zugeordnet werden, dem zweiten Prozessor sechs der Controller und dem dritten und vierten Prozessor jeweils ein einziger Controller abhangig von dem Aufgabenbereich und der Leistung der einzelnen Prozessoren.In addition to this structure, it is essential that the controllers CI1 ... COm are configurable, whereby a controller COl ... COm can be programmed for each processor PRl ... PRn, so that it has (main) memory access, ie access to controls the DRAM memory bank DSB of the respective processor. For this, of course, at least one controller COl ... COm must be provided for each processor PRl ... PRn, but other configurations can also be expedient. For example be when there are four processors to the first processor, eight of the sixteen controller associated with the second processor six of the controller and the third and fourth processor j in each case a single controller dependent on the task area and the power of the individual processors.
Jedem der Controller COl COm wird die Zugriffscharakteri- stik des zugeordneten Prozessors PRl ... PRn mitgeteilt, wobei man im allgemeinen folgende Charakteristika vorsehen kann.The access characteristics of the assigned processor PRl ... PRn are communicated to each of the controllers COl COm, and the following characteristics can generally be provided.
„Sequential" Sequentieller Zugriff mit auf-/absteι- genden Adressen."Sequential" Sequential access with ascending / descending addresses.
„Blocked" Zugriff auf Speicherblocke bekannter Große"Blocked" access to memory blocks of known sizes
„Random" Zugriff auf den Speicher ohne Referenzmuster."Random" access to the memory without reference pattern.
Je nach Typ des Speicherzugriffs wird Speicherinhalt asynchron zu den laufenden Anforderungen in ein RAM-Chache RAC der Controller COl ... COm transferiert, nämlich:Depending on the type of memory access, the memory content is transferred asynchronously to the current requirements in a RAM cache RAC of the controller COl ... COm, namely:
„Sequential Access": Durch einen 2-Bιt Prediktor wird die Zugriffsrichtung - nämlich auf- oder absteigend- bestimmt und ab einem bestimmten, z. B. dem dritten Zugriff wird ein Prefetching der nachfolgenden Cache-Zeile ( „Chachelme" ) durchge- fuhrt. Der Prediktor protokolliert die"Sequential Access": The access direction - namely ascending or descending - is determined by a 2-bit predictor and from a certain, for example the third access, the following cache line ("chachelme") is prefetched , The predictor logs the
Zugriffsrichtung im Hinblick auf auf- oder absteigende Adressen, um bei einem erneuten Zugriff vorherzusagen, ob die Cacheline mit ab- oder aufsteigenden Adressen gefüllt werden soll. „Blocked Access": In einem Registerfeld eines ControllersDirection of access with regard to ascending or descending addresses, in order to predict whether the cacheline should be filled with descending or ascending addresses if it is accessed again. "Blocked Access": In a register field of a controller
COl ... COm wird für jeden Speicherbereich, z.B. 4 MByte, die Blockgröße, typischerweise im Bereich von 64 bis 1024 Bytes, gespeichert. Beim z.B. dritten Zugriff auf einen Block wird der gesamte Block in das RAM-Chache RAC transferiert .COl ... COm is used for each storage area, e.g. 4 MB, the block size, typically in the range of 64 to 1024 bytes. With e.g. third access to a block, the entire block is transferred to the RAM cache RAC.
„Random Access": In diesem Fall eines völlig irregulären"Random Access": In this case, a completely irregular one
Zugriffs wird keinerlei Prefetching durchgeführt .Access is not prefetched.
Die Erfindung ermöglicht somit einen quasi parallelen Zugriff der Prozessoren PRl ... PRn auf die DRAM-Speicherbank SPB, doch ist ein direkter Zugriff eines Prozessors auf die Speicherbank nicht möglich. An dieser Stelle sei erwähnt, dass die hier verwendete Einzahl „Speicherbank" nicht physikalisch zu sehen ist und nicht ausschließen soll, dass auch mehrere Speicherbänke bzw. mehrere Speicherbausteine in einem System vorhanden sind. The invention thus enables a virtually parallel access of the processors PR1 ... PRn to the DRAM memory bank SPB, but direct access of a processor to the memory bank is not possible. At this point it should be mentioned that the single number "memory bank" used here cannot be seen physically and should not rule out that there are also several memory banks or several memory modules in a system.

Claims

Patentansprüche claims
1. Speicherbaustein (SPB) für ein Mehrprozessorsystem, bei welchem mehrere Prozessoren (PRl ... PRn) über einen Prozessor- bus (PBU) an das Interface (IFA) des Bausteins anschließbar sind, dadurch gekennzeichnet, dass eine über einen internen Bus (IBU) mit mehreren Control¬ lern (COl ... COm) verbundene DRAM-Speicherbank (DSB) vorgese- hen ist, wobei die Controller, welche andererseits mit dem Interface (IFA) verbunden sind, je mit einem RAM-Cache (RAC) ausgestat¬ tet sowie konfigurierbar sind.1. S peicherbaustein (SPB) can be connected for a multiprocessor system in which several processors (PRL ... PRn) via a processor bus (PBU) to the interface (IFA) of the block, characterized in that via an internal bus associated (IBU) having a plurality Control ¬ learning (COL ... COm) DRAM memory bank (DSB) Provision is made for the controller, which are on the other hand connected to the interface (IFA), each with a RAM cache (RAC ) ¬ tet equipped kitchens and are configurable.
2. Mehrprozessorsystem mit einem Speicherbaustein (SPB) nach Anspruch 1, dadurch gekennzeichnet, dass die Anzahl m der Controller (COl ... COm) zumindest gleich der Anzahl n der Prozessoren (PRl ... PRn) ist und für jeden Prozessor zumindest ein Controller vorgesehen ist.2. Multi-processor system with a memory module (SPB) according to claim 1, characterized in that the number m of controllers (COl ... COm) is at least equal to the number n of processors (PRl ... PRn) and at least one for each processor Controller is provided.
3. Mikroprozessorsystem nach Anspruch 2, dadurch gekennzeichnet, dass ein einem Prozessor (PRl ... PRn) zugeordneter Controller (COl ... COm) unter Berück- sichtigung der Zugriffscharakteristik des Prozessors programmierbar ist.3. Microprocessor system according to claim 2, characterized in that a controller (CO1 ... COn) assigned to a processor (PRl ... PRn) is programmable, taking into account the access characteristics of the processor.
4. Mikroprozessorsystem nach einem der Ansprüche 2 oder 3, dadurch gekennzeichnet, dass auf dem internen Bus (IBU) des Speicherbausteins (SPB) ein Cachekohärenzprotokoll abläuft .4. Microprocessor system according to one of claims 2 or 3, characterized in that a cache coherence protocol runs on the internal bus (IBU) of the memory chip (SPB).
5. Mikroprozessorsystem nach einem der Ansprüche 2 bis 4, dadurch gekennzeichnet, dass das Cachekohärenzpro- tokoll eine „store-through"-Strategie beinhaltet. 5. Microprocessor system according to one of claims 2 to 4, characterized in that the cache coherence protocol contains a "store-through" strategy.
PCT/DE2000/003735 1999-10-22 2000-10-23 Memory module for a multi-processor system and a multi-processor system WO2001029673A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE10083192T DE10083192D2 (en) 1999-10-22 2000-10-23 Memory chip for a multiprocessor system and multiprocessor system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19951046A DE19951046A1 (en) 1999-10-22 1999-10-22 Memory component for a multi-processor computer system has a DRAM memory block connected via an internal bus to controllers with integral SRAM cache with 1 controller for each processor so that memory access is speeded
DE19951046.6 1999-10-22

Publications (1)

Publication Number Publication Date
WO2001029673A1 true WO2001029673A1 (en) 2001-04-26

Family

ID=7926607

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/DE2000/003735 WO2001029673A1 (en) 1999-10-22 2000-10-23 Memory module for a multi-processor system and a multi-processor system

Country Status (2)

Country Link
DE (2) DE19951046A1 (en)
WO (1) WO2001029673A1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040225840A1 (en) * 2003-05-09 2004-11-11 O'connor Dennis M. Apparatus and method to provide multithreaded computer processing

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0602807A2 (en) * 1992-12-18 1994-06-22 Advanced Micro Devices, Inc. Cache memory systems
US5696937A (en) * 1995-04-28 1997-12-09 Unisys Corporation Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses
EP0843261A2 (en) * 1996-11-18 1998-05-20 Nec Corporation Virtual channel memory system
US5799209A (en) * 1995-12-29 1998-08-25 Chatter; Mukesh Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0602807A2 (en) * 1992-12-18 1994-06-22 Advanced Micro Devices, Inc. Cache memory systems
US5696937A (en) * 1995-04-28 1997-12-09 Unisys Corporation Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses
US5799209A (en) * 1995-12-29 1998-08-25 Chatter; Mukesh Multi-port internally cached DRAM system utilizing independent serial interfaces and buffers arbitratively connected under a dynamic configuration
EP0843261A2 (en) * 1996-11-18 1998-05-20 Nec Corporation Virtual channel memory system

Also Published As

Publication number Publication date
DE19951046A1 (en) 2001-04-26
DE10083192D2 (en) 2002-01-24

Similar Documents

Publication Publication Date Title
DE69721643T2 (en) Multiprocessor system designed for the efficient execution of write operations
DE69721640T2 (en) Multiprocessor computer system and method for controlling the flow of traffic
DE102011076894B9 (en) Persistent storage for a main memory of a processor
DE102008048630B4 (en) Storage arrangement and storage system
DE3438869A1 (en) COMPUTER SYSTEM WITH ADDRESS CONVERSION
DE102006030879B4 (en) A system for reducing the latency of exclusive read requests in a symmetric multiprocessor system
DE10394081T5 (en) Method and device for impressing write data into a cache memory
DE102007018033A1 (en) Coherence list actualization system for use in multi-processor computing system, has control, which is configured to set up condition for write transaction, to be invalid, when memory block is not local
DE112005002364T5 (en) Heterogeneous processors with shared cache
DE19807872A1 (en) Method of managing configuration data in data flow processors
DE102013018135B4 (en) Address bit remapping scheme for reducing an access resolution of DRAM accesses
DE102008062044A1 (en) In-memory, in-page directory cache coherency configuration
DE10316725A1 (en) Data management method for a distributed shared memory system
DE10006430B4 (en) Method for maintaining coherence for a multi-processor system
DE102004027121A1 (en) A multi-bank chip compatible with a controller designed for a smaller number of banks, and a method of operation
DE19908618A1 (en) Common cache memory in multiprocessor system
EP0882267B1 (en) Multi-processor central processing unit
DE69727172T2 (en) Use of a processor bus for I / O traffic transmission
DE69629331T2 (en) System and method for providing a flexible storage hierarchy
DE4114053A1 (en) COMPUTER SYSTEM WITH CACHE MEMORY
DE19882617B4 (en) Memory attribute palette
DE3832758C2 (en) Method for addressing a write-back virtual cache
DE102007055138B4 (en) System for accessing a single port multi-way cache
WO2001029673A1 (en) Memory module for a multi-processor system and a multi-processor system
EP0674319B1 (en) Multi-port memory system and its operation method

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CN DE US

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
REF Corresponds to

Ref document number: 10083192

Country of ref document: DE

Date of ref document: 20020124

WWE Wipo information: entry into national phase

Ref document number: 10083192

Country of ref document: DE