ECC memory is the ultimate memory choice for reliability. ECC can help prevent downtime and data loss, making it the perfect choice for any mission critical computer. But what is ECC Memory exactly, what benefits does it offer, and what is ECC Memory used for?
What is ECC RAM?
ECC RAM (random access memory) and ECC Memory are often used interchangeably, with ECC standing for “Error Correcting Code”. On a high level, ECC refers to a component’s ability to detect mistakes that may occur in data memory without the need to consume separate computing resources. So why would you need this type of memory? Let’s start with the basics of how flash memory functions.
How does flash memory work?
Inside a flash chip are cells. Each cell has one of two states; 0 or 1. The memory controller combines and collects the state of each cell into a binary sequence. It then translates that code into data on your computer.
For example, you can express the number 135 in binary as 010000111. Without going into too much detail on binary, keep in mind that each number in a binary string represents a completely different value and binary strings can carry on for dozens of places.
Going back to our flash cells, in order for flash cells to carry a particular state, they need electricity. A certain amount of power is applied depending on whether your system wants to write a 0 or 1 to the memory. In volatile flash applications like computer RAM, the cells need power at all times to maintain their state (this is why your RAM clears when you turn off your computer). Sometimes, outside static electricity or interference can cause a cell to mistakenly flip in the wrong direction (from 1 to 0 or vise versa). As you might imagine, this can result in a range of negative consequences.
A simple memory flip example
As an example, the number 135 is expressed as the binary string 010000111. If one of those cells mistakenly flips, look at how dramatically the data changes:
This single bit error is just one very simple example. Depending on what your computer is doing with this data, memory flips can be as harmless as a small hiccup in performance. On the other hand, they can be catastrophic such as system crashes or causing the wrong action to be carried out by a system it’s controlling.
The average stick of 8 GB memory sees about 5 of these errors per hour of use, and for the average casual computer user, the impact is undetectable. However, in the case of mission critical servers or computers, these errors could quickly compound to cause expensive problems. In addition, it can also cause data corruption and functional integrity deterioration. It’s for these mission critical applications where ECC memory shines.
How does ECC memory work?
These special (and generally more expensive) memory chips have a built-in controller that includes a parity code known as a Hamming Code. If one of the bits goes bad, it can correct it and report the correct data back to the host computer. This works by employing an algorithm that writes data in a way that allows the formula to match pieces of data.
Hamming Codes can successfully check for data consistency with a minimal amount of redundant data, which helps in computer RAM. However, this method isn’t effective in situations where error rates are very high.
Benefits and drawbacks of ECC RAM
ECC seems like a no-brainer to have in your computer. Anytime you have an always-on, mission critical computer at risk for encountering memory errors, ECC can help prevent downtime and data loss. The initial investment in ECC memory could result in thousands of dollars saved if it means your production line stays operational as opposed to suffering a data loss-related downtime event.
However, one complication is that ECC memory requires a motherboard, chipset and processor that support it. This, along with the higher cost of ECC memory, may detract casual consumers. Additionally, there is a 2-3% decrease in performance compared to non-ECC memory. This decrease is due to the resource use of the data processing algorithm.
ECC memory is the best choice for rugged systems
Our Karbon 800 Series was designed for ultimate power and extreme durability and reliability even in difficult environments. For ultimate reliability, we recommend configuring your system with ECC memory. The K800 Series offers this as an option with up to 64 GB DDR4 3200 ECC memory pre-installed. Many of our systems support ECC memory and offer this as an option. It is a highly requested feature for anyone concerned about data integrity and that wants the best solution for reliability.
ECC is one of the many ways our new solutions can help prevent downtime and reduce hardware maintenance costs. Is ECC memory a good fit for your project? Talk to one of our sales engineers to learn more.
Note: This blog was originally published on August 26th, 2015 and updated for content on June 20, 2022.
Get the Latest Tech Updates
Subscribe to our newsletters to get updates from OnLogic delivered straight to your inbox. News and insights from our team of experts are just a click away. Hit the button to head to our subscription page.