ECC

Stands for "Error Correction Code."

ECC is a method of verifying the integrity of data written to and read from system memory. Special RAM modules, called ECC RAM, use ECC to protect data from corruption and are often used in systems where reliability and uptime are critical. Workstations, servers, medical and scientific equipment, and aircraft control computers typically use ECC RAM.

Most computer memory errors are single-bit errors caused by an individual bit's value flipping from 0 to 1 (or vice versa) due to some sort of electromagnetic interference. These errors often result in system instability or corrupted data — for example, changing a single character of text or the color value of a pixel. ECC memory can locate single-bit errors and fix them, flipping the affected bit back to its original value.

When a system writes data to an ECC memory module, it does two things that help it track errors. First, it adds an extra bit of data to each word (or group of bits), called a parity bit, which keeps track of how many bits in a particular word have a value of 1. It also generates an error correction code using a built-in algorithm based on the positions of 0s and 1s in the word. If the number of 1s changes due to a single-bit error, the parity bit won't match. The ECC circuitry in the memory module refers back to the error correction code it generated to identify which bit flipped, then flips it back to its original state.

ECC memory modules are more complex due to the extra circuitry, which makes them more expensive than non-ECC memory. They require more memory chips than non-ECC memory modules in order to store the parity bits. ECC memory also performs slower than non-ECC memory, thanks to the extra steps required to generate error correction codes and check the parity bit. Because of the cost and performance hit, a typical desktop or laptop computer uses non-ECC RAM, leaving ECC RAM for high-uptime servers and workstations.

Updated July 17, 2023 by Brian P.

quizTest Your Knowledge

DMA data transfers bypass which component in a computer?

A
The CPU
0%
B
System RAM
0%
C
The GPU
0%
D
Storage disks
0%
Correct! Incorrect!     View the DMA definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of ECC on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.