連載
Arm Cortex-Mのメモリプロテクションユニット(MPU)って何?:Q&Aで学ぶマイコン講座(108)(1/5 ページ)
マイコンユーザーのさまざまな疑問に対し、マイコンメーカーのエンジニアがお答えしていく本連載。今回は、初級〜上級者の方からよく質問される「Arm Cortex-Mメモリプロテクションユニット(MPU)のメリット」について解説します。
素朴な疑問から技術トラブルなどマイコンユーザーのあらゆる悩みに対し、マイコンメーカーのエンジニアが回答していく連載「Q&Aで学ぶマイコン講座」。
今回は、初級〜上級者から多く寄せられる質問です。
Arm Cortex-Mコアが内蔵しているメモリプロテクションユニット(MPU)とはどのようなものですか? どのような場合に使うとメリットがありますか?
メモリプロテクションユニット(MPU)とは、アドレス空間上に仮想的なメモリ領域を作成し、メモリ領域へのアクセス権限やアクセス属性、メモリ領域のタイプを変更するためのハードウェア機能です。下記が主な用途です。
- キャッシュ動作管理
- メモリ領域ごとに、キャッシュがかかる or かからない、を決定し、有限サイズのキャッシュメモリを有効活用
- キャッシュ内蔵Cortex-M speculative access(投機的アクセス)によるトラブル回避
- メモリアクセス管理
- メモリインタフェースに外部デバイスを接続して制御する際の手当
- セキュリティ
- アクセス権限(非特権、特権)を使い分けて大切な資源(メモリ、ペリフェラル)にアクセスしにくくするセキュリティアイソレーションを実現
- セーフティ
- アクセス属性(読み書き可能、読み出しのみ)を使い分けて、誤った書き込みによる破壊から命令コードやデータを保護
Copyright © ITmedia, Inc. All Rights Reserved.