Bandbreiten: CPU, SDRAM, DDR-RAM & RAMBUS
17. Mai 2001 / von Leonidas / Seite 1 von 5
Einleitung
Wenn ich ehrlich bin, gehe ich mit diesem Artikel eigentlich ein zwei Jahre altes Thema an, und zwar: "Warum kann der Pentium III von RAMBUS nicht profitieren?" Allerdings wird diese Frage aus heutiger Sicht durch die kommenden DDR-RAM Plattformen für den Pentium III schon wieder hochinteressant - und dies vor allem deswegen, weil es seinerzeit vor zwei Jahren bei Einführung des i820-Chipsatzes (RAMBUS für den P3) eigentlich keine echte zufriedenstellende Antwort auf obige Frage gegeben hat. Vielmehr ist die Aussage "der Pentium III profitiert nicht von RAMBUS" eher denn aus der praktischen Erfahrung der Hardware-Tester entstanden - eine saubere theoretische Untermauerung habe ich bis heute nicht finden können.
Jetzt könnte zwar man argumentieren, "Warum eine theoretische Untermauerung für einen feststehenden Fakt?" - allerdings brächte uns die Theorie hier zwei Dinge: Zum einen das Wissen, wer nun am Dilemma des Pentium III in Verbindung mit RAMBUS Schuld ist - der RAMBUS-Speicher selber oder die CPU. Diese Entscheidung wirkt sich dann ja auch direkt auf die Frage aus, ob DDR-RAM etwas auf dem Pentium III bringen. Und zum anderen natürlich die Möglichkeit, zukünftige Speicher- und CPU-Technologien schon jetzt und heute einzuschätzen.
Vorab zur Erklärung: Der Mittelteil dieses Artikel, welcher sich mit den Bandbreiten der verschiedenen CPU´s und Speicherarten beschäftigt, ist in anderem Kontext schon auf Hard Tecs 4U veröffentlicht wurden. Allerdings geht es dort in erste Linie um "DDR-RAM" als neue Speicherart - und während der Mitarbeit an diesem Artikel entstand meinerseits die komplette Erklärung dieser Bandbreiten-Geschichte. Da ich dieses Thema jedoch schon immer einmal anschneiden wollte, folgt nun hier auf 3DCenter die Veröffentlichung dieses Artikels, welcher sich ausschließlich auf die Bandbreiten-Sache fokusiert.
Und zum Schluß der Einleitung eine Mahnung bezüglich der Praxisrelevanz: Die auf den nachfolgenden Seiten behandelten Bandbreiten stellen maximal mögliche Werte dar, die allerhöchstens in Systemlevel-Benchmarks annähernd ausgenutzt werden. Zur Frage, wie schnell eine CPU ist oder ob damit die Alltags-Performance verbessert wird, sagt dies noch gar nichts aus! Denn dies hängt in entscheidendem Maße vom eigentlichen Design der CPU und auch nicht unentscheidend von der Leistungsfähigkeit des Chipsatzes ab. Hier soll es aber in erster Linie um die Frage der richtigen Speicherart für jede CPU gehen - und warum mancher Speicher bei mancher CPU nichts bringen kann.
Problemstellung und Lösung
Kommen wir zum Geschäft und damit wieder zur Frage der Fragen, warum der P3 nicht von RAMBUS profitiert. Die bisher vorhandenen Erklärungen dazu sind reichlist nebulös - echten Klartext spricht von Tom´s Hardware Guide bis AnandTech erstaunlicherweise keiner. Wie wir später aber noch sehen werden, konnte man diese Frage jedoch schon vor dem Start von RAMBUS auf dem Pentium III beantworten - wenn man den theoretischen Unterbau hatte.
Letzterer ist aber das massivste Problem - saubere Informationen sind hier Mangelware. Alle Welt schreibt hier nur aus Intel´s Spezifikations-Listen ab - und diese sind schlicht als "Marketing-verseucht" zu betrachten. Das heißt, dort wird mit wohlklingenden Zahlen operiert, die aber nicht der physikalischen Realität entsprechen - und dies fängt schon beim einfachsten Thema des FrontSideBusses an (angebliche 400 MHz beim Pentium 4 - es sind physikalisch 100 MHz). Totale Exaktheit ist aber bei einer theoretischen Erklärung elementar - denn die zugrundeliegenden physikalische Gleichungen funktionieren nun einmal nicht mit Marketing-, sondern nur mit "echten" Zahlen.
Um hier all meine Irr- und Wirrwege ein wenig abzukürzen, fangen wir gleich mit dem ersten realen Ansatzpunkt an: Der Bandbreite. Sehr gut - RAMBUS hat 1,6 GByte/s (400 MHz) und SDRAM hat 1,0 GByte/s (133 MHz). Hier ist zuerst einmal der Zeitpunkt der größten Verwirrung erreicht - denn alles spricht klar für RAMBUS. Warum profitiert dann der Pentium III zum Henker nochmal nicht davon? Der entscheidende Hinweis kam von einem Chipsatz-Diagramm des i820 Chipsatze:
"Heureka!" brüllt an dieser Stelle der Grieche - denn wie zu sehen ist, gibt es eine unterschiedliche Speicherbandbreite zwischen Speicher und Chipsatz (1,6 GByte/s) und zwischen Chipsatz und CPU (1,0 GByte/s). Die Speicherbandbreite der CPU ist also nicht automatisch gleich der des Speichers! Vielmehr haben beide jeweils ein eigenes Interface (ohne Interface kein Datentransfer und keine Bandbreite, der Bus ist nur das Mittel dazu), welches mit dem Chipsatz kommuniziert - und dieses kann gleich stark sein, muß es aber nicht!
Ich will den geneigten Leser an dieser Stelle nicht mit weiteren Details der Suche nach der jeweiligen Bandbreiten-Berechnung quälen, der erscheidende Punkt der Unterschiedlichkeit der Interfaces ward ja schon gefunden. Nur so viel zur Erklärung: SDRAM und DDR SDRAM sind 64bittige Speicher, RAMBUS ist ein 16bittiger Speicher und heutige CPUs verfügen über ein 64bittiges Interface zur Außenwelt.
Dieses Interface hat im übrigen nichts mit der Rechengenauigkeit der heutigen CPUs (x86: 32 Bit) zu tun, dies ist ein Interface zur Datenübertragung. Davon gibt es eine Menge im ganzen PC-System und auch innerhalb der CPU selber (von Core zu L1, L1 zu L2, von L2 zu RAM, ...). Überall dort, wo Daten übertragen werden, gibt es ein Interface, welches aufgrund seiner Auslegung (32 bit, 64 bit, 128 bit, SDR, DDR, QDR, ...) entscheidend für die Bandbreite ist. Der viel zitierte Bus ist dabei nur ein Mittel, hat aber selber nichts mit der Bandbreite zu tun, da er physikalisch gesehen nur ein dummes Stück Leiterbahn ist. Selbst der Takt des Busses gehört ihm nicht selber: Er wird zwar damit betrieben, Auslöser ist aber ein Taktgeber im Chipsatz.
Kommen wir nun aber zum Vergleich der Bandbreiten der einzelnen CPUs bei ihren jeweiligen Speicherarten ...