Compact flash endurance check

Hello, I am using Sandisk Extreme-IV 4 GB CF card on my embedded system. The card is heavily written/erased, and so i am worried about it's health.

Any way to make some sort of diagnostics to detect if the card is about to fail. Something like:

- read/write/verify sectors

- determine state of wear leveling

- maybe more...?

I've read some CF spec and they say it is possible to get the number of times a CF sector has been written to. The spec says:

The IDE "Translate sector" command (87h) apparently allows the host a method of determining the exact number of times a user sector as been erased and programmed.

Is this command supported by sandisk extreme-IV CF ? I asked this on Sandisk forum and did not get any satisfactory reply.

Please help!

Rgds, Vinod

Reply to
vinuxes
Loading thread data ...

I've experienced a lot of problems with the reliability of the CF cards.

IMO the biggest problem is not because of the wear, but because of the infant mortality of the unreliable cells. We ended up with the extensive read/write testing of every card and marking all suspicious clusters as bad. The number of the unreliable sectors may be huge: up to 2% of the total volume on some brands. After the bads are marked, the card doesn't cause any problems. Another observation: the bigger is the volume of the card, the less reliable it is.

From my experience, the CF cards generally support for the very limited subset of IDE instructions. You can rely only on the basic operations like read/write sectors; anything above that may or may not be supported.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

formatting link

Reply to
Vladimir Vassilevsky

Vladimir, Thank you for the reply.

I am curious about how do you find out suspicious sectors ?

Rgds, Vinod

Reply to
vinuxes

A cluster which exhibits occasional read/write errors or can't be written or read from the very first attempt is suspicious.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

formatting link

Reply to
Vladimir Vassilevsky

e
t
e

Careful - These devices do internal remapping for wear-leveling. The the sector you write is continually remapped to different physical flash. Depending on the mechanism used by your specific make and model of CF, doing a test as above is not so helpful (other than to flush CF cards that are going to fail very quickly).

See for example:

formatting link
"Removable flash memory cards and USB flash drives have built-in controllers to perform wear-levelling and error correction so use of a specific flash file system does not add any benefit." /
formatting link
WPaperWearLevelv1.0.pdf

Hope that's helpful ! Best Regards, Dave

Reply to
drn

I am tired of hearing the unfounded speculations about remapping for wear leveling. Can you provide any *specific* information of if and how the remapping is implemented on the particular CF card?

If a cluster exibits occasional errors or the read/write operation has to be retried, it is likely that this cluster is going to fail. This is just the observation based on my experience with many different cards.

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Talks, stories and speculations.

BTW, in the newer designs, we use the bare NAND flash ICs rather then the cards. The reliability is much better.

Vladimir Vassilevsky DSP and Mixed Signal Design Consultant

formatting link

Reply to
Vladimir Vassilevsky

Vladimir, I provided a link to Sandisk's implementation details above... Hope this helps, Best Regards, Dave

Reply to
drn

They seem to be a lot harder to source in large sizes and small quantities though.

Reply to
cs_posting

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.