PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Frage zu GDDR5


Gast
2010-04-12, 16:26:22
Hallo,
ich hab mal ne Frage über die ich mir schon des öfteren ab und zu Gedanken gemacht habe. Hab leider noch keine gescheite Antwort darauf gefunden (vllt auch einfach falsch gesuchtxD).

Und zwar: Aus welchem Grund wird GDDR5 nicht als normaler Systemram verwendet?

Immerhin hat der Grafikram ja eine deutlich höhere Bandbreite.

Ich hoff es kann mir jemand Licht ins dunkle bringen :D

Gast
2010-04-12, 16:33:18
Ich schätze mal es liegt daran das es Aufgrund der hohen Taktraten und der längeren Wege viel leichter zu Störungen kommen würde und man deshalb erstmal darauf verzichtet um die Mainboards nicht so teuer zu machen. Bei den Grafikkarten ist es unproblematischer da die Signalwege viel kürzer sind und der RAM nicht gesockelt ist.

Leonidas
2010-04-12, 16:59:05
GDDR5 ist DDR3 oder zumindest eine nahe Abwandlung von DDR3. Es wird also als System-RAM verwendet ...

Die eigentliche Frage ist, wieso DDR3 als DDR3 viel weniger taktet als als GDDR5: Grund sind die längeren Signalwege und der Sockel, der bei GDDR5 wegfällt. Grund ist aber auch, daß es bei DDR3 derzeit keinen besonderen Bedarf nach wirklich schnellem Speicher gibt.

Gast
2010-04-12, 19:16:01
Somit wärs geklärt danke ;)

Coda
2010-04-12, 20:45:58
GDDR5 ist DDR3 oder zumindest eine nahe Abwandlung von DDR3.
Nein, ist es nicht. GDDR3 und 4 ja, aber GDDR5 hat einiges an speziellen Features um es nicht mehr als "nahe Abwandlung" bezeichnen zu können.

Spasstiger
2010-04-12, 21:21:24
GDDR3 und 4 ja, aber GDDR5 hat einiges an speziellen Features um es nicht mehr als "nahe Abwandlung" bezeichnen zu können.
GDDR3 und GDDR4 sind von DDR3 genauso weit entfernt wie GDDR5. GDDR3 und GDDR4 arbeiten mit einem 4n-Prefetech - also wie bei DDR2 *). GDDR3 benötigt eine Spannung von 1,8 Volt (wie DDR2), GDDR4 eine Spannung von 1,5 Volt (wie DDR3). GDDR5 arbeitet wie DDR3 mit einem 8n-Prefetch und einer Spannung von 1,5 Volt, hebt sich aber durch das dedizierte I/O-Taktsignal und das Datentraining von DDR3 ab.

GDDR5 wäre als Hauptspeicher zu teuer und in gesockelter Form vermutlich auch nicht mit den Datenraten umsetzbar wie man sie bei Grafikkarten sieht.

*) Argh, jetzt hab ich mich vertan. GDDR3 = 4n-Prefetch, GDDR4 = 8n-Prefetch. D.h. GDDR4 ähnelt DDR3 stark, GDDR3 dagegen DDR2. GDDR5 ist quasi DDR3 auf Steroiden.

Coda
2010-04-12, 22:08:00
GDDR3 und GDDR4 sind von DDR3 genauso weit entfernt wie GDDR5.
Das sehe ich wie gesagt anders.

Leonidas
2010-04-13, 07:07:02
*) Argh, jetzt hab ich mich vertan. GDDR3 = 4n-Prefetch, GDDR4 = 8n-Prefetch. D.h. GDDR4 ähnelt DDR3 stark, GDDR3 dagegen DDR2. GDDR5 ist quasi DDR3 auf Steroiden.


Sag ich doch.


Und man sollte mal von dem Kunstbegriff des "Prefetch" runterkommen. DDR übertragt zwei Datenpakete pro Datentakt, DDR2/GDDR2/GDDR3 übertragen vier Datenpakete pro Datentakt und DDR3/GDDR4/GDDR5 übertragen acht Datenpakete pro Datentakt. Man kann es auch einfach verständlich erklären.

Spasstiger
2010-04-13, 14:33:33
@Leonidas: DDR(1/2/3)-Speicher übeträgt unabhängig vom Prefetch immer zwei Bit pro Datentakt und Datenleitung. "Prefetch" ist kein Kunstbegriff, sondern der technisch gängige Begriffe, der den Sachverhalt korrekt beschreibt.

Leonidas
2010-04-13, 19:54:50
Prefetch ist ein Marketingbegriff, mit dem irgendeine tolle Überlegenheit von DDR2/DDR3 herbeigezaubert werden soll. Dabei wird der DDR-Effekt der Datenübertragung mal eben so mit dem größeren internen Interface der Speicherchips vermengt, was aus technischer Sicht ein Unding ist, weil es vollkommen verschiedene Dinge sind.

Spasstiger
2010-04-13, 20:29:32
Den Prefetch-Begriff kennen Laien nicht, sondern nur Leute, die Datenblätter lesen. Ich wüsste nicht, wieso an dieser Stelle Marketing nötig sein soll. Beim Prefetching hängen die Speicherchips nicht direkt am Datenbus, sondern es ist noch ein Parallel-Seriell-Umsetzer zwischengeschaltet, in dem die Daten zwischengespeichert werden und auf die "Abholung", also das Fetching warten.

/EDIT: Ich könnte wetten, dass das Thema Prefetching auch in einer meiner Vorlesungen behandelt wurde. DDR2-Speicher hatte ich sogar in einer meiner Prüfungen als Thema. Und ich höre keine Marketing-Vorlesungen. ;)

Leonidas
2010-04-14, 07:14:59
Es ist trotzdem übles Marketinggeschwafel. DDR hat keinen Prefetch, da werden einfach nur zwei Datenpakete pro Takt (an den steigenden und fallenden Signalflanken) übertragen. Als DDR2 herauskommt, hat DDR plötzlich einen Prefetch von 2, nur damit man bei DDR2 mit einem höheren Prefetch von 4 werben kann. Reines Marketing.

Und der entscheidende Punkt an der Sache ist *nicht* der Prefetcher, sondern ganz einfach das verdoppelte interne Interface. Man erhöht die Datenrate nicht dadurch, das Daten erst warten und dann abgeholt werden müssen - das ist nur Mittel zum Zweck. Das verdoppelte interne Interface, welches den gleichbleibenden Takt der Speicherzellen ausgleicht, das macht den Braten fett.

Spasstiger
2010-04-15, 15:20:34
Es ist trotzdem übles Marketinggeschwafel. DDR hat keinen Prefetch, da werden einfach nur zwei Datenpakete pro Takt (an den steigenden und fallenden Signalflanken) übertragen. Als DDR2 herauskommt, hat DDR plötzlich einen Prefetch von 2, nur damit man bei DDR2 mit einem höheren Prefetch von 4 werben kann. Reines Marketing.
DDR hatte schon immer einen 2n-Prefetch, nicht erst nachdem DDR2 rauskam.

The DDR SDRAM uses a double data rate architecture to achieve high-speed operation.
The double data rate architecture is essentially a 2n-prefetch architecture with an inter-
face designed to transfer two data words per clock cycle at the I/O pins. A single read or
write access for the DDR SDRAM effectively consists of a single 2n-bit-wide, one-clock-
cycle data transfer at the internal DRAM core and two corresponding n-bit-wide, one-
half-clock-cycle data transfers at the I/O pins.
Quelle: http://download.micron.com/pdf/datasheets/dram/ddr/256MBDDRx4x8x16.pdf

Prefetching ist das Basiskonzept, das hinter allen Arten von DDR-Speicher steckt.

Coda
2010-04-15, 15:30:57
Muss ja auch so sein. Anders kann man mit gleicher interner Bandbreite ja nicht die doppelte externe Bandbreite versorgen.

Leonidas
2010-04-15, 19:17:55
Prefetch ist das Marketingwort, hinter welchem man zwei völlig verschiedenen technische Erklärungen versteckt. Mit einem Konzept oder so etwas hat das nix zu tun, das ist einfach nur zur billigstmöglichen Erklärung der Sache ohne Rücksicht auf wirkliche technische Gegebenheiten. Und in dem wir den Ausdruck nutzen, geben wir zu erkennen, daß wir auf dieses Marketing reingefallen sind. Und das der Marketingbegriff selbst in technischen Dokumentationen verwendet wird, bedeutet nur, daß das Marketing eben selbst das editiert, was von den Technikern kommt.

Coda
2010-04-15, 19:19:57
Prefetch ist das Marketingwort
Ist es nicht. Es ist eine technische Gegebenheit, da stimme ich Spasstiger 100% zu.

aths
2010-04-15, 19:35:47
Wer erklärt mal fix, wie man pro Taktflanke und Leitung mehr als ein Bit übertragen kann?

Coda
2010-04-15, 19:37:13
Gar nicht. Der Takt der Datenleitung ist doppelt so hoch, es wird nur bei jeder Taktflanke des Kontrolltaktes ein Bit gelesen, und nicht nur bei einer.

aths
2010-04-15, 20:00:42
Dann frag ich mal dümmer. Bei DDR ohne G ist es so dass bei DDR2 im Vergleich zu DDR1 der Datentakt verdoppelt wird, und bei DDR3 wiederum verdoppelt? So dass 800-MHz-DDR2-Speicher "in Wahrheit" nur mit 400 MHz taktet, 1600-MHz-DDR3-Speicher aber tatsächlich mit 800 MHz?

Coda
2010-04-15, 20:25:41
Ich kann es dir auch nicht 100% sicher beantworten.

Ich glaube aber bei bei DDR2 ist es so, dass es einen Kontrolltakt und einen Datentakt = Kontrolltakt * 2 gibt, wobei auf der Datenleitung dann bei fallender und steigender Flanke auf dem Datentakt ein Bit anliegt, also mit 4x so hohem Takt wie Control.

Bei DDR3 ist der Datentakt nochmal verdoppelt ggü. dem Kontrolltakt, also Datentakt = Kontrolltakt * 4. DDR3-1600 hat also den gleichen Kontrolltakt wie DDR-400 und DDR2-800.

Gast
2010-04-16, 11:06:23
Ich kann es dir auch nicht 100% sicher beantworten.

Ich glaube aber bei bei DDR2 ist es so, dass es einen Kontrolltakt und einen Datentakt = Kontrolltakt * 2 gibt, wobei auf der Datenleitung dann bei fallender und steigender Flanke auf dem Datentakt ein Bit anliegt, also mit 4x so hohem Takt wie Control.

Bei DDR3 ist der Datentakt nochmal verdoppelt ggü. dem Kontrolltakt, also Datentakt = Kontrolltakt * 4. DDR3-1600 hat also den gleichen Kontrolltakt wie DDR-400 und DDR2-800.


Mir gefällt mir die Bezeichnung "Realtakt" deutlich besser, denn die macht für jedem deutlich, was das ist und wie das funktioniert.
Und dieser Realtakt ist in der Tat bei DDR-400, DDR2-800 und DDR3-1600 exakt der selbe. Nämlich genau 200 MHz.

Entscheidend sind die (wiederum vom Realtakt abgeleitet) aus dem jeweiligen Typus resultierenden, unterschiedlichen I/O-Takte, die dann mit dem immer konstanten Multiplikator 2 zum (theoretischen) Effektivtakt führen,
der den Speichern hinter dem Bindestrich nach der Typenbezeichnung auch ihren Namen verleiht.

@aths:
"In Wahrheit" operieren i. d. R. sämliche derzeit erhältlichen Speicher mit exakt den selben Taktraten wie zu DDR-Zeiten (nein, es ist nicht so gemeint wie es klingt). Das Einizige was sich geändert hat ist der "Hebel" also der besagte Prefetch (bitte nicht hauen Leo!) oder nennen wir es am besten die "I/O-Leistung".

Man rechne einfach mal probeweise rückwärts:
von DDR3 "effektiv" auf "real" -> Multi = x 1/8
von DDR2 "effektiv" auf "real" -> Multi = x 1/4
von DDR "effektiv" auf "real" -> Multi = x 1/2 (da hier I/O Takt = Realtakt)

aths
2010-04-16, 11:18:47
Prefetch klingt für mich nach Cache. Ich will verstehen wie es physikalisch funktioniert. Wenn einer sagt dass "mit Prefetch" mehr Bits übertragen werden, sagt mir das nichts. Null und Eins werden mit verschiedenen Volt-Leveln kodiert. Man könnte mit Zwischenwerten mehrere Bits gleichzeitig kodieren aber das würde die Anforderungen an die Signalwege erhöhen und bräuchte zudem einen Encoder und einen Decoder.

Buzzler
2010-04-16, 12:33:57
Prefetch klingt für mich nach Cache. Ich will verstehen wie es physikalisch funktioniert. Wenn einer sagt dass "mit Prefetch" mehr Bits übertragen werden, sagt mir das nichts.
Prefetch ist was der I/O-Chip der Speichermodule macht. Cache ist im Prinzip schon richtig, das ist nicht mehr als ein glorifizierter Puffer.

Bei DDR-SDRAM werden die Datenleitungen prinzipiell mit der doppelten Speicherbus-Frequenz betrieben. Sprich die Steuerleitungen und die Speicherzellen werden mit Frequenz x betrieben und der I/O-Chip und die Datenleitungen mit 2 mal x.

Bei DDR ändert der I/O-Chip zweimal pro Takt die auf den Datenleitungen anliegenden Signale (deshalb auch die doppelte Frequenz, denn für einen Logik-Chip gibt es nur high und low, für die Flanken interessiert der sich nicht, abgesehen davon, dass sie steil genug sein müssen). Den zweiten Teil der Daten, also die die bei der fallenden Taktflanke des Clock-Signals angelegt werden sollen, muss der I/O-Chip aber schon haben, wenn er den ersten Teil der Daten sendet, weil die Speicherzellen gegenüber dem I/O-Chip ja nur mit halber Taktfrequenz arbeiten. Deshalb muss er auf einen Schlag beide Teile des Datenpakets aus den Speicherzellen lesen und zwischenspeichern. Bei DDR muss er das Doppelte dessen zwischenspeichern, was er pro Taktflanke sendet => 2n-prefetch.

Bei DDR2 wurde die Frequenz, mit der die Speicherzellen betrieben werden, halbiert, d.h. der I/O-Chip muss schon das Vierfache dessen zwischenspeichern, was er pro Taktflanke sendet: 4n-prefetch. Deshalb ist bei DDR2 die Latenz in Takten auch soviel schlechter als bei DDR, weil die Speicherzellen selbst ja nicht wesentlich schneller geworden sind.

Bei DDR3 wurde das gleiche Spiel dann nochmal getrieben: 8n-prefetch.

aths
2010-04-16, 17:59:29
Ich habs noch immer nicht so ganz verstanden.

Bei DDR1 speichert er pro aufsteigender Flanke ein Bit zwischen, welches nämlich mit fallender Flanke übertragen wurde, um dann die entsprechende Speicherzelle zu ändern? Das hieße dass der DDR-Speicher intern doppelte Adressbusbreite haben müsste.

Bei DDR2-Speicher sogar die vierfache Adressbusbreite. Mit 32 Bit angebundender Speicher hätte dann eigentlich 128 Bit Adressbreite nur dass die Daten mit vierfachem Takt auf nur 32 Datenleitungen übermittelt werden.

Buzzler
2010-04-16, 19:28:23
Bei DDR1 speichert er pro aufsteigender Flanke ein Bit zwischen, welches nämlich mit fallender Flanke übertragen wurde, um dann die entsprechende Speicherzelle zu ändern?
Der eigentliche und einzige Witz an DDR-SDRAM ist eigentlich, dass gegenüber SDR-SDRAM das Clock-Signal mit halbierter Taktfrequenz läuft. Bei SDR ist nämlich das Clock-Signal das Einzige, was zweimal pro Taktzyklus den Zustand ändert, während alles andere nur einmal pro Taktzyklus den Zustand ändert. D.h. nur für das Clock-Signal liegen die Anforderungen an die HF-Eigenschaften des Speicherbusses mal eben doppelt so hoch. Das umgeht man mit DDR halt.

Das hieße dass der DDR-Speicher intern doppelte Adressbusbreite haben müsste.
Wenn ich das richtig verstanden habe, dann sitzt in den Speicherchips ein Multiplexer/Demultiplexer, der mit "voller" Taktfrequenz läuft, die Daten aus dem Puffer liest oder da rein schreibt und die Daten am anderen Ende seriell überträgt/empfängt - dessen Anschluss geht dann wohl direkt an die Anschlüsse des Speichermoduls. Der Puffer läuft ebenfalls mit "voller" Taktfrequenz - vom Puffer in die Speicherzellen und zurück geht es aber nur mit reduzierter Frequenz.
Einen I/O-Chip gibt es in dem Sinne auch gar nicht, das sitzt direkt in den Speicherchips mit drin. Das ist im letzten Posting der Vereinfachung zum Opfer gefallen.

Um intern Busbreite zu sparen, wird da meines Wissens viel getrickst, z.B. indem nie einzelne Speicherzellen gelesen werden, sondern immer gleich ganze Spalten. Die Perfomance hängt dadurch halt vom Zugriffsmuster ab, vermutlich erreicht deshalb DDR2 bei gleicher Nennbandbreite nicht die gleiche Perfomance wie DDR1.

Gast
2010-04-16, 19:45:47
Bei DDR2 wurde die Frequenz, mit der die Speicherzellen betrieben werden, halbiert, d.h. der I/O-Chip muss schon das Vierfache dessen zwischenspeichern, was er pro Taktflanke sendet: 4n-prefetch. Deshalb ist bei DDR2 die Latenz in Takten auch soviel schlechter als bei DDR, weil die Speicherzellen selbst ja nicht wesentlich schneller geworden sind.

Bei DDR3 wurde das gleiche Spiel dann nochmal getrieben: 8n-prefetch.

Das heißt DDR2 und 3 ist eigentlich kein DDR mehr sondern QDR und was man auch immer für einen Namen man für DDR3 finden kann?

Buzzler
2010-04-16, 20:05:37
Das heißt DDR2 und 3 ist eigentlich kein DDR mehr sondern QDR und was man auch immer für einen Namen man für DDR3 finden kann?
Nein, denn das Double Data Rate bezieht sich auf den (Speicher-)Bus. Es ist erstmal kein Merkmal der angeschlossenen Gerätschaften, bis auf die Tatsache, dass sie damit senden und empfangen können müssen. Die Halbierung der Frequenz, mit der bei DDR2 die Speicherzellen betrieben werden, ist vom DDR-Prinzip erstmal unabhängig.

Gast
2010-04-16, 23:14:21
Nein, denn das Double Data Rate bezieht sich auf den (Speicher-)Bus.


Und der sendet auf der physischen Ebene wirklich je 1 bit mit steigender und fallender Flanke, und codiert nicht in Wirklichkeit 2 bit in eine Taktflanke?

Spasstiger
2010-04-16, 23:17:44
Und der sendet auf der physischen Ebene wirklich je 1 bit mit steigender und fallender Flanke, und codiert nicht in Wirklichkeit 2 bit in eine Taktflanke?
Ja. DDR2 weist gegenüber DDR1 die doppelte Datenfrequenz auf, weil die Taktfrequenz zwischen DIMM und Speichercontroller doppelt so hoch ist. Pro Taktflanke und Datenleitung wird weiterhin 1 Bit übertragen.
Die Speicherzellen an sich werden bei DDR1, DDR2 und DDR3 mit nahezu gleichem Takt betrieben (nämlich ~200 MHz). Wobei ich nicht sicher bin, ob innerhalb der Speicherchips wirklich der Takt auf 200 MHz runtergebrochen wird oder ob der Zugriff anderweitig erfolgt. Der Takt, der an den Pins der Speicherchips anliegt, beträgt jedenfalls 400 MHz bei DDR2-800 und 800 MHz bei DDR3-1600.

aths
2010-04-17, 13:13:20
Kennt einer einen Artikel der DDR, DDR2, DDR3, GDDR, GDDR3, 4 und 5 technisch korrekt erklärt? Bei solchen Spezialfragen habe ich keine Lust auf Wikipedia, in Dingen wie Farbraum, Videorekordertechnik und Fernsehsignale habe ich da eine Menge Unsinn gelesen.

Buzzler
2010-04-17, 13:44:12
Die Speicherzellen an sich werden bei DDR1, DDR2 und DDR3 mit nahezu gleichem Takt betrieben (nämlich ~200 MHz). Wobei ich nicht sicher bin, ob innerhalb der Speicherchips wirklich der Takt auf 200 MHz runtergebrochen wird oder ob der Zugriff anderweitig erfolgt.
DRAM-Speicherzellen haben an sich ja keinen Takt, die sind zutiefst analog. Die haben nur Latenzen, sprich an der Zelle muss soundso lange high/low anliegen, damit die Speicherkapazität sicher geladen/entladen ist. Für den Schreib-/Leseverstärker bedeutet das, dass jeder Schreib-/Lesevorgang soundsoviel Takte dauert. Dafür wird es sicherlich einen globalen Zähler geben und nicht jeweils einen für jedes Bit der internen Busbreite. Das könnte man so auffassen, dass tatsächlich die Taktfrequenz "runtergebrochen" wird ... oder auch nicht - je nach Standpunkt. ;)

Kennt einer einen Artikel der DDR, DDR2, DDR3, GDDR, GDDR3, 4 und 5 technisch korrekt erklärt?
Nein, einen einzelnen Artikel kenne ich nicht und selbst verteilt auf mehrere Artikel kenne ich nichts, was die Sache wirklich endgültig erklärt. Du könntest mal beim Elektronik-Kompendium (http://www.elektronik-kompendium.de) unter Computertechnik schauen, ob Dir das beim Verständnis hilft. Das geht aber auch nicht wirklich in die Details.

Leonidas
2010-04-18, 18:03:56
Kennt einer einen Artikel der DDR, DDR2, DDR3, GDDR, GDDR3, 4 und 5 technisch korrekt erklärt? Bei solchen Spezialfragen habe ich keine Lust auf Wikipedia, in Dingen wie Farbraum, Videorekordertechnik und Fernsehsignale habe ich da eine Menge Unsinn gelesen.


Für DDR2/DDR3 hat selbst das 3DC was:
http://www.3dcenter.org/artikel/ddr3-speicher-aus-intel-und-amd-sicht