ARMはマイクロプロセッサーですか、それともマイクロコントローラーですか?


18

ARMがマイクロプロセッサなのかマイクロコントローラなのか、それとも何か他のものなのかを知るのに苦労していますか?

回答:


41

どちらでもない。

ARMはCPUアーキテクチャです(より正確には、関連するCPUアーキテクチャのファミリです)。そのCPU(または他のCPU)を単独でチップ上に置くと、マイクロプロセッサーが搭載されます(昔のAcornマシンで使用されていたように)。1つのチップ上でROM(フラッシュ)、RAM、および周辺機器と組み合わせると、マイクロコントローラー(例:LPC2148)があります。

CPUとROMおよびRAMを組み合わせると物事が少し濁りますが、データ、アドレス、ピン上の制御線も提供するため、外部メモリを追加できます。このようなチップは、マイクロコントローラモードまたはマイクロプロセッサモードで使用できます。(例:LPC2478)

今日では、マイクロコントローラとして、より小さなシステム(最大0.5Mbフラッシュ、数十Kb RAM)が利用可能です。大規模なシステム(通常はLinuxまたは同様のものを実行している)は、通常、外部RAMを備えたマイクロプロセッサで構成されています。(ROMは外付けでも、小さなオンチップブートROM + SDカードなどでもかまいません)。例:Raspberry Piおよびその他の小さなLinuxボード、ESP8266、または携帯電話、セットトップボックス、モデム/ルーターなどを開きます。

おもしろい注意:マイクロコントローラーはRAMが不足する傾向があるため、フラッシュから実行されるため、多くの場合速度が制限されます。多くの場合、マイクロプロセッサには十分なRAMがあり、フラッシュが遅いため、そこからコードとデータがRAMにロードされて実行されます。

今日(2015年)、ARMという用語は、ARMの設計を行っている会社、または設計の1つを指すことがあるため、ますます混乱を招いています。(ARM社自体はチップを製造せ​​ず、その設計をチップメーカーにライセンスしています。)最近のCortexの「ファミリ」設計は、私が「ARM」と呼ぶのを好まない古いARM設計とはかなり異なっています。


マイクロプロセッサとマイクロコントローラを分割するのは、RAMやROMを接続しなくても、後者が少なくともある程度は動作するのに十分なチップを搭載しているということです。唯一の曖昧なケースは、マスクROM用のスペースを含むデバイスですが、その中に有用なコードなしで頻繁に販売されます。使用中の動作が、マスクROMが「プログラム」されているが外部的に無効になっているデバイスの動作と本質的に区別できない場合、このようなデバイスをマイクロコントローラと見なします。
supercat

@supercat:私の部門は、「どのように使用できるか」ではなく、「どのように使用されるか」(または「どのように使用されるか」)に基づいています。あなたによると、LPC2478はマイクロコントローラになると思いますが、私はそれをハイブリッドと考えています。
ウーターヴァンOoijen

98KのオンボードRAMと512Kのオンボードフラッシュにより、外部メモリのないシステムで非常に有用に使用できるかのように聞こえます。データシートを一目見ただけで、それは「マイクロコントローラー」の陣営にあると見なされますが、これを厳密な呼び出しとは見なしません。
-supercat

私はあなたがそうでないことを知っていますが、私はそうします。このチップは、たとえばLinuxを実行するために定期的に使用されている(または使用されていた)ため、マイクロコントローラーとしては確かに使用できますが、マイクロコントローラーではありません(のみ)。
ウーターヴァンOoijen

おそらくそれはすべて名前にありますか?マイクロコントローラーは、データを処理する能力はあるものの、主に他のコンポーネント/チップを制御するために設計および使用されるCPUを備えたチップです。マイクロプロセッサは、主にデータ処理用に設計され使用されるCPUを備えたチップですが、明らかに外部RAMなどの他のコンポーネントも制御する必要があります。
PAL-クリスチャンEngstad

13

技術的には、ARMはマイクロプロセッサ、より具体的にはマイクロプロセッサアーキテクチャです。ただし、理解するべきことは、物理的なマイクロプロセッサではなく、マイクロプロセッサを構築できる設計であることです。

ARMホールディングスは、CPUを製造していない多国籍半導体グループです。代わりに、彼らはそれらを設計し、ライセンスの下でアーキテクチャを販売します。この設計は、マイクロプロセッサとマイクロコントローラの構築に使用されますが、ARMが提供するのはコアのみです。

また、マイクロコントローラであると言うのは間違っています。なぜなら、それはARMコアを使用してその周辺のすべての周辺機器を構築するのは製造業者だからです。


9

どちらでもない(および両方)

ARMは、CPUコアのライセンスを取得している会社です。

ARMコアは、多くの企業がマイクロコントローラーとマイクロプロセッサーの両方を作成するために使用することができ、現在も使用しています。


1

ARMは、マイクロプロセッサーとマイクロコントローラーの両方のコアです。ARMはCPUアーキテクチャに基づいているため、ARMが単一のチップ上のメモリ(RAMおよびROM)と組み合わされている場合、チップに配置されたときにマイクロプロセッサを持っていると一般に呼びます。 RAMとROMが外部に接続されていると、速度はさらに高くなります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.