AR# 56057

Virtex-7 FPGA Gen3 Integrated Block for PCI Express v1.4 [Vivado 2012.4] - コンフィギュレーション読み出しリクエストに対しコアが間違ったデバイス ID を返す可能性がある

説明

問題の発生したバージョン: v1.4
修正バージョンおよびその他の既知の問題 : (ザイリンクス アンサー 47441) を参照

Virtex-7 FPGA Gen3 Integrated Block for PCI Express v1.4 コアでコンフィギュレーション読み出しリクエストがあった場合、コアが間違ったデバイス ID を返す可能性があります。

ソリューション

pcie_init_ctrl_7vx.v からの次のリセット信号にグリッチが発生する可能性があり、そうするとコアが間違ったデバイス ID を返すことがあります。

reset_n_o           
pipe_reset_n_o      
mgmt_reset_n_o      
mgmt_sticky_reset_n_o

この問題を回避するには、 pcie_init_ctrl_7vx.v を次のように変更します。

変更前 :

  assign reset_n_o                                = reg_reset_n_o;
  assign pipe_reset_n_o                     = reg_pipe_reset_n_o;
  assign mgmt_reset_n_o                  = reg_mgmt_reset_n_o;
  assign mgmt_sticky_reset_n_o      = reg_mgmt_sticky_reset_n_o
変更後 :
  reg                 regff_mgmt_reset_n_o = 1'b0;
  reg                 regff_mgmt_sticky_reset_n_o = 1'b0;
  reg                 regff_reset_n_o = 1'b0;
  reg                 regff_pipe_reset_n_o = 1'b0;
 

  // Register signals
  always @(posedge clk_i) begin
    regff_mgmt_reset_n_o                 <= reg_mgmt_reset_n_o;
    regff_mgmt_sticky_reset_n_o    <= reg_mgmt_sticky_reset_n_o;
    regff_pipe_reset_n_o                   <= reg_pipe_reset_n_o;
    regff_reset_n_o                             <= reg_reset_n_o;
   end
 
  assign reset_n_o                             = regff_reset_n_o;
  assign pipe_reset_n_o                   = regff_pipe_reset_n_o;
  assign mgmt_reset_n_o                = regff_mgmt_reset_n_o;
  assign mgmt_sticky_reset_n_o   = regff_mgmt_sticky_reset_n_o;

注記 : 「問題の発生したバージョン」は、問題が最初に発見されたバージョンを示します。問題はそれより以前のバージョンでも発生していた可能性がありますが、以前のバージョンではそれを検証するテストは実行されていません。

改訂履歴
2013/05/18 - 初版

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

マスター アンサー レコード

AR# 56057
日付 05/21/2013
ステータス アクティブ
種類 既知の問題
ツール
IP