DDR4的相關(guān)信息

1.DDR4 x8 x16

x8表示單顆數(shù)據(jù)位寬為8bit,x16表示單顆數(shù)據(jù)位寬為16bit
x8的DDR4有4個bank group,每個bank group連接4個bank。
x16的DDR4有2個bank group,每個bank group連接4個bank

2.DDR4帶寬計算方法

DDR4可以在時鐘的上邊沿與下邊沿都發(fā)送數(shù)據(jù)。所以在計算傳輸速度的時候需要乘一個2。比如對DDR4 2400MT/s而言。意味著該DDR4每秒可以傳輸2400M次,這意味著。該DDR可以工作在1200M的頻率。如果DDR4的位寬為64bit。那么傳輸速度為2400M * 64/8=18.75GB/s。如果user 端的頻率為300M,位寬為512bit??梢杂嬎愠鏊俣葹椋?00M * 512/8=18.75GB/s。

3.DDR4內(nèi)部結(jié)構(gòu)

內(nèi)部多通道——Bank Group

它在內(nèi)部設(shè)計了Bank Group架構(gòu),每個Bank Group可以獨立讀寫數(shù)據(jù),這樣一來內(nèi)部的數(shù)據(jù)吞吐量大幅度提升,可以同時讀取大量的數(shù)據(jù),內(nèi)存的等效頻率在這種設(shè)置下也得到巨大的提升。如果內(nèi)存內(nèi)部設(shè)計了兩個獨立的bank group那么相當(dāng)于每次操作16bit的數(shù)據(jù)。

點對點總線

傳統(tǒng)的DDR3設(shè)計中內(nèi)存和內(nèi)存控制器采用多點分支總線鏈接。這種總線允許在一個接口上掛接很多規(guī)格的芯片。這種設(shè)計類似于為每次只能雙向通行一對汽車的道路邊修建倉庫,倉庫直連道路,雖然每個倉庫都有自己的運輸車和運輸能力,但道路只允許每次雙向通行一對車,因此這種設(shè)計如果不停的加修倉庫,只是擴大了存儲能力而已,對運輸能力幫助不大。
DDR4拋棄了這種設(shè)計,轉(zhuǎn)而采用點對點總線。點對點總線的特性是內(nèi)存控制器每通道只能支持唯一的一根內(nèi)存,相比多點分支總線,點對點相當(dāng)于為每個倉庫都設(shè)計了一條道路


DDR4的效率問題

從內(nèi)存控制器的角度來分析,一個Group FSM每三個系統(tǒng)周期可以發(fā)送一個CAS指令。就算地址遞增,連續(xù)發(fā)生頁命中。如果只有一個Group FSM在發(fā)送指令。那么DDR4的最高效率也只有1/3=33.3%。

如果同時只有兩個Group FSM在發(fā)送。那么效率就是2/3= 66.7%。當(dāng)有4個Group FSM在運作時,效率可以達到100%

DDR4中的延遲信息

  • tRAS (Row Active Time) :行激活時間(Row Active) 表示從內(nèi)存行有效命令發(fā)出至預(yù)充電命令發(fā)出之間的最短時間。 如果tRAS的周期太長,系統(tǒng)會因為無謂的等待而降低性能。如果tRAS的周期太短,則可能因缺乏足夠的時間而無法完成數(shù)據(jù)的突發(fā)傳輸,這樣會引發(fā)丟失數(shù)據(jù)或損壞數(shù)據(jù)。
  • tRP (Row precharging time):表示行預(yù)充電時間。tRP用來設(shè)定在另一行能被激活之前,現(xiàn)有的工作行需要的充電時間。從開始關(guān)閉現(xiàn)有的工作行,到可以打開新的工作行之間的間隔就是tRP。
  • tRCD (RAS to CAS Delay ) :是行激活到讀指令發(fā)送的時間
  • tCL (CAS latency) : 列地址脈沖選通潛伏期,從讀指令和列地址一起發(fā)送到數(shù)據(jù)有效的時間間隔
  • tRC (Row cycle time):表示“ SDRAM行周期時間 ”,它是 包括行單元預(yù)充電到激活在內(nèi)的整個過程所需要的最小的時鐘周期數(shù) 。其計算公式是: (tRC) =(tRAS) + (tRP)。
    https://blog.csdn.net/fillthesky/article/details/52204200
    https://blog.csdn.net/njuitjf/article/details/18360741

DDR存取的步驟

內(nèi)存是根據(jù)行和列尋址的,當(dāng)請求觸發(fā)后,最初是tRAS(Activeto Precharge Delay),預(yù)充電后,內(nèi)存才真正開始初始化RAS。一旦tRAS激活后,RAS(Row Address Strobe )開始進行需要數(shù)據(jù)的尋址。首先是行地址,然后初始化tRCD,周期結(jié)束,接著通過CAS訪問所需數(shù)據(jù)的精確十六進制地址。期間從CAS開始到CAS結(jié)束就是CAS延遲。所以CAS是找到數(shù)據(jù)的最后一個步驟,也是內(nèi)存參數(shù)中最重要的。

在數(shù)據(jù)讀取完之后,為了騰出讀出放大器以供同一Bank內(nèi)其他行的尋址并傳輸數(shù)據(jù),內(nèi)存芯片將進行預(yù)充電的操作來關(guān)閉當(dāng)前工作行。還是以上面那個Bank示意圖為例。當(dāng)前尋址的存儲單元是B1、R2、C6。如果接下來的尋址命令是B1、R2、C4,則不用預(yù)充電,因為讀出放大器正在為這一行服務(wù)。但如果地址命令是B1、R4、C4,由于是同一Bank的不同行,那么就必須要先把R2關(guān)閉,才能對R4尋址。從開始關(guān)閉現(xiàn)有的工作行,到可以打開新的工作行之間的間隔就是tRP(Row Precharge command Period,行預(yù)充電有效周期),單位也是時鐘周期數(shù)。



端口信號

init_calib_complete是一個高有效信號,表明DDR4的初始化和校準(zhǔn)已經(jīng)完成,可以正常接受信號了。

內(nèi)存控制器

控制器操縱DRAM的時鐘頻率和系統(tǒng)時鐘的比率為4比1

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容