Athlon 64 FX-51 und Athlon 64 3200+ im Test: Zauber der AMD64-Architektur

 9/57
Thomas Hübner
114 Kommentare

Die Kraft der AMD64 Architektur

Zur im Athlon 64 und Athlon 64 FX zum Einsatz kommenden Architektur kann man sicherlich besonders viele Worte verlieren. Im Vergleich zum bisher schnellsten Desktop-Prozessor aus dem Hause AMD, dem Athlon XP 3200+, gibt es dabei doch die eine oder andere Gemeinsamkeiten. Letztendlich zählen jedoch nur die Unterschiede.

Architektur des AMD Athlon (Athlon XP verfügt über 32-Entry TLB und SSE-Support)
Architektur des AMD Athlon (Athlon XP verfügt über 32-Entry TLB und SSE-Support)
Die neue AMD AMD64 Architektur, bisher unter der Bezeichnung x86-64 bekannt
Die neue AMD AMD64 Architektur, bisher unter der Bezeichnung x86-64 bekannt

So besitzen alle Prozessoren der AMD64-Architektur eine in den Prozessor integrierte Northbridge, an die unter anderem der Speichercontroller und ein HyperTransport-Interface angebunden sind. Außerdem besitzt der Athlon 64 (FX) einen 1 MB großen L2-Cache, der doppelt so groß wie der des Athlon XP 3200+ ausfällt. Auch der SSE2 Befehlssatz wird nun unterstützt. Darüber hinaus werden die drei Integer-Units des Prozessors nun von einem insgesamt 24 Einträge fassenden Scheduler gefüttert. Die Integer-Scheduler des Athlon XP fassen nur 18 Einträge. Beim FPU-Scheduler des Athlon XP mit seinen 32 Einträgen war man dagegen auch beim Athlon 64 zufrieden. Bei der Branch Prediction Unit hat man allem Anschein nach Bedarf zur Nachbesserung gesehen. So hat man hier z.B. die Größe des Global History Counters auf 16k vervierfacht um somit eine bessere Sprungvorhersage zu ermöglichen. Bei den Translation Look-aside Buffer (TLB) hat man ebenfalls den Speicherplatz vergrößert. Nachdem man dem Athlon XP im Vergleich zum Athlon bereits optimierte TLBs zukommen lies, wurde nun die Größe der L2 TLB von 256 auf 512 Einträge verdoppelt. Die 10-stufige ALU und 15-stufige FPU-Pipeline des Athlon XP wurden bei den Mitgliedern der AMD64-Architektur um jeweils zwei Stufen auf 12 und 17 „Stages“ verlängert. Dadurch wird die Arbeit auf mehrere Einheiten verteilt, wodurch die einzelnen Units weniger komplex ausfallen können und dadurch höhere Taktraten erreicht werden. Je länger die Pipeline, desto leichter kann auch der Prozessortakt angehoben werden. Dafür ist eine lange Pipeline sehr anfällig gegenüber Cache-Misses oder falschen Branch-Predictions, deshalb auch die Vergrößerung des Global History Counters der Branch Prediction Unit. An dieser Stelle soll auch nicht vergessen werden, dass der Prozessorcache nun über einen ECC Fehlerkorrektur-Mechnismus verfügt. Im Detail haben sich darüber hinaus weitere Kleinigkeiten verändert.

Die bisher aufgeführten Verbesserungen sind zwar schön und gut, wirklich neu ist aber die 64 Bit Erweiterung, welche dem Athlon 64 sowie dem Athlon 64 FX auch zu ihrem Namen verholfen hat. Im 32 Bit Modus verhalten sich Athlon 64 (FX) und Opteron wie klassische x86 Prozessoren. In diesem Modus bietet er acht 32 Bit breite General-Purpose Registers (GPRs), acht 64 Bit fassende Media and Floating-Point Registers (für MMX) sowie acht 128 Bit breite Media Registers (für SSE und SSE2).

Als Register bezeichnet man prozessorinterne Zwischenspeicher. Auf diesen Registern werden sämtliche Operationen wie Addition und Multiplikation durchgeführt. Ein Prozessor kann so lange Operationen durchführen, wie seine Register lang sind. Ein 32Bit Prozessor kann also mit Zahlen arbeiten, die eine Länge von maximal 32 Bit haben (wenn man die MMX und SSE/SSE2 Befehle außen vor lässt). Sind die Operanden größer als 32 Bit, so werden diese in logische Teile ausgeführt und müssen einzeln berechnet werden. Dagegen kann ein 64 Bit Prozessor mit 64 Bit großen Operanden arbeiten und benötigt für die Berechnung demzufolge deutlich weniger Taktzyklen als ein 32Bit Prozessor.