This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

nRF51 flash error scenarios

Hello,

i plan implementing an block storage for nRF51. I want to integrate an checksum or error correction mechanism.

I have understood i can write an bit 20000 times. Is it useful on overwriting bytes mask all previously written 0 bits to 1 to get more write cycles?

When an flash cell is fault vat value is stored? Is this cell permanently 0 or 1 or there are both values possible?

I have read that neighbor cells can switch value on writes. Is this true for nRF51?

Regards,

Frank

Parents
  • Hi

    Yes, each bit in flash has specified duration of 20,000 erase cycles. It might last longer but it is not guaranteed.

    Erasing a flash bit is actually to set it to 1. Writing to flash bit is actually either setting it 0 or not setting it. So you can not set a bit with a flash write operation, the only way to do that is with an erase operation.

    I think it is not specified what value a faulty bit will have.

    To verify the integrity of the flash content, you could read the flash content after you have written to it, and compare if you get the same data in return.

    Update 27.1.2014 According to nRF51822 PS v3.1 table 19, flash endurance is 20,000 erase cycles. Writing to flash should not stress it.

  • Erasing is always the reason flash cells break down. The reason erases take so long and always have to be pages at a time is because it takes a large voltage to break down the transistor barriers.(set them to 1)

Reply Children
No Data
Related