On-Chip ECC for Low-Power SRAM Design

Slides:



Advertisements
Similar presentations
Mahdi Barhoush Mohammad Hanaysheh
Advertisements

Forward Error Correcting Codes for Forward Error Correcting Codes for Optical Communication Systems University of Technology Dept. of computer Engineering.
Error Control Code.
LEVERAGING ACCESS LOCALITY FOR THE EFFICIENT USE OF MULTIBIT ERROR-CORRECTING CODES IN L2 CACHE By Hongbin Sun, Nanning Zheng, and Tong Zhang Joseph Schneider.
Computer Networking Error Control Coding
L. J. Wang 1 Introduction to Reed-Solomon Coding ( Part I )
Digital Fountain Codes V. S
Information and Coding Theory
Ch 2.7 Error Detection & Correction CS-147 Tu Hoang.
The Performance of Polar Codes for Multi-level Flash Memories
RAID- Redundant Array of Inexpensive Drives. Purpose Provide faster data access and larger storage Provide data redundancy.
1 Error Correction Coding for Flash Memories Eitan Yaakobi, Jing Ma, Adrian Caulfield, Laura Grupp Steven Swanson, Paul H. Siegel, Jack K. Wolf Flash Memory.
Low Density Parity Check Codes LDPC ( Low Density Parity Check ) codes are a class of linear bock code. The term “Low Density” refers to the characteristic.
Error detection and correction
Error Resilience in a Generic Compressed Video Stream Transmitted over a Wireless Channel Muhammad Bilal
Coding for Flash Memories
COMPUTER ARCHITECTURE & OPERATIONS I Instructor: Hao Ji.
Ger man Aerospace Center Gothenburg, April, 2007 Coding Schemes for Crisscross Error Patterns Simon Plass, Gerd Richter, and A.J. Han Vinck.
Faculty of Computer Science © 2006 CMPUT 229 Special-Purpose Codes Binary, BCD, Hamming, Gray, EDC, ECC.
Error Detection and Correction Rizwan Rehman Centre for Computer Studies Dibrugarh University.
Hamming Code Rachel Ah Chuen. Basic concepts Networks must be able to transfer data from one device to another with complete accuracy. Data can be corrupted.
Memory and Programmable Logic
1 Failure Correction Techniques for Large Disk Array Garth A. Gibson, Lisa Hellerstein et al. University of California at Berkeley.
DIGITAL COMMUNICATION Error - Correction A.J. Han Vinck.
Block-LDPC: A Practical LDPC Coding System Design Approach
RAID REDUNDANT ARRAY OF INEXPENSIVE DISKS. Why RAID?
IVEC: Off-Chip Memory Integrity Protection for Both Security and Reliability Ruirui Huang, G. Edward Suh Cornell University.
2010 IEEE ICECS - Athens, Greece, December1 Using Flash memories as SIMO channels for extending the lifetime of Solid-State Drives Maria Varsamou.
Energy-Efficient Cache Design Using Variable-Strength Error-Correcting Codes Alaa R. Alameldeen, Ilya Wagner, Zeshan Chishti, Wei Wu,
PEDS: A PARALLEL ERROR DETECTION SCHEME FOR TCAM DEVICES Author: Anat Bremler-Barr, David Hay, Danny Hendler and Ron M. Roth Publisher/Conf.: IEEE INFOCOM.
COEN 180 Erasure Correcting, Error Detecting, and Error Correcting Codes.
COMP 170 L2 L17: Random Variables and Expectation Page 1.
Cyclic Redundancy Check CRC Chapter CYCLIC CODES Cyclic codes are special linear block codes with one extra property. In a cyclic code, if a codeword.
Practical Session 10 Error Detecting and Correcting Codes.
Basic Characteristics of Block Codes
Error Control Code. Widely used in many areas, like communications, DVD, data storage… In communications, because of noise, you can never be sure that.
Low-Power SRAM ECE 4332 Fall 2010 Team 2: Yanran Chen Cary Converse Chenqian Gan David Moore.
Information Theory Linear Block Codes Jalal Al Roumy.
Channel Coding Binit Mohanty Ketan Rajawat. Recap…  Information is transmitted through channels (eg. Wires, optical fibres and even air)  Channels are.
Overview All data can be corrupted, for reliable communications we must be able to detect and correct errors implemented at the data link and transport.
Part 1: Overview of Low Density Parity Check(LDPC) codes.
Error Detection. Data can be corrupted during transmission. Some applications require that errors be detected and corrected. An error-detecting code can.
Error Detection and Correction – Hamming Code
Digital Circuits Introduction Memory information storage a collection of cells store binary information RAM – Random-Access Memory read operation.
Error Control Coding. Purpose To detect and correct error(s) that is introduced during transmission of digital signal.
1 Product Codes An extension of the concept of parity to a large number of words of data 0110… … … … … … …101.
Simulation of Finite Geometry LDPC code on the Packet Erasure channel Wu Yuchun July 2007 Huawei Hisi Company Ltd.
Gunjeet Kaur Dronacharya Group of Institutions. Outline I Random-Access Memory Memory Decoding Error Detection and Correction Read-Only Memory Programmable.
Chi-Cheng Lin, Winona State University CS412 Introduction to Computer Networking & Telecommunication Error Correction/Detection.
Block Coded Modulation Tareq Elhabbash, Yousef Yazji, Mahmoud Amassi.
Class Report 林格名 : Reed Solomon Encoder. Reed-Solomom Error Correction When a codeword is decoded, there are three possible outcomes –If 2s + r < 2t (s.
RS – Reed Solomon Error correcting code. Error-correcting codes are clever ways of representing data so that one can recover the original information.
V. Non-Binary Codes: Introduction to Reed Solomon Codes
Hamming Code In 1950s: invented by Richard Hamming
A Case for Redundant Arrays of Inexpensive Disks (RAID)
Aya Fukami, Saugata Ghose, Yixin Luo, Yu Cai, Onur Mutlu
DATA COMMUNICATION AND NETWORKINGS
Representing characters
Rate 7/8 (1344,1176) LDPC code Date: Authors:
Coding and Interleaving
Progress report of LDPC codes
Interleaver-Division Multiple Access on the OR Channel
Information Redundancy Fault Tolerant Computing
The Data Link Layer Chapter
CS 325: CS Hardware and Software Organization and Architecture
Unequal Error Protection for Video Transmission over Wireless Channels
Bernoulli Trials Two Possible Outcomes Trials are independent.
Partial reversible data hiding scheme using (7, 4) hamming code
Chapter 10 Error Detection and Correction
Presentation transcript:

On-Chip ECC for Low-Power SRAM Design Hsin-I Liu EE 241 Project 5/9/2005

Outline Introduction to low-power SRAM Introduction on error correction code Analysis of data retention voltage in SRAM Simulations and results 5/9/2005 EE 241 Project

Low-Power SRAM Concept: Reduce the standby Vdd to data retention voltage (DRV) V2 (V) 5/9/2005 EE 241 Project

Modeling DRV DRV is modeled as i.i.d. gamma random variable 5/9/2005 SRAM Chip DRV DRV is modeled as i.i.d. gamma random variable 5/9/2005 EE 241 Project

Error Correction Code Adding parity check into information Non-trivial binary code Easy to encode Parameters fixed Hamming code, Golay code Linear block code Parameters flexible Reed-Solomon code Least parity overhead k information symbols n-k parity symbols n symbols 5/9/2005 EE 241 Project

Applying ECC to SRAM Latency In proportional to block size In this project: Hamming (15,11), Golay(23,12), and RS(15,11) Implementation characteristics are well-known 5/9/2005 EE 241 Project

Model Setup r redundant rows Memory size: M× N ECC block size: n info length: i N columns M rows Row redundancy: r rows Standby cycles: T n symbols ECC i info Metrics: 5/9/2005 EE 241 Project

N columns M rows r redundant rows n symbols ECC i info Model Analysis For certain standby voltage, retention ability can be modeled as Bernoulli r.v. For certain pe of a row, pe of a block can be derived Inside a block, pe of each cell can be found by solving binomial distribution Row redundancy can also be modeled as binomial r.v. 5/9/2005 EE 241 Project

Results 5/9/2005 EE 241 Project

Results (cont.) 5/9/2005 EE 241 Project

Results (cont.) 5/9/2005 EE 241 Project Number of columns Standby Voltage (mV) Hamming RS Golay 256 201.36 194.78 176.36 512 206.53 198.59 179.26 1024 210.04 201.76 182.12 Hardware overhead (gates/bit) 9.091 22.727 58.333 5/9/2005 EE 241 Project

Conclusion Hamming code introduces the least overhead For short waiting time, Hamming code can reduce Eb from 50% to 2x As waiting time goes to infinity, Reed-Solomon saves the power by 3x 5/9/2005 EE 241 Project