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# 62770

7 Series Integrated Block for PCI Express / AXI Bridge for PCI Express (Vivado 2013.3 - Vivado 2014.3) のデザイン アドバイザリ - GTP デバイスでのリンク トレーニングの問題

説明

GTP デバイスでの PCIe リンク トレーニングでエラーが発生することがあります。

この問題は、Vivado 2013.3 ~ 2014.3 で生成された次のコアに影響します。

  • 7 Series Integrated Block for PCI Express
  • AXI Bridge for PCI Express

影響を受けるデバイス :

  • すべての Artix-7  
  • Zynq Z-7015  




ソリューション

(ザイリンクス アンサー 53561) および (ザイリンクス アンサー 53779) に説明されているように、GTP デバイスには特定の RX リセット シーケンスがあります。

この要件は、Vivado 2013.2 までで生成されるラッパーには正しく適用されていました。

Vivado 2013.3 では、DRP クロックが 125MHz から 62.5MHz に変更されています。

この変更により、pipe_reset モジュール (125MHz で動作) と drp モジュール (下にリストするコア コンフィギュレーションでは 62.5MHz で動作) の間に同期の問題が発生します。

この問題では、上記のアンサーで説明されている RX リセット シーケンスが本質的にバイパスされてしまい、リンク トレーニングの問題が発生します。

  • Gen1 - x1
  • Gen2 - x1
  • Gen1 - x2
この問題を解決するには、*pipe_clock.v ファイルを次のように変更します。

この変更が必要なのは上記のコア コンフィギュレーションのみで、ほかのコンフィギュレーションでは問題は発生しないので、変更は必要ありません。

変更前 :



//---------- Generate DCLK Buffer ----------------------------------------------
generate if (PCIE_USERCLK2_FREQ <= 3)
    //---------- Disable DCLK Buffer -----------------------
    begin : dclk_i
    assign CLK_DCLK = userclk2_1;                       // always less than 125Mhz
    end
else
    begin : dclk_i_bufg
    //---------- DCLK Buffer -------------------------------
    BUFG dclk_i
    (
        //---------- Input ---------------------------------
        .I                          (clk_125mhz),
        //---------- Output --------------------------------
        .O                          (CLK_DCLK)
    );
    end
endgenerate


変更後 :


//---------- Generate DCLK Buffer ----------------------------------------------
generate if (PCIE_LINK_SPEED != 1)

    begin : dclk_i_bufg
    //---------- DCLK Buffer -------------------------------
    BUFG dclk_i
    (
        //---------- Input ---------------------------------
        .I                          (clk_125mhz),
        //---------- Output --------------------------------
        .O                          (CLK_DCLK)
    );
    end

else

    //---------- Disable DCLK Buffer -----------------------
    begin : dclk_i
    assign CLK_DCLK = clk_125mhz_buf;                      
    end  
endgenerate


この問題は、Vivado 2014.4 リリースで修正される予定です。

改訂履歴
2014/11/24 - 初版

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

関連アンサー レコード

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
53561 Artix-7 FPGA GTP トランシーバーのデザイン アドバイザリ: プロダクション シリコンの RX リセット シーケンス要件 N/A N/A
AR# 62770
日付 11/20/2014
ステータス アクティブ
種類 デザイン アドバイザリ
IP
  • 7 Series Integrated Block for PCI Express (PCIe)
  • AXI PCI Express (PCIe)
このページをブックマークに追加