開発のヒント

CPU

メモリ保護ユニットで内蔵メモリを保護する

Cortex®-M3 / M4 / M7には、MPUという内蔵メモリを保護する機能があります。これはマイコン・ベンダが搭載するかどうかを選択するオプション機能です。ほとんどのSTM32マイコンにはMPUが搭載されています。

MPUには次のような機能があります

  1. ユーザ・アプリケーションが、OSが使用するメモリ領域を破壊することから保護
  2. プロセスを分離し、プロセッシング・タスク間のデータを分割
  3. 予期せぬメモリ・アクセス(例:スタック破損)を検出
  4. 保護領域の属性と許可を指定(間接モード)

例えば、STM32H7シリーズは16個のMPUを搭載しており、16の領域を設定することができ、アクセス権や属性の変更が可能になっています。1つのMPUで設定できる領域は32バイトから4Gバイトです。メモリのデフォルトの属性はリファレンス・マニュアルに記載されています。MPUの詳細は、以下のアプリケーション・ノートを参照下さい。
AN4838: STM32マイクロコントローラ メモリ プロテクション ユニット)

過去の開発のヒントはこちら