Xilinx、28nm世代製品にARM Cortex-A9 MPコアを搭載

左がザイリンクス代表取締役社長のSam Rogan氏、右がアーム代表取締役の西嶋貴史氏

4月27日(現地時間)発表



Xilinx社のWorld Wide Marketing, Senior VPのVincent Ratford氏

 米Xilinxは27日(現地時間)、現在サンノゼで開催中の「ESC(Embedded System Conference) Silicon Vallery 2010」にあわせて、同社の28nm世代製品にARM Cortex-A9 MPコアを搭載することを明らかにした。これに関して日本法人であるザイリンクス株式会社オフィスにおいて記者発表会が行なわれ、同社のSam Rogan氏やアーム株式会社の西嶋貴史氏のほか、ビデオ会議システムを経由してXilinx本社よりVincent Ratford氏が説明を行なった。

 XilinxのFPGAにARMのコアが搭載される、という話は以前報じた通りであるが、今回はここから一歩踏み出した形で詳細が語られた。とはいえ今回はあくまでも概略であり、技術的な詳細は後日となっている。今回明らかにされたのは、ARM Cortex-A9 MPCoreを搭載することだ。

 Cortex-A9採用の理由として同社は、主要な150社の顧客から、より複雑な処理を実行できる高性能なコアを求められ、結果としてCortex-A9になったと説明。加えて、Cortex-A9は現在でこそハイエンドコアであるが、CPUの性能改善が著しいこの業界の中では、この先は次第にメインストリーム向けに位置づけられる事が当然予測され、なるべく長期間使われることを考えるとハイエンドコアが望ましいという事情もある。

 同社はこのFPGA+Cortex-A9MPの製品を、「Extensible Processing System」(拡張性のある処理システム)と称している。CPUコアに関しては、同社のARM V7命令セットをフルサポートし、必要に応じてNEONも利用できる。またOSとしてはLinux以外に、日本においてはMP対応のTRON OSもサポートするという言明があった(写真3)。

 FPGAとCPUコアはAXIで接続される。これにより、例えばAXIに対応したIPがすぐに組み込めるほか、AXIのバンド幅を生かして、FPGAのSRAMセルや外部のメモリと広帯域で繋ぐこともできるし、Gigabit EthernetやUSB/SP/SDIOといった比較的高速なバスや、更に高速なSerDesを接続することも可能としている。

 また従来にない特徴として、Cortex-A9や周辺回路(それと恐らくAXI Switch)を含むProcessing Complexはハードワイヤードで実装される。このため、電源を入れるとConfigurationをしなくてもCPUは勝手にブートし、OSをロードして実行可能としている。(写真4)「では内蔵するCPUからFPGAのConfigurationが可能か」という疑問が当然沸くが、それに関してはまだ公表できないとの事だった。

【写真3】Cortex-A9ともなると、まともに使うためにはOSが必須であり、Cortex-Mシリーズや、あるいは同社のMicroBlazeのように、OSなしでいきなり制御コードが走る、というわけにはいかないだろう。恐らくそうした用途には、Cortex-A9なしの、ただのFPGAを使えということだと思われる。またMP Coreだが、Asymmetric動作が可能かどうかは不明である【写真4】省電力に関しては、同一ダイ上にCPUとFPGAが配されるため、より少ない電力で、より広帯域な接続が可能なので、結果として省電力になるとの話。今回の構成では、CPUは最大2,500ものFPGAからの信号をハンドリングできるらしい

 Extensible Processing Syetemは、2010年2月に発表された通り、TSMCの28nmプロセスを使って製造される。利用するのはHigh-K Metal Gateを使ったHPLプロセスで、これはTSMCの28nm HPプロセスと比べても低消費電力であるとしている。HPLプロセスを使った最大の目的はチップの消費電力を下げる事で、これにより従来製品と比較してスタティック消費電力を最大50%削減できるとしている(写真5)。またUnified PLA(Programmable Logic Architecture)という考え方も導入されており、ローエンドからハイエンドまで同一のアーキテクチャで利用できる、としている。

 このExtensible Processing Syetemが活躍する例として以下の2つが示された。まずは車載ドライビングアシスタントシステム(写真6)。これはカメラを使って走行中の様子をリアルタイムに取得し、画像解析を行なうことで車線逸脱警報やオートステアリング、将来的には衝突回避や衝突軽減といった応用もあり得るだろう。当然ながらこれを実装するには、それなりの処理能力が必要になる(写真7)。そのため従来だと、ASSPにDSPを組み合わせたマルチチップ構成(写真8)で実装することが多いが、これをExtensible Processing Syetemに置き換えることで低コスト、低消費電力の構成が可能になり、しかも処理性能が必要とされるレベルより大分高いので、余った分で他のアプリケーションを実行することも可能とされる。

【写真5】問題はこのUnifiedが、単にVertexならVertexの中でUnifiedなのか、それともVertex/Spartanの両方に跨る形でUnifiedになるのかという話だが、そのあたりもまだ検討中の模様。そもそも商品構成を従来のVertex/Spartanという2カテゴリを維持した形で出すか、それとも単一構成でゲート数やSerDesなどの違いだけになるのかも不明らしい。もっともExtensible Processing Systemに限っていえば、Spartanの領域では製品構成的に難しいと思われるので、実際にはVertexの領域のみかもしれない【写真6】同社によれば2010年~2014年の間に、年間生産量約5,000万台に達する自動車の1割に、こうした高度なドライブアシスタントが搭載され、市場規模は5億ドルに達すると推定されている。さまざまなドライブアシスタント機能が、現在は個別に実装されているが、これらを統合することも考えているようだ【写真7】これを汎用プロセッサでやらせる、というアイディアは多くのCPUベンダーが取り組んでいたが、流石に全部汎用プロセッサでは無理で、汎用CPUコア+画像処理アクセラレータ、という形で実装されているケースが殆どであった
【写真8】このあたりの条件は多少恣意的ではあるが、一応こんなところだろう【写真9】ここで面白いのはCPUが3335DMIPSと算出されていること。Cortex-A9の性能は概ね2.0DMIPS/MHz以上とされているから、デュアルコアとして逆算すると、CPUコアの動作周波数が833MHzと想定されていることになる。Cortex-A9は65nm LPですら600MHz、90nm HPでは1GHz動作が可能だから、28nm HLPで833MHzはほぼ確実だろう

 もう1つの例がインテリジェントビデオ監視システム(写真10)である。画像監視のためのカメラもフルカラーHDとなり当然データ量が増え、その分析や制御も大変である。これも幾つかのメーカーが、汎用CPU+画像処理アクセラレータというソリューションを既に投入しているが、やはり複数チップの組み合わせとなり、サイズや消費電力、価格の面で厳しい(写真11)。これもまたExtensible Processing Syetemを使う事で、より競争力のある構成が可能になる、としている(写真12)。

 既に秘密保持契約ベースでアーキテクチャの仕様書が公開され、エミュレーションも完成しており、αカスタマーはエミュレーション上ですでに利用しているという。引き続きこうしたαカスタマーと共同で開発を進め、2011年前半には製品詳細を公開、2011年の第2四半期以降にサンプル出荷が始まることが最後に明らかにされた(写真13)。

【写真10】監視カメラ映像を人手で監視するのではなく、画像からの特徴抽出や個体認証などの技法を組み合わせた電子監視システムのこと。英国がこのマーケットでは先進国である【写真11】現在はこの手のカメラはかなり高価だが、マーケットがあるということで多くのプレーヤーが参入してきており、構成コンポーネントそのものに関しては低価格化がかなり進みつつある。今後はカメラ自身や監視システムそのものの金額も下落してゆくだろう
【写真12】この例では、より小型化できるために、より小型のカメラが利用できるようになる点が特に強調された。また部品コストを削減できる点も、価格の下落が予想されるマーケットだけに重要だろう【写真13】Cortex-A9を搭載しない28nm HLPプロセス世代の製品については2010年第4四半期にサンプル出荷が予定通り開始されるとか。Extensible Processing Syetemが若干遅れることについては、「追加の認証が1四半期かその位は必要になるから、Cortex-A9を搭載しないFPGAが2010年第4四半期だと、Extensible Processing Syetemはもう少し後になる」との事だった

(2010年 4月 28日)

[Reported by 大原 雄介]