[10 のハード ガイド] - 7.4 [ダイナミック RAM] DDR4 設計の概要、分析およびシミュレーションのケース

導入

  コンピューターやサーバーのパフォーマンス要件がますます高くなるにつれて、SI (シグナル・インテグリティー) 部分や関連する中国の材料を対象とした一部のハイエンド設計で DDR4 が使用され始めています。 SI 問題を引き起こしやすい. DDR4 マージン テストの失敗などの問題は、一度発生すると多くの設計者にとって頭痛の種になります. デバッグ プロセスは非常に困難です. 信号テストはますます困難かつ不正確になり、検証が困難になります. PCB レイアウトの最適化基板検証方法の非効率性により、多大なコストもかかります。

  この場合、信号シミュレーション手法を使用して問題を分析および検証する方がはるかに便利です。この記事では、DDR4 の基本概念から始まり、DDR4 に関連する主要なテクノロジといくつかの新しい手法を紹介し、さらに実際の DDR4 マージン フェイル問題を組み合わせて、問題解析の考え方とシミュレーション手法を簡単に説明します。

1. DDR4の主要なテクノロジーと手法の分析

1.1 DDR4 と DDR3 の違い

  DDR3 と比較すると、DDR4 はまず外観にいくつかの変更が加えられています。たとえば、DDR4 はメモリの下部の中央がわずかに突き出ており、端が短くなっているように設計されています。中央の高い点と両端の低い点は、滑らかな曲線遷移を実現するこの設計により、ゴールド フィンガーとメモリ スロットの間に十分な接触面が確保され、メモリの安定性が確保されます。また、DDR4 メモリのゴールド フィンガーの設計も大幅に変更されました。フールプルーフ ノッチゴールドフィンガーの中央はDDR3よりも中心に近いです。もちろん、DDR4 の最も重要な使命は、周波数と帯域幅を増やすことです。一般的に、DDR4 は、パフォーマンスが高く、安定性が高く、消費電力が低いです。SI の観点から見ると、主なポイントは次のとおりです。各章で主な違いを説明します。

ここに画像の説明を挿入します

1.2 POD と SSTL の比較

  POD は DDR4 の新しい駆動規格で、DDR3 で使用されている SSTL 受信側の端子電圧が VDDQ/2 であるのに対し、受信側の端子電圧が VDDQ であることが最大の違いです。これにより、端子の寄生容量や入出力端子の消費電力が低減され、VDD電圧が低下しても安定した動作が可能となります。等価回路を図 1 (DDR4)、図 2 (DDR3) に示します。

ここに画像の説明を挿入します
DRAM がローレベル状態のとき、SSTL と POD の両方に電流が流れていることがわかります。

ここに画像の説明を挿入します
DRAM がハイレベル状態のとき、SSTL には電流が流れ続けますが、POD は両端の電圧が同じであるため、電流は流れません。これが、DDR4 の電力効率が高い理由でもあります。

ここに画像の説明を挿入します

1.3 データバス反転 (DBI)

  前述したように、POD の特性上、データが High レベルのときは電流が流れないため、DDR4 の消費電力を削減するには、できるだけ High レベルを多くすることが DBI テクノロジーの核心です。たとえば、8 ビット信号のセットで少なくとも 5 ビットがロー レベルの場合、すべての信号が反転され、少なくとも 5 ビットの信号がハイ レベルになります。DBI 信号が Low になると、すべての信号が反転されたことを意味します (DBI 信号が High の場合、元のデータが反転されていないことを意味します)。この場合、9 つの信号のセット (8 つの DQ 信号と 1 つの DBI 信号) のうち、少なくとも 5 つの状態が High になるため、消費電力が効果的に削減されます。

ここに画像の説明を挿入します

1.4 ODT制御

  DDR2以降、信号品質を向上させるために、ODT(On Die Termination)と呼ばれるDQ、DM、DQS/DQS#の終端抵抗がコントローラーやDRAMに組み込まれています。クロックおよび ADD/CMD/CTRL 信号では、引き続き外部終端抵抗を使用する必要があります。

ここに画像の説明を挿入します
  DRAM では、オンダイ ターミネーションの等価抵抗値はモード レジスタ (MR) によって設定され、ODT の精度は基準抵抗 RZQ によって制御されます。DDR4 ODT は 240、120、80、60、48、40、34 オームをサポートします. .

  DDR3 とは異なり、DDR4 の ODT にはデータ終了無効、RTT_NOM、RTT_WR、および RTT_PARK の 4 つのモードがあります。

  コントローラは、読み取りおよび書き込みコマンドと ODT ピンを通じて RTT ステータスを制御できます。RTT_PARK は、DDR4 に追加された新しいオプションです。通常、マルチランク DDR 構成で使用されます。たとえば、システムには Rank0、Rank1、および Rank2 があります。コントローラーが Rank0 に書き込むとき データを送信するとき、Rank1 と Rank2 は同時に高インピーダンス (Hi-Z) または比較的弱い端子 (240、120、80 など) にすることができます。RTT_Park は、より柔軟な端子メソッドを提供します。 Rank1 と Rank2 は必要ありません。常にハイ インピーダンス モードになり、DRAM がより高い周波数で動作できるようになります。

  一般的に、ODT 値はコントローラーの BIOS 調整レジスターを介して調整できますが、一部のコントローラー メーカーはこれを推奨していません。Intel を例に挙げると、Intel が提供する MRC コードにはすでに最適化された ODT 値が与えられています。理論的には、ユーザーはシミュレーションやその他の方法で他の ODT 値を取得し、BIOS で変更することができますが、これによって生じるすべての問題は設計メーカーが負担します。次の表は、Intel が提供する最適化ソリューションです。
ここに画像の説明を挿入します

1.5 基準電圧 Vref

  ご存知のとおり、DDR 信号は通常、入力信号と別の基準信号 (Vref) を比較することによって、信号が High か Low かを判断します。しかし、DDR4 では Vref がありません。次の 2 つの設計を見てみましょう。 DDR4 の設計では、VREFCA は DDR3 と同じであることがわかります。これは、外部分圧抵抗または電源制御チップを使用して生成されます。ただし、VREFDQ は設計に含まれておらず、代わりにチップによって内部で生成されます。これにより、設計コストが削減されるだけでなく、コストが増加します。

      ここに画像の説明を挿入します
  DRAM の内部 VREFDQ はレジスタ (MR6) によって調整され、主なパラメータは、以下の表に示すように、電圧範囲、ステップ サイズ、VREF ステップ時間、VREF フル ステップ時間です。

ここに画像の説明を挿入します
  DRAM コントローラは、オンになるたびに、一連のキャリブレーションを通じて DRMA エンドの入力データ信号の VREFDQ を調整し、タイミングと電圧マージンを最適化します。言い換えれば、VREFDQ は VDD に依存するだけでなく、伝送路特性と受信側チップの特性が関係するため、Power Up を行うたびに VREFDQ の値が異なる場合があります。

  Vref の違いにより、Vih/Vil にも違いが生じますが、ODT を調整することで Vref の違いを確認することができ、シミュレーション例を使用して説明します。DDR3 の場合、ODT 波形を調整すると波形は同期して上下に浮き上がりますが、DDR4 OOT を調整すると波形は片側のみ動きます。

ここに画像の説明を挿入します
ここに画像の説明を挿入します

1.6 DDR4 レイアウト ルーティングの新しい方法

  すべてのレイアウト トレースの中で、DDR は間違いなく最も複雑です。インピーダンスのマッチングだけでなく、長さのマッチングも考慮する必要があります。さらに、データ線とアドレス線の数が多く、クロストークの影響も考慮する必要があります。

  DDR4 データレートが増加すると、これらの側面の影響はさらに深刻になり、特に現在では、コストを節約するために、多くの設計で PCB サイズと層数をできるだけ小さくする必要があるため、インピーダンスとクロストークの要件がより厳しくなります。一般に、SI エンジニアやレイアウト エンジニアは、これらのニーズを満たすためにさまざまな方法を考え、スタックアップ設計を行うときに線幅を小さくしようとしたり、ラインをより細くしたりするなど、多くの場合妥協しなければなりません。 BGAブレークアウトエリア、ライン等 しかし、これらの方法では設計を微調整することしかできず、問題を根本的に解決することは困難です。インテルの研究によって最近発見された新しい方法は非常に興味深いもので、インピーダンス (線幅) とクロストーク (線間隔) のバランスをある程度まで良くすることができます。参考までにここにまとめておきます。

  まずは実際のレイアウト例を見てみましょう、赤い2本の線の間の軌跡がジグザグになっています。そう、これはIntelが開発した新しい方式で、正式名称は「タブルーティング」といいます。

ここに画像の説明を挿入します
  タブ配線の主な方法は、次の図に示すように、スペースが狭い領域 (通常は BGA 領域と DIMM スロット領域) で線幅を減らし、盛り上がった小さなブロック (タブ) を増やすことです。

ここに画像の説明を挿入します
  この方法により、2つの線路のインダクタンス特性をほとんど変えずに相互容量特性を増加させることができ、増加した容量により各層のインピーダンスを効果的に制御し、外層の遠端クロストークを低減できます。シミュレーション結果を以下の図に示します。

ここに画像の説明を挿入します
  シミュレーション結果から、この方法が実際にインピーダンスと遠端クロストークの間で良好なバランスを達成できることがわかります。もちろん、タブのサイズについては、実際の PCB に基づいて詳細なシミュレーション設計を行う必要があります。Intel も参考のためにいくつかのツールを提供します。興味のある読者は詳細情報を参照してください

2、DDR4シミュレーション

2.1 HyperLynx による事前シミュレーション

  コントローラーと DRAM の両方に IBIS モデルがある場合、HyperLynx を使用して DDR4 を非常に簡単にシミュレーションできます。シミュレーション方法は他の DDR と同じです。事前シミュレーションを通じて、システム全体のトポロジーといくつかの詳細を決定できます。インピーダンス(スタックアップと(線幅と線間隔で決まる)による)、ODT値の選択、T字構造のスタブ長の制御、ADD/CMD/CTRL終端抵抗の値の大きさなど。

2.1.1 ADD/CMD/CTRL 終端抵抗値

ADD 回路が次のとおりであると仮定します。2400MT (Add/CMD は 1.2Gbps) で動作し、送信側は U16 で、5 つのグループの DRAM チップに対してフライバイ構造を使用し、各グループの DRAM は T 構造を採用しています (実際にはレイアウト、上面に 1 つの DRAM チップ、下面に 1 つの DRAM チップがあります)、T 字型のスタブ長は 77mil、終端抵抗は 32 オーム、終端電圧は 0.6 V です。

ここに画像の説明を挿入します
  シミュレーション結果から、T 字構造の両端の波形は完全に対称であるため、ほぼ同じであることがわかりますが、観察の便宜上、一方の波形のみを示しています。コントローラーの DRAM はそれぞれ U5、U4、U3、U2、および U1 であり、それらのアイ ダイアグラムは次のとおりです。

ここに画像の説明を挿入します
  コントローラーに近いチップの波形はより「乱雑」ですが、立ち上がりエッジが非常に速く、終端抵抗に近いチップの波形は良好ですが、立ち上がりエッジが遅くなることがわかります。最適化された波形を取得するにはどうすればよいでしょうか?終端抵抗の値をスキャンして、信号品質が改善されるかどうかを確認してみましょう。HyperLynx のスイープ機能を使用して、終端抵抗の抵抗値を 27、33、39、および 4 つの値に設定します。 45.

ここに画像の説明を挿入します
U5 (コントローラーに最も近い) のアイ ダイアグラムは次のとおりで、終端抵抗の抵抗値 27、33、39、および 45 オームに対応します。

ここに画像の説明を挿入します
U4 のアイ ダイアグラムは次のとおりで、順に 27、33、39、45 オームの終端抵抗の抵抗値に対応します。 U3 のアイ ダイアグラムは次のとおりで、終端抵抗の抵抗値に対応し
ここに画像の説明を挿入します
ます27、33、39、45 オームの順:
ここに画像の説明を挿入します
U2 のアイ ダイアグラムは次のとおりです。対応する終端抵抗値は順に 27、33、39、45 オームです。U1
ここに画像の説明を挿入します
のアイ ダイアグラムは次のとおりです。上の波形からわかるように
ここに画像の説明を挿入します
  、各 DRAM に対応する 3 番目の波形が最良であり、最適化された波形が可能であることを意味します。 39Ωの終端抵抗に相当する値が得られます。

2.1.2 データ信号スタブの長さ

  一般的な DDR4 設計では、データ信号は Pin to Pin 設計方式を採用しますが、一部の設計では、PCB スペースの制限やコントローラの制限により、1 to 2 設計 (T 字型構造) を採用する必要もあります。筆者の場合、ある設計でこの状況に遭遇し、次の 2 つの選択肢を検討しました。

  図 20 に示すように T 字型トポロジを使用すると、PCB スペースを可能な限り節約できますが、DIMM0 または DIMM1 を 1 つだけ挿入すると、反対側に長いスタブが表示され、影響が生じます。信号の品質。
  図 21 に示すように、デイジー チェーン構造が使用されている場合、DIMM0 のみが挿入されると、スタブ効果も発生します。また、このトポロジでは DIMM0 と DIMM1 の間の信号線の長さを一致させる必要があるため、DIMM0 と DIMM1 が比較的近い場合、巻き付けが困難になります。また、DIMM0 と DIMM1 の間の距離が長くなると、スタブが長くなり、信号品質を制御できなくなります。

  シグナルインテグリティの観点からは、どちらのソリューションもスタブの影響を受けますが、レイアウトの観点からは、ソリューション 1 に一定の利便性があり、そのスタブは 500 mil 以内で制御できます。したがって、最終的にはオプション 1 が最終オプションとして選択されました。もちろん、この設計では信号マージンが犠牲になるため、信号レートはある程度の影響を受けますが、著者のプロジェクトでは、メモリを 1 枚だけ挿入した場合、信号レートは最大 1866Mb/s までしか到達できません。 。

ここに画像の説明を挿入します
  シミュレーションの観点から見ると、この種のシミュレーションでは、コントローラー モデル、PCB モデル、コネクタ モデル、そして最後にメモリ モジュール モデルなど、多くの要素を考慮する必要があります。通常の状況では、コネクタ モデルとメモリ モジュールは、モデルは入手が難しく、入手できたとしてもさまざまな種類のモデルがあり、チャネル シミュレーション全体を完了するにはより多くの時間とエネルギーが必要です。

  時間が限られており、デザインを迅速に評価する必要がある場合は、HyperLynx を使用して迅速なシミュレーションを行うこともできます。次の例では、コントローラーが 2 つの DIMM または 2 つのメモリ チップを駆動する必要があり、システムが 2400Mb/s で動作すると仮定します。 TL2 および TL3 の長さは、PCB スタブの長さにコネクタの長さ、メモリ モジュールの長さを加えたものを大まかに評価するために使用できます。(これは大まかな評価にのみ使用されます。時間条件下で実行する場合は、より正確なシミュレーションのために各部品の正確なモデルを取得することを強くお勧めします)。

  この単純なシミュレーションから、特に 1 つのメモリ スロットが一時停止されている場合、信号品質に対するスタブの影響が依然として非常に明白であることがわかります。上の例では、スタブが 1000 mil に達したとき、メモリ スロットが 1 つだけ挿入されている場合です。この場合、アイ ダイアグラムはすでに非常に悪いので、実際の設計では、設計コストと信号レートの間でトレードオフを行う必要があります。私が作成した設計では、PCB スペースの制限により、最終的に 1 つのメモリー スティックで 1866Mb/s のみを実行することにしました。

ここに画像の説明を挿入します
スタブ長が 500mil の場合、2 つのメモリと 1 つのメモリのみのアイ ダイアグラムは次のとおりです。
ここに画像の説明を挿入します
スタブ長が 1000mil の場合、両方のメモリと 1 つのメモリのみのアイ ダイアグラムは次のとおりです。
ここに画像の説明を挿入します
  Intel を使用する場合は DDR コントローラーとして設計されており、Intel が提供する SI モデルは比較的完全なシミュレーションを提供できます。Intel が提供するシミュレーション デッキには、DDR コネクタと DIMM モデルが含まれています。実際のプロジェクトに一致するモデルが見つかった場合は、モデルを置き換えることができます。モデルが見つからない場合は、デッキで提供されているモデルを直接使用することも非常に便利です。

2.2 インテル SISTAI シミュレーション

  Intel が提供する Memory Bit Error Rate Executable (MBERE) ツールは、Intel SISTAI (Signal Integrity Support Tools for Advanced Interfaces) Web サイト システムに統合されており、SISTAI は PCIE、SATA、USB、QPI などの高速信号、および DDR4 をシミュレートできます。シミュレーション モジュールは MBER です。基本的な考え方は、最初に Hspice に基づいてステップ応答を生成し、次にシミュレーション結果の TR0 ファイルを SISTAI システムに入力して計算し、ワース ケースのアイ ダイアグラムを生成することです。一般的なシミュレーション プロセスは次のとおりです。以下に続きます:

2.2.1 DDR チャネルのモデリング

  インテルのシミュレーションは、8 つの DQ ラインと 2 つの DQS ラインの 10 ライン モデルに基づいています。インテルが提供する Causal-W Element ツールを使用して、W 要素モデルを生成できます。また、ADS や Hspice などのツールを使用して伝送をモデル化することもできますポストレイアウトの場合、PowerSI、Siwave、およびその他のソフトウェアを使用して、DDR チャネルの S パラメータを抽出できます。図 23 に示すように、ここでの DQ と DQS の順序は、インテルが提供する順序と同じである必要があることに注意してください。

ここに画像の説明を挿入します

2.2.2 Hspiceシミュレーション

  インテルのシミュレーション モデルは非常に詳細であり、さまざまな状況に応じたさまざまなモデルとシミュレーション デッキが提供されています。実際のシミュレーションでは、デッキ内のパラメーターを実際に設計されたモデルに置き換える必要があります。S パラメーターを例にとると、S パラメーター全体がDDR チャネルの S パラメータでは、下図の 2 番目の赤いボックスに示すように、pcakage パラメータの後に PCB チャネル モデルを追加する必要があります。前のパラメータの一部を削除するか、* を使用して追加してブロックすることができます。

ここに画像の説明を挿入します
Hspice シミュレーションはステップ応答を取得し、結果は次のとおりです。

ここに画像の説明を挿入します

2.2.3 SISTAI シミュレーション

Tr0 ファイルを取得した後、Tro を SISTAI システムに入れて計算します。操作プロセスは次のとおりです: [
ここに画像の説明を挿入します
成功] をクリックしてシミュレーション結果を取得します。残念ながら、SISTAI は目の幅と目の高さなどのシミュレーション データしか表示できません。アイ ダイアグラムは提供されません。
ここに画像の説明を挿入します
Intel のドキュメントには、シミュレーション結果を比較して判断するための仕様も記載されています。

ここに画像の説明を挿入します

3. DDR4 RMT マージンテストの失敗問題例

3.1 設計状況

この設計は、以下の図 29 に示すように、Intel Haswell-EP CPU を DDR4 コントローラとして使用し、3DPC (チャネルごとの DIMM) 設計を採用しています。DDR4 は 1600Mb/s で動作します。

ここに画像の説明を挿入します

3.2 問題の説明

  マザーボードの完成後、DDR4 信号をテストして検証する必要がありますが、DDR4 メモリ モジュールの場合、テスト ポイントを見つけるのが非常に難しく、テスト結果も非常に不正確です。すべてのオプションはメモリ マージンのみをテストすることになります。Intel が提供するマージン テスト ツール RMT を使用してテストする場合、Hynix 8G、Hynix 16G、Samsung 8G、Samsung 16G、Samsung 32G、Micron 8G、Micron 16G を含むさまざまなメーカーのメモリ モジュールをテストしましたが、そのうち Micron The 8G の結果のみが示されています。 RxVLow および RxVhigh の値が 14 未満 (スペックが 14 以上)、および他のメモリ モジュールのテスト結果がスペック要件を満たしていること。
ここに画像の説明を挿入します

3.3 メモリマージンテスト

  上記の RMT テストは失敗しましたが、RMT テストとは何ですか? 以下は、メモリの一般的なテストの概要です。ご存知のとおり、実際の PCB が完成したら、信号の整合性を検証するためにテストする必要があります。通常、DDR信号線の読み書き時の信号品質をテストするにはオシロスコープが使用されますが、DDR信号が各部品に到達する測定ポイントを測定することができず、テストポイントが測定できないなど、大きな限界があります。多くの場合、チップパッドから遠く離れています。追加のテスト機器が必要な距離がまだあり、必然的に精度に影響します。また、DDR 信号の読み取りと書き込みの分離は常に処理が困難です。たとえ専門的なテストを使用したとしても機器メーカーが提供するソフトウェアでは、あまり正確な結果が得られないことがよくあります。波形とテスト ポイントはチップの外側にのみ配置されており、メモリ コントローラー内部の信号タイミング調整は測定できません。そのため、オシロスコープを使用してテストすることに加えて、波形を確認するには、メモリ マージン テストを実行することも必要です。

ここに画像の説明を挿入します
  簡単なメモリ マージン テスト方法は、コントローラと DRAM の両方が外部 VREF によって電力供給されている条件下で VREF の電圧振幅を調整し、同時にメモリ ストレス テスト ソフトウェア (Golden Memory、MSTRESS など) を実行することです。テストが失敗するまでの時間 VREF 値とデフォルト VREF 値の差が VREF マージンとして記録されます。VREF はチップ受信側 (コントローラーまたは DRAM) が入力が 0 か 1 かを判断するための基準にすぎないため、VREF を調整しても信号伝送の波形には影響しません。しかし、DDR4時代ではVrefdqがチップ内に組み込まれており、調整することができません。

  現時点では、Intel が DDR マージン テスト用に RMT や EVTS を提供しているなど、一部の専用テスト ソフトウェアの方が便利です。

ここに画像の説明を挿入します
  RMT (DDR Rank Margin Tool) の原理は、起動時に BIOS がトレーニング プログラムを自動的に実行するように設定を変更し、同時にトレーニング結果をデバッグ ポート経由で出力し、出力された印刷情報を分析して取得することです。メモリマージン。得られる結果には、VREF マージンだけでなく、書き込み/読み取りタイミング マージン、ADD/CMD タイミング マージンも含まれます...EVTS は RMT の補足であり、ビットごとのマージン テストを実行できます。マージンが良好でない場合は、左と左右対称の場合、EVTS 2D Margin を使用すると、原因がアイ ダイアグラムの形状によるものかどうかを理解できます。

3.4 問題分析

3.4.1 Micron 8G 本体分析

  他のメモリモジュールの RMT テストは PASS であるため、Micron 8G のテストだけが Fail です。最初に思い浮かぶのは DIMM 自体の問題です。Micron FAE に連絡したところ、Micron はテストしたメモリの製造日が間違っているのではないかと疑っていました。モジュールが古すぎるため、バージョン変更がテスト結果に影響を与える可能性がありましたが、最新のサンプルを入手した後もテスト結果は改善されませんでした。

  同時に、これらのサンプルを使用して Intel CRB (カスタム リファレンス ボード) でテストすることもできます。

  このことから、マージン フェイルの原因は Micron 8G 自体だけではなく、マザーボードの PCB マージンを増やすことで RMT 結果を改善することができると判断できます。

3.4.2 シミュレーションによる問題の分析

  問題の内容から判断すると、マザーボード+大部分のメモリモジュールはPASSテスト、問題のあるメモリモジュール+その他のマザーボードはPASSテストとなっており、最も問題となるのはWorst Case + Worse Caseと思われます。この場合、単純に設計自体を見ると、すべての設計指標は関連ドキュメントまたは設計ガイドを満たすことができます。詳細から始めて、いくつかの微妙な調整と最適化を通じて互いのマージンを改善することしかできません。この場合、Micron 8G のモジュールはこれまでと同様です。十分な証拠が得られないうちは、メーカーに修正を依頼することはできません。マザーボードは設計段階にあります。マザーボードのレイアウトを最適化および改善するには、マザーボードのレイアウトを最適化および改善する唯一の方法のようです。マージン。

  ただし、DDR の場合、前述したように、すべての設計指標が関連する設計ルールを満たしているため、経験的な推測、修正、テストだけでそれを行うのは間違いなく非効率的で適切です。ただし、シミュレーションを通じて、さまざまなケースのさまざまなシミュレーションを実行し、マージンを改善するための明らかな改善点を見つけて、レイアウトを変更します。これにより、より的を絞ったものとなり、複数回の改訂による時間とコストの無駄が回避されます。

  この記事のセクション 3.1 で説明したように、設計自体に戻ります。図 33 に示すように、この設計では 3 つのメモリ (1 つのコントローラと 3 つの DIMM) を持つチャネルが使用されます。テスト結果を注意深く分析した結果、最悪の悪影響は DIMM2 です。 (距離 CPU に最も近いもの) について簡単な理論分析を行うと、CPU から DIMM2 にデータを書き込む場合でも、DIMM2 から CPU にデータを読み取る場合でも、DIMM1 と DIMM0 がどのような状態であっても、L2 と L3 は常に存在します。 DIMM2 の場合は、「スタブのセクションがあり、スタブによって信号の反射が発生し、マージンが減少します。おお、根本原因がわかりました。問題は非常に単純であることがわかりました。早速やってみましょう」バージョンを修正して PCB の次のバッチを作成します。しかし、次のバッチがまだ機能しない場合はどうすればよいでしょうか? まずは落ち着いてシミュレーション検証を行ってください。

ここに画像の説明を挿入します

  落ち着いて注意深く分析し、マザーボードと Intel CRB の PCB 設計を比較してください。案の定、ここに違いがあります。CRB ボードの L2 と L3 の長さは約 398 mil ですが、L2 と L3 の長さは約 398 mil です。マザーボードの長さは約 462 mil です。確かに違いがあります。ここに長さの違いがあるため、以前の分析から判断すると、シミュレーション結果は間違いなく異なります。シミュレーションしてみましょう。前述したように、Intel SISTAI は、シミュレーション データは提供されますが、波形を表示することはできません。 シミュレーション 結果は次のように整理されます。

ここに画像の説明を挿入します

  シミュレーション結果から 2 つの点がわかります。1 つ目は、最悪のシミュレーション データも DIMM2 であり、実際のテスト結果と一致しています。2 つ目は、マザーボードのシミュレーション結果が Intel CRB の結果より悪く、これは以前の分析と一致しています。そして推測します。では、L2 と L3 の長さを短くすると、シミュレーション結果は改善されるのでしょうか? PCB とコネクタ自体の違いにより、マザーボード L2 と L3 は約 410 mil までしか減らすことができません。では、PCB を改善した後の結果はどうなるでしょうか? シミュレーションデータは以下の通りです。D2 の結果は Write と Read に関係なく改善されていることがわかりますが、それでも Intel CRB と大きく異なるのはなぜでしょうか?

ここに画像の説明を挿入します
  改めてレイアウトを比較してみると、トレース配線に違いは見当たりません。これまで注目されていなかったスタックアップ(Stackup)が最大の違いとなっています。CRBは8層基板ですが、当社のマザーボードは18層基板です。 -層基板と当社マザーボードのDDR配線はTOP層に近い配線となっており、このような大きな積層の違いはPTHビアホールによるスタブ長の違いに直結し、同様にDIMMスロットのピン長の違いも同様に、スタブにも影響します。CRB で使用される DIMM スロットのピン長は 2.4 mm です。マザーボードの DIMM スロットのピン長は 3.2 mm で、対応する DIMM スロット モデルが見つかりません。単純に DIMM をシミュレートすることしかできません。 PCB スタックの厚さを削除または増やすことでスロット ピンの長さを変更し、マザーボードの DIMM スロット ピンの長さを 2.4 mm に縮小した場合 (単純なシミュレーションにはスタックアップの変更を使用)、シミュレーション結果は次のとおりであり、CRB の結果に非常に近くなります。このシミュレーションはあまり正確ではありませんが、信号品質に対するスタブの影響を確認できます。

ここに画像の説明を挿入します

  解析結果によると、L2とL3の長さを短くし、ピンの短いDIMMスロットに変更します(設計がほぼ決まっているため、小さな変更しかできず、DDRトレースを移動する方法はありません)最下層に近い層)、再改訂後は、前回不合格だったマージンが2~3段階増えて、ようやく合格できるようになりました。

  この時点で、このケースの解析とシミュレーションは基本的に終了しました。DIMM 間の長さと DIMM スロットのピンの長さ (および PTH VIA スタブ) により、スタブは信号マージンの向上に貢献します。そのため、3DPC をターゲットとする場合 ( DIMM (チャネルごと) 設計では、設計の初期段階で、DIMM 間の長さを可能な限り短くする必要があります。基板厚が比較的厚いケースの場合は、DDR トレースを可能な限り底面の近くに配置する必要があります。信号品質に対するスタブの影響を軽減します。

4. まとめ

  DDR の設計、シミュレーション、およびテストは、ほとんどの設計者にとって常に懸念事項であり、ほとんどのエンジニアにとって頭痛の種です。まず理論的に理解すると、DDR には、タイミング、ドライバー強度などのインターフェイス回路など、多くの技術的な問題が含まれています。 、ODT およびその他の概念を理解する必要があります。第二に、レイアウトの観点から見ると、DDR はシリアル バスのようなものではありません。DDR には数対の差動ラインしかありません。問題は簡単に特定できます。DDR で問題が発生すると、問題が特定されると、厄介な問題になります。多くの設計者にとって、多くのテストと実験が必要です。最後に、シミュレーションの観点から見ると、DDR シミュレーションはシリアル バス シミュレーションよりもはるかに複雑で、PCB、コネクタ、メモリ モジュール、さまざまなパラメータ設定などを考慮する必要があります。

  この記事は、DDR 設計でよくある混乱を解決することを目的としており、まず DDR4 の新しい主要なテクノロジについて簡単に説明し、次に DDR4 の現在のシミュレーション方法と、DDR4 用のインテルのシミュレーション ソリューションを紹介します。最後に、メモリ マージンの実際の事例を通じて、問題を分析および解決するためのアイデアを紹介します。

  この記事を書くにあたり、著者はインターネット上のさまざまな情報や先輩の記事を参考にし、同時に私自身の意見も多く加えましたが、私のレベルに限界があるため、間違いは避けられません。誤解がありますので、すぐに訂正してください。同時に、みんなで改善したり、補完したり、話し合いながら、一緒に進んでいけたらいいなと思っています。




ディレクトリ「ハード十宝」に戻る - 7. 記憶カテゴリー

おすすめ

転載: blog.csdn.net/qq_37952052/article/details/126236759