Error Correction Codes for Non-Volatile Memories by Rino MicheloniError Correction Codes for Non-Volatile Memories by Rino Micheloni

Error Correction Codes for Non-Volatile Memories

byRino Micheloni, A. Marelli, R. Ravasio

Paperback | October 19, 2010

Pricing and Purchase Info

$216.33 online 
$220.95 list price
Earn 1082 plum® points

In stock online

Ships free on orders over $25

Not available in stores


Nowadays it is hard to find an electronic device which does not use codes: for example, we listen to music via heavily encoded audio CD's and we watch movies via encoded DVD's. There is at least one area where the use of encoding/decoding is not so developed, yet: Flash non-volatile memories. Flash memory high-density, low power, cost effectiveness, and scalable design make it an ideal choice to fuel the explosion of multimedia products, like USB keys, MP3 players, digital cameras and solid-state disk.In ECC for Non-Volatile Memories the authors expose the basics of coding theory needed to understand the application to memories, as well as the relevant design topics, with reference to both NOR and NAND Flash architectures. A collection of software routines is also included for better understanding.The authors form a research group (now at Qimonda) which is the typical example of a fruitful collaboration between mathematicians and engineers.
Rino Micheloni received the Laurea degree (cum laude) in nuclear engineering from the Politecnico of Milan in 1994. From 1995 to 2006 he was with STMicroelectronics where he led the design activities on NOR and NAND Multilevel Flash memories. Currently, he is Senior Principal Engineer for Flash Design at Qimonda. In 2003 he was Co-Gue...
Title:Error Correction Codes for Non-Volatile MemoriesFormat:PaperbackDimensions:352 pagesPublished:October 19, 2010Publisher:Springer NetherlandsLanguage:English

The following ISBNs are associated with this title:

ISBN - 10:9048178649

ISBN - 13:9789048178643

Look for similar items by category:


Table of Contents

Preface. Acknowledgements.1. Basic coding theory. 1.1 Introduction. 1.2 Error detection and correction codes. 1.3 Probability of errors in a transmission channel. 1.4 ECC effect on error probability. 1.5 Basic definitions. Bibliography.2 Error Correction Codes. 2.1 Hamming codes. 2.2 Reed-Muller codes. 2.3 Cyclic codes. Bibliography.3 NOR Flash memories. 3.1 Introduction. 3.2 Read. 3.3 Program. 3.4 Erase. Bibliography.4 NAND Flash memories. 4.1 Introduction. 4.2 Read. 4.3 Program. 4.4 Erase. Bibliography.5 Reliability of Floating Gate Memories; A.Chimenton, M.Atti, P.Olivo. 5.1 Introduction. 5.2 Reliability issues in floating gate memories. 5.3 Conclusions. Bibliography.6 Hardware implementation of Galois field operators. 6.1 Gray map. 6.2 Adders. 6.3 Constant multipliers. 6.4 Full multipliers. 6.5 Divider. 6.6 Linear Shift Register. Bibliography.7 Hamming code for Flash memories. 7.1 Introduction. 7.2 NOR Single Bit. 7.3 NOR Flash multilevel memory. 7.4 Algorithmic Hamming code for big size blocks. Bibliography.8 Cyclic codes for non volatile storage. 8.1 General structure. 8.2 Encoding. 8.3 Syndromes calculation. 8.4 Finding error locator polynomial. 8.5 Searching polynomial roots. 8.6 Computing error magnitude. 8.7 Decoding failures. 8.8 BCH vs Reed-Solomon. Bibliography.9 BCH hardware implementation in NAND Flash memories. 9.1 Introduction. 9.2 Scaling of a ECC for MLC memories. 9.3 The system. 9.4 Parity computation. 9.5 Syndrome computation. 9.6 Berlekamp machine. 9.7 The Chien Machine. 9.8 Double Chien machine. 9.9 BCH embedded into the NAND memory. Bibliography.10 Erasure technique. 10.1 Error disclosing capability for binary BCH codes. 10.2 Erasure concept in memories. 10.3 Binary erasure decoding. 10.4 Erasure and majority decoding. 10.5 Erasure decoding performances. Bibliography.Appendix A: Hamming code. A.1 Routine to find a parity matrix for a single bit or a single cell correction. A.2 Routine to find a parity matrix for a two errors correction code. A.3 Routine to find a parity matrix to correct 2 erroneous cells. Appendix B: BCH code. B.1 Routine to generate the BCH code parameters. B.2 Routine to encode a message. B.3 Routine to calculate the syndromes of a read message. B.4 Routine to calculate the evaluation matrices. B.5 Routines to compute operations in a Galois field. B.6 Routine to calculate the lambda coefficients. B.7 Routine to execute Chien algorithm. B.8 Routine to find the matrix to execute the multiplication by alpha. Appendix C: the Galois field GF(24). Appendix D: the parallel BCH code. D.1 Routine to get the matrix for the encoding. D.2 Routine to get matrices for the syndromes. D.3 Routine to get the matrix for the multiplier. D.4 Routine to calculate the coefficients of the error locator polynomial. D.5 Routine to get matrices for the Chien machine. D.6 Global matrix optimization for the Chien machine. D.7 BCH flow overview. Appendix E: erasure decoding technique. E.1 Subroutines. E.2 Erasure decoding routine. Index.