DDR2、DDR3布線規(guī)則
DDR2信號(hào)分組
1 數(shù)據(jù)信號(hào)組DQ、DQS、DM,其中每個(gè)字節(jié)又是內(nèi)部的一個(gè)信
道LANE組,如DQ0~DQ7,LDQS,LDQS#,LDM為一個(gè)信號(hào)組。
2 地址和命令信號(hào)組,包括BA[],ADDR[],RAS#,CAS#,WE#
3 控制信號(hào)組,包括CS#,CKE,ODT
4 時(shí)鐘信號(hào)組,包括CK,CK#
如32位DDR2有4個(gè)Lane,如第一個(gè)Lane DQ0~DQ7,則只是Lane內(nèi)部可以調(diào)換。
1. 本規(guī)則內(nèi)部所說的數(shù)據(jù)線包括:數(shù)據(jù)線DQ0-63,DQS/DQSB,DM,時(shí)鐘線CLK/CLKB
2. 本規(guī)則內(nèi)部所說的地址線包括:地址線A0-A15,BA0-2,CS/WE/RAS/CAS,CKE、ODT等除去數(shù)據(jù)線以外的其他信號(hào)。
3. CPU到DDR顆粒的信號(hào)分布,可以分成T型、L型和F型走線。
4. 數(shù)據(jù)線Lane和對(duì)應(yīng)的芯片的地址線之間的間距差異,控制在200mil以內(nèi)(只是DDR2,DDR3要控制在1mil以內(nèi))。注意:地址線長(zhǎng)度指的是CPU到芯片的走線長(zhǎng)度,不算走向其他芯片的連線長(zhǎng)度。
5. Lane內(nèi)部間距差異在1mil以內(nèi)。同一個(gè)lane同時(shí)走過孔和同一層走線。
6. Lane內(nèi)部的數(shù)據(jù)線之間可以在DDR芯片端調(diào)整數(shù)據(jù)的分布。注意,只是Lane內(nèi)部可以調(diào)換,Lane之間不可以隨意換線。
7. 時(shí)鐘線長(zhǎng)度要在數(shù)據(jù)線和對(duì)應(yīng)芯片的地址線的中間位置。
8. 時(shí)鐘差分對(duì)之間差別在1mil以內(nèi)。
9. 地址線的走線要方向一致
10. Vref在芯片管腳處一定要加電源濾波1uF電容
11. VDDR/VTT/Vref一定要走電源層。
最近忙于一塊以CycloneIII為核心主控芯片的六層板設(shè)計(jì),開發(fā)環(huán)境是Capture+Allegro+CAM350,從原理圖修改到PCB的布局、布線這整個(gè)過程中我遇到了相當(dāng)多的問題,值得慶幸的是有一些問題的解決倒是可以說是一勞永逸,比較典型的就是DDR2的布局與布線。之前對(duì)DDR2的原理與板級(jí)布線非常的陌生,導(dǎo)致剛開始布線時(shí)走了很多彎路,折騰了好幾天才解決。由于DDR2布線的嚴(yán)格要求,整個(gè)布線思路也是更新了若干次,不過現(xiàn)在看來,今后若再布DDR的線會(huì)效率更高的。其實(shí)兩個(gè)星期之前DDR2的布線就完成了,只是一直沒有找到時(shí)間寫這篇文章,今天上午特意花點(diǎn)時(shí)間寫了這些文字、截了幾個(gè)圖,和網(wǎng)友分享一下。
布線結(jié)束后,我深刻的體會(huì)到,對(duì)于DDR2的布局、布線來說,最關(guān)鍵的就是要非常地熟悉DDR2中DQ、DM、DQS和FPGA芯片中DQ/DQS Pins的分布情況,為了更直白的說明這個(gè)問題,咱們來看圖說話,
解析:考慮到DDR2走高速信號(hào)時(shí)的信號(hào)完整性質(zhì)量,首先要滿足最基本的布線要求(還有信號(hào)線的等長(zhǎng)):
(1)DQ[0:7]、DM0、DQS0這10根信號(hào)線要在同一層;
(2)DQ[8:15]、DM1、DQS1這10根信號(hào)線要在同一層;
(3)DQ[16:23]、DM2、DQS2這10根信號(hào)線要在同一層;
(4)DQ[24:31]、DM3、DQS3這10根信號(hào)線要在同一層;
其中(1)和(3)可以在同一層(如S1)實(shí)現(xiàn)順利布線,而(0)和(2)可以在同一層(如S2)實(shí)現(xiàn)順利布線。
上面這個(gè)圖中我特意用筆把所有Pins的分布情況給大致分割了一下,這樣看起來會(huì)一目了然。布線時(shí)應(yīng)該把上面一個(gè)部分(即A、B、C、D)里面的DQ、DM、DQS總共10根信號(hào)線作為一個(gè)單元,對(duì)應(yīng)FPGA芯片里特定的一個(gè)PIN區(qū)域,下面E、F、G、H這個(gè)部分也是類似的。不過布線時(shí)還應(yīng)該注意的地方就是:FPGA里的那個(gè)所謂的“特定部分”中只有DQS這個(gè)Pin是固定不可被替代的,其他的9個(gè)Pins中DQ[n:n+7]和DM線是可以任意換序的,因?yàn)镈Q和DM信號(hào)線所對(duì)應(yīng)的Pins在FPGA芯片中是同一個(gè)電氣屬性的。這個(gè)相當(dāng)關(guān)鍵,不然的話,會(huì)給布線帶來比較大的麻煩。關(guān)于那個(gè)“特定的部分”,我截個(gè)圖如下所示,不同的顏色即為一個(gè)“獨(dú)立的特定的區(qū)域”,
我布線時(shí)主要用的是下方中間四個(gè)“獨(dú)立的特定的區(qū)域”——用于兩個(gè)DDR2的布線需要,實(shí)現(xiàn)32位并行數(shù)據(jù)流。
畫這個(gè)板子時(shí)我設(shè)置的是六層結(jié)構(gòu)(四個(gè)信號(hào)層+兩個(gè)參考層),布局、布線結(jié)束后的各信號(hào)層結(jié)果如下:
TOP LAYER:
LAYER S1:
LAYER S2:
BOTTOM LAYER:
如今這整個(gè)板子的設(shè)計(jì)過程已經(jīng)完全順利結(jié)束了!從開始的布局、布線一直到現(xiàn)在光繪文件的成功生成,確實(shí)體會(huì)到經(jīng)驗(yàn)的重要性,因?yàn)槲抑皬膩頉]有過六層板的設(shè)計(jì)經(jīng)驗(yàn),很多問題都是第一次遇到,也是臨時(shí)自己思考或者和同事討論一起解決,整個(gè)過程算得上還是順利的。