SLAAEB4 april 2023 MSPM0G1105 , MSPM0G1106 , MSPM0G1107 , MSPM0G1505 , MSPM0G1506 , MSPM0G1507 , MSPM0G3105 , MSPM0G3106 , MSPM0G3107 , MSPM0G3505 , MSPM0G3506 , MSPM0G3507 , MSPM0L1105 , MSPM0L1106 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346
The EEPROM can erase and write to a single byte of memory multiple times, allowing programmed locations to retain data for long periods of time even if the system is powered off.
Flash memory has a higher density than EEPROM, allowing larger memory arrays (sectors) to be implemented on chip. The flash erase and write cycle is performed by applying a time-controlled voltage to each unit. Each cell (bit) reads the logical value 1 under erase conditions. Therefore, each Flash location reads 0xFFFF After erase. By programming, the cell can be changed to a logic 0. Any word can be overwritten to change a bit from logical 1 to 0; however, the reverse is not possible. In addition, Flash memory has the restriction that the memory is erased by a region. For MSPM0 MCUs, the erase resolution is sector with the size of 1k bytes.
One major difference between EEPROM and Flash is cycling capability. Flash endurance is typically 10 thousand cycles, far less than real EEPROM. EEPROM emulation is a software based on Flash to provide the equivalent endurance that can be satisfied for the application. Flash also simulates the behavior of the EEPROM, simplifying the operation of reading and writing data.
A typical emulation scheme involves using a portion of the Flash memory and dividing it into multiple areas. These areas are used alternately to store data. Due to the block erase requirement of Flash, entire Flash sector has to be reserved for the EEPROM emulation. To achieve wear-leveling, at least two sectors are used.