mini|hochkant=1.2|Zwei DDR-SDRAM-Module: oben 512 MiB beidseitig bestückt mit Heatspreader, unten 256 MiB einseitig bestückt
DDR-SDRAM (; oft auch nur: DDR-RAM) ist ein halbleiterbasierter RAM-Typ, der durch Weiterentwicklung von SDRAM entstand. Aktuell (2024) gibt es ihn in fünf Generationen, die 5. Generation (DDR5) wurde 2019 spezifiziert und erschien 2021 auf dem Markt. Verwendet werden diese hauptsächlich für Speichermodule des DIMM- und SO-DIMM-Standards und als Arbeitsspeicher in PCs und Laptops. Für mobile Geräte gibt es eine eigene Spezifikation (Low Power SDRAM), ebenso für Grafikspeicher (siehe GDDR).
Geschichte Mitte 1999 setzte die Computerindustrie auf die Weiterentwicklung von SDRAM in Form der DDR-Speichertechnik, weil die von Intel unterstützte Direct-Rambus-DRAM-Technik (RDRAM) durch einen Fehler im i820-Chipsatz Probleme bekam und durch den Pentium-III-FSB ihre Leistungsfähigkeit trotz hoher Preise nicht ausspielen konnte.
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.
Übersicht DDR-SDRAM-Standard Jahr Taktfrequenz (MHz) Pre-fetch Data-Trans-fer-Rate Spannung Pins Bemerkungen Speicher I/O (MT/s) (V) DIMM SO- Micro- SDR 1993 66 – 133 66 – 133 1n 66 – 133 3,3 168 144 bis 183 MT/s auf Grafikkarten ELSA ERAZOR X SDR GeForce by Matthew Witheiler on January 12, 2000 1:37 AM EST DDR 1998 100 – 200 100 – 200 2n 200 – 400 2,5/2,6 184 200 172 bis 400 MT/s, CL 2-2-2-5 DDR2 2003 100 – 266 200 – 533 4n 400 – 1066 1,8/2,0 240 200 214 bis 1066 MT/s, CL 6-7-7-20 DDR3 2007 100 – 333 400 – 1333 8n 800 – 2666 1,5/1,65/1,35 (L)/1,25 (U)1,35 V werden mit L für low (engl. für niedrig) und 1,25 V mit U für ultralow gekennzeichnet 240 204 214 bis 2666 MT/s, CL 11-14-15 DDR4 2014 200 – 667 800 – 2666 8n 1600 – 5333 1,2/1,6 288 260 – bis 5333 MT/s, CL 22-32-32-52 DDR5 2020 300 – 550 2400 – 4400 16n 4800 – 8800 1,1/1,4 288 262 –bis 8800 MT/s, CL 42-55-55-140
mini|hochkant=1.2|Verschiedene Desktop-DDR-Module: DDR1 hat gegenüber seinen Nachfolgern weniger und größere Kontakte: 1,27 mm/Pin. DDR2+DDR3: 1,00 mm/Pin. DDR4+DDR5: 0,85 mm/Pin. Ab DDR3 sind die vier seitlichen Aussparungen eckig. SDRAM (nicht im Bild) hat zwei Kerben in der Kontaktleiste.
Änderungen bei DDR4 Data Bus Inversion für jeweils 8 Datenbits
Änderungen bei DDR5 2 Kanäle à 32 bit statt 1 Kanal mit 64 bit On-Die-ECCAuch Nicht-ECC-RAM weist Paritätsbits auf, die der Speicher zur internen Speicherkorrektur unabhängig von der CPU nutzt Dual-Parity statt Single-Parity (unabhängig von On-Die-ECC)Erhöhung von 8 auf 16 bit Parität pro 64 bit Speicherzeile, ermöglicht Fehlerkorrektur von Zwei-Bit-Fehlern On-Die voltage regulators same page-refresh ab April 2024: Per-Row Activation Counting (PRAC) gegen Rowhammer AngriffeJESD79-5C: JEDEC Updates DDR5 Specification for Increased Security Against Rowhammer Attacks, New DDR5-8800 Reference Speed
Quellen Standards für DDR1 bis DDR5, Stand Juli 2020: JESD79F, JESD79-2F, JESD79-3F1, JESD79-4C, JESD79-5 Standard für DDR5, Stand April 2024: JESD79-5C, 7,8 MB, Inhaltsverzeichnis + 484 Seiten
Arbeitsweise mini|hochkant=1.2|PC-3200-Modul mit DDR-400-Chips mini|hochkant=1.2|… und die Rückseite
DDR-SDRAM ermöglicht keine höheren Datenraten per se, da die eigentliche Datenübertragung bei SDR und DDR mit der gleichen Zeitabfolge und den gleichen Problemstellungen erfolgt. Das DDR-Verfahren löst im Vergleich zu SDR (und als einzig wesentlichen Unterschied), das Problem der Taktübertragung: Bei SDR hat das Taktsignal eine doppelt so hohe Frequenz wie (im ungünstigsten Fall) das Datensignal. Das Taktsignal hat zwei Pegelwechsel pro Taktzyklus, das Datensignal maximal einen Pegelwechsel. Das ist bei DDR-Übertragungen nicht mehr der Fall. Dafür muss die Taktfrequenz im DDR-RAM-Modul mittels einer lokalen Phasenregelschleife (PLL) schaltungstechnisch wieder verdoppelt (oder bei späteren DDR-Typen: um den Faktor 4, 8 oder 16 erhöht) werden.
Teilweise ist auch eine weitere Teilung des Taktes üblich. Teilweise sind auch unterschiedliche Taktsignale für die Kommandierung und die Datenübertragung üblich. Dies ist z. B. bei GDDR-6-RAM der Fall. Ein "18 GHz" GDDR-6-RAM verwendet ein 4,5 GHz-Taktsignal und überträgt mit 18 GHz je 1 Bit pro Datenleitung.
DDR-SDRAM Während „normale“ SDRAM-Module bei einer Taktfrequenz von 133 MHz eine Datenübertragungsrate von 1,06 GB/s bieten, arbeiten Module mit DDR-SDRAM (133 MHz) nahezu mit der doppelten Datenrate. Möglich wird das, wie durch den oben beschriebenen „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 zwingend immer der Fall ist, ist DDR-SDRAM im Vergleich zu einfachem SDRAM bei gleicher Taktfrequenz 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 V, für DDR-400 2,6 V.
+SpezifikationenDDR-SDRAM (DDR1 / DDR2 / DDR3) – Seite beim Elektronik Kompendium; Stand: 3. Juli 2012. Abgerufen am: 5. Juli 2012 Chip Modul Speicher-taktrate I/O-Takt-rate² EffektiveTaktrate³ Datenrate(64 bit Bus)DDR-200 PC-1600 100 MHz 100 MHz 200 MHz 1,6 GB/sDDR-266 PC-2100 133 MHz 133 MHz 266 MHz 2,1 GB/sDDR-333 PC-2700 166 MHz 166 MHz 333 MHz 2,7 GB/sDDR-400 PC-3200 200 MHz 200 MHz 400 MHz 3,2 GB/s ²: Geschwindigkeit der Anbindung an den Speichercontroller von CPU oder Mainboard ³: Effektive Taktrate im Vergleich zu SDR-SDRAM (theoretisch) PC-XXXX: Das XXXX berechnet sich durch (2 × Speichertaktrate × Busbreite)/8 (Busbreite = 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 – dieser oft als „Übertakter-Speicher“ angebotenen Module – seine eigenen Spezifikationen ein und arbeitet oft mit exzessiver Überspannung.
Einen Zuverlässigkeitsgewinn bringen die oft in Servern eingesetzten Speichermodule mit ECC (Error Checking and Correction) oder auch Registered-Module mit Signalpuffer. Das 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, beispielsweise PC-1600R, PC-2100 ECC oder PC-2700R ECC.
DDR2-SDRAM mini|hochkant=1.42|512-MiB-PC2-4200-Speichermodul: Die Chips sind hier in einem BGA-Gehäuse untergebracht. Die Bezeichnung 32M8CEC bedeutet 32 Mibit × 8 = 256 Mibit oder 32 MiB Speicherkapazität pro Chip.
DDR2-SDRAM ist eine Weiterentwicklung des Konzeptes von DDR-SDRAM, bei dem statt mit einem Zweifach- mit einem Vierfach-Prefetch gearbeitet wird.
Die Module für Desktop-Computer besitzen 240 statt 184 Kontakte/Pins und sind mechanisch und elektrisch nicht kompatibel mit DDR-Modulen der ersten Generation. Durch eine anders angeordnete Kerbe wird eine Verwechslung verhindert.
Die Gehäuse der Speicherchips sind in FBGA (Fine Ball Grid Array)-Technik ausgeführt und kleiner (126 mm² statt bisher 261 mm²) als Standard-DDR-RAM im TSOP (Thin Small Outline Package)-Gehäuse.
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 64 Bit breiten DDR-Modul werden also pro Lesezugriff 128 Bit gelesen, aus einem DDR2-Modul 256 Bit. Die absolute Datenmenge bleibt bei gleicher I/O-Taktrate von zum Beispiel 200 MHz aber identisch, da das DDR2-Modul zwei Taktsignale anstatt eines 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 4 (bedingt durch Vierfach-Prefetch) oder 8, DDR hingegen unterstützt 2, 4 oder 8.
Zur Senkung der elektrischen Leistungsaufnahme wurde die Signal- und Versorgungsspannung von 2,6 V auf 1,8 V verringert. Unter anderem durch die verringerte Spannung und die damit geringere Wärmeentwicklung sind höhere Taktraten möglich.
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. Bei ODT sendet der Speicher-Controller ein Signal auf den Bus aus, das alle inaktiven Speicherchips 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 Speichermodule, die langsamer sind als die Hauptplatine, höchstens mit der Taktrate betrieben werden, für die sie ausgelegt sind.
Auch DDR2-Module mit unterschiedlichen Taktraten können beliebig kombiniert werden. Meist arbeitet dann jedoch der gesamte Speicher nur mit der Geschwindigkeit des langsamsten Moduls.
Da die JEDEC-Spezifikationen jedoch ungenau sind, kann es zu Kompatibilitätsproblemen zwischen bestimmten Mainboards und bestimmten Speichermodulen kommen. Oft können diese Probleme durch ein BIOS-Update gelöst werden. Nur bei einem Speicher, der auf der sogenannten QVL (Qualified Vendor List) des Mainboards steht, kann davon ausgegangen werden, dass er in diesem Mainboard auf jeden Fall funktioniert.
+ Spezifikationen Chip Modul Speicher-taktrate I/O-Takt-rate² EffektiveTaktrate³ Datenrate(64 bit Bus)DDR2-400 PC2-3200 100 MHz 200 MHz 400 MHz 3,2 GB/sDDR2-533 PC2-4200 133 MHz 266 MHz 533 MHz 4,2 GB/sDDR2-667 PC2-5300 166 MHz 333 MHz 667 MHz 5,3 GB/sDDR2-800 PC2-6400 200 MHz 400 MHz 800 MHz 6,4 GB/sDDR2-1066 PC2-8500 266 MHz 533 MHz 1066 MHz 8,5 GB/s ²: Geschwindigkeit der Anbindung an den Speichercontroller von CPU oder Mainboard ³: Effektive Taktrate im Vergleich zu SDR-SDRAM (theoretisch) PC2-XY00: Das XY00 berechnet sich durch (4 × Speichertakt [in MHz] × Busbreite [in Bit])/8 (Busbreite = 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 neben den Unregistered-Modulen (oft als PC2-XY00U bezeichnet) auch Registered-Module (PC2-XY00R) und ECC-Module (PC2-XY00E) wie auch FBDIMM-Module (PC2-XY00F).
DDR3-SDRAM mini|hochkant=1.2|DDR3-Modul: Die Kerbe liegt gegenüber DDR2-Modulen deutlich näher am Rand. mini|hochkant=1.2|DDR3-Module in Low-Voltage-Ausführung