最後更新:2026年10月22日記憶體記憶體半導體中國大陸:纠错码(ECC)

ECC是什麼(錯誤更正碼)

Error Correction Code (ECC)

ECC(錯誤更正碼)是在資料中加入檢查用位元一併記錄,讀出時找出反轉的位元並恢復正確值的機制。伺服器用 DRAM 採用在64位元加上8位元的方式,DDR5 在晶片內部也有 ECC。在容易出錯的多值 NAND 中,以 LDPC 等強力編碼支撐 SSD 的壽命。

目錄7 項
  1. 定義與原理
  2. 圖解
  3. 常見問題
  4. 相關企業
  5. 相關用語
  6. 比較文章
  7. 資料來源

定義與原理

ECC(Error Correction Code,錯誤更正碼)是在資料中加入多餘的檢查用位元一併記錄,讀出時即使部分位元反轉,也能找出錯在哪裡並恢復正確值的機制。在記憶體中,用來保護資料免受宇宙射線等引起的軟錯誤、記憶胞劣化與 Row Hammer 造成的位元反轉。

伺服器用 DRAM 模組長期採用在64位元資料加上8位元檢查位元,可更正1位元錯誤、偵測2位元錯誤的方式(SECDED)。DDR5 另外在 DRAM 晶片內部也內建 ECC(On-die ECC),自動修正晶片內發生的1位元錯誤。不過 On-die ECC 是用來補強晶片內部可靠度,無法取代伺服器用的模組級 ECC。

在 NAND 快閃記憶體中,多值化(TLC・QLC)使1個記憶胞要區分的電壓階段變細,更容易出錯。因此控制器使用 BCH 碼,或更強的 LDPC(低密度奇偶檢查)碼,每頁更正數十位元以上的錯誤。可更正的錯誤數左右寫入次數上限與資料保存期間,是 SSD 壽命設計的核心。

圖解

比較 SECDED、DDR5 On-die ECC、BCH 碼、LDPC 碼等4種 ECC

點擊圖片放大 2 倍

可更正的位元數依編碼設計與頁大小而變。

ECC(錯誤更正碼)的常見問題

有了 DDR5 的 On-die ECC,就不需要 ECC 記憶體了嗎?
還是需要。On-die ECC 用來修正 DRAM 晶片內部發生的錯誤,不處理晶片與 CPU 之間傳輸發生的錯誤,也不處理整顆晶片的故障。伺服器等需要高可靠度的用途,仍持續使用模組級 ECC(附 ECC 的 RDIMM 等)。
NAND 快閃記憶體為什麼需要強力的 ECC?
NAND 在1個記憶胞中以電壓階段記錄多個位元,寫入與時間經過會使電壓偏移。TLC 與 QLC 的階段間隔窄,偏移容易變成錯誤,因此使用 LDPC 這類能更正大量錯誤的編碼,確保壽命與可靠度。

相關企業

比較文章

所屬主題

資料來源

  1. 鎧俠(Kioxia):技術用語集(2026年10月19日確認)
  2. JEDEC:ECC(2026年10月19日確認)