Tool/software:
We are exploring the eeprom emulation option using internal flash [www.ti.com/.../sprab69a.pdf
I have few questions:
Code execution during flash erase/storage.
3 Implementation Scheme
While emulating EEPROM with the Flash, the most important challenge is meeting the reliability targets as far as
Flash program/erase endurance and data retention are concerned. Secondly, real-time application requirements
of updating and reading the data need to be met under control of the application program. Note that during the
Flash erase/program period it cannot execute the application program, as it cannot be read during this time
interval.
1. If we use flash bank 0 for eeprom and use flash banks 1 and 2 to store application image, could we continue to execute code while performing flash erase/write?
Could you explain what does it mean that we cannot execute application? Does that mean, the CPU must be tied up in a spinlock or so until the flash api is done with the operation?
The major difference between EEPROM and Flash operations is seen in the write and erase timings. A typical
Flash write time is 50 μs/16-bit word; whereas, EEPROM typically requires 5 to 10 ms. The EEPROM does not
require a page (sector) erase operation. One can erase a particular byte requiring the specified time. Flash erase
time runs in seconds for a page. For Generation 2 C2000 MCUs, the typical value for erase time is 10
seconds/8K sector. The Flash power supply must be steady during write/erase operations.
2. My take away is we need a brown out detection and enough hold up to assure 10 seconds of operation after loss of power. I do not see any dedicated BOR detection in P65. Hence we will need to use a separate pin or use CMPSS system to generate this.

