AR# 32164

Virtex-5 GTX RocketIO - CLK_COR_ADJ_LEN = 1 または 3 の場合、非同期動作中にデータ エラーが発生する

説明

Virtex-5 GTX トランシーバーのクロック コレクション機能を使用すると、クロック コレクション シーケンスがスキップまたは追加されたときにレシーバーでデータが破損することがあります。クロック コレクション機能の詳細は、『Virtex-5 FPGA RocketIO GTX トランシーバー ユーザー ガイド』 (UG198) を参照してください。

この問題は、次の条件がすべて揃うと発生します。

  • 非同期動作: Virtex-5 GTX トランシーバーのローカル基準クロックが最遠のトランシーバー以外のオシレーターで駆動されている場合。これによりトランシーバーの動作周波数間に PPM オフセットが発生し、クロック コレクションで定期的にクロック コレクション シーケンスをスキップしたり追加したりすることが必要となります。また、これは Virtex-5 GTX トランシーバーの RXUSRCLK および RXUSRCLK2 ポートが RXRECCLK ポートからではなく、ローカル オシレーターから派生していることも示します。
  • クロック コレクションがイネーブル: CLK_CORRECT_USE_0/1 属性が TRUE に設定されている場合。
  • クロック コレクション シーケンスの長さが 1 または 3 バイト: CLK_COR_ADJ_LEN_0/1 属性が 1 または 3 に設定されている場合。

上記の条件がすべて満たされる場合、Virtex-5 GTX トランシーバーのクロック コレクション機能をディスエーブルにする必要があります。このアンサーでは、可能な回避策を示します。

ソリューション

アプリケーションで可能な場合、次のいずれかの回避策をインプリメントします。

  • 同期クロック供給を使用します。
  • 2 バイトまたは 4 バイトのクロック コレクション シーケンスに変換します。

レイアウトまたはプロトコルの制限によりこれらの回避策を適用できない場合は、次のサイトから入手可能なファブリック クロック コレクション モジュールをユーザー アプリケーションでインプリメントする必要があります。

https://japan.xilinx.com/member/forms/download/design-license.html?cid=115636&filename=xtp037.zip

このブロックをインスタンシエートする手順とファブリック使用率の予測は、次のサイトから『Virtex-5 FPGA RocketIO GTX トランシーバー クロック コレクション モジュール』 (XTP037) を参照してください。

https://japan.xilinx.com/support/documentation/sw_manuals/xtp037.pdf

この問題の影響を受ける IP は、次のアンサーを参照してください。

この問題が発生する可能性のあるその他のプロトコル:

  • Infiniband
  • PCIe Gen2

FAQ:

質問: Aurora はこの問題の影響を受けますか。

回答: いいえ、Aurora では 2 バイト クロック コレクション シーケンスが使用されています。

質問: GTP はこの問題の影響を受けますか。

回答: いいえ、GTP では異なるクロック シーケンス回路が使用されており、この問題は発生しません。

質問: Virtex-6 GTX はこの問題の影響を受けますか。

回答: いいえ、GTX ではこの問題は発生しません。

質問: この問題の影響を受ける IP はいつアップデートされますか。

回答: 各ザイリンクス IP については、前述のアンサーを参照してください。RocketIO Wizard はファブリック モジュールを使用する回避策を適用して 11.2 でアップデートされ、必要に応じてプロトコル テンプレートに属性の変更が適用される予定です。

AR# 32164
日付 02/28/2017
ステータス アクティブ
種類 一般
デバイス 詳細 概略
IP