ストリーミングDMA アクセラレーター・ファンクショナル・ユニット (AFU) ユーザーガイド

ID 683840
日付 12/04/2018
Public
ドキュメント目次

2.4. ストリーム・トゥ・メモリーDMA BBB

ストリーム・トゥ・メモリー (S2M) DMA BBBは、 Avalon® -STデータを受け取り、 メモリー内のバッファーに転送します。バッファーは、ドライバーがホストメモリー内の位置を保証する64バイトに揃える必要があります。S2M DMA BBBは、1GBまでの転送サイズに対応できるようコンフィグレーションされていますが、ドライバーは、大きな転送サイズを最大2MBの小さいサイズに分割します。

S2M DMA BBBストリーミング・インターフェイスは、SOP (start-of-packet)、EOP (end-of-packet) および空の信号を公開することで、パケット化されたデータの受信をサポートします。ホスト・アプリケーションはストリーミング転送が必要な際、パケット信号を使用するようストリーミングDMAドライバーに指示します。パケット化されたデータを使用することにより、データを提供するハードウェア・アクセラレーターは、転送がいつ完了するかを判断することができます。たとえばデータ圧縮エンジンがS2M DMA BBBに接続されている場合、ホスト・アプリケーションは圧縮動作が完了するまで、ストリーミングされるデータ量を把握することができません。データをフレームに分割する代わりに、ハードウェア・アクセラレーターは単に、SOP (start-of-packet) とEOP (end-of-packet) をそれぞれアサートし、ペイロードの開始と終了を通知します。DMAは、ペイロード全体をメモリーに転送し、DMAドライバーは、ホスト・アプリケーションに、それがいつ完了するかのペイロード長を指示します。
図 4. S2M DMA BBB プラットフォーム・デザイナー システム

S2M DMA BBB プラットフォーム・デザイナーシステムのコンポーネントは、次の機能を実装しています。
  • S2M DMA BBB DFH—S2M DMA BBB用64ビット・デバイス・フィーチャー・ヘッダー (DFH) を格納します。ホストドライバーは、AFU DFHや使用されている各種BBBを検索しているハードウェアをスキャンし、ハードウェアを識別します。S2M DMA DMA BBB DFHは、オフセット0x100で次のDFHを指定します。
  • mSGDMAディスパッチャー—ホストからBBBに送信されたディスクリプターをバッファーします。ディスパッチャーは、データがパケット化された際に転送されたデータ量 (非決定的ペイロード長) を判断するために、ホストドライバーが読み取る応答インターフェイスを含みます。このコンポーネントは、 インテル® Quartus® Primeプロ・エディション内の既存コンポーネントをわずかに変更したバージョンであるため、デザイン例に含まれています。
  • mSGDMA書き込みマスター—ディスパッチャーからのコマンドを受け取り、Avalon-STシンク・インターフェイスが受け取ったデータをメモリーに書き込みます。ストリーミング・ポートに到着するデータは、SOP、EOPおよび空の信号のストリーミング・サイドバンド・シグナルを伴うことがあります。このコンポーネントは、 インテル® Quartus® Primeプロ・エディション内の既存コンポーネントをわずかに変更したバージョンであるため、デザイン例に含まれています。
  • パイプライン・ブリッジ—このコンポーネントは、S2M DMA BBBの最大動作周波数 (Fmax) の向上を目的として、mSGDMA書き込みマスターとローカルFPGAメモリー間に追加されています。ローカルFPGAメモリーへの接続のためにS2M DMA BBBを必要としない場合は、ご自身がデザインされたインターフェイスをエクスポートし、すべてのマスター入力をグランドさせてください。mSGDMAディスパッチャー・スレーブ・インターフェイスはすべて、0x100のアドレス範囲にわたるパイプライン・ブリッジに接続しています。
  • ファー・リーチAvalon-MMブリッジ—このコンポーネントは、S2M DMA BBBの最大動作周波数 (Fmax) の向上を目的として、mSGDMA書き込みマスターと、CCI-P to Avalon-MMアダプターのホスト書き込みインターフェイス間に追加されています。このコンポーネントはまた、書き込み応答を書き込みマスターに転送します。書き込み同期の問題がないよう、ストリーミングDMAドライバーは、書き込み応答がすべて返されてからホストに割り込みを送信するようS2M DMA BBBに指示します。