1 Amit Berman Reliable Architecture for Flash Memory Joint work with Uri C. Weiser, Acknowledgement: thanks to Idit Keidar Department of Electrical Engineering,

Slides:



Advertisements
Similar presentations
Principles & Applications
Advertisements

Computer Organization and Architecture
+ CS 325: CS Hardware and Software Organization and Architecture Internal Memory.
LOGO.  Concept:  Is read-only memory.  Do not lose data when power is lost.  ROM memory is used to produce chips with integrated.
EKT 221 : DIGITAL 2. Today’s Outline  Dynamic RAM (DRAM)  DRAM Cell – The Hydraulic Analogy  DRAM Block Diagram  Types of DRAM.
What is memory? Memory is used to store information within a computer, either programs or data. Programs and data cannot be used directly from a disk or.
Overview Memory definitions Random Access Memory (RAM)
Avishai Wool lecture Introduction to Systems Programming Lecture 8.3 Non-volatile Memory Flash.
Introduction to Microprocessors Number Systems and Conversions No /6/00 Chapter 1: Introduction to 68HC11 The 68HC11 Microcontroller.
Memory Organization.
Registers  Flip-flops are available in a variety of configurations. A simple one with two independent D flip-flops with clear and preset signals is illustrated.
Computer ArchitectureFall 2008 © November 12, 2007 Nael Abu-Ghazaleh Lecture 24 Disk IO.
Embedded Real-Time Systems Design Selecting memory.
Computer Organization and Architecture
Chapter 5 Internal Memory
Memory Devices Wen-Hung Liao, Ph.D..
Memory Key component of a computer system is its memory system to store programs and data. ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides12.ppt.
Data Storage Technology
Chapter 5 Data Storage Technology 2005 IS112. Chapter goals Describe the distinguishing characteristics of primary and secondary storage Describe the.
Memory and Storage - Sheetal Gosrani. Overview Memory Hierarchy RAM Memory Chip Organization ROM Flash Memory.
Intro to Cache Memory By david hsu. Examples of memory Paper and writing, books Neon signs Cassettes and other magnetic tape memory Abacus Art material.
Computer Architecture Part III-A: Memory. A Quote on Memory “With 1 MB RAM, we had a memory capacity which will NEVER be fully utilized” - Bill Gates.
Module IV Memory Organization.
EE 261 – Introduction to Logic Circuits Module #8 Page 1 EE 261 – Introduction to Logic Circuits Module #8 – Programmable Logic & Memory Topics A.Programmable.
2. Memory. Main memory – speed & types Organization of RAM RAM – Random Access Mem Static RAM [SRAM] - In SRAM, a bit of data is stored using the state.
Chapter 6 RAID. Chapter 6 — Storage and Other I/O Topics — 2 RAID Redundant Array of Inexpensive (Independent) Disks Use multiple smaller disks (c.f.
Memory and Programmable Logic
I/O – Chapter 8 Introduction Disk Storage and Dependability – 8.2 Buses and other connectors – 8.4 I/O performance measures – 8.6.
Lecture 9 of Advanced Databases Storage and File Structure (Part II) Instructor: Mr.Ahmed Al Astal.
CSCI 4717/5717 Computer Architecture
1 Microprocessor-based systems Course 6 Memory design.
CS1104: Computer Organisation School of Computing National University of Singapore.
Chapter 3 Digital Logic Structures. Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 3-2 Combinational vs.
The Memory Hierarchy 21/05/2009Lecture 32_CA&O_Engr Umbreen Sabir.
Chapter 3 Internal Memory. Objectives  To describe the types of memory used for the main memory  To discuss about errors and error corrections in the.
Design of Advanced Erase Mechanism for NOR Flash EEPROM Amit Berman, June 2006 Intel Corporation.
Memory Cell Operation.
Memory 10/27/081ECE Lecture. Memory Memory Types Using memory to implement logic functions 10/27/082ECE Lecture.
Computer Architecture Lecture 32 Fasih ur Rehman.
Computer Architecture Lecture 24 Fasih ur Rehman.
Electronic Analog Computer Dr. Amin Danial Asham by.
Semiconductor Memory Types
Digital Circuits Introduction Memory information storage a collection of cells store binary information RAM – Random-Access Memory read operation.
Coding and Algorithms for Memories Lecture 7 1.
Memory 2. Activity 1 Research / Revise what cache memory is. 5 minutes.
Chapter 5 Internal Memory. contents  Semiconductor main memory - organisation - organisation - DRAM and SRAM - DRAM and SRAM - types of ROM - types of.
Gunjeet Kaur Dronacharya Group of Institutions. Outline I Random-Access Memory Memory Decoding Error Detection and Correction Read-Only Memory Programmable.
Computer Architecture Chapter (5): Internal Memory
XIP – eXecute In Place Jiyong Park. 2 Contents Flash Memory How to Use Flash Memory Flash Translation Layers (Traditional) JFFS JFFS2 eXecute.
I/O Errors 1 Computer Organization II © McQuain RAID Redundant Array of Inexpensive (Independent) Disks – Use multiple smaller disks (c.f.
Index What is an Interface Pins of 8085 used in Interfacing Memory – Microprocessor Interface I/O – Microprocessor Interface Basic RAM Cells Stack Memory.
Chapter 5 - Internal Memory 5.1 Semiconductor Main Memory 5.2 Error Correction 5.3 Advanced DRAM Organization.
Components of Computer. Memory Unit Most important part of the computer Used to store data and instructions that are currently in use Main memory consists.
COS 518: Advanced Computer Systems Lecture 8 Michael Freedman
Internal Memory.
Principles & Applications
Welcome.
Electronics Technology
Subject Name: Embedded system Design Subject Code: 10EC74
COS 518: Advanced Computer Systems Lecture 8 Michael Freedman
William Stallings Computer Organization and Architecture 7th Edition
Programming Logic and Design Fourth Edition, Comprehensive
BIC 10503: COMPUTER ARCHITECTURE
Kinds of memory in human and machine
MICROPROCESSOR MEMORY ORGANIZATION
COS 518: Advanced Computer Systems Lecture 9 Michael Freedman
Presentation transcript:

1 Amit Berman Reliable Architecture for Flash Memory Joint work with Uri C. Weiser, Acknowledgement: thanks to Idit Keidar Department of Electrical Engineering, Technion – Israel Institute of Technology

2 Agenda  Reliability in Flash Memory  “Reliable Architecture”  The advantages of “Reliable Architecture” Density Performance  Conclusions

3 Introduction  Reliability: a crucial factor in flash memory design  Quantification: Guaranteed # of times that a memory cell can be written and erased before an error occurs Our goal is to reduce the number of physical write/erase operations of the flash memory cells Basic physical characteristic of flash memory cell: every write/erase operation, the memory cell is degraded Eventually, there would be a data error in the memory cell, proportional to the number of write/erase operations Analogy : Flash memory cell as a glass of water Level The amount of water in the glass represents the information Each time we will fill and empty the glass – it will be cracked

4 1 bit per cell (1BPC) Ref # of cells Vt Erased Programmed :Level 1 0 :Bit Empty Full Ref 2 # of cells Vt :Level Ref 3 Ref :Bit Level Reliability is important for density  Bad reliability low density  Good reliability high density 2 bits per cell (2BPC) “fewer glass cracks, low water leakage”  we can distinguish between more levels Reliable Architecture technique increase the reliability We can use it to increase the density and keep constant reliability Increase density  decrease reliability

5 Reliability is important for performance Ref 2 # of cells Vt :Level Ref 3 Ref :Bit  Bad reliability low writing speed  Good reliability high writing speed Ref 2 # of cells Vt :Level Ref 3 Ref :Bit Level “glass cracks makes it hard to fill it”

6 Related Work  Coding  MFG Process * M. Schwartz, S. Bruck “Rank Modulation for Flash Memories” * M. Yanai, I. Bloom “NROM memory cell design”

7 Observation  Flash data is erased in blocks (e.g. 64KB)  There are redundant write and erase operations The memory needs to be erased in order to write new information Erase operation lasts long (e.g. 1.5mS)  cells are erased in groups erase write The cell returned to its original level

8 Observation: Example Vt Time T3 T2 T1  There are redundant write and erase operations At time T1, information is written Block is erased to enable new write New write is same as the initial value In this process there are total 2 writes and 1 erase operations, can we reduce it to 1 write operation?

9  New concept of operating flash memory Common Architecture vs. Reliable Architecture Reliable Architecture Write Re-write Erase Virtual Erase Read (no change)

10 Flash Re-write Concept read the stored data, compare it to the input data and adjust for the difference if exists Re-write concept read and adjust If equal: do nothing If difference: adjust

11  Virtual erase process: when erase is applied to a certain block/page  Mark a flag in the spare memory array for erase indication Virtual erase concept  Data is not physically erased Non-Volatile Memory Array Spare NVM Valid Indication Control Logic Analog HV I/O erase virtual erase flag  Construct a “spare memory array” that contain information about erase status

12 Reliable Architecture: changes to the current architecture  Target: Avoid redundant write and erase operations  Changes: Arrange the memory array so that erase in a single cell is enabled Change the control logic for the new operations Add spare memory cells for virtual erase operation

13 Analysis : symmetric binary source NT=# of bits with no transition l= # of flash memory levels n= # of bits in a page While applying memory write, average # of cells with no transition: Average # of cells with write transition: Average # of cells with erase transition:

14 Example 25% of the memory cells have write transition 25% of the memory cells have erase transition For 2-levels flash with random input data source:  Saves 50% of write/erase operations, x2 improvement  Each writing operation 50% of the memory cells hold the same value * Taking into account Gaussian distribution

15 Reliability Improvement Factor (RIF) while using Reliable Architecture RIF is lower bound since we also save some transitions between levels

16 Performance analysis Erase Operation ~1.5ms Write Operation ~0.8ms (2KB page)  In a large page size, the write performance is better then the one in common architecture  On small page size, the erase transition reduce performance Writing is done sequentially due to current consumption limitations Erase can be done in parallel, for any # of memory cells  The Reliable Architecture re-write concept uses the erase operation on some of the cells  Reliable architecture has advantage in large page size:

17 Performance analysis  Modeling results of flash memory cells, write and erase operations with varying page size, utilizing a symmetric data source *MATLAB Reliable Architecture is effective in large page size (>8KB)

18 Summary  Reliable Architecture improves reliability by the elimination of the redundant write/erase operations to the flash memory  Reliable Architecture statistically improves flash memory reliability  Reliable Architecture is improving the write performance in page size >8KB in a smaller page size, write performance is reduced Can be used to increase reliability Can be use to increase density and keep reliability constant

19 Questions? High Density Low $/MB Nonvolatile Updateable ROM EPROM DRAM EEPROM SRAM