処理ユニットである組み込みデバイスの頭脳は、デバイスが設計されたタスクを実行する上でのデバイスの成功または失敗の重要な決定要因です。処理ユニットは、システムへの入力から最終出力までのすべてのプロセスを担当します。したがって、他のすべてのものはその決定の精度に依存するため、デバイスの設計時に脳に適したプラットフォームを選択することが非常に重要になります。
マイクロコントローラーとマイクロプロセッサー
組み込み機器に使用される処理コンポーネントは、大きく2つのカテゴリに分類できます。マイクロコントローラーとマイクロプロセッサー。
マイクロコントローラーは、1つ以上のプロセッシングコアを含むシングルチップ上の小さなコンピューティングデバイスであり、プログラム可能な特殊および汎用の入出力(I / O)ポートと一緒にメモリデバイスが組み込まれています。これらは、特定の反復タスクのみを実行する必要があるアプリケーションで特に使用されます。組み込みプロジェクトに適したマイクロコントローラーの選択については、すでに説明しました。
一方、マイクロプロセッサは、中央処理装置のすべての機能をチップに組み込んだ汎用コンピューティングデバイスですが、メモリなどの周辺機器やマイクロコントローラのような入出力ピンは含まれていません。
メーカーは現在、マイクロプロセッサ用のチップ上のメモリの使用やマイクロコントローラが外部メモリに接続する機能など、マイクロコントローラとマイクロプロセッサの間の境界線を曖昧にする多くのことを変更していますが、これらのコンポーネントと設計者の間には依然として重要な違いがあります。特定のプロジェクトのためにそれらの中から最良のものを選択する必要があります。
マイクロコントローラーとマイクロプロセッサーの違いの詳細をご覧ください。
MPUまたはMCUを選択する際に考慮すべき要素
組み込み製品の設計に使用する処理装置に関して進むべき方向を決定する前に、設計仕様を作成することが重要です。設計仕様を作成することで、デバイスの事前設計の手段が提供され、詳細、解決すべき問題、解決方法、使用するコンポーネントの強調などを詳細に特定できます。これは、設計者がプロジェクトについて情報に基づいた一般的な決定を下すのに役立ち、処理ユニットのどちらの方向に進むかを決定するのに役立ちます。
マイクロコントローラとマイクロプロセッサのどちらかを選択する前に考慮する必要がある設計仕様のいくつかの要素を以下に説明します。
1.処理能力
処理能力は、マイクロコントローラーとマイクロプロセッサーのどちらかを選択する際に考慮すべき主要な(主要ではないにしても)事項の1つです。これは、マイクロプロセッサの使用を傾斜させる主な要因の1つです。 DMIPS(Dhrystone Million of Instructions Per Seconds)で測定され、マイクロコントローラーまたはマイクロプロセッサーが1秒間に処理できる命令の数を表します。これは基本的に、デバイスが割り当てられたタスクを完了する速度を示します。
設計に必要な正確な計算能力を決定することは非常に困難な作業になる可能性がありますが、タスクを調べて、実行するデバイスとそれらのタスクの計算要件を調べることにより、知識に基づいた推測を行うことができます。たとえば、組み込みLinux、Windows CE、またはその他のOSのいずれかの完全なオペレーティングシステムの使用を必要とするデバイスの開発には、プロセッサのように聞こえる500DMIPSもの処理能力が必要でしょうか。はい。さらに、デバイスでオペレーティングシステムを実行するには、必要な処理能力を高めるメモリ管理ユニット(MMU)が必要になります。多くの演算を伴うデバイスアプリケーションも非常に高いDMIPSを必要とします値と、デバイスが実行する数学/数値計算が多いほど、必要な処理能力のために、設計要件はマイクロプロセッサの使用に傾いています。
マイクロプロセッサとマイクロコントローラの選択に影響を与える処理能力のもう1つの主な影響は、ユーザーインターフェイスなどの複雑さまたは単純さです。最近では、最も基本的なアプリケーションであっても、カラフルでインタラクティブなGUIを使用することが望ましいです。 QTなどのユーザーインターフェイスの作成に使用されるほとんどのライブラリは、80〜100 DMIPSの処理能力を必要とし、表示するアニメーション、画像、その他のマルチメディアコンテンツが多いほど、必要な処理能力も高くなります。ただし、低解像度の画面でのより単純なユーザーインターフェイスは、処理能力をほとんど必要とせず、マイクロコントローラーを使用して電力を供給できます。最近では、さまざまなディスプレイと対話するためのインターフェイスが組み込まれています。
上記のコア機能のいくつかに加えて、通信やその他の周辺機器用に処理能力を確保することが重要です。上記のほとんどの例はマイクロプロセッサの使用をサポートする傾向がありますが、一般にマイクロコントローラに比べて高価であり、特定のソリューションで使用するとやり過ぎになります。たとえば、500 DMIPSマイクロプロセッサを使用して電球を自動化すると、全体的なコストが発生します。製品の通常よりも高く、最終的に市場での失敗につながる可能性があります。
2.インターフェース
製品のさまざまな要素を接続するために使用されるインターフェースは、マイクロコントローラーとマイクロプロセッサーのどちらかを選択する前に考慮すべき要素の1つです。使用する処理装置が他のコンポーネントに必要なインターフェースを備えていることを確認することが重要です。
たとえば、接続性と通信の観点から、ほとんどのマイクロコントローラーとマイクロプロセッサーは、通信デバイスに接続するために必要なインターフェイスを備えていますが、超高速USB 3.0インターフェイス、複数の10/100イーサネットポートまたはギガビットイーサネットポートなどの高速通信周辺機器が必要な場合は、これらをサポートするために必要なインターフェースは、大量のデータとそれらのデータが転送される速度を処理および処理する能力が高いため、通常はマイクロプロセッサーにのみ見られるため、マイクロプロセッサーの方向に傾けます。
これらのインターフェイスに使用されるプロトコルがファームウェアに必要なメモリ量に与える影響は、メモリ要件が増加する傾向があるため、確認する必要があります。マイクロプロセッサベースの設計は、特にシステムがオペレーティングシステムを使用する場合に、大量のデータが交換される高速接続を必要とするアプリケーションに採用されるのが一般的な経験則です。
3.メモリ
これらの2つのデータ処理デバイスは、メモリとデータストレージを異なる方法で処理します。たとえば、マイクロコントローラには固定メモリデバイスが組み込まれていますが、マイクロプロセッサにはメモリデバイスを接続できるインターフェイスが付属しています。これの2つの主要な意味は次のとおりです。
費用
マイクロコントローラは、追加のメモリデバイスを使用する必要がないため、より安価なソリューションになりますが、マイクロプロセッサは、これらの追加要件のために採用するための高価なソリューションになります。
限られたメモリ
マイクロコントローラの固定メモリにより、マイクロコントローラに保存できるデータの量が制限されます。通常、プロセッサは外部メモリデバイスに接続されているため、これはプロセッサには当てはまらない状況です。この制限が問題になる可能性がある場合の良い例は、デバイスのファームウェアを開発する場合です。コードサイズにキロバイトを追加すると、使用するマイクロコントローラーを変更する必要がある場合がありますが、設計がプロセッサーに基づいている場合は、メモリデバイスを変更するだけで済みます。したがって、マイクロプロセッサはメモリの柔軟性を高めます。
考慮すべきメモリに基づいて、他にもいくつかの要因があります。そのうちの1つは、起動(起動)時間です。たとえば、マイクロプロセッサはファームウェアを外部メモリ(通常は外部NANDまたはシリアルフラッシュメモリ)に保存し、起動時にファームウェアをプロセッサのDRAMにロードします。これは数秒以内に行われますが、特定のアプリケーションには理想的ではない場合があります。一方のマイクロコントローラは、より短い時間で済みます。
一般的な速度の考慮事項として、MCUは通常、最もタイムクリティカルなアプリケーションに対応できるため、プロセッサコアが使用され、メモリが組み込まれ、ファームウェアが常にRTOSまたはベアメタルであるために勝ちます。 C。
4.パワー
考慮すべき最後のポイントは消費電力です。マイクロプロセッサには低電力モードがありますが、これらのモードは一般的なMCUで利用できるものほど多くはなく、マイクロプロセッサベースの設計に必要な外部コンポーネントがあるため、低電力モードを実現するのは少し複雑です。低電力モードに加えて、MCUが実際に消費する電力量は、マイクロプロセッサが消費する電力量よりもはるかに少なくなります。これは、処理能力が大きいほど、プロセッサの稼働を維持するために必要な電力量が増えるためです。
したがって、マイクロコントローラー は、リモートコントロール、家庭用電化製品、および設計がバッテリー寿命の長寿命に重点を置いているいくつかのスマートデバイスなど、超低電力処理ユニットが必要なアプリケーションを見つける傾向があります。また、非常に決定論的な動作が必要な場合にも使用されます。
一方、マイクロプロセッサは、オペレーティングシステムを必要とし、計算量が多く、高速接続または大量のメディア情報を含むユーザーインターフェイスを必要とする産業用および民生用アプリケーションに最適です。
結論
他にもいくつかの要因が存在し、これら2つのプラットフォームのどちらかを選択する決定要因として機能し、すべてパフォーマンス、機能、および予算に該当しますが、適切なシステムの事前設計が行われ、要件が明確に示されていると、全体的な選択が容易になります。マイクロコントローラーは主に、BOMの予算が非常に厳しく、電力要件が厳しいソリューションで使用されますが、マイクロプロセッサーは、計算とパフォーマンスの要件が非常に大きいアプリケーションで使用されます。