@inproceedings{ca4e80a4c4674e4fa85dca22e17586eb,
title = "A pattern-aware write strategy to enhance the reliability of flash-memory storage systems",
abstract = "Owing to high cell density caused by the advanced manufacturing process, the reliability of flash drives turns out to be rather challenging in flash system designs. In order to enhance the reliability of flash drives, error-correcting code (ECC) has been widely utilized in flash drives to correct error bits during programming/reading data to/from flash drives. Although ECC can effectively enhance the reliability of flash drives by correcting error bits, the capability of ECC would degrade while the program/erase (P/E) cycles of flash blocks is increased. Finally, ECC could not correct a flash page because a flash page contains too many error bits. As a result, reducing error bits is an effective solution to further improve the reliability of flash drives when a specific ECC is adopted in the flash drive. This work focuses on how to reduce the probability of producing error bits in a flash page. Thus, we propose a patternaware write strategy that allocates young blocks (i.e., blocks with low P/E cycles) for storing hot data and executes bit-flip operations on the written data so as to reduce the number of error bits in a flash page. By considering both the P/E cycles of blocks and the pattern of written data, the proposed pattern-aware write strategy can effectively improve the reliability of flash drives. The experimental results show that the proposed strategy can reduce the number of error pages by up to 40%, compared with the well-known DFTL solution. Moreover, the proposed strategy is orthogonal with all ECC mechanisms so that the reliability of the flash drives with ECC mechanisms can be further improved by the proposed strategy.",
keywords = "Bit error, Bit-flip, Flash memory, Flash reliability, Pattern-aware",
author = "Chen, {Tseng Yi} and Chang, {Yuan Hao} and Kuan, {Yuan Hung} and Yang, {Ming Chang} and Chang, {Yu Ming} and Hsiu, {Pi Cheng}",
note = "Publisher Copyright: Copyright 2017 ACM.; 32nd Annual ACM Symposium on Applied Computing, SAC 2017 ; Conference date: 04-04-2017 Through 06-04-2017",
year = "2017",
month = apr,
day = "3",
doi = "10.1145/3019612.3019680",
language = "???core.languages.en_GB???",
series = "Proceedings of the ACM Symposium on Applied Computing",
publisher = "Association for Computing Machinery",
pages = "1460--1466",
booktitle = "32nd Annual ACM Symposium on Applied Computing, SAC 2017",
}