AR# 51687

MIG 7 Series DDR3/DDR2 のデザイン アドバイザリ - XADC ブロックを使用した温度モニター キャリブレーションを v1.7 のすべての DDR3/DDR2 デザインに追加 (ISE 14.3/Vivado 2012.3)

説明

ISE 14.3/Vivado 2012.3 デザイン ツールに含まれる MIG v1.7 から、温度が変動した場合に読み出しデータ ウィンドウに対して DQS の中央アライメントを保持するための温度モニター システムが DDR3、DDR3L、DDR2 デザインに含まれています。このアンサーは、『7 シリーズ FPGA メモリ インターフェイス ソリューション ユーザー ガイド (AXI)』 (UG586) の「DDR3 および DDR2 メモリ インターフェイス ソリューション」→「コアのアーキテクチャ」→「PHY」に記載されている情報を捕捉するものです。

注記 : このアンサーはザイリンクス MIG ソリューション センター (ザイリンクス アンサー 34243) の一部です。ザイリンクス MIG ソリューション センターには、MIG に関する質問を解決するのに役立つ情報が記載されています。MIG を含むデザインを新しく作成する場合、または問題をトラブルシュートする場合は、このザイリンクス MIG ソリューション センターから情報を入手してください。

ソリューション

概要

温度モニター キャリブレーションは、7 シリーズ XADC モジュールを利用します。MIG 7 Series デザインは、user_design/rtl/clocking/mig_7series_v1_x_tempmon.v モジュール内の XADC ブロックをインスタンシエートし、コンフィギュレーション可能な間隔でポーリングを実行します。 

XADC は現在の温度を出力し、MIG デザインでこの情報を使用して必要に応じて DQS と読み出しデータ ウィンドウのアライメントを調整します。

XADC 温度を読み出し、必要に応じて調整する RTL は、user_design/rtl/phy/mig_7series_v1_x_ddr_phy_tempmon.v モジュールにあります。 

リフレッシュまたは ZQ Short キャリブレーションが DRAM に送信され、保留になっているすべてのトランザクションが DQ バスからクリアされると、メモリ コントローラーがイネーブル信号 (tempmon_sample_en) を mig_7series_v1_x_ddr_phy_tempmon.v モジュールに送信します。 

MIG 7 Series キャリブレーションが完了した後、ベースラインを確立するために初期温度が読み出されます。 

この後イネーブル信号が送信されるたびに、このベースライン温度と現在の温度が比較されます。 

温度の変動がしきい値を超えると、DQS と読み出しウィンドウのアライメントのアップデート プロセスが開始し、温度変動を緩和するために PHASER_IN ファイン遅延がモジュールによって調整され、新たなベースライン温度が設定されます。 

このプロセスは、標準操作中継続して実行されます。 

10 マイクロ秒ごとに XADC ブロックがポーリングされて温度が読み出され、リフレッシュおよび ZQ キャリブレーション中にメモリ コントローラーで必要なアップデートが実行されます。

サポートされている周波数範囲全体で温度モニター キャリブレーションが使用されます。 

これらの変更による MIG 7 Series DDR3/DDR2 デザインのパフォーマンス仕様への影響または変更はありません。

XADC を使用していないデザイン

現在 XADC ブロックを使用していないデザインでは、v1.7 の MIG 7 Series により、メモリ コントローラー デザインに自動的に XADC ブロックがインスタンシエートされます。MIG のカスタマイズ ウィンドウの [FPGA Options] ページで、[XADC Instantiation] オプションが [Enabled] (デフォルト) に設定されていることを確認してください。また、下の「XADC ボード セットアップおよび MIG の使用法」セクションの要件も満たす必要があります。

XADC を使用しているデザイン

7 シリーズ デバイスには、XADC は 1 つしかありません。XADC ブロックを既に使用しているデザインでは、ユーザー デザインでブロックを使用しながら、MIG 7 Series コードに温度を定期的に供給できます。デザインでの XADC の使用は、次のようになっている必要があります。

  • XADC Wizard で [Enable DRP] (ダイナミック リコンフィギュレーション ポート) および [Enable DCLK] をオンにする必要があります。これらをオンにすると、温度をサンプリングする機能がオンになります。MIG 7 Series の温度モニター システムで必要な XADC オプションはこれだけです。その他すべてのオプションは、ユーザー デザインでの必要に応じて設定してください。
  • DADDR 7b0 からの 1 ~ 10 マイクロ秒ごとの温度のポーリングを含めます。
  • DO[15:0] に対するポーリングでリードバックされた温度の上位 12 ビットを MIG コアに供給します。温度は、MIG 7 シリーズ DDR3 IP に対して非同期に入力できます。


XADC の使用の詳細は、『7 シリーズ FPGA XADC 12 ビット 1MSPS デュアル アナログ - デジタル コンバーター ユーザー ガイド』を参照してください。

生成された MIG 7 Series コアで XADC のインスタンシエーションをディスエーブルにするには、[XADC Instantiation] オプションを [Disabled] に設定します。このオプションは、MIG 7 Series の [FPGA Options] ページにあります。XADC インスタンシエーションをオフにすると、最上位入力ポート device_temp_i[11:0] が作成されます。DRP ポート DO の 上位 12 ビットを、変換せずにこの入力ポートに接続する必要があります。Vivado 2014.1 以降では、XADC で Averaging がイネーブルになっているので、MIG で 1 ~ 116uS での温度供給がサポートされています。以前のバージョンでは、1 ~ 10uS の更新レートが使用されていました。

MIG 2014.1 以降での XADC のコンフィギュレーションは次のとおりです。
    キャリブレーションがイネーブルの連続シーケンス モード
    キャリブレーション係数をイネーブル
    キャリブレーションの Averaging をイネーブル
    温度チャネルに対して Averaging =16 およびイネーブル
    MIG コンフィギュレーション温度計測更新時間 : 約 116us

注記 : MIG 7 Series で XADC ブロックのインスタンシエーションをディスエーブルにした場合、ブロックの現在の使用方法が保持されるだけです。温度モニター キャリブレーションの使用をディスエーブルためのものではありません。MIG 7 Series の DDR3/DDR2 デザインでは、DQS を読み出しデータ ウィンドウの中央に保持するために XADC ブロックと温度モニター キャリブレーションが必要です。

EDK における DDRX コアの XADC の使用

EDK で DDRX コアを生成する場合、MIG 7 Series の [XADC Instantiation] オプションは選択できません。生成されたデザインに XADC ブロックがインスタンシエートされるかどうかは、最上位の device_temp_i 入力ポートが接続されているかどうかによって決まります。詳細は、『7 シリーズ FPGA メモリ インターフェイス ソリューション ユーザー ガイド』 (UG586) を参照してください。

XADC ボード設定および MIG の使用

XADC のガイドラインにすべて従っていれば、MIG 7 Series IP でブロックを利用できます。VREFP/N ピンが XADC でサポートされているいずれかのオプションで接続されていれば、MIG で XADC を追加するか、既にデザインに含まれるものを使用できます。

  • 外部基準電源に接続されている。
    注記 : Vccadc に適切に電源を供給する必要があります。『7 シリーズ FPGA XADC 12 ビット 1MSPS デュアル アナログ - デジタル コンバーター ユーザー ガイド』を参照してください。
  • XADC で指定されているようにフェライト ビーズを介してグランド接続されている。
    注記 : Vccadc に適切に電源を供給する必要があります。『7 シリーズ FPGA XADC 12 ビット 1MSPS デュアル アナログ - デジタル コンバーター ユーザー ガイド』を参照してください。
  • ボードに直接グランド接続されている。
    注記 : このオプションは、XADC が MIG 専用に使用される場合にのみ実行可能です。 MIG 温度補正で必要な精度により、これで十分です。VREFP/N および GNDADC がボードに直接グランド接続される場合、Vccadc に電源フィルターは必要なく、直接 Vccaux に接続できます。

PHY 専用デザインでの注記

温度を読み出し、必要に応じて PHASER_IN ファイン遅延を調整するため、MIG 7 Series コントローラーは mig_7series_v1_x_ddr_phy_tempmon.v モジュールにイネーブル信号を送信します。カスタム コントローラーを使用しているデザインでは、このイネーブルを送信する必要があります。MIG 7 Series コントローラーと同様に、リフレッシュおよび ZQ キャリブレーション中にイネーブルが送信されるようにすることを推奨します。PHY 専用サポートおよび使用法は、(ザイリンクス アンサー 51204) を参照してください。

その他の情報

  • 温度モニター システムは、温度が変動した場合に DQS を読み出しデータ ウィンドウの中央に保持するために使用されます。これは、Phaser_IN 内で実行されるダイナミック アライメントとは別です。ダイナミック アライメントには、アイドル中および連続した書き込みコマンド中に定期的に読み出しが必要です。 定期的な読み出しは、Phaser_IN のアライメントを保持し、読み出しを適切にキャプチャできるようにするために必要です。詳細は、(ザイリンクス アンサー 43344) を参照してください。
  • 温度モニター回路が温度の変動に応じて Phaser_IN タップをアップデートする動作をシミュレーションする方法は、(ザイリンクス アンサー 52523) を参照してください。

改訂履歴
2014/04/16 - MIG 2014.1 XADC アップデート情報を含めて更新
2013/03/06 - EDK 特定の情報を追加
2012/10/23 - 初版

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

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

Answer Number アンサータイトル 問題の発生したバージョン 修正バージョン
51954 MIG 7 Series DDR2/DDR3 - PHY の初期化およびキャリブレーション N/A N/A

関連アンサー レコード

AR# 51687
日付 04/17/2014
ステータス アクティブ
種類 デザイン アドバイザリ
デバイス
IP