インテル® Stratix® 10エンベデッド・メモリー ユーザーガイド

ID 683423
日付 12/24/2018
Public
ドキュメント目次

4.4. FIFO2 Intel FPGA IP

インテルで提供しているFIFO2 Intel FPGA IPコアは、FIFO Intel FPGA IPコアの代替ソリューションとして、広いデータ幅と非常に高い動作周波数 (Fmax) で動作するアプリケーションに使用して高いデータ帯域幅を実現します。

FIFO2 Intel FPGA IPコアのFIFO機能が主に適用されるのは、データ・バッファリング・アプリケーションです。これは、同期または非同期クロックドメインの先入れ先出しデータフローに準拠しています。

注: FIFO2 Intel FPGA IPコアにはFIFO Intel FPGA IPコアとの下位互換性がありません。
表 32.  FIFO Intel FPGA IPコアとFIFO2 Intel FPGA IPコアの違い
機能 Intel FPGA IPコア
FIFO FIFO2
リード・レイテンシー rdreq 信号のアサート後、0 - 1クロックサイクル。 rdreq 信号のアサート後、3 - 4クロックサイクル。
読み出し有効 r_empty 信号がLowのとき r_valid 信号がHighのとき
Show-aheadモード サポートあり サポートなし
深度 (D) と幅 (W) のコンフィグレーション ユーザーの要件による ハード・メモリー・ブロックの倍数のみ (M20Kの場合は32W x 512D、MLABの場合は20W x 32D)
出力データ初期状態 0 不明
フラッシング 不要 最低32の低速クロックサイクルのフラッシュが必要

読み出し操作の前に、アプリケーション・データはまず (部分的または完全に) FIFO2 Intel FPGA IPコアに書き込まれます。データ読み出し動作は、長い連続バーストまたはシングルクロックの読み出しになります。特定の書き込みまたは読み出しの制限はありませんが、レイテンシー発生のため、帯域幅の使用率の効率は、短い書き込みや読み出しに対して低下します。

FIFO2 Intel FPGA IPコアの読み出しインターフェイスが適しているのは、バックプレッシャーを実行しないアプリケーションや、下流に「カスケード」バッファーのあるアプリケーションです。

例 :

  • MAC RXユーザー・インターフェイス。通常バックプレッシャーをかけることはできず、常時読み出しと同等です。
  • MAX TX内部データパスと併用してNative PHY FIFOを強化します。これにより、FIFO読み出し動作の導出はNative PHY FIFOの部分的フルステータスから実行できます。

ユーザー・アプリケーションでは、FIFO2 Intel FPGA IPコアの読み出しインターフェイスへの接続を、直接外部の小さなSCFIFO (または類似のストレージバッファー) に対して行い、読み出しからデータへのレイテンシーをゼロに変更することができますが、Fmaxとリソースが犠牲になります。

実際には、すべてのクロックの動作は数百MHzで実行されます。これは、FIFO2 Intel FPGA IPコアは高度にパイプライン化され非常に高いFmaxで動作するのと、レイテンシーが長く低速クロックには適していないからです。