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

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

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

携帯機器や電子機器の高性能化に伴いARMコアの出荷数は加速度的に伸びており、2008年1月の時点で100億個以上https://web.archive.org/web/20101206091817/http://www.jp.arm.com/pressroom/08/080125.html、2010年9月の時点で200億個以上https://news.mynavi.jp/techplus/article/20100910-cortex-a15/が出荷されている。ARMアーキテクチャを使用したプロセッサの例としては、テキサス・インスツルメンツのOMAPシリーズやマーベル・テクノロジー・グループのXScale、NVIDIAのTegra、クアルコムのSnapdragon、フリースケールのi.MXシリーズ、ルネサス エレクトロニクスのRZファミリ、Synergyなどがある。

以前のARMプロセッサは組み込みとクライアントシステムに特化していたため全て32ビットであったが、顧客からは電力効率に優れるARMアーキテクチャのサーバへの応用を望む声が高まり、ARM社は2011年10月27日、ARMの64ビット拡張であるAArch64(ARM64)を実装したARMv8アーキテクチャを発表したhttps://ascii.jp/elem/000/000/645/645995/。

歴史 ARMの起源は、1980年代初頭のイギリスのコンピュータ業界に見出すことができる。1983年、イギリスのエイコーン・コンピュータ(Acorn Computers、エイコーン)が画期的なプロジェクト、Acorn RISC Machine(ARM)を開始した。このプロジェクトは、BBC Microの成功を受けて、エイコーンが次世代マシンの開発を目指す中で生まれた。当時、エイコーンは既存の6502プロセッサの性能限界に直面しており、より効率的で低消費電力のプロセッサ、具体的には高性能な32ビットプロセッサの開発が急務となっていた。

プロジェクトの中心となったのは、ソフィー・ウィルソン(Sophie Wilson)とスティーブ・ファーバー(Steve Furber)を含む少数の技術者たちだった。ウィルソンは命令セットアーキテクチャの設計を担当し、ファーバーはハードウェア設計をリードした。彼女らは、とスタンフォード大学の研究に影響を受け、RISC(縮小命令セットコンピューティング)アーキテクチャを採用することを決定した。RISCアーキテクチャの単純な命令セットにより、高速で効率的な処理の実現が期待された。

開発プロセスは綿密に進められた。まず、既存の商用プロセッサの性能を詳細に分析し、次にシミュレータを使用して新しいアーキテクチャをテストした。

開発チームは社を「シリコンパートナー」として選び、エイコーンが設計を提供し、VLSIがレイアウトと製造を担当した。1985年4月26日に受け取った最初のARMシリコンチップは正常に動作し、これが「ARM1」と呼ばれるバージョンで、6MHzで動作していた。このARM1は、BBC Micro用のセカンドプロセッサとして初めて実用化され、サポートチップ(MEMC (MEMory Controller), VIDC (VIDeo and sound Controller), IOC (Input Output Controller))の開発を促進し、ARM2の開発にも使用された 。また、は後にアセンブリ言語で書き直され、これにより命令セットに精通した開発者たちは非常に高密度なコードを作成することができた。このARM版BBC BASICは、ARMエミュレータのテストにおいても非常に優れたベンチマークとなった。

このARM1でのシミュレーション結果を元に、1986年末にARM2が8MHzで登場し、翌年には10〜12MHzで動作するバージョンがリリースされた。ARM2には大きなアーキテクチャの改良が施され、以前はソフトウェアで処理されていた乗算が、ブースの乗算アルゴリズムによりハードウェアで実装された。また、新たに追加された「FIQ(Fast Interrupt reQuest)モード」により、割り込み処理時にレジスタ8〜14が自動的に置き換えられるようになり、割り込み処理が高速化された。

ARM2は、1987年に発売されたAcorn Archimedesシリーズのパーソナルコンピュータ(A305、A310、A440)で初めて使用された。Dhrystoneベンチマークによれば、ARM2は7MHzで動作するMC68000ベースのシステム(AmigaやMacintosh SEなど)に比べ約7倍の性能を誇り、16MHzのIntel 80386とほぼ同等の速度を持っていた。高価なSun SPARCやMIPS R2000のRISCベースワークステーションに次ぐ性能を示しながらも、デスクトップパソコンと同程度の価格で提供された。ARM2は、高速I/Oに対応するよう設計され、他のシステムに見られるDMAコントローラのようなサポートチップを省略し、設計を大幅に簡略化したことで、ワークステーション並みの性能を手頃な価格で実現した。

ARM2は32ビットのデータバス、26ビットのアドレス空間、そして16個の32ビットレジスタ(プログラムカウンタを含む)を備えていた。ARM2のトランジスタ数はわずか30,000個で、これは、例えばMotorola 68000の68,000個と比べて、非常に少なかった。この簡素化は、ARM2がマイクロコードを持たないことや、キャッシュを搭載していないことによるもので、その結果、低消費電力と簡単な熱処理が可能となった。それでも、ARM2は1987年のIBM PS/2シリーズに搭載されたIntel 80286や、同386に比べ、優れた性能を提供していた。

後継機である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機能を搭載していることを意味している。しかし、これより後のコアには全てこれらの機能が標準的に搭載されるようになったため、この名称は省かれている。

DECはARMv4アーキテクチャの設計のライセンスを得てStrongARMを製造した。233MHzでStrongARMはほんの1Wの電力しか消費しない(最近のバージョンはさらに少ない)。この業績は後に訴訟の解決の一環としてインテルに移管され、インテルはこの機会を利用して古くなりつつあったi960をStrongARMで補強することにし、それ以降XScaleという名で知られる高性能の実装を開発した。

以後も、StrongARMの技術のフィードバックを受けたARM9やARM10を経て、NECとの提携などによって携帯電話向けプロセッサとしての地位を確固たるものにしたARM11をリリースする。

1990年代には、AMULETという、非同期の部分を持つことを大きな特徴とするシリーズも開発された(広く採用されるには至らずだったが)。

2005年には製品ラインナップを一新し、高機能携帯電話などのアプリケーションプロセッサ向けであるCortex-A、リアルタイム制御向けであるCortex-R、組み込みシステム向けであるCortex-Mと、ターゲットごとにシリーズを分類した。なお、Cortexの末尾に付く文字は、社名であるARMの一文字ずつをそれぞれ割り当てたものである。また、2012年11月にはARM初となる64ビットアーキテクチャによるプロセッサコアであるCortex-A50シリーズを発表した。

ARMからIPコアのライセンス供与を受けている主な企業には、モトローラ、IBM、テキサス・インスツルメンツ、任天堂、フィリップス、Atmel、シャープ、サムスン電子、STマイクロエレクトロニクス、アナログ・デバイセズ、MediaTek、パナソニック、クアルコム、マーベル・テクノロジー・グループなどがある。

ARMチップは世界で最もよく使われているCPUデザインの一つとなっており、ハードディスク、携帯電話、ルータ、電卓から玩具に至るまであらゆる製品の中に見ることができる。32ビット組み込みCPUで圧倒的なシェアを占め、2004年の世界シェアは61%であった2005年、ARM社のセミナー資料による。。

主な採用製品 ARM6 ARM60 3DOインタラクティブ マルチプレーヤー

ARM610 Apple ニュートン・メッセージパッド、メッセージパッド100、メッセージパッド110、メッセージパッド120

ARM7/7E 携帯情報端末 eMate 300 携帯電話 一般的なGSM携帯電話 cdmaOne携帯電話 初期の3G携帯電話(例:au CDMA 1X A1400番台の一部を除くA1000番台・A3000番台・A5500番台を除くA5000番台。一部例外除く) 携帯ゲーム機 ゲームボーイアドバンス ニンテンドー DS/DS Lite(サブCPU、GBAソフトの動作にも使われる) DSi(サブCPU) 携帯音楽プレーヤー iPodシリーズ(デュアルコア実装) 電卓 HP 20b / HP 30b その他 レゴマインドストーム NXT(知能ブロックの一部) ルンバ(一部の機種)

ARM9/9E 携帯ゲーム機 ニンテンドーDS/DS Lite/DSi(メインCPU、ARM7とのダブル実装) Tapwave Zodiac 携帯電話 Sun SPOT Qualcomm MSM6550(CDMA2000 1xEV-DO Rel.0対応携帯電話用チップセット) MSM6800(CDMA2000 1xEV-DO Rev.A対応携帯電話用チップセット) 3Gおよび3.5G携帯電話(例:NTTドコモ FOMA 900i・901iシリーズ、au(KDDI、沖縄セルラー電話)のCDMA 1XシリーズおよびCDMA 1X WINシリーズ、ソフトバンクモバイルのSoftBank 3Gシリーズ等。一部例外除く) H11T(イー・モバイルの音声通話用3.5G端末) WS009KE "9 (nine)"(WILLCOM(ウィルコム)のPHS端末) Nokia N-Gage 携帯情報端末 Handheld Engine CXD2230GA (SONY CLIEに搭載) その他 Sharp Brain レゴマインドストーム EV3

ARM11/11E 2007年頃から採用されるようになる。発表は2002年4月29日News:米速報:次世代マイクロアーキテクチャ「ARM11」発表。 7月17日、東芝がARM1176JZF-S搭載の携帯電話用プロセッサ、TC35711XBGを発表。2008年第2四半期より量産開始予定。 NVIDIA Tegra Zune HD 携帯音楽プレーヤー iPod touch Zune 携帯電話 T-Mobile G1 Qualcomm MSM7500(EV-DO Rev.A対応携帯電話用チップセット。ARM9Eとのダブル実装) KDDI/沖縄セルラー電話(各auブランド)の 「KCP+」対応CDMA 1X WINシリーズの携帯電話(例・W56T、W54SA、W61S、W62T等。ARM9Eとのダブル実装)および CDMA 1X WINシリーズのスマートフォン(例・E30HT等) MSM7600(EV-DO Rev.A対応携帯電話用チップセット。ARM9Eとのダブル実装) KYOCERA Zio M6000 HTC Hero NTTドコモのFOMA902iシリーズ以降の携帯電話。905i以降のSymbian採用機はSH-4Aとダブル実装。 WS018KE (WILLCOM 9)(WILLCOM(ウィルコム)のPHS端末) Samsung S3C6400(ARM 1176JZ(F)-S v1.0) iPhone 3G(412 MHzで駆動) タブレット・PDA ノキア Internet Tablet N800 mylo COM-2 ゲーム機 Zeebo (新興国向けDL専用3Dゲーム機) シングルボードコンピュータ Raspberry Pi model 1A

Cortex-M3 2004年に発表されたマイクロコントローラ。 同じARMv7-M/v7E-MシリーズのCortex-M3,M4,M7共にハーバード・アーキテクチャであることが最大の特徴である。 自動車・工場・家電などの機器制御などに使われている。自動車では、モーター制御、パワーステアリング、横滑り防止装置などいろいろな場所で使われている。 ワンボードマイコン mbed - NXPのLPC1768の評価ボード。ホビー用途としても広く流通している。

Cortex-A8 2009年頃から採用されるようになる。2010年発売のAndroidスマートフォンは大多数が採用。 NetWalker Samsung S5PC100 iPhone 3GS(600 MHzで駆動) iPod touch (第3世代) Apple A4(Cortex-A8をもとにAppleとサムスンが携帯機器向けに開発) iPhone 4(800MHz) iPad(1GHz) iPod touch(第4世代) Apple TV(2010年モデル) シングルボードコンピュータ BeagleBoard、BeagleBoard-xM、BeagleBone、BeagleBone Black テキサス・インスツルメンツが技術支援をしてオープンソースハードウェアによって開発されたボード。 Cubieboard

Cortex-A9 タブレットは2010年頃から、スマートフォンは2011年から採用された。初期は2コアだったが、4コアのものがタブレットは2011年から、スマートフォンは2012年から登場した。 NVIDIA Tegra 2 Surface RT 携帯ゲーム機 PlayStation Vita Apple A5 Apple TV (第3世代) iPod touch (第5世代) iPad 2, iPad mini iPhone 4S Apple A5X iPad (第3世代) シングルボードコンピュータ PandaBoard BeagleBoard同様、テキサス・インスツルメンツの技術支援によって開発されたボード。 Wandboard

Cortex-A15 タブレットは2012年から、スマートフォンは2013年から採用された。

サムスン電子は1.7GHzのデュアルコア Exynos 5250 を2012年10月Googleが新型「Chromebook」を発表、Samsung製で249ドルから搭載商品を販売開始。メモリ帯域12.8GB/s【PC Watch】 Samsung、初のARM Cortex-A15プロセッサ「Exynos 5250」。 テキサス・インスルメンツは2GHzのデュアルコアで2012年第3四半期から商品を出荷予定日本TI、モバイルの概念を一変させる高性能、高機能のOMAP™5プラットフォームを発表。 NVIDIA は Tegra 4 を2013年第1四半期から出荷予定。 シングルボードコンピュータ ODROID-XU

Cortex-A57 2012年10月に64ビット ARMのCortex-A57, A53(コードネーム「Atlas」と「Apollo」)が発表され【後藤弘茂のWeekly海外ニュース】 ARMが次世代CPU「Atlas」と「Apollo」の計画を発表、2014年に搭載商品(Samsung Galaxy Note 4 など)が販売開始された。 AMD は2015年下半期にサーバー向け Opteron A1100 (Seattle) をリリース予定AMD’s K12 ARM CPU Now In 2017苦難の2013年を越え、輝かしい2014年に賭けるAMD (大きな期待が寄せられているサーバー向け64ビットARMプロセッサ)。 A57やA53では、8コアや全てのコア同時稼働できる4+4コア(A57が4コア、A53が4コア)などが登場した。

Cortex-A72 2015年2月3日に発表されARM Sets New Standard for the Premium Mobile Experience - ARM、2015年に搭載商品が販売される予定Qualcomm Introduces Next Generation Snapdragon 600 and 400 Tier Processors for High Performance, High-Volume Smartphones with Advanced LTE | Qualcomm。Cortex-A57の後継製品。

Raspberry Pi 4 Model B に採用された。

Cortex-A73 2016年 5月30日 に発表された。

Cortex-A75 2017年 5月29日 に発表された。

Cortex-A76 2018年 5月31日 に発表された。

Cortex-A77 2019年 5月27日 に発表された。

Cortex-A78 2020年 5月26日 に発表された。 Cortex-X1 2020年 5月26日 にCortex-A78と共に発表された。 Cortex-X Custom Programに基づき、Cortex-A78をベースに拡張されている。

コアの性能と採用実績 ARM社製