ECC

ECCとは、メモリーに誤った値が記録されていることを検出し、正しい値に訂正する機能です。
この機能に対応するメモリーモジュールには、通常のNON-ECCメモリーとは違い、ECC用のDRAMが追加されているのが特徴です。

CD16G-D4U2133Unbufferedタイプのメモリー

CD16G-D4UE2133ECCタイプのメモリー

仕組みとしては、通常の64bitのデータとは別に、8bitのECCコードを用意します。
次に、メモリーから64bitのデータを読み取った際に、そのデータから8bitのECCコードを生成します。

memory_ecc

予め用意した8bitのECCコードと生成したECCコードを比較し、一致しているなら正常に読み込み、不一致であれば訂正します。
ただし、1bitエラーであれば訂正して稼働させ続けることができますが、2bitエラーの場合は検出のみで、訂正することはできません。

1bitのエラーを訂正する物なので、通常のパソコンでは無くても問題はありませんが、
サーバーのような稼働に信頼性が求められる機器や、間違いの許されない演算用のワークステーションでは必須の機能と言えるでしょう。

次回はレイテンシーについて解説予定です。