Transmeta Crusoe im Detail

Nach viereinhalb Jahren geheimer Entwicklung ist Transmetas Crusoe-Konzept fertig. Der Prozessor arbeitet mit einer raffinierten Software, die beliebige Befehlssätze nachbilden kann. Wie das im einzelnen funktioniert, zeigt der folgende Artikel.

Vieles wurde in das erste Produkt der Firma Transmeta hineingeheimst - doch der "Crusoe-Prozessor" ist kein Grafikchip, kein Java-Prozessor, sondern als ganz "normaler" Prozessor für mobile Geräte gedacht. Zwar soll Crusoe auch mit x86- also Intel-Code- umgehen können. Der Weg, das zu erreichen, ist jedoch völlig neu.

Auch wenn Transmeta es nicht gerne hört: Im Prinzip arbeitet Crusoe wie eine hardware-unterstützte Software-Emulation eines anderen Prozessors. Mit seinem eigenen, sehr spartanischen Befehlssatz bildet Crusoe einen anderen Befehlssatz nach. Dadurch ist das Konzept sehr flexibel, auch wenn derzeit nur x86-CPUs und beispielsweise noch keine PowerPCs emuliert werden. Die Idee hinter Crusoe lässt sich aber leicht weiterentwickeln und auch von Fehlern bereinigen. Linus Torvalds drückte sich auf der Vorstellung am 19. Januar so aus: "Wenn uns so etwas wie Intels FDIV-Bug passieren sollte, können wir einfach einen Patch per Internet zur Verfügung stellen." Davon hätte Intel 1994 sicher geträumt, als man weltweit CPUs wegen eines Rechenfehlers zurückrufen musste.

Bild 1: In Sichtweite von Intel in Santa Clara entwickelte Transmeta über vier Jahre lang den Crusoe-Prozessor.
Bild 1: In Sichtweite von Intel in Santa Clara entwickelte Transmeta über vier Jahre lang den Crusoe-Prozessor.

Bisherige PC-Prozessoren erreichen mehr Geschwindigkeit durch die Realtime-Optimierung des x86-Compiler-Codes in Hardware. Dadurch werden die Prozessoren immer komplexer: Schon ohne den L2-Cache hat der Kern eines Pentium III 9,5 Millionen Transistoren. Mit welchen Tricks die Hersteller bei diesen CPUs arbeiten, zeigt der Artikel CPU-Grundlagen.

Crusoe geht einen anderen Weg: Die Hardware wird so einfach wie möglich gehalten, und die Optimierung muss eine spezielle Software übernehmen.