Is IAP Erase Sensibly Optimised?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Is IAP Erase Sensibly Optimised?

Jump to solution
731 Views
mikesimmonds
Contributor III

I am specifically concerned with the LPC1313 but I expect that this will (should?) apply to all LPC devices.

Does the IAP implementation for flash erase (either individual sectors or all sectors) check for each sector

being blank and then skipping the erase for that sector. To reduce erase cycles and thereby improve longevity?

On a similar note, does flash programming check for identical updates and also skip the operation(s).

Regards, Mike.

Labels (2)
0 Kudos
1 Solution
493 Views
thefallguy
Contributor IV

From what I have been able to determine, it is NOT smart. That is, it is up to you to determine if a page is identical and not reprogram. It is only a memcmp(), so not a big deal...

View solution in original post

0 Kudos
3 Replies
493 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Mike,

I think the IAP erase command is identical for all LPC MCU, however I hasn't found the information of the mechanism of the erase command, maybe only by NDA or it's not shared by the customers.
Have a great day,
Ping

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
493 Views
mikesimmonds
Contributor III

I am not asking for trade secret technical details about the erase or programming algorithms, just whether or not

the IAP code is sensible enough to detect, say, an erase of an already blank sector and if so, skip the erase operation.

Surely, that information should not be subject to NDA.

Cheers, Mike.

0 Kudos
494 Views
thefallguy
Contributor IV

From what I have been able to determine, it is NOT smart. That is, it is up to you to determine if a page is identical and not reprogram. It is only a memcmp(), so not a big deal...

0 Kudos