Back to Search Start Over

Design and implementation of an efficient wear-leveling algorithm for solid-state-disk microcontrollers

Authors :
Chun-Da Du
Li-Pin Chang
Source :
ACM Transactions on Design Automation of Electronic Systems. 15:1-36
Publication Year :
2009
Publisher :
Association for Computing Machinery (ACM), 2009.

Abstract

Solid-state disks (SSDs) are storage devices that emulate hard drives with flash memory. They have been widely deployed in mobile computers as disk drive replacements. Flash memory is organized in terms of erase blocks. With the current technology, a block can reach the end of its lifetime after thousands of erasure operations. Wear leveling is a technique to evenly erase the entire flash memory so that all blocks remain alive as long as possible. This study introduces a new wear-leveling algorithm based the observation that, under a real-life mobile PC's workload, most erasure operations are contributed by a small fraction of blocks. Our key ideas are 1) moving rarely updated data to a block that is extraordinarily worn and 2) avoiding repeatedly involving a block in wear-leveling activities. This study presents a successful implementation of the proposed wear-leveling algorithm using about 200 bytes of RAM in an SSD controller rated at 33 MHz. Evaluation results show that this algorithm achieves even wear of the entire flash memory while reducing the overheads of extra flash-memory operations.

Details

ISSN :
15577309 and 10844309
Volume :
15
Database :
OpenAIRE
Journal :
ACM Transactions on Design Automation of Electronic Systems
Accession number :
edsair.doi...........66dea37492fffabc2224797d910e306c
Full Text :
https://doi.org/10.1145/1640457.1640463