EMI_DG_004-4.1
© 2012 年 Altera Corporation. All rights reserved. ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS and STRATIX words and logos are trademarks of Altera Corporation and registered in the U.S. Patent and Trademark Office and in other countries. All other words and logos identified as trademarks or service marks are the property of their respective holders as described at www.altera.com/common/legal.html. Altera warrants performance of its semiconductor products to current specifications in accordance with Altera's standard warranty, but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use of any information, product, or service
ISO 9001:2008 Registered
デザイン・ガイドライン
この章では、システムのシグナル・インテグリティを向上させる方法についてのガ イドライン、および DDR2 または DDR3 SDRAM インタフェースをシステム上に正し く実装するためのレイアウト・ガイドラインを示します。 DDR3 SDRAM は、既存の DDR2 SDRAM 規格と部分的に下位互換性を維持しながら、 複数の On-Die Termination(ODT)選択機能および出力ドライバ・インピーダンスのコ ントロール機能を備え、消費電力、データ帯域幅、信号品質が改善されている第 3 世代の DDR SDRAM ファミリです。 この章では、レシーバでの信号品質に影響を及ぼす、以下の主な要因について説明 します。 ■ レべリングおよびダイナミック ODT ■ 適切な終端の使用 ■ 出力ドライバのドライブ強度設定 ■ レシーバでの負荷 ■ レイアウト・ガイドライン メモリ・インタフェースの性能が向上させると、送信された信号品質が低い場合、 レシーバでの全体的なデータ有効マージンが大幅に減少する可能性があるため、 ボード設計者はレシーバでの信号品質に注意する必要があります。 図 4–1 に、レシー バから見た理想的な信号と実際の信号の違いを示します。 図 4‒1. レシーバでの理想的な信号と実際の信号 Ideal Real V oltage VIH Voltage VIH VIL VIL Time Time 6? 2012? EMI_DG_004-4.1更に、この章では、各種終端方法とそれらがレシーバの信号品質に及ぼす影響を比 較します。また、レシーバでのシグナル・インテグリティを最適化するために、 FPGA の適切なドライブ強度設定、および信号品質上のコンポーネント対 DIMM コン フィギュレーションなどのように別のローディング・タイプの効果について説明し ます。 この章の目的は、様々な種類の終端方法間のトレード・オフ、出力ドライブ強 度の影響、および負荷について理解し、複数の組み合わせをすばやく検討し、設計 に最適な設定を選択することです。
レべリングおよびダイナミック ODT
JEDEC 規格で定められているとおり、DDR3 SDRAM DIMM では、アドレス、コマン ド、およびクロックの各信号には必ずフライバイ・トポロジーを使用します。この 標準 DDR3 SDRAM トポロジーでは、リード・レベリングとライト・レベリング機能
を備えた UniPHY または ALTMEMPHY 付きの Altera® DDR3 SDRAM コントローラを使用
する必要があります。
ディスクリート DDR3 SDRAM コンポーネントを使用するときに DDR3 SDRAM の完全 な互換性を保つため、カスタム PCB 上で JEDEC DDR3 UDIMM フライバイ・トポロ ジーを模倣することをお勧めします。
1 Arria®II、Arria V、および Cyclone®V デバイスは、リード・レベリングおよびライト・
レベリング機能を搭載した DDR3 SDRAM に対応していないため、標準の DDR3 SDRAM フライバイ・アドレス、コマンド、およびクロック・レイアウト・トポロ ジーを使用した標準の DDR3 SDRAM DIMM または DDR3 SDRAM コンポーネントには 対応していません。
リード・レベリングおよびライト・レベリング
DDR2 SDRAM と DDR3 SDRAM の主な相違点の 1 つは、レベリング機能の使用です。 シグナル・インテグリティを改善してより高周波な動作に対応するために、クロッ ク、コマンドおよびアドレス・バス信号のためのフライバイ終端方式が JEDEC 委員 会により定められました。フライバイ・トポロジーでは、クロック、アドレス、お よびコマンド信号が DIMM を通過するときに、すべての DRAM でデータとストロー ブ間にフライト・タイム・スキューを意図的に発生させることで、同時スイッチン グ・ノイズ(SSN)を減らします(図 4–2 )。 フライバイ・トポロジーによりフライト・タイム・スキューが発生するため、JEDEC 委員会は DDR3 SDRAM に対するライト・レベリング機能を導入しました。このため、 コントローラはバイト・レーンごとにタイミングを調整することにより、このス キューを補償しなければなりません。 書き込み時には、DIMM 上のコンポーネントに到達するクロックと一致するように、 DQS グループは別々の時刻に起動されますが、メモリ・クロックと DQS 間で定義さ れる tDQSS ± 0.25 tCKのタイミング・パラメータに適合する必要があります。 読み出し動作時には、メモリ・コントローラはフライバイ・トポロジーによって生じる遅延を補正する必要があります。Stratix®III、Stratix IV、および Stratix V FPGA に
は、データを適切にキャプチャするためにアラインメント・レジスタと同期レジス タが I/O エレメント(IOE)に組み込まれています。 DDR2 SDRAM では、ドライブ強度設定は「フル」と「低」の 2 つのみで、それぞれ 18Ω と 40 Ω の出力インピーダンスに対応します。これらの出力ドライブ強度設定は 静的設定であり、キャリブレーションされません。そのため、出力インピーダンス は、電圧と温度のドリフトに従って変化します。 図 4‒2. ライト・レベリングを必要とする DDR3 DIMM フライバイ・トポロジー VTT
Data Skew Calibrated Out at Power Up with Write Leveling
Da
ta
Ske
w
Command, Address, Clock in
DDR3 SDRAM では、プログラマブル・インピーダンス出力バッファが使用されます。 現在、34Ω と 40 Ω の 2 つのドライブ強度設定があります。40 Ω ドライブ強度設定 は現在、JEDEC が定義した予約仕様になっていますが、一部のメモリ・ベンダで提 供されているため DDR3 SDRAM 上でも使用可能です。出力インピーダンス設定につ いて詳しくは、それぞれのメモリ・ベンダのデータシートを参照してください。ド ライブ強度設定は、モード・レジスタ 1(MR1)に定義されているメモリ・モード・ レジスタをプログラミングして選択します。出力ドライバ・インピーダンスをキャ リブレーションするためには、精度の高い外部抵抗 RZQ は ZQ ピンと VSSQ を接続し ます。この抵抗の値は 240Ω ± 1% でなければなりません。
DDR3 SDRAM DIMM を使用している場合、RZQ は DIMM にはんだ付けされているの で、RZQ のためにボードをレイアウトする必要はありません。出力インピーダンス は初期化中に設定されます。電源投入後に出力ドライバ・インピーダンスをキャリ ブレーションするには、DDR3 SDRAM に、初期化の一部としてキャリブレーション・ コマンドとリセット・プロシージャが必要です。DDR3 SDRAM はコントローラが キャリブレーション・コマンドを発行したときに定期的に更新されます。 キャリブレーションされた出力インピーダンスだけでなく、DDR3 SDRAM では、同 一の精度の高い外部抵抗 RZQ を介してキャリブレーションされたパラレル ODT にも 対応します。この ODT は、DDR3 SDRAM 内でマージされた出力ドライバ構造体を使 用することで実行でき、DQ と DQS ピンのピン・キャパシタンスの向上にも役立ちま す。DDR3 SDRAM が対応する ODT 値は、RZQ が 240Ωの場合、220 Ω、30 Ω、40 Ω、 60Ω、および 120 Ω となります。 DDR3 SDRAM には、出力ドライバ・インピーダンスと ODT のキャリブレーションに 関するコマンドが 2 つあります。1 つ目のキャリブレーション・コマンドである ZQ CALIBRATION LONG(ZQCL)は多くの場合、最初の電源投入時または DDR3 SDRAM が リセット状態にあるときに使用されます。このコマンドにより、出力ドライバ・イ ンピーダンスと ODT が初期温度および電圧状態にキャリブレーションされ、製造に よるさまざまなプロセスの変化が補償されます。初期化またはリセット時に、コン トローラは ZQCL コマンドを発行した場合、完了までに 512 メモリ・クロック・サイ クルがかかります。それ以外の場合は、完了までに 256 メモリ・クロック・サイク ルがかかります。コントローラは、通常動作時に、温度または電圧の変化を追跡す るために 2 つ目のキャリブレーション・コマンドである ZQ CALIBRATION SHORT (ZQCS)を使用します。ZQCS コマンドの完了には 64 メモリ・クロック・サイクルが かかります。ZQCS コマンドでは修正しきれないほど多くのインピーダンス・エラー がある場合は、ZQCL コマンドを使用してください。 DDR3 SDRAM での ZQ キャリブレーションの使用について詳しくは、Micron 社のアプ リケーション・ノート TN-41-02「DDR3 ZQ Calibration」を参照してください。
ダイナミック ODT
ダイナミック ODT は、DDR3 SDRAM の新機能なので、DDR2 SDRAM では使用できま せん。ダイナミック ODT では、モード・レジスタ・セット(MRS)コマンドを発行 しないで ODT 設定を変更できます。ダイナミック ODT を有効にした場合、書き込み 動作がないときには、DDR3 SDRAM は RTT_NORM の終端設定で終端します。書き込み 動作があると、DDR3 SDRAM は RTT_WR の設定で終端します。 RTT_NORM および RTT_WR の値は、モード・レジスタMR1 と MR2 をプログラミングすることで事前に設 定されます。図 4–3 に、ダイナミック ODT を有効にした場合の ODT の動作を示しま す。
2 DIMM DDR3 SDRAM コンフィギュレーションでは、ダイナミック ODT は、アクセス 中のモジュールでのジッタの減少に役立ち、セカンダリ・モジュールからの反射を 最小限に抑えます。
f DDR3 SDRAM でのダイナミック ODT の使用について詳しくは、Micron 社のアプリケー
ション・ノート「TN-41-04DDR3 Dynamic On-Die Termination」を参照してください。
Stratix III および Stratix IV デバイスのダイナミック OCT
Stratix III および Stratix IV デバイスは、すべての I/O バンクの双方向 I/O に対して、オ ン・オフ・ダイナミック直列および並列終端に対応しています。ダイナミック OCT は、Stratix III および Stratix IV FPGA デバイスの新機能です。ダイナミック並列終端 は、双方向 I/O がレシーバとして動作するときにのみイネーブルされ、ドライバとし て動作するときはディセーブルされます。同様に、ダイナミック直列終端は、双方 向 I/O がドライバとして動作するときにのみイネーブルされ、レシーバとして動作す るときはディセーブルされます。ダイナミック OCT のデフォルト設定は、直列終端 であり、インタフェースがアイドル状態、つまり、アクティブなリードまたはライ トなしの時に、電力を節約されます。 図 4‒3. ダイナミック ODT: 書き込み前後に ODT がアサートされるときの動作 (1) 図 4‒3 の注:
1 また、OCT のダイナミック・コントロール動作は、バッファの出力イネーブル信号と は分離されます。そのため、UniPHY IP では、読み出しサイクル時にのみ並列 OCT を イネーブルでき、インタフェースがアイドル状態のときは電力が節約されます。 データの方向に応じてシグナル・インテグリティが最適化されるので、この機能は 任意の高性能双方向パスを終端するのに役立ちます。また、ダイナミック OCT では、 ODT に対応しているメモリ・デバイス(DDR3 SDRAM など)とともに使用されると きは、外部終端抵抗が不要になるため、コストを削減できるだけでなくボード・レ イアウトも簡素化できます。
ただし、Stratix III および Stratix IV FPGA デバイスのダイナミック OCT は、前項で説明 した DDR3 SDRAM のダイナミック ODT とは異なります。これらの機能を同一のもの として扱うことはできません。
f StratixIII FPGA のダイナミック OCT 機能について詳しくは、「Stratix IIIデバイス・ハンド
ブックVolume 1」の「 Stratix IIIデバイスのI/O機能 」の章を参照してください。
f Stratix IV FPGA のダイナミック OCT 機能について詳しくは、「Stratix IV デバイス・ハン
ドブック Volume 1」の 「Stratix IVデバイスのI/O機能」の章を参照してください。
図 4‒4. Stratix III および Stratix IV FPGA デバイス間のダイナミック OCT
Driver Receiver Driver Receiver 50 Ω VREF = 0.75 V DDR3 DIMM FPGA 50 3" Trace Length DDR3 Component RS = 15Ω 34 W 100 W 100 W VREF = 0.75 V Driver Receiver Driver Receiver VREF = 0.75 V DDR3 DIMM FPGA 50 W 3" Trace Length DDR3 Component RS = 15Ω 34 Ω 100Ω 100 Ω VREF = 0.75 V 50 Ω Ω
Stratix V デバイスのダイナミック OCT
Stratix V のデバイスは、ダイナミック OCT 機能をサポートし、より柔軟性を提供しま す。Stratix V OCT キャリブレーションは、各 OCT ブロックに存在する 1 つの RZQ ピ ンを使用します。別の OCT 値を実装するために、RZQ ピンのリファレンス抵抗とし て、次のいずれかを使用できます。 ■ 240Ω リファレンス抵抗 —34 Ω、40 Ω、48 Ω、60 Ω、および 80 Ω の RSOCT 抵抗お よび 20Ω、30 Ω、40 Ω、および 120 Ω の RTOCT 抵抗を実装します。 ■ 100Ω リファレンス抵抗 —25 Ω と 50 Ω の RSOCT 抵抗、および 50Ω の RTOCT 抵抗を 実装します。
f Stratix IV FPGA のダイナミック OCT 機能について詳しくは、「Stratix V デバイス・ハンド
ブックVolume 1」の 「Stratix VデバイスのI/O 機能」の章を参照してください。
DDR2 SDRAM のボード終端
DDR2 は 4 つの異なる終端を含む統治 Stub-Series Terminated Logic(SSTL)、JESD8-15a
に対する JEDEC 規格に準拠しています。 SSTL の一般に使用される 2 つの終端方法は、以下のようにあります。 ■ 直列抵抗を接続したまたは接続しない出力負荷のシングル並列終端(JESD8-15a に記載された Class I) ■ 直列抵抗を接続したまたは接続しない出力負荷のダブル並列終端 (JESD8-15a に 記載された Class II) 選択した信号の種類に応じて、いずれかの終端方法を使用できます。デザインの FPGA および SDRAM メモリ・デバイスに応じて、外部終端方法または内部終端方法 を選択できます。 システム・コスト削減と PCB レイアウト・デザイン簡素化に対する要件が高まるに つれて、伝送線路上に並列終端を配置せずに、メモリ・インタフェースとメモリ間 にポイント・ツー・ポイント接続を使用する場合があります。このケースでは、選 択したデバイス上で提供された FPGA 側の On-Chip Termination(OCT)と SDRAM 側の On-Die Termination (ODT)などの内部終端を活用することができます。
外部並列終端
外部終端を使用する場合は、デザインに最適なトポロジーを決定するために終端抵 抗の位置を検討する必要があります。 図 4–5 および図 4–6 に、フライバイ・トポロ ジーと非フライバイ・トポロジーの最も一般的に使用される 2 つの終端トポロジー を示します。 フライバイ・トポロジー(図 4–5 参照)の場合は、レシーバの後に並列終端抵抗を 配置します。この終端配置により、非フライバイ・トポロジーでの望ましくない終 端されていないスタブを解決できます。ただし、このトポロジーを使用すると、コ スト増となり配線も複雑になります。Stratix II Memory Board 2 は、並列終端抵抗の配 置にフライバイ・トポロジーを使用します。Stratix II Memory Board 2 は、アルテラ内 部でのみ使用可能なメモリ・テスト・ボードであり、アルテラのメモリ・インタ フェースをテストおよび検証する目的で使用されます。 図 4‒5. 並列抵抗のフライバイ配置 図 4‒6. 並列抵抗の非フライバイ配置 FPGA Driver Board Trace DDR2 SDRAM DIMM (Receiver) Board Trace RT = 50 Ω VTT FPGA Driver DDR2 SDRAM DIMM (Receiver) RT = 50 Ω VTT非フライバイ・トポロジー(図 4–6 参照)では、ドライバとレシーバの間に(レ シーバに近接して)並列終端抵抗を配置します。この終端配置ではボード・レイア ウトが簡単になりますが、終端抵抗とレシーバとの間が短い終端されていないスタ ブとなります。終端されない伝送線路では、レシーバにリンギングと反射が生じま す。 外部終端を使用しない場合、DDR2 は ODT を提供し、アルテラの FPGA は様々なレベ ルの OCT のサポートがあります。ボードの消費電力を低減し、必要なボード面積を 減らすために ODT と OCT を使用して検討する必要があります。
On-Chip Termination(チップ内終端)
OCT テクノロジは、Arria II GX、Arria II GZ、Arria V、Cyclone III、Cyclone IV、Cyclone V、
Stratix III、Stratix IV、および Stratix V で提供されます。表 4–1 には、各デバイスの
OCT サポートの範囲をまとめます。SSTL-18 は、アルテラの FPGA で DDR2 メモリ・ インタフェースにサポートされる規格であるため、この表では、SSTL-18 規格に関す る情報を提供します。 チップ内直列終端 (RS)は、出力および双方向バッファでのみサポートされます。 キャリブレーション付きの RSの値は、 RUPおよび RDNピンに接続される Class II の 25Ω および Class I の 50 Ω の抵抗に対してキャリブレーションされ、25 Ω または 50Ω の ± 1% に調整されます。チップ内並列終端(RT)は、入力および双方向バッ ファでのみサポートされます。RT の値は RUPおよび RDNピンに接続される 100Ω に 対してキャリブレーションされます。キャリブレーションは、デバイス・コンフィ ギュレーションの最後に実行されます。ダイナミック OCT は双方向 I/O バッファで のみサポートされます。 表 4‒1. On-Chip Termination 方法 終端方法 SSTL-18 FPGA デバイス Arria II GX Arria II GZ Arria V
Cyclone III および Cyclone IV Cyclone V Stratix III および Stratix IV Stratix V(1) カラムと ロウ I/O カラムと ロウ I/O カラムと ロウ I/O カラムと ロウ I/O カラムと ロウ I/O カラムと ロウ I/O カラム I/O キャリブ レーショ ンなし直 列 On-Chip Termination Class I 50 50 50 50 50 50 50 Class II 25 25 25 25 25 25 25 キャリブ レーショ ン付き直 列 On-Chip Termination Class I 50 50 50 50 50 50 50 Class II 25 25 25 25 25 25 25 キャリブ レーショ ン付き並 列 On-Chip Termination Class I および Class II — 50 50 — 50 50 50
ダイナミック OCT 方法は、Stratix III、Stratix IV、および Stratix V FPGA でのみ使用可能 です。ダイナミック OCT 方法によって、直列終端(RS)と並列終端(RT)が可能に なり、データ転送中にダイナミックにオンおよびオフすることができます。 直列終端および並列終端は、インタフェースのリード・サイクルとライト・サイク ルに応じて、オンまたはオフになります。ライト・サイクル中に、ライン・イン ピーダンスにマッチするように RSがオン、RTがオフになります。Stratix IV FPGA が バスの遠端で終端を実装するので、リード・サイクル中に RSがオフ、RTがオンにな ります(図 4–7 )。
推奨終端方法
表 4–2 に、主要な DDR2 メモリ・インタフェース信号用の推奨終端方法を提供しま す。信号は、データ(DQ)、データ・ストローブ(DQS/DQSn)、データ・マスク (DM)、クロック(mem_clk/mem_clk_n)およびアドレスとコマンド信号が含まれて います。 アドレス、コマンド、およびメモリ・クロック・ピンは複数の負荷に接続される複 数の DDR2 SDRAM コンポーネントとインタフェースする場合、次の手順に従います。 1. これらの信号の新スルー・レートを取得するために、システムをシミュレートし ます。 2. シミュレーション結果に基づいて、DDR2 SDRAM データシートからディレーティ ング tIS と tIH 仕様を使用します。 3. タイミング・ディレーティングは、インタフェースがタイミング要件を失敗した 場合、負荷を下げ、これらの信号の重複を考慮し、それ故にタイミングを向上さ せます。 1 アルテラは、フィジカル終端でなく、ドライブ強度に参照するために、この表に Class I および Class II 終端 を使用します。 1 正しい機能を確認にするために、システムのデザインをシミュレートする必要があ ります。 図 4‒7. メモリ・インタフェースのダイナミック OCTStratix III (TX) DDR2 DIMM Stratix III (RX) DDR2 DIMM
Write Cycle Read Cycle
OE OE
VTT VTT VTT
表 4‒2. 終端推奨値 ( その 1 ) (1) デバイス・ ファミリ 信号の種類 SSTL 18 IO 規格 (2), (3), (4), (5), (6) FPGA エンド・ ディスクリート終 端 メモリ・エンド終端 1 ( ランク /DIMM) メモリ I/O 規格 Arria II GX DDR2 コン ポーネント DQ Class I R50 CAL VTT ディスクリー トへの 50 Ω 並列 ODT75 (7) HALF(8)
DQS DIFF(13) DIFF Class R50 CAL VTT ディスクリー
トへの 50 Ω 並列 ODT75 (7) HALF(8)
DQS SE(12) Class I R50 CAL VTT ディスクリー
トへの 50 Ω 並列 ODT75 (7) HALF(8)
DM Class I R50 CAL N/A ODT75 (7) N/A
アドレスおよ
びコマンド Class I MAX N/A
VTT ディスクリートへ
の 56 Ω 並列 N/A
クロック DIFF Class I R50 CAL N/A ×1 = 100 Ω 差動
(10)
×2 = 200 Ω 差動 (11) N/A
DDR2 DIMM
DQ Class I R50 CAL VTT ディスクリー
トへの 50 Ω 並列 ODT75 (7) FULL(9)
DQS DIFF(13) DIFF Class I R50 CAL VTT ディスクリー
トへの 50 Ω 並列 ODT75 (7) FULL(9)
DQS SE(12) Class I R50 CAL VTT ディスクリー
トへの 50 Ω 並列 ODT75 (7) FULL(9)
DM Class I R50 CAL N/A ODT75 (7) N/A
アドレスおよ
びコマンド Class I MAX N/A
VTT ディスクリートへ
の 56 Ω 並列 N/A
クロック DIFF Class I R50 CAL N/A N/A =DIMM 上 N/A
Arria V および Cyclone V
DDR2 コン ポーネント
DQ Class I R50/P50 DYN
CAL N/A ODT75
(7) HALF(8)
DQS DIFF(13) DIFF Class I R50/P50
DYN CAL N/A ODT75(7) HALF(8)
DQS SE(12) Class I R50/P50 DYN
CAL N/A ODT75
(7) HALF(8)
DM Class I R50 CAL N/A ODT75(7) N/A
アドレスおよ
びコマンド Class I MAX N/A
VTT ディスクリートへ
の 56 Ω 並列 N/A
クロック DIFF Class I R50 NO CAL N/A ×1 = 100 Ω 差動
(10)
DDR2 DIMM
DQ Class I R50/P50 DYN
CAL N/A ODT75(7) FULL(9)
DQS DIFF(13) DIFF Class I R50/P50
DYN CAL N/A ODT75
(7) FULL(9)
DQS SE(12) Class I R50/P50 DYN
CAL N/A ODT75(7) FULL(9)
DM Class I R50 CAL N/A ODT75(7) N/A
アドレスおよ
びコマンド Class I MAX N/A
VTT ディスクリートへ
の 56 Ω 並列 N/A
クロック DIFF Class I R50 NO CAL N/A N/A =DIMM 上 N/A
表 4‒2. 終端推奨値 ( その 2 ) (1) デバイス・ ファミリ 信号の種類 SSTL 18 IO 規格 (2), (3), (4), (5), (6) FPGA エンド・ ディスクリート終 端 メモリ・エンド終端 1 ( ランク /DIMM) メモリ I/O 規格
Cyclone III および Cyclone IV DDR2 コン ポーネント DQ/DQS Class I 12 mA VTT ディスクリー トへの 50 Ω 並列 ODT75 (7) ハーフ(8) DM Class I 12 mA N/A VTT ディスクリートへ の 56 Ω 並列 N/A アドレスおよ
びコマンド Class I MAX N/A N/A
クロック Class I 12 mA N/A ×1 = 100 Ω 差動 (10) ×2 = 200 Ω 差動(11) N/A DDR2 DIMM DQ/DQS Class I 12 mA トへの 50VTT ディスクリー Ω 並列 ODT75 (7) FULL(9)
DM Class I12 mA N/A
VTT ディスクリートへ
の 56 Ω 並列
N/A アドレスおよ
びコマンド Class I MAX N/A N/A
クロック Class I 12 mA N/A N/A =DIMM 上 N/A
Arria II GZ、Stratix III、Stratix IV、および Stratix V
DDR2 コン ポーネント
DQ Class I R50/P50 DYN
CAL N/A ODT75
(7) HALF(8)
DQS DIFF(13) DIFF Class I R50/P50
DYN CAL N/A ODT75 (7) HALF(8)
DQS SE(12) DIFF Class I R50/P50
DYN CAL N/A ODT75
(7) HALF(8)
DM Class I R50 CAL N/A ODT75 (7) N/A
アドレスおよ
びコマンド Class I MAX N/A
VTT ディスクリートへ
の 56 Ω 並列 N/A
クロック DIFF Class I R50 NO CAL N/A x1 = 100 Ω 差動
(10) x2 = 200 Ω 差動 (11) N/A 表 4‒2. 終端推奨値 ( その 3 ) (1) デバイス・ ファミリ 信号の種類 SSTL 18 IO 規格 (2), (3), (4), (5), (6) FPGA エンド・ ディスクリート終 端 メモリ・エンド終端 1 ( ランク /DIMM) メモリ I/O 規格
DDR2 DIMM
DQ Class I R50/P50 DYN
CAL N/A ODT75 (7) FULL (9)
DQS DIFF(13) DIFF Class I R50/P50
DYN CAL N/A ODT75
(7) FULL (9)
DQS SE(12) Class I R50/P50 DYN
CAL N/A ODT75 (7) FULL (9)
DM Class I R50 CAL N/A ODT75 (7) N/A
アドレスおよ
びコマンド Class I MAX N/A
VTT ディスクリートへ
の 56 Ω 並列 N/A
クロック DIFF Class I R50 NO CAL N/A N/A = DIMM 上 N/A
表 4‒2 の注: (1) N/A は適用されません。 (2) R は直列抵抗です。 (3) P は並列抵抗です。 (4) DYN はダイナミック OCT です。 (5) NO CAL はきゃリブレーションなしの OCT です。 (6) CAL はキャリブレーション付きの OCT です。 (7) メモリ上の ODT75 対 ODT50 は、オーバーシュート / アンダーシュートの制限された増加に伴い、より多くのアイの開くの効 果があります。 (8) HALF は低ドライブ強度です。 (9) FULL はフルドライブ強度です。 (10) x1 はシングル・デバイスの負荷です。 (11) x2 は 2 デバイスの負荷です。例えば、シングル・クロック・ペアでシングル・ランク DIMM 上の 9 デバイスの 2 つを供給す ることができます。 (12) DQS SE はシングル・エンド DQS です。 (13) DQS DIFF は差動 DQS です。 表 4‒2. 終端推奨値 ( その 4 ) (1) デバイス・ ファミリ 信号の種類 SSTL 18 IO 規格 (2), (3), (4), (5), (6) FPGA エンド・ ディスクリート終 端 メモリ・エンド終端 1 ( ランク /DIMM) メモリ I/O 規格
ダイナミック On-Chip Termination
終端方法は、SSTL 18 I/O の JEDEC 規格 JESD8-15a で規定されています。ダイナミッ ク OCT は Stratix III および Stratix IV デバイスで使用可能です。Stratix III FPGA(ドライ バ)が DDR2 SDRAM DIMM(レシーバ)に書き込んでいるとき、直列 OCT は伝送ライ ンのインピーダンスと一致するためにダイナミックにイネーブルされます。その結 果、反射を大幅に低減できます。同様に、FPGA が DDR2 SDRAM DIMM を読み出して いるときには、並列 OCT は動的にイネーブルされます。
f 終端抵抗の適切な値を設定する方法については、「Stratix IIIデバイス・ハンドブック」
の 「Stratix IIIデバイスのI/O機能」の章、および「Stratix IVデバイス・ハンドブッ ク」の I「/O Features in Stratix IVデバイスのI/O機能」の章を参照してください。
FPGA によるメモリへの書き込み
図 4–8 に、FPGA がメモリへの書き込みを実行する時に、ダイナミック直列 OCT 方法 を示します。 ダイナミック直列 OCT を使用する利点は、ドライバが伝送線路をドラ イブしているとき、非外部抵抗終端を備えた伝送線路がマッチングすることです。 図 4‒8. メモリ上の ODT を使用するダイナミック直列 OCT 方法 FPGA DDR2 DIMM DDR2 Component RS = 22 Ω Driver Driver Receiver 50 Ω3” Trace Length Receiver
50 Ω
150 Ω
150 Ω 100Ω
図 4–9 および図 4–10 に、DDR2 SDRAM DIMM への書き込みのシミュレーションと測
定結果を示します。このシステムは、最大ドライブ強度の FPGA で測定された 50Ω
キャリブレーションされた並列 OCT および DIMM 上の 75Ω ODT の Class I 終端を使用
します。 シミュレーションとベンチの両方の測定は、200 pS/div および 200 mV/div で 測定されます。
図 4‒9. FPGA によるメモリへの書き込み時の HyperLynx シミュレーション
表 4–3 は、DDR2 SDRAM DIMM での信号のシミュレーションとボード測定の比較を示 します。 表 4–3 のデータ、および図 4–9 と図 4–10 は、FPGA がメモリへの書き込みを行うと き、ベンチ測定値はシミュレーション測定値に厳密にマッチングすることを推奨し ます。それが外部終端の必要性を取り除きながら、双方向 I/O の直列ダイナミック On-Chip Termination 方法を使用して、信号の整合性を維持することを示します。 I/O 規格に応じて、メモリ・インタフェースを設計する際は、表 4–3 に記載されてい る 4 つのパラメータを考慮する必要があります。シミュレーションとボード測定結 果は似ているように見えますが、主なパラメータを測定すると不一致があります。 シミュレーションは I/O のデューティ・サイクル歪み、クロストーク、またはボード のパワー・プレーン劣化を完全にモデル化しているわけではありませんが、ボード の性能についての適正な目安となります。 メモリ・インタフェースでは、データを正しくキャプチャするための十分なウィン ドウがあるかどうか判断するときにアイの幅が重要です。アイの高さについては、 大半のメモリ・インタフェースが電圧リファレンス形式の I/O 規格(この場合は、 SSTL-18)を使用しますが、VIL および VIH の上下に十分なアイ開口部がある限り、 データを正しくキャプチャするのに十分なマージンがあるはずです。ただし、クロ ストークなどの影響は考慮されていないため、最適なアイの高さが得られるように システムを設計することが重要です。アイの高さは、メモリ・インタフェースを備 えたシステム全体のマージンに影響を及ぼします。 f オーバシュートとアンダシュートを決定するときは、メモリ・ベンダに問い合わせ てください。信頼性の問題を回避するために、メモリ・ベンダは一般に入力電圧に ついて最大制限を規定します。 表 4‒3. FPGA によるメモリへの書き込み時の信号の比較 (1) アイの幅 (ns) (2) アイの高さ (V) オーバシュート (V) アンダシュート (V) シミュレーション 1.194 0.740 N/A N/A ボード測定 1.08 0.7 N/A N/A 表 4‒3 の注: (1) N/A は適用されません。
(2) アイの幅は、VIH/VIL(ac) = VREF ± 250 mV から VIH/VIL(dc) = VREF ±125 mV に測定されます。ここで、VIH
FPGA によるメモリからの読み出し
図 4–11 に、FPGA がメモリから読み出しを行う際に、 ダイナミック並列終端方法を示 します。DDR2 SDRAM DIMM が伝送線路をドライブしているとき、FPGA 側の終端
50Ω プルアップ抵抗が伝送線路とマッチングするため、リンギングと反射が最小に
なります。図 4–12 に、DDR2 SDRAM DIMM からの読み出しのシミュレーションと測
定結果を示します。 このシステムは、最大ドライブ強度の FPGA エンドで測定された
50Ω キャリブレーションされた並列 OCT およびメモリ上の 75 Ω ODT の Class I 終端
を使用します。 シミュレーションとベンチの両方の測定は、200 pS/div および 200 mV/div で測定されます。
表 4–4 に、シミュレーションと FPGA エンドでの信号のボード測定値との比較を示 します。
図 4‒11. メモリ側に直列抵抗を使用したダイナミック並列 OCT 方法
FPGA DDR2 DIMM Full Strength
DDR2 Component
RS = 22 Ω
Driver Driver
Receiver
50 Ω
3” Trace Length Receiver
100 Ω 100 Ω 図 4‒12. FPGA によるメモリからの読み出し時の Hyperlynx シミュレーションとボード測定 表 4‒4. FPGA によるメモリからの読み出し時の信号の比較(1), (2) アイの幅 (ns) (3) アイの高さ (V) オーバシュート (V) アンダシュート (V) シミュレーション 1.206 0.740 N/A N/A ボード測定 1.140 0.680 N/A N/A 表 4‒4 の注: (1) メモリ DIMM 上のドライブ強度は Full に設定されます。 (2) N/A は適用されません。
(3) アイの幅は、VIH/VIL(ac) = VREF ± 250 m から VIH/VIL(dc) = VREF ±125 mV に測定されます。ここで、VIH
表 4–4 のデータ、および図 4–13 は、FPGA がメモリからの読み出しを行うとき、ベ ンチ測定値は、シミュレーション測定値に厳密にマッチングすることを推奨します。 それが外部終端の必要性を取り除きながら、双方向 I/O の並列ダイナミック On-Chip Termination 方法を使用して、信号の整合性を維持することを示します。
On-Chip Termination (非ダイナミック)
ODT とメモリ側の直列抵抗を使用する Class I 終端方法で 50Ω の OCT 機能を使用する
場合、出力ドライバは 50Ω にチューニングされ、伝送線路の特性インピーダンスが
マッチングします。図 4–13 は、FPGA の 50Ω の OCT がオンのときに ODT を使用する
Class I 終端方法を示します。
得られた信号品質は、8 mA のドライブ強度設定( 4–52 ページの「ドライブ強度」を
参照)でのアイ開口部に類似しており、オーバシュートやアンダシュートはありま せん。図 4–14 は、FPGA 内に 50Ω の OCT を使用した場合のメモリ側(DDR2 SDRAM DIMM)での信号のシミュレーションと測定を示します。
図 4‒13. 50Ω OCT を持つ ODT を使用した Class I 終端
FPGA DDR2 DIMM DDR2 Component RS = 22 Ω VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver V VREF 50 Ω 図 4‒14. FPGA によるメモリへの書き込み時の HyperLynx シミュレーションと測定
表 4–5 は、ODT とメモリ側の直列抵抗を使用した Class I 終端方法の DDR2 SDRAM
DIMM における信号のデータを示します。 FPGA は 50Ω OCT でメモリに書き込みます。
FPGA に 50Ω の OCT 設定を使用すると ODT とメモリ側の直列抵抗を使用する Class I
終端の信号品質がさらに向上し、オーバシュートとアンダシュートが減少します。
50Ω の OCT の設定に加え、Stratix II デバイスには 25 Ω の OCT 設定もあり、これを使
用して Class II 終端の伝送線路での信号品質を向上させることができます。図 4–15
は、FPGA の 25Ω の OCT がオンのときに ODT を使用する Class II 終端方法を示しま
す。 表 4‒5. 50Ω OCT と 8 mA のドライブ強度設定に対するシミュレーションとボード測定 結果 (1) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 50Ω OCT のドライブ強度設定 シミュレーション 1.68 0.82 N/A N/A ボード測定 1.30 0.70 N/A N/A 表 4‒5 の注: (1) N/A は適用されません。
図 4‒15. 25-Ω OCT を持つ ODT を使用した Class II 終端
DDR2 DIMM DDR2 Component RS = 22 Ω VREF = 0.9 V Driver 50 Ω 3” Trace Length Receiver RT = 56 Ω VTT = 0.9 V FPGA Driver Receiver VVREF 25 Ω
図 4–16 は、FPGA 内での 25Ω の OCT のドライブ強度を設定した DDR2 SDRAM DIMM (レシーバ)での信号のシミュレーションと測定を示します。
表 4–6 は、メモリ側の直列抵抗を使用した Class II 終端の DDR2 SDRAM DIMM におけ
る信号のデータを示します。FPGA は 25Ω の OCT でメモリに書き込みます。
この種類の終端方法は、DRAM のデータ(DQ)、データ・ストローブ(DQS)、デー タ・マスク(DM)、およびメモリ・クロック(CK)などの双方向信号のみに対して使 用されます。
Class II の外部並列終端
ダブル並列(Class II)終端方法は、HSTL I/O のための JESD8-6、SSTL-2 I/O のための JESD8-9b、SSTL-18 I/O のための JESD8-15a などの JEDEC 規格に規定されます。FPGA (ドライバ)が DDR2 SDRAM DIMM(レシーバ)に書き込んでいるときには、伝送線 路は DDR2 SDRAM DIMM で終端されます。同様に、FPGA が DDR2 SDRAM DIMM を読 み出しているときには、DDR2 SDRAM DIMM はドライバとなり、伝送線路は FPGA (レシーバ)で終端されます。この種類の終端方法は、一般に DRAM のデータ(DQ) およびデータ・ストローブ(DQS)信号などの双方向信号に対して使用されます。 図 4‒16. FPGA によるメモリへの書き込み時の HyperLynx シミュレーションと測定 表 4‒6. 25Ω の OCT と 16 mA のドライブ強度設定に対するシミュレーションとボード 測定 (1) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 25-Ω の OCT のドライブ強度設定 シミュレーション 1.70 0.81 N/A N/A ボード測定 1.47 0.51 N/A N/A 表 4‒6 の注: (1) N/A は適用されません。
FPGA によるメモリへの書き込み
図 4–17 に、FPGA がメモリへ書き込みを行う際に、Class II 終端方法を示します。 Class II 終端を使用する利点は、いずれかのドライバが伝送線路をドライブしている とき、レシーバ端に終端抵抗があるため、伝送線路がマッチングし、リンギングと 反射が減少することです。 図 4–18 および図 4–19 に、DDR2 SDRAM DIMM への書き込みのシミュレーションと測 定結果を示します。 このシステムは、ソース直列抵抗を DIMM で測定した、ドライブ 強度設定が 16 mA の Class II 終端を使用します。 シミュレーションはアイ開口部が良好なクリーンな信号を示しますが、DDR2 SDRAM で規定される 1.8 V 信号のわずかなオーバシュートとアンダシュートが存在します。 オーバシュートとアンダシュートは、ドライバに所要ドライブ強度以上の設定を使 用した伝送線路のオーバドライブ、または伝送線路の特性インピーダンスより高い 外部抵抗値を使用したレシーバ側での過剰終端に起因します。オーバシュートとア ンダシュートが、メモリ・ベンダの DDR2 SDRAM データシートに記載された絶対最 大定格仕様を超えない限り、信頼性が損なわれることはありません。 次に、シミュ レーション結果と実際のボード・レベルでの測定結果の相関が取られます。 図 4‒17. メモリ側に直列抵抗を使用した Class II 終端方法 図 4‒18. FPGA によるメモリへの書き込み時の HyperLynx シミュレーション RT = 50 Ω VTT = 0.9 V RT = 50 Ω VTT = 0.9 V FPGA DDR2 DIMM DDR2 Component RS = 22 Ω VREF = 0.9 V VREF Receiver Driver Receiver 16 mA 50 Ω 3” Trace Length DDR2 DIMM S = 22 Ω R DDR2 Component Ω Receiver Ω Receiver Driver図 4–19 に、Stratix II Memory Board 2 から取得した測定結果を示します。FPGA は 16 mA のドライブ強度を使用して、Class II 終端伝送線路上で DDR2 SDRAM DIMM を ドライブします。 表 4–7 は、DDR2 SDRAM DIMM での信号のシミュレーションとボード測定の比較をま 示します。 シミュレーションを詳細に調べると、50% ~ 50% の理想的なデューティ・サイクル を示しますが、ボード測定でのデューティ・サイクルは理想的ではなく、53% ~ 47% 前後なので、シミュレーションと測定したアイの幅が違います。さらに、ボー ド測定は 72 ビットのメモリ・インタフェース上で行われますが、シミュレーション はシングル I/O で実行されます。 図 4‒19. FPGA によるメモリへの書き込み時のボード測定 表 4‒7. FPGA によるメモリへの書き込み時の信号の比較(1) アイの幅 (ns) (2) アイの高さ (V) オーバシュート (V) アンダシュート (V) シミュレーション 1.65 1.28 0.16 0.14 ボード測定 1.35 0.83 0.16 0.18 表 4‒7 の注: (1) FPGA のドライブ強度は 16 mA に設定されています。 (2) アイの幅は VREF ± 125 mV から測定されます。ここで、VIHと VIL は、SSTL-18 に対する JEDEC 規格に 従って決定されます。
FPGA によるメモリからの読み出し
図 4–20 に、FPGA がメモリから読み出しを行う際に、Class II 終端方法を示します。 DDR2 SDRAM DIMM が伝送線路をドライブしているとき、FPGA 側の終端プルアップ 抵抗が伝送線路とマッチングするため、リンギングと反射が最小になります。 図 4‒20. メモリ側に直列抵抗を使用した Class II 終端方法 RT = 56 Ω VTT = 0.9 V RT = 56 Ω VTT = 0.9 V
FPGA DDR2 DIMM Full Strength
VREF VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver
図 4–21 および図 4–22 には、DDR2 SDRAM DIMM に最大ドライブ強度を設定した、 FPGA 側での信号のシミュレーションと測定を示します。シミュレーションでは、 ソース直列抵抗伝送線路による Class II 終端方法を使用します。FPGA は DIMM に最大 ドライブ強度を設定して、メモリから読み出します。
図 4‒21. FPGA によるメモリからの読み出し時の HyperLynx シミュレーション
表 4–8 は、FPGA がメモリ(ドライバ)を読み出しているときに、FPGA から見た信 号のシミュレーションとボード測定の比較を示します。 シミュレーションと測定の両方ともオーバシュートやアンダシュートのないクリー ンな信号と良好なアイ開口部を示します。しかし、FPGA によるメモリからの読み出 し時のアイの高さは、FPGA によるメモリへの書き込み時よりも小さくなります。ア イの高さの縮小は、DIMM の直列抵抗での電圧低下によるものです。メモリのドライ ブ強度設定がすでに最大に設定される場合は、メモリ・ドライブ強度を増やしてア イの高さを大きくすることはできません。1 つのオプションは、FPGA がメモリから 読み出すときに DIMM の直列抵抗をなくすことです( 4–54 ページの「コンポーネン ト対 DIMM」 の項を参照)。また、メモリ付近にある外部並列抵抗をなくして、メモ リ・ドライバの負荷を低減する方法もあります。DIMM コンフィギュレーションの場 合には、直列抵抗が DIMM の一部であるので、後のオプションはよりよい選択です。 また、FPGA がメモリに書き込まれている場合、容易に終端抵抗として使用する ODT 機能をオンにして、FPGA がメモリから読み出される場合オフにすることができま す。 Class II 終端方法の結果は、DDR2 SDRAM メモリ用のデータ・ストローブやデータな どの双方向信号に最適であることを示します。レシーバの終端はドライバに戻る反 射を除去し、レシーバでのリンギングを抑制します。
Class I 外部並列終端
シングル並列(Class I)終端方法とは、レシーバ側の近くに終端が配置されたことで す。この終端方法は、一般に DDR2 SDRAM に対する単方向信号(例えば、クロック、 アドレス、コマンド信号)を終端するために使用されます。 ただし、ボードが制約されている場合はこの形式の終端方法は、時々データ(DQ) 信号やデータ・ストローブ(DQS)信号などの双方向信号に使用されます。双方向信 号の場合、メモリ側または FPGA 側のいずれかに終端を配置できます。この項では、 メモリ側の終端を使用した ClassI 終端方法についてのみ説明します。 メモリ側の終端 では、信号がメモリのレシーバに達したときにインピーダンスがマッチングします。 ただし、FPGA がメモリを読み出しているときには、FPGA 側には終端がないためイ ンピーダンスのミスマッチが発生します。この項では、この終端方法の信号品質に ついて説明します。FPGA によるメモリへの書き込み
FPGA がメモリに書き込んでいるとき(図 4–23 )には、メモリ側で伝送線路が並列 終端され、伝送線路に対してインピーダンスがマッチングするためレシーバ側の反 射が最小になります。この終端方法の利点は、1 本の外部抵抗しか必要ないことで す。あるいは、外部抵抗の代わりに ODT 抵抗を使用して、この終端方法を実装する こともできます。 表 4‒8. FPGA によるメモリからの読み出し時の信号の比較(1), (2) アイの幅 (ns) アイの高さ (V) オーバシュー ト (V) アンダシュー ト (V) シミュレーション 1.73 0.76 N/A N/A ボード測定 1.28 0.43 N/A N/A 表 4‒8 の注: (1) DDR2 SDRAM DIMM のドライブ強度は最大強度に設定されています。 (2) N/A は適用されません。ODT 抵抗と外部終端抵抗の比較について詳しくは、 4–30 ページの「ODT による Class I 終端」を参照してください。
図 4–24 は、メモリ側に抵抗を使用した Class I 終端のメモリ(DDR2 SDRAM DIMM) での信号のシミュレーションと測定を示します。FPGA は 16 mA のドライブ強度設定 でメモリに書き込みます。
表 4–9 は、メモリ側に直列抵抗と外部抵抗を使用して、Class I および Class II 終端方 法の DDR2 SDRAM DIMM での信号の比較を示します。FPGA(ドライバ)がメモリ (レシーバ)に書き込みます。 図 4‒23. メモリ側に直列抵抗を使用した Class I 終端方法 RT = 56 Ω VTT = 0.9 V FPGA DDR2 DIMM DDR2 Component RS = 22 Ω VREF Driver Driver Receiver 50 Ω 3” Trace Length Receiver VREF = 0.9 V 図 4‒24. FPGA によるメモリへの書き込み時の HyperLynx シミュレーションとボード測定 表 4‒9. FPGA によるメモリへの書き込み時の信号の比較(1) ( その 1 ) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 外部並列抵抗を使用した Class I 終端方法 シミュレーション 1.69 1.51 0.34 0.29 ボード測定 1.25 1.08 0.41 0.34 外部並列抵抗を使用した Class II 終端方法
表 4–9 は、Class I 終端方法の全体的な信号品質は、Class I 終端方法ではアイの高さが 約 30% 高い点を除いて、Class II 終端方法の信号品質と同程度のことを示します。ア イの高さが大きくなるのはドライバの負荷が軽減されたためです。これは Class I 終 端方法では FPGA 側に並列終端抵抗がないためです。 ただし、アイの高さを大きくす ると、以下のようなコストを伴います。Class I 終端方法では、Class II 終端方法を使 用した場合と比べて、信号のオーバシュートとアンダシュートが 50% 増大します。 オーバシュートとアンダシュートを低減するために、ドライバにかかる負荷の低下 に合わせて FPGA のドライブ強度を減らすことができます。 ドライブ強度が信号品質に与える影響について詳しくは、 4–52 ページの「ドライブ 強度」 を参照してください。
FPGA によるメモリからの読み出し
4–26 ページの「FPGA によるメモリへの書き込み」で説明したように、Class I 終端で はレシーバの近くに終端が配置されます。 ただし、この終端方法を使用して双方向信 号を終端させる場合、レシーバはドライバにもなります。例えば、DDR2 SDRAM で は、データ信号はレシーバでありドライバです。 図 4–25 に、メモリ側抵抗を使用する Class I 終端方法を示します。FPGA がメモリか ら読み出します。 ボード測定 1.35 0.83 0.16 0.18 表 4‒9 の注: (1) FPGA のドライブ強度は 16 mA に設定されています。 図 4‒25. メモリ側に直列抵抗を使用した Class I 終端方法 表 4‒9. FPGA によるメモリへの書き込み時の信号の比較(1) ( その 2 ) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) RT = 56 Ω VTT = 0.9 VFPGA DDR2 DIMM Full Strength
DDR2 Component RS = 22 Ω VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver Receiver VREF
FPGA がメモリを読み出すとき(図 4–25 )、FPGA では伝送線路は終端されず、イン ピーダンスのミスマッチとそれによるオーバシュートやアンダシュートが発生しま す。図 4–26 に、Class I 終端の FPGA 側(レシーバ)における信号のシミュレーショ ンと測定を示します。FPGA は DDR2 SDRAM DIMM に最大ドライブ強度を設定して、 メモリを読み出します。 表 4–10 は、メモリ側に直列抵抗と外部抵抗を使用した Class I および Class II 終端方 法での FPGA における信号の比較を示します。 FPGA(レシーバ)がメモリ(ドライ バ)を読み出します。 FPGA が Class I 終端方法を使用してメモリを読み出すとき、アイの高さと幅の点で信 号品質は Class II 終端方法と同程度です。表 4–10 に、レシーバ(FPGA)に終端がな い場合はインピーダンスのミスマッチが生じ、Class II 終端方法には見られない反射 とリンギングが発生することを示します。したがって、アルテラではコマンド、ア 図 4‒26. FPGA によるメモリからの読み出し時の HyperLynx シミュレーションとボード測定 表 4‒10. FPGA によるメモリからの読み出し時の信号の比較(1), (2) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 外部並列抵抗を使用した Class I 終端方法 シミュレーション 1.73 0.74 0.20 0.18 ボード測定 1.24 0.58 0.09 0.14 外部並列抵抗を使用した Class II 終端方法 シミュレーション 1.73 0.76 N/A N/A ボード測定 1.28 0.43 N/A N/A 表 4‒10 の注: (1) DDR2 SDRAM DIMM のドライブ強度は最大強度に設定されています。 (2) N/A は適用されません。
ODT による Class I 終端
現在、ODT は SDRAM、グラフィックス DRAM、および SRAM などのメモリの共通機 能になりつつあります。ODT はボード終端コストを削減し、ボード配線を簡素化す るのに役立ちます。ここでは、DDR2 SDRAM の ODT 機能と ODT 機能を使用したとき の信号品質について説明します。
FPGA によるメモリへの書き込み
DDR2 SDRAM はビルトイン ODT を備えており、外部終端抵抗は不要です。メモリの ODT 機能を使用するには、メモリ初期化時にメモリをコンフィギュレーションして ODT 機能をオンにする必要があります。DDR2 SDRAM の場合、ODT 機能は拡張モー ド・レジスタをプログラムして設定します。DDR2 SDRAM の初期化時に拡張モード・ レジスタをプログラムし、さらに DDR2 SDRAM の ODT 入力ピンを High にドライブし て ODT をアクティブにする必要があります。
f ODT 機能の設定方法、および DDR2 SDRAM の ODT ピンをドライブするためのタイミン
グ要求について詳しくは、それぞれのメモリ・データシートを参照してください。 DDR2 SDRAM の ODT 機能は、ダイナミックに制御されます。すなわち、FPGA がメモ リに書き込んでいる間にオンになり、FPGA がメモリを読み出すときはオフになりま す。DDR2 SDRAM の ODT 機能には、50Ω、75 Ω、および 150 Ω の 3 つ設定がありま す。外部並列終端抵抗がなく ODT 機能がオンの場合、この終端方法は 4–26 ページの 「Class I 外部並列終端」 で説明した Class I 終端に類似したものになります。 図 4–27 に、DDR2 SDRAM の ODT がオンになっているときの終端方法を示します。 図 4‒27. ODT による Class I 終端方法 FPGA DDR2 DIMM DDR2 Component RS = 22 Ω VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver V VREF 16 mA
図 4–28 は、メモリ側の直列抵抗伝送線路で 50Ω の ODT を使用した、メモリ(レ シーバ)における信号のシミュレーションと測定を示します。 FPGA は 16 mA のドラ イブ強度設定でメモリに書き込みます。
表 4–11 は、外部抵抗とメモリ側で直列抵抗および ODT を使用した Class I 終端方法 の DDR2 SDRAM DIMM から見た信号の比較を示します。FPGA(ドライバ)がメモリ (レシーバ)に書き込みます。 DDR2 SDRAM で ODT 機能がイネーブルされると、アイの幅が改善されます。アイの 高さがいくらか劣化しますが、これは重要ではありません。ODT がイネーブルされ ているときに、信号品質が最も大きく改善されるのは、オーバシュートとアンダ シュートの減少で、メモリ・デバイスでの潜在的な信頼性の問題を軽減するのに役 立ちます。 メモリ ODT の使用は外部抵抗も不要にするので、ボード・コストの低下、ボード配 図 4‒28. FPGA によるメモリへの書き込み時のシミュレーションとボード測定 表 4‒11. FPGA によるメモリへの書き込み時の信号の比較 (1), (2) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) ODT を使用した Class I 終端方法 シミュレーション 1.63 0.84 N/A 0.12 ボード測定 1.51 0.76 0.05 0.15 外部並列抵抗を使用した Class I 終端方法 シミュレーション 1.69 1.51 0.34 0.29 ボード測定 1.25 1.08 0.41 0.34 表 4‒11 の注: (1) FPGA のドライブ強度は 16 mA に設定されています。 (2) N/A は適用されません。
FPGA によるメモリからの読み出し
アルテラの Arria GX、Arria II GX、Cyclone シリーズ、および Stratix II シリーズのデバイ スは、パラレル ODT を装備されていません。 FPGA によるメモリからの読み出し時に
DDR2 SDRAM の ODT 機能がオフになる場合の終端方法は、4–34 ページの図 4–31 に
示した非並列終端方法と似ています。
非並列終端
非並列終端方法は、HSTL I/O のための JESD8-6、SSTL-2 I/O のための JESD8-9b、およ び SSTL-18 I/O のための JESD8-15a などの JEDEC 規格で規定されています。このよう
な直列のみの終端方法を頻繁に試みる設計者の意図は、多くの場合は VTT電源の必要 性をなくすことです。 これは、通常、FPGA と DDR2 インタフェース間の任意の信号に対して推奨されてい ない終端になります。しかし、完全に並列終端を避けることを図れば、発生可能な 課題を明確にし、ここで参照ポイントとしてこのトピックの情報は含まれています。
FPGA によるメモリへの書き込み
図 4–29 は、メモリをドライブしている FPGA の非並列終端伝送線路を示します。 FPGA が伝送線路をドライブしているとき、メモリ側(DDR2 SDRAM DIMM)の信号 は、信号劣化(例えば、立ち上がり / 立ち下がり時間の劣化)が生じることがありま す。 これは、メモリ側に並列終端がないので、インピーダンスのミスマッチによるも のです。また、様々な要因(例えば、トレース長やドライブ強度)のために、レ シーバ端で見られる劣化がシステム障害に至るほど大きい場合もあります。システ ムでの各終端方法の効果を理解するために、ボードを設計する前後にシステム・レ ベルのシミュレーションを実行する必要があります。 図 4‒29. 非並列終端方法 FPGA DDR2 DIMM DDR2 Component RS = 22 Ω V VREF VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver図 4–30 には、533 MHz で 16 mA のドライブ強度オプションを使用した非並列終端方 法で、FPGA がメモリへの書き込みの HyperLynx シミュレーションと測定を示します。 測定点は、DDR2 SDRAM DIMM 上にあります。 シミュレートされ測定された信号から、十分なアイ開口部だけでなく DDR2 SDRAM で規定される 1.8 V 信号の大きなオーバシュートおよびアンダシュートがあることが 分かります。シミュレーションと測定から、オーバシュートは 1.8 V よりも約 1 V 高 く、アンダシュートはグランドよりも約 0.8 V 低くなります。このオーバシュートと アンダシュートは、メモリ・ベンダの DDR2 SDRAM データシートに記載されている 絶対最大定格仕様を超えているので、信頼性の問題を引き起こす可能性があります。
表 4–12 は、FPGA による DDR2 SDRAM DIMM への書き込み時に、非並列および Class II 終端方法の DDR2 SDRAM DIMM での信号の比較を示します。
図 4‒30. FPGA によるメモリへの書き込み時の HyperLynx シミュレーションとボード測定 表 4‒12. FPGA によるメモリへの書き込み時の信号の比較 (1) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 非並列終端方法 シミュレーション 1.66 1.10 0.90 0.80 ボード測定 1.25 0.60 1.10 1.08 外部並列抵抗を使用した Class II 終端方法 シミュレーション 1.65 1.28 0.16 0.14 ボード測定 1.35 0.83 0.16 0.18 表 4‒12 の注: (1) FPGA のドライブ強度は Class II の 16 mA に設定されます。
非並列終端方法での信号の形状はクリーンではありませんが、主要パラメータを考 慮すると、アイの幅と高さは Class II 終端方法の場合と同程度です。非並列終端方法 を使用する場合の主な欠点は、オーバシュートとアンダシュートです。レシーバに 終端がないので、信号がレシーバに到達したときにインピーダンスのミスマッチが 生じるため、リンギングや反射が発生します。また、FPGA に 16 mA のドライブ強度 を設定しても、伝送線路がオーバドライブされ、オーバシュートやアンダシュート が発生します。ドライブ強度の設定を下げると、オーバシュートとアンダシュート が小さくなり、レシーバでの信号品質が改善されます。 ドライブ強度が信号品質に与える影響について詳しくは、 4–52 ページの「ドライブ 強度」 を参照してください。
FPGA によるメモリからの読み出し
非並列終端方法では(図 4–31 )、メモリが伝送線路をドライブしているとき、抵抗 RSはソース終端抵抗として機能します。DDR2 SDRAM ドライバには、次の 2 つのド ライブ強度設定が用意されます。 ■ 出力インピーダンスが約 18Ω の最大強度 ■ 出力インピーダンスが約 40Ω の低強度 DDR2 SDRAM DIMM が伝送線路をドライブするとき、22Ω のソース直列抵抗とドラ イバ・インピーダンスの組み合わせと伝送線路の特性インピーダンスがマッチング しなければなりません。それによって、レシーバ(FPGA)での信号のオーバシュー トとアンダシュートが減少します。 図 4‒31. FPGA によるメモリからの読み出し時の非並列終端方法FPGA DDR2 DIMM Full Strength
DDR2 Component RS = 22 Ω VREFF VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver Receiver
図 4–32 は、メモリがメモリ側に直列抵抗を持つ非並列終端の伝送線路をドライブす るときに、FPGA(レシーバ)での信号のシミュレーションと測定を示します。 表 4–13 に、FPGA によるメモリからの読み出し時に非並列および Class II 終端方法の FPGA での信号の比較を示します。 4–32 ページの「FPGA によるメモリへの書き込み」のように、非並列終端方法におけ る信号のアイの幅と高さは、Class II 終端方法と同程度ですが、欠点はオーバシュー トとアンダシュートです。伝送線路に終端がないためオーバシュートとアンダ シュートが発生しますが、 4–32 ページの「FPGA によるメモリへの書き込み」で説明 したほど大きくありません。これはソース(メモリ側)に、ドライバに返される反 射を減衰させ、FPGA 側での反射の影響をさらに軽減する直列抵抗が存在するためで す。 図 4‒32. FPGA によるメモリからの読み出し時の HyperLynx シミュレーションとボード測定 表 4‒13. FPGA によるメモリからの読み出し時の信号の比較(1), (2) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 非並列終端方法 シミュレーション 1.82 1.57 0.51 0.51 ボード測定 1.62 1.29 0.28 0.37 外部並列抵抗を使用した Class II 終端方法 シミュレーション 1.73 0.76 N/A N/A ボード測定 1.28 0.43 N/A N/A 表 4‒13 の注: (1) DDR2 SDRAM DIMM のドライブ強度は最大強度に設定されています。 (2) N/A は適用されません。
メモリ側の直列抵抗をなくすと(図 4–33 )、メモリ・ドライバのインピーダンスは 伝送線路とマッチングしなくなり、終端されていない FPGA 側から返される反射を減 衰させる直列抵抗がドライバに存在しなくなります。 図 4–34 は、メモリに最大ドライブ強度を設定した非並列終端方法の FPGA における 信号のシミュレーションと測定を示します。 表 4–14 は、メモリ(ドライバ)から FPGA(レシーバ)への書き込み時に、メモリ 側に直列抵抗がある場合とない場合の非並列終端の違いをまとめたものです。 図 4‒33. FPGA によるメモリからの読み出し時の非並列終端方法
FPGA DDR2 Component Full Strength
VREF VREF = 0.9 V Driver Driver Receiver 50 Ω 3” Trace Length Receiver 図 4‒34. FPGA によるメモリからの読み出し時の HyperLynx シミュレーションと測定 表 4‒14. メモリ側に直列抵抗ありとなしの非並列終端(1) アイの幅 (ns) アイの高さ (V) オーバシュート (V) アンダシュート (V) 直列抵抗なし シミュレーション 1.81 0.85 1.11 0.77 ボード測定 1.51 0.92 0.96 0.99 直列抵抗あり シミュレーション 1.82 1.57 0.51 0.51 ボード測定 1.62 1.29 0.28 0.37 表 4‒14 の注: (1) メモリのドライブ強度は最大強度に設定されています。