NAND Flash leakage - why you could lose data
When you save a file onto a memory card, USB or SSD there is an expectation of it still being there 10 years down the line, after all, you haven’t deleted anything from it or used the device so it should work just fine. Right? Well….actually….. this isn't strictly true.
Flash devices need power to survive
Without getting overly technical NAND Flash Memory devices need power to operate. Every time the device is plugged into a device it starts drawing power to function and for you to access the data on the device.
When the SD card for example is unplugged from a camera it stops drawing power. However, it does retain a tiny amount of charge for the data to continue and remain ‘safe at rest’. We are talking tiny, tiny amounts of power and all this is linked to the structure of how NAND Flash memory is constructed.
Here comes the techie bit.
There are two main types of ways NAND Flash memory is made using either Floating Gate or Charge Trap and these have an effect on how the NAND Flash works and performs.
Floating gate vs. Charge trap
A floating gate and a charge trap are types of semiconductor technology capable of holding an electrical charge in a flash memory device, but the chemical composition of their storage layers differs, and they add and remove electrons in different ways.
NAND Flash devices that use floating gate transistors in the memory cells store electrons in an isolated polycrystalline silicon conductive layer. The charge of the floating gate changes when electrons are programmed into it to create a threshold voltage shift in the transistor.
NAND Flash devices that use charge trap technology typically store electrons in a nonconductive silicon nitride insulation layer. Forcing electrons into the nitride layer also generates a threshold voltage shift, and the electrons are held captive in the non-conductive material.
What are the pros and cons?
Flash devices that use charge trap technology tend to be less complicated to manufacture than those that use floating gate transistors. Charge trap devices generally require less power to program and fewer process steps, and they are less prone to wear out because the programming operation puts less stress on the oxide layer. However, manufacturers have faced challenges in the mass production of NAND Flash memory devices that use charge trap technology. The method used to remove electrons from a charge trap can be tricky, and data retention may be an issue in charge trap-based flash devices. Floating gate is the preferred method of manufacturers as it is simpler and easier to do. So, this type of technology may use more power but it's minimal in comparison to charge trap technology.
Taking a look at memory cards, in particular, one thing regular consumer SD/microSD cards are not good for is long-term storage (more than a year and never more than 5 years). This is because the charge in the cells will leak away over time. There are special write-once SD cards, usually found on industrial-grade memory cards which are designed for archival purposes where each cell is permanently fused to either On or Off. If a consumer-grade card is ‘at rest’ and has not been used for a number of years, the card will eventually become corrupt and unreadable.
A common thing we hear is that we are only reading data and not writing to the card, but this poses another problem known as Read Disturb (sometimes called Bit flipping), where the charge leaks away from one cell when constantly reading an adjacent one even though you’re not writing to the card, this causes cards to corrupt which then need to be replaced. Using industrial-grade storage minimises this risk drastically compared to consumer-grade cards.
Dynamic Data Refresh
Dynamic Data Refresh runs automatically in the background of the storage device to reduce the risk of read disturbance and sustain data integrity in seldom-accessed areas by sequentially scanning the user area flag record without affecting the read/write operation. The data that has been completely moved to another block will be read and compared with the source data to ensure data integrity. Lower-grade consumer devices tend not to have this functionality, but for industrial-grade devices, it’s a standard feature. Having Dynamic Data Refresh will ensure data at rest remains.