後藤弘茂のWeekly海外ニュース
ARMコアとx86コアを同等に扱うAMDのCPU戦略
(2014/7/30 06:00)
ARMコアとx86/x64コアを同クラスの重要度に
AMDが現在目指しているのは、ARMコアとx86/x64コアを同等の重要度で扱う「Ambidextrous(両手利き)」戦略だ。x86/x64がメインでARMがサブなのではなく、x86/x64とARMを同等の位置のプロセッサにしようとしているように見える。独自マイクロアーキテクチャのARMコア開発や、ARMとx86/x64をスイッチャブルにできるチップ設計フレームワークの計画が、x86 CPU会社から脱しようとするAMDの姿勢を鮮明に表している。
AMDは、独自のARM CPUコア開発チームを立ち上げて高性能ARMコアの設計を行なっている。また、x86/x64とARMの両CPUコアをオンチップファブリック(内部インターコネクト)互換にし、さらに同じ物理設計のSoC上のCPUモジュールスペースに両コアをはめ込むことができるようにしようとしている。多大なコストをかけてARMコアの開発を進めており、x86系CPUコアとARM系CPUコアのAPU/SoCを同時並行で低コストに開発できる態勢を整える計画だ。今後2~3年で、AMDの多くの製品分野で、x86/x64版とARM版が併存することになる。AMDは、x86/x64とARMの両方のソリューションを投入できるという独自性を活かそうとしている。
AMDは今年(2014年)5月にこうしたAmbidextrous戦略の概要を明らかにしたが、製品ロードマップを図式化して整理するとAMD戦略の全体像が見えてくる。従来のPC業界の常識から見ると、ARMとx86/x64の両輪へと切り替えたAMDの現在のCPU/APUロードマップは入り組んでいて複雑だ。x86/x64系のCPUコアが、PCとサーバー向けに年毎にコアが世代交替する、従来の単純なロードマップとは異なる。
4系列のCPUマイクロアーキテクチャが併存するAMDのロードマップ
AMDのラインナップでは、2016年以降には、合計で4系列のCPUマイクロアーキテクチャ系列が併存するようになる。x86/x64系の高性能CPUコアのBulldozer(ブルドーザ)系と、x86/x64系のローパワーCPUコアのBobcat(ボブキャット)/Jaguar(ジャギュア)系以外にARM系コアが加わるからだ。AMDは、ARMからソフトマクロRTLのライセンスを受けたCortex-A57を今年(2014年)投入。2016年にはアーキテクチャルライセンスによる、AMDの独自開発マイクロアーキテクチャの、より高性能なARMコア「K12」を投入する。AMDはK12とCortex-A57が併存するとしているため、x86/x64系とARM系それぞれで、性能レンジの異なる2系列のコアが併存することになる。
製品カテゴリ的に見ても、AMDの製品群の中でのARMの位置づけが拡大して行く。最初の段階では、AMDのARM製品はサーバーと組み込み向けマルチコアCPUだけだ。しかし、来年(2015年)になると、クライアントと組み込み向けAPU(Accelerated Processing Unit)が加わる。2016年には、Cortex-A57のサーバーSoCよりも高性能なサーバーSoCが加わる。
AMDが今後伸びるとしている、組み込みと低電力クライアント、そしてスモールコアサーバー、セミカスタムの全ての分野でx86とARMが並ぶことになる。x86だけのカテゴリとして残るのは、パフォーマンス&メインストリームPCと伝統的な高パフォーマンスマルチプロセッササーバー市場だけだ。
もっとも、AMDは、既存のPC市場も維持するつもりで、パフォーマンス/メインストリームPC向けのAPUも開発し続ける。来年には新しいパフォーマンスCPUコア「Excavator(エキスカベータ)」ベースのAPUが登場する。ExcavatorベースのAPUはPCでは「Carrizo(カリゾー)」、サーバーでは「Toronto(トロント)」。GPUコアはVolcanic Islands世代となり、サウスブリッジのFCHチップも統合されたSoCになる。メモリはDDR4で、今のところスタックドDRAMのソリューションは見えない。また、マルチプロセッササーバー向けの後継製品も、今のところ状況が分からない。
こうして見ると、AMDは従来型の市場はx86で、今後発展する可能性のある市場はx86とARMの両輪で戦おうとしていることがわかる。
内部ファブリックとレイアウトを互換にするSkyBridge
具体的なARM製品戦略では、今年(2014年)後半に、ARMの64-bitコア「Cortex-A57」を搭載したサーバーCPU「Seattle(シアトル)」を投入する。ブランド名は「Opteron A1150」。4~8コアのCortex-A57を搭載し、サーバー向けのトーラスネットワークファブリック「Freedom Fabric」をオンチップに統合する。従来のHyperTransportによるマルチプロセッサのノード内のメモリ共有接続ではなく、独立した単チップのノードを大量に束ねるファブリックだ。Seattleのプロセス世代は28nmとなる。
さらに、来年(2015年)には、Cortex-A57の設計をチューンし物理設計を変更したCPUコアを搭載したAPU(Accelerated Processing Unit)を投入する。こちらはサーバー向けではなく、クライアントと組み込み向けだ。この2015年のARM APUは、次世代の低電力x86 APUとピン互換になる。このx86とARMの互換“チップ設計フレームワーク”が「Project SkyBridge(スカイブリッジ)」だ。Jaguarを発展させたx86コア「Puma+」と、Cortex-A57がSkyBridgeフレームワークで使えるようになる。
SkyBridgeで真に重要な点は、ピン互換だけでなく、内部ファブリック(ユニット間のインターコネクト)でもx86とARMが互換となる点。さらに、ダイレイアウト上でもほぼ同じスペースにARMコアとx86コアをはめ込めるようになる点にある。つまり、チップの論理設計と物理設計のレベルで、x86コアとARMコアが交換可能になる。「チップの外側ではピンレベルで互換だが、SoCの内部も非常に互換性が高い」とSkyBridgeを担当するJim Keller氏(Vice President and Chief Architect of AMD's Microprocessor Cores)はWebキャストで語っていた。
このことは、AMDが2系統のチップの平行開発労力を大幅に削減できることを意味している。実際問題として、ARMとx86が同じマザーボードに乗るという“SkyBridgeの表の謳い文句”に魅力を感じるシステムベンダーは少ないだろう。SkyBridgeの真のポイントは、設計フレームワークの構築によって、AMDにとって両系統のAPUを低コストに平行開発できるようにする点にあると見られる。実際、Webキャストでもアーキテクト側はピン互換は一言触れただけで、内部ファブリック互換や物理設計の点を強調していた。
このように、SkyBridgeには、マーケティング上分かりやすいピン互換と、真のポイントである内部互換の2つの側面がある。ARMとx86で共通のGCN(Graphics Core Next)GPUコアをSoCに統合してHSAを有効にするというSkyBridgeのソフトウェア面での重要変革は、その設計共通化の上に乗っている。SkyBridgeフレームワーク世代で、製造プロセスは20nmに移る。
ちなみに、SkyBridgeと同時期のパフォーマンスx86/x64系のExcavatorベースのCarrizo/Torontoのプロセス技術については明らかになっていない。しかし、こちらは28nmである可能性が高い。AMDのパフォーマンスCPUコアは、製造ファウンドリを簡単に移すことができないため、継続してGLOBALFOUNDRIESで製造されると見られる。また、パフォーマンスCPUコアは性能を上げるための物理設計に時間がかかるため、20nmや14/16nmプロセスで製造するためにはプロセスの準備ができてから一定の時間が必要となる。そのため、来年のタイミングではパフォーマンスAPUは28nmに留まると推測される。
AMDはARMが設計したCortex-A57のIPライセンスを得ただけでなく、ARMからアーキテクチャルライセンスも取得。AMD独自でフロムスクラッチ(ゼロから始めた)設計を行なうARM 64-bit CPUコアの開発もスタートさせている。AMD独自のARMコア「K12」は2016年に登場予定で、ARMの最高峰のCortex-A57より高性能なコアになる見込みだ。K12も、拡張された共通ファブリックに接続される。
AMDは現在、ARMコアとx86コアの両CPUコア設計チームを同時並行で開発させ、相互に連携もさせている。CPU設計のノウハウを互いに利用することで高性能化と高効率化を図って行く。x86/x64で培った高周波数化のノウハウをARMv8にもたらし、ARMv8設計で発見したパワー効率化のテクニックをx86/x64に還元する。また、AMDは、同社の検証内容にもARMを組み込み、設計フローもARMとx86で統合する見込みだ。
ホップステップジャンプの3段階のARM戦略
まとめると、AMDのARMコア戦略は、ホップステップジャンプの3段階で構成されていることが分かる。ホップは、Cortex-A57のSeattleで、AMDはARMベースのCPU設計とそのソフトウェアスタックに習熟する。次のステップの、チューンドCortex-A57では、チップ設計レベルでのx86/x64との統合化を確立する。GPUコアも統合したAPUとSoC(System on a Chip)の設計フレームワークSkyBridgeをx86/ARM共通で組み上げる。それと同時に、HSA(Heterogeneous System Architecture)のソフトウェアスタックをARM上でも完成させる。
最後のジャンプとなるK12では、AMDのパフォーマンスCPU設計のノウハウを活かして、高性能ARMコアを作る。K12によって、ARMコアのカバー範囲をさらに広げる。つまり、ホップでチップを実地設計してソフトを整備、ステップでAMD共通の設計フレームワークとソフトウェアプログラミングフレームワークを確立、ジャンプでARMコア自体のアーキテクチャ開発に踏み込む。
その上で、AMDは、同社が展開するセミカスタムチップ設計にもARMコアを利用できるようにする。AMDのセミカスタムAPUは、現在、最新ゲーム機「PlayStation 4(PS4)」と「Xbox One」に搭載されているが、こうしたソリューションにもARMコアを利用可能にする。顧客は、同じファブリック、同じ周辺ユニットのSoCやAPUで、x86コアとARMコアを自由に選択できるようになる。
NVIDIAのARM戦略と部分的にオーバーラップ
AMDが最初に明らかにしたARMコアの利用は、高密度サーバー市場だけだった。しかし、現在は組み込みやクライアントをターゲットとしたARM APUが見えている。半ば予想されていたことだが、全体像が見えてくると、AMDがARMで幅広いレンジをターゲットとしていることが分かる。
また、CPU開発リソースを投入する独自ARMコアの開発計画からは、AMDがARMコアを非常に重視し、力を入れていることが分かる。そもそもK12の「K」は、AMDのパフォーマンスx86 CPUコアの開発コードネームにつけられていた。AMDは、ARMの自社開発コアにKをつけることで、本気度を示そうとしていると見られる。
ARMv8のアーキテクチャルライセンスを得て、サーバーをターゲットにした高性能ARMコアを開発する点は、NVIDIAの「Denver(デンバー)」と完全に競合する。ただし、バイナリトランスレーション方式を取ると見られるDenverと、ハードウェア制御のOut-of-Order実行スーパースカラになると見られるK12では大きな違いが生まれる。ただし、NVIDIAもホップでTegraにARMのCortex-A15コアを統合し、ステップでARM上でのCUDA GPUコンピューティングプログラミングモデルを構築、ジャンプで独自アーキテクチャ開発のDenverを持って来るところはAMDとほぼ同じ流れの戦略となっている。
AMDはチューン版のCortex-A57やK12の開発では、設計手法を変えることを強調している。AMDは言うまでもなく、高性能ロジック設計のスペシャリストで、カスタム設計やセミカスタム設計による高速化にスキルがある。x86/x64 CPU設計で培ったカスタム設計スキルを、論理合成が主流のARMに適用しようとしていると予想される。
ARMとx86が市場をドミナントすると見るAMD
こうして分析すると、AMDがAmbidextrous戦略でいかにARMコア製品に力を入れているかが分かる。その理由として、AMDはx86とARMの2つのCPU ISA(Instruction Set Architecture)が市場を支配しつつあると説明する。金額ベースで見ると、コンピューティング機器の中でARMのシェアが急速に伸びつつあり、結果としてARMとx86以外のアーキテクチャが縮小しつつあるとAMDは見る。2014年では、ARMとx86の両ISAで、市場全体の80%、金額ベースでは800億ドルが占められているとする。2アーキテクチャ独占の状況は今後もさらに進むとAMDは見ており、そのため、ARMとx86の両アーキテクチャをカバーすることが有効だと判断したという。
もちろん、こうしたアナリスト向けの説明は、企業に都合のいいマーケティングタームを並べたもので、額面通り受け取るのは危険だ。しかし、明確に見える部分もある。1つは、x86だけの世界に居続けてはまずいとAMDが判断していること、ARMの世界ならAMDに勝ち目のあるフィールドが存在すると考えていること。
どうして勝ち目があるのか。ARMが高性能へと向かい、サーバーやメインストリームコンピューティングの市場へと向かっているなら、その分野で実績のあるAMDがチップ設計で強味を発揮できるというのが1点。ヘテロジニアス(Heterogeneous:異種混合)コンピューティングの鍵となるGPUコア設計とプログラミングモデルでもAMDが一日の長があると見ているのが1点。AMDはこうした利点をテコに、伸びるARMの波に乗ろうとしている。
逆を言えば、それだけx86市場でAMDが苦しい立場にあることも示している。x86の市場規模は、いまだに巨大だが、Intelの圧力は強く、AMDのシェアは最盛期と比べるとかなり落ちている。Intelとの総力戦はAMDの心身を削るものであり、労力の割に得るものが少なくなりつつある。しかし、Intelはかつて持っていたARMコア(StrongARM系)を手放してしまい、一時は検討していたと言われるARMベースの製品計画も姿が見えない。AMDにとっては、ARM市場は、Intelというやっかいな敵と正面切って戦わずに済む場でもある。
AMDは、対Intelのx86戦線も維持しながら、ARM市場でのリーダーシップを取ろうとしている。開発リソースの限られたAMDが、この2正面戦略を遂行するために必要となるのが、SkyBridgeの設計フレームワークということだ。