ECC和RECC
文章目錄
- 1、ECC
- 1.1、ECC的概念
- 1.2、ECC技術原理
- 1.3、ECC的特點
- 1.4、ECC內存誤區
- 2、ECC和RECC的區別
- 2.1、ECC和RECC內存條之間的區別
- 3、服務器內存ecc和recc之間能否兼容
1、ECC
1.1、ECC的概念
ECC是 “Error Checking and Correcting" 的簡寫,ECC是運用到內存條上的一種能夠實現“錯誤檢查和糾正”的技術,即實現錯誤檢查和校正技術的存儲器條帶,一般多應用在服務器及圖形工作站上
ECC存儲器并不是因為它速度快,是因為它具備特殊的糾錯能力來保持服務器的穩定,拒絕宕機
1.2、ECC技術原理
- 要了解ECC技術,就不能不提到Parity(奇偶校驗)
- 在ECC技術出現之前,內存中應用最多的是另外一種技術,就是Parity(奇偶校驗)
- 在數字電路中,最小的數據單位就是叫“比特(bit)”,也叫數據“位”
- “比特”也是內存中的最小單位,它是通過“1”和“0”來表示數據高、低電平信號的
- 在數字電路中8個連續的比特是一個字節(byte),不帶“奇偶校驗”的內存中的每個字節只有8位
- 若它的某一位存儲出了錯誤,就會使其中存儲的相應數據發生改變而導致應用程序發生錯誤
- 而帶有“奇偶校驗”的內存在每一字節(8位)外又額外增加了一位用來進行錯誤檢測
比如一個字節中存儲了某一數值(1、0、1、0、1、0、1、1),把這每一位相加起來(1+0+1+0+1+0+1+1=5)。若其結果是奇數,對于偶校驗,校驗位就定義為1,反之則為0;對于奇校驗,則相反。當CPU返回讀取存儲的數據時,它會再次相加前8位中存儲的數據,計算結果是否與校驗位相一致。當CPU發現二者不同時就會試圖糾正這些錯誤,
但Parity有個缺點,當內存查到某個數據位有錯誤時,卻并不一定能確定在哪一個位,也就不一定能修正錯誤,所以帶有奇偶校驗的內存的主要功能僅僅是“發現錯誤”,并不能糾正部分簡單的錯誤
通過上面的分析我們知道 Parity內存是通過在原來數據位的基礎上增加一個數據位來檢查當前8位數據的正確性
- 但隨著數據位的增加Parity用來檢驗的數據位也成倍增加
- 就是說當數據位為16位時它需要增加2位用于檢查,當數據位為32位時則需增加4位,依此類推
- 特別是當數據量非常大時,數據出錯的幾率也就越大
- 對于只能糾正簡單錯誤的奇偶檢驗的方法就顯得力不從心了
正是基于這樣一種情況,一種新的內存技術應允而生了,這就是ECC(錯誤檢查和糾正)
這種技術也是在原來的數據位上外加校驗位來實現的
不同的是兩者增加的方法不一樣,這也就導致了兩者的主要功能不太一樣。
- 它與Parity不同的是如果數據位是8位,則需要增加5位來進行ECC錯誤檢查和糾正,數據位每增加一倍,ECC只增加一位檢驗位
- 也就是說當數據位為16位時ECC位為6位,32位時ECC位為7位,數據位為64位時ECC位為8位,依此類推,數據位每增加一倍,ECC位只增加一位
1.3、ECC的特點
- 在內存中ECC能夠容許錯誤
- 并可以將錯誤更正,使系統得以持續正常的操作,不致因錯誤而中斷
- 且ECC具有自動更正的能力,可以將Parity無法檢查出來的錯誤位查出并將錯誤修正
一些廠商推出的入門級低端服務器使用的多是普通PC用的SDRAM,不帶ECC功能,在選購時應該注意這個指標。
1.4、ECC內存誤區
一談到服務器內存,大家都一致強調要買ECC內存,認為ECC內存速度快,其實是一種 錯誤地認識
- ECC內存成功之處并不是因為它速度快(速度方面根本不關它事只與內存類型有關),而是因為它有特殊的糾錯能力,使服務器保持穩定
- ECC本身并不是一種內存型號,也不是一種內存專用技術,它是一種廣泛應用于各種領域的計算機指令中,是一種指令糾錯技術。它的英文全稱是“Error Checking and Correcting”,對應的中文名稱就叫做“錯誤檢查和糾正”,從這個名稱我們就可以看出它的主要功能就是“發現并糾正錯誤”
- 它比奇偶校正技術更先進的方面主要在于它不僅能發現錯誤,而且能糾正這些錯誤,這些錯誤糾正之后計算機才能正確執行下面的任務,確保服務器的正常運行
- 之所以說它并不是一種內存型號,那是因為并不是一種影響內存結構和存儲速度的技術,它可以應用到不同的內存類型之中
- 就像我們在前面講到的“奇偶校正”內存,它也不是一種內存
- 最開始應用這種技術的是EDO內存,SD也有應用
- 而ECC內存主要是從SD內存開始得到廣泛應用,而新的DDR、RDRAM也有相應的應用,主流的ECC內存其實是一種SD內存
2、ECC和RECC的區別
- 1、要求不一樣
REG ECC,必須用服務器主板才能支持;ECC,普通主板可以用,但是ECC糾錯功能不起作用。
- 2、硬件不一樣
REG ECC 帶有一個寄存器。ECC,則沒有寄存器。
- 3、價格不一樣
ECC內存比普通內存貴10%-20%,REG ECC內存比普通內存貴一倍左右。
- 4、讀取方式不一樣
ECC和 是控制器直接讀內存顆粒,REG ECC 是控制器讀寄存器,寄存器讀顆粒。
- 5、延遲不一樣
REG ECC 因為比 ECC 多了一道程序,所以稍有延遲。
擴展資料:
REG RECC 縮寫是 RECC。REG 是英語 Register 的縮寫,意思為寄存器的意思
其功能是通過它來集成更多的內存顆粒達到擴大內存容量的目的
ECC 是英文 Error Checking &Correcting 的縮寫,翻譯為錯誤檢查和糾正
可以理解為內存條的數據糾錯功能,這也是為什么服務器可以連續運行幾個月甚至幾年不死機的原因
2.1、ECC和RECC內存條之間的區別
- 從功能上,ECC有特殊的糾錯能力,使服務器保持穩定。ECC是一種校驗(奇偶效驗)
- RECC的R表示register,寄存器。也就是說,RECC就是在ECC的基礎上加了個寄存器,大大提高服務器內存工作效率
3、服務器內存ecc和recc之間能否兼容
- 兩者通常不兼容的,需要看主板支持
- rdimm可以用recc和普通內存
- udimm只能ecc
- 當然也有同時有rdimm和udimm的,那就可以混合了
【來源參考-內存ECC-百度百科】
【來源參考-ECC和RECC的區別】
【來源參考-內存ECC-裝機之家】
總結
- 上一篇: ARP协议SMTP协议MIME
- 下一篇: SEO -- 搜索引擎优化