cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

UltraScale/UltraScale+ GTYでAurora 8B10B IPの使用を可能にする方法

karnanl
Xilinx Employee
Xilinx Employee
5 0 581

こんにちは、

ザイリンクスでは、プロトコルエンコーディングのオーバーヘッドを最小限に抑えるために、ラインレートが6.6Gbpsを超える場合はAurora 64B66Bを使用することをお勧めしているため、ザイリンクスAurora 8B10Bは公式にGTYをサポートしていません。

64b / 66bエンコーディングのオーバーヘッドは、64ペイロードビットごとに2ビット、つまり3.125%です。これは、8ペイロードビットごとに2ビットを追加した8b / 10bエンコーディングスキームの25%オーバーヘッドを大幅に改善したものです。

 

このブログは、新しいFPGAデザインをGTYとAurora 8B10B I / Fを使用するレガシーシステムに接続する必要があるユーザーに非公式のアイデアを提供することを目的としています

手順フローの概要

Q00.png

 

1. “Generate Aurora 8B10B IP without GT”でIPを生成する.

 

ターゲットデバイスにGTHトランシーバーがない場合は、GTHトランシーバーを備えたデバイスを使用するようにVivadoプロジェクトを設定する必要があることに注意してください。そうでない場合、Aurora 8B10Bはグレー表示になり、IPカタログで選択できません。 (下記参照)

 

 

現在のプロジェクトデバイスにGTHトランシーバーがあることを確認できたら、Aurora 8B10B GUIを開き、システム要件に一致する構成を設定してください。IPを生成する前に、[Generate Aurora without GT]オプションが有効になっていることを確認してください。

Q02.png

2. Aurora 8B10B Example Designを開く

Q03.png

[Sources]ウィンドウで、IPを右クリックして[Open IP Example Design]を選択します

ヒント: 2つのサンプルデザインを2つの異なるディレクトリに生成してください。 GTの変更プロセスがはるかに簡単になります。

 

3.トランシーバー設定の変更(1) – Wizard編

これら2つのサンプルデザインを別のVivadoウィンドウで開いてください。
Q04.png

トランシーバー設定を変更してGTYをターゲットにし、以前にGTHに設定したすべてのトランシーバー設定と一致させます

GUIでIPを生成する前に、以下の設定が間違っていないかを再確認した上で、IPを生成してください。

  • Encoding, Data Width
  • Free-running and DRP clock frequency
  • Lane number設定
  • RX comma/channel bonding 設定
  • Optional ports

すべてのトランシーバー設定が問題ないことを確認した上で、GTYとして

を再生成してください。

Q05.png

4.トランシーバー設定の変更 (2) – RTL編

Linuxの「diff」コマンドなどのツールを使用してGTHとGTYのトップモジュールRTLを比較すると、RTLで何を変更する必要があるかがわかります。

例えば以下の図面では、私が生成したRTLの比較結果となります。
Q06.png

<component_name> _gtインスタンシエーションの次のポートを更新してgtyを反映します

      gthtxp    ⇒ gtytxp

      gthtxn    ⇒ gtytxn

      gthrxp    ⇒ gtyrxp

      gthrxn    ⇒ gtyrxn

Q07.png

既に気づいた方もいらっしゃると思いますが、DRP アドレスのビット幅はGTH (9 bit) と GTY (10 bit)は異なります。 このDRPアドレスの変更もお願いします。

Q08.png

5. IP変更の検証 (Verification of IP modification)

サンプルデザインを使用してクイックチェックを実行し、IPの変更が正しく行われたかどうかを確認してください。

(a) サンプルデザインのシミュレーション実行 :
Q09.png

lane_upとchannel_upの両方がアサートされていることを確認してください.
Q10.png

(b) Vivado Synthesisを実行する:

Q11.png

合成中にエラーや重大な警告が生成されていないことを確認します。

Q12.png

さて、ここまで作業を進めることができたら、変更したAurora 8B10B IPをプロジェクトに含める準備ができています。但し、このソリューションを設計に正式に適用する前に、十分な検証とテストを確実にするというユーザーの責任があります。ぜひお試しください。