前回のアップデートでは、モジュールに適したレイヤースタックを定義し、ボード上に配置されたすべてのコンポーネントにファンアウトルーティングを追加することを見てきました。これらの準備に基づき、私たちは今、最初のトレースをルーティングする準備がほぼ整いました。しかし、ボード上の任意のコンポーネントを接続する前に、インピーダンスプロファイルを定義し、正しいトレース幅に対するマッチングデザインルールを設定する必要があります。
レイヤースタックマネージャーでインピーダンスプロファイルを設定するのは簡単です。単終端と差動インピーダンスプロファイルの両方を定義する必要があります。必要なインピーダンス値に関する情報は、インターフェース標準とNXP i.MX8プロセッサのハードウェア設計ガイドから取得できます。以下のインピーダンス値は、設計で使用される単終端および差動の両方です:
以前に定義されたレイヤースタックでは、インピーダンス制御ルーティングに使用できる4つの信号層があります。これらはトップレイヤー、L2、L7、およびボトムレイヤーです。トップレイヤーとボトムレイヤーはそれぞれ1つの参照グラウンドプレーンしか持っていませんが、L2とL7は2つの参照プレーンの間に埋め込まれています。インピーダンス値と参照層を入力した後、トレースのジオメトリは自動的に計算されます:
レイヤースタックマネージャーインピーダンスプロファイル差動100オーム
トレースのジオメトリー、特に差動ペアのトレース幅とギャップを定義する際には、必要なルーティングスペースを念頭に置くことが重要です。可能であれば、必要なルーティングスペースを限定するために、差動ペアの全体幅を小さく保ちたいと考えています。ボードの密度に応じて、これもレイヤースタックを定義する際に考慮すべき事項です。
最初のトレースをルーティングできるようになる前に残っているステップは、Altium Designerに、インターフェースとルーティングレイヤーに応じて必要なトレース幅(および差動ペアのギャップ)を伝えることです。インピーダンス値は、回路図の適切なインターフェースに割り当てられます。ここでは、ネットをネットクラスや差動ペアクラスに割り当てるためにディレクティブを使用することができます。
デザインブランケットに割り当てられた複数のネットクラス
設計ルールエディターでは、これらのネットや差動ペアクラスをターゲットにして、対応するトレースジオメトリーを割り当てることができます。トレースジオメトリーを手動で入力する代わりに、レイヤースタックマネージャーで定義したマッチングインピーダンスプロファイルを選択することができます:
設計ルールダイアログで使用されるインピーダンスプロファイル – 高優先度ルールがインピーダンスプロファイルをオーバーライド
私たちの設定で最も高い優先度を持つ別の設計ルールがあることに注意してください。この設計ルールは、前回のアップデートで作成した特定の設計ルームにのみ適用されます。これらの設計ルームは、細ピッチコンポーネントの直下にのみ配置され、ブレイクアウト領域で最小85μmまでのトレース幅と間隔を局所的に使用できるようにします。これらのルームの設計ルールは、定義されたインピーダンスプロファイルを上書きする必要があるため、最も高い優先度を持ちます。これらのルーム内で必要なトレースの形状に従うことができない場合があるため、できるだけ小さく保ち、インピーダンスプロファイルから逸脱するトレースの形状を絶対に必要な場所でのみ使用する必要があります。これらのセクションを非常に小さく保つことができれば、チャネルの信号整合性への全体的な影響は許容範囲内になります。ただし、これをポストレイアウトシミュレーションで確認する必要があります。
細ピッチBGAの下に示された赤い設計ルーム
すべての設計ルールが定義された今、最初のインターフェースのルーティングを開始できます。このボードでは、DRAMインターフェースから始めます。
このボードの全体的なルーティング戦略をまだ定義していないことにお気づきでしょう。ルート配置を行う前にこれを行うこともできましたし、個人の好みによってはそれが間違っているわけではありません。このボードでは、DRAMインターフェースを最初にルーティングして、DRAMインターフェースに割り当てる必要があるスペースとルーティングレイヤーの数を確認することにしました。LPDDR4 ICを2つまたは3つの信号レイヤーでルーティングできる場合、他のインターフェースに1つまたは2つのルーティングレイヤーを割り当てることができます。DRAMインターフェースは特にこのような小さなボードではかなりのスペースを取るため、別の空の信号レイヤーが利用可能であると非常に望ましいです。
LPDDR4 ICのデカップリングキャパシタのルーティングを簡単に見てみましょう。デカップリングキャパシタの接続は、前の記事のブレイクアウトルーティングの一部でした。まずそれを見直して、トップレイヤーやボトムレイヤーに追加のVIAやトレースが必要かどうかを確認しましょう。充填されキャップされたVIAを使用しているという事実は、デカップリングキャパシタのルーティングにおいて非常に有利に働きます。
DRAM ICの各電源ピンには、ボードの全10層に接続できる専用のスルーホールVIAがあります。スタックアップ内のすべてのグラウンドプレーンでリターン電流を扱っているため、これらのピンにVIAを使用する必要があります。デカップリングコンデンサがボードの底面に配置されているため、VDDおよびVDDQの電源パッドもボードの底面に配置する必要があります。DRAM ICはY軸で0.65mmのピンピッチを持っています。このピンピッチにより、GNDとVDD/VDDQパッドの間に直接デカップリングコンデンサを配置することができます。この配置により、可能な限り最低のループインダクタンスを実現できます。これで、電源ピンの間にデカップリングコンデンサを均等に分配することができます。
オプションのクロック終端抵抗も、各クロックピンの直下に配置され、VIAを通じてピンに直接接続されます。
LPDDR4 ICの底面に配置されたデカップリングコンデンサ
デカップリングコンデンサに追加のトレースセグメントが必要ないため、ボトムレイヤーのスペースをシグナルルーティングに利用できます。i.MX 8M plusのリファレンスデザインに近づけて、すべてのDQS差動ペアを基板のボトムサイドに配置します。さらに、DRAMリセットとクロック有効信号もボトムサイドに配置できます:
DRAMルーティングボトムサイド
DQグループとは異なる色でコマンド/アドレス/コントロール信号を着色することで、良いルーティング戦略を識別できます。シアンのコマンド/アドレス/コントロール信号は、SoCの最初の2列のシグナルピンの後ろにすべて配置されており、2つのクロック信号を除いています。これらの信号を内層でルーティングしたい場合、2つの外側の行のシグナルピンからのVIAが邪魔にならないようにする必要があります。チャネルAとBのバイト0と、2つの外側の行で利用可能なクロック信号を、レイヤー変更なしで直接トップレイヤーに接続できます:
DRAMトップサイドルーティング
チャネルAとBのバイト1は、BGAの角に向かって配置されています。これは、DRAM ICにそれらの信号をL2に移動させて接続することができ、さらに、その2つのルーティンググループの間に十分なスペースを残してコマンド/アドレス/コントロール信号を接続することができるため、理想的です。
DRAM L2ルーティング
厳密に言えば、参照レイヤーを変更しているわけではありませんが、L2に切り替えることで第二のレイヤーを導入しています。グラウンドプレーン上に時変電圧を持つトレースを配置すると、第二の参照平面が存在するかどうかに関わらず、電流が流れます。これらの電流に対しても返り経路を提供するために、上層のレイヤー遷移近くに返り経路用のVIAを使用しています。BGAの下の2つの外側ピン列の後ろでレイヤーを切り替える信号は、SoCの2列のグラウンドピンとグラウンドVIAによって形成された近くの返り経路用のVIAを既に持っています:
DRAMインターフェースの返り経路用VIA
リターンパスに関連して心に留めておくべきもう一つの詳細があります。私たちは、段階的なマイクロVIAレイヤースタックを使用しています。したがって、2つの連続するマイクロVIAは、互いに一定の最小距離で配置する必要があります。2つの連続するVIA間の接続を確立するために、短いトレースセグメントが必要です。このトレースセグメントは、トップレイヤーとボトムレイヤーの下にあるグラウンドプレーン上に配置されます。シグナルラインのリターンパスを中断する可能性のあるグラウンドプレーン上のカットやボイドを作らないように注意しなければなりません:
リターンパス管理 - 左側にボイドと分割、右側に改善されたルーティング
DRAMデバイスのBGAグリッドに沿ってマイクロVIAとトレースセグメントを配置することで、シグナルラインの下に常に確かなグラウンド接続があることを確認できます:
トップレイヤーとL2上のトレースは、少なくとも0.275mmの均等な距離で配置されています。この距離は、これらのシグナル間で過度のクロストークを生じさせないようにするために必要です。これは、ポストレイアウトシミュレーションでも確認する必要があります。
これでDRAMインターフェースのルーティングを終えるために残された作業は、遅延調整だけです。しかし、今はこれを行いません。代わりに、ルーティングが完了したら、すべてのインターフェースに対して遅延調整を行います。非常に高密度の設計や多くの遅延補償が必要なインターフェースの場合、長さの調整を早めに行う方が良いです。ただし、LPDDR4のタイミング要件はそれほど厳しくないので、後で対応しても問題ないと確信しています。
とりあえずDRAMルーティングは完了し、レイアウト計画フェーズに移り、他のすべてのインターフェースをルーティングできます。これらとその他の更新は、オープンソースのコンピュートモジュールプロジェクトの次のアップデートの一部となります!