- MCUを選択する際に考慮すべき重要な要素
- 1.アプリケーション
- 2.マイクロコントローラーアーキテクチャを選択します
- 3.ビットサイズ
- 4.コミュニケーションのためのインターフェース
- 5.動作電圧
- 6. I / Oピンの数
- 7.メモリ要件
- 8.パッケージサイズ
- 9.消費電力
- 10.マイクロコントローラーのサポート
マイクロコントローラは、他のコンピュータと同様に、本質的にチップ上の小さなコンピュータであり、メモリを備えており、通常、入力を受け取り、計算を実行し、出力を生成するように組み込みシステムでプログラムされます。プロセッサとは異なり、以下のレイアウトに示すように、メモリ、CPU、I / O、およびその他の周辺機器が1つのチップに組み込まれています。
プロジェクトに適切なマイクロコントローラーを選択することは、プロジェクトの中心であり、システムの成功または失敗はそれに依存するため、常に複雑な決定を下す必要があります。
マイクロコントローラーには数千の異なるタイプがあり、それぞれがフォームファクターからパッケージサイズ、特定のアプリケーションに適合し、特定のアプリケーションに適合しないRAMとROMの容量に至るまで、独自の機能または競争上の優位性を備えています。したがって、多くの場合、適切なものを選択することに伴う頭痛の種を避けるために、設計者は、プロジェクトの要件を実際には満たさない場合でも、使い慣れたマイクロコントローラーを選択します。今日の記事では、アーキテクチャ、メモリ、インターフェイス、I / O領域など、マイクロコントローラを選択する際に考慮すべき重要な要素のいくつかを見ていきます。
MCUを選択する際に考慮すべき重要な要素
以下は、アーキテクチャ、メモリ、インターフェイス、I / O領域など、マイクロコントローラを選択する際に注意すべき重要な要素の一部です。
1.アプリケーション
プロジェクトにマイクロコントローラーを選択する前に最初に行うことは、マイクロコントローラーベースのソリューションを展開するタスクを深く理解することです。技術仕様書はこのプロセス中に常に作成され、プロジェクトに使用されるマイクロコントローラーの特定の機能を決定するのに役立ちます。多くの10進数を含む操作を実行するために使用されるデバイスの設計に浮動小数点ユニットを備えたマイクロコントローラが採用された場合、デバイスのアプリケーション/使用が使用するマイクロコントローラを決定する方法の良い例が示されます。
2.マイクロコントローラーアーキテクチャを選択します
マイクロコントローラのアーキテクチャとは、マイクロコントローラが内部でどのように構成されているかを指します。マイクロコントローラの設計に使用される2つの主要なアーキテクチャがあります。
- フォンノイマンアーキテクチャ
- ハーバードアーキテクチャ
フォンノイマンアーキテクチャは、同じバスを使用してデータを送信し、メモリから命令セットをフェッチすることを特徴としています。したがって、データ転送と命令フェッチを同時に実行することはできず、通常はスケジュールされます。一方、ハーバードアーキテクチャは、データの送信と命令のフェッチに別々のバスを使用することを特徴としています。
これらのアーキテクチャにはそれぞれ長所と短所があります。たとえば、ハーバードアーキテクチャはRISC(縮小命令セット)コンピュータであるため、フォンノイマンアーキテクチャに基づくCISC(複雑な命令セット)コンピュータよりも少ないサイクルでより多くの命令を実行できます。ハーバード(RISC)ベースのマイクロコントローラーの重要な利点の1つは、データと命令セットに異なるバスが存在することで、メモリアクセスと算術論理演算装置(ALU)の操作を分離できることです。これにより、マイクロコントローラーに必要な計算能力が削減され、コストの削減、低消費電力、および熱放散につながり、バッテリー駆動デバイスの設計に理想的です。多くのARM、AVRおよびPICマイクロコントローラーはハーバードアーキテクチャに基づいています。フォンノイマンアーキテクチャを使用するマイクロコントローラの例には、8051、zilogZ80などがあります。
3.ビットサイズ
マイクロコントローラは、8ビット、16ビット、32ビット、および64ビットのいずれかです。これは、マイクロコントローラが所有する現在の最大ビットサイズです。マイクロコントローラのビットサイズは、マイクロコントローラの命令セットで使用される「ワード」のサイズを表します。これは、8ビットマイクロコントローラでは、すべての命令、アドレス、変数、またはレジスタの表現が8ビットであることを意味します。ビットサイズの重要な意味の1つは、マイクロコントローラのメモリ容量です。たとえば、8ビットマイクロコントローラでは、ビットサイズによって決定される255の一意のメモリ位置がありますが、32ビットマイクロコントローラでは、4,294,967,295の一意のメモリ位置があります。つまり、ビットサイズが大きいほど、一意の数が多くなります。マイクロコントローラで使用できるメモリ位置。しかし、最近のメーカーはは、ページングとアドレス指定を介して、より小さなビットサイズのマイクロコントローラーにより多くのメモリ位置へのアクセスを提供する方法を開発しています。これにより、8ビットマイクロコントローラーは16ビットアドレス可能になりますが、これは組み込みソフトウェア開発者のプログラミングを複雑にする傾向があります。
ビットサイズの影響は、特に算術演算用のマイクロコントローラー用のファームウェアを開発するときに、おそらくより顕著に発生します。さまざまなデータタイプには、マイクロコントローラのビットサイズごとに異なるメモリサイズがあります。たとえば、符号なし整数として宣言された変数を使用すると、データ型のために16ビットのメモリが必要になりますが、8ビットマイクロコントローラで実行されるコードでは、データの最上位バイトが失われることがあります。マイクロコントローラが使用されるデバイスが設計されたタスクの達成にとって非常に重要です。
したがって、処理するデータのビットサイズと一致するビットサイズのマイクロコントローラを選択することが重要です。
これらのチップに組み込まれている技術の進歩により、最近のほとんどのアプリケーションは32ビットから16ビットのマイクロコントローラーであることに注意することがおそらく重要です。
4.コミュニケーションのためのインターフェース
マイクロコントローラーと、プロジェクトで使用されるいくつかのセンサーおよびアクチュエーターとの間の通信では、通信を容易にするために、マイクロコントローラーとセンサーまたはアクチュエーターの間のインターフェースの使用が必要になる場合があります。たとえば、アナログセンサーをマイクロコントローラーに接続するには、マイクロコントローラーに十分なADC(アナログ-デジタルコンバーター)が必要です。または、前述したように、DCモーターの速度を変更するには、マイクロコントローラーでPWMインターフェイスを使用する必要があります。したがって、選択するマイクロコントローラに、UART、SPI、I2Cなどの必要なインターフェイスが十分にあることを確認することが重要になります。
5.動作電圧
動作電圧は、システムが動作するように設計されている電圧レベルです。また、システムの特定の特性が関連する電圧レベルでもあります。ハードウェア設計では、動作電圧によって、マイクロコントローラーがシステムを構成する他のコンポーネントと通信する論理レベルが決まる場合があります。
5Vおよび3.3Vの電圧レベルは、マイクロコントローラーに使用される最も一般的な動作電圧であり、デバイスの技術仕様を開発するプロセス中に、これらの電圧レベルのどちらを使用するかを決定する必要があります。ほとんどの外部コンポーネント、センサー、およびアクチュエーターが5Vの電圧レベルで動作するデバイスの設計で、3.3Vの動作電圧を持つマイクロコントローラーを使用することは、ロジックレベルを実装する必要があるため、あまり賢明な決定ではありません。マイクロコントローラと他のコンポーネント間のデータ交換を可能にするシフターまたはコンバーター。これにより、製造コストとデバイスの全体的なコストが不必要に増加します。
6. I / Oピンの数
マイクロコントローラが所有する汎用または特殊用途の入力/出力ポートおよび(または)ピンの数は、マイクロコントローラの選択に影響を与える最も重要な要素の1つです。
マイクロコントローラーがこの記事に記載されている他のすべての機能を備えていても、プロジェクトで必要とされる十分なIOピンがない場合、マイクロコントローラーは使用できません。たとえば、マイクロコントローラには、デバイスによって速度が変化するDCモーターの数を制御するのに十分なPWMピンがあることが重要です。マイクロコントローラのI / Oポートの数は、シフトレジスタを使用することで拡張できますが、すべての種類のアプリケーションに使用できるわけではなく、使用するデバイスのコストが高くなります。したがって、設計に選択するマイクロコントローラーに、プロジェクトに必要な数の汎用および特殊用途のI / Oポートがあることを確認することをお勧めします。
プロジェクトに必要な汎用または特殊目的のI / Oピンの数を決定する際に留意すべきもう1つの重要な点は、デバイスに対して行われる可能性のある将来の改善と、それらの改善がI / Oピンの数にどのように影響するかです。必須。
7.メモリ要件
マイクロコントローラに関連するメモリにはいくつかの種類があり、設計者は選択を行う際に注意する必要があります。最も重要なものはRAM、ROM、EEPROMです。必要なこれらの各メモリの量は、使用されるまで見積もることが難しい場合がありますが、マイクロコントローラに必要な作業量を判断すると、予測を行うことができます。上記のこれらのメモリデバイスは、マイクロコントローラのデータおよびプログラムメモリを形成します。
マイクロコントローラのプログラムメモリにはマイクロコントローラのファームウェアが保存されているため、マイクロコントローラの電源が切断されてもファームウェアは失われません。必要なプログラムメモリの量は、ファームウェアが正しく機能するために必要なライブラリ、テーブル、イメージのバイナリファイルなどのデータの量によって異なります。
一方、データメモリは実行時に使用されます。実行時に他のアクティビティの中で処理の結果として生成されたすべての変数とデータは、このメモリに保存されます。したがって、実行時に発生する計算の複雑さを使用して、マイクロコントローラーに必要なデータメモリの量を見積もることができます。
8.パッケージサイズ
パッケージサイズは、マイクロコントローラーのフォームファクターを指します。マイクロコントローラーは通常、QFP、TSSOP、SOICからSSOPまでのパッケージと、プロトタイピングのためにブレッドボードに簡単に取り付けることができる通常のDIPパッケージで提供されます。製造前に計画を立て、どのパッケージが最適かを想定することが重要です。
9.消費電力
これは、マイクロコントローラーを選択する際に考慮すべき最も重要な要素の1つです。特に、マイクロコントローラーをできるだけ低電力にすることが望まれるIoTデバイスなどのバッテリー駆動のアプリケーションに展開する場合に考慮します。ほとんどのマイクロコントローラーのデータシートには、さまざまなモードでマイクロコントローラーが消費する電力量を最小限に抑えるために使用できる、いくつかのハードウェアおよび(または)ソフトウェアベースの手法に関する情報が含まれています。選択しているマイクロコントローラーがプロジェクトの電力要件を満たしていることを確認してください。
10.マイクロコントローラーのサポート
使用するマイクロコントローラーが次のような十分なサポートを備えていることが重要です。コードサンプル、リファレンスデザイン、可能であればオンラインの大規模なコミュニティ。マイクロコントローラーを初めて使用する場合、さまざまな課題が発生する可能性があり、これらのリソースにアクセスできると、それらをすばやく克服するのに役立ちます。付属のクールな新機能のために最新のマイクロコントローラーを使用することは良いことですが、マイクロコントローラーに関連する可能性のある初期の問題のほとんどを確実にするために、マイクロコントローラーが少なくとも3〜4か月間使用されていることを確認することをお勧めしますさまざまな顧客がさまざまなアプリケーションでマイクロコントローラの多くのテストを行っていたため、解決されたはずです。
また、優れた評価キットを備えたマイクロコントローラーを選択することも重要です。これにより、プロトタイプの作成をすばやく開始し、機能を簡単にテストできます。評価キットは、経験を積み、開発に使用されるツールチェーンに精通し、デバイスの開発中の時間を節約するための優れた方法です。
プロジェクトに適切なマイクロコントローラーを選択することは引き続き問題であり、すべてのハードウェア設計者が解決する必要があります。マイクロコントローラーの選択に影響を与える可能性のある要因は他にもいくつかありますが、上記のこれらの要因が最も重要です。