第一步,確定拓補(bǔ)結(jié)構(gòu)(僅在多片DDR芯片時(shí)有用)
首先要確定DDR的拓補(bǔ)結(jié)構(gòu),一句話,DDR1/2采用星形結(jié)構(gòu),DDR3采用菊花鏈結(jié)構(gòu)。拓補(bǔ)結(jié)構(gòu)只影響地址線的走線方式,不影響數(shù)據(jù)線。以下是示意圖。
星形拓補(bǔ)就是地址線走到兩片DDR中間再向兩片DDR分別走線,菊花鏈就是用地址線把兩片DDR“串起來(lái)”,就像羊肉串,每個(gè)DDR都是羊肉串上的一塊肉,哈哈,開個(gè)玩笑。
第二步,元器件擺放
確定了DDR的拓補(bǔ)結(jié)構(gòu),就可以進(jìn)行元器件的擺放,有以下幾個(gè)原則需要遵守:
原則一,考慮拓補(bǔ)結(jié)構(gòu),仔細(xì)查看CPU地址線的位置,使得地址線有利于相應(yīng)的拓補(bǔ)結(jié)構(gòu)
原則二,地址線上的匹配電阻靠近CPU
原則三,數(shù)據(jù)線上的匹配電阻靠近DDR
原則四,將DDR芯片擺放并旋轉(zhuǎn),使得DDR數(shù)據(jù)線盡量短,也就是,DDR芯片的數(shù)據(jù)引腳靠近CPU
原則五,如果有VTT端接電阻,將其擺放在地址線可以走到的最遠(yuǎn)的位置。一般來(lái)說(shuō),DDR2不需要VTT端接電阻,只有少數(shù)CPU需要;DDR3都需要VTT端接電阻。
原則六,DDR芯片的去耦電容放在靠近DDR芯片相應(yīng)的引腳
以下是DDR2的元器件擺放示意圖(未包括去耦電容),可以很容易看出,地址線可以走到兩顆芯片中間然后向兩邊分,很容易實(shí)現(xiàn)星形拓補(bǔ),同時(shí),數(shù)據(jù)線會(huì)很短。
以下是帶有VTT端接電阻的DDR2元器件擺放示意圖,在這個(gè)例子中,沒有串聯(lián)匹配電阻,VTT端接電阻擺放在了地址線可以到達(dá)的最遠(yuǎn)距離。
以下是DDR3元器件擺放示意圖,請(qǐng)注意,這里使用的CPU支持雙通道DDR3,所以看到有四片(參考設(shè)計(jì)是8片)DDR3,其實(shí)是每?jī)蓚€(gè)組成一個(gè)通道,地址線沿著圖中綠色的走線傳遞,實(shí)現(xiàn)了菊花鏈拓補(bǔ)。地址線上的VTT端接電阻擺放在了地址線可以到達(dá)的最遠(yuǎn)的地方。同樣地,數(shù)據(jù)線上的端接電阻也放置在了靠近DDR3芯片的位置,數(shù)據(jù)線到達(dá)CPU的距離很短。同時(shí),可以看到,去耦電容放置在了很靠近DDR3相應(yīng)電源引腳的地方。
第三步,設(shè)置串聯(lián)匹配電阻的仿真模型
擺放完元器件,建議設(shè)置串聯(lián)匹配電阻的仿真模型,這樣對(duì)于后續(xù)的布線規(guī)則的設(shè)置是有好處的。點(diǎn)擊Analyze?SI/EMI Sim?Model Assignment,如下圖。
然后會(huì)出來(lái)Model Assignment的界面,如下圖
然后點(diǎn)擊需要設(shè)置模型的器件,通常就是串聯(lián)匹配電阻,分配或創(chuàng)建合適的仿真的模型。
分配好仿真模型之后的網(wǎng)絡(luò),使用Show Element命令,可以看到相關(guān)的XNET屬性。
第四步,設(shè)置線寬與線距
1. DDR走線線寬與阻抗控制密切相關(guān),經(jīng)常可以看到很多同行做阻抗控制。對(duì)于純數(shù)字電路,完全有條件針對(duì)高速線做單端阻抗控制;但對(duì)于混合電路,包含高速數(shù)字電路與射頻電路,射頻電路比數(shù)字電路要重要的多,必須對(duì)射頻信號(hào)做50歐姆阻抗控制,同時(shí)射頻走線不可能太細(xì),否則會(huì)引起較大的損耗,所以在混合電路中,本人往往舍棄數(shù)字電路的阻抗控制。到目前為止,本人設(shè)計(jì)的混合電路產(chǎn)品中,最高規(guī)格的DDR是DDR2-800,未作阻抗控制,工作一切正常。
2. DDR的供電走線,建議8mil以上,在Allegro可以針對(duì)一類線進(jìn)行物理參數(shù)的同意設(shè)定,我本人喜歡建立PWR-10MIL的約束條件,并為所有電源網(wǎng)絡(luò)分配這一約束條件。
3.線距部分主要考慮兩方面,一是線-線間距,建議采用2W原則,即線間距是2倍線寬,3W很難滿足;二是線-Shape間距,同樣建議采用2W原則。對(duì)于線間距,也可以在Allegro中建立一種約束條件,為所有DDR走線(XNET)分配這樣的約束條件。
4.還有一種可能需要的規(guī)則,就是區(qū)域規(guī)則。Allegro中默認(rèn)的線寬線距都是5mil,在CPU引腳比較密集的時(shí)候,這樣的規(guī)則是無(wú)法滿足的,這就需要在CPU或DDR芯片周圍設(shè)定允許小間距,小線寬的區(qū)域規(guī)則。
第五步,走線
走線就需要注意的內(nèi)容比較多,這里只做少許說(shuō)明。
所有走線盡量短
走線不能有銳角
盡量少打過(guò)孔
保證所有走線有完整的參考面,地平面或這電源平面都可以,對(duì)于交變信號(hào),地與電源平面是等電位的
盡量避免過(guò)孔將參考面打破,不過(guò)這在實(shí)際中很難做到
走完地址線和數(shù)據(jù)后,務(wù)必將DDR芯片的電源腳,接地腳,去耦電容的電源腳,接地腳全部走完,否則在后面繞等長(zhǎng)時(shí)會(huì)很麻煩的
第六步,設(shè)置等長(zhǎng)規(guī)則
對(duì)于數(shù)據(jù)線,DDR1/2與DDR3的規(guī)則是一致的:每個(gè)BYTE與各自的DQS,DQM等長(zhǎng),即DQ0:7與DQS0,DQM。等長(zhǎng),DQ8:15與DQS1,DQM1等長(zhǎng),以此類推。
地址線方面的等長(zhǎng),要特別注意,DDR1/2與DDR是很不一樣的。
對(duì)于DDR1/2,需要設(shè)定每條地址到達(dá)同一片DDR的距離保持等長(zhǎng)。
對(duì)于DDR3,地址線的等長(zhǎng)往往需要過(guò)孔來(lái)配合,具體的規(guī)則均綁定在過(guò)孔上和VTT端接電阻上,如下圖??梢钥吹剑珻PU的地址線到達(dá)過(guò)孔的距離等長(zhǎng),過(guò)孔到達(dá)VTT端接電阻的距離也等長(zhǎng)。
補(bǔ)充一點(diǎn),很多時(shí)候,地址線的等長(zhǎng)要求不嚴(yán)格,這一點(diǎn)我還沒有嘗試過(guò)。在本人設(shè)計(jì)的這些產(chǎn)品中,地址線,數(shù)據(jù)線都做了25mil的Relative Propagation Delay的等長(zhǎng)規(guī)則設(shè)定。關(guān)于等長(zhǎng)規(guī)則設(shè)定的細(xì)節(jié)在這里不再贅述。
第七步,繞等長(zhǎng)
完成等長(zhǎng)規(guī)則的設(shè)定后,最后一步也是工作量最大的一步:繞等長(zhǎng)。
在這一步,我認(rèn)為只有一點(diǎn)規(guī)則需要注意:盡量采用3倍線寬,45度角繞等長(zhǎng)。
繞等長(zhǎng)完成后,最好把DDR相關(guān)網(wǎng)絡(luò)鎖定,以免誤動(dòng)。
到這里,DDR走線就已經(jīng)完成了,在本人設(shè)計(jì)過(guò)的三,四十種產(chǎn)品中,都是按照上面的規(guī)則與過(guò)程完成的,DDR2最高規(guī)格是DDR2-800,512MB,DDR3最高規(guī)格是DDR3-1600,1GB,都可以很穩(wěn)定的工作,無(wú)論性能還是可靠性,都未曾出過(guò)問(wèn)題。
-
pcb
+關(guān)注
關(guān)注
4315文章
22941瀏覽量
395601 -
DDR3
+關(guān)注
關(guān)注
2文章
274瀏覽量
42161
原文標(biāo)題:DDR3 PCB布線規(guī)則
文章出處:【微信號(hào):Line_pcblayout,微信公眾號(hào):Line_pcblayout】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論