ARMとx86/x64の違い

computer_cpu

プロセッサ(CPU)の話で必ず出てくる単語に「ARM」と「x86/x64」という単語があります。

これらは、プロセッサのアーキテクチャーの種類を表しています。

両者の違いについてまとめました。

スポンサーリンク

ARMとx86/x64のまとめ

いきなりまとめると以下の通りです。

 プロセッサーの
 アーキテクチャーの種類
 ARM  x86/x64
 アーキテクチャーの
開発会社
 ARM  インテル、AMD
 プロセッサーの
 製造会社
 インテル、フリースケール、
ルネサス テクノロジなどが
ライセンス供与
 インテル、AMD
 命令セットの
アーキテクチャー
 RISC  CISC
 主に使われている用途  スマートフォン、タブレット  パソコン、PCサーバー
 32ビット/64ビット  両方あり  x86が32ビット
x64が64ビット
 エンディアン  バイエンディアン  リトルエンディアン

それでは詳しく違いを見てみましょう。

ARM (アーム) アーキテクチャー

arm_logo_corporate_blue

ARMは一般的にはよく知られていませんが、1990年創業のイギリスのケンブリッジに本社を置く会社です。

ARM社は、ARMアーキテクチャーに基づくRISCプロセッサを開発する会社です。

RISC(Reduced Instruction Set Computer) とは、コンピュータの命令セットアーキテクチャ(ISA)の設計手法の一つで、命令の種類を減らし、回路を単純化して演算速度の向上を図るものです。

RISCが提唱されたときに、従来の設計手法に基づくアーキテクチャは対義語としてCISC(Complex Instruction Set Computer)と呼ばれるようになりました。

RISCプロセッサの例としては、ARM以外には、IBMのPOWER、サン・マイクロシステムズのSPARC、ミップステクノロジーズのMIPSなど主にUNIXワークステーションで使われているプロセッサとして知られています。

ARM社は工場を持たないファブレスメーカーで、技術を知的財産権 (IP) として各社にライセンス提供しています。

ARMアーキテクチャは、低消費電力と同時に高い演算能力が求められる高機能携帯電話や携帯情報端末で広く使われており、32ビットとしては世界で最も普及しているマイクロプロセッサです。

AndroidやiPhoneなどのスマホ市場では、ほぼARMが使われています。

ARMに対抗するIntelのATOMプロセッサは、2016年に開発を中止し、スマホやタブレット市場から撤退する模様です。

2016年7月に日本のソフトバンクが、ARM社を約240億ボンド(3.3兆円)で買収することが発表されました。

x86/x64 アーキテクチャー

intel-logo-vector-01

x86は、インテルの32ビットマイクロプロセッサのアーキテクチャーの名称です。

x86という名称は、1978年の8086という16ビットのマイクロプロセッサの登場から誕生し、80286、80386、80486、Pentium、Celeronと受け継がれてきました。

一方、x64(x86-64)は、インテルの64ビットマイクロプロセッサのアーキテクチャーの名称です。

名称がどうしてこうなったかというと、インテルより先にAMDが発表した64ビットの命令セットが先に普及したために、インテルもこれに互換性を持たせて実装するようになったためです。

名称が分かりにくいですが、単純にインテルのプロセッサのアーキテクチャーとして

  • 32ビットならx86
  • 64ビットならx64

と考えてよいでしょう。

ARMのRISCアーキテクチャーと比べると、x86もx64も共にCISCアーキテクチャーです。

パソコンではほぼ、x86/x64のアーキテクチャーが市場を占有しています。

このアーキテクチャーのプロセッサを開発するメーカーとしてはインテルとAMDがあります。

ARMとx86/x64のシェア比較

単純にARMとx86/x64のシェアの比較は難しいですが、以下の図がそれぞれの方向性を見るうえでわかりやすいです。

intel_arm-thumb-600xauto-7203

(出典:http://blogs.itmedia.co.jp/itsolutionjuku/2015/08/intelarm.html )

パソコン市場で圧勝したインテルが、サーバー市場にも手を広げ、更には省電力化でタブレット、スマホ、IoTへも進出しようとしました。ただ、スマホやタブレットでのATOMの成果は芳しくなく、撤退をする模様です。

一方、ARMは省電力であるために、組込み系で採用され、ニンテンドーDSで成功し、更にスマホ市場で成功しました。

以下はARMの出荷本数の推移です。

armsuccess

(出典:http://qiita.com/homhom44/items/4bc5b339447d1999c252)

パソコンとタブレット・スマホのシェアは以下をご覧ください。

デスクトップOS(Windows, Android, iOS)とデスクトップアプリケーションのシェアの推移と歴史、パラダイム
どのような世界にも栄枯盛衰はあります。 特にパソコン業界は動きの激しい業界です。 日々新しい企業が生まれては消えていきま...

ARMはソフトバンクに買収され、今後、どこへ向かうのでしょう。

ビッグエンディアンとリトルエンディアン

プロセッサのアーキテクチャーと並んで、比較される用語としてエンディアンというものがあります。

エンディアン (endianness) とは、多バイトのデータをメモリ上に配置する方式の種類のことです。

例として、1234ABCD (16進数) という4バイトのデータを並べる種類を見てみましょう。

データの上位バイトからメモリに「12 34 AB CD」と並べる方式がビッグエンディアンです。

ビッグエンディアンは人間にとって直観的にわかりやすいという利点があります。

IBMのメインフレーム、モトローラのMC68000、サン・マイクロシステムズのSPARC、Java仮想マシンはビッグエンディアンです。

一方、データの下位バイトから「CD AB 34 12」と並べる方式がリトルエンディアンです。

リトルエンディアンはコンピュータにとって処理しやすい(つまり高速)という利点があります。

DECのVAX、インテルのx86等はリトルエンディアンです。

ARMアーキテクチャ、トランスメタのCrusoe、ヒューレット・パッカードのPA-RISC、PowerPCなどでは、エンディアンを切り替えられるバイエンディアン (bi-endian) です。

スポンサーリンク
スポンサーリンク
Translate »