• 検索結果がありません。

リード・データパス

キャリブレーション

この項では、メモリ・インタフェースに最適なクロック位相を探出するために、

シーケンスが実行するキャリブレーションについて説明します。

DDR/DDR2 SDRAMインタフェースのALTMEMPHYバリエーションはAFIおよび非AFI に対する同じキャリブレーション・プロセスがあります。

DDR/DDR2 SDRAM PHYのキャリブレーション・プロセスは、以下のステップで構成

されます。

図 5‒1. コントローラおよび外部メモリにインタフェースする ALTMEMPHY メガファン クション

外部 メモリ・

デバイス

ALTMEMPHY

ライト・

データパス

アドレス および コマンド・

データパス

クロック および リセット管理

シーケンサ リード・

データパス

メモリ・

コントローラ

ユーザー・

ロジック

PLL FPGA

DLL

第 5 章 : 機能の説明 ̶ALTMEMPHY 5–3 ブロック説明

「ステップ 2: ライト・トレーニング・パターン」

「ステップ 3:読み出し再同期化(キャプチャ)クロック位相」

「ステップ 4: リードおよびライト・データパス・タイミング」

「ステップ5: アドレスおよびコマンド・クロック・サイクル」

「ステップ6: ポストアンブル」

「ステップ 7: ユーザー・モードの準備」

f 各キャリブレーション・ステップについて詳しくは、「外部メモリ・インタフェー ス・ハンドブックVolume 4」の「Hardware Debugging」の項を参照してください。

図 5–2にキャリブレーション・フローを示します。

図 5‒2. キャリブレーション・フロー ̶DDR/DDR2 SDRAM 

メモリ・デバイス およびPHYの初期化

ユーザー・モード ライト・

トレーニング・パターン

読み出し再同期化 クロック位相

ユーザー・モードの準備 アドレスおよびコマンド・

クロック・サイクル

ポストアンブル リードおよびライト・

データパス・タイミング

VTトラッキング

5–4 第 5 章 : 機能の説明 ̶ALTMEMPHY ブロック説明

ステップ 1: メモリ・デバイスの初期化

このステップはDDRおよびDDR2 SDRAM仕様に従って、メモリ・デバイスを初期化

します。 初期化手順にはモード・レジスタとメモリ・デバイスODT設定(DDR2のみ)

の指定、およびメモリ・デバイスDLLの初期化が含まれています。「ステップ 7:

ユーザー・モードの準備」に戻されているように、キャリブレーションは一部の ユーザー指定のモード・レジスタ設定を無効にする必要があります。

ステップ 2: ライト・トレーニング・パターン

このステップでは、パターンは、以後のキャリブレーション・ステージで読み込ま れるようにメモリに書き込まれます。 DDR3 SDRAMデバイスへのトレース・レングス の一致はメモリ初期化の後にライト・キャプチャが動作することを意味します。 パ

ターンは0x30F5であり、そして別々の書き込まれたパターンで構成されています。

すべて0:‘b0000 - DDIO HighおよびLowビットは0に保持される

すべて1:‘b1111 - DDIO HighおよびLowビットは1に保持される

トグル: ‘b0101 - DDIO Highビットは0に保持され、DDIO Lowビットは1に保持され る

混在:‘b0011 - DDIO HighおよびLowビットはトグルする必要がある

1 このパターンが、非DQSのキャプチャ・ベース手法、例えばCyclone IIIデバイスの特 性動作に合わせるのに必要です。

このときにライト・レイテンシが未知であるので、混在パターンのロードが複雑で す。 2セットのライトおよびリード動作、(シングル・ピンの再同期化(キャプチャ)

クロック位相スイープ、「ステップ 3:読み出し再同期化(キャプチャ)クロック位 相」)は、正確に混在パターンをメモリに書き込むことが必要です。

1 メモリ・バンク0、ロウ0、およびカラム・アドレス0~55はキャリブレーション・

データを格納します。

ステップ 3: 読み出し再同期化(キャプチャ)クロック位相

このステップは、再同期化(またはキャプチャ)クロックの位相を調整して、最大 のマージンを提供する最適な位相を確認します。 DQSベース・キャプチャ手法の場 合、再同期化クロックはDQSキャプチャ・レジスタの出力をキャプチャします

(DQSはキャプチャ・クロックです)。非DQSキャプチャ・ベース手法では、キャプ チャ・クロックは入力DQピン・データをキャプチャします(DQS信号が未使用であ り、再同期化クロックはありません)。

データ有効ウィンドウに基づいて、再同期化(またはキャプチャ)クロック位相を キャリブレートするには、以下の位相スィープの度が必要です。

720° -すべてのハーフ・レート・インタフェースおよびフル・レートDQSベー

ス・キャプチャPHY用

360°-フル・レート非DQS・キャプチャPHY用

第 5 章 : 機能の説明 ̶ALTMEMPHY 5–5 ブロック説明

ステップ 4: リードおよびライト・データパス・タイミング

このステップでは、シーケンサはライト・コマンドおよびライト・データ間のキャ リブレーションされたライト・レイテンシ(ctl_wlat信号)を計算します。 また、

シーケンサはリード・コマンドおよび有効なリード・データの問題の間のキャリブ レーションされたライト・レイテンシ(ctl_rlat信号)も計算します。 リードおよ びライト・レイテンシの両方はコントローラへの出力です。 リード・レイテンシの通 知に加えて、コントローラがリード・コマンドを発行およびリード・データの返送 の間の遅延にシーケンサはリード・データ有効信号をキャリブレーションします。 コ ントローラは、リード・データの有効な時間を決定するのに通知されるリード・レ イテンシの代わりに、リード・データ有効な信号を使用できます。

ステップ 5: アドレスおよびコマンド・クロック・サイクル

また、ハーフ・レート・インタフェースの場合、このステップはアドレスおよびコ マンド・パスからの遅延の追加メモリ・クロック・サイクルをオプションで追加し

ます。 この遅延はコントローラ・クロック・ドメインで与えられるメモリ・コマンド

にライト・データをアラインメントします。 この追加遅延が必要な場合は、このス テップはキャリブレーション(「ステップ 2: ライト・トレーニング・パターン」~

「ステップ 4: リードおよびライト・データパス・タイミング」) を再度実行して、新 しい設定にキャリブレーションします。

ステップ 6: ポストアンブル

このステップはポストアンブル・パスの正しいクロック・サイクルを設定します。

DQS信号上のポストアンブル・グリッチのために、ポストアンブル・パスの目的は DQS上のオーバーライドを通して誤ったDQデータ・キャプチャを除去します。 この ステップはポストアンブル・イネーブル(オーバライド)信号の正しいクロック・

サイクル・タイミングを確認します。

1 ポストアンブルはDQSベースのキャプチャ手法にのみ必要です。

ステップ 7: ユーザー・モードの準備

このステップでは、PHYはユーザー・モード・レジスタの設定を適用して、周期的 なVTトラッキングを実行します。

VT トラッキング

VTトラッキングは、キャリブレーション時に達成された再同期化またはキャプ チャ・クロックとデータ有効ウィンドウ間の関係を維持するために、電圧および温 度変動を追跡するバックグラウンド・プロセスです。

データ・キャリブレーション位相が完了すると、シーケンサは128 msごとに模擬 キャリブレーション・シーケンサを発行します。

模擬パスは、最初のキャリブレーション時に測定クロック(measure_clkが

ALTMEMPHYはフル・レート・デザインまたはハーフ・レート・デザインかに応じ

て、サフィックが_1xまたは_2x)を使用してサンプリングされます。 サンプリン グされた値はシーケンサで格納されます。 サンプル値が格納されると、シーケンサは PLLリコンフィギュレーション・ロジックを使用して測定クロックの位相を1 VCO位 相タップだけシフトします。次にコントロール・シーケンサは、新しい模擬パスの

5–6 第 5 章 : 機能の説明 ̶ALTMEMPHY ブロック説明

クロック位相のサンプリングした値を格納します。 このシーケンスは、すべての模擬 パス・クロック位相のステップがスィープされるまで継続されます。コントロール・

シーケンサは、すべての模擬パスのサンプル値を格納すると、模擬パス波形のHigh 期間の中央に対応する位相を計算します。 このリファレンス・模擬パス・サンプリン グ位相は、VTトラッキング位相時に使用されます。

ユーザー・モードでは、シーケンサはトラッキング・キャリブレーションの説明で 定義されるように、周期的にトラッキングを実行します。シーケンサは、トラッキ ング・キャリブレーション動作の終了時に最新の最適なトラッキング位相と基準サ ンプリング位相を比較します。 サンプリング位相が一致しない場合、模擬パス遅延は 電圧および温度変動に伴って変化しています。

シーケンサが模擬パスの基準サンプリング位相および最新サンプリング位相が一致 しないことを検出すると、シーケンサはPLLリコンフィギュレーション・ロジック を使用して、再同期化クロックの位相をVCOタップだけ同じ方向に変化させます。

これにより、トラッキング・プロセスは、電圧および温度が経時変化してもデータ・

トラッキング・キャリブレーション中にほぼ最適なキャプチャ・クロック位相設定 を維持することができます。

再同期化またはキャプチャ・クロックとデータ有効ウィンドウの関係は、VTの変動 による模擬パスの変動を測定し、同じ変動を再同期化クロックに適用することに よって維持されます。

模擬パス

模擬パスは、往復遅延の要素のFPGAを模擬するのに使用されます。これによって、

キャリブレーション・シーケンスは、ALTMEMPHYメガファンクションの動作を中断 させずに、メモリのリードおよびライト・トランザクション時のVTの変化に起因す る遅延変動を追跡できます。

模擬パスに関する仮定は、FPGA外部の往復遅延パスにおけるVTの変動は、

MegaWizard Plug-In Managerに入力されるボード・スキューおよびメモリ・パラメー

タで考慮されるということです。 書き込み方向の場合、メモリ・デバイスのVTの変 動はタイミング解析で考慮されます。

図 5–3にArria GX、Cyclone III、Stratix II、およびStratix II GXデバイスにおける、ク ロック出力からメモリ、FPGAのパッドまでの遅延、および入力DQSパッドから FPGAコアのレジスタまでの遅延を模擬する模擬パスを示します。シーケンサは、ト ラッキング動作中に測定クロックの位相を変化させることによって模擬パスの遅延 を測定します。 模擬パスで遅延が変化すると、往復遅延に対応する変化が生じ、それ に応じて再同期化またはキャプチャ・クロックの位相が調整されます。

1 Arria II GX、Stratix IIIおよびStratix IVデバイスの模擬パスは、図 5–3に似ています。唯 一の違いは、mem_clk[0]ピンはDDIOレジスタで生成される;mem_clk_n[0]は 信号スプリッタで生成されます。