jmpe
Joined 13 years ago
Joined 13 years ago
In Smartmontools I found the code for this variable:
http://smartmontools.sourceforge.net/doxygen/atacmds_8cpp_so...
It's code 179 (0xB3).
From Samsung's website:
http://www.samsung.com/global/business/semiconductor/minisit...
ID # 179 Used Reserved Block Count (total)
This attribute represents the number of reserved blocks that have been used as a result of a read, program or erase failure. This value is related to attribute 5 (Reallocated Sector Count) and will vary based on SSD density.
.. so at least for samsung there's use of exact numbers.From Intel's website:
http://download.intel.com/newsroom/kits/ssd/pdfs/intel_ssd_5...
(Ctrl-F for "Available Reserved Space")
.. they use a normalized value (100).
So it can be either percentage or absolute value, depending on manufacturer.
I'm not too sure about that. The only ref I can give is that they use the suffix "Cnt_Tot" which means "total count". When it's a percentage they denote it as such as in "Perc_Rated_Life_Used" and "Workld_Host_Reads_Perc". Don't be surprised by the low count (100).
I have quite some experience with Flash in the form of eMMC and SD/CF. SSDs aren't that much different from those on the low level.
The controller that comes with the flash storage contains a core that manages the bad blocks. Comparable to bad sector management on HD. The software these controllers run contain a lot of rules of thumb to manage bad blocks, which is where these full failures come from IMO.
Each controller has access to a pool of reserve blocks that are used when bad blocks are detected. Once those run out the embedded software starts showing weird behavior when using the device and shortly after there's a complete fail.
I think the pool of reserve blocks is "Used_Rsvd_Blk_Cnt_Tot" in your list. Apparently there are 100, of which you consumed 0. There's a threshold at 10 so I assume that's where the diagnostics software will warn you.
I'm trying to figure out what happens when you port this to ARM NEON, and how you catch it with architectures that don't support NEON (they often lack them in Marvell and Allwinner).
https://www.youtube.com/watch?v=bKGhvKyjgLY
Seriously, watch it. Memristor-tech relies on this kind of miniaturization and can provide a speed boost in several areas in current architectures.
Secondly, having worked for semi: there's a lot of conservative force holding back development. We could have had current tech with much less worries than we have now if they didn't respond so allergically to everything that looks a little exotic in the CMOS process, like high-k dielectrics.