4.17 命令、地址總線(xiàn)奇偶校驗(yàn)(C/A Parity)
在DDR4 SDRAM中MR2.[A2:A0]是用來(lái)打開(kāi)或關(guān)閉C/A Parity的定義域,,默認(rèn)狀態(tài)位關(guān)閉,。通過(guò)向MR5中的C/A Parity Latency寫(xiě)一個(gè)非0值,可以使能C/A Parity功能,。但是在使能C/A Parity功能之前需要確保Parity Error位必須為0,,也就是說(shuō)在執(zhí)行SDRAM命令之前不能有Parity錯(cuò)誤。在C/A Parity打開(kāi)時(shí),,對(duì)于所有的DRAM命令,,Parity的附加延時(shí)是相對(duì)于C/A Parity關(guān)閉的時(shí)序的。在C/A Parity開(kāi)啟時(shí),,有效命令之間僅能使用DES命令,,以防止SDRAM出現(xiàn)任何問(wèn)題。C/A Parity僅能在DDL-on模式下開(kāi)啟,,不支持DDL-off模式,。
C/A Parity信號(hào)覆蓋了ACT_n, RAS_n, CAS_n, WE_n 以及包含Bank地址與Bank Group的地址總線(xiàn),CKE,、ODT,、CS_n信號(hào)是不包含在內(nèi)的。DRAM應(yīng)該將所有未使用的引腳當(dāng)做0輸入處理,。比如說(shuō),,die上將某些引腳懸空了,但是DRAM設(shè)備仍然使用了這些引腳,那么DARM內(nèi)部需要將這些引腳當(dāng)做0來(lái)處理,。
Parity的慣用做法是偶校驗(yàn),,即所有用來(lái)進(jìn)行Parity計(jì)算的輸入包括Parity信號(hào),應(yīng)該保持為偶數(shù)個(gè)1,。也就是說(shuō),,通過(guò)改變Parity信號(hào)的值,,來(lái)保證所有傳輸信號(hào)(包括Parity信號(hào))中的1的總是為一個(gè)偶數(shù),。
當(dāng)DRAM檢測(cè)到了任何一個(gè)被CS_n信號(hào)確認(rèn)的命令存在Parity Error時(shí),都需要執(zhí)行如下步驟,。
1. 忽略出錯(cuò)的命令,。當(dāng)此錯(cuò)誤命令之前的最大時(shí)間窗口(tPAR_UNKNOWN)中的命令可能也無(wú)法執(zhí)行,例如,,當(dāng)一個(gè)讀請(qǐng)求處于這時(shí)間窗口時(shí),,是不會(huì)被執(zhí)行的,DRAM此時(shí)也不會(huì)驅(qū)動(dòng)DQS輸出,。
2. 將出錯(cuò)的命令與地址位記錄在Error Log 中,,此Log位于MPR Page 1。
3. 將模式寄存器中的Parity Error狀態(tài)位置為1,,Parity Error狀態(tài)位必須在ALERT_n被DRAM釋放之前被置位,,即時(shí)間tPAR_ALERT_ON + tPAR_ALERT_PW(min)。
4. 置位ALERT_n(低電平有效),,需要在時(shí)間參數(shù)tPAR_ALERT_ON內(nèi)完成,。
5. 等待所有正在進(jìn)行的命令完成,這些命令都是在錯(cuò)誤命令前的tPAR_UNKOWN時(shí)間內(nèi)到達(dá)的,。如果在退出自刷新命令后的tXS_Fast 與tXS窗口之間出現(xiàn)了C/A Parity錯(cuò)誤,,DRAM將延遲ALERT_n的有效時(shí)間,以保證正在進(jìn)行的刷新命令能夠順利完成,。
6. 在關(guān)閉所有的已打開(kāi)的Page之前,,需要保證時(shí)間參數(shù)tRAS_min滿(mǎn)足要求。DRAM在時(shí)間窗口tPAR_ALERT_ON + tPAR_ALERT_PW內(nèi)不能發(fā)送任何命令,。
7. tPAR_ALERT_PW_min時(shí)間之后,,DRAM可將ALERT_n拉高。
8. 當(dāng)DRAM處于一個(gè)已知的預(yù)充電狀態(tài)之后,,可將ALERT_n拉高,。
9. 在時(shí)間tPAR_ALERT_ON + tPAR_ALERT_PW之后,DRAM可接受任何其他不同操作的命令,。在控制器將Parity Error狀態(tài)位寫(xiě)為0之前,,DRAM不會(huì)重新開(kāi)始檢查C/A Parity,在此之前控制器會(huì)將所有的命令都當(dāng)做錯(cuò)誤命令來(lái)執(zhí)行。
10. 當(dāng)時(shí)間窗口tPAR_ALERT_ON + tPAR_ALERT_PW內(nèi)出現(xiàn)刷新命令或者刷新命令是第一個(gè)有C/A Parity錯(cuò)誤的命令,,DRAM都會(huì)忽略這個(gè)刷新命令,。此時(shí)控制器將按照需求發(fā)送額外的刷新周期。
11. 在數(shù)據(jù)窗口tPAR_ALERT_ON + tPAR_ALERT_PW之后,,隨時(shí)可以讀取Parity Error狀態(tài)位,,以確定是哪一個(gè)DRAM出現(xiàn)了相關(guān)的錯(cuò)誤。在Parity Error狀態(tài)位被清零之前,,DRAM都會(huì)保存第一個(gè)錯(cuò)誤命令的所有錯(cuò)誤信息,。
C/A Parity錯(cuò)誤在模式寄存器中的定義如下。C/A Parity Latency為只可寫(xiě),,C/A Parity Error Status為可讀可寫(xiě),,C/A Parity Log為只讀??刂破鲀H可把C/A Parity Error Status寫(xiě)為0,。若控制器強(qiáng)行將C/A Parity Error Status寫(xiě)為1,DRAM將選擇性的阻塞此寫(xiě)請(qǐng)求,。
在DDR4 SDRAM中,,MR5.A9=1可使能“固定奇偶錯(cuò)誤模式”。當(dāng)此功能打開(kāi)后,,DRAM會(huì)在ALERT_n無(wú)效之后繼續(xù)監(jiān)測(cè)C/A Parity,,即使此時(shí)C/A Parity Error Status為高電平。如果在錯(cuò)誤狀態(tài)位被清零之前,,連續(xù)出現(xiàn)C/A Parity錯(cuò)誤,,那么此時(shí)MPR Page 1中的Error Log必須被視為無(wú)效。在固定奇偶錯(cuò)誤模式下,,ALERT_n信號(hào)保持有效脈沖的最小與最大時(shí)間需要遵循時(shí)間參數(shù)tPAR_ALERT_PW,。當(dāng)控制器檢測(cè)到ALERT_n有效時(shí),需要立馬發(fā)送DES命令,。發(fā)送DES的反應(yīng)時(shí)間需要遵循時(shí)間參數(shù)tPAR_ALERT_RSP,。
下圖表示了出現(xiàn)C/A Parity 錯(cuò)誤與ALERT_n信號(hào)有效的時(shí)序圖。
4.18 控制器降檔模式(Controller Gear Down Mode)
以下的幾項(xiàng)描述了降檔模式的進(jìn)入序列,。DRAM默認(rèn)下是采用1/2的時(shí)鐘比例,,并且使用了低頻的MRS命令模式,在每個(gè)MRS命令之前都增加了一個(gè)同步脈沖,,從而可以與1/4時(shí)鐘模式下操作命令總線(xiàn)的CS_n,,CKE,ODT信號(hào)的在合適的時(shí)鐘下對(duì)齊,。在1/2模式下,,不需要額外的MRS命令與同步脈沖來(lái)進(jìn)入降檔模式,,且DRAM默認(rèn)是處于1/2模式中的。
在初始中進(jìn)入降檔模式的序列如下所示:
- 在上電或初始化過(guò)程中,,DRAM默認(rèn)是處于1/2模式下,。
- Reset有效,低電平有效,。
- CKE有效,,高電平有效,使能相應(yīng)的Rank
- 通過(guò)一個(gè)N倍CK的低頻CMD降檔命令來(lái)實(shí)現(xiàn)MRS命令,。此低頻MRS命令也是通過(guò)一個(gè)1被CS_n信號(hào)來(lái)確認(rèn)的,。
- 控制器通過(guò)發(fā)送一個(gè)N倍的NOP命令來(lái)實(shí)現(xiàn)一個(gè)1倍的同步脈沖,tSYCN_GEAR是一個(gè)偶數(shù)個(gè)時(shí)鐘周期的參數(shù),。同時(shí),,同步脈沖也是從CMD命令的偶數(shù)個(gè)上升沿開(kāi)始的。
- 在2倍tCMD_GEAR時(shí)間之后開(kāi)始普通命令的操作,。
在1/4模式中的降檔操作,需要使用如下的模式寄存器配置:
- CAS Latency (MR0 A[6:4,2]) : Even numbers
- Write Recovery and Read to Precharge (MR0 A[11:9]) : Even numbers
- Additive Latency (MR1 A[4:3]) : 0, CL -2
- CAS Write Latency (MR2 A[5:3]) : Even numbers
- CS to Command/Address Latency Mode (MR4 A[8:6]) : Even numbers
- CA Parity Latency Mode (MR5 A[2:0]) : Even numbers
下圖中描述了在上電過(guò)程中,,2N模式下的控制操作
在CKE與RESET都設(shè)置為高電平時(shí),,geardown(1/2 rate to 1/4 rate)mode中的不同操作。
如果在進(jìn)入或退出自刷新時(shí)操作1/2模式(1N),,不需要MRS命令或同步脈沖,,第一個(gè)有效命令之前的最小退出延時(shí)為tXS或tXS_Abort。如果在進(jìn)入或退出自刷新時(shí)操作1/4模式(2N),,DRAM需要MRS命令或者是同步脈沖,,如下圖所示。DRAM需要在自刷新模式和最大低功耗模式內(nèi)部從2N模式復(fù)位至1N模式,,由此可通過(guò)同步脈沖來(lái)與合適的時(shí)鐘對(duì)齊,。在自刷新模式中的操作如下圖所示。
4.19 DDR4核心時(shí)序
|