変更要約: 初版
1.1組込みプロセッサとMCU/DSP
MCU(マイコン)・DSP・汎用CPU・SoCそれぞれの用途と、RISC/CISCの設計思想の違い、ARM Cortex-M/R/Aシリーズの用途別ラインナップ、そして組込み機器の要件(リアルタイム性・消費電力・コスト・演算特性)から最適なプロセッサ構成を選ぶ判断力を学びます。
エンベデッドシステムスペシャリストの午前II専門では、単に「MCUとは何か」という定義暗記ではなく、目の前の組込み機器の要件(リアルタイム制御・信号処理・消費電力・コスト)から、どのプロセッサ構成(MCU/DSP/汎用CPU/SoC、RISC/CISC、Cortex-M/R/A)を選ぶべきかを判断する力が問われます。同じ「温度センサの値を処理する」という要件でも、単純な閾値判定なら安価なMCUで十分ですが、リアルタイムのデジタル信号処理(フィルタリング・FFT)が必要ならDSPが適し、OSを載せてリッチなUIを動かすならアプリケーションプロセッサ(Cortex-A系)が必要になります。
1.1.1MCU・DSP・汎用CPU・SoCの用途
- MCU(マイコン)=CPUコアにROM/RAM・タイマ・GPIO・A/D変換器などの周辺機能を1チップに集積した組込み向けプロセッサ。低コスト・低消費電力で、家電・センサ・モータ制御など単純な制御ロジックをリアルタイムに実行する用途に向く。
- DSP(デジタルシグナルプロセッサ)=積和演算(乗算+加算)を1サイクルで高速に繰り返すことに特化したプロセッサ。音声・画像のフィルタリングやFFT(高速フーリエ変換)など大量の連続的な数値演算をリアルタイムに処理する用途に向く。汎用CPUでも同じ演算は可能だが、専用のハードウェア乗算器と特殊なアドレッシング方式によりDSPの方が同等消費電力で高速に処理できる。
- 汎用CPU=OS上で多様なアプリケーションを実行することを主目的とする高性能プロセッサ。SoC(System on Chip)=CPUコアに加え、GPU・メモリコントローラ・無線通信モジュール等を1チップに集積した構成で、スマートフォンやリッチなUIを持つ組込み機器(産業用タブレット等)に用いられる。
1.1.2RISC/CISCとARM Cortexシリーズ
- RISC(縮小命令セットコンピュータ)=命令の種類を単純化・固定長にし、1命令1サイクルに近い実行を狙う設計思想。CISC(複合命令セットコンピュータ)=1命令で複雑な処理を行える多機能な命令セットを持つ設計思想で、命令長やサイクル数が可変になりやすい。組込み分野は低消費電力・高いクロック効率が求められるためRISC系(ARM等)が主流。
- ARM Cortexシリーズは用途別に3系統がある。Cortex-M=低コスト・低消費電力・高い割込み応答性を持つMCU向けコア(家電・センサ制御)。Cortex-R=ハードリアルタイム性と機能安全(ロックステップ等の冗長構成)を重視した組込み制御向けコア(車載ECU・ストレージコントローラ)。Cortex-A=OS(Linux/Android等)を動かす高性能アプリケーションプロセッサ向けコア(スマートフォン・産業用タブレット)。
「DSPは積和演算に特化しフィルタリング/FFTに向く」「Cortex-M=MCU向け、Cortex-R=ハードリアルタイム/機能安全、Cortex-A=OS実行の高性能」「組込みはRISCが主流」が最頻出です。要件(リアルタイム性・演算特性・消費電力・OS要否)からプロセッサ構成を逆算できるように練習しておきましょう。
あなたは民生機器メーカーの組込み設計者で、ポータブルオーディオ機器に「リアルタイムのノイズキャンセリング処理」と「バッテリー駆動での長時間動作」という要件が課せられたとします。まず候補に上がった汎用MCU(Cortex-M系)は低消費電力・低コストですが、ノイズキャンセリングに必要な連続的な積和演算(FIRフィルタ等のデジタルフィルタ処理)をリアルタイムに大量実行する用途には演算効率が不足し、同じ処理を行うには動作クロックを上げる必要が生じて消費電力が増大し電池寿命の要件を満たせません。次にDSPを検討すると、専用のハードウェア乗算器と積和演算に最適化されたアーキテクチャにより、MCUと同等の消費電力でより高速にフィルタ処理を完了でき、処理が早く終わった分だけプロセッサをスリープ状態に戻す時間を確保でき、結果として電池寿命の要件も同時に満たせます。もしこの機器が「Bluetoothでの音楽再生に加え、タッチパネルUIとアプリのインストールにも対応したい」という追加要件を持つなら、それはリアルタイム信号処理だけでなくOS上での多様なアプリケーション実行が必要ということであり、Cortex-A系のアプリケーションプロセッサ(SoC)を選ぶべき局面に変わります。「まず処理の本質(単純な制御か、連続的な信号処理か、リッチなOS実行か)を見極め、そこから消費電力・コストの制約下で最適な構成を選ぶ」という手順が、組込みプロセッサ選定の核心です。
| プロセッサ種別 | 得意な処理 | 代表用途 | 消費電力/コスト傾向 |
|---|---|---|---|
| MCU(Cortex-M) | 単純な制御ロジック・GPIO/割込み処理 | 家電・センサ・モータ制御 | 低消費電力・低コスト |
| DSP | 積和演算・フィルタリング・FFT | 音声/画像処理・通信変復調 | 演算あたり高効率 |
| Cortex-R | ハードリアルタイム制御・冗長構成 | 車載ECU・ストレージコントローラ | 中コスト・高信頼性 |
| Cortex-A(SoC) | OS実行・リッチUI・多様なアプリ | スマートフォン・産業用タブレット | 高消費電力・高コスト |
ひっかけ: 「DSPは汎用CPUより高性能なので常にDSPを選ぶべき」は誤りです——DSPが有利なのは積和演算主体の連続的な信号処理に限られ、単純な制御ロジックやOS実行にはMCU/Cortex-Aの方が適切です。また「Cortex-Mシリーズは性能が低いので機能安全用途には使えない」も誤り=機能安全(ハードリアルタイム・冗長化)にはCortex-Mではなく設計思想の異なるCortex-Rが用いられるのであり、性能の優劣の問題ではありません。
1.1.3この節のまとめ
- MCUは単純制御向け低コスト・低消費電力、DSPは積和演算に特化しフィルタ/FFT向け、SoCはOS実行の高性能構成
- ARM CortexはM=MCU向け・R=ハードリアルタイム/機能安全・A=OS実行の高性能と用途で使い分ける
- プロセッサ選定は処理の本質(制御/信号処理/OS実行)を見極め、消費電力・コスト制約下で最適構成を選ぶ判断作業
進捗の記録にはログインが必要です。
理解度チェック
(軽い確認用)Q1. ポータブルオーディオ機器にリアルタイムのノイズキャンセリング処理(連続的なデジタルフィルタ演算)とバッテリー駆動での長時間動作を両立させたい。この要件に最も適したプロセッサはどれか。
Q2. 車載ECUの設計者が、ハードリアルタイム制御と機能安全(ロックステップ等の冗長構成による誤動作検出)の両方を満たすプロセッサコアを選定したい。最も適切な選択はどれか。
Q3. 組込みシステムのプロセッサ設計思想としてRISCがCISCと比較して組込み分野で主流となっている理由の説明として最も適切なものはどれか。

