Alle Details zum Athlon 64 für Notebooks

20.01.2004 von Christian Vilsbeck
Unterwegs mit 64 Bit: AMDs Athlon 64 für Notebooks erlaubt dies ebenso wie mit vorhandenen 32-Bit-Betriebssystemen. Wir erläutern wie das funktioniert und welche Details den mobilen Athlon 64 sonst noch auszeichnen.

Mit dem Athlon 64 für Notebooks portiert AMD seine AMD64-Architektur für das Mobile Computing. Dabei basiert der erste 64-Bit-Notebook-Prozessor auf dem Athlon 64 für Desktop-PCs. Entsprechend können Notebooks mit AMDs neuer Mobile-CPU problemlos mit 32- und 64-Bit-Betriebssystemen agieren.

Der Trick, warum das funktioniert, ist relativ einfach: AMD erweitert beim Athlon 64 für Notebooks die vorhandenen 32-Bit-Register auf eine Breite von 64 Bit. Findet der AMD64-Prozessor ein 32-Bit-Betriebssystem vor, so liegt die 64-Bit-Erweiterung einfach brach. Die CPU verhält sich wie ein normaler x86-Prozessor. Bei einem 64-Bit-Betriebssystem wird die 64 Bit breiten Register dagegen genutzt. Einen ähnlichen Weg ging Intel bereits beim Übergang vom 286er zum 386er.

Ausnutzen lässt sich der 64-Bit-Vorteil des Athlon 64 für Notebooks aber nur mit dem entsprechenden Betriebssystem. Und hier müssen sich vor allem Notebook-Besitzer noch etwas gedulden. Denn eine finale Version von Windows XP 64 Bit für AMD64-Prozessoren soll erst bis spätestens Mitte 2004 auf den Markt kommen. Und Linux - egal ob in der 32- oder 64-Bit-Version - ist für Notebooks wegen teilweise fehlender Hardware- und Powermanagement-Unterstützung noch nicht ideal.

Wie sich der Athlon 64 für Notebooks beim Einsatz von 32- und 64-Bit-Betriebssystemen verhält und welche Details seine Architektur verbirgt, führen wir Ihnen in diesem Artikel auf.

Mobile-Varianten

Für Notebooks bietet AMD seit dem Launch des Athlon 64 im September 2003 auch den Athlon 64 Desktop Replacement (DTR) an. Diese CPU ist kein expliziter Mobile-Prozessor, sondern entspricht bis auf Kleinigkeiten dem Athlon 64 für Desktop-PCs. Entsprechend hoch fällt bei einem Athlon 64 3400+ DTR die maximale Verlustleistung mit 81,5 Watt aus. Die TDP ist damit nur unwesentlich niedriger als beim 2,2-GHz-Desktop-Pendant mit 89 Watt. Neben der Topversion bietet AMD den Athlon 64 DTR als Modell 3000+ und 3200+ an. Die maximale Verlustleistung ist bei diesen CPUs ebenfalls mit 81,5 Watt spezifiziert .

Seit dem 6. Januar 2004 hat AMD zusätzlich optimierte Mobile-Versionen des Athlon 64 im Angebot. So besitzt der Mobile Athlon 64 3200+ mit 2,0 GHz Taktfrequenz eine TDP von 62 Watt. Unter anderem arbeitet die Mobile-CPU mit einer niedrigeren Core-Spannung von 1,40 statt 1,50 V. Den Mobile Athlon 64 gibt es auch als Modell 2800+ mit 1,6 GHz und Modell 3000+ mit 1,8 GHz Taktfrequenz.

Der Fertigungsprozess des Athlon 64 DTR und Mobile Athlon 64 erfolgt mit 0,13 µm Strukturbreite auf SOI-Basis. Das 193 mm² große Die des Prozessors besteht aus insgesamt 105,9 Millionen Transistoren. Zum Vergleich: Der Athlon XP mit Barton-Core bietet mit 54,3 Millionen zirka die Hälfte. Das Gros der zusätzlichen Transistoren wird beim Athlon 64 für Notebooks durch den 1024 KByte fassenden L2-Cache benötigt.

PowerNow!-Technologie

Zum Energiesparen setzen der Athlon 64 DTR und der Mobile Athlon 64 auf die seit dem K6-2+ bekannte PowerNow!-Technologie. Diese hat auch der Desktop-Athlon-64, nur taufte sie AMD hier auf Cool'n'Quiet-Technologie um.

Die Stromspar-Technologie PowerNow! regelt dynamisch die Taktfrequenz und Core-Spannung des Prozessors. Die Athlon-64-Modelle passen damit die CPU-Leistung in 32 Stufen an. Dabei differiert die Taktfrequenz zwischen 800 MHz und dem maximalen Wert. Mit dem Arbeitstakt gekoppelt wählt der Prozessor die passende Core-Spannung. Sie variiert beim Athlon 64 DTR zwischen 1,1 V (800 MHz) und 1,5 V (1800 bis 2200 MHz). Der Mobile Athlon 64 arbeitet bei 800 MHz mit einer Core-Spannung von 0,95 V sowie 1,40 V bei voller Taktfrequenz.

Den TDP-Wert senkt der Athlon 64 DTR bei 800 MHz auf 19 Watt. Die Mobile-Athlon-64-Varianten spezifiziert AMD im PowerNow!-Modus bei 800 MHz auf einen TPD-Wert von 13 Watt.

Neun Ausführungseinheiten

Der AMD64-Core des Athlon 64 für Notebooks bietet neun Ausführungseinheiten für Integer- und Floating-Point-Operationen. Darin ist eine SSE2-kompatible Einheit enthalten. Gefüttert werden die Ausführungseinheiten nach dem Out-of-Order-Prinzip über drei unabhängige Befehls-Decoder-Pipes, die in den Schedulern enden. Drei davon können je acht Einträge puffern und bedienen die sechs Integer-Units. Diese bestehen aus drei ALUs und den drei Address Generation Units (AGU), die für die Load-/Store-Vorgänge vom und zum Cache verantwortlich zeichnen. Die drei FPU-Einheiten versorgt schließlich ein 36 Einträge fassender vierter Scheduler.

Das Hauptproblem bei modernen CPU-Architekturen mit vielen Ausführungseinheiten ist, diese mit einer hohen Auslastung zu betreiben und mit genügend Daten zu füttern. Demnach ist selbst beim Athlon die Auslastung der Units längst nicht ausgereizt. Intels Idee, die Ausführungseinheiten zu beschäftigen, heißt HyperThreading. Hier wird eine CPU wie zwei Prozessoren behandelt, und entsprechend werden zwei Threads parallel abgearbeitet. Dadurch sind die Ausführungseinheiten besser ausgelastet - eine angepasste Programmierung der Anwendungen vorausgesetzt.

Cache- und TLB-Tuning

Da AMD beim K8-Core der Athlon-64-CPUs aber auch von der schnellsten x86-kompatiblen Architektur spricht, muss die höhere Performance anderen Quellen als einer erhöhten Unit-Zahl entspringen. Eine Möglichkeit wäre die Vergrößerung der Caches. Diese nutzt AMD aber nur teilweise. Für den L1-Cache gibt der Hersteller eine Größe von je 64 KByte für Befehle und Daten an - unverändert zum Athlon. Der 16fach assoziative L2-Cache fasst dagegen 1024 KByte. Die Athlon XPs mit Barton-Core setzen auf 512 KByte.

Weitaus tief schürfender sind bei der AMD64-Architektur die Änderungen, die schon im Vorfeld der Befehlsabarbeitung erfolgen. So hat AMD die TLBs einer Überarbeitung unterzogen. Je mehr Einträge der TLB fassen kann, desto seltener muss bei der Berechnung der physikalischen Adresse die Translation-Tabelle aus dem Arbeitsspeicher geladen werden. Dies spart Zeit, und bestimmte Befehle erfordern somit weniger Taktzyklen. Der L1-Daten- und Befehls-TLB der Athlon-64-CPUs fasst je 40 Einträge und ist voll assoziativ ausgelegt. Beim Athlon XP kann nur der L1-Daten-TLB gleich viele Einträge speichern, für Befehle stehen lediglich 25 Einträge bereit. Die 4fach-assoziativen L2-TLBs können mit je 512 Einträgen beim K8-Core doppelt so viel aufnehmen wie noch beim Athlon XP. Außerdem weisen die TLBs beim Athlon 64 geringere Latenzzeiten auf als im K7-Core.

Flush- und Sprung-Tuning

Zusätzlich zu den größeren TLBs verfügt die AMD64-Architektur über einen 32 Einträge fassenden Flush-Filter. Dies erlaubt ein besseres Management der TLBs bei Task-Wechseln. Mehrere Threads können sich durch den Flush-Filter nun einen TLB teilen, ohne dass die Software dabei Einfluss nehmen muss. Normalerweise setzt der Prozessor bei Task-Wechseln jedes Mal die TLBs neu und stellt sie später wieder her - das kostet Rechenzeit.

Die Sprungvorhersage hat AMD bei den Athlon-64-CPUs ebenfalls verbessert. Besonders bei Anwendungen mit großem Speicherbedarf - den so genannten Large Workloads - soll der Prozessor eine höhere Performance bieten. Hierzu wurde der Global History Counter auf 16 K Einträge aufgestockt - gegenüber dem K7-Core des Athlon eine Vervierfachung. Eine bessere Sprungvorhersage braucht der K8-Core auch, denn er hat an Pipeline-Stufen zugelegt. Die Gefahr langer Pipelines sind falsche Sprungvorhersagen. Im ungünstigsten Fall muss die komplette Pipeline, also alle Funktionseinheiten, neu geladen werden. Dies kostet viele Takte und reduziert die Performance. Effektive "Branch Predictions" zählen bei modernen CPUs zu zentralen Performance-Bringern.

Gestreckte Pipeline

Die Pipeline einer CPU zu verlängern, ist ein beliebtes Mittel zur Realisierung höherer Taktfrequenzen. Intel verdoppelte beim Schritt vom Pentium III zum Pentium 4 die Tiefe der Pipeline auf 20 Stufen. So extrem ging AMD nicht vor: Von vormals 10 Stufen beim Athlon kann die AMD64-Architektur nun auf eine 12-stufige Pipeline bei Integer-Operationen zurückgreifen. Sind Fließkommaberechnungen in Arbeit, benötigt der K8-Core 17 Stufen.

Die 20 Prozent tiefere Pipeline der AMD64-Architektur findet sich im Frontend wieder. AMD hat im Vergleich zum Athlon die Befehlshol- und Dekodierphase überarbeitet. Ziel der optimierten "Vorbereitungsphase" ist es, die Scheduler und somit die Ausführungseinheiten mit schneller aufeinander folgenden dekodierten Befehlen zu versorgen. Das soll unnötige Waitstates sowie unausgelastete Ausführungseinheiten reduzieren.

Die Optimierung beginnt beim K8-Core bereits mit zwei statt nur einer Fetch-Stufe, die die x86-Befehle aus dem L1-Cache holen. Die folgende Pick-Stufe bereitet die Befehle dann für die ersten beiden von insgesamt drei Dekodierstufen auf. Ähnlich der Align-Stufe beim Athlon versucht der Athlon 64 beim Pick-Vorgang so viele unabhängige Befehle wie möglich zu finden und vorsortiert an die Ausführungseinheiten zu senden. In den Dekodierstufen 1 und 2 sammelt die CPU Informationen, die für den weiteren Dekodiervorgang benötigt werden - beispielsweise direkter oder vektorbasierender Dekodierpfad. Für Letzteren ist zusätzlich Microcode aus dem Microcode-ROM (MROM) erforderlich. Die beiden Stufen sind mit der Early-Decode-Phase des Athlon vergleichbar.

Vor dem dritten Dekodierschritt bereitet eine Pack-Stufe die vorberechneten Informationen nochmals auf. Dann erfolgt die Umwandlung in MacroOPs. Die Scheduler verteilen schließlich die MacroOPs auf die Ausführungseinheiten. Die Daten landen in den letzten beiden Stufen 11 und 12 der Basis-Pipeline im L1-Daten-Cache.

Speicher-Interface integriert

Zu den echten Neuerungen der AMD64-Architektur zählt neben der Registererweiterung auf 64 Bit der integrierte Memory-Controller. Der Vorteil der Integration liegt in den deutlich reduzierten Latenzzeiten bei Zugriffen auf den Speicher. Den Umweg über eine "klassische" externe Northbridge umgeht der Prozessor. Eine geringe Latenzzeit ist vor allem dann wichtig, wenn der Speicherzugriff meist auf verteilt liegenden Stellen erfolgt. Hier ist die reine Speicherbandbreite oft gar nicht der entscheidende Faktor. Anders hingegen, wenn die Daten zusammenhängend im Speicher liegen und die CPU im Burst-Modus große Mengen ausliest - hier zählt die Bandbreite.

Beim Athlon 64 DTR integriert AMD einen Single-Channel-Speicher-Controller für DDR-SDRAM in den Varianten DDR200, DDR266 und DDR333. Der Mobile Athlon 64 unterstützt zusätzlich DDR400-SDRAM. Im Serverprozessor Opteron und der Highend-Desktop-CPU Athlon 64 FX sind zwei 72 Bit breite DDR-SDRAM-Kanäle realisiert. ECC-Support bieten alle AMD64-Modelle.

HyperTransport-Bus

Statt des üblichen parallelen FSB kommuniziert der Athlon 64 für Notebooks über eine HyperTransport-Schnittstelle. Das serielle Interface mit variabler Bitbreite ermöglicht eine Datentransferrate von 2,98 GByte/s - in jede Richtung gleichzeitig. Damit ergibt sich eine Gesamtbandbreite von 5,96 GByte/s. Zum Vergleich: Der Pentium 4 mit 800 MHz FSB erlaubt ebenfalls einen maximalen Datendurchsatz von 5,96 GByte/s - aber nicht in beiden Richtungen gleichzeitig. Beim Pentium M mit seinem FSB400 sind es nur 2,98 GByte/s.

Über das HyperTransport-Interface läuft der gesamte Datenverkehr der Athlon-64-Prozessoren und des integrierten Memory Controller. Um beispielsweise AGP-Grafikkarten einen direkten Zugriff auf den Arbeitsspeicher zu gewähren, besitzt der Athlon 64 für Notebooks eine Schaltzentrale XBAR. Diese Cross-Bar-Architektur leitet Datenströme vom HyperTransport-Interface über 64 Bit breite interne Busse direkt an die System Request Queue des K8-Core oder an den Memory Controller weiter. Für Befehle und Adressen stehen der XBAR zusätzlich 64 Bit breite Busse zur Verfügung.

Betriebsmodi des Athlon 64

Um problemlos mit 32- und 64-Bit-Software agieren zu können, beherrschen die AMD64-Prozessoren verschiedene Betriebsmodi:

Findet der Athlon 64 für Notebooks aktuelle Betriebssysteme wie Windows XP mit 32-Bit-Kernel vor, so arbeitet die CPU im so genannten Legacy-Mode. Der Prozesoor verhält sich dabei wie eine normale x86-CPU und ist voll kompatibel zu vorhandenen 16- und 32-Bit-Betriebssystemen und -Anwendungen. Die 64-Bit-Features der AMD64-Architektur liegen dann brach.

Steht dem AMD-Prozessor dagegen ein 64-Bit-Betriebssystem zur Seite, schaltet die CPU in den Long Mode getauften Betriebsmodus. Der Long Mode der AMD64-Technologie beinhaltet zwei Untermodi: den 64-Bit-Mode und einen Compatibility Mode. 64-Bit-Anwendungen arbeiten im entsprechenden 64-Bit-Mode. Den Programmen steht somit auch der volle Adressraum zur Verfügung. Der Compatibility Mode der AMD64-Architektur erlaubt unter 64-Bit-Betriebssystemen eine binäre Kompatibilität mit vorhandenen 16- und 32-Bit-Anwendungen. Die Programme müssen nicht neu kompiliert werden. Den 64 Bit großen Adressraum des Betriebssystems können diese aber nicht nutzen, sie bleiben auf 4 GByte beschränkt.

Erweiterte Register

Wenn der Athlon 64 für Notebooks im 64-Bit-Mode arbeitet, stehen dem Prozessor im Vergleich zum Legacy Mode folgende zusätzliche Features zur Verfügung:

Den 64 Bit breiten Adressraum sieht die AMD64-Architektur nur über eine segmentierte Adressierung vor. Die physikalische Adressbreite ist auf 52 Bit beschränkt. In der ersten Generation des Athlon 64 implementiert AMD aber nur einen 48 Bit breiten virtuellen Adressraum - die physikalische Adressbreite ist auf 40 Bit beschränkt. Die ersten AMD64-CPUs haben auf ein TByte Arbeitsspeicher Zugriff.

Anwendungen, die im Legacy oder Compatibility Mode laufen, stehen beim Athlon 64 für Notebooks weiterhin nur die acht allgemeinen 32 Bit breiten Register EAX, EBX, ECX, EDX, EBP, ESI, EDI und ESP zur Verfügung. Arbeitet der Prozessor dagegen im 64-Bit-Mode, erweitert die AMD64-Architektur diese acht Register über den R-Präfix auf 64 Bit. Die verbreiterten Register erhalten die Bezeichnungen RAX bis RSP. Zusätzlich kann der die AMD-CPU im 64-Bit-Mode auf acht neue ebenfalls 64 Bit breite GPRs (General Purpose Register) R8 bis R15 zugreifen.

Für Fließkomma-Berechnungen wurden außerdem die acht 128 Bit breiten SSE-Register mit XMM8 bis XMM15 verdoppelt. Davon profitiert allerdings nur der 64-Bit-Mode. Die Kompatibilität zu Intels SSE2-Befehlssatz erlauben aber alle Betriebsmodi. AMD setzt beim K8-Core erstmals die Multimedia-Erweiterung des Pentium 4 ein, der nur über acht XMM-Register verfügt.

Fazit

Der größte Vorteil des Athlon 64 für Notebooks - gerade auch im Business-Umfeld - ist die Kompatibilität zu vorhandener Software. So gehen Investitionen nicht verloren. Die Migration zu 64-Bit-Applikationen kann langsam und nach Bedarf erfolgen.

Allerdings bleibt die generelle Frage nach dem Sinn von 64-Bit-Applikationen auf Notebooks. Im Serverumfeld mit großen Datenmengen oder bei Workstations mit wissenschaftlichen Berechnungen macht der Umstieg auf 64 Bit ja durchaus Sinn. Aber bei typischen Notebook-Anwendungen wie Office-Applikation, E-Mail und Internet ist die Bit-Verdopplung nicht wirklich zwingend notwendig. Eine Nische könnte der Athlon 64 für Notebooks aber in mobilen Workstations finden.

Wichtig ist bei Prozessoren für Notebooks - neben der zweifelsohne hohen Performance des Athlon 64 DTR sowie des Mobile Athlon 64 - ein geringer Energiebedarf. Und hier liegen die AMD-CPUs mit einem TDP von 81,5 Watt beziehungsweise 62 Watt sehr hoch. Damit befinden sich die CPUs in einer ähnlichen Liga wie Intels Mobile Pentium 4. Hier besitzt die 3,20-GHz-Variante einen TDP-Wert von 76 Watt. Zum Vergleich: Intels Centrino-Prozessor Pentium M 1,7 GHz ist mit 27 Watt TDP spezifiziert. Eine deutliche Verringerung der Verlustleistung sollte mit AMDs Wechsel auf die 90-nm-Technologie erfolgen. Im zweiten Halbjahr 2005 will AMD einen entsprechenden Mobile Athlon 64 mit Codenamen "Odessa" vorstellen. (cvi)