Rockbox General > Rockbox General Discussion

Flash wear

(1/2) > >>

pebble:
(yes, I'm yet another one concerned :) )

Some forum search results on "flash wear":

* Llorean: flash typically has wear-leveling .. trying to make sure the writes are distributed generally evenly

* saratoga: AFAIK wear leveling has been a standard feature in most flash modules for a while now, so explicit software support for it is unnecessary

* bluebrother: (wear-levelling is..) .. a hardware controlled thing as the software doesn't know anything about the internal organization of the flash memory.

What makes you guys think controllers inside (cheap) flash chips level the memory wear? Did you see datasheets for some chips that state this? CF and SSDs aside, take cheap chips normally soldered on the boards. (I bought a second-hand Clip Zip, so.. let's all consider my case :) )

Some general observations (I'm newb):

* The sooner a consumer "consumes" the flash, the sooner he'll buy a new, updated Clip (they are inexpensive anyway) - profit :)

* Samsung's 128MB k9k1g08u0a (used in my old broken iBead), does not do any wear leveling. Instead it teaches you how to implement reliable, long-lasting flash use in the firmware. There are no datasheets for SanDisk's Clip-v2 chips, but they are packaged same as old Samsung chips, so probably..

* SanDisk forum (that is linked from RB site) shows lots of posts with complaints on the flash.

* It would be stupid for SanDisk to put great SSD-like tech into chips, and not to market it (like they do for iNAND *chips*).

Your fellow devs:

* Telechips assumes you'll do wear leveling yourself in firmware.

* OF in Samsung YP-S3 actually does it in firmware

Something optimistic at the end:
saratoga: Rockbox already takes great efforts to avoid using the disk since it uses so much battery power.

And yes, I hearby demand that all RB's devs wake up and quickly implemented YAFFS for my peace of mind! :) Seriously speaking, I'm really a bit worried, and I would appreciate knowledgeable replies. And thanks guys for your efforts on RB! It was a nice discovery a couple of weeks ago.

saratoga:
You could implement a wear leveling file system on devices that use a software flash translation layer if you wanted, but not on Sandisk players which use hardware for that. Your zip basically uses an internal as card as it's storage. The wear leveling you get is whatever Sandisk uses on its SD cards most likely.

pebble:
Interesting.. I was surprised of the price of this wear-level tech in SD cards.. I just visited digikey.com: Product Index > Memory Cards, Modules > Memory Cards. Selected all sd in "memory type" column, 16G (to be recent), Apacer (both 16G SanDisks are non-stock), sorted by price. Got this page. See cheapos, $6-11, then 5 non-stocks, then for $206 !! Datasheets are there, for cheapos - no mention of wear/level/endurance, and for the $200 industrial ones - sure there is. There are cheaper, $40 wear-leveling 16G cards, they boast and elaborate these features (to me looks like SSD in SD-package). There are $20 cards but they just mention, and don't elaborate. They seem to charge *a lot* for reliability.

saratoga:
All SD cards have wear leveling, I think it would be quite hard to make a card without it.

High quality nand is more expensive because it's more extensively tested. Many cheap devices use very low quality nand and depend on the controller to compensate.

[Saint]:
Yeah, this pops up an a concern from users probably a couple of times a year.

In part I understand why end users might read any given piece of buzzword riddled text and come to a conclusion that the world is crashing down around them and that all their NAND/flash based media is just a few writes away from critical failure, but realistically this is not a practical concern at all.

There's a veritable laundry list of hardware on the device that will fail long before wear leveling, be it poorly implemented, or lacking entirely (which is ridiculously unlikely and has been so for the last decade at least), provided an opportunity to present any issues.

The obvious points of failure to actually worry about long before flash wear should become a realistic concern are the 3.5mm jack, and the terrible little dome cap buttons they use. The former is a mild inconvenience if the user is sufficiently handy with a soldering iron and has access to an local electrical component retailer. The latter will basically render the device useless and isn't really practical for an end user to replace unless you happen to have a hot air reflow station - which is far beyond the resources I would expect Joe Everyday to have at their disposal.

Ultimately, one supposes that it also boils down to a cost+effort/gain equation. Even if the flash did fail at some stage, and the laws of the universe that we live in tell us that it eventually will do so, it isn't worth the time or effort spent in worrying about it.


Edit: I wanted to add that the increased pricing and the large swing between minimal and maximal pricing on similar capacity cards isn't really for reliability. The significantly more expensive cards almost always have a focus towards read, write, and random access speed, which depending on the use case can be anything from critically important to absolutely and completely irrelevant (as the case would be for Rockbox).

For example, for high resolution, high speed, RAW digital photography the focus of the media needs to be on very large contiguous writes. For embedded systems with realtime or near realtime processing requirements, the focus should be on random IO.

For Rockbox specifically, basically none of that matters at all. Even the slowest sdcard you could possibly find is plenty fast enough to do realtime playback of lossless content, which an overwhelming majority of users won't be using anyway. Joe Everday is almost certainly using variable bitrate LAME or Vorbis, or equivalent lossless codec.


[Saint]

Navigation

[0] Message Index

[#] Next page

Go to full version