Gibt es eine Validierung für unterschiedliche Speichergeschwindigkeiten und -timings?

Gibt es eine Validierung für unterschiedliche Speichergeschwindigkeiten und -timings?

Wenn wir uns die Theorie anschauen (und davon ausgehen, dass Bitzeit, Befehlsrate und Zykluszeit alle Teil der Spezifikation sind und für alle Komponenten, die behaupten, DDR4-xxx zu sein, zutreffen und immer gleich sein müssen – was ich gerne korrigiert hätte, wenn sie es nicht sind), erhalten wir:

Typ Datenrate Bitzeit Befehlsrate Zykluszeit CAS-Latenz Erstes Wort (k.A.) Viertes Wort (k.A.) Achtes Wort (k.A.)
ddr4-3200 3200 MT/s .313 ns 1600 MHz .626 ns 21 13.15 14.09 15.34
ddr4-2666 2666 MT/s .375 ns 1333 MHz .750 ns 11 8,25 9.38 10,88

Es zeigt, dass 2666 CAS 11 bei reinen ns-Timings fast doppelt so schnell sein kann.

Stimmt das? Lasse ich einen Teil der Theorie aus? Hat das jemand selbst beobachtet oder kennt jemand eine glaubwürdige Quelle, die etwas Ähnliches bei einer realen Anwendung gemessen hat?

Antwort1

Sie vergleichen Latenz und Gesamtmodulgeschwindigkeit auf eine Weise, die nicht miteinander in Zusammenhang steht.

Sicher, die ns-Zeiten einer ersten Anforderung könnten mit einer geringeren CAS-Latenz schneller sein, aber der Speicher überträgt Daten heutzutage normalerweise in größeren Blöcken, was bedeutet, dass die anfängliche Latenz im Vergleich dazu vernachlässigbar ist.

DerAuswahleiner Adresse im RAM ist möglicherweise langsamer, aber die höhere Frequenz des schnelleren RAM bedeutet, dass die tatsächlichen Datenübertragungen schneller erfolgen.

Die Zeit für das „erste Wort (ns)“ könnte 5 ns langsamer sein, aber bei einer groben Berechnung muss das schnellere Modul nur 80 Bits hintereinander übertragen (unter Verwendung der Bitzeiten: 5 ns ÷ (0,375 - 0,313) = 80,64), um diese anfängliche Verzögerung auszugleichen.

AusWikipedia DDR4

Die grundlegende Burst-Größe beträgt acht 64-Bit-Wörter und höhere Bandbreiten werden durch das Senden von mehr Lese-/Schreibbefehlen pro Sekunde erreicht.

Eine grundlegende Übertragungseinheit könnte bei mehreren Anforderungen und effizienter Nutzung also deutlich länger als 80 Bit sein.

Die Latenz verlangsamt die erste Anforderung und beeinträchtigt die Geschwindigkeit der Speicheradressauswahl. Tatsächliche Massenübertragungen sind in Modulen mit höherer Geschwindigkeit jedoch weitaus höher.

Um eine höhere Gesamtbandbreite und schnellere Signalübertragung zu erreichen, wurde die interne Komplexität der Module erhöht. Der Nachteil besteht darin, dass durch die Komplexität die Latenzzeit zunimmt, was jedoch fast immer kompensiert wird.


Denk darüber so:

Der Speicher in Ihrem System weist diese anfängliche Verzögerung beim Lesen auf. Sobald Sie wissen, dass er immer eine bestimmte Blockgröße überträgt und diese Übertragung im Wesentlichen unabhängig von Änderungen an Adresszeilen fortführt, können Sie die Adresse ändern, um den nächsten gewünschten Bytesatz einzurichten.

Abhängig von den Speicherbänken oder der internen Konfiguration mit Puffern können Sie die Dinge für Ihre nächste Übertragung im Wesentlichen mit nahezu null Kosten in Bezug auf die Latenz einrichten. Die Daten könnten theoretisch sofort einsatzbereit sein.

Sie können eine fortlaufende Kette von „Jetzt machen Sie das, als nächstes das“ erstellen, wobei die Latenzen größtenteils hinter der vorherigen Übertragung verborgen sind. Intelligentere Elektronik kann höhere Übertragungsraten bei höheren Frequenzen erreichenUndhöhere Latenzen.

Nicht alles, was „langsamer“ ist, ist tatsächlich langsamer.

verwandte Informationen