25.6.8.7 SmartEEPROM Sector Reallocation

The SEES reallocation is performed by default in hardware when the the next available page in the Host index reaches the maximum SEEP number. Automatic reallocation can be disabled by writing a one in SEECFG.APRDIS. The sector reallocation can also be trigged manually by issuing the SEERALOC command. The SEES reallocation process consists of:

  • Erase the non active sector
  • Copying the active sector valid data to the other sector, old data is filtered
  • Swap ASEES either by issuing the ASEES1 command if SEESTAT.ASEES is reading ‘0’ or by issuing the ASEES0 command if SEESTAT.ASEES is read as ‘1’

This process is by default automatically handled by hardware, and indicated by the SEESTAT.BUSY flag. If in buffered mode, the page buffer must be flushed before triggering a reallocation; otherwise, the content of the pagebuffer would be lost.

Note: The BKSWRST command triggers automatically the reallocation algorithm which operates as described above except copy is done in the same active sector but in the first bank. This operation is atomic, meaning that no modify operation can be issued in the mean time.

As the total size of the whole SEEP exceeds the SmartEEPROM virtual size for a given configuration there is always free SEEP to replace existing data. In the case all addresses have been written, after sector reallocation the number of free SEEP is given in the following table.

Table 25-8. Minimum number of free SEEP after sector reallocation
SEESTAT.PSZ: SEESTAT.SBLK48163264128256512
0N/AN/AN/AN/AN/AN/AN/AN/A
116161616311573
21616161616472311
31616161616162311
41616161616165527
51616161616161611
61616161616161627
71616161616161643
81616161616161659
91616161616161611
101616161616161616