寫入延遲 tDQSS
在DQS 寫入時(shí)序圖中,可以發(fā)現(xiàn)寫入延遲已經(jīng)不是0了,在發(fā)出寫入命令后,DQS與寫入數(shù)據(jù)要等一段時(shí)間才會(huì)送達(dá)**。這個(gè)周期被稱為 DQS 相對(duì)于寫入命令的延遲時(shí)間(**tDQSS, WRITE Command to the first corresponding rising edge of DQS)。
為什么要有這樣的延遲設(shè)計(jì)呢?原因也在于同步,畢竟一個(gè)時(shí)鐘周期兩次傳送,需要很高的控制精度,它必須要等接收方做好充分的準(zhǔn)備才行。tDQSS 是 DDR 內(nèi)存寫入操作的一個(gè)重要參數(shù),太短的話恐怕接受有誤,太長(zhǎng)則會(huì)造成總線空閑。tDQSS 短不能小于 0.75 個(gè)時(shí)鐘周期,長(zhǎng)不能超過(guò) 1.25 個(gè)時(shí)鐘周期。
正常情況下,tDQSS 是一個(gè)時(shí)鐘周期,但寫入時(shí)接受方的時(shí)鐘只用來(lái)控制命令信號(hào)的同步,而數(shù)據(jù)的接受則完全依靠 DQS 進(jìn)行同步,所以 DQS 與時(shí)鐘不同步也無(wú)所謂。不過(guò),tDQSS產(chǎn)生了一個(gè)不利影響— — 讀后寫操作延遲的增加,如果 CL=2.5,還要在 tDQSS 基礎(chǔ)上加入半個(gè)時(shí)鐘周期,因?yàn)槊疃家?CK 的上升沿發(fā)出。下圖中,當(dāng) CL=2.5 時(shí),讀后寫的延遲將為 tD 個(gè)時(shí)鐘周期(圖中 BL=2)。
另外,DDR 內(nèi)存的數(shù)據(jù)真正寫入由于要經(jīng)過(guò)更多步驟的處理,所以寫回時(shí)間(tWR)也明顯延長(zhǎng),一般在3個(gè)時(shí)鐘周期左右,而在 DDR-Ⅱ規(guī)范中更是將 tWR 列為模式寄存器的一項(xiàng),可見(jiàn)它的重要性。
14.內(nèi)存的自動(dòng)自刷新 ASR(Automatic Self-Refresh)
為了保證所保存的數(shù)據(jù)不丟失,DRAMASR必須定時(shí)進(jìn)行刷新。為了的節(jié)省電力,DDR3采用了一種新型的自動(dòng)自刷新設(shè)計(jì)(ASR,Automatic Self-Refresh)。當(dāng)開始ASR之后,將通過(guò)一個(gè)內(nèi)置于DRAM芯片的溫度傳感器來(lái)控制刷新的頻率,因?yàn)樗⑿骂l率高的話,消電就大,溫度也隨之升高。而溫度傳感器則在保證數(shù)據(jù)不丟失的情況下,盡量減少刷新頻率,降低工作溫度。不過(guò)DDR3的ASR是可選設(shè)計(jì),并不見(jiàn)得市場(chǎng)上的DDR3內(nèi)存都支持這一功能,因此還有一個(gè)附加的功能就是自刷新溫度范圍(SRT,Self-Refresh Temperature)。通過(guò)模式寄存器,可以選擇兩個(gè)溫度范圍,一個(gè)是普通的的溫度范圍(例如0℃至85℃),另一個(gè)是擴(kuò)展溫度范圍,比如到95℃。對(duì)于DRAM內(nèi)部設(shè)定的這兩種溫度范圍,DRAM將以恒定的頻率和電流進(jìn)行刷新操作。
15. 局部自刷新 RASR(Partial Array Self-Refresh)
局部自刷新(RASR,Partial Array Self-Refresh)這是DDR3的一個(gè)可選項(xiàng),通過(guò)這一功能,DDR3內(nèi)存芯片可以只刷新部分邏輯Bank,而不是全部刷新,從而限度的減少因自刷新產(chǎn)生的電力消耗。這一點(diǎn)與移動(dòng)型內(nèi)存(Mobile DRAM)的設(shè)計(jì)很相似
16.延遲鎖定回路(DLL)
DDR SDRAM 對(duì)時(shí)鐘的**性有著很高的要求,而 DDR SDRAM 有兩個(gè)時(shí)鐘,一個(gè)是外部的總線時(shí)鐘,一個(gè)是內(nèi)部的工作時(shí)鐘,在理論上 DDR SDRAM 這兩個(gè)時(shí)鐘應(yīng)該是同步的,但由于種種原因,如溫度、電壓波動(dòng)而產(chǎn)生延遲使兩者很難同步,更何況時(shí)鐘頻率本身也有不穩(wěn)定的情況(SDRAM 也有內(nèi)部時(shí)鐘,不過(guò)因?yàn)樗墓ぷ?傳輸頻率較低,所以內(nèi)外同步問(wèn)題并不突出)。
DDR SDRAM 的 tAC 就是因?yàn)閮?nèi)部時(shí)鐘與外部時(shí)鐘有偏差而引起的,它很可能造成因數(shù)據(jù)不同步而產(chǎn)生錯(cuò)誤的惡果。實(shí)際上,不同步就是一種正/負(fù)延遲,如果延遲不可避免,那么若是設(shè)定一個(gè)延遲值,如一個(gè)時(shí)鐘周期,那么內(nèi)外時(shí)鐘的上升與下降沿還是同步的。鑒于外部時(shí)鐘周期也不會(huì)統(tǒng)一,所以需要根據(jù)外部時(shí)鐘動(dòng)態(tài)修正內(nèi)部時(shí)鐘的延遲來(lái)實(shí)現(xiàn)與外部時(shí)鐘的同步,這就是 DLL 的任務(wù)。
DLL 不同于主板上的 PLL,它不涉及頻率與電壓轉(zhuǎn)換,而是生成一個(gè)延遲量給內(nèi)部時(shí)鐘。目前 DLL 有兩種實(shí)現(xiàn)方法,一個(gè)是時(shí)鐘頻率測(cè)量法(CFM,Clock Frequency Measurement),一個(gè)是時(shí)鐘比較法(CC,Clock Comparator)。
CFM 是測(cè)量外部時(shí)鐘的頻率周期,然后以此周期為延遲值控制內(nèi)部時(shí)鐘,這樣內(nèi)外時(shí)鐘正好就相差了一個(gè)時(shí)鐘周期,從而實(shí)現(xiàn)同步。DLL 就這樣反復(fù)測(cè)量反復(fù)控制延遲值,使內(nèi)部時(shí)鐘與外部時(shí)鐘保持同步。
CC的方法則是比較內(nèi)外部時(shí)鐘的長(zhǎng)短,如果內(nèi)部時(shí)鐘周期短了,就將所少的延遲加到下一個(gè)內(nèi)部時(shí)鐘周期里,然后再與外部時(shí)鐘做比較,若是內(nèi)部時(shí)鐘周期長(zhǎng)了,就將多出的延遲從下一個(gè)內(nèi)部時(shí)鐘中刨除,如此往復(fù),終使內(nèi)外時(shí)鐘同步。