AR# 62368

MIG 7 Series DDR3 のデザイン アドバイザリ - Vivado 2014.4 に含まれる MIG 7 Series v2.3 のキャリブレーション アップデートにより書き込みマージンが増加

説明

Vivado 2014.4 でリリースされた MIG 7 Series v2.3 の DDR3 キャリブレーション アルゴリズムには、使用可能な書き込みしマージンを改善する変更が含まれています。 

アップデートは、すべての MIG 7 Series v2.3 DDR3 デザインに含まれます。

このアンサーでは、アップデートの内容と、新規および既存の DDR3 システムでこのアップデートが推奨されるかどうかを説明します。

ソリューション

書き込みキャリブレーションの変更の詳細 :

書き込み DQS を書き込み DQ アイの中央に揃える操作は、これまでは Phaser_OUT タップの調整によりウィンドウ エッジを検出して実行されていました。 

プロセス変動の全範囲で、アルゴリズムが Phaser_OUT タップを理想的な位置 (中央) に配置しないため、書き込み DQS が中央から左または右にシフトします。 

新しいアルゴリズムでは、MMCM を使用して正確な位相調整を実行してウィンドウを判断し、書き込み DQS を書き込み DQ アイの真の中央に配置します。 
MMCM は追加されません。  ファブリック クロック PHY_Clk を作成するために MIG で生成されたデザインに既に含まれている MMCM が書き込みキャリブレーションにも使用されます。 
ただし、位相調整を実行するために新しい MMCM 出力が追加されており、追加の BUFG が必要です。

書き込みキャリブレーション ロジックへのこれらのアップデートにより、ハードウェアでキャリブレーションの完了にかかる時間が増加します。 

典型的なハードウェア キャリブレーション時間は、次のとおりです。

リリース

400MHz (4:1) でのキャリブレーション時間

800MHz (4:1) でのキャリブレーション時間

 

32 ビット

72 ビット

32 ビット

72 ビット

2014.1

1 秒未満

1 秒未満

1 秒未満

1 秒未満

2014.2*

1 秒未満

約 1 秒

1 秒未満

~1 秒

2014.4

4 秒未満

約 7 秒

2 秒未満

4 秒未満


*2014.2 には、読み出しキャリブレーション アルゴリズムへのアップデートが含まれます。

詳細は、 (ザイリンクス アンサー 59167) を参照してください。

高い周波数を使用すると、位相調整を完了するために必要な読み出しおよび書き込みが低い周波数の場合よりも短時間で完了するので、キャリブレーション時間は短くなります。

FAST モードを使用した場合のシミュレーション時間は、ほとんど影響を受けません。

MIG バージョン アップデートの推奨

すべての周波数での DDR3 インターフェイスで RTL が変更されています。 

新規デザインおよびまだプロダクションの段階ではないデザインでは、MIG 7 Series v2.3 にアップデートしてください。

システム テストを完了しており、書き込みマージン エラーのない既にプロダクションの段階であるシステムでは、アップデートは推奨されますが、必須ではありません。 

プロダクション サイクルでアップデートが可能である場合は、MIG 7 Series v2.3 を含めることをお勧めします。

書き込みマージンがデータ エラーの原因であるかどうかの判断

v2.3 より前の MIG デザインでデータ エラーが発生する場合は、キャリブレーション中に選択された中央タップにより書き込みマージンが小さいことが原因であることを確認する必要があります。

  1. すべての MIG PCB ガイドラインに厳密に準拠していること、そして IBIS シミュレーションを完了しておくことが必要です。
     
  2. データ エラーを解析し、書き込みエラーが発生しているかどうかを判断します。
    データ エラーの特定に関する詳細は、UG586 の DDR3 のデータ エラー デバッグに関するセクションを参照してください。
     
  3. MIG 7 Series v2.3 より前のバージョンでの OCLKDELAY キャリブレーション結果を解析します。
     
    1. rtl/phy/mig_7series_v2_1_ddr_phy_oclkdelay_cal.v からの dbg_phy_oclkdelay_cal[254:0]、oclkdelay_calib_done、および oclkdelay_calib_start を ILA に追加します。  
    2. ILA 波形をキャプチャし、トリガーが oclkdelay_calib_done に設定されている部分でリセットが正常に実行されているか (書き込みデータ エラーなし)、リセットでエラーが発生しているか (書き込みデータ エラー) を調べます。
    3. 正常な場合とエラーが発生した場合で検出されたエッジの数、エッジが検出された位置、最終 (中央) タップの配置された位置、最終 (中央) タップで移動したタップ数を比較します。

      関連信号 :
      1. dbg_phy_oclkdelay_cal[6*dqs_i+:6] = ocal_tap_cnt_r[dqs_i][5:0]
      2. dbg_phy_oclkdelay_cal[58]             = ocal_rise_edge1_found_timing
      3. dbg_phy_oclkdelay_cal[59]             = ocal_rise_edge2_found_timing
      4. dbg_phy_oclkdelay_cal[65:60]         = ocal_rise_edge1_taps
      5. dbg_phy_oclkdelay_cal[71:66]         = ocal_rise_edge2_taps
      6. dbg_phy_oclkdelay_cal[84:79]         = stg3_tap_cnt
      7. dbg_phy_oclkdelay_cal[219+:6]       = stg2_tap_cnt
      8. dbg_phy_oclkdelay_cal[225]            = ocal_fall_edge1_found
      9. dbg_phy_oclkdelay_cal[226]            = ocal_fall_edge2_found
      10. dbg_phy_oclkdelay_cal[232:227]      = ocal_fall_edge1_taps
      11. dbg_phy_oclkdelay_cal[238:233]      = ocal_fall_edge2_taps
      12. dbg_phy_oclkdelay_cal[244:239]      = ocal_rise_right_edge


      * エラーが発生するのは、OCLKDELAY キャリブレーション中に検出されたエッジが 1 つだけで、1 つの既知のタップ位置に基づいて中央タップが選択された場合であるのが一般的です。



追加情報 :
(ザイリンクス アンサー 59167) MIG 7 Series DDR3 のデザイン アドバイザリ - DIMM インターフェイスのデータ レート仕様の変更とコンポーネント インターフェイスのデータ レートに関するアドバイザリ
(ザイリンクス アンサー 60687) MIG 7 Series DDR3 - Vivado 2014.2 でリリースされた MIG 7 Series v2.1 のキャリブレーション アップデートにより、データ レートが 1333Mbps を超える場合に読み出しマージンが改善
(ザイリンクス アンサー 62615) MIG 7 Series DDR3 (IPI フローのみ) - IPI のアップグレード時に警告メッセージが表示される - MIG のクロッキング構造をアップデート

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

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

関連アンサー レコード

AR# 62368
日付 01/09/2015
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス
IP