AR# 44937

|

LogiCORE IP Ethernet 1000BASE-X PCS/PMA または SGMII v11.1 - 7 シリーズの初期 ES シリコンにコアをインプリメントする際に変更が必要

説明

7 シリーズの初期 ES シリコンに LogiCORE IP Ethernet 1000BASE-X PCS/PMA または SGMII v11.1 をインプリメントするには、いくつかの変更が必要です。7 Series FPGAs Transceivers Wizard を v1.5rev1 にアップデートし、アップデートされたリセット ロジックが必要になり、また、アップデートされたクロック ロジックが必要になる場合もあります。ハードウェアでテストする前に、次に示す変更をすべて適用してください。

ソリューション


最新の初期 ES GTX 属性にアップデートするために GTX Wizard v1.5rev1 (ISE13.4) を使用して GTX ラッパー ファイルを置き換える

1) 7 Series FPGAs Transceivers Wizard v1.5rev1 を実行します。(初期 ES シリコンのドロップダウン リストを表示させるには、7 Series FPGAs Transceivers Wizard をサポートするパーツおよびパッケージを選択してください。詳細は (ザイリンクス アンサー 43244) を参照してください。)

a) デバイスのエラスティック バッファーを使用せずに 1000BASE-X または SGMII を使用する場合 (GUI の 3 ページ目で [SGMII Capabilities] の下にある [10/100/1000 Mb/s (restricted tolerance for clocks) or 100/1000 Mb/s] が選択されている) :
i. 名前を「GTWIZARD」に設定します。
ii. シリコン バージョンに [Initial ES] を選択します。
iii. プロトコル テンプレートで「gigabit ethernet」を選択します。
b) デバイスのエラスティック バッファーを使用して SGMII を使用している場合 (GUI の 3 ページ目で [SGMII Capabilities] の下にある [10/100/1000 Mb/s (clock tolerance compliant with ethernet specification)] が選択されている)
i. 名前を「GTWIZARD」に設定します。
ii. シリコン バージョンに [Initial ES] を選択します。
iii. プロトコル テンプレートで「gigabit ethernet」を選択します。
iv. 2 ページ目で RXUSERCLK ソースに RXOUTCLK を選択します。
3 ページ目の RX COMMA 検出のセクションで [Two Byte Boundaries] を選択します。
vi. 4 ページ目のクロック コレクションのセクションで [Use Clock Correction] をオフにします。
2) 生成された gtwizard.v(hd) および gtwizard_gt.v(hd) ファイルを example_design/transceiver フォルダーにコピーします。
3) gtwizard.vhd/v および gtwizard_gt.vhd/v ファイルで次の作業を行います。
a)GTWIZARD にある次のポートをコメント アウトします。
i.GT0_RXBYTEISALIGNED_OUT
ii. GT0_RXBYTEREALIGN_OUT
iii. GT0_RXCOMMADET_OUT
iv. GT0_RXPCSRESET_IN
v. GT0_TXPCSRESET_IN
b)GTWIZARD_GT にある次のポートをコメント アウトします。
i.RXBYTEISALIGNED_OUT
ii.RXBYTEREALIGN_OUT
iii. RXCOMMADET_OUT
iv. RXPCSRESET_IN
v. TXPCSRESET_IN
c) GTXE2_CHANNEL で次のポートをオープンにしておきます。
i. RXBYTEISALIGNED
ii. RXBYTEREALIGN
iii. RXCOMMADET
d) これらの信号を GTXE2_CHANNEL のグランドにマップします。
i. RXPCSRESET
ii. TXPCSRESET
4) ファブリック バッファーと共に SGMII を使用しない場合は、transceiver.v/vhd ファイルで GTWIZARD ポート「GT0_RXOUTCLK_OUT」をコメント アウトします。

mmcm_locked 信号によりトランシーバーが駆動されるようラッパーをアップデート

1)core_name_block およびトランシーバーに入力ポート mmcm_locked を追加します。
2)core_name_example_design.v/vhd ファイルで次の作業を行います。
a) 信号 mmcm_locked を作成します。
b) userclk および userclk2 を生成するのに使用する MMCM の LOCKED ポートと core_name_block に追加した mmcm_locked 入力に信号 mmcm_locked を接続します。
3) transceiver.v/vhd ファイルで、mmcm_locked 信号により GT0_TXUSERRDY_IN および GT0_RXUSERRDY_IN を駆動します。 (これまでは TXUSERCLK/RXUSERCLK が cplllock により駆動されていました。)
4) core_name_block.v/vhd で、mmcm_locked をコア ネットリストの DCM_LOCKED 入力ポートにマップします。

コンフィギュレーション時のリセット要件 : (ザイリンクス アンサー 43482) (これらの変更は Ethernet BASE-X PCS/PMA または SGMII コアの v11.2 およびそれ以降のバージョンで含められています。)
1) サンプル デザインで次の作業を行います。
a.トランシーバーがリセットされるまで MMCM をリセットに保持して (mmcm_reset)、MMCM からのクロック生成をマスクします。
b.independent_clock_bufg をトランシーバーにパスします。
2) ブロック モジュールで次の作業を行います。
a. independent_clock_bufg をトランシーバーにパスします。
3) transceiver.v ファイルで次の作業を行います。
a. グローバル リセット (pmareset) 受信後に待機ロジックを追加します。
b. GT のリセット生成 (reset_pulse) 用のロジック
c. MMCM をリセット状態に保持するための Resetdone 信号
TXOUTCLK および RXOUTCLK ポートの制限事項を適用 : (ザイリンクス アンサー 43244)

1) デバイス エラスティック バッファーを使用せずに 1000BASE-X または SGMII を使用している場合 : GUI の 3 ページ目の [SGMII Capabilities] で [10/100/1000 Mb/s (restricted tolerance for clocks) or 100/1000 Mb/s] を選択。変更は不要です。
2) デバイス エラスティック バッファーを使用して SGMII を使用している場合 : GUI の 3 ページ目の [SGMII Capabilities] で [10/100/1000 Mb/s (clock tolerance compliant with ethernet specification)] を選択

TX 側には TXOUTCLK、RX 側には RXOUTCLK がコアで使用されます。両方のクロックが使用されていない場合は、TXOUTCLK の代わりに IBUFDS_GTXE2 を使用することができます。

必要な場合は 既知のトランシーバー ソフトウェア使用モデルの変更を反映させます。 (ザイリンクス アンサー 43339)

改訂履歴
2012/02/23/ - mmcm_locked により RX/TXPCSRESET ではなく RX/TXUSRRDY が駆動されることを示すようアップデート
2012/02/21 - 必要な変更の詳細を記述し、リセット ロジック用に mmcm_locked を使用するためアップデートを追加
2011/11/09 - 初版
AR# 44937
日付 05/19/2012
ステータス アクティブ
種類 既知の問題
IP
People Also Viewed