DDR3-Speicher in Theorie und Praxis

Storage & Speicher | HT4U.net | Seite 3

DDR3-SDRAM: Taktraten und I/O-Puffer



Der Unterschied zwischen DDR2 und DDR3 ist im Vergleich zum Unterschied zwischen DDR1 und DDR2 eher klein. Kam bei DDR2 erstmals die Verdoppelung des I/O-Puffer-Taktes gegenüber DDR1 zum Einsatz, was in Verbindung mit der Nutzung der auf- und absteigenden Taktflanke bei DDR1-Speicher einen sogenannten Vierfach-Prefetch ergibt (4 Datenbits pro Taktzyklus des eigentlichen Speichers), so wurde der I/O-Puffer-Takt mit DDR3 erneuert verdoppelt, so dass ein Achtfach-Prefetch entsteht.

Schon der Übergang von DDR zu DDR2 zeigte eindrücklich, dass zur Erhöhung der Bus-Frequenz zwischen Memory Controller und Speicherriegel technische Kniffe notwendig waren. Da die Verarbeitungsgeschwindigkeit auf Chip-Level begrenzt ist, bediente man sich der folgenden Vorgehensweise: Der Takt der Speicherzelle wurde auf die Hälfte des Speicherbussses reduziert, dafür doppelt so viele Bits pro Takt aus dem Memory Array abgerufen (sog. Prefetch), im Nämlichen also vier Bits/Core-Clock.

Bild: DDR3-Speicher in Theorie und Praxis

DDR3 geht nun noch einen Schritt weiter. Das Verhältnis zwischen Bus- und Coreclock verdoppelt sich auf 4:1, pro Coretakt beträgt der Prefetch nun acht Bits. Damit wird weiterer Raum zur Speichertakterhöhung geschaffen. Während DDR2 momentan seit mehr als einem Jahr mit maximal 400 MHz Bustakt (wegen DDR-Übertragung entspricht dies einer effektiven Daten-Taktung von 800 MHz) vom verantwortlichen Normierungsgremium JEDEC spezifiziert ist, wartet man bislang immer noch auf eine offizielle Spezifikation für DDR2-1066 – vermutlich auch weiterhin vergeblich. Es hat also den Anschein als wäre eine Massenproduktion von Speicherchips, die mit mehr als 200 MHz Core-Takt arbeiten können, unwirtschaftlich. Durch den weiteren Halbierungsschritt ist bei DDR3 dagegen Platz nach oben. Somit ist es logisch, dass DDR3 bislang als DDR3-800, DDR3-1066 und DDR3-1333 ohne Weiteres zu fertigen ist. DDR3-1600 ist ebenfalls bereits am Horizont erkennbar, womit die 200 MHz Core-Clock wieder erreicht wären. Dazu kommt, dass die aufgenommene elektrische Leistung proportional zur Taktfrequenz ist und somit DDR3 schon daraus resultierend bei gleichem Bustakt weniger Leistung konsumiert.

Fassen wir zusammen: faktisch wird die eigentliche Kern-Taktung der Speicher nicht erhöht, jenem Takt, der eigentlich Steigerungspotential bei Übertragungsraten ermöglichen könnte. Doch wurde durch Technik-Verbesserungen die Bandbreiten des Speichers, trotz gleicher Core-Clock erhöht, was zumindest auf dem Papier und eben je nach – meist aktuell seltener Anwendung – die Speicherbandbreite doch deutlich erhöht.

Der Unterschied zwischen DDR2 und DDR3 ist im Vergleich zum Unterschied zwischen DDR1 und DDR2 eher klein. Kam bei DDR2 erstmals die Verdoppelung des I/O-Puffer-Taktes gegenüber DDR1 zum Einsatz, was in Verbindung mit der Nutzung der auf- und absteigenden Taktflanke bei DDR1-Speicher einen sogenannten Vierfach-Prefetch ergibt (4 Datenbits pro Taktzyklus des eigentlichen Speichers), so wurde der I/O-Puffer-Takt mit DDR3 erneuert verdoppelt, so dass ein Achtfach-Prefetch entsteht. Anhand eines Rechenbeispiels wird dies vermutlich anschaulicher:

DDR2-667 / PC2-5300: Speicherzellentakt = 166 MHz, I/O-Puffer-Takt = 333 MHz

Bandbreite: 166 MHz (Speichertakt) x 2 (DDR) x 2 (doppelter I/O-Takt) x 64 Bit (Busbreite) = 5312 MByte/s

Durch die heute üblichen zwei Speicherkanäle verdoppelt sich die Bandbreite bei paarweisem Einsatz von zwei Speichermodulen nochmals auf 10,6 Gigabyte/s.

PC3-8500 / DDR3-1066: Speicherzellentakt = 133 MHz, I/O-Puffer-Takt = 533 MHz

Bandbreite: 133 MHz (Speichertakt) x 2 (DDR) x 4 (vierfacher I/O-Takt) x 64 Bit (Busbreite) = 8512 Megabyte/s

Erneut verdoppelt sich die Bandbreite bei paarweisem Einsatz von zwei Speichermodulen auf dann 17,0 Gigabyte/s. Allerdings ergibt sich hier auch ein Bandbreiten-Overkill, denn die aktuellen Core-CPUs haben können Prozessorseitig mit soviel Speicherbandbreite nichts anfangen. Die Prozessor-Bandbreiten stellen sich zurzeit wie folgt dar:

  • FSB800: 200 MHz FSB x 64 Bit x 4 (QDR) Datenpakete pro Takt = 51200 MBit/s = 6400 Mbyte/s

     
  • FSB1066: 266 MHz FSB x 64 Bit x 4 (QDR) Datenpakete pro Takt = 68096 MBit/s = 8500 Mbyte/s

      
  • FSB1333: 333 MHz FSB x 64 Bit x 4 (QDR) Datenpakete pro Takt = 85248 MBit/s = 10600 Mbyte/s

    Zwei paarweise geschaltete DDR2-800 oder DDR3-800-Speicher würden mit 12.800 Mbyte/s schon mehr Speicherbandbreite zur Verfügung stellen, als ein aktueller Core-Prozessor benötigt.

    Nachfolgende, tabellarische Übersicht gibt uns einen zusammenfassenden Aufschluss über die bisherigen DDR-Speicher, deren Kern- und I/O-Takte, sowie die daraus resultierenden „effektiven Taktraten“ und Speicherbandbreiten.

    DDR-Speicher-/Modell-Bezeichnung
    Speicherzellentakt
    I/O-Takt
    effektive Taktung
    Transferleistung [Gbyte/s]
    DDR-200 / PC-1600
    100 MHz
    100 MHz
    200 MHz
    1,6
    DDR-266 / PC-2100
    133 MHz
    133 MHz
    266 MHz
    4,2
    DDR-333 / PC-2700
    166 MHz
    166 MHz
    333 MHz
    2,7
    DDR-400 / PC3200
    200 MHz
    200 MHz
    400 MHz
    3,2
    DDR2-400 / PC2-3200
    100 MHz
    200 MHz
    400 MHz
    3,2
    DDR2-533 / PC2-4200
    133 MHz
    266 MHz
    533 MHz
    4,2
    DDR2-667 / PC2-5300
    166 MHz
    333 MHz
    667 MHz
    5,3
    DDR2-800 / PC2-6400
    200 MHz
    400 MHz
    800 MHz
    6,4
    DDR2-1066 / PC2-8500
    266 MHz
    533 MHz
    1066 MHz
    8,5
    DDR3-800 / PC3-6400
    100 MHz
    400 MHz
    800 MHz
    6,4
    DDR3-1066 / PC3-8500
    133 MHz
    533 MHz
    1066 MHz
    8,5
    DDR3-1333 / PC3-10600
    166 MHz
    667 MHz
    1333 MHz
    10,6
    DDR-1600 / PC3-12800
    200 MHz
    800 MHz
    1600 MHz
    12,8
    Wir haben in der Tabelle absichtlich beide Bezeichnungen für DDR-Speicher-Sorten mit aufgenommen. Die im Markt ebenfalls anzutreffende Bezeichnung „PC2-xxxx“ spiegelt dabei mit der jeweiligen Nummer hinter dem PC den Speicherstandard – also DDR, DDR2 oder DDR3 – wieder, die dann folgende Zahl gibt die theoretisch, maximale Speicherbandbreite des Speichermoduls an. Ein PC2-5300 Speicher ist also ein DDR2-Speicher mit einer Speicherbandbreite von 5,3 Gbyte/s.

    Wie unsere Tabelle zeigt, gab es bislang keinen offiziellen Standard, welcher mit einer Kern-Taktfrequenz von über 200 MHz arbeitet. Die vereinzelt im Markt als DDR2-1066 beworbenen Speichermodule haben allerdings einen höheren Speicherzellentakt, doch wurde bislang kein Standard seitens der JEDEC verabschiedet und wir dürften erst einmal zweifeln, ob dies jemals erfolgen wird. Wir haben diesen „Speicher“ darum auch nur der Vollständigkeit halber mit aufgeführt und ihr in der Tabelle entsprechend hervorgehoben. Was aber gleichermaßen deutlich wird ist, dass die Speicherbandbreiten kontinuierlich gesteigert wurden. Im Dual-Channel-Speicherbetrieb darf man unsere Bandbreitenangaben also noch einmal mit Faktor 2 multiplizieren.

    Doch wie bereits angesprochen sorgt eine höhere Bandbreite aber nicht automatisch für eine bessere Performance. Die theoretischen maximalen Bandbreiten werden nur bei linearen Zugriffen erreicht. Im praktischen Desktop-Einsatz sind eher kurze Datenpakete anzutreffen, so dass die Latenzen eine nicht unwesentliche Rolle spielen.

  •