ARMアーキテクチャ
[Wikipedia|▼Menu]
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}

この記事は検証可能参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方
出典検索?: "ARMアーキテクチャ" ? ニュース ・ 書籍 ・ スカラー ・ CiNii ・ J-STAGE ・ NDL ・ dlib.jp ・ ジャパンサーチ ・ TWL(2014年3月)

ARMアーキテクチャ開発者ARMホールディングス
ビット数32ビット64ビット
発表1983年
バージョンARMv9[1]
デザインRISC
タイプRegister-Register
エンコードFixed
ブランチCondition code
エンディアンBi
拡張NEON, Thumb, Jazelle, VFP
レジスタ
16(32ビット)、31(64ビット)

ARMアーキテクチャ(アーム[2][3][4][5]アーキテクチャ) とは、ARMホールディングスの事業部門であるARM Ltd.により設計・ライセンスされているアーキテクチャである。組み込み機器や低電力アプリケーションからスーパーコンピューターまで様々な機器で用いられている。
概要

ARMアーキテクチャは消費電力を抑える特徴を持ち、低消費電力を目標に設計されるモバイル機器において支配的となっている。本アーキテクチャの命令セットは「(基本的に)固定長の命令」「簡素な命令セット」というRISC風の特徴を有しつつ、「条件実行、定数シフト/ローテート付きオペランド、比較的豊富なアドレッシングモード」といったCISC風の特徴を併せ持つのが特徴的だが、これは初期のARMがパソコン向けに設計された際、当時の同程度の性能のチップとしてはかなり少ないゲート数(約25,000トランジスタ)で実装されたチップの多くの部分を常に活用する設計として工夫されたもので、回路の複雑さを増さないという方向性だというように見れば、CISC風の特徴というよりむしろRISC風の特徴とも言える。このような設計が、初期の世代の実装において、(性能の割に)低消費電力、小さなコア、(RISCとしては)高いコード密度といった優れた特性に結びつき、広く普及する原動力となった。

2005年の時点で、ARMファミリーは32ビット組込みマイクロプロセッサ(乃至、特にマイクロコントローラ)のおよそ75%を占め[6]、全世界で最も使用されている32ビットCPUアーキテクチャである[要出典]。ARMアーキテクチャに基づくCPUコアは、PDA携帯電話メディアプレーヤー携帯型ゲーム電卓などの携帯機器から、ハードディスクルータなどのPC周辺機器まで、あらゆる電子機器に使用される。2015年現在、携帯電話では9割超のシェアがある[7]

携帯機器や電子機器の高性能化に伴いARMコアの出荷数は加速度的に伸びており、2008年1月の時点で100億個以上[8]、2010年9月の時点で200億個以上[9]が出荷されている。ARMアーキテクチャを使用したプロセッサの例としては、テキサス・インスツルメンツOMAPシリーズやマーベル・テクノロジー・グループXScaleNVIDIATegraクアルコムSnapdragonフリースケールのi.MXシリーズ、ルネサス エレクトロニクスのRZファミリ、Synergyなどがある。

既存のARMプロセッサは組み込みとクライアントシステムに特化していたため全て32ビットであるが、顧客からは電力効率に優れるARMアーキテクチャのサーバへの応用を望む声が高まり[要出典]、ARM社は2011年10月27日、ARMの64ビット拡張であるARMv8アーキテクチャを発表した[10]
歴史

ARMの設計は、1983年エイコーン・コンピュータ(イギリス)によって開始された。当時エイコーンはモステクノロジーMOS 6502を搭載したコンピューターを製造・販売しており、小さなハードウェア規模でシンプルな命令セットを持つ、より高速なプロセッサを開発することによって、6502を置き換えることが目的であった。

ただし、ARMはMC6800の影響を受けてはいるがよりRISCに近く、命令セットアーキテクチャや内部アーキテクチャに類似点は少ない。命令セットを設計したソフィー・ウィルソンも、6502とARMにはほとんど共通点は無いと述べている[11]

開発チームは1985年までにARM1と呼ばれる開発サンプルを完成させ、最初の製品となるARM2は次の年に完成した。ARM2は32ビットのデータバス、26ビットのアドレス空間と16個の32ビットレジスタを備えていた。レジスタの1つは、上位6ビットが状態フラグを保持するプログラムカウンタである。ARM2のトランジスタ数は30000個しかなく、おそらく世界で最もシンプルな実用32ビットマイクロプロセッサであった。これは、マイクロコードを持たないこと(モトローラMC68000の場合は1/4から1/3がマイクロコードであった)と、現在のほとんどのCPUと違ってキャッシュを含まないことによるものである。このシンプルさのために消費電力は極めて低かった。後継となるARM3は、4KBのキャッシュを含みさらに性能を高めた。

1980年代後半、Apple Computer(現:Apple)はエイコーンと共同で新しいARMコアの開発に取り組んだ。この作業は非常に重要視されていたため、エイコーンは1990年に開発チームをスピンオフしてAdvanced RISC Machinesという新会社を設立した。このため、ARMは本来のAcorn RISC MachineではなくAdvanced RISC Machineの略であるという説明をよく見かけることになる。Advanced RISC Machinesは、1998年ロンドン証券取引所NASDAQに上場した際、ARM Limitedとなった。

この経緯により、ARM6が開発された。1991年に最初のモデルがリリースされ、AppleはARM6ベースのARM610をApple Newtonに採用した。

これらの変化を経てもコアは大体同じサイズに収まっている。ARM2は30000個のトランジスタを使用していたが、ARM6は35000個にしか増えていない。そこにあるアイデアは、エンドユーザーがARMコアと多くのオプションのパーツを組み合わせて完全なCPUとし、それによって古い設備でも製造でき、かつ安価に高性能を得られる、というものである。

このARM6の改良版であるARM7も、ARM6を採用した製品群に引き続き採用されたほか、普及期に入りつつあった携帯電話にも広く採用されたことから、今日のARMの礎ともなった。

さらに、新世代のARMv4アーキテクチャに基いてARM7を再設計したものがARM7TDMIである。ARM7TDMIはThumb命令(後述)を実装し、低消費電力と高いコード効率を両立する利点を備えていたことから、ライセンスを受けた多くの企業によって製品化され、特に携帯電話ゲームボーイアドバンスといった民生機器に採用されたことから、莫大な数の製品に搭載された。なお、TDMIとはThumb命令、デバッグ (Debug) 回路、乗算器 (Multiplier)、ICE機能を搭載していることを意味している。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:106 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef