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

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

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

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

M2S DMA BBBストリーミング・インターフェイスは、SOP (start-of-packet)、EOP (end-of-packet) および空の信号を公開することでパケットの生成をサポートします。ホスト・アプリケーションは、パケット化されたデータを生成するよう、ストリーミングDMAドライバーにオプションで指示することができます。パケット化されたデータを有効にした場合、EOP信号がアサートされた際に有効な転送の、最後のバイト数を空の信号が伝達します。例えば、4100バイトのDMA転送 (パケットサポートあり) は、最初のビート中にSOPがアサートされ、64フルビート (各ビートは64バイト) のストリーミング・データを含みます。EOPがアサートされたデータ最後のビート中の空の信号は、64バイトのうち4バイトのみが有効であるため、60に設定されます。
図 3. M2S DMA BBB プラットフォーム・デザイナーシステム

M2S DMA BBB プラットフォーム・デザイナー systemのコンポーネントは、次の機能を実装しています。
  • M2S DMA BBB DFH—M2S DMA BBB用64ビット・デバイス・フィーチャー・ヘッダー (DFH) を格納します。ホストドライバーは、AFU DFHや使用されている各種BBBを検索しているハードウェアをスキャンし、ハードウェアを識別します。M2S DMA BBB DFHは、オフセット0x100で、次のDFHを指定するように設定されています。
  • mSGDMAディスパッチャ—ホストからBBBに送信されたディスクリプターをバッファリングします。
  • mSGDMA読み込みマスター—ディスパッチャーからコマンドを受信し、メモリーからデータを読み取り Avalon® -STストリームに変換します。ストリーミング・ポートから発信されるデータには、SOPやEOP、空の信号のストリーミング・サイド・バンド・シグナルを付随させることが可能です。64バイトの倍数以外のストリームをサポートする必要がある場合、ドライバーにパケット化されたデータの送信を要求する必要があります。よって、最後のビートサイズが64バイトではない場合、空の信号が、ダウンストリームのハードウェアに無効なバイトについて通知します。無効なバイトを含むことができるのは最後のビートのみで、他のビートサイズはすべて、 Avalon® -ST仕様で定義されている64バイトでなければなりません。
  • パイプライン・ブリッジ—このコンポーネントは、M2S DMA BBBの最大動作周波数 (Fmax) の向上を目的として、mSGDMAリードマスターとホスト/ローカルFPGAメモリー間に追加されています。ローカルFPGAメモリーへの接続にM2S DMA BBBを必要としない場合は、ご自身がデザインされたインターフェイスをエクスポートし、すべてのマスター入力をグランドさせてください。mSGDMAディスパッチャー・スレーブ・インターフェイスはすべて、0x100のアドレス範囲にわたるパイプライン・ブリッジに接続しています。