ARCHIV 1999-2006

ARCHIV :: # 838

HyperTransport

Apple und ein neuer Hardware-Standard

Autor: wp - Datum: 06.05.2002

Kennen Sie Lisp-Maschinen? Das sind (oder besser: waren) grob gesagt die Computer, von denen sich Steve Jobs die Fenster hätte abschauen können, wenn er denn in Harvard statt im Silicon Valley gelebt hätte. Allerdings hätte der Mac vielleicht dann auch eine Drei-Tasten-Maus bekommen, und das hätte den Windows-Freaks frühzeitig das letzte Argument gegen den Mac genommen, es gäbe nur noch Macs auf der Welt, die MacGuardians wären überflüssig, und das wäre doch eigentlich schade.

Wie auch immer: Die Lisp-Maschinen waren ein El Dorado nicht nur für manische Mausklicker, sondern auch für transzendente Tastenvirtuosen, hatten sie doch nicht nur eine Control- und eine Alt-Taste, sondern auch eine Meta-Taste (da kann der Mac gerade noch die Apfel-Taste entgegen halten), eine Super- und -- eine Hyper-Taste. Der dreifache, eingesprungene Modifier war da keine Seltenheit. Irgendwie hängt das "Hyper"-Phänomen der Computerindustrie doch nach, und nachdem die Apple-Inspirationsgeber vom Xerox PARC noch den Hypertext erfunden hatten (dessen vergleichsweise minderbemittelte Verwandtschaft als World-Wide Web zu Ruhm und Ehre gekommen ist), lässt sich Apple diesmal selbst nicht lumpen und ist bei HyperTransport von Anfang an mit dabei. Was das ist? Trotz anderslautender Gerüchte werden unter diesem Header nicht die ersten Prototypen von Beam-Engines à la StarTrek realisiert, so viel ist sicher. Statt dessen geht es prosaischerweise um die Verbesserung des Busverkehrs - in Computerprozessoren. Thyl Engelhardt weiß mehr. Im Herbst letzten Jahres hat eine Gruppe von Firmen, unter ihnen auch Apple, unter Federführung von AMD das HyperTransport-Konsortium gegründet. Hier handelt es sich um eine Basistechnologie, so dass der interessierte Mac-Anwender Grund hat, dem Begriff HyperTransport einmal nachzugehen.

1.

Zuerst ein kurzer Blick auf Computerarchitekturen. In klassischen Systemen sind die Schlüsselkomponenten eines Mainboards, wie Prozessor, Eingabe/Ausgabe-Brücken, Graphiksysteme etc. über einen Bus miteinander verbunden, dessen Breite zumeist der Breite des Prozessorbusses entspricht und dessen Geschwindigkeit von der Implementierbarkeit abhängt. Konnten vor vielleicht 15 Jahren die den Bus bestimmenden Komponenten noch mit der Geschwindigkeit des Prozessors mithalten, hat sich seitdem ein zunehmendes Ungleichgewicht eingestellt. Prozessoren laufen mittlerweile zwischen 1 und 2 GHz, Graphikchips zwischen 200 und 300 MHz, während die Komponenten des Mainboards, mit denen sie kommunizieren, zumeist noch bei 100 oder 133 MHz laufen. Durch diese Ungleichgewichtung hat sich die Situation ergeben, dass beispielsweise der Prozessor Daten erheblich schneller lesen oder schreiben kann, als ihm diese geliefert werden. Zusätzlich erschwerend kam hinzu, dass immer mehr schnelle Einheiten, wie PCI-Busse, AGP oder direkt angeschlossene Komponenten (z.B. der Gigabit-Chip bei Apples G4s) diesen Bus immer stärker in Anspruch nahmen. Ähnlich wie in einem Ethernet, das zu viele Teilnehmer hat, kommt es dadurch zu Staus.

2.

Diese Erkenntnis hat bereits vor ca. 10 Jahren zur Entwicklung sogenannter Crossbar-Switches geführt, die zuerst von Sun und SGI eingeführt wurden. Bei diesen System hängen alle maßgeblichen Komponenten an einer Einheit, dem sogenannten Crossbar, der Daten extrem schnell durchleiten kann und zudem individuelle Verbindungen zwischen Komponenten herstellen kann. Ein Crossbar entspricht in etwa einem "Switch" bei Ethernet. Er ermöglicht beispielsweise, dass ein Prozessor Daten auf die Graphikkarte schreiben kann, während gleichzeitig über einen anderen Kanal des Crossbars Daten einer Festplatte in den Hauptspeicher geschrieben werden können. Gerade bei Mehrprozessorsystemen können Engpässe dadurch vermindert werden. Crossbar Switches sind allerdings teuer und proprietär, da jeder Hersteller seine eigenen Systeme implementiert hat. Bei PCs wie Macs oder Intel-kompatiblen Rechnern konnten sich Crossbars bislang nicht etablieren. Die Limitationen der existierenden Systeme versuchen derzeit die Chipsatzhersteller zu umgehen, indem sie zumindest zwischen den einzelenen Chips ihrer Chipsätze schneller Verbindungen schaffen.

3.

Um Standards zu setzen, haben verschiedene Hersteller in den letzten etwa zwei Jahren Spezifikationen entwickelt, welche in einer Crossbar-ähnlichen Weise Komponenten miteinander verbinden können. Neben HyperTransport, das von AMD und API entwickelt worden ist, gibt es zur Verbindung von Komponenten auf dem Mainboard noch zwei unmittelbare Konkurrenten, nämlich 3GIO (jetzt PCI express genannt), das derzeit von Intel konzipiert wird und dessen praktische Implementation wohl noch einige Zeit in der Zukunft (2003) liegt, und RapidIO, das pikanterweise vom G4-Lieferanten Motorola mit entwickelt worden ist. Die Initiatoren der jeweiligen Standards versuchen derzeit, möglichst viele Unterstützer hinter sich zu scharen, um ihrem jeweiligen Standard zur Dominanz zu verhelfen.

Apple ist als Gründungsmitglied des HyperTransport-Konsortiums dabei und hat sich damit offensichtlich nicht auf die Seite Motorolas als RapidIO-Entwickler geschlagen. Die Gründe liegen im Dunkeln, allerdings betont Motorola die besondere Eignung von RapidIO für Netzwerkkomponenten, während HyperTransport mehr auf die Backplane von Computer gerichtet scheint. Im folgenden sollen die "Essentials" von HyperTransport vorgestellt und mögliche Konsequenzen für die Hardware-Entwicklung bei Apple beleuchtet werden.

4.

HyperTransport (HT) ist ein standardisiertes Protokoll zur Verbindung von Mainboard-Komponenten. Die Daten werden als Pakete über Leitungen gesendet, wobei für jede Richtung eine eigene Leitung verwendet wird (voll Duplex), um die Geschwindigkeit und Flexibilität zu erhöhen. Zur Verbindung von Komponenten können dabei pro Richtung zwischen 2 und 32 Datenleitungen verwendet werden, wobei die Zahl für die beiden Richtungen nicht gleich sein muss. (Die maximale Zahl von Leitungen beträgt beim Vollausbau 197.) Dies gestattet es, jede HT-Verbindung an die notwendige Bandbreite von anzuschließenden Komponenten anzupassen. Auch die Taktrate, mit der Daten über die Leitungen geschickt werden, kann von 200-800MHz konfiguriert werden. bei voller Breite und Geschwindigkeit ermöglicht HyperTransport derzeit bis 6,4 GB/s pro Richtung, wobei die Entwickler betonen, dass Steigerungen möglich seien.

HyperTransport verwendet ähnliche Mechanismen wie PCI, so dass nach Angaben des HT-Konsortiums Treiber weiterverwendet werden können.

Die Topologie von HT erscheint recht flexibel. Neben dem klassischen Switch, bei dem die Komponenten sternförmig miteinander verbunden sind, ist auch ein daisy chaining möglich, bei dem mehrere Komponenten hintereinander verkettet werden. Auch Abzweigungen sind hierbei möglich, so dass baumförmige Strukturen gebildet werden können. Im Rahmen der derzeitigen Spezifikation sind noch keine Stecker definiert, diese werden aber gerade angedacht, so dass man längerfristig damit rechnen kann, dass es auch HT-Erweiterungskarten geben wird. HT könnte damit vielleicht sogar als Nachfolger von PCI und AGP Verwendung finden.

Prozessoren werden bei HT über eine sogenannte "Host Bridge" angebunden, wobei auch mehr als eine Host Bridge möglich ist (zumindest eine an jeder Kette von Komponenten, vielleicht mehr), womit auch Multiprozessorsysteme aufgebaut werden können. Allerdings ist es auch möglich, hinter eine Host Bridge mehrere Prozessoren zu hängen.

Der erste Motorola-Prozessor aus der "G5" Generation, der 8540, wird in Kürze von Motorola lieferbar sein. Er läuft bis 1 GHz und enthält zahlreiche Komponenten, die seinen Einsatz in "embedded" Systemen ermöglicht, unter anderem auch eine RapidIO Bridge. Ob die weiteren Prozessoren dieser Generation, insbesondere die für Desktop Systeme, auch eine solche Bridge haben werden und ob diese zur Verbindung mit anderen Komponenten zwingend eingesetzt werden muss, ist mir nicht bekannt. Ggfs. muss Apple dann eine entsprechende Hostbridge mit RapidIO Ausgang auf der einen und HT auf der anderen Seite entwickeln.

5.

Meines Erachtens ist die Entscheidung für HT nur ein weiterer Schritt auf dem Weg Apples zu einer "Normalisierung" der Systemkomponenten. Nachdem man bereits konsequent IDE, USB und Firewire als Schnittstellen verwendet und somit auf billige Standardkomponenten bzw. -schaltungen zurückgreifen kann, will Apple jetzt offensichtlich auch auf dem Mainboard mit bisherigen Eigenentwicklungen aufräumen oder deren Zahl zumindest verringern. Die Verwendung eines solchen Standards hätte weitreichende Konsequenzen für die HW-Entwicklung bei Apple. Da die verschiedenen Komponenten eines Mainboards, wie PCI-Bridge, AGP, Multi-IO Komponenten etc. bei HT nur noch über eine standardisierte Schnittstelle miteinander kommunizieren, könnten diese von entsprechenden Anbietern auch aus dem Intel-Lager bezogen werden. Chipsatzhersteller könnten Apple mit entsprechenden Chips beliefern. Lediglich die Host-Bridge (s.o.) müsste Apple noch selbst entwickeln, sofern nicht Motorola G4/G5-Prozessoren mit einer entsprechenden integrierten Host Bridge anbietet. Dadurch würden sich enorme Einsparpotentiale für Apple ergeben, und es könnten die jeweils neuesten Komponenten verwendet werden, ohne dass die treue Apple-Fangemeinde, wie heute leider noch üblich, teilweise länger auf die Implementierung neuer Technologien warten muss. Außerdem würde Apple damit unabhängig von einer bestimmten Prozessorarchitektur. Wenn Motorola beispielsweise die weitere Entwicklung des PowerPC einstellt, könnte Apple darauf einfach reagieren, indem sie z.B. AMD-Prozessoren verwenden. Die Umrüstung der Mainboards wäre denkbar einfach, da der Clawhammer bereits über integrierte (drei Stück) HT-Bridges verfügen wird. Nur die Firmware müsste neu geschrieben werden und natürlich MacOSX portiert, aber solche Ports schafft das MacOSX Team in ein paar Monaten (wie mit OPENSTEP bei Sparc und PA-RISC bewiesen). Einziger Nachteil: MacOS 9 würde sich wohl verabschieden müssen.

Die rasche Umsetzung von HT würde zudem einen Leistungsschub erwarten lassen, der (vielleicht, vielleicht) die derzeitigen Leistungsdefizite auf Prozessorseite zumindest etwas ausgleichen könnte. Gerade Mehrprozessorsysteme würden von der größeren Bandbreite profitieren.

Kommentare