爲什麼DDR5內存是單根“雙通道”?

若不清楚內存的工作方式建議查看https://api.xiaoheihe.cn/v3/bbs/app/api/web/share?h_camp=link&h_src=YXBwX3NoYXJl&link_id=f8ae70f191ea

1.爲什麼雙通道可以提升性能?

DDR4內存單個通道數據線的位寬是64bit,消費級平臺只有兩條內存通道總位寬爲64*2=128bit,而帶寬=頻率*位寬,所以DDR4雙通道增強性能的本質是提升了帶寬即數據吞吐量。

DQ即爲數據線

2.DDR5的單根雙通道

  DDR5的單根雙通道是兩條32bit位寬的子通道和單根DDR4一樣都是64bit位寬,所以並不能直接提升帶寬,唯一的優勢是兩個子通道可以分別獨立進行讀寫,一些場景可以優化延遲,但是和我們所說的128bit雙通道根本不是一個東西。

3.DDR5爲什麼要搞雙子通道?

  自DDR1-DDR3內存的核心頻率沒有任何增長,IO頻率卻每代都在翻倍,根本原因在於每代提升預取寬度,DDR1爲2bit,DDR2爲4bit,DDR3爲8bit。預取簡單來說就是一次尋址多次數據,每次尋址都有固定開銷而所需數據往往是連續的,所以乾脆將其後幾位的數據一同輸出給CPU,如8bit預取就是將尋址到的1bit數據+其相鄰地址後7bit數據一同發送。

  由於內存內部是8個array是共享地址線的,所以一次尋址這8個array會同步輸出1bit,也就是1*8=8bit,同時進行預取,將後7位連續地址上的數據也輸出出去,合計就是8*8=64bit

array

  內存總線位寬64bit,那麼實際輸出的數據就是64*8=512bit=64字節,正好對應CPU內部緩存的緩存行64字節的大小,刷新一個完整的緩存行。

  DDR4則是加入bank group和提升一倍核心頻率直接讓IO頻率翻倍,預取寬度還是8bit

  DDR5受限於技術和成本沒法翻倍核心頻率,那麼只能加預取,也就是16bit。但是這樣就有個問題一個通道64bit預取16bit,那麼輸入到緩存的數據總量是64*16=1024bit=128字節,一個緩存行只有64字節大小,多出來的部分就直接變成無用垃圾,所以就有了把64bit通道分成兩個32bit通道的操作,32*16=512bit=64字節,完美。

  當然DDR5又加了一倍bank group還集成了PMIC這也是重要改變。

4.補充:bank group是幹嘛的?

  DDR3只有bank沒有bank group,全部bank共享IO gating這時候訪問內存同一時間只能訪問一個bank

DDR3

  DDR4增加bank group將全部bank分成2組或者4組,每個組稱爲一個bank group,不同bank group可以同時被訪問,同一個bank group內的bank只能被訪問一個,這樣就實現了多個bank被同時訪問,提升帶寬。

DDR4

5.補充:核心頻率/IO頻率/等效頻率

  核心頻率:內存顆粒內部的頻率,由於電容充放電速度遠遠比不上mos管開關速度所以做不了很高。

  IO頻率:IO緩衝區的頻率,一般也被稱爲內存實際頻率

  等效頻率:由於DDR內存在一個時鐘週期上下沿各傳輸一次數據,所以IO頻率*2=等效頻率,商家宣傳的默認也是等效頻率

  如下圖等效頻率爲3900Mhz,IO頻率爲1950Mhz,內存控制器頻率1950Mhz

6.問題:DDR5對遊戲提升如何?再提預取寬度對遊戲貌似影響已經不算很大了。

更多遊戲資訊請關註:電玩幫遊戲資訊專區

電玩幫圖文攻略 www.vgover.com