F-Tile Avalon® Streaming Intel® FPGA IP for PCI Express* デザイン例ユーザーガイド

ID 683372
日付 7/14/2022
Public
ドキュメント目次

2.3.1. パフォーマンス・デザイン例の機能の説明

  1. 指定したパラメーターを使用して生成されたF-Tile Avalon Streaming Hard IPのEndpointバリアント (DUT) です。このコンポーネントは、PCIeリンクのもう一方の端にあるルート・コンプレックス/スイッチと相互作用し、PCIeリンクからのデータをAvalon-STデータ形式に、またはその逆に変換します。
  2. PCIe Perf_ED (perf0) コンポーネントでは、スループット測定のために要求されたデータ・トラフィックを生成します。次のサブモジュールで構成されています。
    1. pioperf_multitlp_adapter (Avalon-ST Interface Adapter) モジュールは、Avalon-STインターフェイスの2セグメントデータをAvalon-STデータの2つの単一セグメントストリームに変換します。
    2. pioperf_rx_diverterモジュールは、メモリー書き込みまたはメモリー読み出しTLPをホストから転送し、完了TLPをそれぞれの宛先に転送して、さらに処理します。
    3. pioperf_rx_intf (RX Interface) モジュールは、pioperf_rx_diverterモジュールからのTLPヘッダーとデータをデコードします。また、リクエスターID、タグ、属性、tc、バイトカウントなど、完了データのTLPヘッダーを構築するために必要な情報を抽出し、これをpioperf_tx_intfに渡してさらに処理します。
    4. pioperf_tx_intf (TX Interface) モジュールは、pioperf_rx_intfモジュールとpioperf_dma_topモジュールからの要求をTLPに変換し、F-Tile Avalon Streaming Hard IPに送信します。TLPは、単純化された加重ラウンドロビン方式かつ次の優先順位方式の、完了TLP > メモリー読み出しTLP > メモリー書き込みTLPで送信されます。
    5. pioperf_dma_top (DMA_TOP) モジュールは、メモリー書き込み要求とメモリー読み出し要求を生成し、コントロール・レジスターの情報に基づいてそれらをpioperf_tx_intfモジュールに渡します。データの完全性を確保するために、すべてのメモリー読み出し要求は、タイムアウト前に完了データを期待するようにタグ付けされます。メモリー書き込みTLPとメモリー読み出しTLPのリリースによって、PCIeリンクのTXインターフェイスとRXインターフェイスでトラフィックが構築されます。システムの全体的なスループットを解析するために、スループット・カウンターが含まれています。
  3. F-Tile Reference and System PLL Clocks IP: このIPは、F-Tile PCIeインターフェイスの実装で、FGT PMAおよびSystem PLLのリファレンス・クロックをコンフィグレーションするために必要です。このIPからのクロックは論理接続です。これは、物理的にF-Tile Avalon-ST IP for PCI Express Hard IP内にあります。デザイン例レベルでは、クロック・ゲーティング要件はありません。PIOデザイン例のメインクロックは、500 MHzで動作するF-Tile Avalon-ST IP for PCI Express Hard IPのcoreclkout_hipから発生します。クロックはSystem PLLから発生します。このIPは、FGT PMAおよびSystem PLLのリファレンス・クロックをコンフィグレーションするための、F-Tile PCIeインターフェイスの実装に必要です。
  4. Reset Release IP: このIPは、デバイスが完全にユーザーモードに入るまで、制御回路をリセット状態に保持します。FPGAはINIT_DONE出力をアサートして、デバイスがユーザーモードであることを通知します。Reset Release IPは、内部INIT_DONE信号の反転バージョンを生成して、デザインに使用できるnINIT_DONE出力を作成します。nINIT_DONE信号は、デバイス全体がユーザーモードになるまでHighです。nINIT_DONEがアサート (Low) した後、すべてのロジックはユーザーモードになり、正常に動作します。nINIT_DONE信号は、次のいずれかの方法で使用できます。
    1. 外部または内部リセットをゲートする
    2. トランシーバーおよびI/O PLLへのリセット入力をゲートする
    3. エンベデッド・メモリー・ブロック、ステートマシン、シフトレジスターなどのデザインブロックの書き込みイネーブルをゲートする
    4. デザインでレジスターリセット入力ポートを同期的に駆動する
図 14. F-Tile Avalon-ST for PCI Express 1x16パフォーマンス・デザイン例用のプラットフォーム・デザイナーのシステムコンテンツ