DDRx的關(guān)鍵技術(shù)介紹(上)
在上一篇的問(wèn)題里面問(wèn)到了DDRX相對于前一代來(lái)說(shuō)的關(guān)鍵技術(shù)突破在哪里,雖然沒(méi)有人回答得完全正確,但這個(gè)也是很正常的,因為通過(guò)幾句話(huà)要想說(shuō)清楚也確實(shí)是不容易的,所以還是通過(guò)文章來(lái)把這些關(guān)鍵技術(shù)再給大家介紹一下。
本文引用地址:http://dyxdggzs.com/article/201609/296958.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è)數據是有用的就留給主控芯片自己去選擇。
評論