-----Original Message----- From: Dianne Skoll <dianne [ at ] skoll [ dot ] ca> >I wonder about flash memory. As flash memory cells shrink, could a cosmic ray flip the charge on the floating gate? And if so, does flash have the equivalent of ECC? Oh, it gets worse than that. The charge in a cell can leak if it is not refreshed. And with various flash memories accessing the bit or surrounding bits can change the charge in the cell or on the gate which can effect the state of the bit. An SLC memory cell contains basically 2 voltage levels representing 0/1 for a single bit. MLC memory cells have 4 voltage levels representing 2 bits. TLC cells have 8 voltage levels representing 3 bits. You get more bits per cell but they become far more sensitive to charge changes. If you don't have some form of ECC, your data will become corrupted. Data is kept in blocks and the controllers for flash memories should keep track of the number of correctable errors in a block. If the error count gets too high, it should copy/correct the data into a spare block and map the spare block into the affected location. The old block can be erased (electrically different than just writing the data). The erasure can be enough to revive the block and it is put on the spare list. Some of the charge build up cannot be fixed by erasure. If this is the case, then the block is completely retired. Gary To unsubscribe send a blank message to linux+unsubscribe [ at ] linux-ottawa [ dot ] org To get help send a blank message to linux+help [ at ] linux-ottawa [ dot ] org To visit the archives: https://lists.linux-ottawa.org