I have been reading up on the STM32F429 flash memory (2MB version). From the STM32F4 reference manual I found out that it has two memory banks and supports read-while-write (RWW), which means it can read from one memory bank while writing to the other.
My application has real-time constraints and I want to know what the worst-case situation is.
Lets say the microcontroller application is running from memory bank 1 and I want to write/erase data on memory bank 2. I have some questions after reading section 3.4 to 3.6 in the reference manual.
Is there any situation where the microcontroller application in memory bank 1 needs to write to flash during normal code execution?
If yes to question 1. Does this mean the application code execution have to wait until e.g. a sector erase is done on the memory bank 2 as it does not support write-while-write? Or is it someway to give memory bank 1 priority is it needs write/erase access?