如何玩轉DDR?要先從這五大關(guān)鍵技術(shù)下手
首先小編就幾個(gè)關(guān)鍵技術(shù)再給大家介紹一下。
本文引用地址:http://dyxdggzs.com/article/201706/346827.htm
差分時(shí)鐘技術(shù)
差分時(shí)鐘是DDR的一個(gè)重要且必要的設計,但大家對CK#(CKN)的作用認識很少,很多人理解為第二個(gè)觸發(fā)時(shí)鐘,其實(shí)它的真實(shí)作用是起到觸發(fā)時(shí)鐘校準的作用。
由于數據是在CK的上下沿觸發(fā),造成傳輸周期縮短了一半,因此必須要保證傳輸周期的穩定以確保數據的正確傳輸,這就要求CK的上下沿間距要有精確的控制。但因為溫度、電阻性能的改變等原因,CK上下沿間距可能發(fā)生變化,此時(shí)與其反相的CK#(CKN)就起到糾正的作用(CK上升快下降慢,CK#則是上升慢下降快),如下圖一所示。
圖一 差分時(shí)鐘示意圖
數據選取脈沖(DQS)
就像時(shí)鐘信號一樣,DQS也是DDR中的重要功能,它的功能主要用來(lái)在一個(gè)時(shí)鐘周期內準確的區分出每個(gè)傳輸周期,并便于接收方準確接收數據。每一顆8bit DRAM芯片都有一個(gè)DQS信號線(xiàn),它是雙向的,在寫(xiě)入時(shí)它用來(lái)傳送由主控芯片發(fā)來(lái)的DQS信號,讀取時(shí),則由DRAM芯片生成DQS向主控發(fā)送。完全可以說(shuō),它就是數據的同步信號。
在讀取時(shí),DQS與數據信號同時(shí)生成(也是在CK與CK#的交叉點(diǎn))。而DDR內存中的CL也就是從CAS發(fā)出到DQS生成的間隔,數據真正出現在數據I/O總線(xiàn)上相對于DQS觸發(fā)的時(shí)間間隔被稱(chēng)為tAC。實(shí)際上,DQS生成時(shí),芯片內部的預取已經(jīng)完畢了,由于預取的原因,實(shí)際的數據傳出可能會(huì )提前于DQS發(fā)生(數據提前于DQS傳出)。由于是并行傳輸,DDR內存對tAC也有一定的要求,對于DDR266,tAC的允許范圍是±0.75ns,對于DDR333,則是±0.7ns,其中CL里包含了一段DQS的導入期。
DQS 在讀取時(shí)與數據同步傳輸,那么接收時(shí)也是以DQS的上下沿為準嗎?不,如果以DQS的上下沿區分數據周期的危險很大。由于芯片有預取的操作,所以輸出時(shí)的同步很難控制,只能限制在一定的時(shí)間范圍內,數據在各I/O端口的出現時(shí)間可能有快有慢,會(huì )與DQS有一定的間隔,這也就是為什么要有一個(gè)tAC規定的原因。而在接收方,一切必須保證同步接收,不能有tAC之類(lèi)的偏差。這樣在寫(xiě)入時(shí),DRAM芯片不再自己生成DQS,而以發(fā)送方傳來(lái)的DQS為基準,并相應延后一定的時(shí)間,在DQS的中部為數據周期的選取分割點(diǎn)(在讀取時(shí)分割點(diǎn)就是上下沿),從這里分隔開(kāi)兩個(gè)傳輸周期。這樣做的好處是,由于各數據信號都會(huì )有一個(gè)邏輯電平保持周期,即使發(fā)送時(shí)不同步,在DQS上下沿時(shí)都處于保持周期中,此時(shí)數據接收觸發(fā)的準確性無(wú)疑是最高的,如下圖二所示。
圖二 數據時(shí)序
數據掩碼技術(shù)(DQM)
不是DDR所特有的,但對于DDR來(lái)說(shuō)也是比較重要的技術(shù),所以一并介紹下。
為了屏蔽不需要的數據,人們采用了數據掩碼(Data I/O Mask,簡(jiǎn)稱(chēng)DQM)技術(shù)。通過(guò)DQM,內存可以控制I/O端口取消哪些輸出或輸入的數據。這里需要強調的是,在讀取時(shí),被屏蔽的數據仍然會(huì )從存儲體傳出,只是在“掩碼邏輯單元”處被屏蔽。
DQM由主控芯片控制,為了精確屏蔽一個(gè)P-Bank位寬中的每個(gè)字節,每個(gè)64bit位寬的數據中有8個(gè)DQM信號線(xiàn),每個(gè)信號針對一個(gè)字節。這樣,對于4bit位寬芯片,兩個(gè)芯片共用一個(gè)DQM 信號線(xiàn),對于8bit位寬芯片,一個(gè)芯片占用一個(gè)DQM信號,而對于16bit位寬芯片,則需要兩個(gè)DQM引腳。SDRAM 官方規定,在讀取時(shí)DQM發(fā)出兩個(gè)時(shí)鐘周期后生效,而在寫(xiě)入時(shí),DQM與寫(xiě)入命令一樣是立即生效,如下圖三和四分別顯示讀取和寫(xiě)入時(shí)突發(fā)周期的第二筆數據被取消。
圖三 讀取時(shí)數據掩碼操作
圖四 寫(xiě)入時(shí)數據掩碼操作
所以DQM信號的作用就是對于突發(fā)寫(xiě)入,如果其中有不想存入的數據,就可以運用DQM信號進(jìn)行屏蔽。DQM信號和數據信號同時(shí)發(fā)出,接收方在DQS的上升與下降沿來(lái)判斷DQM的狀態(tài),如果DQM為高電平,那么之前從DQS中部選取的數據就被屏蔽了。
有人可能會(huì )覺(jué)得,DQM是輸入信號,意味著(zhù)DRAM芯片不能發(fā)出DQM信號給主控芯片作為屏蔽讀取數據的參考。其實(shí),該讀哪個(gè)數據也是由主控芯片決定的,所以DRAM芯片也無(wú)需參與主控芯片的工作,哪個(gè)數據是有用的就留給主控芯片自己去選擇。
好了,前面介紹了DQS的功能,那么我們在測試時(shí)根據DQS和DQ的波形是如何區分數據的讀寫(xiě)操作的?
在DDRx里面經(jīng)常會(huì )被一些縮寫(xiě)誤擾,如OCD、OCT和ODT,我想有同樣困擾的大有人在,現在筆者來(lái)介紹一下大家的這些困擾吧。
片外驅動(dòng)調校OCD(Off-Chip Driver)
OCD是在DDR-II開(kāi)始加入的新功能,而且這個(gè)功能是可選的,有的資料上面又叫離線(xiàn)驅動(dòng)調整。OCD的主要作用在于調整I/O接口端的電壓,來(lái)補償上拉與下拉電阻值,從而調整DQS與DQ之間的同步確保信號的完整與可靠性。調校期間,分別測試DQS高電平和DQ高電平,以及DQS低電平和DQ高電平的同步情況。如果不滿(mǎn)足要求,則通過(guò)設定突發(fā)長(cháng)度的地址線(xiàn)來(lái)傳送上拉/下拉電阻等級(加一檔或減一檔),直到測試合格才退出OCD操作,通過(guò)OCD操作來(lái)減少DQ、DQS的傾斜從而提高信號的完整性及控制電壓來(lái)提高信號品質(zhì)。具體調校如下圖五所示。
圖五 OCD
不過(guò),由于在一般情況下對應用環(huán)境穩定程度要求并不太高,只要存在差分DQS時(shí)就基本可以保證同步的準確性,而且OCD 的調整對其他操作也有一定影響,因此OCD功能在普通臺式機上并沒(méi)有什么作用,其優(yōu)點(diǎn)主要體現在對數據完整性非常敏感的服務(wù)器等高端產(chǎn)品領(lǐng)域。
ODT(On-Die Termination,片內終結)
ODT也是DDR2相對于DDR1的關(guān)鍵技術(shù)突破,所謂的終結(端接),就是讓信號被電路的終端吸收掉,而不會(huì )在電路上形成反射,造成對后面信號的影響。顧名思義,ODT就是將端接電阻移植到了芯片內部,主板上不再有端接電路。在進(jìn)入DDR時(shí)代,DDR內存對工作環(huán)境提出更高的要求,如果先前發(fā)出的信號不能被電路終端完全吸收掉而在電路上形成反射現象,就會(huì )對后面信號的影響造成運算出錯。因此目前支持DDR主板都是通過(guò)采用終結電阻來(lái)解決這個(gè)問(wèn)題。由于每根數據線(xiàn)至少需要一個(gè)終結電阻,這意味著(zhù)每塊DDR主板需要大量的終結電阻,這也無(wú)形中增加了主板的生產(chǎn)成本,而且由于不同的內存模組對終結電阻的要求不可能完全一樣,也造成了所謂的“內存兼容性問(wèn)題”。 而在DDR-II中加入了ODT功能,當在DRAM模組工作時(shí)把終結電阻器關(guān)掉,而對于不工作的DRAM模組則進(jìn)行終結操作,起到減少信號反射的作用,如下圖六所示。
圖六 ODT端接示意圖
ODT的功能與禁止由主控芯片控制,在開(kāi)機進(jìn)行EMRS時(shí)進(jìn)行設置,ODT所終結的信號包括DQS、DQS#、DQ、DM等。這樣可以產(chǎn)生更干凈的信號品質(zhì),從而產(chǎn)生更高的內存時(shí)鐘頻率速度。而將終結電阻設計在內存芯片之上還可以簡(jiǎn)化主板的設計,降低了主板的成本,而且終結電阻器可以和內存顆粒的“特性”相符,從而減少內存與主板的兼容問(wèn)題的出現。
重置(Reset)
重置是DDR3新增的一項重要功能,并為此專(zhuān)門(mén)準備了一個(gè)引腳。這一引腳將使DDR3的初始化處理變得簡(jiǎn)單。當Reset命令有效時(shí),DDR3 內存將停止所有的操作,并切換至最少量活動(dòng)的狀態(tài),以節約電力。在Reset期間,DDR3內存將關(guān)閉內在的大部分功能,所有數據接收與發(fā)送器都將關(guān)閉,且所有內部的程序裝置將復位,DLL(延遲鎖相環(huán)路)與時(shí)鐘電路將停止工作,甚至不理睬數據總線(xiàn)上的任何動(dòng)靜。這樣一來(lái),該功能將使DDR3達到最節省電力的目的,新增的引腳如下圖七所示。
圖七 Reset及ZQ引腳
ZQ校準
如上圖七所示,ZQ也是一個(gè)新增的引腳,在這個(gè)引腳上接有一個(gè)240歐姆的低公差參考電阻。這個(gè)引腳通過(guò)一個(gè)命令集,通過(guò)片上校準引擎(ODCE,On-Die Calibration Engine)來(lái)自動(dòng)校驗數據輸出驅動(dòng)器導通電阻與ODT的終結電阻值。當系統發(fā)出這一指令之后,將用相應的時(shí)鐘周期(在加電與初始化之后用512個(gè)時(shí)鐘周期,在退出自刷新操作后用256時(shí)鐘周期、在其他情況下用64個(gè)時(shí)鐘周期)對導通電阻和ODT電阻進(jìn)行重新校準。
VREFCA VREFDQ
對于內存系統工作非常重要的參考電壓信號VREF,在DDR3系統中將VREF分為兩個(gè)信號。一個(gè)是為命令與地址信號服務(wù)的VREFCA,另一個(gè)是為數據總線(xiàn)服務(wù)的VREFDQ,它將有效的提高系統數據總線(xiàn)的信噪等級,如下圖八所示。
圖八 VREFCA VREFDQ
現在來(lái)說(shuō)說(shuō)DDR3和DDR4最關(guān)鍵的一些技術(shù),write leveling以及DBI功能。
Write leveling功能與Fly_by拓撲
Write leveling功能和Fly_by拓撲密不可分。Fly_by拓撲主要應用于時(shí)鐘、地址、命令和控制信號,該拓撲可以有效的減少stub的數量和他們的長(cháng)度,但是卻會(huì )導致時(shí)鐘和Strobe信號在每個(gè)芯片上的飛行時(shí)間偏移,這使得控制器(FPGA或者CPU)很難保持tDQSS、tDSS 和tDSH這些參數滿(mǎn)足時(shí)序規格。因此write leveling應運而生,這也是為什么在DDR3里面使用fly_by結構后數據組可以不用和時(shí)鐘信號去繞等長(cháng)的原因,數據信號組與組之間也不用去繞等長(cháng),而在DDR2里面數據組還是需要和時(shí)鐘有較寬松的等長(cháng)要求的。DDR3控制器調用Write leveling功能時(shí),需要DDR3 SDRAM顆粒的反饋來(lái)調整DQS與CK之間的相位關(guān)系,具體方式如下圖九所示。
圖九 Write leveling
Write leveling 是一個(gè)完全自動(dòng)的過(guò)程??刂破鳎–PU或FPGA)不停的發(fā)送不同時(shí)延的DQS 信號,DDR3 SDRAM 顆粒在DQS-DQS#的上升沿采樣CK 的狀態(tài),并通過(guò)DQ 線(xiàn)反饋給DDR3 控制器??刂破鞫朔磸偷恼{整DQS-DQS#的延時(shí),直到控制器端檢測到DQ 線(xiàn)上0 到1 的跳變(說(shuō)明tDQSS參數得到了滿(mǎn)足),控制器就鎖住此時(shí)的延時(shí)值,此時(shí)便完成了一個(gè)Write leveling過(guò)程;同時(shí)在Leveling 過(guò)程中,DQS-DQS#從控制器端輸出,所以在DDR3 SDRAM 側必須進(jìn)行端接;同理,DQ 線(xiàn)由DDR3 SDRAM顆粒側輸出,在控制器端必須進(jìn)行端接;
需要注意的是,并不是所有的DDR3控制器都支持write leveling功能,所以也意味著(zhù)不能使用Fly_by拓撲結構,通常這樣的主控芯片會(huì )有類(lèi)似以下的描述:
DBI功能與POD電平
DBI的全稱(chēng)是Data Bus Inversion數據總線(xiàn)反轉/倒置,它與POD電平密不可分,它們也是DDR4區別于DDR3的主要技術(shù)突破。
POD電平的全稱(chēng)是Pseudo Open-Drain 偽漏極開(kāi)路,其與DDR3對比簡(jiǎn)單的示例電路如下圖十所示。
圖十 POD示意電路
從中可以看到,當驅動(dòng)端的上拉電路導通,電路處于高電平時(shí)(也即傳輸的是“1”),此時(shí)兩端電勢差均等,相當于回路上沒(méi)有電流流過(guò),但數據“1”還是照樣被傳輸,這樣的設計減少了功率消耗。
正是由于POD電平的這一特性,DDR4設計了DBI功能。當一個(gè)字節里的“0”比特位多于“1”時(shí),可以使能DBI,將整個(gè)字節的“0”和“1”反轉,這樣“1”比“0”多,相比原(反轉前)傳輸信號更省功耗,如下表一所示。
表一 DBI示例
以上就是DDRx的一些主要的關(guān)鍵技術(shù)介紹,可以用如下表二所示來(lái)總結下DDRx的特性對比。
表二 DDRx SDRAM特性對比
更多有關(guān)DDR技術(shù)文章,歡迎訪(fǎng)問(wèn)與非網(wǎng)DDR專(zhuān)區
評論