存儲器,也稱之為內(nèi)存,其分類關(guān)系如下圖:
在PCB 設(shè)計(jì)的過程中,關(guān)注的是它們存取數(shù)據(jù)的速率,這個(gè)速率關(guān)系的細(xì)節(jié)的處理。
如,速率高的內(nèi)存顆粒,PCB 設(shè)計(jì)時(shí)為了減小串?dāng)_,盡量拉大信號線的間距;同時(shí),由于
速率不同,控制蛇形線的誤差范圍也不一樣;
下文結(jié)合FLASH、SDRAM、DDR2 來介紹布局布線設(shè)計(jì)要點(diǎn)。這里先概述一下布局和
布線。
布局:內(nèi)存中的數(shù)據(jù)是用來被控制器(CPU,如DSP、MCU、ARM、FPGA 等)讀寫的,
因此需要結(jié)合PCB 單板尺寸、器件密度、走線密度情況,選擇合適的位置擺放;至于那些
去耦電容、儲能電容時(shí)必不可少的,怎么擺放,就不再贅述。如果還有匹配電阻如串阻、上
下拉,結(jié)合它們的作用來擺放。
布線:首先要對信號線分類,然后然后分好組,處理這兩步后,后續(xù)的走線、繞等長等,
同一組的按統(tǒng)一標(biāo)準(zhǔn)處理就行了。在這里將信號線分為三類:數(shù)據(jù)信號、地址信號、控制信
號。對于PCB 設(shè)計(jì)工程師,首先要培養(yǎng)出在原理圖中識別信號種類的能力,然后能夠在PCB
中能把分類的信號線進(jìn)行分組。通俗的分組方法:數(shù)據(jù)組和地址組。
數(shù)據(jù)組:在這里舉例說明一下,如果有一片只有8 位的SRAM,自然分成一組。如果
是一顆16 為的DDR2,數(shù)據(jù)組可以分成高低各8 為的兩組。小組成員自然是數(shù)據(jù)信號線,
可能會(huì)有其他信號線,如DDR2 的一組信號線中,要包含相應(yīng)的數(shù)據(jù)掩碼信號和數(shù)據(jù)鎖存
信號。
地址組:包含地址信號線和控制信號線,時(shí)鐘信號也屬于地址組。
上面說過同一組的按統(tǒng)一標(biāo)準(zhǔn)處理,主要指以下兩點(diǎn):
a. 同一組盡量走在同一層;
b. 同一組在控制等長時(shí)標(biāo)準(zhǔn)一樣,可以和其他組不一樣,這算是自治;當(dāng)然也不能太離譜,
不能出現(xiàn)一個(gè)地球標(biāo)準(zhǔn)、一個(gè)火星標(biāo)準(zhǔn);
接下來結(jié)合具體設(shè)計(jì)來講解。
FLASH 設(shè)計(jì)
Flash 的速率一般比較低,因此在布局和布線方面放的比較寬松。首先分析原理圖,如
下圖,分清數(shù)據(jù)類型:
從圖中示例,F(xiàn)lash 的電源和地管腳很好識別;經(jīng)判斷DQxx 為數(shù)據(jù)信號;Axx 為地址
信號;其他判定控制信號:這樣分析后,就可以在allegro 的規(guī)則管理器中對數(shù)據(jù)分組了。
如下圖:
這里沒有將數(shù)據(jù)再分成低8 位和高8 位,因?yàn)槲以u估過,分成一組,我這邊也有空間走
線和繞等長。因此,在設(shè)置時(shí)要靈活把握。
Flash 布局:不再詳述,看完后文,應(yīng)該會(huì)找到門路。在此強(qiáng)調(diào)一點(diǎn):擺放時(shí),盡量留
足空間扇孔、扇線和繞等長;
Flash 布線:注意一下三點(diǎn):
a. Flash 信號線需要控制阻抗,阻抗為50Ω;
b. 如果空間允許,信號線間距為3W;
c. 等長控制范圍:±200mil;
設(shè)計(jì)實(shí)例如下圖:
SDRAM 設(shè)計(jì)
前期思路和Flash 設(shè)計(jì)的思路一致,例如下圖所示原理圖:
從上圖中,信號的定義很清楚,F(xiàn)lash 設(shè)計(jì)中也講過,不再贅述。需要注意的是兩個(gè)信
號:DQML 和DQMH,這兩個(gè)信號是數(shù)據(jù)信號的掩碼信號,分別屬于低8 位和高8 位。因
此在分組時(shí),分別把它們添加到低8 位組和高8 位組。這樣每個(gè)數(shù)據(jù)小組將有9 根信號線。
就這么升級下去,到DDR 還會(huì)加信號,每小組有10 位了;再升級到DDR2,甚至有一
對差分要加入數(shù)據(jù)小組。因此,在設(shè)計(jì)時(shí),從原理圖中預(yù)演分類和分組時(shí)很必要,這個(gè)能力
一定要習(xí)得。
SDRAM 布局:盡量使信號線不要太長,潛臺詞---靠近控制器(xxx)放置;
對于1 片SDRAM,采用“點(diǎn)對點(diǎn)”拓?fù)?,如下圖:
至于兩片的拓?fù)?,可以看下文DDR2 設(shè)計(jì)的布局,布局要靈活,最好能舉一反三。
SDRAM 布線:
a. 分組:根據(jù)前面介紹的數(shù)據(jù)分類,數(shù)據(jù)組可分為低8 位和高8 位兩組:
低8 位:(BUS 名稱可自定義一個(gè)有意義的名稱):D0~D7、DQML,共9 根信號線;
高8 位:D8~D15、DQMH,共9 根信號線;
注:有時(shí)候網(wǎng)絡(luò)名稱可能不這么命名,也要能夠識別出來;
地址和控制信號分成一組;
b. 信號線控制阻抗為50Ω,保持有完整的參考平面;
c. 拉大信號線間距,保持3W 間距;
d. 等長控制:參照時(shí)鐘等長;
e. 等長誤差控制范圍:數(shù)據(jù)組:±50mil;地址組:±100mil;
f. 在信號層換層的附近添加一些回流地過孔;
DDR2 設(shè)計(jì)
這里跳過了DDR 而直接介紹DDR2,在正式開始前,先大致說明一下DDR。
DDR 可以看作是SDRAM 的升級,相比較下,數(shù)據(jù)線分組分別出現(xiàn)了低8 位鎖存信號
(LDQS)和高8 位鎖存信號( UDQS),此時(shí)每個(gè)小組有10 根信號線了;而地址、控制、
時(shí)鐘仍為一組,DDR 管腳如下示例:
而DDR2 是DDR 的升級,數(shù)據(jù)交換速率升高了;同時(shí)在管腳方面也有一些變化:DDR
的單端信號鎖存信號變成了一對差分信號,這樣一來,數(shù)據(jù)小組每組有11 根信號線。
另外一個(gè)變化就是工作電壓的變化,通常FLASH 為3.3V、SDRAM/DDR 為2.5V, DDR2
為1.8V,到后面的DDR3 變?yōu)?.5V,因?yàn)檩^低的電壓可以帶來電平更快的翻轉(zhuǎn)。
DDR2 的布線
和SDRAM 的要求類似;也有一些變化:
a. 由于有了差分信號線,差分信號阻抗控制為100Ω;
b. 差分需要做對內(nèi)等長,誤差控制在5mil;
c. 等長誤差控制范圍要求更高:數(shù)據(jù)線:±20mil;地址±50mil;
d. 請注意VREF 電源,這個(gè)走線要求加粗15~30mil;濾波電容靠近DDR 管腳放置;
DDR2 的布局
前面分別介紹了FLASH 和SDRAM 的布局,僅為1 顆的情況下采用點(diǎn)對點(diǎn)的布局。在
存在多顆時(shí),布局也比較固定。(布局時(shí),器件間距控制,布局者自己把握)
2 顆內(nèi)存顆粒,有兩種方式:關(guān)于控制器對稱放置和頂?shù)讓N放置:如下圖實(shí)例:
這種布局,地址信號的拓?fù)浣Y(jié)構(gòu),我們通常稱為遠(yuǎn)端分支,也叫做”T” 型拓?fù)?地址信
號先接到正中間,然后分到兩邊的DDR,正中間的VIA 稱之為T 點(diǎn);
當(dāng)空間比較有限時(shí)候,采用頂?shù)讓N的布局方式,地址部分依然可以采用上圖中的扇孔
方式,而數(shù)據(jù)部分的扇孔就比較麻煩了,需要手動(dòng)調(diào)整。如下圖示例:
從上圖示例中可以看出:地址仍采用中間扇孔、數(shù)據(jù)需要手動(dòng)扇孔,由于頂?shù)讓N了
DDR,去耦電容只能擺放在四周了。
當(dāng)有4 顆DDR 時(shí),布局思路同兩顆類似:空間足夠,放在同一面,此時(shí)注意T 點(diǎn)的位置;空間比較有限時(shí),先兩兩對貼,然后再采用T 型拓?fù)?;其拓?fù)浞謩e如下圖:
還有一種拓?fù)湫问剑壕栈ㄦ湥ǔT贒DR3 的布局中比較多的采用;還有一種菊花鏈
的形式:控制器驅(qū)動(dòng)多路負(fù)載,如CPU 后掛的有SDRAM,同時(shí)夜游FLASH,這時(shí)候采用
菊花鏈拓?fù)洌篊PU---SDRAM---FLASH,優(yōu)先保證速率高的信號拓?fù)洹?/p>
關(guān)于DDR 布局,還有很多衍生的布局,如5 顆DDR2,其中有一顆是糾錯(cuò)用的,通常
放在中間,它的地址線在做等長時(shí),不再和其他4 顆放在一起了,其他4 顆內(nèi)存也能形成比
較完美的T 型拓?fù)洹?/p>
總而言之,基礎(chǔ)就是這些東西,關(guān)鍵是能夠理解它,這樣就可以靈活發(fā)揮了。