Monday, July 10, 2023

The Weight of Data

Many have claimed that SSDs become ever so slightly heavier as they're written due to the fact that programming a cell adds electrons to a floating gate or charge trap, and electrons do have mass, however small. Let's do some arithmetic to see what all that data weighs on a modern SSD. If we're being pedantic, this is actually the mass stored by Flash and not the weight of the entire SSD (the drive does not become net negatively charged). We'll assume a TLC-based "datacenter" class SSD.

We know an electron weighs ~9.1 x 10^-28 grams. We just need to estimate how many electrons are contained in a full SSD. Let's do this per TB of user capacity. Due to overprovisioning, a TB will consume a larger amount of physical capacity internally. In addition, there is some spare area in each NAND page that is used for storing ECC information (such that the host data in the page can remain a power-of-two quantity). In a typical datacenter TLC drive, 1TB of user capacity can take 1.16TiB of media capacity when accounting for both over-provisioning and spare area. 

Because data must be scrambled by the SSD controller before being written to NAND, we should expect that a fully written SSD has about the same quantity of "0" and "1" data internally. Since we are considering a TLC-based drive, we can restate this as saying that all programming states are distributed equally across all cells. If the maximum program state requires 300 electrons, then we can estimate that the average cell contains 150 electrons. 

Since each cell accounts for 3 bits, we can take the 1.16TiB of media capacity needed for 1TB of user capacity and divide it by 3 to get a cell count: (1.16TiB*8)/3 = 3,401,155,968,587 cells. So finally we get 3,401,155,968,587 cells * 150 electrons * 9.1093837 x 10^-28 grams = 4.65 x 10^-13 grams in one TB of user data stored on a TLC SSD. Per Wikipedia, this is nearly the weight of an E. Coli bacteria. If we consider an exabyte of deployed Flash, we arrive at the weight of a human egg cell (and a much more pleasant reference).