初次接觸高速訊號(hào)或DDR設(shè)計(jì)的人,可以找到一些在談走線繞等長的 舊資料(當(dāng)中不乏過去大廠的design guide),但近幾年一些DDRII(或更快)的design rule,漸漸改以定義setup time, hold time budget with jitter取代length-matching routing rule,并且改以強(qiáng)調(diào)對(duì)時(shí)序圖的理解與使用模擬(margin predict)的重要性。簡單說:rule就是不管你怎么layout設(shè)計(jì),但你時(shí)序要滿足規(guī)格(timing margin),或傳輸線的損耗要在規(guī)格內(nèi)(S-parameter)。
我們?cè)谠u(píng)估不同group之間的走線等長要求,或同一個(gè)group內(nèi)的走線等長要求,必須就時(shí)序的角度來考慮。一般特性阻抗50 ohm的microstrip于1000mils的傳遞時(shí)間大約是150~160ps, 假設(shè)point-point的DDRII走線總長約1000~1500mils,其中各別線長的差異了不起500mils,此時(shí)線長差異對(duì)SI影響其實(shí)很小, 但光是1000~1500mils長的走線于1.6mm板厚的PCB上過孔換層,就會(huì)造成100~250ps不等的傳遞延遲時(shí)間差了。
線長差異只是影響時(shí)序的因素之一,stack-upviastubcoplaneslot…這些因素在高速訊號(hào)設(shè)計(jì)的領(lǐng)域里,在PCB與package level,彼此是有不同程度的交互影響,如果只是一味的要求蛇線等長,而讓走線的總線長大幅增加,并且蛇線本身引入的阻抗彎折處的不連續(xù)性與相鄰線的電容寄生效應(yīng)變大,這反而對(duì)高速訊號(hào)的設(shè)計(jì)是非常不利的,未蒙其利,先受其害。
本文將以DDRII為例,說明貫孔換層,與相鄰貫孔的clearance hole (anti-pad)把內(nèi)層plane打破,對(duì)訊號(hào)的影響。另外,走線長度差異所造成的delay只是total timing skew的因素之一,不一定是關(guān)鍵的因素,反而過嚴(yán)的等長要求或過度繞蛇線會(huì)造成SIEMI惡化。我們?cè)撟⒁獾氖?。以最短的蛇線滿足設(shè)計(jì)要求、維持至少2W rule (DDRII如果有開ODT, 甚至1W也可),并確保地回路的連續(xù)性。
控制線長誤差在300mils以內(nèi)的DDRII AddrCmdCtrl group (serpentine routing)
本例其實(shí)不算是過嚴(yán)的length-matching routing,因?yàn)樯腥菰S走線之間300mils的長度差。黃色是走線在layer 1與layer 4,但layer 4走線被layer 2 plane(綠色是GND net)遮住了所以看不到。
以DesignerNexxim模擬
模擬結(jié)果整個(gè)group total skew大約190ps (with Rs=22 ohm),且可以看到走線分成兩群,波形SI較佳的是走在top layer沒有過孔換層的,波形SI較差且時(shí)間延遲較大的是走在bottom layer有一次過孔換層的。
Rs=22W,overshootundershoot沒有超標(biāo)
控制線長誤差在50mils以內(nèi)的DDRII Data Group (serpentine routing)
Layout雖然滿足data group內(nèi)的線長差異控制在50mils以內(nèi),但整個(gè)走線太長沒有優(yōu)化,多繞了一些蛇線:
沒有開ODT,但有串連終端Rs=22W,模擬結(jié)果發(fā)現(xiàn)overshootundershoot過大,且眼圖很差;這是一個(gè)過度繞蛇線導(dǎo)致眼圖較差的實(shí)例
修改后的layout同樣滿足data group內(nèi)的線長差異在50mils以內(nèi),但整個(gè)走線有優(yōu)化
總線長縮短300mils,且線與線之間保持3W space,繞蛇線的程度較輕微,如下圖所示
沒有開ODT,但有串連終端Rs=22W,模擬結(jié)果發(fā)現(xiàn)眼圖有明顯改善
完全不管線長差異的AddrCmdCtrl Group (走線要求as short as possible and straight forward)
沒有VDDQ-GND de-coupling capacitor,且BGA下方的地,被相鄰的anti-pad (clearance hole)打破
下圖所示為一群DDRII的AddrCmdCtrl bus,且在主控IC的BGA正下方,可見一整排的via打破了內(nèi)層plane,其中綠色是layer 2 ground plane,黃色走線在layer 1,另外layer 4也有走線,但被layer 2 plane遮住了所以看不到。
模擬結(jié)果整個(gè)group total skew大約800ps (Rs=22),會(huì)這么差并不是因?yàn)樽呔€沒取等長造成的 ,主要是因?yàn)榇死€沒有加de-coupling capacitor 0.1uF于VDDQ-GND之間 ,所以走線只要一換層(從top轉(zhuǎn)到bottom),地回路的連續(xù)性就被破壞了
有VDDQ-GND de-coupling capacitor,且BGA下方被相鄰的anti-pad打破的地,用網(wǎng)線補(bǔ)起來(grid ground)
仿真結(jié)果顯示,整個(gè)group total skew大約310ps (Rs=22);這是因?yàn)樵黾恿薞DDQ-GND之間的0.1uF,減輕因?yàn)閾Q層走線造成的地回路不連續(xù)issue。
此例在anti-pad之間補(bǔ)細(xì)線的方式,一開始是透過PADS PCB layout tool施作,再由SIwave import .pcb轉(zhuǎn)出.siw的,在這轉(zhuǎn)換過程中,SIwave雖然視這些ground line為GND net,但在屬性上還是把它當(dāng)trace而不是copper的一部份,而Ansoft處理trace與copper plane的方法是不同的,這可能會(huì)導(dǎo)致模擬結(jié)果有差異,無法完全呈現(xiàn)補(bǔ)grid ground后的ground plane performance
針對(duì)補(bǔ)grid ground這部份,我們?cè)赟Iwave中用”Draw Rectangle”選擇”Merge”, 再重新補(bǔ)一次,如下圖所示:
若整個(gè)project有很多net=GND的trace要改成plane,選定net后,執(zhí)行Tools Convert Traces To Planes
仿真結(jié)果顯示,整個(gè)group total skew一樣大約310ps (Rs=22),但這次很明顯的看出走在layer 1的訊號(hào)是一群,走在layer 4的訊號(hào)是一群,后者delay與over-shootunder-shoot都較大。這波形就很清楚的呈現(xiàn)了走線在top layer沒有過孔換層,與走線經(jīng)過貫孔走bottom layer的差異就將近200ps了,剩下因?yàn)榫€長的差異所引起的timing skew其實(shí)只有數(shù)十ps。
只要減小PCB板厚(減輕via effect),將可以很看到這兩群訊號(hào)SI特性較一致,且時(shí)序也接近的改善效果
Rs=22W undershoot超出標(biāo)準(zhǔn)
仿真結(jié)果顯示,改Rs=33W,整個(gè)group total skew大約295ps
改Rs=33W,undershoot改善了
完全不管線長差異的Data Group (走線要求as short as possible and straight forward)
模擬結(jié)果跟section 2.1一樣都很差,沒有sec. 2.2來的好,主要的修改是走線拉直取最短,但這不是比sec. 2.2差的主因,變差的主因是沒有維持3W
? 高密度小BGA封裝的高速PCB設(shè)計(jì),應(yīng)盡量避免內(nèi)層的plane(不管是power或ground plane)被相鄰的一整排anti-pad打破,形成破壞地回路連續(xù)性的slot。改善方法是在anti-pad之間,在PCB制程可以確保良率的前提下,補(bǔ)細(xì)線成grid ground,這對(duì)SIPI的改善非常顯著,且這種技巧因?yàn)樵赑CB內(nèi)層施作,由外觀上不易識(shí)別出來,是板級(jí)設(shè)計(jì)技術(shù)差異的關(guān)鍵之一。
? 以DDRII-800 point-point routing的AddrCmdCtrl Group而言, 即使完全不繞蛇線也OK。而對(duì)Data group總線長1000mils以上,些微的蛇線做length-matching會(huì)好一點(diǎn) ;若總線長可做在1000mils以內(nèi),即使完全不繞蛇線、不用ODT也OK;point-to-point的DDR routing,data group的走線可以縮到總線長600mils以內(nèi)。
? 線越短、繞蛇線的部份越少越好;另外3W rule的影響在DDRII-800于四層板施作的影響較小,2W rule即可。如果打開ODT或伴地線則可以1W施作
Anti-pad補(bǔ)充說明
繞蛇線的幾個(gè)原則
繞蛇線的間距
— isolate space有些是寫15~20mils、有些是寫3W、有些是寫6H…這都對(duì),但若考慮物理意義來說,應(yīng)該以相對(duì)于堆棧高度的定義6H比較好
螺旋型蛇線效果較好 [1]
差動(dòng)對(duì)繞蛇線的原則
— 繞線盡量集中在產(chǎn)生線長差異的那一端,主要是為了保有差動(dòng)對(duì)可以抗CM noise的物理特性 (這點(diǎn)讀者可以想一下,很有意思的)
3W rule在四層板真的有這么重要嗎?看也些板子只留1W,DDRII-666或DDRII-800也可以跑的動(dòng)呀?
Ans:這里所強(qiáng)調(diào)的是較理想的作法,依此建議可以輕易做到不開ODT(省電,省熱耗)而跑到DDRII-800,但您如果用1W走線,可能就要犧牲量產(chǎn)時(shí)對(duì)各家DDRII的window余量,甚至要打開ODT才可以。
-
pcb
+關(guān)注
關(guān)注
4367文章
23485瀏覽量
409510 -
模擬
+關(guān)注
關(guān)注
7文章
1438瀏覽量
84520
發(fā)布評(píng)論請(qǐng)先 登錄
基于PROTEL的高速PCB設(shè)計(jì)
高速pcb設(shè)計(jì)指南。
高速PCB設(shè)計(jì)之一 何為高速PCB設(shè)計(jì)
高速PCB設(shè)計(jì)指南
高速PCB設(shè)計(jì)經(jīng)驗(yàn)與體會(huì)

Cadence高速PCB設(shè)計(jì)

高速PCB設(shè)計(jì)誤區(qū)與對(duì)策

高速PCB設(shè)計(jì)中高速信號(hào)與高速PCB設(shè)計(jì)須知

評(píng)論