表層と内層で等長にしても、時間は揃わない
「配線長を計算機やCADで確認した。差は0.5mm以内だから大丈夫」——その配線が表層と内層をまたいでいるなら、大丈夫ではないかもしれません。表層マイクロストリップは電界の一部が空気に漏れるぶん実効誘電率が下がり、内層ストリップラインより速く伝わります。同じ長さでも、層が違えば届く時刻は違います。
結論:同じ50mmでも、表層と内層では71ps違う
FR-4(εr = 4.3)で表層マイクロストリップと内層ストリップラインに同じ50mmの配線を引くと、表層は274.7ps、内層は345.8psかかります。差は71.2ps。DDR4-3200の1UI(データの取り込み幅)は312.5psなので、層を選んだだけでUIの23%を使い切ります。
これは特殊な条件ではありません。基板の実効誘電率εeffは、信号が表層にあるか内層にあるかで変わります。等長配線ツールが表示する「長さ」は物理的な距離であって、信号が届く時刻ではありません。この記事では、その差がどこから来て、どれくらいの大きさになるかをnodeで計算し、DDRのタイミング設計にどう効くかまで見ます。
表層は εr そのものではない:フリンジ電界が空気に漏れる
表層の配線(マイクロストリップ)は、下にGNDプレーン、上と横は空気という非対称な構造です。信号配線とGNDプレーンの間にできる電界は、配線の真下だけでなく配線の横から斜め上、つまり空気側にもはみ出します(フリンジ電界)。空気の比誘電率は1で基板材料(FR-4なら4.0〜4.4程度)よりずっと低いので、電界の一部が低誘電率の空気を通るぶん、信号が実際に感じる誘電率(実効誘電率εeff)はεrより低くなります。
この記事で使う近似式(IPC-2141系、特性インピーダンス 表層(マイクロストリップ線路)の計算機と同じ式)は次のとおりです。
εeff(表層) = 0.475 × εr + 0.67
εr = 4.3 を入れると εeff = 2.717 で、εr そのものより36%近く低くなります。線幅を広げて配線を基板に近づける(h/wを小さくする)ほど、電界は配線の真下に集中してεeffはεrに近づきますが、それでも空気側への漏れがゼロにはなりません。
内層ストリップラインは εr をそのまま見る
内層の配線(ストリップライン)は、上下ともGNDプレーンか電源プレーンに挟まれ、周囲はすべて同じ基板材料です。対称なストリップラインなら、電界は上下どちらの向きに出ても同じ誘電率の中を通るので、実効誘電率εeffは基板のεrそのものになります。空気に漏れる経路がない、というだけの違いですが、これが伝搬速度の差を生みます。
伝搬速度は v = c / √εeff、遅延は td = √εeff / c です(cは光速、0.2998mm/ps)。εeffが低いほど速く伝わるので、表層の方が内層より速いことになります。これは直感に反する人がいるかもしれません——内層の方が「守られている」ぶん遅い、というのは奇妙に聞こえますが、電界が高誘電率の基板材料だけを通るからです。比誘電率から基板上での伝搬速度の計算機は、この√εr/cの式そのものです。
1mmあたりの差:node で計算する
FR-4のεrは製造ロットや測定周波数で4.0〜4.4程度に散らばります。この範囲でnode計算すると次のようになります。
| εr | 表層 (ps/mm) | 内層 (ps/mm) | 差 (ps/mm) | 差(50mm換算) | 1UI(312.5ps)に対する比率 |
|---|---|---|---|---|---|
| 4.0 | 5.35 | 6.67 | 1.32 | 66.2ps | 21.2% |
| 4.2 | 5.45 | 6.84 | 1.39 | 69.5ps | 22.3% |
| 4.4 | 5.54 | 7.00 | 1.46 | 72.8ps | 23.3% |
εrが4.0でも4.4でも、差は1mmあたり1.3〜1.5ps、50mmの配線なら66〜73psという結果は大きく変わりません。εrの散らばりより、表層か内層かという選択の方が効きます。基板メーカのεr公称値がどれであっても、この「表層と内層でどれだけ違うか」という比率はほぼ一定です。
DDR4-3200の1UI(312.5ps)に対してどれくらいか
DDR4-3200はデータレート3200MT/sなので、1UI(1ビットぶんの時間窓) = 1 / 3200MHz = 312.5psです。読み書きのタイミングは、コントローラとDRAMのデータストローブ(DQS)を基準にデータ(DQ)を取り込む方式で、DQとDQSのスキューがUIのうちどれだけを占めるかがマージンを直接削ります。
DQを表層、DQSを内層(またはその逆)に同じ50mmで引いた場合、71.2psのスキューが発生し、これだけでUIの22.8%を使い切ります。DDR5-6400(データレート6400MT/s、1UI = 156.25ps)ならUIに対する比率は45.6%に達し、これだけでタイミングトレーニングが通らないレベルです。
実際の設計では、同じバイト(DQグループ)は同じ層に揃えて引くのが基本です。それでも、BGAの配線混雑でDQの一部だけ層を変える、DQSだけ余分にビアを打つ、といったことは起こります。次の章で、より現実に近い「層をまたぐ配線」の例を計算します。
ビアも足し算に入れる:本数とスタブ
層をまたぐには必ずビアを通ります。ビアの電気的な長さは、そこを埋める誘電体の中を垂直に伝わる分の遅延として、内層(ストリップライン)と同じ√εr/cの式で近似できます。板厚1.6mmの基板なら、εr = 4.3でビア1本あたり約11.1psです。層を1往復(下りと上りで2本)すれば22ps強、これだけでも1mmの配線差より効くことがあります。
次はDQとDQSで経路が違う、より現実的な例です。板厚1.6mmの基板で、DQは表層6mm+内層42mm(合計48mm)、DQSは表層30mm+内層16mm(合計46mm)とし、どちらもビア2本(下り・上り)を通るとします。配線長の差はわずか2mmです。
node計算では、DQは表層6mm(33.0ps)+内層42mm(290.5ps)+ビア2本(22.1ps) = 345.6ps。DQSは表層30mm(164.8ps)+内層16mm(110.7ps)+ビア2本(22.1ps) = 297.6ps。差は48.0ps、1UIの15.4%です。配線長の差はたった2mmなのに、遅延の差はその何倍にもなります。長さのDRCだけを見ていると、この差は見えません。
さらに、バックドリルしていないビアにはスタブ(信号が実際に使う区間より下に伸びた、使われない銅の筒)が残ります。スタブは遅延そのものより反射とインピーダンス不連続の原因ですが、EDAツールの一部はビアの全長(スタブ込み)を経路長として数えるため、バックドリルの有無で遅延計算がずれることもあります。ビアが多い経路と少ない経路を比べるときは、スタブの扱いも確認してください。
EDAツールの「時間で等長」とは何をしているか
多くのPCB CADの等長配線機能は、デフォルトでは物理的な長さを揃えます。層をまたがない配線群(同じバイトを常に同じ層で引く設計)ならこれで十分です。しかし層をまたぐ配線がある、あるいは意図的に層を分けて引き回す必要がある場合は、長さではなく時間(Delay Tuning / Phase Tuning などと呼ばれる機能)で揃える設定に切り替える必要があります。
この機能がしていることは特別な魔法ではありません。層ごとの実効誘電率(あるいはその層のインピーダンス設定)から遅延係数(ps/mm)を求め、区間ごとの長さに掛けて足し合わせ、ビアの本数ぶんの遅延を加算して、経路全体の時間を計算しているだけです。この記事のnode計算と原理は同じで、違いは自動でやってくれることと、実測に近い係数(積層条件から計算したインピーダンスと実効誘電率)を使えることです。
面白いのは、時間で揃えると、長さは揃わなくなることです。表層のDQを50.0mmで引いたとき、内層のDQSを同じ274.7psに揃えるには、39.7mmまで短くする必要があります(10.3mm短い)。内層の方が1mmあたり遅いので、時間を合わせるには長さを削るのが正解です。「等長配線」という言葉が示す絵と、実際にツールがしていることが逆向きになる場面がある、というのは覚えておく価値があります。
ソルダーレジストと分散:表層の遅延はもうひとつ動く
もうひとつ、この記事の計算はすべて低周波(データシート記載条件、多くは1MHzや1GHz)でのεrを使っています。実際の基板材料のεrは周波数が上がるほど下がる傾向があります(誘電分散)。DDR4-3200のようにエッジレートの速い信号は、基本波よりずっと高い周波数成分を含むため、データシートのεrで計算した遅延は、実際よりわずかに長め(遅め)に見積もっている可能性があります。表層と内層の差への影響は両方の層で同じ方向に効くぶん比較的小さいですが、絶対値の遅延をns単位で厳密に合わせたい設計では、使用帯域でのεr(Df/Dk特性)を基板メーカに確認してください。周波数で平均的なεrが動くだけでなく、配線がガラスクロスの織り目のどこを通るかによっても局所的にεrがばらつきます。これは層の違いとは別の要因で、ガラスクロスが信号品質に与える影響で扱っています。
ソルダーレジスト(εr ≈ 3.3〜4.0程度、品種による)は表層の配線を覆い、それまで空気だった領域の一部を埋めます。フリンジ電界が通る媒質の誘電率が上がるぶん、レジストなしの計算値より実効誘電率はわずかに高くなり、表層の遅延はレジストなしの計算より数%増える方向に動きます。正確な増分は線幅・厚み・レジスト厚みで変わるため、この記事の表の値はレジストを考慮しない近似です。厳しいタイミング設計では、使う基板メーカ・レジストでのフィールドソルバ計算か実測値で補正してください。
実機で引っかかるところ
- DRCは「等長」で通るのに、メモリのトレーニングが特定の温度・電圧コーナーだけ失敗する。層違いのスキューはマージンを一定量削るだけなので、他の要因(電源ノイズ、クロストーク)と重なった条件でだけ症状が出ます。
- read leveling / write leveling が、ロットによって通ったり通らなかったりする。基板メーカのεr公差(±10%程度が一般的)が、ぎりぎりのマージンで効いてきます。
- オシロスコープでDQとDQSの立ち上がりを重ねて見ると、基板ごとに数十ps単位でずれている。配線長は同じCADデータのはずなのに、層構成が変わった基板リビジョンでずれ幅も変わっていれば、層由来のスキューを疑います。
- 「長さは揃っているのに遅い」という報告がSI解析ツールから出る。タイミングレポートを出すツールは時間で見ているので、DRCの「長さ一致」とは別に、そちらの警告を確認します。
よくある質問
全部の配線を表層(または内層)だけに統一すれば、この問題は起きませんか。
ビアの本数さえ揃えれば、あとは長さだけ気にすればいいですか。
εrは基板メーカのデータシートに書いてある値をそのまま使えばいいですか。
差動対(DQSはペア配線)でも、この話は同じですか。
DDR5になるとこの問題はもっと厳しくなりますか。
参考にした規格・資料
- IPC-2141B, PCB特性インピーダンスと伝搬遅延の計算 — マイクロストリップの実効誘電率 εeff = 0.475εr + 0.67、ストリップラインは εeff = εr とする近似式
- JEDEC JESD79-4, DDR4 SDRAM 規格 — データレートとUI(1UI = 1/データレート)の定義、DQ/DQSのタイミングパラメータ
- E. Bogatin, "Signal and Power Integrity - Simplified" — 表層と内層の実効誘電率の違い、ソルダーレジストによる遅延の変化、誘電分散の考え方
- 各社PCB CADのマニュアル(Delay Tuning / Phase Tuning / Layer-aware length matching) — 層ごとの遅延係数とビア遅延を加算し、物理長ではなく時間で等長配線を行う機能