Information Technology Reference
In-Depth Information
to some free, already-erased physical page and remaps the logical page to that
physical page.
Write remapping significantly improves flash performance.
Example: Remapping flash writes.
Question: Consider a flash drive with a 4 KB pages, 512 KB erasure blocks,
3 ms flash times, and 50 s read-page and write-page times.
Suppose writing apage is done with a naive algorithm that reads
an entire erasure block, erases it, and writes the modified era-
sure block. How long would each page write take?
Answer: This naive approach would require
512 KB/erasure block
4 KB/page (page read time + page write time)+erasure block erase time =
128 (50 + 50)s + 3ms = 15:8ms per write.
Question: Suppose remapping is used and that a flash device always has
at least one unused erasure block available for a target workload.
How long does an average write take now?
Answer: With remapping, the cost of flashing an erasure block is amor-
tized over 512/4 = 128 page writes. This scenario gives a cost of
3 ms
128 + 50s = 73:4s per write.
In practice, there is likely to be some additional cost per write under the remap-
ping scheme because in order to flash an erasure block to free it for new writes,
the firmware may need to garbage collect live pages from that erasure block
and copy those live pages to a different erasure block.
Internally, a flash device may have multiple independent data paths that
can be accessed in parallel. Therefore, to maximize sustained bandwidth when
accessing a flash device, operating systems issue multiple concurrent requests to
the device.
Durability. Normally, flash memory can retain its state for months or years
without power. However, over time the high current loads from flashing and
writing memory causes the circuits to degrade. Eventually, after a few thousand
to a few million program-erase cycles (depending on the type of flash), a given
cell may wear out and no longer reliably store a bit.
Definition: wear out
In addition, reading a flash memory cell a large number of times can cause
the surrounding cells' charges to be distubed. A read disturb error can occur
Definition: read disturb
error
if a location in flash memory is read to many times without the surrounding
memory being written.
 
Search WWH ::




Custom Search