Semiconductor Portal

HOME » セミコンポータルによる分析 » 技術分析

ARMがマルチコア向け新アーキテクチャCortex-A9の詳細を発表

英ARM社は、容易にプロセッサコアをマルチコアに拡張できる、新しいアーキテクチャのプロセッサコア「ARM Cortex-A9」を開発した。4コアで最大8000 DMIPSの性能を実現できる。この性能のスケーラビリティだけではなく、消費電力もスケーラブルになっている。従来のARMのCortexアーキテクチャをアップグレードしたりマイグレートしたりするのが簡単にできるという。

このため狙う用途としては、低消費電力の携帯電話機から、性能を追求するネットワーク機器までカバーできるとしている。このCortex-A9を東京で開催されたARM Forum2007で発表した。携帯電話やネットワーク機器、組み込み機器への応用を狙い、今回はARM Connected Community Technical Symposiumと名づけた。

Cortex-A9には二つの製品シリーズがあり、それぞれシングルコア、マルチコアMPCoreシリーズである。シングルコアの性能は、2.0 DMIPS/MHz以上と高く、TSMCの65nmプロセスを使う場合、狙う応用によって500MHzから1GHzまで変えられるという柔軟性がある。マルチコアでは、同クラスのシングルコアと比べて低い消費電力で、高い性能が得られる。携帯電話機で使う用途を考え、250mWの消費電力で性能は30%以上高いとしている。いろいろなデバイスについてソフトウエアの移植性も持つ。

このプロセッサコアは、高速演算するためのコンピュータアーキテクチャを採用している。まず、スーパースケーラ・パイプライン方式を採用し、8段のパイプラインを使う。マルチメディア演算を強力に実行できるようにするため、FPU(浮動小数点ユニット)と乗算器を内蔵している。FPUは単精度および倍精度の計算が可能で、2D/3Dのグラフィックスや画像計算、科学技術計算を高速化する。コアに含むNEONプロセッサエンジンは、アドバンストSIMD(single instruction multiple data)をサポートし、8,16,32ビットの整数データおよび32ビット浮動小数点データ形式でSIMD動作をサポートするため、64ビットおよび128ビットレジスタを備えている。

キャッシュメモリーも1個のコアにL1を内蔵しており、1クロックサイクル当たり2命令を連続的にフェッチ、デコードできる。高速アーキテクチャでよく見られる、アウトオブオーダー命令も備え、1クロックで4命令のディスパッチと7命令のコンプリーションを実行する。

さらにプロセッサコア全体を支えるL2キャッシュコントローラPL310も集積している。従来のARMのL220 AXIキャッシュコントローラの2倍以上のスループットを提供できるが、本領を発揮するのはマルチコアの製品である。マルチコアアーキテクチャでは、各プロセッサコアに各キャッシュを備えているが、L2キャッシュコントローラは最大4個のプロセッサコアのキャッシュを制御する。

最新の正しいデータにアクセスできるようにするため、キャッシュのコヒーレンシを保つ方式として、これまでスヌープ方式やディレクトリ方式などがある。スヌープ方式ではキャッシュ全部の更新をすべてのコアに知らせてチェックするが、コアが多ければ処理効率が悪くなる。ディレクトリ方式ではキャッシュからディレクトリへデータを送り、すべてのキャッシュがデータを共有するが、レイテンシが長く消費電力が大きい。そこで、MESIスヌープ方式と呼ぶ方式でキャッシングを最適化した。ディレクトリをローカルに置くためTAG RAMを2個使い、スヌープ制御回路の中にデータを蓄積する。プロセッサとやり取りをせずデータがキャッシュ内にあるかどうかをチェックする。データを共有しているプロセッサだけをアクセスするようにフィルタをかける。キャッシュからキャッシュへとデータをコピーしておく。このようにしてメインメモリーへアクセスせずに消費電力の低減を果たした。

Cortex-A9は、従来のARMコアの設計と同様、エコシステムが出来上がっており、ケーデンスやメンターグラフィックス、グリーンヒルズソフトウエア、マグマデザイン、QNX、eSolなどEDAやソフトウエア企業がサポートしている。NECエレクトロニクスやテキサスインスツルメンツ社などが採用を決めたという。

ご意見・ご感想