2017年8月23日 星期三

Dram顆粒位寬8bit & Rank (64bit計算)

新來各業務Arther認真問DRAM問題  害我還得多家補習   真是好樣的  GOOD!!!
好一個打破砂鍋問到底啊!!!!!
:)




https://read01.com/zh-tw/yO8dGM.html#.WZ1jyfig-Cp

DRAM 基礎知識

2014/10/21 來源:CSDN博客
內存可以根據儲存能力與電源的關係可以分為以下兩類:
易失性存儲器(Volatile memory)指的是當電源供應中斷後,存儲器所儲存的資料便會消失的存儲器。主要有以下的類型:
非易失性存儲器(Non-volatile memory)是指即使電源供應中斷,存儲器所儲存的資料並不會消失,重新供電後,就能夠讀取內存資料的存儲器。主要有以下的類型:
單列直插內存條(SIMM)和 雙列直插內存條(DIMM)
按內存的工作方式:
  • FPA EDO DRAM-------FPM(FAST PAGE MODE)RAM
  • EDO(EXTENDED DATA OUT)RAM
  • SDRAM(同步動態RAM)-----S(SYSNECRONOUS)DRAM
  • DDR(DOUBLE DATA RAGE)RAM
內存條性能評價指標:
  • 存儲容量:即一根內存條可以容納的二進位信息量,如目前常用的168線內存條的存儲容量一般多為32兆、64兆和128兆。
  • 存取速度:即兩次獨立的存取操作之間所需的最短時間,又稱為存儲周期,半導體存儲器的存取周期一般為60納秒至100納秒。
  • 存儲器的可靠性:存儲器的可靠性用平均故障間隔時間來衡量,可以理解為兩次故障之間的平均時間間隔。
  • 性能價格比:性能主要包括存儲器容量、存儲周期和可靠性三項內容,性能價格比是一個綜合性指標,對於不同的存儲器有不同的要求。
SDR和DDR1/2/3全系列內存對照表:
single-sided和double-sided、single-rank和double-rank
如果1根ECC DIMM的9顆晶片都位於DIMM的同一面,就叫做single-sided(單面)。如果9顆晶片分布在DIMM的兩面,就叫做double-sided(雙面)。作為對single-sided和double-sided的補充,DIMM還被分為single-rank和double-rank(也就是我們在內存的lable上經常能看到的1R,2R)。
2R*8----R是rank,8是內存顆粒位寬;當顆粒位寬×顆粒數=64bits時,這個模組就是有一個RANK。
References
內存頻率介紹
single-sided/double-sided/single-rank/double-rank
rank數的計算
http://www.zkvod.com/Jsjc/ShowArticle.asp?ArticleID=11 內存 bank 和rank 區別
1:什麼是RANK?


答:CPU與內存之間的接口位寬是64bit,也就意味著CPU在一個時鐘周期內會向內存發送或從內存讀取64bit的數據。可是,單個內存顆粒的位寬僅有4bit、8bit或16bit,個別也有32bit的。因此,必須把多個顆粒並聯起來,組成一個位寬為64bit的數據集合,才可以和CPU互連。生產商把64bit集合稱為一個物理BANK(Physical BANK),簡寫為P-BANK。為了和邏輯BANK相區分,也經常把P-BANK稱為RANK或Physical RANK,把L-BANK則簡稱為BANK。

如果每個內存顆粒的位寬是8bit,應該由8個顆粒並聯起來,組成一個RANK(64bit);同理,如果顆粒的位寬是16bit,應該由4個顆粒組成一個RANK。

由此可知:Rank其實就是一組內存顆粒位寬的集合。具體說,當顆粒位寬×顆粒數=64bits時,這個模組就是有一個RANK。

為了保證和CPU的溝通,一個模組至少要有一個RANK。但是,為了保證有一定的內存容量,目前,DDR2內存,經常是採用一個模組兩個RANK的架構。(過去也有用幾個模組組成一個RANK的情況)。

「模組構成」中的「R」是「RANK」的意思。「2R」是說組成模組的RANK數(Number of ranks of memory installed)是2個。有「1R」和「2R」兩種;

「模組構成」中的「×8」是顆粒的位寬(bit width),有×4、×8和×16三種

2.如何根據模組的編號計算模組的RANK數?


答:根據模組組成原理可以知道:如果模組的深度等於顆粒的深度,就是一個RANK;如果模組的深度等於兩倍顆粒深度,就是兩個RANK。例如,編號為M378B5673DZ1的三星模組的模組深度是256M。又因為這種模組採用的是K4T1G084QD顆粒。這種顆粒的密度是1024Mb;位寬是8b,因此,顆粒深度是1024Mb÷8b=128M。即模組深度是顆粒深度的兩倍,因此,是兩個RANK。

此外,從模組編號或顆粒編號給出的顆粒位寬和實際顆理粒數也可以計算出RANK數。例如,當顆粒位寬是8b時,模組用了8個顆粒,8×8b=64b,就是一個RANK;如果用了16顆顆粒,16×8b=128b,就是兩個RANK。

3.模組的RANK數跟模組的面數有什麼關係?

答:模組的面(side)數跟RANK數是兩個不同的概念。而且在內存的編號中也都沒有反映面數。但是,模組的面,不是一個,就是兩個;而目前的RANK數也是這樣。因此,用符號表示它們時,很容易混淆。但是,可以很明確地說:內存標籤中的「R」是表示RANK,不是表示面數,內存「面」的英文字是Side,如果表示兩個面的話面,應該是「2S」才是呀!
4.內存標籤上的2R×8就表明內存是雙面8個顆粒嗎?


答:不是的。「R」表示RANK,這在上面已經解釋過了。「×8」就是顆粒位寬是8bit的意思。因為1個RANK是64bit,兩個RANK就是128bit,因此,符號「2R×8」就表示這個模組有2個RANK,顆粒的位寬是8b。因此,這個模組用的顆粒是128b÷8b/顆=16顆,而不是8顆。同理,當內存條上的標籤標明是「1R×16」時,就表明這個模組是1個RANK;顆粒位寬是16bit。其顆粒數是64b÷16b/顆=4顆。絕不是16顆。
內存頻亂如麻,內存頻率為啥亂
為什麼我們會說頻率亂如麻?主要原因是人們在交談中常常把內存頻率、顆粒頻率、等效頻率等胡亂用。新接觸電腦的朋友們一聽到這麼多版本的頻率,頭怎會不疼呢?
首先搞清楚內存的三個頻率,核心頻率,工作頻率,等效頻率(也成接口頻率),平時常說的DDR2 800中的那個800就是該內存的等效頻率(接口頻率),也是最有意義的頻率,和內存總線的帶寬直接掛鈎,比如說DDR2 800的帶寬算法就是800mhz*64/8,也就是6.4GB/S。而工作頻率則是用等效頻率除以2,這對DDR,DDR2,DDR3都適用(對SD內存無效,不過SD內存早就淘汰了,這裡不作研究)且在CPU-Z中顯示的內存頻率也是工作頻率。
先為理解打基礎
1.內存頻率是什麼
我們平時掛在嘴邊的DDR2 800、DDR2 667後面的800和667就是內存頻率值。內存頻率通常以MHz(兆赫茲)為單位來計量,內存頻率在一定程度上決定了內存的實際性能,內存頻率越高,說明該內存在正常工作下的速度越快。比如DDR2 800就表示這根內存條的頻率為800MHz,在其他參數相同的情況下,它就比DDR2 667(頻率為667MHz)性能要好。
小貼士:只要內存延遲數值相差很小,比如5和6,那麼它們對內存的性能影響就很小。反之如果內存延遲數值相差過大,那對內存的性能影響我們就不能不考慮了。總體上來說,隨著內存頻率的提升,會使內存延遲數值上升。所以與DDR 400內存相比,儘管DDR2 533頻率高一些,但一些DDR內存具備了較低的延時參數,所以其性能與普通的DDR2 533性能相差不大。
2.內存頻率的由來
知道CPU主頻是如何標上去的嗎?同一批生產的CPU,在標上型號前,它們都是「一奶同母的N胞胎」,除了主頻不同之外,其他參數都相同。比如當同一批次的IntelCore 2 Duo E4000系列生產好以後,廠家就會對這些產品進行測試。如果這塊CPU的主頻能穩定達到某個頻率,而這個頻率正好是目前現有甲型號CPU的水平,那麼它的型號就是「甲」。如果達到另外一個頻率且正好是目前乙型號CPU的水平,廠家就命名為「乙」。以此類推,這樣這一批次的所有CPU都定了型號。
內存也是如此,當同一批的內存顆粒沒有打上標記之前,大家都是「N胞胎」,然後像三星、現代等內存顆粒生產廠就會對內存顆粒進行測試,如果這個顆粒能穩定跑到DDR2 800的水平,那麼它就會被命名為DDR2 800。DDR2 667和DDR2 533命名同樣如此。
小貼士:在內存顆粒廠商測試過程中,肯定會測試到能夠穩定運行在比DDR2 800更高的頻率上的內存顆粒。由於它的性能好,那麼內存顆粒廠商就會以高價格賣給像金士頓、宇瞻等內存模組廠商。模組廠商購買了這些顆粒之後,也會挑選一些質量好的電子元器件與之搭配,這樣一根超頻性能很好的內存就出現在了市場上,價格也比普通內存高很多。
超頻內存套裝價格不低
哪些頻率常亂用
介紹了內存頻率的由來,下面我們就開始學習幾種內存頻率的關係。目前,網上和平時常用錯的內存頻率有等效頻率、內存工作頻率、顆粒核心頻率三種。
● SDR和DDR1/2/3全系列頻率對照表:1.顆粒核心頻率
從核心頻率這四個字就知道了這是內存頻率的基礎,什麼等效頻率、工作頻率都是在它的基礎上得出來的。大家一定要記住下面這幾個核心頻率,DDR 266/DDR2 533/DDR3 1066核心頻率為133MHz,DDR 333/DDR2 667/DDR3 1333核心頻率為166MHz,DDR 400/DDR2 800/DDR3 1600核心頻率為200MHz。
小貼士:非常規記憶法
目前對於DDR、DDR2、DDR3適用。三代內存只要它們後面跟的數值是成倍數關係的,那麼它們的顆粒內部頻率就相等,並且它們顆粒內部頻率的數值等於DDR後面跟的數值的一半。比如DDR 400、DDR2 800、DDR3 1600,它們後面的數值400、800和1600就成了倍數關係,那它們顆粒內部頻率的數值為DDR 400中的400的一半,即200。
2.工作頻率
大家記住的核心頻率,馬上就會在學習內存工作頻率過程中派上用場。內存工作頻率是顆粒核心頻率的兩倍。比如DDR 400、DDR2 800、DDR3 1600的核心頻率為200MHz,那麼這三個內存顆粒的工作頻率就是400MHz(數值正好等於DDR 400中的400)。為什麼是兩倍?其實它和DDR內存的數據傳輸原理有關。
雙倍是指在一個時鐘周期內傳輸兩次數據,在時鐘的上升期和下降期各傳輸一次數據(通過差分時鐘技術實現),在存儲陣列頻率不變的情況下,數據傳輸率達到了SDR的兩倍,此時就需要I/O從存儲陣列中預取2bit數據,因此I/O的工作頻率是存儲陣列頻率的兩倍。
3.等效頻率
最後我們再談談等效頻率,其實它才是DDR2 800中800MHz的正規名稱。準確點說,它和內存的預讀取有關。
內存標貼上的頻率是等效頻率
理解預讀取並不難,同樣打個比方,看一個人跑得快或不快,要看兩個方面,一個是步伐的頻率,比如每秒鐘跑兩步;另一個是步伐的距離,比如每一步跑1米。第一個人(DDR)它每秒鐘跑兩步,每步是1米,所以它的速度是2米/秒;而第二個人(DDR2)它每秒鐘跑兩步(因為DDR2和DDR內存顆粒的工作頻率一致),每步是兩米,所以它的速度是4米/秒。第二個人的速度是第一個人的兩倍。
內存也是如此,DDR、DDR2、DDR3內存顆粒工作頻率一致,所以速度的快慢就取決於DDR的步伐(預讀取),DDR的預讀取為2bit,這就是數據傳輸的帶寬(每步距離)。而DDR2的預讀取是4bit(DDR3為8bit),說明DDR2的「每步距離」是DDR的兩倍,所以只要內存顆粒工作頻率一致,DDR2等效頻率是DDR等效頻率的2倍,DDR3就是DDR的4倍。
總結
講了這麼多,最後把幾種內存頻率的關係總結在下表中。大家可以通過表中內容得知,等效頻率就是我們平時說的頻率,比如DDR2 800等效頻率就是800MHz;雖然DDR 266、DDR2 533、DDR3 1066等效頻率不同,但由於DDR、DDR2、DDR3的預讀取不同,所以DDR 266、DDR2 533、DDR3 1066的顆粒頻率同為266MHz;內存顆粒核心頻率為內存顆粒工作頻率的一半。

沒有留言: