Is ALL on-chip flash inaccessible durring IAP erase/write calls?

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

Is ALL on-chip flash inaccessible durring IAP erase/write calls?

522 Views
jdupre
Contributor II

34.3.6.2 Interrupts during IAP
The on-chip flash memory is not accessible during erase/write operations. When the user
application code starts executing, the interrupt vectors from the user flash area are active.
Before making any IAP call, either disable the interrupts or ensure that the user interrupt
vectors are active in RAM and that the interrupt handlers reside in RAM. The IAP code
does not use or disable interrupts.

34.8.2 Copy RAM to flash

...

Remark: All user code must be written in such a way that no master accesses the
flash while this command is executed and the flash is programmed.

Those quotes are from the LPC15xx manual.

Is ALL of the on-chip flash inaccessible during ANY erase or write IAP operation, or is it only the regions of flash being operated on by the IAP command that are inaccessible during the IAP call?  In other words, can I safely make IAP calls from code residing in on-chip flash without disabling interrupts, provided that I prevent IAP from erasing or writing the area(s) of flash where the program code resides?

Likewise, is on-chip flash inaccessible during IAP write calls to the EEPROM?

I'm questioning the word "any" in the "Before making any IAP call, either disable the interrupts..." statement.

Labels (2)
0 Kudos
1 Reply

355 Views
jeremyzhou
NXP Employee
NXP Employee

Hi Joseph Dupre,

Thank you for your interest in NXP Semiconductor products and 
the opportunity to serve you.
I'd highly recommend you to refer to the application note: AN11555: LPC15xx In-Application Programming | www.LPCware.com , it exemplifies the IAP precautions and I think the it can clarify your queries.
2017-06-05_10-35-21.jpg


Have a great day,
TIC

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

0 Kudos