MCUとMPUの違い:マイコンとマイクロプロセッサを比較
マイコン(MCU)は、プロセッサ、フラッシュメモリ、RAM、タイマーやADC、通信インターフェースなどの周辺機能を1つのチップにまとめていて、小さなシステムを1チップだけで動かせます。マイクロプロセッサ(MPU)は、主に高速なプロセッサで、外付けのDRAMやストレージが必要で、多くはLinuxのような本格的なOSを動かします。MCUは単純で低消費電力のリアルタイム制御に、MPUは複雑でソフトウェアが豊富な機器に向いています。
| 項目 | MCU | MPU |
|---|---|---|
| 集積度 | CPU、フラッシュ、RAM、周辺機能(GPIO、タイマー、ADC、UART、SPI、I2C)を1チップに集積 | キャッシュとMMUを持つCPUコアが中心。DRAMとストレージは外付けのチップ |
| クロック | 約1 MHzから数百MHz | 数百MHzから数GHz |
| メモリ | チップ内のフラッシュが数KB〜数MB、SRAMが数KB〜数MB | 外付けのDRAM(数百MB〜数GB)と、eMMCやSDなどのストレージ |
| ソフトウェア | OSなしのコード、または小さなリアルタイムOS(FreeRTOS、Zephyrなど) | LinuxやAndroidなどの本格的なOS |
| リアルタイム性 | 予測しやすい。割り込みの遅延はマイクロ秒単位 | Linuxでは、リアルタイム向けの拡張なしに保証するのは難しい |
| 消費電力 | 非常に小さい。スリープ時はマイクロアンペア。コイン電池で数年動くこともある | 大きい。数百ミリワットから数ワット |
| 起動時間 | 一瞬(ミリ秒) | 数秒。ブートローダーとOSの起動が必要 |
| コストと基板 | チップは安く、基板も簡単で、外付け部品が少ない | チップは高く、DRAMや電源用のチップも必要。基板は多層で複雑 |
| 主な用途 | 家電、モーター制御、センサー、ウェアラブル、車載ECU | スマートフォン、タブレット、セットトップボックス、ルーター、産業用のタッチパネル、車載のインフォテインメント |
| 例 | STM32、ESP32、RP2040、Arduinoの基板 | NXP i.MX、TI Sitaraなどのアプリケーションプロセッサ、Raspberry Piのチップ |
数値は代表的な目安で、世代や製品によって異なります。