要点
マイクロコントローラーは1つの役割を担い、それを確実に実行します。CPUはオンチップのフラッシュ メモリに格納された命令を読み出し、RAMはプログラムがその時点で必要とする実行時データを保持します。タイマー、アナログ-デジタル変換器 (ADC)、およびUART、SPI、CANなどの通信インターフェースといった内蔵周辺機器は、CPUに負荷をかけることなく入出力タスクを処理します。メモリやI/Oに外部チップを必要とする汎用プロセッサとは異なり、MCUは演算、メモリ、接続機能を1つのデバイスに統合することで、基板面積、消費電力、部品表 (BOM) コストを削減します。

マイコンとは

図1.マイクロコントローラーの内部アーキテクチャ。CPUコア、フラッシュ メモリとRAM、周辺モジュール、および外部センサーやアクチュエータへのI/O接続を示しています。インフィニオン テクノロジーズAG

マイクロコントローラーの基本動作は、フラッシュ メモリから命令を読み出し、デコードして実行し、次の命令へ進むという連続した処理です。このフェッチ - デコード - 実行サイクルはCPUのクロック信号によって制御され、毎秒数百万回繰り返されます。ファームウェア (エンジニアが作成してデバイスに書き込むプログラム) は不揮発性フラッシュに恒久的に保存されるため、MCUは電源投入と同時にタスクの実行を開始します。オペレーティング システムの起動もブートローダーの遅延もなく、コードとハードウェアが足並みをそろえて動作します。

周辺機能は、プロセッサをコントローラーへと変える要素です。センサーを常にポーリングしたり、入力待ちでアイドル状態になったりするのではなく、適切に設計されたMCUはハードウェア割り込みを使用します。各周辺機能は注意が必要なときに割り込み信号を生成し、メイン プログラム ループを短時間停止させ、割り込みサービスルーチンでイベントを処理してから、中断した箇所に正確に復帰します。ADCは新しい電圧測定値の準備ができたことを通知し、タイマーはPWM周期の終端で動作し、CANコントローラーはバス上に新しいメッセージが到着するとフラグを立てます。周辺機能がI/Oを処理している間、CPUは制御アルゴリズムに専念できます。

制御システムでは、タイミングは便宜上のものではなく設計仕様です。モーター電流ループはマイクロ秒単位で実行する必要があり、安全モニターは損傷が発生する前に故障を検出して対応する必要があります。マイクロコントローラーは、決定論的な実行によってこの要件を満たします。つまり、同じ入力が与えられた場合、同じコード パスは常に同じクロック サイクル数で実行されます。この予測可能性が、MCUを閉ループ制御に適した選択肢にしています。閉ループ制御では、センシングから応答までの遅れがシステムの安定性、効率、機能安全に直接影響します。

マイクロコントローラーは、組み込みデバイスの神経系と考えるとよいでしょう。SPIまたはI2Cを介してセンサー信号を読み取り、CANまたはLINを介してシステム レベルのコマンドを受信し、制御アルゴリズムに従ってデータを処理し、アクチュエーター、ディスプレイ、またはネットワーク上の他のノードへ適切な応答を送信します。たとえば自動車のボディ制御モジュールでは、1つのMCUが、異なるインターフェースで接続されたウィンドウ リフト モーター、シート ヒーター、外装照明を同時に管理し、同一のプロセッサ コアがそれらをリアルタイムで協調制御することがあります。

多くのマイクロコントローラーは、タスクをアクティブに処理していないときに省電力のスリープ モードに入り、タイマー満了または外部イベントの発生時にのみ復帰します。インフィニオンのAURIX™ TC3xxファミリーおよびTRAVEO™ T2G Bodyファミリーには、この種の専用省電力モードが用意されており、リアルタイム応答性を損なうことなく厳しい車載エネルギー予算を満たせます。故障が発生した場合、またはリセット信号を受信した場合、MCUはプログラム メモリの最初の命令から再起動し、通常動作を再開します。

マイクロコントローラーは単一のカテゴリではありません。処理能力、周辺機能の構成、認定レベルは幅広く多岐にわたります。必要なタイプを理解することが、適切に選定された設計への第一歩です。

処理アーキテクチャ別

シングルコア マイクロコントローラーは、命令を順次実行するCPUを1つ備えています。これらのデバイスは、コストと開発の容易さを優先するシンプルで低消費電力のアプリケーションに適しています。

マルチコア マイクロコントローラーは複数のCPUコアを備えており、複数のスレッドまたはプロセスを同時に実行できます。このアーキテクチャは、車載用センサー フュージョンや産業用モーション コントロールなど、シングルコアの処理能力を超える要求の厳しいタスクに対応します。インフィニオンのAURIX™ファミリーはマルチコア設計で、最大6つのTriCore™コアがロックステップまたは独立して動作し、性能と機能安全の両方を実現します。

インフィニオンのTRAVEO™ T2G Body Highファミリーもマルチコア デバイスで、複数のArm® Cortex®-Mコアに、ディスプレイ インターフェースのサポートと機能安全機能を組み合わせています。これは、リアルタイム制御と表示レンダリングの両方を別々のコアで同時に実行する必要がある、自動車のボディ エレクトロニクスおよびインストルメント クラスター アプリケーション向けに設計されています。

どのタイプがお客様のアプリケーションに最適か判断が難しい場合は、次をご参照ください。[マイクロコントローラー選定ガイド] では、判断の手順をステップごとにご案内します。

マイクロコントローラーとマイクロプロセッサの違いは何ですか?

違いは統合度にあります。マイクロプロセッサはCPU単体であり、メモリ、ストレージ、入出力については外部チップに依存します。マイクロコントローラーは、CPU、フラッシュ メモリ、RAM、および周辺機能を単一チップに統合しており、自己完結型で、1つの組み込みアプリケーション向けに設計されています。マイクロプロセッサは通常、汎用オペレーティング システムを実行し、多数のアプリケーションを同時に処理します。一方、マイクロコントローラーは、センサーの読み取り、制御アルゴリズムの実行、アクチュエーターの駆動を行う固定ファームウェアを実行します。

マイクロコントローラーは、処理アーキテクチャ、アプリケーション領域、およびプロセッサ コアによって分類されます。アーキテクチャ別では、8ビットMCUはシンプルで低コストな制御タスクに適しています。16ビット デバイスはより多くのメモリとデータ処理能力を提供し、32ビットMCUはリアルタイム オペレーティング システム、浮動小数点演算、および機能安全認証をサポートします。プロセッサ コア別では、Arm® Cortex®-Mシリーズが汎用および産業用設計で広く使われています。一方、インフィニオンのAURIX™に採用されているTriCore™アーキテクチャは、RISC、DSP、およびリアルタイム処理を組み合わせ、要求の厳しい車載アプリケーションに対応します。

ほとんどのマイクロコントローラーは、1.8 V~5 Vの電源電圧で動作します。正確な範囲は、MCUファミリーとプロセス技術によって異なります。電源アーキテクチャを決定する前に、必ずデバイスのデータシートで、動作電圧範囲全体、最小起動電圧、およびI/O電圧許容値を確認してください。

はい。車載専用マイクロコントローラーは、安全性が重要なアプリケーション向けに設計されています。確認すべき特性としては、決定論的な実行、冗長な処理パス、組み込み自己診断、メモリ保護、およびハードウェア安全管理などが挙げられます。必ず、使用するアプリケーションに対するデバイス認定および機能安全に関するドキュメントを確認してください。

マイクロコントローラーの特長は、処理要件、通信ニーズ、および設計上の制約に適合するかどうかを左右します。各項目が実際には何を意味するのかを以下に示します。

マイクロコントローラーは、自動車の安全システムから医療機器、再生可能エネルギー インフラに至るまで、幅広いアプリケーションで使用されています。一般的な分野には以下が含まれます。

  • 自動車のボディ制御: MCUは、LINおよびCANネットワークを介して、単一のボディ制御モジュールからウィンドウ リフト、シート モーター、外装照明、ドアロックなどを制御します。
  • モーター制御: MCUはローター位置を読み取り、電圧ベクトルを計算し、PWM出力をリアルタイムで更新します。
  • ADASと機能安全: 車載グレードのMCUは、センサー フュージョン、安全監視、緊急時のアクチュエーター指令を管理します。
  • 産業オートメーションとロボティクス: MCUは、フィールドバス通信、センサーのサンプリング、アクチュエーター出力、プログラムされた制御ロジックを調整します。
  • IoTエッジデバイス: 超低消費電力MCUは、限られた電力制約のもとで、センシング、信号処理、無線プロトコル スタックを実行します。
  • 医療機器: マイクロコントローラーは、センサー データを取得し、制御アルゴリズムを実行し、携帯型または埋め込み型の設計をサポートします。
  • エネルギー管理: スマート メーター、太陽光インバーター、高効率照明システムは、MCUを使用してエネルギー フローを監視および制御します。

適切なMCUの選定は、アプリケーション固有の要件によって異なります。デバイスを選定する前に、以下の点を検討してください。

  • プロジェクト要件: まずタスクを定義します。センサー インターフェース、モーター制御、IoT接続、または安全性が重要な制御などです。
  • 処理能力: ビット幅、クロック速度、アクセラレーション機能をワークロードに合わせて選定します。
  • I/Oピンと周辺機能: GPIOピン、アナログ入力、PWM出力、通信インターフェースの数を確認します。
  • メモリ: ファームウェア用のフラッシュと、実行時変数、バッファ、スタック用のRAMを見積もります。
  • 電源: バッテリー駆動設計の場合は、スリープ モード、動作電圧、ウェイクアップ時間を評価します。
  • クロック速度: 処理性能と消費電力のバランスを取ります。
  • 物理サイズ: パッケージとフットプリントがPCBレイアウトと互換性があることを確認します。
  • 動作温度: 設置環境に適した定格範囲を選択します。
  • 規制遵守: 該当する自動車、産業、医療の要件を確認します。
  • 供給状況: 数量、コスト、長期的な製品供給状況を確認します。

マイクロコントローラーの生産性は、その開発エコシステムの質に左右されます。統合開発環境 (IDE)、デバッガー、ソフトウェア ライブラリ、そして活発な開発者コミュニティに支えられたデバイスを選択してください。これらのリソースにより、立ち上げ時間が短縮され、問題発生時のトラブルシューティングが容易になります。

インフィニオンのAURIX™ファミリーは、インサーキット エミュレーター、JTAGおよびSWDデバッガー、ならびにAURIX™ Development StudioまたはAURIX™ Configuration Studioによる専用開発ツールをサポートしています。ハードウェア抽象化レイヤーとアプリケーション フレームワークにより、初回の電源投入からファームウェア実行までの時間がさらに短縮されます。

マイクロプロセッサ (MPU) は、汎用コンピューティング向けに設計されています。MPUはメモリとI/Oに外部チップを使用し、多数のアプリケーションを並列に処理するフル オペレーティング システムを実行します。マイクロコントローラーは、組み込みシステムにおける専用の制御タスク向けに設計されており、集積性、低消費電力、決定的なタイミング、コスト効率が重要な要件となります。

それぞれを使用するタイミングの詳細はこちらをご覧ください: [マイクロコントローラーとマイクロプロセッサの比較]

インフィニオンは、車載安全コントローラーから超低消費電力の産業用およびIoT用MCUまで、32ビット デバイスを網羅する幅広いMCU製品ポートフォリオを提供しています。ポートフォリオには以下が含まれます。

  • AURIX™: 要求の高い組み込み制御アプリケーションおよび機能安全向けの、車載認定マルチコア マイクロコントローラー。
  • PSOC™ Automotive: Arm® Cortex®-Mコアをベースとし、車載HMIおよびスマート センサー アプリケーション向けに静電容量センシングを統合したプログラマブルSoCデバイス。
  • TRAVEO™ T2G: ボディ エレクトロニクスおよびクラスター アプリケーション向けに設計された車載マイクロコントローラー。高い接続性、低消費電力動作、セキュリティ、マルチコア オプションを備えています。
  • PSOC™ 4 High Voltage: 高電圧対応、アナログ フロント エンド、MCU、接続性を1チップに統合した、スマート センサーおよびバッテリーマネージメント設計向けの車載/産業用ソリューション。
  • PSOC™ Automotive Multitouch: 車載タッチスクリーン向けの静電容量式タッチ コントローラー。
  • PSOC™: プログラマブルなアナログ、デジタル、インターコネクト リソースに加え、インフィニオンのCAPSENSE™静電容量センシングを備えた、プログラマブル組み込みSoCソリューション。
  • XMC™: 産業用モーター制御、電力変換、IoTエッジ アプリケーション向けの、Arm® Cortex®-Mコアをベースとする32ビットMCU製品ポートフォリオ。
  • MOTIX™: ドライブ回路とMCU機能を統合した、モーター制御向けSoCソリューション。
 

商標: AURIX™、XMC™、TRAVEO™、PSOC™、MOTIX™、TriCore™、CAPSENSE™は、インフィニオン テクノロジーズAGの商標です。Arm®、Cortex®、Helium™は、Arm Limited (またはその子会社) の商標または登録商標です。RISC-V®は、RISC-V Internationalの登録商標です。その他の商標はすべて、それぞれの所有者に帰属します。