マイクロコントローラを扱う際、ボード設計者が高エッジレート(高速)のPCB設計を行うことがますます避けられなくなっています。Freescale iMX6マルチコアARMデバイスファミリーのようなCPUの力を借りて、非常に低い「コストパーミップ」で、このようなデバイスを使用して製品に豊かなソフトウェアとユーザーエクスペリエンスを提供することがますます望ましいです。
しかし、これらの超マイクロ追加メモリコントローラを使用することは、DDR3レイアウトガイドラインを持つ高速で密度の高いメモリインターフェースの課題を伴います。このゲストブログでは、Altium DesignerユーザーであるFedevel AcademyのRobert Feranecが、彼のオープンソースハードウェア設計であるiMX6 Rex(コンパクトで強力なシングルボードコンピュータ開発キット)に基づいて、DDR3メモリのルーティングに関する非常に価値のあるヒントをいくつか示しています。
DDR3メモリは非常に普及しているため、プロのプリントボード設計者がそれを使用してルーティングしなければならないボードに直面するのはほぼ避けられません。この記事では、非常に高密度で密集したPCBレイアウトでも、DDR3メモリインターフェースを適切にファンアウトしてルーティングするためのヒントを提供します。
すべては、グループ内でDDR3をルーティングするための推奨される高速PCB設計ルールから始まります。DDR3メモリレイアウト中、インターフェースはコマンドグループ、コントロールグループ、アドレスグループ、およびデータバンク0/1/2/3/4/5/6/7、クロックなどに分割されます。同じグループに属するすべての信号は、「同じ方法」でルーティングされることが推奨されます。つまり、同じトポロジーとレイヤー遷移を使用します。
図1: DATA 6グループのすべての信号は、「同じ方法」でルーティングされ、同じトポロジーとレイヤー遷移を使用します.
例として、図1に示されているDDRルーティングシーケンスを考えてみましょう。DATA 6グループのすべての信号はレイヤー1からレイヤー10へ、その後レイヤー11へ、そしてその後レイヤー12へと進みます。グループ内の各信号は同じレイヤー遷移を行い、一般に同じルーティング距離とトポロジーを取ります。
DDRルーティングで信号をこのように扱う利点の一つは、長さ調整(別名、遅延または位相調整)を行う際に、ビアのz軸の長さを無視できることです。これは、同じ方法でルーティングされたすべての信号が、ビアを通る際にまったく同じビアの遷移と長さを持つためです。
Altium Designer®は、必要な信号グループを作成し、信号の整合性を監視する簡単な方法をサポートしています。このステップはプロジェクトの回路図で行われます。まず、グループが作成される各ネットセットの周りにブランケットが配置されます。次に、ネットクラスのプリント基板指示がブランケットの端に添付され、グループにネットクラスを適用します。これの例を図2に示します。
図2: ブランケットとPCB指示を使用して、DDR3ルーティングガイドラインのためのネットクラスグループを作成します。
新しいネットクラスをプリント基板にインポートした後(設計 » PCBドキュメントの更新...の下でのエンジニアリング変更命令(ECO)を通じて)、各グループに異なる色を割り当てることは、ルーティングを精神的に追跡しやすくするために非常に役立ちます。プリント基板パネルに移動し、色を割り当てたいグループ(ネットクラス)を右クリックし、ポップアップメニューからネットカラーの変更を選択します。図3に示すように。
図3:各グループに異なる色を割り当てることで、ルーティングを精神的に追跡しやすくなります。
色を選択したら、ネットクラスまたはネットを再度右クリックし、表示オーバーライド » 選択済みONを選択します。これにより、そのネットのオブジェクトが現在使用しているレイヤーのレイヤーカラーに関係なく、選択したネットカラーが優先されます。
ネットカラーオーバーライドをオンにしていない場合、選択した色のネットは表示されません。この場合、表示 » ネットカラーオーバーライドオプションを切り替えるか、F5キーを使用してこの設定を全体的に(すべてのネットに対して)有効にします。これで、CPUのDDR3インターフェースのファンアウトの準備が整いました。
特定のメモリグループに適したビアスタイルを選択し、PCBのレイヤーがどのように使用されるかを決定することで、DDR3のレイアウトがずっと簡単になります。各メモリグループに異なる色を割り当てることで、インターフェースを視覚化しやすくなります。
図4:適切なビアサイズを選択することで、より多くのトラックのためのスペースを節約できます。
マイクロビア(μVia)はスルーホールビアに比べてスペースを少なくとります。これにより、同じエリアでより多くのトラックをファンアウトできます。マイクロビアは他のレイヤーのスペースも節約します。節約されたスペースはトラック用に使用できます。
アドレス、コマンド、コントロールグループは、メモリグループからの信号数が最も多いです。スルーホールビアを選択した場合、全ての層で多くのスペースを使用することになります。マイクロビアを選択することで、第3層のスペースのみが必要となり、マイクロビアの直径が小さいため、第3層での信号のファンアウトにもより多くのスペースを確保できます。
図5: マイクロビアの間には、スルーホールビア1つ分のスペースで2つまたは3つのトラックが収まります。スルーホールビアの間に。
アドレス、コマンド、コントロールグループの一部の信号は、「最も近いグループ」の下のスペースが必要になります。
図6: アドレス、コマンド、コントロールの一部のトラックは、「最も近いグループ」のパッドの下を通過する必要があります。。
アドレス、コマンド、またはコントロール信号グループが第3層のマイクロビアを通過する場合、このグループの下の第10層には空きスペースが残ります。このスペースは、「最も近いグループ」のファンアウトに使用できます。
図7:マイクロビアでルーティングされたグループの下に残された空きスペースは、「最も近いグループ」のファンアウトに使用できます。
上の画像から、レイヤー10には「外側のグループ」をファンアウトするためのスペースが残っていないことが明らかです。したがって、「外側のグループ」をレイヤー3に配置し、マイクロビアを使用することは、ファンアウト計画の結果です。
注:同じレイヤー/ビア/マイクロビアの「ファンアウト計画技術」は、他のインターフェース(例:PCI、ISA、...)にも適用できます。この方法で、非常にパックされた非常に密度の高い設計でもルーティングが可能です。
少しの注意と事前の計画により、DDR3ファンアウトのルーティングと長さの調整は、最もコンパクトで密集している設計ガイドラインであっても、ストレスのないプロセスになり得ます。iMX6 Rexは、この注意と計画の素晴らしい例であり、それがどのように行われるかを示すためのツールとして部分的に設計されています。ロバートの計画とステップに従えば、どんなDDR3設計もはるかに少ない時間と、最初から正しく設計する可能性がずっと高くなります。
もっと見る Altium Designer プロジェクト または、PCBデザイナーが知っておくべきことについてもっと知る DDR5についてはこちら。