インテルのみ表示可能 — GUID: hrt1557328320734
Ixiasoft
インテルのみ表示可能 — GUID: hrt1557328320734
Ixiasoft
5.1.8.1.4. インターフェイス帯域幅
HPSとFPGAファブリックとの間のデータ移動に使用するインターフェイスを特定するには、各インターフェイスの帯域幅を理解する必要があります。次の図で示すのは、HPSとFPGAファブリックとの間で使用可能なピーク・スループット、およびHPS内の内部帯域幅です。ここに示す例での想定では、FPGAファブリックは400MHzで動作し、MPUは1500MHzで動作し、64ビット外部SDRAMは3200Mbpsで動作します。
各HPSインターフェイスの相対レイテンシーおよびスループット
インターフェイス |
トランザクションのユースケース |
レイテンシー |
スループット |
---|---|---|---|
HPS-to-FPGA |
MPUからFPGAのメモリーにアクセスする場合 |
中程度 |
中程度 |
HPS-to-FPGA |
MPUからFPGAのメモリーにアクセスする場合 |
中程度 |
非常に低い |
Lightweight HPS-to-FPGA |
MPUからFPGAのレジスターにアクセスする場合 |
低い |
低い |
Lightweight HPS-to-FPGA |
MPUからFPGAのメモリーにアクセスする場合 |
低い |
非常に低い |
FPGA-to-HPS |
FPGAマスターから非キャッシュ・コヒーレントSDRAMにアクセスする場合 |
高い |
中程度 |
FPGA-to-HPS |
FPGAマスターからHPSオンチップRAMにアクセスする場合 |
低い |
高い |
FPGA-to-HPS |
FPGAマスターからHPSペリフェラルにアクセスする場合 |
低い |
低い |
FPGA-to-HPS |
FPGAマスターからコヒーレント・メモリーにアクセスして、キャッシュミスが発生する場合 |
高い |
中程度 |
FPGA-to-HPS |
FPGAマスターからコヒーレント・メモリーにアクセスして、キャッシュヒットが発生する場合 |
低い |
中程度~高い |
FPGA-to-HPS |
FPGAマスターからHPSに直接アクセスする場合 |
中 |
高い~非常に高い |
ガイドライン: HPS-to-FPGAブリッジを使用してMPUからFPGAのペリフェラル・レジスターにアクセスしないでください。
HPS-to-FPGAブリッジは、バースト・トラフィック用に最適化されています。また、ペリフェラルのアクセスは通常、1ビートのみの短いワードサイズのアクセスです。その結果、ペリフェラルへのアクセスがHPS-to-FPGAブリッジを介して行われると、そのトランザクションは、すでにインフライト状態にある他のバースト・トラフィックによって停止する可能性があります。
ガイドライン: Lightweight HPS-to-FPGAブリッジを使用してMPUからFPGAのペリフェラル・レジスターにアクセスしないでください。
Lightweight HPS-to-FPGAブリッジは、非バースト・トラフィック向けに最適化されています。また、通常、メモリーアクセスは、バーストとして実行されます (キャッシュ動作のため、多くの場合32バイトです)。その結果、メモリーへのアクセスが、Lightweight HPS-to-FPGAブリッジを介して行われると、スループットが制限されます。
ガイドライン: FPGAのソフトロジック (DMAコントローラーなど) を使用して、共有データをHPSとFPGAとの間で移動させます。MPUおよびHPS DMAコントローラーの使用は、このユースケースでは避けます。
HPSとFPGAとの間で共有データを移動させる場合、 インテル® では、MPUまたはHPS DMAコントローラーを使用してデータを移動するのではなく、FPGAから行うことをお勧めします。FPGAでは、キャッシュ・コヒーレント・データにアクセスする必要がある場合、適切なACE-Liteキャッシュ拡張シグナリングを使用して、FPGA-to-HPSブリッジにアクセスし、キャッシュ可能なトランザクションを発行する必要があります。非キャッシュ・コヒーレント・データをFPGAまたはHPSに移動させる必要がある場合、FPGAロジックに実装されたDMAエンジンがFPGA-to-HPSブリッジを介してデータを移動させ、可能な限り最良のスループットを実現します。HPSにはDMAエンジンが内蔵されており、それによってHPSとFPGAとの間でデータを移動することができます。ただし、その目的は、メモリーのマスターや、データ移動に対するメモリーの提供が行われないペリフェラルをMPUに代わって支援することです。