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