AR# 52123

MIG 7 Series DDR3/DDR2 - 2:1 コアを使用すると、PRBS リード レベリングでキャリブレーション エラーが発生する

説明


問題のあったバージョン : MIG v1.7
修正されたバージョン : (ザイリンクス アンサー 45195) 参照

注記 : このアンサーおよび含まれるパッチは、(ザイリンクス アンサー 53420) に置き換えられています。このアンサーを参照してください。

2:1 コントローラーをターゲットにしている場合、キャリブレーションの最終ステージである PRBS リード レベリング中に、MIG 7 Series DDR3/DDR2 デザインにエラーが発生します。

ソリューション


これは、2:1 動作用の RTL コードにおけるエラーが原因で発生します。回避策は次のとおりです。

PRBS リード レベリングのエラー フラグはデバッグ信号に含まれていません。PRBS リードレベリング中にキャリブレーション エラーが発生したかどうかを判断するには、dbg_rdlvl_done[0]=1 および init_calib_complete=0 となっていることを確認します。これは、PRBS リード レベリングの前のステージ、つまりリード レベリング 1 の前のステージが完了していることを示します。PRBS キャリブレーションは最終ステージであるため、ここでエラーが発生したことがわかります。

この問題を回避するには、次の手順に従います。

1. user_design/rtl/phy/mig_7series_v1_7_ddr_phy_prbs_rdlvl.v モジュールを開き、414 行目を検索します。

end else if (mux_rd_valid_r) begin //Needs to be updated to rd_valid_r1
compare_err_r0 <= #TCQ (mux_rd_rise0_r2 !== compare_data_r0);
compare_err_f0 <= #TCQ (mux_rd_fall0_r2 !== compare_data_f0);
compare_err_r1 <= #TCQ (mux_rd_rise1_r2 !== compare_data_r1);
compare_err_f1 <= #TCQ (mux_rd_fall1_r2 !== compare_data_f1);
compare_err <= #TCQ (compare_err_r0 | compare_err_f0 |
compare_err_r1 | compare_err_f1);

2. 414 行目の「mux_rd_valid_r」を「414 with rd_valid_r1」に置き換えます。

3. デザインを再インプリメントします。これで、PRBS キャリブレーションは問題なく完了します。

改訂履歴
2012/10/16 - 初版
2012/12/11 - 若干の変更
AR# 52123
日付 12/19/2012
ステータス アクティブ
種類 既知の問題
デバイス
IP