インテルのみ表示可能 — GUID: fbj1659631532568
Ixiasoft
インテルのみ表示可能 — GUID: fbj1659631532568
Ixiasoft
7.3.4.3. AxPROT[2:0] に関する考慮事項
ARM® プロトコル仕様では、 AXI* マスターは複数レベルの操作特権をサポートし、セキュアおよび非セキュアな操作状態をサポートすることが可能です。AxPROT[2:0]は、次のようにアクセスを識別します。
AxPROT | 値 | 機能 |
---|---|---|
[0] | 0 | 非特権アクセス |
1 | 特権アクセス | |
[1] | 0 | セキュアアクセス |
1 | 非セキュアアクセス | |
[2] | 0 | データアクセス |
1 | 命令アクセス |
- EL0 – アプリケーション
- EL1 – OS
- EL2 – ハイパーバイザー
- EL3 – セキュアモニター
FPGA マスターとHPSは、同じメモリーにアクセスしている場合に、同じレベルのセキュア/特権モードになっている必要があります。MPUがEL1 (OS) またはEL2 (ATFフローU-Boot) の場合、アクセスは非セキュア/特権モードになります。よって、FPGA マスターでは、AxPROTを0x3 (‘b011) に設定して使用する必要があります。MPUがEL3 (ATF/SPL、非ATF U-boot) の場合は、アクセスはセキュア/特権モードになるため、FPGA マスターでは、AxPROTを0x1 (‘b001) に設定して使用する必要があります。
次の FPGA-to-HPS トランザクション例のセクションでは、FPGA マスターは常にAxPROT = (b’001) に設定されています。これにより、MPUのEL3と同様に、メモリーのすべての領域へのデータアクセス、セキュアアクセス、および特権アクセスが可能になります。この例は、ブート時に「mem=nn」カーネル・コマンド・ライン・オプションを使用してLinuxカーネルによって静的に割り当てられたメモリーにアクセスするFPGA マスターを表しています。DMAのメモリー割り当てと「mem=nn」コマンド・ライン・オプションに関しては、Linuxカーネルのドキュメントを参照してください。HPSで実行されているカーネルによって割り当てられたメモリーにアクセスするFPGA のその他の例として一般的なのは、静的割り当て、カーネル割り当て、およびユーザー空間割り当てです。これらの例は、 AN 886: Intel Agilex® デバイスのデザイン・ガイドライン 、もしくはRocketboards.orgより利用可能です。