- Double Data Rate Synchronous Dynamic Random Access Memory
-
DDR-SDRAM („Double Data Rate Synchronous Dynamic Random Access Memory“) ist ein Typ von Random Access Memory (RAM). Verwendet werden sie hauptsächlich für Speichermodule des DIMM- bzw. SO-DIMM-Standards als Arbeitsspeicher in PCs und Laptops.
Inhaltsverzeichnis
Geschichte
Als die von Intel unterstützte Direct-Rambus-DRAM-Technik (RDRAM-Technik) Mitte 1999 durch einen Fehler im i820-Chipsatz Probleme bekam und durch den P3-FSB ihre Leistungsfähigkeit trotz hoher Preise nicht ausspielen konnte, setzte die Computerindustrie wieder auf die Weiterentwicklung von SDRAM in Form der DDR-Speichertechnik.
Erste Speicherchips sowie Mainboards mit Unterstützung für DDR-SDRAM kamen Ende 1999 auf den Markt. Erst Anfang 2002 konnten sie sich jedoch auf dem europäischen Endverbrauchermarkt durchsetzen.
Arbeitsweise
DDR-SDRAM
Während „normale“ SDRAM-Module bei einem Takt von 133 MHz eine Datenübertragungsrate von 1,06 GB/s bieten, arbeiten Module mit DDR-SDRAM nahezu mit der doppelten Datenrate. Möglich wird das durch einen relativ simplen Trick: Sowohl bei der auf- als auch bei der absteigenden Flanke des Taktsignals wird ein Datenbit übertragen, anstatt wie bisher nur bei der aufsteigenden.
Damit das Double-Data-Rate-Verfahren zu einer Beschleunigung führt, muss die Anzahl zusammenhängend angeforderter Daten (= „Burst-Length“) immer gleich oder größer als die doppelte Busbreite sein. Da das nicht immer der Fall sein kann, ist DDR-SDRAM im Vergleich zu einfachem SDRAM bei gleichem Takt nicht exakt doppelt so schnell. Ein weiterer Grund ist, dass Adress- und Steuersignale im Gegensatz zu den Datensignalen nur mit einer Taktflanke gegeben werden.
DDR-SDRAM-Speichermodule (DIMM) besitzen 184 Kontakte/Pins (DDR2-SDRAM DIMM/DDR3-SDRAM DIMM: 240, SDRAM DIMM: 168 Kontakte). Die Betriebsspannung beträgt normalerweise 2,5 Volt, für DDR-400 2,6 V.
Spezifikationen
Chip Modul Speichertakt I/O-Takt ² Effektiver Takt ³ Übertragungsrate pro Modul Übertragungsrate Dual-Channel DDR-200 PC-1600 100 MHz 100 MHz 200 MHz 1,6 GB/s 3,2 GB/s DDR-266 PC-2100 133 MHz 133 MHz 266 MHz 2,1 GB/s 4,2 GB/s DDR-333 PC-2700 166 MHz 166 MHz 333 MHz 2,7 GB/s 5,4 GB/s DDR-400 PC-3200 200 MHz 200 MHz 400 MHz 3,2 GB/s 6,4 GB/s - ²) Geschwindigkeit der Anbindung an den Speichercontroller von CPU oder Mainboard
- ³) Effektiver Takt im Vergleich zu SDR-SDRAM (theoretisch)
- PC-XXXX: Das XXXX berechnet sich durch (2× Speichertakt ×Bitbreite)/8 (Bitbreite = 64 bit) und entspricht der Datenrate in MB/s.
DDR-200 bis DDR-400 sowie die damit aufgebauten PC-1600- bis PC-3200-Speichermodule sind von der JEDEC als JESD79 standardisiert. Alle davon abweichenden Module orientieren sich zwar von den Bezeichnungen her an den Standards, aber jeder Hersteller setzt bei den elektrischen Eigenschaften – der oft als „Übertakter-Speicher“ angebotenen Module – seine eigenen Spezifikationen und arbeitet oft mit exzessiver Überspannung.
Einen Sicherheitsgewinn bringen die oft bei Servern eingesetzten Speichermodule mit ECC (Error Checking and Correction) oder auch Registered-Module mit Signalpuffer. Dies gilt aber nur, wenn diese Speichermodule explizit unterstützt werden, oft funktionieren ECC-Module in normalen Desktop-Hauptplatinen überhaupt nicht. Solche Speichermodule sind in allen standardisierten Taktfrequenzen erhältlich und an der zusätzlichen Bezeichnung R, ECC oder R ECC erkennbar, z. B. PC-1600R, PC-2100 ECC oder PC-2700R ECC.
DDR2-SDRAM
DDR2-SDRAM ist eine Weiterentwicklung des Konzeptes von DDR-SDRAM, bei dem statt mit einem Zweifach-Prefetch mit einem Vierfach-Prefetch gearbeitet wird.
DDR2-SDRAM Speichermodule (DIMM) für Desktop-Computer besitzen 240 Kontakte/Pins. (DDR3-SDRAM DIMM: ebenfalls 240, DDR-SDRAM DIMM: 184, SDRAM DIMM: 168 Kontakte). DDR2-Module sind mechanisch und elektrisch nicht kompatibel mit DDR-Modulen. Durch unterschiedliche Kontaktleisten wird eine versehentliche Verwechselung verhindert.
Die Abmessungen der fertig verpackten Speicherchips sind kleiner (126 mm² statt bisher 261 mm²). Erreicht wird das durch eine andere Verpackungstechnik: FBGA (Fine-Pitch Ball Grid Array) statt TSOP (Thin Small Outline Package).
Bei DDR2-SDRAM ist der I/O-Puffer mit der doppelten Frequenz der Speicherchips getaktet. Man erhält, wie bei dem älteren DDR-Standard, jeweils bei steigender als auch bei fallender Flanke des Taktsignals gültige Daten. Beim DDR-SDRAM werden mit einem Read-Kommando (mindestens) zwei aufeinanderfolgende Adressen gelesen, bei DDR2-SDRAM vier, bedingt durch die Prefetch-Methode des jeweiligen Standards. Aus einem 128 Bit breiten DDR-Modul werden also pro Lesezugriff 256 Bit gelesen, aus einem vergleichbaren DDR2-Modul 512. Die absolute Datenmenge bleibt bei gleichem I/O-Takt von zum Beispiel 200 MHz aber identisch, da das DDR2-Modul zwei Takte anstatt einen benötigt, um die Daten zu übertragen. DDR2 unterstützt nur zwei mögliche Burst-Längen (Anzahl an Datenwörtern, die mit einem einzelnen Kommando gelesen oder geschrieben werden können), nämlich vier (bedingt durch Vierfach-Prefetch) oder acht, DDR hingegen unterstützt zwei, vier oder acht.
Zur Erhöhung der Taktraten und zur Senkung der elektrischen Leistungsaufnahme wurde die Signal- und Versorgungsspannung von DDR2-SDRAM auf 1,8 Volt verringert (bei DDR-SDRAM sind es 2,5 V). Nebenbei führt die verringerte Spannung zu einer geringeren Wärmeentwicklung.
DDR2-SDRAM Chips arbeiten mit „On-Die Termination“ (ODT). Der Speicherbus muss also nicht mehr auf der Modulplatine (oder dem Board) terminiert werden. Die Terminierungsfunktion wurde direkt in die Chips integriert, was Platz und Kosten spart. ODT arbeitet wie folgt: Der Speicher-Controller sendet ein Signal auf den Bus aus, das alle inaktiven DDR2-SDRAM-Chips dazu veranlasst, auf Terminierung umzuschalten. Somit befindet sich nur das aktive Signal auf der Datenleitung, Interferenzen sind so gut wie ausgeschlossen.
Kompatibilität
DDR2-Module können ohne Rücksicht auf ihre jeweilige Geschwindigkeitsangabe prinzipiell in jede Hauptplatine mit DDR2-Steckplätzen eingesetzt werden. Der Speichercontroller sorgt dafür, dass Module, die mit höherer Taktrate arbeiten können als die Hauptplatine, nur mit der Taktrate betrieben werden, die der Hauptplatine maximal möglich ist. Langsamere Speichermodule werden höchstens mit der Taktrate betrieben, für die sie ausgelegt sind. Es ist also technisch nicht erforderlich, in einer Hauptplatine, die z.B. für DDR2-533-Speicher ausgelegt ist, Module mit genau der Geschwindigkeitsangabe 533 zu verwenden.
Auch DDR2-Module mit unterschiedlichen Taktraten können beliebig kombiniert werden. Es hängt allerdings von der Konstruktion der Hauptplatine ab, ob die einzelnen Module jeweils mit der höchstmöglichen Geschwindigkeit arbeiten oder ob der gesamte Speicher nur mit der Geschwindigkeit des langsamsten Moduls arbeitet. In der Regel wird der gesamte Speicher mit der Geschwindigkeit des langsamsten Moduls arbeiten.
Da die JEDEC-Spezifikationen jedoch ungenau sind, kann es zu Kompatibilitätsproblemen zwischen bestimmten Mainboards und bestimmten Speichermodulen kommen. Oft können diese Kompatibilitätsprobleme durch ein BIOS-Update gelöst werden. Nur bei Speicher, der auf der sog. QVL (Qualified Vendor List) des Mainboards steht, kann davon ausgegangen werden, dass er in diesem Mainboard auf jeden Fall funktioniert.- Spezifikationen
Chip Modul Speichertakt I/O-Takt ² Effektiver Takt ³ Übertragungsrate
pro ModulÜbertragungsrate
Dual-ChannelDDR2-400 PC2-3200 100 MHz 200 MHz 400 MHz 3,2 GB/s 6,4 GB/s DDR2-533 PC2-4200 133 MHz 266 MHz 533 MHz 4,2 GB/s 8,4 GB/s DDR2-667 PC2-5300 166 MHz 333 MHz 667 MHz 5,3 GB/s 10,6 GB/s DDR2-800 PC2-6400 200 MHz 400 MHz 800 MHz 6,4 GB/s 12,8 GB/s DDR2-1066 PC2-8500 266 MHz 533 MHz 1066 MHz 8,5 GB/s 17,0 GB/s - ²) Geschwindigkeit der Anbindung an den Speichercontroller von CPU oder Mainboard
- ³) Effektiver Takt im Vergleich zu SDR-SDRAM (theoretisch)
- PC2-XXXX: Das XXXX berechnet sich durch (4 × Speichertakt × Bitbreite)/8 (Bitbreite = 64 bit) und entspricht der Datenrate in MB/s.
DDR2-400 bis DDR2-1066 sowie die damit aufgebauten PC2-3200- bis PC2-8500-Speichermodule sind von der JEDEC standardisiert. Alle davon abweichenden Module orientieren sich zwar von den Bezeichnungen her an den Standards, aber jeder Hersteller setzt bei den elektrischen Eigenschaften – der oft als „Übertakter-Speicher“ angebotenen Module – seine eigenen Spezifikationen und arbeitet oft mit exzessiver Überspannung. Wie bei DDR-SDRAM gibt es auch bei DDR2-SDRAM Registered-Module mit oder ohne ECC.
DDR3-SDRAM
DDR3-SDRAM ist eine Weiterentwicklung des Konzeptes von DDR2-SDRAM, bei dem statt mit einem Vierfach-Prefetch (4 bit) mit einem Achtfach-Prefetch (8 bit) gearbeitet wird.
Die Chips mit einer Kapazität von mindestens 512 Mibit verarbeiten Daten mit 8500 Mb/s und sind damit deutlich schneller als DDR-400- oder auch DDR2-800-SDRAM. Allerdings ist die CAS-Latenz höher. Darüber hinaus benötigt DDR3-SDRAM auch nur noch 1,5 Volt statt 1,8 Volt und ist damit gerade für den mobilen Einsatz besser geeignet, bei dem es auf lange Akkulaufzeiten ankommt. DDR3-SDRAM wird seit dem 5. Juli 2006 bei Samsung in 80-nm-Prozesstechnologie hergestellt.
DDR3-SDRAM-Speichermodule (DIMM) besitzen 240 Kontakte/Pins (DDR2-SDRAM-DIMM: 240, DDR-SDRAM-DIMM: 184, SDRAM-DIMM: 168 Kontakte); sie sind trotz gleicher Pinzahl nicht zu DDR2-SDRAM kompatibel und besitzen unterschiedliche Einkerbungen.[1] SODIMM-Module für Notebooks haben 204 Kontakte gegenüber 200 Kontakten als DDR2-Variante.
Im Bereich des Video-RAMs wird schon seit längerem GDDR3 eingesetzt. Dieser basiert aber auf DDR2-Speicherchips, lediglich die Spannung wurde abgesenkt (Spannung VDD, VDDQ = 1,5 V, 1,5 V anstatt 2,5 V, 1,8 V). Die Bezeichnung GDDR3 besitzt keine offiziellen Spezifikationen, sondern wurde aus Marketing-Gründen gewählt (um sich von den weniger erfolgreichen GDDR2 abzugrenzen).
Spezifikationen Chip Modul Speichertakt I/O-Takt ² Effektiver Takt ³ Datenrate pro Modul Datenrate Dual Channel Datenrate Triple Channel DDR3-800 PC3-6400 100 MHz 400 MHz 800 MHz 6,4 GB/s 12,8 GB/s 19,2 GB/s DDR3-1066 PC3-8500 133 MHz 533 MHz 1066 MHz 8,5 GB/s 17,0 GB/s 25,5 GB/s DDR3-1333 PC3-10600 166 MHz 667 MHz 1333 MHz 10,6 GB/s 21,2 GB/s 31,8 GB/s DDR3-1600 PC3-12800 200 MHz 800 MHz 1600 MHz 12,8 GB/s 25,6 GB/s 38,4 GB/s - ²) Geschwindigkeit der Anbindung an den Speichercontroller von CPU oder Mainboard
- ³) Effektiver Takt im Vergleich zu SDR-SDRAM (theoretisch)
- PC3-XXXX: Das XXXX berechnet sich durch (Speichertakt × Bitbreite) (Bitbreite = 64 bit) und entspricht der Datenrate in MB/s.
DDR3-800 bis DDR3-1600 sowie die damit aufgebauten PC3-6400- bis PC3-12800-Speichermodule sind von der JEDEC standardisiert. Alle davon abweichenden Module orientieren sich zwar von den Bezeichnungen her an den Standards, aber jeder Hersteller setzt bei den elektrischen Eigenschaften – der oft als „Übertakter-Speicher“ angebotenen Module – seine eigenen Spezifikationen und arbeitet oft mit exzessiver Überspannung. Wie bei DDR1-SDRAM gibt es auch bei DDR3-SDRAM Registered-Module mit oder ohne ECC.
Berechnung Speichertransferrate
Um den theoretisch maximal möglichen Speicherdurchsatz zu berechnen, wird folgende Formel verwendet:
- (Takt der Speicherzellen (in MHz) × Bit pro Übertragung × Anzahl Taktflanken) /8 Bit = Speichertransferrate in Byte/s. Dann jeweils durch Potenzen von 1000 teilen für KB/s, MB/s und GB/s oder durch Potenzen von 1024 für KiB/s, MiB/s und GiB/s.
Beispielrechnungen
- DDR-400: (200 MHz × 64 Bit × 2) /8 = 3.200 MB/s (3.052 MiB/s) = 3,2 GB/s (2,980 GiB/s)
- DDR2-800: (200 MHz × 64 Bit × 4) /8 = 6.400 MB/s (6.104 MiB/s) = 6,4 GB/s (5,960 GiB/s)
- DDR3-1600: (200 MHz × 64 Bit × 8) /8 = 12.800 MB/s (12.207 MiB/s) = 12,8 GB/s (11,921 GiB/s)
DDR-SDRAM überträgt bei steigender und fallender Taktflanke, bei DDR2 und DDR3 wird der externe Takt gegenüber dem Takt der Speicherchips noch um den Faktor zwei bzw. vier gesteigert, da aus mehreren Speicherchips nacheinander ausgelesen wird. Bei Verwendung eines mehrkanaligen Speichersubsystems mit Dual-Channel-Technik verdoppelt sich die Transferrate entsprechend.
Anhand dieser Berechnung lässt sich abschätzen, wie gut RAM und das übrige System zusammen passen. Der Speicher muss schnell genug sein, um die Zugriffe aller Busmaster einschließlich CPU, Festplattencontrollern und Grafikkarten zu verarbeiten.
„Mythos“ der Langsamkeit von DDR2-SDRAM
Im Zusammenhang mit DDR2-SDRAM wurde oft von einem Nachteil im Bereich Zugriffszeit gegenüber DDR-SDRAM-Modulen gesprochen. Das ist aber nur zum Teil richtig. Praktisch ist die Latenz vom realen Takt und der Zugriffszeit vom RAM abhängig. Da ein mit 667 MHz spezifiziertes DDR2-Modul mit einem realen Takt von 166 MHz arbeitet, kann es mit einem DDR400-Modul nicht in jedem Bereich konkurrieren. Hinzu kommt, dass DDR2-Speicher nahezu ausschließlich mit Command-Rate 2T betrieben wird, bei DDR-400 ist oft auch 1T möglich. Dies bedeutet zusätzlich einen starken Performance-Nachteil. Die theoretische maximale Datenrate des DDR2-Moduls ist zwar höher, dennoch fehlen 33 MHz Takt, was die Latenz beim Zugriff auf den RAM erhöht, womit der Vorteil der höheren Datenrate zu einem großen Teil verfällt. Da ein DDR2-Modul vier Datenpakete pro Takt verschickt, aber nicht unbedingt alle später auch verwendet werden (es werden zu dem angeforderten Paket einfach die nachfolgenden drei mit ausgelesen), ist die erhöhte Datenrate zudem nicht voll nutzbar. Bei Erscheinen des DDR2-Speichers kam zudem die Problematik hinzu, dass die frühen Module allgemein sehr langsame Zugriffszeiten hatten, was den „Mythos“ noch verstärkte.
Deswegen ist es sinnvoll, von DDR400 auf DDR2-800 oder höher zu wechseln. Ein DDR2-800 DDR-SDRAM kann von der Latenz her gleichziehen und zudem auch noch die theoretisch doppelte Datenrate liefern. Besonders hervorzuheben ist, dass die realen Taktraten der SDRAM-Speicher seit geraumer Zeit nicht weiter steigen.
Latenzzeiten im Vergleich
Die Leistung von Speichermodulen misst sich vor allem in der „absoluten Latenz“. Die absolute Latenz ergibt sich aus den Faktoren (effektiver) Takt und Timing.
- Beispiele
Beispielwerte für Latenzzeiten unterschiedlicher Speichergenerationen Speichertyp Timingwerte CAS TRCD TRP tRAS DDR400 CL2-2-2-6 10 ns 10 ns 10 ns 30 ns DDR2-800 CL4-4-4-12 10 ns 10 ns 10 ns 30 ns DDR3-1600 CL8-8-8-24 10 ns 10 ns 10 ns 30 ns Da der Speicherbus in allen drei folgenden Fällen mit jeweils exakt 200 MHz arbeitet, jedoch die Timings auf den effektiven Takt (400 MHz, 800 MHz und 1600 MHz) bezogen sind, bleiben die Latenzzeiten (im Bereich einiger Nanosekunden = 10 − 9 Sekunden) identisch, obwohl sich die Timings unterscheiden. Es verdoppelt sich jeweils auch die theoretische Datenrate aufgrund der Tatsache, dass der I/O-Bus jeweils mit 200, 400 bzw. 800 MHz arbeitet:
- Berechnung
Vergleichswerte für Latenzzeiten unterschiedlicher Speichergenerationen Speichertyp Timingwerte CAS TRCD TRP tRAS DDR500 CL3-3-2-8 12 ns 12 ns 8 ns 32 ns DDR2-667 CL4-4-4-12 12 ns 12 ns 12 ns 36 ns DDR2-667 CL5-5-5-15 15 ns 15 ns 15 ns 45 ns DDR2-800 CL5-5-5-15 12,5 ns 12,5 ns 12,5 ns 37,5 ns DDR2-1066 CL4-4-4-12 7,5 ns 7,5 ns 7,5 ns 22,5 ns DDR2-1066 CL5-5-5-15 9,38 ns 9,38 ns 9,38 ns 28,13 ns DDR3-1066 CL7-7-7 13,13 ns 13,13 ns 13,13 ns DDR3-1333 CL8-8-8 12 ns 12 ns 12 ns DDR3-1600 CL7-7-7 8,75 ns 8,75 ns 8,75 ns DDR3-1600 CL9-9-9 11,25 ns 11,25 ns 11,25 ns Die Latenz lässt sich – wie aus den eben genannten Beispielen ersichtlich – wie folgt berechnen:
wobei die erste 2 im Zähler daher kommt, dass 2 mal pro Takt ausgelesen wird (daher der Name DDR = Double Data Rate). Also gilt für DDR400 mit einem Timing von 2 die Gleichung: Latenz. Für DDR2-800 mit einem Timing von 4 die Gleichung: Latenz. Und für DDR3-1066 mit einem Timing von 7 die Gleichung: Latenz.
Abweichungen von der Spezifikation
Einige Speicherhersteller halten die offiziellen Spezifikationen der JEDEC nicht ein und bieten Module mit weitaus höheren Taktraten oder besseren Timings an. Während DDR3-1600 CL9-9-9 einer offiziellen Spezifikation unterliegt, handelt es sich bei DDR2-1066 CL4-4-4-12 nicht um standardkonforme Speichermodule. Diese schnellen Speicher werden oft als Speichermodule für Übertakter bezeichnet. Aufgrund der Neuheit von DDR3 ist zu erwarten, dass in Folge der stetigen Verbesserung der Fertigungsverfahren in naher Zukunft deutlich schnellere Speichermodule angeboten werden. Diese werden anfangs jedoch außerhalb der offiziellen Spezifikation arbeiten. Die JEDEC könnte diese Speichermodule in die offizielle Spezifikation aufnehmen, allerdings geschieht das oft erst Jahre nach der ersten Verfügbarkeit.
SDRAM – ein Ergebnis der JEDEC-Spezifikationen
Der SDRAM-Standard wird in der JEDEC, einem offenen Industrieforum, weiterentwickelt. Da sich alle einstimmig für eine Weiterentwicklung in eine Richtung entscheiden müssen, laufen Entwicklungen nur äußerst langsam. Die Umsetzung von Entwicklungen in die Praxis dauert noch länger, da kein Hersteller wegen der Charakteristik von DRAM als standardisiertem Massenprodukt einen wirtschaftlichen Vorteil daraus ziehen kann, einen neuen DRAM-Speichertyp allein zu produzieren. Ohne Unterstützung in den Speichercontrollern der DRAM-Kunden wird sich ein neuer DRAM-Typ nur schwerlich verkaufen. Und neue Controllertypen werden nur gebaut, wenn auch die entsprechenden Speicherchips am Markt etabliert und günstig verfügbar sind.
Siehe auch
- Fully Buffered DIMM
- Dual Channel
- Triple Channel
Literatur
- Christof Windeck: Merkzellen. c't 6/2006 S. 278ff; Riegel-Reigen c't 7/2006 S. 238ff; High-Speed versus Standard. c't 8/2006 S. 210ff – Artikelserie über Aufbau und Funktionsweise von DDR2-Speichermodulen
Weblinks
- JEDEC-Webseite – das Standardisierungsgremium für Speicherstandards
- Spezifikationen: DDR-SDRAM (1 MB PDF), DDR2-SDRAM (2 MB PDF), DDR2-1066 (2 MB PDF), DDR3-SDRAM (8 MB PDF)
- DDR3-Speicher bei 3DCenter.de
Einzelnachweise
- ↑ Allround-PC.com Fünf DDR3-1600-Kits zu 6 GB im 30 GB Speichertest – Artikel zeigt Einkerbungen bei DDR2 und DDR3 (aufgerufen am 7. April 2009)
Wikimedia Foundation.