Error Control Codes for Memories

Size: px
Start display at page:

Download "Error Control Codes for Memories"

Transcription

1 The 2 th Korea Test Conference Error Control Codes for Memories June 22, 2 Jun Jin Kong, Ph.D. (jjkong@samsung.com) Samsung Electronics Co., Ltd. (Memory)

2 Biography of Jun Jin Kong Brief History Present: Samsung Electronics Co., Ltd., Semiconductor Business Division 25: University of Minnesota, USA, Electrical Engineering (VLSI Architecture Design for DSP, Channel Coding, Quantum Computing) 989: Samsung Advanced Institute of Technology Research Interests Channel Signal Processing for Memory and Memory based Storage Systems Channel Signal Processing for Magnetic/Optical Recording Systems VLSI Architecture Design for Digital Signal Processing (VLSI DSP) Low Power Digital CMOS Design Social Activities IEEE, Member / CASS VSA TC Steering Committee Member of the Coding and Information Society in Korean Institute of Communication Science The Institute of Electronics Engineers of Korea, Semiconductor Society June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong /4

3 Semiconductor Memories: Introduction

4 MOS Memory Hierarchy MOS (Metal-Oxide Semiconductor) Memory mid-96s Volatile Random Access Memory (RAM) Non-Volatile Read Only Memory (ROM) Static RAM (SRAM) 97 by Intel Emerging Memories - FeRAM : Ferroelectric RAM - MRAM : Magnetoresistive RAM - PRAM : Phase change RAM Dynamic RAM (DRAM) Refresh (UV)-EPROM Chip-level erase 97 by Intel Programmable ROM (PROM) FF-EEPROM byte-level erase EEPROM Mask ROM One Time PROM 97 by Intel single cell erase Flash EEPROM block-level erase 979 by Intel 984 by Toshiba June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 3/4

5 Emerging Memories June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 4/4

6 The Characteristics of an Ideal Memory ) Nonvolatility 2) High Density [consumes small space/bit] 3) Fast read/write/erase 4) In-system re-writability 5) Bit alterability 6) High Endurance [high write/erase cycles] 7) Low power consumption 8) High bit count 9) Low cost ) Highly scalable ) Single-power supply 2) Ruggedness 3) Portability 4) Small form factor 5) Highly integrable with other system technologies June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 5/4

7 NVM: Flash memory Flash memories are non-volatile memories (NVM) in which a single cell can be electrically programmed and a large number of cells called a block, sector or page are electrically erasable at the same time. The word flash itself is related to the fact that since the whole memory can be erased at once, erase time can be very fast. Two are the parameters describing how good and reliable a non-volatile memory cell is: endurance and retention. endurance: capability of maintaining the stored information after erase/program/read cycling. retention: capability of keeping the stored information in time. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 6/4

8 Flash Memory: Cell Structure Two are the most common solutions used to store charge: charge trap: in traps which are present in the insulator or at the interface between two dielectric materials. floating gate (FG): in a conductive material layer between the gate and the channel and completely surrounded by insulator. This is the floating gate device. Floating Gate Interpoly Dielectric Word Line Tunnel Oxide Drain Source Flash (FG: Floating Gate) June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 7/4

9 Flash Memory: Array Architecture NOR large cell and fast random access Contact is the limiting factor for scale-down NAND Small cell and fast burst read Easy to scale-down Bit Line Contact Bit Line Bit Line Contact Bit Line Unit Cell Unit Cell Control Gate Control Gate Common Source June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 8/4

10 NAND Flash Memory Organization Page & Block small page page = (52 + 6) Byte: Program/Read Unit block = 32 page: Erase Unit June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 9/4

11 NAND Flash Memory Applications Source: Flash Memory Summit 2 (Samsung) June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong /4

12 A Price Challenge of Flash Memory To overcome the price challenge, we have to reduce the cost. To reduce the cost, we have to increase memory density. Source: Flash Summit 29 (Sandisk) June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong /4

13 How can we increase Memory Density? The primary technique for increasing the memory density is to reduce the size of the memory cell (scaling). Another approach to improving memory density is to increase the number of possible states in a cell (multi-leveling). Multilevel storage has a lower tolerance for disturbance of the stored data (e.g., data retention) than conventional Flash, and thus will most likely require some form of error correction in the system or will be used in loss tolerant applications (e.g. MP3 Player) for the higher bit/cell densities. Or use new architecture (3D Memory) or new memory. Scaling/Multi-leveling Benefit: Cost Down Challenge: Reliability/Speed Degradation Solutions: Material, Process, Circuit Design, Signal Processing June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 2/4

14 Evolution of NAND Flash Technology (Scaling) Source: 2 IEEE International Memory Workshop (Kinam Kim, Technology Challenges for Deep-Nano Semiconductor), pp.-2, May 6-9, 2. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 3/4

15 Multi-leveling: Vth Distribution # of Cells # of Cells Erase State Program State Vth Erase State Program States Vth SLC (Single Level Cell): -bit/cell MLC (Multi Level Cell): 2-bit/cell June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 4/4

16 Do we have a solution? Reliability Issues Endurance / Retention: f (Vth Distribution, ) Data Integrity: Target BER (bit error rate) = f (application, raw BER) Raw BER = f (Vth Distribution) Vth Distribution = f (Oxide Degradation, Charge Loss, Coupling, Disturb, ) Program/Read Performance Issues Program/Read Schemes NAND Interface / Host Interface Solutions: NAND Level & System Level Solution Material, Process, and Circuit Design [NAND] + Signal Processing Algorithms System: Card/SSD Host Controller NAND June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 5/4

17 Error Control Codes for Memories: Error Detection/Correction Codes

18 Communication System vs. Storage System Source Source Encoder Encryption ECC Encoder Modulation Data Text Voice/Audio Image Moving Pictures Graphics Huffman CELP AAC JPEG MPEG DES (Data Encryption Standard) AES (Advanced Encryption Standard) RSA (Rivest/Shamir/Adleman) Feedback Channel Impairments Interference Noise Channel (Air/Wire, Storage) Sink (User) Source Decoder Decryption ECC Decoder Demodulation Source Coding Cryptography Channel Coding June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 7/4

19 System Limitation vs. Channel Solution (Transmission) Power Limited System: Deep Space Communication Use Error Correction Codes Advantage: Coding Gain Disadvantage: increasing Bandwidth & Overhead (Parity) Bandwidth Limited System Use High Transmission Power or High Level Modulation Power & Bandwidth Limited System: Telephone Use Coded Modulation June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 8/4

20 Error Control Codes Error Control Protocols/Codes Design FEC (Forward Error Correction) using Error Correction Codes Block Codes: Hamming, BCH, RS, LDPC, etc. Algebraic Codes Tree Codes: Convolutional Codes, Trellis Codes, etc. Concatenated Codes Coded Modulation Soft-decision decoding, iterative decoding ARQ (Automatic Repeat request) using Error Detection Codes Parity Check Codes: even parity check codes, odd parity check codes CRC (Cyclic Redundancy Check) Codes Hybrid-ARQ: FEC + ARQ June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 9/4

21 Examples of ECC for DRAM For DRAM Core: Error Correction Codes FEC Scheme For DRAM Interface: Error Detection Codes ARQ Scheme ECC Techniques for DRAM Core On-chip ECC: (32, 8) SEC-DED modified Hamming code (odd-parity) 32 data bits + 8 parity bits On-chip ECC: (28, 9) SEC-DED Odd-weight Hamming Code (interleaved?) 28 data bits + 9 parity bits On-chip ECC: double-bit/word-line soft errors Augmented Product Code (APC) Remarks single bit correction -Mbit Cache DRAM Feb. 99 single bit correction 6-Mbit DRAM Oct. 99 double bit correction Nov. 992 (988, 993) SEC/DED (single-error-correcting/double-error-detecting) codes: Hamming codes. SEC/DED/SbED (single-error-correcting/double-error-detecting/single b-bit byte error-detecting) SbEC/DbED (single b-bit byte error correcting/double b-bit byte error-detecting) codes: RS codes or BCH codes over GF (2 b ). June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 2/4

22 Examples of ECC for NAND Flash For NAND Core: Error Correction Codes FEC Scheme BCH, LDPC, etc. For End-to-End Data Integrity: Error Detection Codes ARQ Scheme CRC, etc. System: Card/SSD Host Controller NAND BER < - BER < -2 An Error Detection Code An Error Correction Code June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 2/4

23 A Classification of ECC ECC (Channel Codes) BLOCK CODES (Algebraic Codes) TREE CODES - Hamming Codes [95] - Cyclic Codes: BCH, RS [96] - Reed-Muller Codes [954] - LDPC Codes [962, 995] Soft-Decision Decoding Iterative Decoding - Convolutional Codes [955] * Linear / Nonlinear * Binary / Nonbinary * Systematic/Nonsystematic CONCATENATED CODES [966] - Block + Block - Block + Tree - Tree + Tree: Turbo Codes [993] Coded Modulation - TCM [982] - BCM (Block Coded Modulation) June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 22/4

24 Selection of a Coding Scheme The system factors that affect the choice of a coding scheme are data: structure, the nature of the information (error status/type) and the resulting error-rate requirements (target decoded error-rate), the data rate and any realtime processing requirements channel: power and bandwidth constraints and the nature of the noise mechanisms (error profile) specific user constraints: cost limitations. One further factor that affects choice of a coding scheme is prejudice or, as it is more kindly known, familiarity. The goal of channel code design is to find a code that is easy to encode and decode, and at the same time gives a high code rate for the largest minimum distance. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 23/4

25 ECC: Code Design (Parameters) Codeword length: n = k + r, where k = message size (dimension) & r = parity size Code Rate: R = k / n Minimum distance: d min min d c, c ci, c j C c c i j i j n k r message parity Any two codewords differ in at least d min places Error Correcting Capability: t A Systematic Code s d s t min 2t when t s t dmin 2 t d min t June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 24/4

26 Decoding Principles Decoding Principles When a received word is decoded, the output is correct or false, or no decision can be made. These outputs may be defined as correct decoding (correctable/detectable error), false decoding (miscorrection/misdetection) and decoding failure (uncorrectable) respectively. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 25/4

27 ECC Encoding: An Example Data + Redundancy: Increase Minimum Distance Error Detection and/or Correction Data Codeword = Data + Redundancy Encoding (Rule) Choose 2 3 as codewords among 2 4 possible combinations * Rule: represented by polynomial or matrix, or graph, etc. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) 26/4 J. J. Kong

28 ECC Decoding: An Example ECC Decoding: Received (Read) Data = Distance = Distance = Distance = 3 Distance = Distance = 3 Distance = Distance = 3 Distance = 3 Error Detection!!! Most Probable Errors:,,, detectable but uncorrectable! June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) 27/4 J. J. Kong

29 ECC: BCH/RS Code BCH (Bose-Chaudhuri-Hocquenghem) Code A BCH code is a multilevel, cyclic, variable-length error-correcting code used to correct multiple random error patterns. Generator Polynomial: lcm of 2t consecutive minimal polynomials RS (Reed-Solomon) Code An RS code can be considered as a special case of BCH codes Generator Polynomial g( x) lcm M ( x), M ( x),..., M ( x) 2t g( x) ( x j b b b 2t js ) June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 28/4

30 ECC: BCH Code Encoding Parities are generated and concatenated with messages by Galois Field divider. nk c( x) x m( x) p( x) p(x) nk p( x) x m( x) mod g( x) c(x) m(x) p, p,, p n-k- m, m,, m k- June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 29/4

31 ECC: BCH Code Decoding Decoding Procedure. Syndrome Calculation 2. Determine the Error Location 3. If errors > t, decoding failure! 4. Estimate Error Values 5. Error Correction Syndrome Calculation S i i i ib r( ) c( ) e( ) i i i Q( ) g( ) e( ) i e( ), b i b 2t June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 3/4

32 ECC: LDPC Code Approaching the Shannon limit within.45db Low-Density Parity-Check (LDPC) codes are defined by a parity-check matrix Hc T T c : codeword, H : parity-check matrix Small number of non-zero terms (sparse) in the parity-check matrix H = a b c d e f g a cycle A B C D A B C D a b c d e f g parity-check matrix Tanner (bipartite) graph Check nodes and variable nodes denote columns and rows in H, respectively. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 3/4

33 ECC: LDPC Code Decoding Iterative Decoding Algorithm Message Passing Algorithm: Sum Product Algorithm, Min Sum Algorithm CN VN Initialization (VN) check node update variable node update Check Hc T T stop or check node update June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 32/4

34 CRC (Cyclic Redundancy Check) Code: Primitive Polynomial A primitive polynomial with degree n is an irreducible polynomial whose period is 2 n -, i.e. maximum possible length. A polynomial is said to be irreducible if it cannot be factored into nontrivial polynomials over the same field. n irreducible polynomials primitive polynomials + x, x + x 2 + x + x 2 + x + x x + x 3, + x 2 + x 3 + x + x 3, + x 2 + x x + x 4, + x + x 2 + x 3 + x 4, + x 3 + x 4 + x + x 4, + x 3 + x x 2 + x 5, + x + x 2 + x 3 + x 5, + x 3 + x 5, + x + x 3 + x 4 + x 5, + x 2 + x 3 + x 4 + x 5, + x + x 2 + x 4 + x 5 + x 2 + x 5, + x + x 2 + x 3 + x 5, + x 3 + x 5, + x + x 3 + x 4 + x 5, + x 2 + x 3 + x 4 + x 5, + x + x 2 + x 4 + x 5 Period of + x + x 2 + x 3 + x 4 (irreducible but not primitive): x 5 = (x )( + x + x 2 + x 3 + x 4 ) 5 June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 33/4

35 CRC Code: Preliminary The CRC Code Generator Polynomial: g( x) = x a + Px P(x): a primitive polynomial with degree n The degree of g(x) = n + a, (a and n > a) The length of CRC = The degree of g(x) = n + a The period of P(x) = 2 n - (maximum length sequence) The period of g(x) = period of (x a + ) period of P(x) = period of (x a + ) (2 n - ) < 2 n+a - The length of codeword = degree of codeword polynomial Coefficients in GF(2): binary field (x a + ) is primitive only when a = ( period of (x + ) = ). June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 34/4

36 CRC Code: LFSR LFSR (Linear Feedback Shift Register) n j g( x) = c jx where c cn j= External Type Critical path! c c c n- x x 2 2 x 3 x n Internal Type Fanout! c c 2 c n- x + x 2 + x 3 + x n June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 35/4

37 CRC Generation The CRC of the data is computed by finding the remainder when the data polynomial d(x) is divided by the generator polynomial g(x). * Remark: Appending the remainder bits to the input message bits has the effect of premultiplying d(x) by x n and then dividing by g(x). Where n is the degree of generator polynomial. d d d 2 If d( x) d x d x d x d x then d n d n d n d n2 n x d( x) d x d x d x d x x 2 2 d n n-bits shift left c(x) = x n d(x) + r(x) = q(x) g(x) x n d(x) = q(x) g(x) + r(x) c(x): codeword polynomial, d(x): message polynomial r(x): remainder polynomial (degree = n - n bits) g(x): generator polynomial (degree = n CRC = n bits), q(x): quotient polynomial June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 36/4

38 CRC Code: Error Detection by CRC Checking e(x) = c (x) c(x) = {q (x) g(x) + r (x)} q(x) g(x) = {q (x) - q(x)} g(x) + r (x) = Q(x) g(x) + r (x) r (x) = : no errors in channel or detection fail r (x) : detect errors in channel c (x): received codeword polynomial e(x): error polynomial r (x): remainder of error polynomial June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 37/4

39 CRC Code: Error Detection Capability (/2) Theorem : All single-bit errors will be detected by any code whose generator polynomial has more than one term. Theorem 2: All cases of an odd number of bits in error will be detected by a code whose generator polynomial has (x a + ), where a is greater than zero, as a factor. Theorem 3: A code will detect all single- and double-bit errors if the degree of codeword polynomial is no greater than the period of the generator polynomial. Theorem 4: A code will detect all single-, double-, and triple-bit errors if its generator polynomial is of the form (x a + ) P(x) and the degree of codeword polynomial is no greater than the period of the generator polynomial. June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 38/4

40 CRC Code: Error Detection Capability (2/2) Theorem 5: A CRC code of degree (n + a) with non-zero constant term can always detect a single burst error of length no greater than (n + a). Note that a burst of length b is defined as any error pattern for which the number of bits between and including the first and last bits in error is b. (the length of burst error = the degree of error polynomial ) Theorem 6: A code with a generator polynomial of the form (x a + ) P(x) has a guaranteed double-burst detection capability provided the degree of codeword is no greater than the period of the generator polynomial. It will detect any combination of double bursts when the length of the shorter burst is no greater than the degree of P(x) and the sum of the burst lengths is no greater than (a + ). June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 39/4

41 CRC Code: Error Detection Capability (An Example) [Theorem 5] Undetected Probability of CRC Codes for Single Burst Error (degree of CRC generator polynomial: r = n + a, burst error size: b) ) b r : undetected probability = 2) b = r + : undetected probability = 2 r 3) b > r + : undetected probability = 2 -r CRC-CCITT (CRC6): g(x) = (x + )(x 5 + x 4 + x 3 + x 2 + x 4 + x 3 + x 2 + x + ) degree = 6, length of data sequence = For block length = length of (data + CRC parity) ) Odd number of bit errors: % detected [Theorem 2] 2) Single-, double-, triple-bit errors: % detected [Theorem 4] 3) [Theorem 5] Single burst error with span 6-bit: % detected Single burst error with span = 7-bit: % detected undetected probability = Single burst error with span 8-bit: % detected undetected probability =.53-5 June 22, 2 (Education Purpose Only, The 2th Korea Test Conference) J. J. Kong 4/4

42 Question & Comment Thank you!

Cyclic Codes. Saravanan Vijayakumaran August 26, Department of Electrical Engineering Indian Institute of Technology Bombay

Cyclic Codes. Saravanan Vijayakumaran August 26, Department of Electrical Engineering Indian Institute of Technology Bombay 1 / 25 Cyclic Codes Saravanan Vijayakumaran sarva@ee.iitb.ac.in Department of Electrical Engineering Indian Institute of Technology Bombay August 26, 2014 2 / 25 Cyclic Codes Definition A cyclic shift

More information

B. Cyclic Codes. Primitive polynomials are the generator polynomials of cyclic codes.

B. Cyclic Codes. Primitive polynomials are the generator polynomials of cyclic codes. B. Cyclic Codes A cyclic code is a linear block code with the further property that a shift of a codeword results in another codeword. These are based on polynomials whose elements are coefficients from

More information

An Enhanced (31,11,5) Binary BCH Encoder and Decoder for Data Transmission

An Enhanced (31,11,5) Binary BCH Encoder and Decoder for Data Transmission An Enhanced (31,11,5) Binary BCH Encoder and Decoder for Data Transmission P.Mozhiarasi, C.Gayathri, V.Deepan Master of Engineering, VLSI design, Sri Eshwar College of Engineering, Coimbatore- 641 202,

More information

Introduction to Wireless & Mobile Systems. Chapter 4. Channel Coding and Error Control Cengage Learning Engineering. All Rights Reserved.

Introduction to Wireless & Mobile Systems. Chapter 4. Channel Coding and Error Control Cengage Learning Engineering. All Rights Reserved. Introduction to Wireless & Mobile Systems Chapter 4 Channel Coding and Error Control 1 Outline Introduction Block Codes Cyclic Codes CRC (Cyclic Redundancy Check) Convolutional Codes Interleaving Information

More information

Information redundancy

Information redundancy Information redundancy Information redundancy add information to date to tolerate faults error detecting codes error correcting codes data applications communication memory p. 2 - Design of Fault Tolerant

More information

Dr. Cathy Liu Dr. Michael Steinberger. A Brief Tour of FEC for Serial Link Systems

Dr. Cathy Liu Dr. Michael Steinberger. A Brief Tour of FEC for Serial Link Systems Prof. Shu Lin Dr. Cathy Liu Dr. Michael Steinberger U.C.Davis Avago SiSoft A Brief Tour of FEC for Serial Link Systems Outline Introduction Finite Fields and Vector Spaces Linear Block Codes Cyclic Codes

More information

VHDL Implementation of Reed Solomon Improved Encoding Algorithm

VHDL Implementation of Reed Solomon Improved Encoding Algorithm VHDL Implementation of Reed Solomon Improved Encoding Algorithm P.Ravi Tej 1, Smt.K.Jhansi Rani 2 1 Project Associate, Department of ECE, UCEK, JNTUK, Kakinada A.P. 2 Assistant Professor, Department of

More information

Information Redundancy: Coding

Information Redundancy: Coding Info Redundancy April 2, 23 Information Redundancy: Coding Often applied to Info transfer: often serial communication thru a channel Info storage Hamming distance: error detection & correction capability

More information

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University CS 530 Information redundancy: Coding theory Yashwant K. Malaiya Colorado State University March 30, 2017 1 Information redundancy: Outline Using a parity bit Codes & code words Hamming distance Error

More information

Semiconductor Memories

Semiconductor Memories Semiconductor References: Adapted from: Digital Integrated Circuits: A Design Perspective, J. Rabaey UCB Principles of CMOS VLSI Design: A Systems Perspective, 2nd Ed., N. H. E. Weste and K. Eshraghian

More information

Digital Integrated Circuits A Design Perspective

Digital Integrated Circuits A Design Perspective Semiconductor Memories Adapted from Chapter 12 of Digital Integrated Circuits A Design Perspective Jan M. Rabaey et al. Copyright 2003 Prentice Hall/Pearson Outline Memory Classification Memory Architectures

More information

Digital Integrated Circuits A Design Perspective. Semiconductor. Memories. Memories

Digital Integrated Circuits A Design Perspective. Semiconductor. Memories. Memories Digital Integrated Circuits A Design Perspective Semiconductor Chapter Overview Memory Classification Memory Architectures The Memory Core Periphery Reliability Case Studies Semiconductor Memory Classification

More information

Error Correction Methods

Error Correction Methods Technologies and Services on igital Broadcasting (7) Error Correction Methods "Technologies and Services of igital Broadcasting" (in Japanese, ISBN4-339-06-) is published by CORONA publishing co., Ltd.

More information

ECE8771 Information Theory & Coding for Digital Communications Villanova University ECE Department Prof. Kevin M. Buckley Lecture Set 2 Block Codes

ECE8771 Information Theory & Coding for Digital Communications Villanova University ECE Department Prof. Kevin M. Buckley Lecture Set 2 Block Codes Kevin Buckley - 2010 109 ECE8771 Information Theory & Coding for Digital Communications Villanova University ECE Department Prof. Kevin M. Buckley Lecture Set 2 Block Codes m GF(2 ) adder m GF(2 ) multiplier

More information

Magnetic core memory (1951) cm 2 ( bit)

Magnetic core memory (1951) cm 2 ( bit) Magnetic core memory (1951) 16 16 cm 2 (128 128 bit) Semiconductor Memory Classification Read-Write Memory Non-Volatile Read-Write Memory Read-Only Memory Random Access Non-Random Access EPROM E 2 PROM

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

Making Error Correcting Codes Work for Flash Memory

Making Error Correcting Codes Work for Flash Memory Making Error Correcting Codes Work for Flash Memory Part I: Primer on ECC, basics of BCH and LDPC codes Lara Dolecek Laboratory for Robust Information Systems (LORIS) Center on Development of Emerging

More information

ECE 4450:427/527 - Computer Networks Spring 2017

ECE 4450:427/527 - Computer Networks Spring 2017 ECE 4450:427/527 - Computer Networks Spring 2017 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 5.2: Error Detection & Correction Dr. Nghi Tran (ECE-University of Akron) ECE 4450:427/527

More information

GMU, ECE 680 Physical VLSI Design 1

GMU, ECE 680 Physical VLSI Design 1 ECE680: Physical VLSI Design Chapter VIII Semiconductor Memory (chapter 12 in textbook) 1 Chapter Overview Memory Classification Memory Architectures The Memory Core Periphery Reliability Case Studies

More information

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) EECS150 - igital esign Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Nov 21, 2002 John Wawrzynek Fall 2002 EECS150 Lec26-ECC Page 1 Outline Error detection using parity Hamming

More information

The E8 Lattice and Error Correction in Multi-Level Flash Memory

The E8 Lattice and Error Correction in Multi-Level Flash Memory The E8 Lattice and Error Correction in Multi-Level Flash Memory Brian M. Kurkoski kurkoski@ice.uec.ac.jp University of Electro-Communications Tokyo, Japan ICC 2011 IEEE International Conference on Communications

More information

Lecture 12. Block Diagram

Lecture 12. Block Diagram Lecture 12 Goals Be able to encode using a linear block code Be able to decode a linear block code received over a binary symmetric channel or an additive white Gaussian channel XII-1 Block Diagram Data

More information

Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them.

Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them. ECE 7670 Lecture 5 Cyclic codes Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them. Reading: Chapter 5. 1 Cyclic codes Definition

More information

Graph-based codes for flash memory

Graph-based codes for flash memory 1/28 Graph-based codes for flash memory Discrete Mathematics Seminar September 3, 2013 Katie Haymaker Joint work with Professor Christine Kelley University of Nebraska-Lincoln 2/28 Outline 1 Background

More information

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then

More information

Lecture 25. Semiconductor Memories. Issues in Memory

Lecture 25. Semiconductor Memories. Issues in Memory Lecture 25 Semiconductor Memories Issues in Memory Memory Classification Memory Architectures TheMemoryCore Periphery 1 Semiconductor Memory Classification RWM NVRWM ROM Random Access Non-Random Access

More information

Fully-parallel linear error block coding and decoding a Boolean approach

Fully-parallel linear error block coding and decoding a Boolean approach Fully-parallel linear error block coding and decoding a Boolean approach Hermann Meuth, Hochschule Darmstadt Katrin Tschirpke, Hochschule Aschaffenburg 8th International Workshop on Boolean Problems, 28

More information

x n k m(x) ) Codewords can be characterized by (and errors detected by): c(x) mod g(x) = 0 c(x)h(x) = 0 mod (x n 1)

x n k m(x) ) Codewords can be characterized by (and errors detected by): c(x) mod g(x) = 0 c(x)h(x) = 0 mod (x n 1) Cyclic codes: review EE 387, Notes 15, Handout #26 A cyclic code is a LBC such that every cyclic shift of a codeword is a codeword. A cyclic code has generator polynomial g(x) that is a divisor of every

More information

Chapter 6. BCH Codes

Chapter 6. BCH Codes Chapter 6 BCH Codes Description of the Codes Decoding of the BCH Codes Outline Implementation of Galois Field Arithmetic Implementation of Error Correction Nonbinary BCH Codes and Reed-Solomon Codes Weight

More information

Binary Primitive BCH Codes. Decoding of the BCH Codes. Implementation of Galois Field Arithmetic. Implementation of Error Correction

Binary Primitive BCH Codes. Decoding of the BCH Codes. Implementation of Galois Field Arithmetic. Implementation of Error Correction BCH Codes Outline Binary Primitive BCH Codes Decoding of the BCH Codes Implementation of Galois Field Arithmetic Implementation of Error Correction Nonbinary BCH Codes and Reed-Solomon Codes Preface The

More information

Communication Theory II

Communication Theory II Communication Theory II Lecture 24: Error Correction Techniques Ahmed Elnakib, PhD Assistant Professor, Mansoura University, Egypt May 14 th, 2015 1 Error Correction Techniques olinear Block Code Cyclic

More information

Optical Storage Technology. Error Correction

Optical Storage Technology. Error Correction Optical Storage Technology Error Correction Introduction With analog audio, there is no opportunity for error correction. With digital audio, the nature of binary data lends itself to recovery in the event

More information

CS6304 / Analog and Digital Communication UNIT IV - SOURCE AND ERROR CONTROL CODING PART A 1. What is the use of error control coding? The main use of error control coding is to reduce the overall probability

More information

Cyclic codes. Vahid Meghdadi Reference: Error Correction Coding by Todd K. Moon. February 2008

Cyclic codes. Vahid Meghdadi Reference: Error Correction Coding by Todd K. Moon. February 2008 Cyclic codes Vahid Meghdadi Reference: Error Correction Coding by Todd K. Moon February 2008 1 Definitions Definition 1. A ring < R, +,. > is a set R with two binary operation + (addition) and. (multiplication)

More information

Error Detection & Correction

Error Detection & Correction Error Detection & Correction Error detection & correction noisy channels techniques in networking error detection error detection capability retransmition error correction reconstruction checksums redundancy

More information

Low Density Parity Check (LDPC) Codes and the Need for Stronger ECC. August 2011 Ravi Motwani, Zion Kwok, Scott Nelson

Low Density Parity Check (LDPC) Codes and the Need for Stronger ECC. August 2011 Ravi Motwani, Zion Kwok, Scott Nelson Low Density Parity Check (LDPC) Codes and the Need for Stronger ECC August 2011 Ravi Motwani, Zion Kwok, Scott Nelson Agenda NAND ECC History Soft Information What is soft information How do we obtain

More information

SEMICONDUCTOR MEMORIES

SEMICONDUCTOR MEMORIES SEMICONDUCTOR MEMORIES Semiconductor Memory Classification RWM NVRWM ROM Random Access Non-Random Access EPROM E 2 PROM Mask-Programmed Programmable (PROM) SRAM FIFO FLASH DRAM LIFO Shift Register CAM

More information

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs EECS150 - Digital Design Lecture 26 - Faults and Error Correction April 25, 2013 John Wawrzynek 1 Types of Faults in Digital Designs Design Bugs (function, timing, power draw) detected and corrected at

More information

Semiconductor Memory Classification

Semiconductor Memory Classification Semiconductor Memory Classification Read-Write Memory Non-Volatile Read-Write Memory Read-Only Memory Random Access Non-Random Access EPROM E 2 PROM Mask-Programmed Programmable (PROM) SRAM FIFO FLASH

More information

CMOS Digital Integrated Circuits Lec 13 Semiconductor Memories

CMOS Digital Integrated Circuits Lec 13 Semiconductor Memories Lec 13 Semiconductor Memories 1 Semiconductor Memory Types Semiconductor Memories Read/Write (R/W) Memory or Random Access Memory (RAM) Read-Only Memory (ROM) Dynamic RAM (DRAM) Static RAM (SRAM) 1. Mask

More information

Error Correction and Trellis Coding

Error Correction and Trellis Coding Advanced Signal Processing Winter Term 2001/2002 Digital Subscriber Lines (xdsl): Broadband Communication over Twisted Wire Pairs Error Correction and Trellis Coding Thomas Brandtner brandt@sbox.tugraz.at

More information

Fault Tolerance & Reliability CDA Chapter 2 Cyclic Polynomial Codes

Fault Tolerance & Reliability CDA Chapter 2 Cyclic Polynomial Codes Fault Tolerance & Reliability CDA 5140 Chapter 2 Cyclic Polynomial Codes - cylic code: special type of parity check code such that every cyclic shift of codeword is a codeword - for example, if (c n-1,

More information

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap EECS150 - Digital Design Lecture 26 Faults and Error Correction Nov. 26, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof.

More information

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 150 - Components and esign Techniques for igital Systems Lec 26 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler

More information

The BCH Bound. Background. Parity Check Matrix for BCH Code. Minimum Distance of Cyclic Codes

The BCH Bound. Background. Parity Check Matrix for BCH Code. Minimum Distance of Cyclic Codes S-723410 BCH and Reed-Solomon Codes 1 S-723410 BCH and Reed-Solomon Codes 3 Background The algebraic structure of linear codes and, in particular, cyclic linear codes, enables efficient encoding and decoding

More information

Error Correction Review

Error Correction Review Error Correction Review A single overall parity-check equation detects single errors. Hamming codes used m equations to correct one error in 2 m 1 bits. We can use nonbinary equations if we create symbols

More information

Semiconductor Memories

Semiconductor Memories Introduction Classification of Memory Devices "Combinational Logic" Read Write Memories Non Volatile RWM Read Only Memory Random Access Non-Random Access Static RAM FIFO Dynamic RAM LIFO Shift Register

More information

Semiconductor memories

Semiconductor memories Semiconductor memories Semiconductor Memories Data in Write Memory cell Read Data out Some design issues : How many cells? Function? Power consuption? Access type? How fast are read/write operations? Semiconductor

More information

An Introduction to Low Density Parity Check (LDPC) Codes

An Introduction to Low Density Parity Check (LDPC) Codes An Introduction to Low Density Parity Check (LDPC) Codes Jian Sun jian@csee.wvu.edu Wireless Communication Research Laboratory Lane Dept. of Comp. Sci. and Elec. Engr. West Virginia University June 3,

More information

N ano scale l S il ii lco i n B ased N o nvo lat l i atl ie l M em ory r Chungwoo Kim, Ph.D.

N ano scale l S il ii lco i n B ased N o nvo lat l i atl ie l M em ory r Chungwoo Kim, Ph.D. cw_kim@samsung.com Acknowledgements Collaboration Funding Outline Introduction Current research status Nano fabrication Process Nanoscale patterning SiN thin film Si Nanoparticle Nano devices Nanoscale

More information

Structured Low-Density Parity-Check Codes: Algebraic Constructions

Structured Low-Density Parity-Check Codes: Algebraic Constructions Structured Low-Density Parity-Check Codes: Algebraic Constructions Shu Lin Department of Electrical and Computer Engineering University of California, Davis Davis, California 95616 Email:shulin@ece.ucdavis.edu

More information

Semiconductor Memories

Semiconductor Memories !"#"$%&'()$*#+%$*,' -"+./"$0 1'!*0"#)'2*+03*.$"4* Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Semiconductor Memories December 20, 2002 !"#$%&'()*&'*+&, Memory Classification Memory Architectures

More information

Linear Cyclic Codes. Polynomial Word 1 + x + x x 4 + x 5 + x x + x

Linear Cyclic Codes. Polynomial Word 1 + x + x x 4 + x 5 + x x + x Coding Theory Massoud Malek Linear Cyclic Codes Polynomial and Words A polynomial of degree n over IK is a polynomial p(x) = a 0 + a 1 x + + a n 1 x n 1 + a n x n, where the coefficients a 0, a 1, a 2,,

More information

Physical Layer and Coding

Physical Layer and Coding Physical Layer and Coding Muriel Médard Professor EECS Overview A variety of physical media: copper, free space, optical fiber Unified way of addressing signals at the input and the output of these media:

More information

ECEN 604: Channel Coding for Communications

ECEN 604: Channel Coding for Communications ECEN 604: Channel Coding for Communications Lecture: Introduction to Cyclic Codes Henry D. Pfister Department of Electrical and Computer Engineering Texas A&M University ECEN 604: Channel Coding for Communications

More information

The Pennsylvania State University. The Graduate School. Department of Computer Science and Engineering

The Pennsylvania State University. The Graduate School. Department of Computer Science and Engineering The Pennsylvania State University The Graduate School Department of Computer Science and Engineering A SIMPLE AND FAST VECTOR SYMBOL REED-SOLOMON BURST ERROR DECODING METHOD A Thesis in Computer Science

More information

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D.

LOGIC CIRCUITS. Basic Experiment and Design of Electronics. Ho Kyung Kim, Ph.D. Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Digital IC packages TTL (transistor-transistor

More information

Coding for loss tolerant systems

Coding for loss tolerant systems Coding for loss tolerant systems Workshop APRETAF, 22 janvier 2009 Mathieu Cunche, Vincent Roca INRIA, équipe Planète INRIA Rhône-Alpes Mathieu Cunche, Vincent Roca The erasure channel Erasure codes Reed-Solomon

More information

Chapter 6 Reed-Solomon Codes. 6.1 Finite Field Algebra 6.2 Reed-Solomon Codes 6.3 Syndrome Based Decoding 6.4 Curve-Fitting Based Decoding

Chapter 6 Reed-Solomon Codes. 6.1 Finite Field Algebra 6.2 Reed-Solomon Codes 6.3 Syndrome Based Decoding 6.4 Curve-Fitting Based Decoding Chapter 6 Reed-Solomon Codes 6. Finite Field Algebra 6. Reed-Solomon Codes 6.3 Syndrome Based Decoding 6.4 Curve-Fitting Based Decoding 6. Finite Field Algebra Nonbinary codes: message and codeword symbols

More information

Design and Implementation of Reed-Solomon Decoder using Decomposed Inversion less Berlekamp-Massey Algorithm by

Design and Implementation of Reed-Solomon Decoder using Decomposed Inversion less Berlekamp-Massey Algorithm by Design and Implementation of Reed-Solomon Decoder using Decomposed Inversion less Berlekamp-Massey Algorithm by Hazem Abd Elall Ahmed Elsaid A Thesis Submitted to the Faculty of Engineering at Cairo University

More information

A Brief Encounter with Linear Codes

A Brief Encounter with Linear Codes Boise State University ScholarWorks Mathematics Undergraduate Theses Department of Mathematics 8-2014 A Brief Encounter with Linear Codes Brent El-Bakri Boise State University, brentelbakri@boisestate.edu

More information

Reed-Solomon codes. Chapter Linear codes over finite fields

Reed-Solomon codes. Chapter Linear codes over finite fields Chapter 8 Reed-Solomon codes In the previous chapter we discussed the properties of finite fields, and showed that there exists an essentially unique finite field F q with q = p m elements for any prime

More information

Implementation of Galois Field Arithmetic. Nonbinary BCH Codes and Reed-Solomon Codes

Implementation of Galois Field Arithmetic. Nonbinary BCH Codes and Reed-Solomon Codes BCH Codes Wireless Information Transmission System Lab Institute of Communications Engineering g National Sun Yat-sen University Outline Binary Primitive BCH Codes Decoding of the BCH Codes Implementation

More information

ELEC3227/4247 Mid term Quiz2 Solution with explanation

ELEC3227/4247 Mid term Quiz2 Solution with explanation ELEC7/447 Mid term Quiz Solution with explanation Ang Man Shun Department of Electrical and Electronic Engineering, University of Hong Kong Document creation date : 015 1 05 This document explain the solution

More information

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

ESE 570: Digital Integrated Circuits and VLSI Fundamentals ESE 570: Digital Integrated Circuits and VLSI Fundamentals Lec 21: April 4, 2017 Memory Overview, Memory Core Cells Penn ESE 570 Spring 2017 Khanna Today! Memory " Classification " ROM Memories " RAM Memory

More information

EE141- Fall 2002 Lecture 27. Memory EE141. Announcements. We finished all the labs No homework this week Projects are due next Tuesday 9am EE141

EE141- Fall 2002 Lecture 27. Memory EE141. Announcements. We finished all the labs No homework this week Projects are due next Tuesday 9am EE141 - Fall 2002 Lecture 27 Memory Announcements We finished all the labs No homework this week Projects are due next Tuesday 9am 1 Today s Lecture Memory:» SRAM» DRAM» Flash Memory 2 Floating-gate transistor

More information

ECC for NAND Flash. Osso Vahabzadeh. TexasLDPC Inc. Flash Memory Summit 2017 Santa Clara, CA 1

ECC for NAND Flash. Osso Vahabzadeh. TexasLDPC Inc. Flash Memory Summit 2017 Santa Clara, CA 1 ECC for NAND Flash Osso Vahabzadeh TexasLDPC Inc. 1 Overview Why Is Error Correction Needed in Flash Memories? Error Correction Codes Fundamentals Low-Density Parity-Check (LDPC) Codes LDPC Encoding and

More information

Memory Trend. Memory Architectures The Memory Core Periphery

Memory Trend. Memory Architectures The Memory Core Periphery Semiconductor Memories: an Introduction ti Talk Overview Memory Trend Memory Classification Memory Architectures The Memory Core Periphery Reliability Semiconductor Memory Trends (up to the 90 s) Memory

More information

Roll No. :... Invigilator's Signature :.. CS/B.TECH(ECE)/SEM-7/EC-703/ CODING & INFORMATION THEORY. Time Allotted : 3 Hours Full Marks : 70

Roll No. :... Invigilator's Signature :.. CS/B.TECH(ECE)/SEM-7/EC-703/ CODING & INFORMATION THEORY. Time Allotted : 3 Hours Full Marks : 70 Name : Roll No. :.... Invigilator's Signature :.. CS/B.TECH(ECE)/SEM-7/EC-703/2011-12 2011 CODING & INFORMATION THEORY Time Allotted : 3 Hours Full Marks : 70 The figures in the margin indicate full marks

More information

Cyclic codes: overview

Cyclic codes: overview Cyclic codes: overview EE 387, Notes 14, Handout #22 A linear block code is cyclic if the cyclic shift of a codeword is a codeword. Cyclic codes have many advantages. Elegant algebraic descriptions: c(x)

More information

Construction and Performance Evaluation of QC-LDPC Codes over Finite Fields

Construction and Performance Evaluation of QC-LDPC Codes over Finite Fields MEE10:83 Construction and Performance Evaluation of QC-LDPC Codes over Finite Fields Ihsan Ullah Sohail Noor This thesis is presented as part of the Degree of Master of Sciences in Electrical Engineering

More information

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road UNIT I

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road UNIT I SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road 517583 QUESTION BANK (DESCRIPTIVE) Subject with Code : CODING THEORY & TECHNIQUES(16EC3810) Course & Branch: M.Tech - DECS

More information

Optimum Soft Decision Decoding of Linear Block Codes

Optimum Soft Decision Decoding of Linear Block Codes Optimum Soft Decision Decoding of Linear Block Codes {m i } Channel encoder C=(C n-1,,c 0 ) BPSK S(t) (n,k,d) linear modulator block code Optimal receiver AWGN Assume that [n,k,d] linear block code C is

More information

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

ESE 570: Digital Integrated Circuits and VLSI Fundamentals ESE 570: Digital Integrated Circuits and VLSI Fundamentals Lec 19: March 29, 2018 Memory Overview, Memory Core Cells Today! Charge Leakage/Charge Sharing " Domino Logic Design Considerations! Logic Comparisons!

More information

Advanced Flash and Nano-Floating Gate Memories

Advanced Flash and Nano-Floating Gate Memories Advanced Flash and Nano-Floating Gate Memories Mater. Res. Soc. Symp. Proc. Vol. 1337 2011 Materials Research Society DOI: 10.1557/opl.2011.1028 Scaling Challenges for NAND and Replacement Memory Technology

More information

LOGIC CIRCUITS. Basic Experiment and Design of Electronics

LOGIC CIRCUITS. Basic Experiment and Design of Electronics Basic Experiment and Design of Electronics LOGIC CIRCUITS Ho Kyung Kim, Ph.D. hokyung@pusan.ac.kr School of Mechanical Engineering Pusan National University Outline Combinational logic circuits Output

More information

Chapter Overview. Memory Classification. Memory Architectures. The Memory Core. Periphery. Reliability. Memory

Chapter Overview. Memory Classification. Memory Architectures. The Memory Core. Periphery. Reliability. Memory SRAM Design Chapter Overview Classification Architectures The Core Periphery Reliability Semiconductor Classification RWM NVRWM ROM Random Access Non-Random Access EPROM E 2 PROM Mask-Programmed Programmable

More information

MATH3302 Coding Theory Problem Set The following ISBN was received with a smudge. What is the missing digit? x9139 9

MATH3302 Coding Theory Problem Set The following ISBN was received with a smudge. What is the missing digit? x9139 9 Problem Set 1 These questions are based on the material in Section 1: Introduction to coding theory. You do not need to submit your answers to any of these questions. 1. The following ISBN was received

More information

Introduction to Low-Density Parity Check Codes. Brian Kurkoski

Introduction to Low-Density Parity Check Codes. Brian Kurkoski Introduction to Low-Density Parity Check Codes Brian Kurkoski kurkoski@ice.uec.ac.jp Outline: Low Density Parity Check Codes Review block codes History Low Density Parity Check Codes Gallager s LDPC code

More information

Hw 6 and 7 Graded and available Project Phase 2 Graded Project Phase 3 Launch Today

Hw 6 and 7 Graded and available Project Phase 2 Graded Project Phase 3 Launch Today EECS141 1 Hw 8 Posted Last one to be graded Due Friday April 30 Hw 6 and 7 Graded and available Project Phase 2 Graded Project Phase 3 Launch Today EECS141 2 1 6 5 4 3 2 1 0 1.5 2 2.5 3 3.5 4 Frequency

More information

Chapter 5. Cyclic Codes

Chapter 5. Cyclic Codes Wireless Information Transmission System Lab. Chapter 5 Cyclic Codes Institute of Communications Engineering National Sun Yat-sen University Outlines Description of Cyclic Codes Generator and Parity-Check

More information

! Charge Leakage/Charge Sharing. " Domino Logic Design Considerations. ! Logic Comparisons. ! Memory. " Classification. " ROM Memories.

! Charge Leakage/Charge Sharing.  Domino Logic Design Considerations. ! Logic Comparisons. ! Memory.  Classification.  ROM Memories. ESE 57: Digital Integrated Circuits and VLSI Fundamentals Lec 9: March 9, 8 Memory Overview, Memory Core Cells Today! Charge Leakage/ " Domino Logic Design Considerations! Logic Comparisons! Memory " Classification

More information

ERROR CORRECTING CODES

ERROR CORRECTING CODES ERROR CORRECTING CODES To send a message of 0 s and 1 s from my computer on Earth to Mr. Spock s computer on the planet Vulcan we use codes which include redundancy to correct errors. n q Definition. A

More information

Minimized Logic Gates Number Of Components In The Chien Search Block For Reed-Solomon (RS)

Minimized Logic Gates Number Of Components In The Chien Search Block For Reed-Solomon (RS) Research Paper American Journal of Engineering Research (AJER) e-issn: 2320-0847 p-issn : 2320-0936 Volume-7, Issue-2, pp-110-116 www.ajer.org Open Access Minimized Logic Gates Number Of Components In

More information

Error Detection, Correction and Erasure Codes for Implementation in a Cluster File-system

Error Detection, Correction and Erasure Codes for Implementation in a Cluster File-system Error Detection, Correction and Erasure Codes for Implementation in a Cluster File-system Steve Baker December 6, 2011 Abstract. The evaluation of various error detection and correction algorithms and

More information

Outline. EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Simple Error Detection Coding

Outline. EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Simple Error Detection Coding Outline EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Error detection using arity Hamming code for error detection/correction Linear Feedback Shift

More information

Tackling Intracell Variability in TLC Flash Through Tensor Product Codes

Tackling Intracell Variability in TLC Flash Through Tensor Product Codes Tackling Intracell Variability in TLC Flash Through Tensor Product Codes Ryan Gabrys, Eitan Yaakobi, Laura Grupp, Steven Swanson, Lara Dolecek University of California, Los Angeles University of California,

More information

ECEN 655: Advanced Channel Coding

ECEN 655: Advanced Channel Coding ECEN 655: Advanced Channel Coding Course Introduction Henry D. Pfister Department of Electrical and Computer Engineering Texas A&M University ECEN 655: Advanced Channel Coding 1 / 19 Outline 1 History

More information

Quasi-cyclic Low Density Parity Check codes with high girth

Quasi-cyclic Low Density Parity Check codes with high girth Quasi-cyclic Low Density Parity Check codes with high girth, a work with Marta Rossi, Richard Bresnan, Massimilliano Sala Summer Doctoral School 2009 Groebner bases, Geometric codes and Order Domains Dept

More information

Chapter 7. Error Control Coding. 7.1 Historical background. Mikael Olofsson 2005

Chapter 7. Error Control Coding. 7.1 Historical background. Mikael Olofsson 2005 Chapter 7 Error Control Coding Mikael Olofsson 2005 We have seen in Chapters 4 through 6 how digital modulation can be used to control error probabilities. This gives us a digital channel that in each

More information

Semiconductor Memories

Semiconductor Memories Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Semiconductor Memories December 20, 2002 Chapter Overview Memory Classification Memory Architectures

More information

SPA decoding on the Tanner graph

SPA decoding on the Tanner graph SPA decoding on the Tanner graph x,(i) q j,l = P(v l = x check sums A l \ {h j } at the ith iteration} x,(i) σ j,l = Σ P(s = 0 v = x,{v : t B(h )\{l}}) q {vt : t B(h j )\{l}} j l t j t B(h j )\{l} j,t

More information

EE512: Error Control Coding

EE512: Error Control Coding EE51: Error Control Coding Solution for Assignment on BCH and RS Codes March, 007 1. To determine the dimension and generator polynomial of all narrow sense binary BCH codes of length n = 31, we have to

More information

Random Redundant Soft-In Soft-Out Decoding of Linear Block Codes

Random Redundant Soft-In Soft-Out Decoding of Linear Block Codes Random Redundant Soft-In Soft-Out Decoding of Linear Block Codes Thomas R. Halford and Keith M. Chugg Communication Sciences Institute University of Southern California Los Angeles, CA 90089-2565 Abstract

More information

Linear Cyclic Codes. Polynomial Word 1 + x + x x 4 + x 5 + x x + x f(x) = q(x)h(x) + r(x),

Linear Cyclic Codes. Polynomial Word 1 + x + x x 4 + x 5 + x x + x f(x) = q(x)h(x) + r(x), Coding Theory Massoud Malek Linear Cyclic Codes Polynomial and Words A polynomial of degree n over IK is a polynomial p(x) = a 0 + a 1 + + a n 1 x n 1 + a n x n, where the coefficients a 1, a 2,, a n are

More information

EE241 - Spring 2000 Advanced Digital Integrated Circuits. References

EE241 - Spring 2000 Advanced Digital Integrated Circuits. References EE241 - Spring 2000 Advanced Digital Integrated Circuits Lecture 26 Memory References Rabaey, Digital Integrated Circuits Memory Design and Evolution, VLSI Circuits Short Course, 1998.» Gillingham, Evolution

More information

Multimedia Systems WS 2010/2011

Multimedia Systems WS 2010/2011 Multimedia Systems WS 2010/2011 15.11.2010 M. Rahamatullah Khondoker (Room # 36/410 ) University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de

More information

EE141. EE141-Spring 2006 Digital Integrated Circuits. Administrative Stuff. Class Material. Flash Memory. Read-Only Memory Cells MOS OR ROM

EE141. EE141-Spring 2006 Digital Integrated Circuits. Administrative Stuff. Class Material. Flash Memory. Read-Only Memory Cells MOS OR ROM EE141-pring 2006 igital Integrated Circuits Lecture 29 Flash memory Administrative tuff reat job on projects and posters! Homework #10 due today Lab reports due this week Friday lab in 353 Final exam May

More information

Reliable MLC NAND Flash Memories Based on Nonlinear t-error-correcting Codes

Reliable MLC NAND Flash Memories Based on Nonlinear t-error-correcting Codes Reliable MLC NAND Flash Memories Based on Nonlinear t-error-correcting Codes Zhen Wang, Mark Karpovsky, Ajay Joshi Reliable Computing Laboratory, Boston University 8 Saint Mary s Street, Boston, MA, USA

More information

A 2-error Correcting Code

A 2-error Correcting Code A 2-error Correcting Code Basic Idea We will now try to generalize the idea used in Hamming decoding to obtain a linear code that is 2-error correcting. In the Hamming decoding scheme, the parity check

More information