Benutzer:JürgenZ./Rambus Dynamic Random Access Memory

Rambus Dynamic Random Access Memory

Bearbeiten

Mit RDRAM (Rambus Dynamic Random Access Memory) wird eine Familie synchroner Halbleiterspeicher (DRAMs) bezeichnet. Die zu der Familie gehörenden Mitglieder sind der Base RDRAM, der darauf aufbauende Concurrent RDRAM sowie der Direct RDRAM. Die Vertreter dieser Familie zeichnen sich durch die Verwendung von Datentransferprotokollen mit besonders hoher Datenrate aus, welche auf Technologien der US-Firma Rambus Inc. beruhen. RDRAMs besitzen derart hohe Taktraten, so dass ein 16 bit breiter Direct RDRAM-Kanal ähnliche Bandbreiten erreicht wie ein 64 bit breiter DDR-SDRAM-Kanal gleicher Generation.

Allen Vertretern der RDRAM-Famile gemein sind eine Reihe von Merkmalen, die meist in direktem Zusammenhang mit dem Ziel der möglichst hohen Datenrate stehen. In der tatsächlichen Implementierung dieser Merkmale können sie sich dennoch im Detail unterscheiden.

Doppelte Datenrate
RDRAMs nutzen wie DDR--SDRAM beide Flanken des Taktes ('Clock') für die Datenübertragung.
Die Anzahl der Datenanschlüsse pro RDRAM ist identisch mit der Busbreite
Bei anderen Datenbussystemen wird die Datenbusbreite (z.B. 64 bei DIMMs in PCs) erst durch eine Parallelschaltung mehrerer Speicherbauelemente mit wenigen Datenanschlüssen (typ. 4 oder 8 pro Bauelement) erreicht. Dagegen besitzt jeder RDRAM genausoviele Datenanschlüsse wie es Datenleitungen im Datenbus gibt. Dies hat den Vorteil, daß bereits ein einziger RDRAM in der Lage ist, Daten mit der maximalen Datenrate des Datenbusses zu liefern. Im Gegensatz dazu muß z.B. ein DIMM-basierter Datenbus mit mindestens 16 oder 8 Speicherbauelementen (mit 4 oder 8 Datenanschlüssen pro Bauelement) bestückt sein. Ein RDRAM-basiertes Speichersystem besitzt somit eine sehr feine Granularität beim Erweitern des Speichers da keine Notwendigkeit besteht, stets 8 oder 16 Bauelemente hinzuzufügen, sondern prinzipiell sogar einzelne RDRAMs hinzugefügt werden können.
Die prinzipielle Eigenschaft, daß in einem RDRAM-System bereits ein einzelner RDRAM die gesamte Datenrate und Datenmenge ansonsten mehrerer parallel geschalteter konventioneller DRAMs bereitstellen muß, besitzt jedoch auch Nachteile. Die Verlustleistung fällt nun in einem einzelnen RDRAM in Form von Wärme an und muß durch zusätzliche Maßnahmen wie Wärmeleitbleche ('Heat Spreader') abgeleitet werden. Da nun von einem einzelnen RDRAM alle 64 (oder 128) Datenbits geliefert werden müssen (anstatt 4, 8 oder 16 bei konventionellen DRAMs), ist auch die Fehlerkorrektur überfordert, falls aufgrund eines Adressierungsfehlers von einem RDRAM die falschen Daten übertragen werden sollten.
Zwei Gegenläufige Taktsignale
In einem Speichersystem auf der Basis von RDRAMs existieren stets zwei gegenläufig Taktsignale ('Clock'). Zum Datentransfer vom Speichercontroller zum RDRAM werden die Daten mit der Clock From Master synchronisiert, welche sich vom Controller zum RDRAM ausbreitet.
Im umkehrten Fall, bei dem ein RDRAM Daten zum Controller senden möchte, synchronisiert der RDRAM seine Daten mit einem Taktsignal (Clock To Master), welches sich vom Ende des Datenbusses über den RDRAM zum Controller hin ausbreitet.
Paket-orientiertes Protokoll
Da Schaltungen zum Senden oder Empfangen von Daten mit einer hohen Datenrate einen erhöhten Bedarf an Chipfläche und einen höheren Energieverbrauch besitzen, ist es aus Kostengründen wünschenswert, die Anzahl der Anschlüsse für Kommando-, Adreß- und Datensignale zu minimieren. Konventionelle (DDR-)SDRAMs besitzen neben den Daten- und Clocksignalen meist über 20 weitere Signaleingänge zur Definition eines Kommandos und einer Speicheradresse. Bei RDRAMs hingegen wurde die Anzahl auf nur 8 reduziert (Beim Base und Concurrent RDRAM werden diese 8 Ein- und Ausgänge sogar noch als Datenleitungen verwendet). Um dennoch alle notwendigen Informationen auf einer reduzierten Anzahl von Signalleitungen übertragen zu können, muß jede Leitung zeitlich nacheinander verschiedene Bedeutungen erhalten (Kommando-, Adreß- oder Dateninformation). Ein RDRAM-'Paket' besteht stets aus 8 aufeinanderfolgenden Zuständen einer Gruppe von Signalen.
Impedanz-angepaßtes Bussystem
Konventionelle DRAM-Bussysteme (z.B. in PC-Anwendungen) besitzen meist einen Aufbau, bei dem von einem zentralen Bus eine Reihe von Leitungen zu den einzelnen DRAMs oder DRAM-Modulen abzweigen. Diese Anschlüsse stellen Abweichungen in der Impedanz des Busses dar und führen zu unerwünschten Signalreflektionen welche die Signalqualität beeinträchtigen und letztendlich die Übertragungsrate eines Bussystems begrenzen. Ein wesentlicher Schlüssel zur Erreichung hoher Datentransferraten in einem RDRAM-System liegt in der konsequenten Vermeidung derartiger Signalreflektionen durch die Vermeidung (bzw. Minimierung) von Verzweigungen des Bussystems.


RDRAM-Speicherbauelemente

Bearbeiten

Vor der Entwicklung von 'Direct Rambus', mit dem diese Speicherart erst breiter bekannt geworden war, gab es bereits die Vorläufer 'Base Rambus' und 'Concurrent Rambus', die in speziellen grafiklastigen Anwendungen z.B. in Workstations und Spielekonsolen (Nintendo 64) eingesetzt wurden.

Base RDRAM

Bearbeiten

Die Datenbusbreite pro RDRAM-Chip beträgt 8 Bit (9 bit mit Fehlerkorrektur).

Concurrent RDRAM

Bearbeiten

Direct RDRAM

Bearbeiten

Direct RDRAM wurde ursprünglich von Intel als Nachfolgetechnik von SDRAM für Arbeitsspeicher im gesamten Computermarkt lanciert. Tatsächlich konnte es sich nur in speziellen Anwendungen behaupten: einige Workstations und Server, Sonys Playstation 2 sowie vereinzelt in Unterhaltungselektronik. Statt RDRAM wurde DDR-SDRAM der SDRAM-Nachfolger im DRAM-Massenmarkt. Die Datenbusbreite pro RDRAM-Chip beträgt 16 bit (18 bit mit Fehlerkorrektur).

Probleme im Massenmarkt

Bearbeiten

Beim Erscheinen des Pentium 4 (Willamette-Kern) favorisierte Intel klar RDRAM als Nachfolger von SDRAM. Die Chipsätze zum Pentium 4 boten ausschließlich RDRAM-Unterstützung. Dieser war im Gegensatz zu SDRAM zwar schneller aber teilweise mehr als doppelt so teuer zu den an sich hohen RAM-Preisen in dieser Zeit. Zusätzlich hatte er eine deutlich höhere Leistungsaufnahme. Ein PC-System mit AMD Athlon Prozessor und SDRAM hatte eine ähnliche Leistung, kostete jedoch deutlich weniger. Mit dem Erscheinen von DDR-SDRAM Systemen für den Athlon ging dieser in Führung. Intel erkannte die Probleme und bot nun auch Unterstützung für DDR-SDRAM. In diesem Zusammenhang offenbarte sich die Schwäche des Pentium 4. Dieser lief nun in Systemen mit DDR-SDRAM teilweise deutlich langsamer als in Systemen mit RDRAM. Kurze Zeit darauf legte Intel jedoch eine überarbeitete Version des Pentium 4 vor (Northwood-Kern), welcher nun einen deutlich größeren Puffer-Speicher (Second Level Cache) besaß. Dieser Prozessor konnte sich nun problemlos mit dem AMD Athlon XP in einem DDR-SDRAM-System messen. Das Thema RDRAM hatte sich damit auch für Intel erledigt.


RDRAM-Speichermodule

Bearbeiten

RIMM (Rambus In-Line Memory Module) ist ein Speichermodul für die Rambus-Architektur.

Ein RIMM besitzt 184 Kontakte auf beiden Seiten und kann bis zu 16 Speicherbausteine aufnehmen. Die Datenbreite beträgt 16 Bit (18 mit ECC).

Funktionsprinzip

Bearbeiten
 
RIMM-Modul mit Hinweis auf Heiße Oberfläche

Die Rambus-Lösung besteht aus drei Komponenten: Rambus-Controller, Rambus-Channel und RDRAM.

Die Rambus-Architektur kann mehrere unabhängige Rambus-Channels verwalten. Das Channel Interface von Rambus enthält einen nur 16- oder 18-Bit-(mit ECC) breiten Datenbus. Der Adressbus besitzt eine Breite von 8 Bit und hat getrennte Leitungen für die Zeilen- und Spaltenansteuerung. Vorteil: Gleichzeitige unabhängige Zugriffe auf Zeilen und Spalten sind möglich, während noch Daten des vorhergehenden Befehls übertragen werden.

Jedes einzelne RDRAM-IC besitzt die volle Datenbreite des Channels. Gegenüber 64-Bit-Speicherbussen muss aber die Taktung des Channels entsprechend hoch sein, um konkurrenzfähige Bandbreiten zu erreichen. Die derzeit maximale Taktfrequenz ist mit 800 MHz und durch Ausnutzung beider Taktflanken mit einer Datenrate von 1600 Mb/s extrem hoch. Ein Maximum von 3,2 GByte/s ist bei jedem einzelnen Chip und somit pro Channel erreichbar. Bei zwei Channels verdoppelt sich die maximale Bandbreite entsprechend auf 6,4 GByte/s.

Datentransfer

Bearbeiten

Der interne Datentransfer eines RDRAMs zur Speichermatrix unterscheidet sich von der Datenbreite und Taktung des Channels erheblich: Intern wird ein 128-Bit-breiter Datenpfad (144 Bit mit ECC) mit einer Taktfrequenz von 100 MHz genutzt. Somit lassen sich alle 10 ns 128 Bit von und zur Speichermatrix transferieren - dies entspricht der Channel-Transferrate von 1,6 GByte/s. Eine interne RDRAM-Logik teilt die Daten in 16-Bit-Pakete auf, bevor sie über die I/O-Pins mit der Channel-Taktfrequenz von 800 MHz auf den Bus übertragen werden.Durch die volle Datenbreite der ICs verteilen sich die Daten bei Zugriffen nicht über alle Bausteine, sondern sind zusammenhängend in einem Chip gespeichert. Nachteil: Die Chips erhitzen sich bei Burst-Zugriffen stark, was zusätzliche Kühlmaßnahmen erfordert. Rambus-Module sind deshalb mit einem zusätzlichen Kühlblech versehen, das für eine ausreichende Wärmeabfuhr sorgen soll. Jeder Channel kann bis zu 32 RDRAM-Chips verwalten. Ein Interleaving mit überlappenden Transfern zwischen den Chips und dem Rambus-Controller hebt die Effizienz für einen kontinuierlichen Datenstrom. Hinzu kommt die hohe Bankanzahl der einzelnen RDRAMs. Bis zu 16 Bänke pro IC können parallel Befehle abarbeiten und sorgen für hohe Effizienz bei starkem Datenverkehr auf dem Bus.

Nachdem Intel die Unterstützung für RDRAM durch eigene Chipsätze einstellte, werden RIMM-Module nur noch in Servern bzw. Supercomputern von z.B. Cray und HP eingesetzt. Die RIMM-Preise sind deshalb sehr hoch.

SO-RIMM (Small Outline Rambus In-line Memory Module) ist ein Speichermodul basierend auf der Rambus-Technologie, welches speziell für Notebooks und andere tragbare Computer entwickelt wurde. Die Module sind daher wesentlich kompakter als RIMM und haben 160 Kontakte.

Siehe auch

Bearbeiten

Speichermodule auf RAM-Bus basis: RIMM und SO-RIMM

Bearbeiten

Kategorie:Speichermodul