F-Tile JESD204C インテル® FPGA IPユーザーガイド

ID 691272
日付 4/26/2022
Public
ドキュメント目次

5.7. 確定的レイテンシー

確定的なレイテンシーの最適なパフォーマンスを実現するには、インテルは提供されているガイドラインに従うことをお勧めします。

JESD204C仕様 は、確定的なレイテンシーの最適なパフォーマンスを実現するための次の要件を示しています。
  • 拡張マルチブロックサイズの長さは、リンク全体で可能な最大遅延変動よりも大きくする必要があります。
  • リンクサイクルに関するRXバッファ遅延(RBD)の値は、リンク全体で可能な遅延よりも大きくする必要があります。

これらの2つの要件により、RBDは、RXエラスティックバッファーが解放される前にTXデータがRXバッファーに到達することを保証するのに十分な大きさであることが保証されます。 IPは、SYSREF 信号のアサーションでRXエラスティックバッファを解放します。遅延を減らすために、RXエラスティックバッファを早期に解放するようにIPを設定できます。

FタイルJESD204C TXおよびRXコアは、64ビットデータ幅のリンククロックで実行され、コンフィグレーション可能なEパラメーターをサポートします。これらの設定により、IPはフレームクロックドメインではなくリンククロックドメインでRBDリリースを調整できます。 Fパラメーターにより実効フレームクロック周期が変化します。

FタイルJESD204C IP、Subclass 1モードは、決定論的遅延をサポートします。Subclass 1の確定的なレイテンシーの調整には、次のガイドラインを使用してください。

  • JESD204C仕様では、SYSREFの左側にあるRBDリリースのチューニングについてのみ説明しています。FタイルJESD204C RXコアを使用すると、左側と右側の両方でRBDリリースを調整できます。 SYSREF チューニングがマルチフレームバッファに違反しない限り、チェックマークを付けます。
  • ADC/DACベンダーが異なれば、バリエーションも異なります。SYSREF オフセットは、システムのセットアップと最小化の精度によって異なります。
  • マルチポイント・リンクでは、そのマルチポイントリンク内のすべてのIPコアが同じSYSREF信号を使用して、各コアのLEMCカウンターが整列していることを確認する必要があります。
  • コンバーター・デバイスとFPGAデバイスは、確定的なレイテンシを実現する前に、常にSYSREF信号をサンプリングする必要があります。競合状態が発生した場合は、リンクの再初期化を実行して、すべてのトランザクションが、両方のデバイスのフリーランニングLEMCカウンターではなく、SYSREFでサンプリングされたLEMCカウンターに基づくようにします。
  • SYSREF エッジの検出時に、FタイルJESD204C TXコアは、次のLEMCカウンターが0のときにSHデータを送信します。その後、コアは、E番号のブロックが送信された後、拡張マルチブロック(EoEMB)の終了を示します。
  • FタイルJESD204C RXコアは、すべてのマルチブロックを格納するのに十分な大きさのRXエラスティック・バッファー(レーンごと)を実装します。RXエラスティック・バッファーは、単一のマルチブロックで1024の深さです。このバッファサイズにより、可能な限り早いデータ到着から最新のレーン到着、リリース機会までのレーンスキューの許容範囲が可能になります。最も早い到着データの前にリリース機会を設定しないでください。
  • FタイルJESD204C 仕様のリリースの機会 は、RXエラスティックバッファのフルサイズまたは少なくとも1つのLEMCサイクルのいずれか小さい方をカバーする範囲を示します。FタイルJESD204C RXコアの場合、リリースの機会はLEMCまたはRBDオフセットのいずれか(どちらか早い方)です。弾性バッファサイズの制限により、 FタイルJESD204C RXコアは、((E * 32)– rbd_count_early) と rbd_offset >1024のデルタがあります。
  • TXとRXで発生する遅延は繰り返し可能である必要があります。リセット時に、位相補償FIFO、ギアボックス、およびワードアライナから生じるRXSERDESにもレイテンシーの変動があります。
  • 送信パスから受信者パスへの累積遅延変動を許容できるRBDリリースを選択することにより、送信からリリースパスへの遅延の数は常に固定されます。これにより、決定論的なレイテンシーが作成されます。
  • RBDカウントは、最新の到着レーンがどのLEMCカウントであるかを反映します。RBDオフセットは、RBDが解放されるLEMCカウントを示すユーザー定義の値です。RBDが解放されると、すべてのレーンが整列されます。
  • RBDカウントは、複数のリセット時にわずかに異なる場合があります。考えられる最悪の値は、一方向の2リンククロックカウントです。 RBDカウントは、最新のレーンが到着したLEMCカウントを反映しているため、常に0からE * 32 –1までの任意の有効な値になります。
  • RBDオフセットはユーザー定義のレジスターです。特定のチューニングポイントの有効な値は0〜(E * 32)– 1である必要があります。ただし、(E * 32)– 1より大きい値を設定すると、これはRBDの即時リリースと解釈されます。 RBDは、最新のレーン到着をカウントします。あるいは、コントロール・レジスターとステータスレジスターは、RBDの即時リリースを示すために設定できる追加のビットを提供します。
  • 複数のレーンがある場合、RBDオフセットをRBDカウントから1を引いた値として設定することは不正であり、LEMCアライメント・エラーが発生します。この設定は内部バッファに違反しています。
  • たとえば、E=1のシステムでは; RBDカウントの有効な値は0〜31です。最初のリセット時に、報告されたRBDカウントが8の場合、RBDカウントの前後にRBDオフセット2リンククロックカウントを設定しないでください。これは、複数のリセットシナリオでは、RBDカウントが順方向または逆方向に変化するかどうかがわからないためです。実際のカウントについては、カウントをラップアラウンドする必要があります。実際のリリースポイントについて:
    • ((E * 32)– RBDオフセット)RBDカウントよりも大きい値は、LEMCティックの右側でのRBDリリースを意味します。
    • ((E * 32)– RBDオフセット)RBDカウントよりも小さい値は、LEMCティックの左側でRBDが解放されることを意味します。
  • 設定する正しいRBDオフセット値を特定したら、この値をマルチポイントリンク内のすべてのリンクに設定します。