インテルのみ表示可能 — GUID: zrf1481129318657
Ixiasoft
インテルのみ表示可能 — GUID: zrf1481129318657
Ixiasoft
5.4.7. ストリームID
各トランザクションは、10ビットのストリームIDによっても分類されます。ストリームIDは、特定のマスターデバイスからのトランザクションのセットまたはストリームを表します。ストリーム内のすべてのトランザクションは、同じ変換プロセスの対象になります。例えば、DMAコントローラーに複数の独立した実行スレッドがあり、それぞれが異なるストリームを形成する場合、それらを異なる変換の対象にすることができます。あるいは、システム・インターコネクトの複数のペリフェラル・マスターが単一のストリームIDを共有する場合もあります。これらのデバイスからのトランザクションは、単一のエンティティーとしてのみ変換することができます。TCUは、ストリームIDを一連のストリーム一致レジスターであるSMMU_SMRxと照合します。SSDにより、使用されるレジスターのセットが決定します。セキュア・ソフトウェアでは、そのセットをSSD非セキュア・トランザクションで使用する非セキュアセットと、SSDセキュア・トランザクションで使用するセキュアセットに分割することができます。ストリーム一致プロセスの結果には、次のものがあります。
- 一致なし: 一致が見つからない場合は、トランザクションでSMMUをバイパスするかを選択することができます。
- 複数一致: 複数のSMMU_SMRnの一致が見つかった場合、SMMUはトランザクションをフォールトとします。これらのトランザクションのフォールト検出は正確ではありません。
- 単一一致: 単一の一致のみが見つかった場合、一致したSMMU_SMRnに対応するSMMU_S2CRnを使用し、必要な他の処理ステップを決定します。
それぞれのSMMU_SMRnには、対応するSMMU_S2CRnがあります。これは、単一のSMMU_SMRnのみが一致する場合に使用されます。SMMU_S2CRn.TYPEビット・フィールドにより、次のいずれかの結果を決定します。
- Fault Allトランザクションでは、フォールトが生成されます。SMMU_sCR0.GFRE == 1の場合、クライアント・デバイスはバスアボートを受信します。それ以外の場合は、トランザクションはRAZ/WI (読み出し値は0/書き込み無視) として機能します。
- Bypassトランザクションでは、SMMU をバイパスします。
- Translateトランザクションは、他の処理に向けてコンテキスト・バンクにマッピングされます。SMMU_S2CRn.CBNDXビット・フィールドは、SMMUが使用するコンテキスト・バンクを指定します。
第2ステージ・ブート・ローダーにより、SDMからHPSのTBUインターフェイスのストリームIDをコンフィグレーションします。FPGA-to-HPSインターフェイスは、独自のストリームIDを提供します。 FPGA-to-HPSストリームIDの値は、 インテル® Quartus® Primeプロ・エディションで指定することができます。
各HPSペリフェラル・マスターのストリームIDは、システム・マネージャーのレジスターを介してコンフィグレーションすることができます。次の表は、ペリフェラル・マスター、ストリームIDのコンフィグレーションに使用されるシステム・マネージャーの対応レジスター、およびストリームIDを表す特定のビット・フィールドを示しています。マスターのアクセス時に、ストリームIDソースはAxUSER[12:3]信号の一部として提供されます。
マスター | システム・マネージャーのレジスター | ストリームID[9:0] に対応するレジスター・ビット・フィールド |
---|---|---|
EMAC0 | emac0_ace | awsid[29:20] arsid[17:8] |
EMAC1 | emac1_ace | awsid[29:20] arsid[17:8] |
EMAC2 | emac2_ace | awsid[29:20] arsid[17:8] |
USB0 | usb0_l3master | hauser22_13[25:16] |
USB1 | usb1_l3master | hauser22_13[25:16] |
DMA | dma_l3master | aruser[25:16] awuser[9:0] |
NAND | nand_axuser | aruser[25:16] awuser[9:0] |
ETR | etr_l3master | aruser[25:16] awuser[9:0] |