作者:一博科技高速先生 姜杰 layout組有個雷工,大家叫他老雷,盡管畫板多年閱板無數(shù),但還是被SI同事給出的DDR4信號優(yōu)化建議整懵圈了;SI組也有個雷工,大家叫他小雷,盡管初出茅廬時默默無聞,但是在他優(yōu)化的這版一驅(qū)九DDR4穩(wěn)定運行在3200Mbps后,他將被尊稱為豹哥。 一驅(qū)九DDR4設(shè)計一直是行業(yè)公認的難點,尤其是板載顆粒的方案,當(dāng)然,具體難度也因板而異。不幸的是,兩位雷工這次遇到的是個硬骨頭,不光是板載顆粒設(shè)計,還是個改板,之所以改板,原因很簡單,之前的板子DDR4數(shù)據(jù)信號沒有達到3200Mbps的預(yù)期速率。 客戶反饋前一版本已經(jīng)可以跑到2933Mbps, 改板的需求也很簡單,就是能穩(wěn)定運行到3200Mbps,畢竟,上一版離目標(biāo)速率也就差那么一點點。7 p0 w$ B7 U8 \6 y( U
2 }; ?8 L/ P) c; L0 ~- `# J4 ?9 [
與客戶的樂觀不同,小雷覺得事情可能不像預(yù)期的那么容易?梢耘袛嗟氖,上一版是裕量不足導(dǎo)致的marginal fail,問題是,從2933Mbps到3200Mbps,這點看似不起眼的裕量去哪找? 熟悉高速先生文章的朋友一定還記得,一驅(qū)多DDRX,難點往往不在速率較高的數(shù)據(jù)信號,而在于速率只有數(shù)據(jù)信號一半的地址控制類信號,原因這里再解釋哈:數(shù)據(jù)信號一般都是點到點的拓撲,而且大多有片上端接(ODT),走線拓撲簡單,又有端接,信號想跑不起來都難;地址控制類信號的處境就難多了,難就難在一驅(qū)多的走線拓撲對信號的影響太大,即便速率相比數(shù)據(jù)信號減半。( \/ f7 @6 a) S3 V0 l
8 [" s8 I# x+ f0 J/ J4 ]* v
# l$ E6 ^) A/ u4 P R( w- t小雷也深知這一點,所以上一版數(shù)據(jù)信號跑不到3200Mbps,大概率是因為DDR4的地址控制類信號達不到1600Mbps,于是查板從此類信號入手,上一版的走線拓撲為Clamshell,看不懂單詞沒關(guān)系,畫出來你就秒懂了:" y# K% w+ x" S) ^& I4 w. E$ w
+ t" b, \- E$ a! x( n8 D5 G3 Z, u& [, w! W1 B) |
對于空間受限的單板而言,一驅(qū)九DDR4選擇這個拓撲也算合理。Clamshell拓撲可以認為是Flyby拓撲和T拓撲的組合,所以既有Flyby拓撲的特點,也就是近端顆粒的信號質(zhì)量特別差;也有T拓撲的特點,近端的DRAM1和DRAM2一樣差。小雷的仿真結(jié)果也驗證了這一點,上一版近端顆粒的眼圖(地址信號速率1600Mbps)確實在Pass和Fail的邊緣瘋狂試探,無怪乎壓力測試速率總是差那么一點點。" C7 ]2 f% W$ l
( C" x! B# K9 K h8 `( i3 B
W' B7 d0 {' P& B) N, a2 `
令人沮喪的是,無論小雷如何調(diào)整Clamshell拓撲參數(shù),近端顆粒的信號質(zhì)量始終不見改善,看來前一版的設(shè)計也是下過功夫的。關(guān)鍵時刻,客戶提供了另外一個信息:同樣的主控芯片,在板載顆粒方案之前,有過DIMM條成功的案例,當(dāng)時的DIMM條上的DDR顆粒采用Flyby拓撲,設(shè)計如下:
; S4 X- n' h0 K D' Z/ x! c4 C; K
( E9 A5 L9 T7 o
& A |; E) x0 x F2 T0 ?苦無良方的小雷決定照葫蘆畫瓢,讓老雷把板載顆粒也改為Flyby拓撲試試,不過,由于單板空間不像DIMM條充足,板載DDR芯片需要雙面布局,調(diào)整后的地址信號拓撲如下:0 U0 X% j7 w \ |/ K" f9 ^
! h9 E0 ]4 V& D9 d4 k' A i2 k- W( d# {/ n/ ~+ Y1 w* I% c
老雷不愧設(shè)計老炮兒,三下五除二把板子改了出來,除了因空間受限與DIMM條的布局無法做到一樣,DDR信號的各段走線長度、阻抗控制都與DIMM條保持一致,還很貼心了調(diào)整了信號走線層,讓過孔stub盡量短。 小雷查板之后相當(dāng)滿意,老雷得到認可后也很得意,甚至自信滿滿的與客戶確定了投板日期,萬事俱備,只欠仿真驗證了。
( u. B, n& \( t 2 z1 z A a- t5 h- B
調(diào)整為Flyby拓撲的板載顆粒方案仿真結(jié)果居然又翻車了,近端顆粒信號質(zhì)量略有改善,但是仍沒達到預(yù)期效果:
3 j S/ E, g7 D, E0 ~
. ?' \3 \# c$ @
0 b: Y+ G2 Y6 ~小雷迷茫了,目前的仿真結(jié)果顯然無法支持?jǐn)?shù)據(jù)信號穩(wěn)定運行到3200Mbps。拓撲、走線、阻抗都控制的和DIMM一毛一樣,為啥結(jié)果還差著一截? : l% f% @* Q/ t' e P8 D' o3 t, x& Z; n4 e
' N% B+ h0 }! i& q* b1 i# ]3 V" G8 z3 |# Z. `
一定是漏了什么?小雷對著DIMM條和板載設(shè)計的Flyby一點點的排查,功夫不負有心人,經(jīng)過一整天的對比驗證,終于發(fā)現(xiàn)了關(guān)鍵影響因素。最后給出的優(yōu)化方案讓老雷驚掉了下巴:調(diào)整主控芯片與近端顆粒之間走線的層面,控制過孔stub越長越好。; J" {! T) ]% ~0 }) B1 _9 J
$ b) G" W- e# ]8 s" B
! ]+ y$ {' ^/ W“都知道SI同事的套路深,沒想到這么深。眾所周知過孔stub越短越好,小雷為何這次卻不走尋常路,偏偏要加長?!”老雷將信將疑,還是耐著性子按照小雷的要求調(diào)整走線層,過孔stub由調(diào)整前的35mil增加到94mil。不曾想,仿真結(jié)果再次顛覆了老雷的認知,近端顆粒的信號質(zhì)量竟然鬼使神差的好了起來:
7 ?* Y$ j. `, L; U& V
; W( z4 ~8 \1 m8 y+ N' l9 Q
( G( h" v% {/ o* c$ O& b" a老雷心中疑云密布: “為什么會這樣?難道以前的經(jīng)驗有錯?”
1 @& r. ^6 f# ~8 m4 j小雷仿佛看透了老雷的想法,于是解釋起來:“其實,一開始自己也是百思不得其解,后來從stub的特點切入,才慢慢有了眉目:過孔stub本質(zhì)是一種能量泄放的通道,越是高頻的能量受到的影響越大,因此,高速串行信號需要控制過孔stub盡量短,以避免能量損耗。但是,本項目的特殊之處在于主控芯片的驅(qū)動較強,加上一驅(qū)多拓撲的反射更容易在近端顆粒處積累,所以近端顆粒的信號質(zhì)量就成了通道的瓶頸,增加近端顆粒的過孔stub長度能夠很好的衰減高頻分量,使主芯片輸出的強度減弱,上升沿變緩,最終達到減少反射的目的,相應(yīng)的,信號質(zhì)量也得到了改善。不過,這也是一家之言,要深入理解這個現(xiàn)象還有待進一步的研究! “這是不是說所有DDRX的Flyby信號拓撲都要控制近端顆粒過孔stub盡量長呢?”老雷繼續(xù)問道。 小雷沉吟半晌:“不是,增加過孔stub這種非常規(guī)操作需要慎用,這個項目這么做也是因為有仿真的驗證。如果主控芯片的驅(qū)動本身比較弱,這時再增加過孔stub可能就適得其反了! 老雷秒懂了:“所以,It depends!實在拿不準(zhǔn)的還是要仿真。”' H" L" z5 | i0 v9 h3 M9 L
兩人會心一笑,順利投板。兩個月以后,客戶反饋了改板調(diào)試成功的消息,給這個項目畫上了圓滿的句號。
, l+ z$ H1 w- b8 u4 R: t問題來了
: J. G! X( p! v& o1 X大家接觸過的DDRX最多拖了幾個顆粒呢?地址信號采用什么拓撲?歡迎分享
: Q3 ^) w: I% s2 K# O) W8 `0 c |