2.5.2. 非セキュアアクセス制御レジスタ

NSACRレジスタは、Cortex-A9 NEON MPEおよび他のシステム機能への、非セキュアアクセス権を定義します。

NSACRレジスタの特徴は次のとおりです。

Cortex-A9 MPEにおけるNSACRレジスタのビット割り当てを、Figure 2.2に示します。このレジスタの他のフィールドの詳細については、『Cortex-A9テクニカルリファレンス マニュアル』を参照して下さい。

Figure 2.2. NSACRレジスタのビット割り当て

To view this graphic, your browser must support the SVG format. Either install a browser with native support, or install an appropriate plugin such as Adobe SVG Viewer.


NSACRレジスタのビット割り当てを、Table 2.5に示します。

Table 2.5. NSACRレジスタのビット割り当て

ビット

フィールド

機能

[31:16]

-

Cortex-A9テクニカルリファレンス マニュアル』を参照
[15]NSASEDIS

非セキュアアドバンストSIMD拡張機能を非稼働にします。

b0 = CPACR.ASEDISへの完全なアクセスが提供されます。

b1 = 非セキュア状態で実行している場合は、CPACR.ASEDISビットの値が1に固定され、書き込みは無視されます。

[14]NSD32DIS

VFPレジスタファイルD16~D31の非セキュア使用を不可能にします。

b0 = CPACR.D32DISへの完全なアクセスが提供されます。

b1 = 非セキュア状態で実行している場合は、CPACR.D32DISビットの値が1に固定され、書き込みは無視されます。

[13:12]-Cortex-A9テクニカルリファレンス マニュアル』を参照
[11]CP11

コプロセッサ11へのアクセス許可。

b0 = セキュアアクセスのみ。これはリセット時の値です。

b1 = セキュアと非セキュアの両方のアクセスが可能

[10]CP10

コプロセッサ10へのアクセス許可。

b0 = セキュアアクセスのみ。これはリセット時の値です。

b1 = セキュアと非セキュアの両方のアクセスが可能

[9:0]-Cortex-A9テクニカルリファレンス マニュアル』を参照

NSACRレジスタにアクセスするには、次の命令を使用してCP15を読み書きします。

MRC p15, 0,<Rd>, c1, c1, 2 ; Read Non-secure Access Control Register data
MCR p15, 0,<Rd>, c1, c1, 2 ; Write Non-secure Access Control Register data

各モードでアクセスを試みた結果を、Table 2.6に示します。

Table 2.6. NSACRレジスタへのアクセスの結果

セキュア特権非セキュア特権ユーザ 
読み出し書き込み読み出し書き込み読み出し書き込み
データデータデータ未定義命令例外未定義命令例外未定義命令例外

Copyright © 2008-2010 ARM. All rights reserved.ARM DDI 0409FJ
Non-ConfidentialID013111