UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 39492

LogiCORE IP XAUI - GTX トランシーバーの Delay Aligner のエラッタおよび回避策

説明

(Xilinx Answer 39430) に記載されている Virtex-6 GTX Delay Aligner のエラッタの内容は、Virtex-6 FPGA をターゲットとする場合の XAUI v9.2 以前のコアに影響します。

詳細は、エラッタ EN142 およびザイリンクス変更通知 XCN11009 を参照してください。

Virtex-6 デバイスの XAUI IP コアを使用しているデザインは、TX レーン間のスキューを最小限に抑えるために TX バッファーがバイパスされており、次の回避策をインプリメントする必要があります。
 
RX バッファーはバイパスされていないので、RX 側に変更を加える必要はありません。

この問題があると、データ エラーやリンク アップの問題などが発生します。

ISE 13.1 ソフトウェアでリリースされた XAUI v10.1 コアには、この問題の修正が含まれています。

LX75T、LX130T、LX195T、LX240T、HX250T、HX255T、または HX380T をターゲットとしている場合は、userclk および userclk2 に BUFG を使用し続けることが可能で (MMCM ソリューションも可能)、この問題を回避するには、下の回避策の手順 1 および 2 に従う必要があります。

LX365T、LX550T、SX315T、SX475T、または HX5565 をターゲットとしている場合は、userclk および userclk2 を駆動するのに MMCM が必要です。

この問題を回避するには、4 つの手順すべてに従う必要があります。

ソリューション

手順 1

XAUI v9.2 以前では、GTX 属性を変更して Delay Aligner をディスエーブルにする必要があります。

この問題を修正するには、<xaui_core_name>/example_design/gtx_wrapper.v[hd] ファイルを変更します。

POWER_SAVE[5:4] を変更して、その他すべてのビットはそのままにしておきます。

Verilog の場合の変更:

.POWER_SAVE(10'bxxxx10xxxx),


次のように変更します。

.POWER_SAVE(10'bxxxx11xxxx),



VHDL の場合の変更:

POWER_SAVE => "xxxx10xxxx",


次のように変更します。

POWER_SAVE => "xxxx11xxxx",



手順 2

POWER_SAVE 属性を変更すると、ISE 12.4、12.3、および 12.2 でソフトウェア エラーが発生します。


手順 3

LX365T、LX550T、SX315T、SX475T、または HX5565 をターゲットとしている場合は、userclk および userclk2 を駆動するのに MMCM が必要です。

Verilog の場合:

_example_design.v で次のように変更します。

a) clk156 の BUFG インスタンシエーションをコメントアウトします。

// BUFG clk156_bufg_i (
// .I(txoutclk),
// .O(clk156));

b) MMCM 接続用に新しいワイヤを追加します。

wire clkfbout_txoutclk;
wire clkfbin_txoutclk;
wire clk156_i;

c) フィードバック クロックおよび clk156 に MMCM と BUFG を追加します。

MMCM_BASE #(
.BANDWIDTH("HIGH"),
.CLKFBOUT_MULT_F(6.000),
.CLKFBOUT_PHASE(0.000),
.CLKIN1_PERIOD(6.400),
.CLKOUT0_DIVIDE_F(6.000),
.CLKOUT0_DUTY_CYCLE(0.5),
.CLKOUT0_PHASE(0.000),
.CLKOUT4_CASCADE("FALSE"),
.CLOCK_HOLD("FALSE"),
.DIVCLK_DIVIDE(1),
.REF_JITTER1(0.010),
.STARTUP_WAIT("FALSE")
) mmcm_txoutclk (
.CLKFBOUT(clkfbout_txoutclk),
.CLKFBOUTB(),
.CLKOUT0(clk156_i),
.LOCKED(),
.CLKFBIN(clkfbin_txoutclk),
.CLKIN1(txoutclk),
.PWRDWN(1'b0),
.RST(reset)
);

BUFG txoutclk_fb_buf (
.O(clkfbin_txoutclk),
.I(clkfbout_txoutclk)
);

BUFG clk156_bufg_i (
.I(clk156_i),
.O(clk156)
);


HVDL の場合:

_example_design.vhd で次のように変更します。

a) clk156 の BUFG インスタンシエーションをコメントアウトします。
 

-- -- Put system clocks on global clock routing
-- clk156_bufg_i : BUFG
-- port map (
-- I => txoutclk,
-- O => clk156);


b) 新しい信号名宣言を追加します。

signal clkfbout_txoutclk : std_logic;
signal clkfbin_txoutclk : std_logic;
signal clk156_i : std_logic;


c) フィードバック クロックおよび clk156 に MMCM と BUFG を追加します。

-- Clock management logic

mmcm_txoutclk : MMCM_BASE
generic map (
BANDWIDTH => "HIGH",
CLKFBOUT_MULT_F => 6.000,
CLKFBOUT_PHASE => 0.000,
CLKIN1_PERIOD => 6.400,
CLKOUT0_DIVIDE_F => 6.000,
CLKOUT0_DUTY_CYCLE => 0.5,
CLKOUT0_PHASE => 0.000,
CLKOUT4_CASCADE => FALSE,
CLOCK_HOLD => FALSE,
DIVCLK_DIVIDE => 1,
REF_JITTER1 => 0.010,
STARTUP_WAIT => FALSE )
port map (
CLKFBOUT => clkfbout_txoutclk,
CLKFBOUTB => open,
CLKOUT0 => clk156_i,
LOCKED => open,
CLKFBIN => clkfbin_txoutclk,
CLKIN1 => txoutclk,
PWRDWN => '0',
RST => reset
);

txoutclk_fb_buf : BUFG
port map
(O => clkfbin_txoutclk,
I => clkfbout_txoutclk);

clk156_bufg_i : BUFG
port map (
I => clk156_i,
O => clk156);



手順 4

MMCM を使用する場合に Delay Aligner の問題を修正するには、GTX の TXOUTCLK がパスに BUFG がない状態で直接 MMCM を駆動する必要があります。

デフォルトでは、ラッパーの TXOUTCLK が BUFG を介さずに直接 MMCM を駆動しています。

必要なのは、POWER_SAVE 属性を変更することだけです。

ただし、MMCM は MGT と同じ領域に制限されているので、MMCM をその領域から移動するために BUFG を追加しないでください。


各 GTX クワッドはクロック領域全体にまたがっていて、クロック領域ごとに使用可能な MMCM が 2 つあります。

使用する MMCM は、同じクロック領域に制約する必要があります。制約しない場合、BUFG が自動的に挿入されます。

これらのロケーションを判断するには、『Virtex-6 FPGA パッケージおよびピン配置仕様』 (UG365) を参照してください。

https://japan.xilinx.com/support/documentation/user_guides/ug365.pdf


MMCM を MGT のある領域から移動させるためにこのパスに BUFG を追加してラッパーを変更した場合は、追加した BUFG を削除し、MMCM を TXOUTCLK を供給する MGT と同じ領域に配置する必要があります。

改訂履歴

  • 2011/01/17 - 初版
  • 2011/01/24 - 大型のデバイスを使用した場合の MMCM の手順を追加

アンサー レコード リファレンス

関連アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
39430 Virtex-6 GTX トランシーバー - Delay Aligner のエラッタおよび回避策 N/A N/A
AR# 39492
日付 09/03/2019
ステータス アクティブ
種類 一般
IP
このページをブックマークに追加