このページの本文へ

ロードマップでわかる!当世プロセッサー事情 第83回

ARM11から最新CPUまで ARM系プロセッサーの仕組み

2010年12月27日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/

  • この記事をはてなブックマークに追加
  • 本文印刷
ARMプロセッサーのロードマップ概要

ARMプロセッサーのロードマップ概要

Cortex-A8でスーパースカラーの実装に踏み切る

 性能向上と並行して、ARMは次世代コアの開発も行なっており、これは「ARM v7」アーキテクチャーとして2005年に発表された。ARM v7に関してはアーキテクチャーそのものと同時に、実装したコアである「Cortex-A8」も同時に発表されている。Cortex-A8の名前は、スマートフォンやタブレット端末のCPUとして、よく目にするだろう。

 Cortex-A8の設計目標は「1GHz駆動で2000DMIPS」、つまり2.0DMIPS/MHzの実現である(図6)。これの実現のために、ARMとしては初のスーパースカラーの実装に踏み切った。

図6

図6 発表当時のARMのロードマップ。オレンジ色がCortex-A8(FPF2005資料より引用)

 図7はCortex-A8のパイプライン構造であるが、図左にあるように命令フェッチの時点で2命令/サイクルの取り込みを行ない(矢印が2本出ている)、これをデコードして同時2命令発行を実現している。

図7

図7 Cortex-A8の構造図

 実行ユニットは3つ用意され、それぞれは独立して実行されるという仕組みだ。図7では4つに見えるが、「ALU pipe 0」と「MUL pipe 0」は実はひとつのパイプで、ALUかMultiply(乗算)のどちらかを実行できる。ただしアウトオブオーダーは、Coetex-A8ではまだ実装されていない。

 当然ながら、これを支えるメモリーシステムも大きく変化している。ロード/ストアパイプラインや、これと連動するバスインターフェースユニットのパイプラインは、2次キャッシュの存在を前提に構成されていることがわかる(図8)。

図8

図8 Cortex-A8のメモリーシステムパイプライン

 こうした構成は、従来ARMが得意としてきたコントローラー系の用途にはまるで適さない。逆に言えば、ARM v7では「Cortex-A/R/M」という3種類にアーキテクチャーを分け、それぞれに適した内部構成を採用することで、こうした構成が可能になったと言える。

 ちなみに、この時にはまだ設計目標が示されただけで、実際の性能値などは示されなかった。2006年5月に開催された半導体関連イベント「Spring Processor Forum 2006」(SPF2006)では、ARMから実装例が発表されている(図9)。

図9

図9 Cortex-A8のプロセスと駆動電圧、性能目標

  • TSMC 90nm Gプロセス、1.0V駆動、2000DMIPS、0.58mW/MHz
  • TSMC 65nm LPプロセス、1.2V駆動、1875DMIPS、0.5~0.55mW/MHz
  • TSMC 65nm LPプロセス、1.1V駆動、1550DMIPS、0.34~0.4mW/MHz

 さすがに同じ90nm Gプロセスを使うと、ARM1176J(F)-Sより消費電力が増えているが、65nmのLPプロセスで低電圧駆動させた場合、多くても310mW程度で済んでいる。それでいて性能は2倍になっているのだから、これは大きな進歩と言える。

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン