4,754 research outputs found
Rewriting Codes for Joint Information Storage in Flash Memories
Memories whose storage cells transit irreversibly between
states have been common since the start of the data storage
technology. In recent years, flash memories have become a very
important family of such memories. A flash memory cell has q
states—state 0.1.....q-1 - and can only transit from a lower
state to a higher state before the expensive erasure operation takes
place. We study rewriting codes that enable the data stored in a
group of cells to be rewritten by only shifting the cells to higher
states. Since the considered state transitions are irreversible, the
number of rewrites is bounded. Our objective is to maximize the
number of times the data can be rewritten. We focus on the joint
storage of data in flash memories, and study two rewriting codes
for two different scenarios. The first code, called floating code, is for
the joint storage of multiple variables, where every rewrite changes
one variable. The second code, called buffer code, is for remembering
the most recent data in a data stream. Many of the codes
presented here are either optimal or asymptotically optimal. We
also present bounds to the performance of general codes. The results
show that rewriting codes can integrate a flash memory’s
rewriting capabilities for different variables to a high degree
Trajectory Codes for Flash Memory
Flash memory is well-known for its inherent asymmetry: the flash-cell charge
levels are easy to increase but are hard to decrease. In a general rewriting
model, the stored data changes its value with certain patterns. The patterns of
data updates are determined by the data structure and the application, and are
independent of the constraints imposed by the storage medium. Thus, an
appropriate coding scheme is needed so that the data changes can be updated and
stored efficiently under the storage-medium's constraints.
In this paper, we define the general rewriting problem using a graph model.
It extends many known rewriting models such as floating codes, WOM codes,
buffer codes, etc. We present a new rewriting scheme for flash memories, called
the trajectory code, for rewriting the stored data as many times as possible
without block erasures. We prove that the trajectory code is asymptotically
optimal in a wide range of scenarios.
We also present randomized rewriting codes optimized for expected performance
(given arbitrary rewriting sequences). Our rewriting codes are shown to be
asymptotically optimal.Comment: Submitted to IEEE Trans. on Inform. Theor
Coding Techniques for Error Correction and Rewriting in Flash Memories
Flash memories have become the main type of non-volatile memories. They
are widely used in mobile, embedded and mass-storage devices. Flash memories store
data in floating-gate cells, where the amount of charge stored in cells – called cell levels
– is used to represent data. To reduce the level of any cell, a whole cell block (about
106 cells) must be erased together and then reprogrammed. This operation, called
block erasure, is very costly and brings significant challenges to cell programming and
rewriting of data. To address these challenges, rank modulation and rewriting codes
have been proposed for reliably storing and modifying data. However, for these new
schemes, many problems still remain open.
In this work, we study error-correcting rank-modulation codes and rewriting
codes for flash memories. For the rank modulation scheme, we study a family of one-
error-correcting codes, and present efficient encoding and decoding algorithms. For
rewriting, we study a family of linear write-once memory (WOM) codes, and present
an effective algorithm for rewriting using the codes. We analyze the performance of
our solutions for both schemes
Towards Endurable, Reliable and Secure Flash Memories-a Coding Theory Application
Storage systems are experiencing a historical paradigm shift from hard disk to nonvolatile memories due to its advantages such as higher density, smaller size and non-volatility. On the other hand, Solid Storage Disk (SSD) also poses critical challenges to application and system designers. The first challenge is called endurance. Endurance means flash memory can only experience a limited number of program/erase cycles, and after that the cell quality degradation can no longer be accommodated by the memory system fault tolerance capacity. The second challenge is called reliability, which means flash cells are sensitive to various noise and disturbs, i.e., data may change unintentionally after experiencing noise/disturbs. The third challenge is called security, which means it is impossible or costly to delete files from flash memory securely without leaking information to possible eavesdroppers.
In this dissertation, we first study noise modeling and capacity analysis for NAND flash memories (which is the most popular flash memory in market), which gains us some insight on how flash memories are working and their unique noise. Second, based on the characteristics of content-replication codewords in flash memories, we propose a joint decoder to enhance the flash memory reliability. Third, we explore data representation schemes in flash memories and optimal rewriting code constructions in order to solve the endurance problem. Fourth, in order to make our rewriting code more practical, we study noisy write-efficient memories and Write-Once Memory (WOM) codes against inter-cell interference in NAND memories. Finally, motivated by the secure deletion problem in flash memories, we study coding schemes to solve both the endurance and the security issues in flash memories. This work presents a series of information theory and coding theory research studies on the aforesaid three critical issues, and shows that how coding theory can be utilized to address these challenges
Error correction and partial information rewriting for flash memories
This paper considers the partial information rewriting problem for flash memories. In this problem, the state of information can only be updated to a limited number of new states, and errors may occur in memory cells between two adjacent updates. We propose two coding schemes based on the models of trajectory codes. The bounds on achievable code rates are shown using polar WOM coding. Our schemes generalize the existing rewriting codes in multiple ways, and can be applied to various practical scenarios such as file editing, log-based file systems and file synchronization systems
Rewriting Flash Memories by Message Passing
This paper constructs WOM codes that combine rewriting and error correction
for mitigating the reliability and the endurance problems in flash memory. We
consider a rewriting model that is of practical interest to flash applications
where only the second write uses WOM codes. Our WOM code construction is based
on binary erasure quantization with LDGM codes, where the rewriting uses
message passing and has potential to share the efficient hardware
implementations with LDPC codes in practice. We show that the coding scheme
achieves the capacity of the rewriting model. Extensive simulations show that
the rewriting performance of our scheme compares favorably with that of polar
WOM code in the rate region where high rewriting success probability is
desired. We further augment our coding schemes with error correction
capability. By drawing a connection to the conjugate code pairs studied in the
context of quantum error correction, we develop a general framework for
constructing error-correction WOM codes. Under this framework, we give an
explicit construction of WOM codes whose codewords are contained in BCH codes.Comment: Submitted to ISIT 201
- …