Can I program a partially written longword?

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

Can I program a partially written longword?

589 Views
waynetaylor
Contributor II

In "K60P144M100SF2RMV2" it says in section 29.4.12.5: "CAUTION" reprogramming of existing 0s to 0 is not allowed as this over-stresses the device. What I want is a way to mark a message that we are storing in D-flash as sent. Our though was to over-write the header byte (0x85) with 0x00. It seems to work and we have been doing it for a couple years now.

What is the harm? Premature D-Flash failure?

Labels (1)
Tags (2)
2 Replies

433 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Wayne,

As RM says "Cumulative programming of bits (back-toback program operations without an intervening erase) within a flash memory location is not allowed." so you have to do a erase operation before program the address contains 0x85 in your application. otherwise the life time of the flash can not be guaranteed as data sheet states. and you might find some bits can not be programmed after some time. so Mark's solution is correct, and you may also use EEPROM to store the message, because there is an internal state machine helps to maintain the data and the internal flash as well.


Have a great day,
Kan

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

0 Kudos

433 Views
mjbcswitzerland
Specialist V

Wayne

Although it may work, I would avoid anything that is specified as illegal (even if it may 'just' reduce the life time slightly).

You could add another long word to your message header (just when saving to Flash) and use that for marking the message state to avoid the present risk.

Note that doing 'illegal' things may work fine but then fail when there is a silicon revision - for example, some fo the newer devices will not allow the Flash phrase to be read (always generating a hardware fault) when a phrase has been programmed twice; this requires the chip to be erased before the Flash can be accessed again and thus a temporary (complete) failure of the product. I don't know whether this started from rev. 2 devices or only happens on 8 byte phrase devices but it could cause big problems in the future if you were to receive chips that behaved differently; avoiding doing things that are out of specification will thus also "future-proof" your product.

Regards

Mark