ARMというCPU 〜世界で最も使われているプロセッサ〜

これまでのPalmは,DragonBallと呼ばれるMotorolaの68Kコアベースのプロセッサを搭載していたが,今後はARMプロセッサベースとなる。ところで,「ARMって何?」という方も少なくないだろう。そこで,ARMプロセッサについて簡単に紹介したい。

【国内記事】 2001年8月20日更新

 ARMプロセッサとは,英ARMが開発した,「ARMアーキテクチャを採用したプロセッサ一般の総称」と考えればいい。ちょっとまわりくどい言い方だが,ARMプロセッサ自体はARM以外にも多くのベンダーーから出荷されており,しかもその形態がさまざまだからだ。

 単にプロセッサコアだけのパッケージや周辺回路を一体化したもの,中にはほかのプロセッサ内部に組み込まれたものもある。このあたりは,例えばPC用のPentiumIIIとかMacintosh用のPowerPCとはちょっと様相が異なっている。このため,単純に「これがARMプロセッサだ」と示しにくい。

 ARMとは,“Advanced RISC Machine”(進化したRISCマシン)の略である。元来は英国Acornというコンピュータメーカーが,それまで利用していた6502(*1)で発売し作っていた自社製品の後続機種向けに,1983〜85年にかけて開発したものである。この初代CPUは,6502のエミュレーションを行えた。ちょうど,初代のPowerMacintoshが,68030を搭載したMacII系列のエミュレーションを行ったようなものである。
*1:Apple Computerの名機AppleIIや,任天堂のファミコンなどにも採用された優れた8ビットCPU。後継製品に恵まれず,今では過去の製品となってしまった。

 その後ARMは機能強化(ちょうどPowerPCが601→604→G3→G4と強化されていったようなものだ)されていくが,PowerMacとちょっと違うのは,AcornのマシンよりもARMプロセッサのほうが人気が出てしまったことだ。

 その後AcornはARMプロセッサの開発部隊のみを残し,コンピュータの開発・生産ラインをAcornのブランドごと売却してしまう。その一方,開発部隊はARMと改称され,プロセッサの生産だけでなくプロセッサコアのライセンス供与を主要なビジネスに切り替えて,現在に至っている。

現在のARMプロセッサの特徴とターゲット

 ARMプロセッサは,RISC(Reduced Instruction Set Computing:縮小命令セット)をかなり初期から採用したCPUである。これは当時のAcornに,大規模なプロセッサを開発できるだけのリソースがなかったための選択であった。その後ARMの機能強化に伴って大幅に回路は複雑・巨大化しているが,それでもコアの面積をほかのプロセッサと比較すると驚くべき小ささである。

 回路面積が小さいということは,当然トランジスタの数も少なく,これは消費電力を抑えられることも意味している。この小ささと省電力性が尊ばれるのは,組み込み機器である。

 一例を示してみよう。ARMからライセンスを受けてARMプロセッサを開発しているベンダーーの1つに,picoTurboという会社がある。ここが作成するpT-120というARMプロセッサのスペックを書き表すと,こんな具合だ。

動作クロック 400〜500MHz
プロセスルール 0.18μm
ダイ面積 2.1平方ミリ
動作電圧 1.8ボルト
消費電力 0.5ワット未満

 これに対し,プロセスルールと動作クロックが同じIntelのPentiumIII/500E MHzの場合,以下のようになる。

動作クロック 500MHz
プロセスルール 0.18μm
ダイ面積 103平方ミリ
動作電圧 1.6ボルト
消費電力 16ワット

 pT-120の数字は内蔵キャッシュを除外した数字だから,実際にはダイ面積,消費電力共に若干増加するが,それでも面積,消費電力共に1桁以上の開きがある。もちろん性能の差もあるため同一に比較するには無理があるが,明らかに別のジャンルの製品であることがご理解いただけよう。

 ところで組み込み機器とは具体的には何か? 身近なところでは携帯電話がそうだ。実際,世界の携帯電話の大半は,ARMプロセッサを利用している。最近だと無線LANのアクセスポイントとかブロードバンドルータ,PDA(いにしえのApple MessagePadは,ARMを搭載した初のPDAである)などに多く採用されている。変わったところではプリンタなどへの採用例も多い。つまり,PC以外の情報機器系の大半が,このARMプロセッサを採用していると考えれば話が早い。

組み込み機器に求められるCPUとは

 こうした多くの情報機器系は,なぜARMプロセッサを利用するのか? これを理解するには,PC用プロセッサと対比させるのが早いだろう。試しにIntelのPentiumIIIと,何が違うのかを簡単にまとめてみた。

CPU Intel PentiumIII ARMプロセッサ
供給ベンダー Intel1社のみ。現在はOEMメーカーはない 単体プロセッサとして提供するベンダーだけで20社近く。ARMプロセッサを自社チップに組み込んだベンダーの数まで入れると,40社以上になる
パッケージ サーバ,デスクトップ,モバイルなど用途に合わせて数種類存在するが,いずれも単にCPUパッケージ 多用多種のパッケージが存在する。また,単体のCPUとしてでなく,回路モジュールとして入手したり,設計図を入手することも可能
命令セット CISC命令 RISC命令
互換性 バイナリ(実行プログラム)の後方互換性が重視され,過去のx86プロセッサのプログラムはほぼ完全に動作する ソースレベルでの互換性は「比較的」重視されるが,絶対的に互換とはいえない。また,バイナリの互換性も完全にはない
処理性能 絶対性能の高さが要求される。このため,消費電力や発熱に関する要求はそれほど高くない。 絶対性能よりも,相対性能(例えば単位消費電力当たりの性能値)が重視される。求められる絶対性能自体が比較的低めである
構造 内部でCISC→RISC変換を行い,スーパースケーラや完全アウトオブオーダー,スーパーパイプライン処理を実装している。極めて複雑 一部のARMプロセッサはパイプライン処理を実装しているが,せいぜいその程度。簡単
周辺回路 チップセットと呼ばれる,周辺回路とのインタフェースを別途利用する必要がある さまざまなパッケージがあるが,大抵はチップセットの機能をパッケージ内に取り込んでおり,直接周辺回路を接続できる
価格 数十ドルから数百ドルのオーダー 数ドルから十数ドルのオーダー。パッケージによっては,数十セントの場合もある

 細かく見るとほかにもいろいろな違いはあるが,主な違いとしてはこのあたりだろう。当然ながら情報機器に組み込んだ状態で販売されることが前提なので,PentiumIIIと違ってパソコンショップに行っても売られていない。入手する場合は,電子部品問屋などに注文を出すことになる。

 ところで,ARMプロセッサはパッケージだけでなく,アーキテクチャ上の違いもある。Pentium系がPentium/PentiumII/PentiumIII/Pentium4で細かく違うとか,PowerPCが601/604/620/G3/G4で細かく違うように,ARMにもさまざまな違いがある。これについて,次回ご説明したい。

[大原雄介,ITmedia]

Copyright © ITmedia, Inc. All Rights Reserved.



モバイルショップ

最新スペック搭載ゲームパソコン
高性能でゲームが快適なのは
ドスパラゲームパソコンガレリア!

最新CPU搭載パソコンはドスパラで!!
第3世代インテルCoreプロセッサー搭載PC ドスパラはスピード出荷でお届けします!!