後藤弘茂のWeekly海外ニュース

256bit CrusoeはプリフェッチングやHyperTransportをサポートか


●x86-64命令のインプリメント自体は簡単

 Transmetaは、昨年後半から同じx86互換CPUメーカーであるAMDとの関係が話題になっている。同社は、5月に、AMDの64bit命令セットアーキテクチャ「x86-64」とインターコネクト技術「HyperTransport」のライセンスを受けることを発表した。では、Transmetaは、来年投入する「256bit Crusoe」でx86-64とHyperTransportを実装するのだろうか。

デビッド・R・ディツェルCTO兼副会長

 これについて、Transmetaの創業者であるデビッド・R・ディツェル(David R. Ditzel)CTO兼副会長は次のように説明する。

 「x86-64は、いつか(some day)はインプリメントするだろうが、すぐというわけではない。AMDとのパートナーシップは、ロングターム、たとえば10年といった期間を見据えたものだ。正直な話、64bitアプリケーションが、サーバー以外ですぐに必要だとは思っていない。64bitに関しては、AMDが浸透させてくれるとありがたい。彼らが何年かかけてx86-64が浸透させてくれて、そうしたらTransmetaがサポートするというのはいい形かもしれない(笑)」

 「もっとも、x86-64をインプリメントすること自体は、Crusoeのアーキテクチャ上、非常に簡単だ。実際に、すでに社内ではx86-64インストラクションをCMSにインプリメントしている。しかし、それは評価用だ。そのまま製品にするというわけではない」

 ちょっと混乱するかもしれないので補足すると、これは次のような話だ。x86-64命令セットをCMSにインプリメントするのは簡単だが、Crusoeのハードウェア自体をx86-64に合わせて拡張することは、すぐにはやらないとディツェル氏は言っているのだ。

●HyperTransportサポートは早期に実現

 Crusoeは、命令セットをハードウェアではなくソフトウェアでインプリメントしている。つまり、CMSがx86命令セットを、Crusoeのネイティブの命令セットに変換(モーフィング)する仕組みになっている。そのため、x86ではなく、異なる命令セットをインプリメントしたCMSを作ることもできる。

 実際にTransmetaはJavaでそうした実験をやっている。昨年9月にディツェル氏は「CMSにJavaをインプリメントして、直接Javaのバイトコードを扱えるようにする実験はやった。Crusoeは、世界最速のJavaプロセッサになりうる。しかし、Javaプロセッサの市場は大きくないので、現在は提供していない」と語っている。CMSへの新命令セットのインプリメントは、ハードウェアの変更を必要としないので、比較的容易にできる。

 だが、x86-64をインプリメントしても、まともな性能を出すには、Crusoeプロセッサコア自体の対応が必要だ。つまり、演算ユニットの64bit拡張とx86-64向けのレジスタの拡張(16本の64bit GPRと16本のXMM)に対応できる内部レジスタ拡張などが必要となる。これは、開発に時間もかかるし、トランジスタを食うので簡単にはできない。おそらく、256bit Crusoeもx86-64はサポートしないだろう。というのは、AMDとTransmetaが接近したのは昨年のことで、CPUの開発サイクルを考えると、来年のCPUにインプリメントするのは間に合わないからだ。

 それに対してHyperTransportのサポートは、もっと近い時期に実現する可能性がある。おそらく、256bit CrusoeはHyperTransportを使うだろう。

 「HyperTransportは、たんにバスの技術に過ぎない。だから、(x86-64と比べると)ずっと早い時期に採用することになるだろう。(現在Transmetaのチップセット間を接続している)PCIバスを置き換えることになると思う」とディツェル氏は説明する。

 2002年の後半になれば、ノートPCでさえサウスブリッジとの間の帯域はPCIでは決定的に不足すると思われる。256bit CrusoeはHyperTransportを採用する可能性は高い。ただし、統合型Crusoeの方は、ワンチップ化されているため、HyperTransportの必要は当面はない。

●CMSにプリフェッチングをインプリメントも

 ところで、256bit Crusoeには、技術的にいくつかハードルがある。そのひとつはCPUのフェッチ帯域だ。256bit幅VLIW命令でピーク性能を出すには、当然命令フェッチを毎サイクルごと256bitづつでできないとならない。また、命令が256bit(=8命令)づつフェッチされるなら、データも同様に膨大な量のフェッチが必要になる。この問題をどうやって解決するのだろう。

 「それはもちろん考慮していて、解決する手段がある。まず、L2キャッシュの量を大きく増やすことはできる。それから、プリフェッチをCMSに実装することもできる。そうすれば、メモリ帯域がある程度限られていても問題ないはずだ」とディツェル氏は語る。

 ディツェル氏の説明通り、256bit Crusoeでは、キャッシュの量が性能向上の第1のカギになると思われる。少なくともオンチップのL2キャッシュにまでコードやデータを持ってきておかないと、性能がガクっと落ちる可能性がある。しかし、Transmetaは256bit Crusoeでは90平方mm以下のダイサイズ(半導体本体の面積)に納めることを目標としている。そのため、0.13μm世代ではまだ性能は限られるだろう。しかし、0.10μm以降になって、MB単位のキャッシュをオンダイで載せられるようになると、かなり性能はブーストするだろう。

 一方、プリフェッチングのCMSへの実装もかなり有効だ。これは、Athlon 4/MPのハードウェアプリフェッチと似たような発想だ。つまり、CMSが自動的に必要になりそうなデータやコードブロックを予測して、投機的にフェッチしてキャッシュに取り込んでしまうのだ。こうした自動的なプリフェッチングに関しては、ハードウェアよりもCMSの方が、おそらくより高度な実装ができるだろう。

●IntelのBaniasは脅威ではない

ジェームス・チャップマン上席副社長

 ところで、IntelはTransmetaに対抗するために、2002年から2003年に投入するモバイル専用プロセッサ「Banias(バニアス)」の開発を始めている。これは、Crusoeのライバルにならないのだろうか。Transmetaのジェームス・チャップマン(James N. Chapman)上席副社長(Sales & Marketing)は次のように答える。

 「いや、競争相手にはならないだろう。それは、BaniasがP3(Pentium III)コアだからだ。Baniasは、『Timna(ティムナ)』の開発チームを再結集して開発を始めたCPUだ。フランクに言って、P3コアは、我々のアーキテクチャに決して太刀打ちできない。CPUコアについては、全然脅威に感じていない。残る問題は、どこまで(周辺機能を)統合化してくるか...。だが、いずれにせよ、彼らは依然として多くのレガシートランジスタを搭載するはずだ。それに対して、CrusoeはシンプルなVLIWアーキテクチャ(のCPUコア)だ。だから、(CPUコアの)ダイサイズ(半導体本体の面積)は我々の方がずっと小さくなる。例えば、TM5800はノースブリッジも統合して55平方mm(のダイサイズ)と信じられないくらい小さい。彼らにこれは達成できないだろう。Crusoeは、アーキテクチャの全てが低消費電力に合わせて開発されている。だから、Baniasについて心配していない」

 BaniasがPentium IIIコアを拡張したCPUかどうか、これについて、まだIntelは表明していない。しかし、Intelでモバイル製品開発を行なっているロバート・T・ジャクソン氏(Principal engineer, Mobile Platforms Group)も、昨年10月、「モバイル専用CPU(Banias)ではキャパシタンス(=ロジックのトランジスタ数)を減らすのか」という質問に対して次のように答えている。

 「プロセッサの消費電力を減らす要素のひとつはキャパシタンスを減らすことだ。しかし、キャパシタンスの観点では、パフォーマンスとのバランスを十分考慮する必要がある。実際、我々は異なるマイクロアーキテクチャで消費電力と性能がどうなるかを、いろいろプロトタイプしてみた。その結果わかったのは、性能と消費電力の面でベストのパリティは、今のところ基本的にはP6(Pentium III系)マイクロアーキテクチャであるということだ。だから、Microprocessor Forumで示したピリオド(~2003年までを示した)では、モバイルプロセッサは基本的には同じマイクロアーキテクチャに留まる。しかし、プロセステクノロジ毎にベストなマイクロアーキテクチャは考えてゆく」

 ジャクソン氏はBaniasについてと明言したわけではない。しかし、この口振りだと、BaniasがPentium IIIをベースに大きく改良したプロセッサである可能性は高い。実際、開発期間の短さ(3年程度?)を考えると完全に新しいマイクロアーキテクチャをベースにするとは考えにくい。Pentium IIIをベースにSSE2などを実装、モバイル向けの回路設計やプロセス技術のチューン、周辺機能の統合を行なったCPUという可能性は高いだろう。

 もちろん、その場合は、確かにロジックのトランジスタ数ではCrusoeアーキテクチャにかなわない。だが、Intelのアーキテクチャと製造プロセスは、比較的低電圧でも高クロックの駆動を可能にする。こうした総合力で、Intelの実力は侮れない。そのため、BaniasがCrusoeにとってやっかいな相手になる可能性は、やはり残されている。

□関連記事
【5月25日】AMD、Transmetaにx86-64とHyperTransport技術をライセンス
http://pc.watch.impress.co.jp/docs/article/20010525/amd.htm
【6月14日】Transmeta、Crusoe Seminar 2001を開催
~0.13μmプロセスのTM5800を国内先行発表~
http://pc.watch.impress.co.jp/docs/article/20010614/crusoe.htm
【6月15日】Crusoeロードマップ & スペック表
http://pc.watch.impress.co.jp/docs/article/trans/roadmap.htm


バックナンバー

(2001年6月19日)

[Reported by 後藤 弘茂]


【PC Watchホームページ】


ウォッチ編集部内PC Watch担当 pc-watch-info@impress.co.jp

Copyright (c) 2001 impress corporation All rights reserved.