比如一开始在虚地址0x7777H写入数据0x1232H。数据存放如图所示。如果再在同一地址写入另外一个数,则数据存在下一个位置。但是前面的数据并不会马上被擦除掉。如果此时要读取0x7777H虚地址的数据。那么读出来的是0X1245H而不是0x1232H。因为读取的时候是从下往上读取。读取到第一个符合该地址的数据。
当数据写满的时候。这时写入的新数据将被存在第二页。此时会自动将第一页不重复的数据拷贝到第二页。比如我们的虚地址0X7777H和0X5555H对应的数据,紧接0X6666H。如图所示。然后将第一页擦除。两页交替使用。写入数据的过程判断该页是否已满,从上往下搜索,找到FFFF,就可以直接写入。若搜索完整页,均无FFFF,说明该页已满,需要写入下一页,并执行搬移与擦除操作。 |