Flash memory drives and related methods are disclosed that operate to keep
frequently written data, which results in frequently erased blocks, in
SLC-mimicking MLC flash, and relatively static data in normal MLC flash.
A flash drive according to the present disclosure keeps track of the
number of times that data for each logical block address (LBA) has been
written to the flash memory, and determines whether to store newly
received data associated with a particular LBA in SLC-mimicking MLC flash
or in normal MLC flash depending on the number of writes that have
occurred for that particular LBA. Dynamic allocation can occur between
the two types of MLC. Related methods and software are also described.