TrustZone(セキュリティ拡張機能)
TrustZoneはCortex-Aシリーズの拡張機能で、大規模OSやアプリケーションが動作するノーマルワールドとセキュリティ関連が動作するセキュアワールドを導入しています。TrustZoneでは、ノーマルワールドメモリ空間とセキュアワールドメモリ空間の分離が可能です。
TrustZoneはCortex-Aシリーズの拡張機能で、大規模OSやアプリケーションが動作するノーマルワールドとセキュリティ関連が動作するセキュアワールドを導入しています。TrustZoneでは、ノーマルワールドメモリ空間とセキュアワールドメモリ空間の分離が可能です。
NEONコプロセッサは、リセット時に無効化されるため、初期化処理でアクセス権設定と稼働設定が必要です。NEONコプロセッサが無効状態でNEON命令を実行した場合、「未定義命令例外」が発生します。
パイオニアは、同社の海外向けカーナビ製品4 機種、車載DVD AV 製品1 機種、海外・国内向けAV 製品1 機種のメイン・プロセッサとして、フリースケールの「i.MX 6DualLiteプロセッサ」および「i.MX 6Soloプロセッサ」を採用した。
プロセッサ機能のキャッシュやMMUなどの設定はコプロセッサで行うため、コプロセッサレジスタを理解しなければなりません。コプロセッサは、メモリ空間に配置されていないため、専用命令を使用し、読み込みおよび書き込みを行います。
データキャッシュはMMUを有効にしないと使用できません。MMUを搭載するArmプロセッサを使用する場合、メモリタイプ・キャッシュ・アクセス権の設定はMMUで行いますので、設定を理解しなければなりません。
プロセッサコアは、コアクロック速度でライトバッファに書き込めるので、バスインターフェースユニットへの書き込み待機は発生しません。ライトバッファに空きがない場合は、空きができるまでプロセッサコアは待機状態になります。
Armプロセッサでは、メモリタイプとして3種類を定義しており、用途によって設定しなければなりません。メモリタイプの設定は、MMU(Cortex-Aシリーズの場合)、MPU(Cortex-Rシリーズの場合)で定義します。
キャッシュとは、大容量で速度の遅いメインメモリとプロセッサとの間に配置する小容量で高速なメモリです。キャッシュは、頻繁にアクセスする一部の「命令」や「データ」をコピーし、プロセッサから高速にアクセスすることで、プログラムの実行速度を上げることができます。
周辺回路からの複数の割り込み要求を優先度に応じてソフトウェア処理することは、割り込みの応答性が懸念されます。この問題を解決するために、GICを使用して割り込み処理の応答性を改善します。GICは、使用するプロセッサによってバージョンが異なります。