引用:
Originally posted by latw
以上......是錯誤的  
ECC歸ECC,那是同位檢查,一般unbeffer的RAM也有含ECC的,只是不多見.
而Regs.的RAM,好像都會有ECC(至少我還沒看過不含ECC的)
Reg.的記憶體定址靠上面的Register,所以可以比unbeffer容納更多的RAM
至於詳細的說明可以查google(好吧,那個電路圖,我看不懂 )
因為Server等級的電腦需要大量的記憶體,又需要對穩定性的要求,所以都會採用
ECC Regs. RAM.因此市面上看到這種型的RAM通常都蠻大的,單隻256MB到2G都有.
價格大約是unbeffer兩倍左右,很傷錢包的 
|
parity check是 一種最簡單的ec/ecc的方式,但是parity check不等於ec/ecc
比較常用的1 bit檢查,就是用9 bit x N來代表N byte的資料
但是根據演算法。N值本身可能是有限制的某些值
要用哪種算法,看記憶體控制器怎麼設計,模組本身只要多提供的定址線就好
在168pin/184pin...各種規範的dimm中都有定義出來了多的1bit位置設計
以前也有2bit ec/ecc的設計,都是用在高階的server,現在已經很少看見了
server為什麼要ec/ecc的機制,因為記憶體是一種一定會出錯的東西
只是看機會多少,來到地球的宇宙射線,隨時都有百萬分之一的機會
造成記憶體某個row-column位置的data跑掉。機率雖然低,但是他永遠會發生
所以ec/ecc是必然的機制,他至少可以避免到這個必定會發生的錯誤
當初設計ec/ecc時,記憶體本身品質造成錯誤,反而不是最初考量的目的
registered其實跟ec/ecc是兩件事,registered就是sdram的buffer
以前edo ram的時候我們也就稱為buffer,她們功用上是類似的
都是一種buffered read/write的i/o,目的是保持資料讀寫控制timing的同步性
因為記憶體越來越快,顆粒越來越多,要保持所有顆粒跟導線有同時一致的控制
是蠻不好作的,尤其速度越快,顆粒越多,這個問題就會越麻煩
所以我們用一個鎖相電路跟一個buffer/registered,來解決這問題