KR20090080634A - 메모리 프로그래밍 장치 및 방법 - Google Patents

메모리 프로그래밍 장치 및 방법 Download PDF

Info

Publication number
KR20090080634A
KR20090080634A KR1020080006501A KR20080006501A KR20090080634A KR 20090080634 A KR20090080634 A KR 20090080634A KR 1020080006501 A KR1020080006501 A KR 1020080006501A KR 20080006501 A KR20080006501 A KR 20080006501A KR 20090080634 A KR20090080634 A KR 20090080634A
Authority
KR
South Korea
Prior art keywords
storage unit
data
programming
index
unit
Prior art date
Application number
KR1020080006501A
Other languages
English (en)
Other versions
KR101368694B1 (ko
Inventor
조경래
공준진
송승환
박윤동
김종한
김재홍
이영환
은희석
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020080006501A priority Critical patent/KR101368694B1/ko
Priority to US12/213,944 priority patent/US7738293B2/en
Priority to PCT/KR2008/004530 priority patent/WO2009093786A1/en
Priority to JP2010543040A priority patent/JP5351176B2/ja
Publication of KR20090080634A publication Critical patent/KR20090080634A/ko
Priority to US12/801,532 priority patent/US8279668B2/en
Application granted granted Critical
Publication of KR101368694B1 publication Critical patent/KR101368694B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2216/00Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
    • G11C2216/12Reading and writing aspects of erasable programmable read-only memories
    • G11C2216/14Circuits or methods to write a page or sector of information simultaneously into a nonvolatile memory, typically a complete row or word line in flash memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

메모리 프로그래밍 장치 및 방법이 제공된다. 본 발명의 메모리 프로그래밍 장치는 데이터 페이지를 저장하는 데이터 저장부, 상기 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성하는 제1 계수부, 상기 생성된 인덱스 정보를 저장하는 인덱스 저장부, 및 상기 데이터 저장부에 상기 데이터 페이지를 저장하고, 상기 인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 프로그래밍부를 포함하는 것을 특징으로 하며, 이를 통해 메모리 셀의 문턱 전압의 산포 상태를 모니터할 수 있다.
멀티 비트 셀, 멀티 레벨 셀, 멀티 비트 프로그래밍, 산포 상태

Description

메모리 프로그래밍 장치 및 방법 {APPARATUS AND METHOD OF MEMORY PROGRAMMING}
본 발명은 메모리 장치에 데이터를 프로그래밍하는 장치 및 방법에 관한 것으로, 보다 상세하게는 멀티 레벨 셀(Multi-level Cell, MLC) 메모리 장치에 데이터를 멀티 레벨(또는 멀티 비트) 프로그래밍하는 장치 및 방법에 관한 것이다.
싱글 레벨 셀(SLC: single-level cell) 메모리는 하나의 메모리 셀에 1비트의 데이터를 저장하는 메모리이다. 싱글 레벨 셀 메모리는 싱글 비트 셀(SBC: single-bit cell) 메모리로도 불린다. 싱글 레벨 셀 메모리에서는 1비트의 데이터는 메모리 셀에 프로그램된 문턱 전압(threshold voltage)에 의하여 구분되는 2개의 산포(distribution)에 포함되는 전압으로 저장되고, 판독된다. 싱글 레벨 셀 메모리들 간의 미세한 전기적 특성의 차이로 인해 프로그램된 문턱 전압은 일정한 범위의 산포를 가지게 된다. 예를 들어, 메모리 셀로부터 판독된 전압이 0.5-1.5 볼트인 경우에는 상기 메모리 셀에 저장된 데이터는 논리 "1"이고, 메모리 셀로부터 판독된 전압이 2.5-3.5 볼트인 경우에는 상기 메모리 셀에 저장된 데이터는 논리 "0"으로 해석된다. 메모리 셀에 저장된 데이터는 판독 동작 시 셀 전류/전압의 차이에 의하여 구분된다.
한편 메모리의 고집적화 요구에 응답하여 하나의 메모리 셀에 2비트 이상의 데이터를 저장할 수 있는 멀티 레벨 셀(MLC: multi-level cell) 메모리가 제안되었다. 멀티 레벨 셀 메모리는 멀티 비트 셀(MBC: multi-bit cell) 메모리로도 불린다. 그러나, 하나의 메모리 셀에 저장하는 비트의 수가 증가할수록 신뢰성은 떨어지고, 판독 실패율(read failure rate)은 증가하게 된다. 하나의 메모리 셀에 m개의 비트를 저장하려면, 2m개의 산포(distribution)를 형성하여야 한다. 그러나, 메모리의 전압 윈도우(voltage window)는 제한되어 있기 때문에, m이 증가함에 따라 인접한 비트들 간의 문턱 전압(threshold)의 차이는 줄어들게 되고, 이에 따라 판독 실패율이 증가한다. 이러한 이유로 종래기술에 따르면, 멀티 레벨 셀(MLC: multi-level cell) 메모리를 이용한 저장 밀도의 향상이 용이하지 않았다.
본 명세서에서는, 멀티 레벨 셀 메모리를 이용하여 데이터를 저장하는 과정 및 저장된 데이터를 판독하는 과정에서 판독 실패율을 줄이는 메모리 프로그래밍 장치 및 방법이 제안된다.
본 발명은 멀티 레벨 셀 메모리에 새로운 멀티 레벨(멀티 비트) 프로그래밍 기법을 적용함으로써, 메모리 셀에 저장된 데이터를 읽을 때의 오류를 최소화할 수 있는 프로그래밍 장치 및 방법을 제공한다.
또한, 본 발명은 메모리 셀에 형성된 문턱 전압 상태의 변화를 모니터할 수 있는 프로그래밍 장치 및 방법을 제공한다. 이 때, 본 발명은 데이터 영역에 형성된 문턱 전압 상태의 변화를 직접적으로 모니터링함으로써, 신뢰성이 보다 높은 모니터링 결과를 제공할 수 있다.
또한, 본 발명은 메모리 셀에 형성된 문턱 전압 상태의 변화를 모니터링함에 있어, 필요한 메모리 면적을 감소시키는 프로그래밍 장치 및 방법을 제공한다.
또한, 본 발명은 메모리 셀에 저장된 데이터를 읽을 때의 오류를 최소화함에 있어, 필요한 메모리 면적을 감소시키는 프로그래밍 장치 및 방법을 제공한다.
본 발명의 일 측면에 따른 메모리 프로그래밍 장치는 데이터 페이지를 저장하는 데이터 저장부, 상기 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성하는 제1 계수부, 상기 생성된 인덱스 정보를 저장하는 인덱스 저장부, 및 상기 데이터 저장부에 상기 데이터 페이지를 저장하고, 상기 인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 프로그래밍부를 포함하는 것을 특징으로 한다.
또한, 본 발명의 다른 측면에 따른 메모리 프로그래밍 방법은 데이터 저장부에 저장될 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성하는 단계, 상기 데이터 저장부에 상기 데이터 페이지를 저장하는 단계, 및 인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 단계를 포함하는 것을 특징으로 한다.
이하에서, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
본 발명의 메모리 프로그래밍 방법이 적용되는 메모리 셀은 데이터 필드(data field) 및 인덱스 필드(index field)로 구분된다.
데이터 필드에는 유효한 데이터가 저장된다. 인덱스 필드에는 데이터 필드의 메모리 셀들이 프로그램될 때, 데이터 필드의 메모리 셀들의 문턱 전압 상태를 나타낼 수 있는 정보가 저장된다.
일반적으로 비휘발성 메모리(non-volatile memory)에서의 프로그래밍은, 메모리 셀의 문턱 전압을 변화시킴으로써 수행된다. 메모리 셀의 문턱 전압은 메모리 셀에 저장된 데이터를 나타낸다. 메모리 셀의 문턱 전압은 일정 범위의 오차를 가지고 산포 상태(distribution state)를 가지게 된다.
비휘발성 메모리에 데이터가 저장된 후, 부유 게이트(floating gate)에서의 전하 손실(charge loss) 등의 메커니즘에 의하여 프로그램된 메모리 셀의 문턱 전압이 변화될 수 있다.
본 발명은 메모리 셀의 문턱 전압의 변화를 모니터하기 위한 메모리 프로그 래밍 장치 및 방법을 제공하고, 메모리 셀에 저장된 데이터의 오류를 검증함에 있어서 면적 오버헤드를 최소화할 수 있는 메모리 프로그래밍 장치 및 방법을 제공한다.
도 1은 본 발명의 일 실시예에 따른 메모리 프로그래밍 장치(100)를 도시하는 도면이다.
도 1을 참조하면, 메모리 프로그래밍 장치(100)는 데이터 저장부(110), 인덱스 저장부(120), 제1 계수부(130) 및 프로그래밍부(140)를 포함한다.
데이터 저장부(110)는 상기의 데이터 필드에 대응하는 구성 요소이며, 데이터 저장부(110)에는 데이터 페이지가 저장된다.
데이터 페이지는 유효한 데이터가 프로그램되는 하나의 단위이다. 실시예에 따라서는, 하나의 워드 라인에 연결된 메모리 셀들에 동시에 프로그램되는 데이터의 집합을 의미할 수 있다.
제1 계수부(130)는 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성한다.
인덱스 저장부(120)에는 생성된 인덱스 정보가 저장된다.
프로그래밍부(140)는 데이터 저장부(110)에 데이터 페이지를 저장하고, 인덱스 저장부(120)에 인덱스 정보를 저장한다.
데이터 저장부(110) 및 인덱스 저장부(120)는 복수의 멀티 비트 셀들을 포함할 수 있다. 하나의 멀티 비트 셀은 멀티 비트 데이터를 저장할 수 있다.
하나의 멀티 비트 셀에 데이터를 저장(프로그램)하는 과정은 하나의 멀티 비 트 셀의 문턱 전압을 변화시킬 수 있다. 하나의 멀티 비트 셀이 최대 N비트의 데이터를 저장할 수 있다면, 하나의 멀티 비트 셀에 형성될 수 있는 문턱 전압 레벨의 수는 2N 개이다.
데이터를 저장(프로그램)하는 과정은 데이터를 읽는 과정에 비해 긴 시간을 필요로 할 수 있으므로, 메모리 프로그래밍 장치(100)는 물리적으로 인접한 다수의 멀티 비트 셀들을 동시에 프로그램함으로써 멀티 비트 셀들 전체에 대한 프로그램 시간을 단축할 수 있다. 이 때, 동시에 프로그램되는 물리적인 멀티 비트 셀들의 집합을 페이지라 하며, 하나의 페이지는 하나의 워드 라인(word line)에 연결된 멀티 비트 셀들의 집합일 수 있다.
본 명세서에서는, 설명의 편의상 하나의 페이지가 데이터 저장부(110) 및 인덱스 저장부(120)에 걸쳐 있는 경우를 가정하며, 하나의 페이지 중 데이터 저장부(110)에 포함되는 영역을 주 페이지, 하나의 페이지 중 인덱스 저장부(120)에 포함되는 영역을 보조 페이지라 명명하기로 한다.
주 페이지 및 보조 페이지는 설명의 편의상 명명된 것으로, 이들 명칭으로 인해 본 발명에 의해 청구하고자 하는 내용이 제한적으로 해석되어서는 안 될 것이다.
주 페이지가 최대 N비트를 저장할 수 있는 멀티 비트 셀들로 이루어져 있다면, 주 페이지는 최대 N개의 데이터 페이지들을 저장할 수 있다.
프로그래밍부(140)는 하나의 주 페이지에 N개의 데이터 페이지를 저장하기 위해서는 N개의 페이지 프로그래밍 동작(page programming operation)들을 수행할 수 있다. 페이지 프로그래밍 동작들 각각은 하나의 데이터 페이지가 하나의 주 페이지에 저장되는 과정일 수 있다.
하나의 멀티 비트 셀은 N번의 페이지 프로그래밍 동작 후에 2N개의 문턱 전압 레벨들 중 어느 하나를 가질 수 있다. 많은 수의 멀티 비트 셀들을 포함하는 하나의 주 페이지는 N번의 페이지 프로그래밍 동작 후에 2N 개의 문턱 전압 레벨들을 가질 수 있다. 실제로는 멀티 비트 셀들 각각의 특성이 미세하게 다르므로, 같은 데이터를 저장하는 멀티 비트 셀들의 문턱 전압 레벨은 차이가 있을 수 있다. 이러한 멀티 비트 셀들의 문턱 전압 레벨의 차이로 인해 하나의 주 페이지 내의 멀티 비트 셀들의 문턱 전압은 2N 개의 산포 상태를 형성할 수 있다.
실시예에 따라서는, 프로그래밍부(140)는 데이터 페이지 별로 프로그래밍 동작을 수행하지 않고 한번의 프로그래밍 동작 시퀀스에 따라 멀티 비트 데이터를 멀티 비트 셀에 저장할 수 있다. 이 때, 프로그래밍부(140)는 프로그래밍 동작 시퀀스를 수행하는 동안에 생성된 인덱스 정보를 인덱스 저장부(120)에 저장할 수 있다.
본 발명의 다른 실시예에 따라서는, 프로그래밍부(140)는 데이터 저장부(110)에 데이터 페이지를 저장하는 동안 인덱스 저장부(120)에 인덱스 정보를 저장할 수 있다.
본 발명의 또 다른 실시예에 따라서는, 프로그래밍부(140)는 데이터 저장 부(110)의 주 페이지에는 N개의 데이터 페이지들을 제1 밀도로 저장하고, 인덱스 저장부(120)의 보조 페이지에는 인덱스 정보를 제2 밀도로 저장할 수 있다. 이 때, 제1 밀도는 N비트이고, 제2 밀도는 N비트보다 작은 값일 수 있다.
이 때, 프로그래밍부(140)는 N번의 페이지 프로그래밍 동작들을 수행하여 N개의 데이터 페이지들을 데이터 저장부(110)에 저장할 수 있다. 프로그래밍부(140)는, N번의 페이지 프로그래밍 동작들 중 마지막 페이지 프로그래밍 동작인 N번째 페이지 프로그래밍 동작이 수행되는 동안에, 인덱스 정보를 인덱스 저장부(120)에 저장할 수 있다. 프로그래밍부(140)는, 이러한 방법을 이용하여, 인덱스 정보의 저장 과정이 데이터 저장부(110)에 미치는 영향을 최소화할 수 있다.
실시예에 따라서는, 프로그래밍부(140)는 한번의 프로그래밍 동작 시퀀스를 수행하여 데이터와 인덱스 정보를 각각 데이터 저장부(110)와 인덱스 저장부(120)에 저장할 수 있다. 이 때, 인덱스 저장부(120)는 인덱스 정보를 저장하는 과정은 데이터가 데이터 저장부(110)에 저장되는 동안 일어날 수 있다. 프로그래밍부(140)는 동일한 시간 구간에 데이터 및 인덱스 정보를 저장함으로써 인덱스 정보의 저장 과정이 데이터 저장부(110)에 미치는 영향을 최소화할 수 있다. 이 때, 인덱스 정보의 저장 과정은 N번의 페이지 프로그래밍 동작이 수행되는 경우의 마지막 페이지 프로그래밍 동작과 유사하게 수행될 수 있다.
본 발명의 또 다른 실시예에 따라서는, 프로그래밍부(140)는 N번의 페이지 프로그래밍 동작들 각각을 수행하는 동안에 인덱스 정보를 인덱스 저장부(120)에 순차적으로 저장할 수 있다. 프로그래밍부(140)는, 이러한 방법을 이용하여, 인덱 스 정보의 저장 과정에서 인덱스 저장부(120)의 셀들의 문턱 전압이 급격하게 변화하는 것을 방지하고, 데이터 저장부(110)의 셀들의 문턱 전압의 변화를 최소화할 수 있다.
본 발명의 또 다른 실시예에 따라서는, 프로그래밍부(140)는 데이터 저장부(110) 및 인덱스 저장부(120)에 동일한 프로그래밍 메커니즘을 이용하여 데이터 페이지 및 인덱스 정보를 저장할 수 있다. 그러나 또 다른 실시예에 따라서는, 프로그래밍부(140)는 데이터 저장부(110)에는 제1 프로그래밍 메커니즘을 이용하여 데이터 페이지를 저장하고, 인덱스 저장부(120)에는 제2 프로그래밍 메커니즘을 이용하여 인덱스 정보를 저장할 수도 있다.
프로그래밍부(140)는 데이터 저장부(110)에는 제1 검증 전압 집합을 이용하여 데이터 페이지를 저장하고, 인덱스 저장부(120)에는 제2 검증 전압 집합을 이용하여 인덱스 정보를 저장할 수 있다.
본 발명의 또 다른 실시예에 따라서는, 프로그래밍부(140)는 소거 조건에 따른 전압을 인가함에 따라 데이터 저장부(110) 및 인덱스 저장부(120)에 저장된 모든 데이터를 소거(erase)할 수 있다.
이 때, 프로그래밍부(140)는 데이터 저장부(110) 및 인덱스 저장부(120)에 저장된 데이터를 소거하기 전에 데이터 저장부(110) 및 인덱스 저장부(120)의 메모리 셀들 중에서 프로그램되지 않은 셀을 검출할 수 있다. 프로그래밍부(140)는 검출된 프로그램되지 않은 셀들을 프리 프로그래밍한 후, 데이터 저장부(110) 및 인덱스 저장부(120)를 소거할 수 있다. 프리 프로그래밍 과정은 검출된 프로그램되 지 않은 셀들을 특정 문턱 전압까지 프로그래밍하는 과정일 수 있다.
메모리 프로그래밍 장치(100)는, 이 같은 프리 프로그래밍 과정에 의하여, 데이터 저장부(110) 및 인덱스 저장부(120) 내의 모든 메모리 셀들의 프로그램/소거 사이클(Program/Erase Cycle, P/E Cycle) 수를 평활화(equalize)할 수 있다.
메모리 셀들의 P/E 사이클 수는 메모리 셀들의 프로그래밍 특성(programming characteristic) 및 전하 유지 특성(charge retention characteristic)에 영향을 미칠 수 있다. 메모리 프로그래밍 장치(100)는 메모리 셀들의 P/E 사이클 수를 평활화함으로써 메모리 셀들의 프로그래밍 특성 및 전하 유지 특성을 평활화할 수 있다.
본 발명의 또 다른 실시예에 따른 메모리 프로그래밍 장치(100)는 2N 개의 문턱 전압 상태들 중에서 하나 이상의 기준 전압 상태를 선택하는 기준 선택부(도시되지 않음)를 더 포함할 수 있다. 기준 선택부는 데이터 페이지에 의하여 메모리 셀들 각각에 형성되는 문턱 전압의 산포 상태를 참조하여 기준 전압 상태를 선택할 수 있다.
예를 들어, 기준 선택부는 산포 상태들을 높은 문턱 전압 영역, 중간 문턱 전압 영역, 낮은 문턱 전압 영역으로 나누어 각 영역으로부터 하나씩 기준 문턱 전압 상태를 선택할 수 있다. 높은 문턱 전압 영역에서의 문턱 전압의 변화가 중요한 환경에서는, 기준 선택부는 높은 문턱 전압 영역에서 복수의 기준 문턱 전압 상태를 선택할 수도 있다.
제1 계수부(130)는 데이터 페이지로부터 기준 문턱 전압 상태들 각각이 검출되는 횟수에 기초하여 인덱스 정보를 생성할 수 있다. 예를 들어, 제1 계수부(130)가 3개의 기준 문턱 전압 상태들을 이용하여 인덱스 정보를 생성한다면, 제1 계수부(130)는 데이터 페이지로부터 제1 기준 문턱 전압 상태가 검출되는 횟수를 제1 인덱스 정보로, 제2 기준 문턱 전압 상태가 검출되는 횟수를 제2 인덱스 정보로, 제3 기준 문턱 전압 상태가 검출되는 횟수를 제3 인덱스 정보로 생성할 수 있다.
본 발명의 또 다른 실시예에 따른 제1 계수부(130)는 제1 기준 문턱 전압 상태 및 제1 기준 문턱 전압 상태보다 높은 문턱 전압을 가지는 문턱 전압 상태들의 개수를 모두 합산함으로써 제1 인덱스 정보를 생성할 수 있다. 제1 계수부(130)는 제2 인덱스 정보 및 제3 인덱스 정보도 마찬가지 방법으로 생성할 수 있다.
도 2는 본 발명의 또 다른 실시예에 따른 메모리 프로그래밍 장치(200)를 도시하는 도면이다.
도 2를 참조하면, 메모리 프로그래밍 장치(200)는 데이터 저장부(210), 인덱스 저장부(220), 제1 계수부(230) 및 프로그래밍부(240)를 포함하고, 검출부(250), 제2 계수부(260) 및 오류 판정부(270)를 더 포함한다.
데이터 저장부(210)에는 데이터 페이지가 저장된다.
제1 계수부(230)는 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성한다.
인덱스 저장부(220)에는 생성된 인덱스 정보가 저장된다.
프로그래밍부(240)는 데이터 저장부(210)에 데이터 페이지를 저장하고, 인덱스 저장부(220)에 인덱스 정보를 저장한다.
검출부(250)는 데이터 저장부(210)에 저장된 데이터 페이지를 읽는다.
제2 계수부(260)는 읽은 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성한다.
오류 판정부(270)는 생성된 검증 정보 및 인덱스 저장부(220)에 저장된 인덱스 정보에 기초하여 읽은 데이터 페이지의 오류 여부를 판정한다.
도 3은 본 발명의 또 다른 실시예에 따른 메모리 프로그래밍 장치(300)를 도시하는 도면이다.
도 3을 참조하면, 메모리 프로그래밍 장치(300)는 데이터 저장부(310), 인덱스 저장부(320), 제1 계수부(330) 및 프로그래밍부(340)를 포함하고, 검출부(350), 제2 계수부(360) 및 오류 판정부(370)를 더 포함한다.
데이터 저장부(310)에는 데이터 페이지가 저장된다.
제1 계수부(330)는 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성한다.
인덱스 저장부(320)에는 생성된 인덱스 정보가 저장된다.
프로그래밍부(340)는 데이터 저장부(310)에 데이터 페이지를 저장하고, 인덱스 저장부(320)에 인덱스 정보를 저장한다.
검출부(350)는 데이터 저장부(310)에 저장된 데이터 페이지를 읽는다.
제2 계수부(360)는 읽은 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성한다.
문턱 전압 모니터링부(370)는 생성된 검증 정보 및 인덱스 저장부(320)에 저장된 인덱스 정보에 기초하여 데이터 저장부(310)에 형성된 문턱 전압의 산포 상태의 변화를 모니터한다.
도 4는 본 발명의 메모리 프로그래밍 장치(100)에 의해 형성된 데이터 저장부(110)의 문턱 전압의 산포 상태의 일 예를 도시하는 도면이다.
도 4를 참조하면, 가로축은 데이터 저장부(110)의 메모리 셀들의 문턱 전압에 대응한다. 도 4의 세로축은 문턱 전압을 가지는 메모리 셀들의 개수에 대응한다.
산포 상태(410)는 프로그램되지 않았거나, 소거된 메모리 셀들의 문턱 전압의 산포를 나타낸다.
산포 상태(420, 430, 440, 450, 460, 470, 480)는 프로그래밍부(140)에 의해 프로그램된 메모리 셀들의 문턱 전압의 산포를 나타낸다.
도 4에 도시된 8개의 산포 상태는 하나의 셀에 최대 3비트의 데이터가 저장될 수 있음을 나타낸다.
메모리 프로그래밍 장치(100)는 데이터 저장부(110)의 메모리 셀들 각각을 8개의 산포 상태 중 어느 하나로 맵핑시킴으로써 3비트의 데이터 페이지를 저장한다.
산포 상태(410)는 데이터 "111"에 대응하고, 산포 상태(420)는 "110"에 대응한다. 산포 상태(430)는 데이터 "100"에 대응하고, 산포 상태(440)는 "101"에 대 응한다. 산포 상태(450)는 "001"에 대응하고, 산포 상태(460)는 "000"에 대응한다. 산포 상태(470)는 "010"에 대응하고, 산포 상태(480)는 "011"에 대응한다.
제1 계수부(130)는 산포 상태(440, 460, 480)에 대응하는 문턱 전압 상태를 기준 문턱 전압 상태로서 이용한다. 기준 문턱 전압 상태는 미리 결정되어 있을 수도 있고, 제1 계수부(130)가 프로그래밍 과정에서 선택할 수도 있다.
제1 계수부(130)는 3비트의 데이터 페이지 내에서 데이터 "101"이 나타나는 빈도 수에 따라 제1 인덱스 정보를 생성할 수 있다. 제1 인덱스 정보는 산포 상태(440)에 대응하는 인덱스 정보이다.
제1 계수부(130)는 3비트의 데이터 페이지 내에서 데이터 "000"이 나타나는 빈도 수에 따라 제2 인덱스 정보를 생성할 수 있다. 제2 인덱스 정보는 산포 상태(460)에 대응하는 인덱스 정보이다.
제1 계수부(130)는 3비트의 데이터 페이지 내에서 데이터 "011"이 나타나는 빈도 수에 따라 제3 인덱스 정보를 생성할 수 있다. 제3 인덱스 정보는 산포 상태(480)에 대응하는 인덱스 정보이다.
본 발명의 또 다른 실시예에 따른 제1 계수부(130)는, 제1 인덱스 정보를 산포 상태(440, 450, 460, 470, 480)에 대응하는 인덱스 정보로 생성하고, 데이터 "101", "001", "000", "010", "011"이 나타나는 빈도 수에 기초하여 생성할 수 있다. 제1 계수부(130)는, 제2 인덱스 정보를 산포 상태(460, 470, 480)에 대응하는 인덱스 정보로 생성하고, 데이터 "000", "010", "011"이 나타나는 빈도 수에 기초하여 생성할 수 있다.
도 5는 본 발명의 메모리 프로그래밍 장치(300)에 의해 산포 상태의 변화를 모니터하는 과정의 일 예를 도시하는 도면이다.
도 5를 참조하면, 가로축은 데이터 저장부(310)의 메모리 셀들의 문턱 전압에 대응한다. 도 5의 세로축은 문턱 전압을 가지는 메모리 셀들의 개수에 대응한다.
산포 상태(520)는 프로그램된 직후의 메모리 셀들의 문턱 전압의 산포 상태를 나타낸다.
산포 상태(510)는 프로그램되고 일정 시간이 경과한 후의 메모리 셀들의 문턱 전압의 산포 상태를 나타낸다.
산포 상태(520)는 테스트 읽기 전압 레벨(521)에 의하여 하위 산포 상태들과 구분될 수 있다.
산포 상태(510)는 테스트 읽기 전압 레벨(511)에 의하여 하위 산포 상태들과 구분될 수 있다.
일반적으로, 비휘발성(non-volatile) 메모리 셀들이 프로그램된 후, 시간이 경과하면 부유 게이트(floating gate)의 전하들이 소실되는 전하 소실(charge loss effect)에 의해 메모리 셀들의 문턱 전압이 변화하는 경향이 나타난다.
프로그램된 직후의 메모리 셀들의 산포 상태는 산포 상태(520)에 따른다. 시간이 경과함에 따라 프로그램된 메모리 셀들의 문턱 전압이 감소하므로, 산포 상태는 산포 상태(510)로 변화한다. 이 때, 검출부(350)가 테스트 읽기 전압 레벨(521)을 이용하여 데이터 저장부(310)의 메모리 셀들에 저장된 데이터를 읽으면, 산포 상태(510)를 따르는 메모리 셀들의 개수의 일부만을 검출할 수 있다.
제2 계수부(360)가 생성한 검증 정보는 산포 상태(510)의 메모리 셀들의 개수보다 작은 값을 포함하고, 인덱스 저장부(320)에 저장된 인덱스 정보는 산포 상태(520)의 메모리 셀들의 개수(산포 상태(510)의 메모리 셀들의 개수와 동일)와 동일한 값을 포함하므로, 검증 정보가 인덱스 정보보다 작은 값을 나타낸다.
문턱 전압 모니터링부(370)는 검증 정보가 인덱스 정보보다 작은 값을 나타내면, 테스트 읽기 전압 레벨을 순차적으로 낮추면서 메모리 셀들의 문턱 전압의 변화 동향을 모니터한다.
본 발명의 또 다른 실시예에 따른 문턱 전압 모니터링부(370)는 검증 정보가 인덱스 정보보다 작은 값을 나타내면, (인덱스 정보 - 검증 정보)의 값에 비례하여 테스트 읽기 전압 레벨을 낮추어 셀들의 문턱 전압의 변화 동향을 모니터할 수 있다. 검증 정보가 인덱스 정보보다 작은 경우, (다음 테스트 읽기 전압) 레벨 = (현재 테스트 읽기 전압) - (비례 상수) X (인덱스 정보- 검증 정보) 의 관계가 성립할 수 있다. 이 같은 관계에 따라 메모리 프로그래밍 장치(300)는 최적화된 테스트 읽기 전압 레벨을 신속하게 찾을 수 있다. 최적화된 테스트 읽기 전압 레벨은 (검증 정보 = 인덱스 정보)가 성립하도록 하는 테스트 읽기 전압이다.
도 6은 본 발명의 메모리 프로그래밍 장치(100)에 의해 데이터 저장부(110)의 문턱 전압의 산포 상태가 형성되는 과정의 일 예를 도시하는 도면이다.
도 6을 참조하면, 가로축은 데이터 저장부(110)의 메모리 셀들의 문턱 전압에 대응한다. 도 6의 세로축은 문턱 전압을 가지는 메모리 셀들의 개수에 대응한 다.
프로그래밍부(140)가 데이터 페이지를 저장하기 전에, 데이터 저장부(110)의 모든 셀들은 산포 상태(610)를 형성한다.
도 6에서는 3비트의 멀티 비트 데이터를 하나의 메모리 셀에 저장하는 페이지 프로그래밍 과정이 도시된다.
제1 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 데이터 페이지의 MSB(Most Significant Bit)에 따라 메모리 셀들의 문턱 전압을 상승시킬 지 여부를 결정한다. 프로그래밍부(140)는 데이터 "111", "110", "100", "101"이 저장될 메모리 셀들의 문턱 전압을 그대로 유지하여 상기 메모리 셀들이 산포 상태(620)를 형성하도록 한다. 프로그래밍부(140)는 데이터 "001", "000", "010", "011"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상태(621)를 형성하도록 한다. 이 같은 과정을 제1 페이지 프로그래밍 동작이라고 한다.
제2 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 데이터 페이지의 MSB 및 제2 비트에 따라 메모리 셀들의 문턱 전압을 상승시킬 지 여부를 결정한다. 프로그래밍부(140)는 산포 상태(620)에 대응하는 메모리 셀들 중에서 데이터 "111", "110"이 저장될 메모리 셀들의 문턱 전압을 비교적 작은 값만큼 높이거나 그대로 유지하여 상기 메모리 셀들이 산포 상태(630)를 형성하도록 한다. 프로그래밍부(140)는 산포 상태(620)에 대응하는 메모리 셀들 중에서 데이터 "100", "101"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상태(631)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(621)에 대응하는 메모리 셀들 중에서 데이터 "001", "000"이 저장될 메모리 셀들의 문턱 전압을 그대로 유지하여 상기 메모리 셀들이 산포 상태(632)를 형성하도록 한다. 프로그래밍부(140)는 산포 상태(621)에 대응하는 메모리 셀들 중에서 데이터 "010", "011"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상태(633)를 형성하도록 한다. 이 같은 과정을 제2 페이지 프로그래밍 동작이라 한다.
제3 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 데이터 페이지의 MSB, 제2 비트 및 LSB(Least Significant Bit)에 따라 메모리 셀들의 문턱 전압을 상승시킬 지 여부를 결정한다.
프로그래밍부(140)는 산포 상태(630)에 대응하는 메모리 셀들 중에서 데이터 "111"이 저장될 메모리 셀들의 문턱 전압을 그대로 유지하여 상기 메모리 셀들이 산포 상태(640)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(630)에 대응하는 메모리 셀들 중에서 데이터 "110"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상태(641)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(631)에 대응하는 메모리 셀들 중에서 데이터 "100"이 저장될 메모리 셀들의 문턱 전압을 비교적 작은 값만큼 높이거나 그대로 유지하여 상기 메모리 셀들이 산포 상태(642)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(631)에 대응하는 메모리 셀들 중에서 데이터 "101"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상 태(643)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(632)에 대응하는 메모리 셀들 중에서 데이터 "001"이 저장될 메모리 셀들의 문턱 전압을 비교적 작은 값만큼 높이거나 그대로 유지하여 상기 메모리 셀들이 산포 상태(644)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(632)에 대응하는 메모리 셀들 중에서 데이터 "000"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상태(645)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(633)에 대응하는 메모리 셀들 중에서 데이터 "010"이 저장될 메모리 셀들의 문턱 전압을 비교적 작은 값만큼 높이거나 그대로 유지하여 상기 메모리 셀들이 산포 상태(646)를 형성하도록 한다.
프로그래밍부(140)는 산포 상태(633)에 대응하는 메모리 셀들 중에서 데이터 "110"이 저장될 메모리 셀들의 문턱 전압을 상승시켜 상기 메모리 셀들이 산포 상태(647)를 형성하도록 한다. 이 같은 과정을 제3 페이지 프로그래밍 동작이라 한다.
도 7은 본 발명의 메모리 프로그래밍 장치(100)에 의해 인덱스 저장부(120)에 인덱스 정보가 프로그래밍되는 과정의 일 예를 도시하는 도면이다.
도 7을 참조하면, 가로축은 인덱스 저장부(120)의 메모리 셀들의 문턱 전압에 대응한다. 도 7의 세로축은 문턱 전압을 가지는 메모리 셀들의 개수에 대응한다.
프로그래밍부(140)는 인덱스 저장부(120)에 인덱스 정보를 2비트의 데이터 밀도로 저장한다.
프로그래밍부(140)는 3비트의 데이터 밀도로 인덱스 정보를 저장할 수 있는 메모리 셀에 2비트의 데이터로 인덱스 정보를 저장함으로써 저장된 인덱스 정보의 신뢰성을 높일 수 있다.
프로그래밍부(140)는 데이터 저장부(110)에 대한 제1 페이지 프로그래밍 동작 및 제2 페이지 프로그래밍 동작 동안에는 인덱스 저장부(120)에 인덱스 정보를 저장하지 않는다. 이 때, 제1 페이지 프로그래밍을 전후하여 메모리 셀들의 문턱 전압은 산포 상태(710)에서 산포 상태(720)로 맵핑되고, 실질적으로는 변화하지 않는다. 마찬가지로 제2 페이지 프로그래밍을 전후하여 메모리 셀들의 문턱 전압은 산포 상태(720)에서 산포 상태(730)로 맵핑된다.
프로그래밍부(140)는 제3 페이지 프로그래밍 동작 동안 인덱스 저장부(120)에 인덱스 정보를 저장한다. 메모리 셀에 저장될 인덱스 정보가 "11"이면, 제3 페이지 프로그래밍 동작 동안 메모리 셀의 문턱 전압은 산포 상태(740)로 맵핑된다. 이 때, 실질적으로는 문턱 전압은 변화하지 않는다.
메모리 셀에 저장될 인덱스 정보가 "10"이면, 제3 페이지 프로그래밍 동작 동안 메모리 셀의 문턱 전압은 산포 상태(742)로 이동한다. 인덱스 정보가 "00"이면, 메모리 셀의 문턱 전압은 산포 상태(744)로 이동하고, 인덱스 정보가 "01"이면, 메모리 셀의 문턱 전압은 산포 상태(746)로 이동한다.
프로그래밍부(140)는 인덱스 정보를 저장하는 과정에서 별도의 프로그래밍 과정 없이 데이터 페이지를 저장하는 프로그래밍 과정과 동일한 기법을 이용할 수 있다.
페이지 프로그래밍 동작에 의하여 동시에 프로그램되는 데이터 저장부(110)의 메모리 페이지가 4KByte인 경우, 하나의 산포 상태 당 필요한 인덱스 정보의 저장 공간은 15비트이다. 인덱스 저장부(120)의 메모리 셀 하나가 2비트의 데이터 밀도로 인덱스 정보를 저장하면, 하나의 산포 상태 당 8개의 메모리 셀이 인덱스 정보를 저장하기 위해 필요하다.
도 8은 본 발명의 메모리 프로그래밍 장치(100)에 의해 인덱스 저장부(120)에 인덱스 정보가 프로그래밍되는 과정의 다른 예를 도시하는 도면이다.
도 8을 참조하면, 가로축은 인덱스 저장부(120)의 메모리 셀들의 문턱 전압에 대응한다. 도 8의 세로축은 문턱 전압을 가지는 메모리 셀들의 개수에 대응한다.
프로그래밍부(140)는 인덱스 저장부(120)에 인덱스 정보를 2비트의 데이터 밀도로 저장한다.
프로그래밍부(140)는 3비트의 데이터 밀도로 인덱스 정보를 저장할 수 있는 메모리 셀에 2비트의 데이터로 인덱스 정보를 저장함으로써 저장된 인덱스 정보의 신뢰성을 높일 수 있다.
프로그래밍부(140)는 데이터 저장부(110)에 대한 제1 페이지 프로그래밍 동작 및 제2 페이지 프로그래밍 동작 동안에는 인덱스 저장부(120)에 인덱스 정보를 저장하지 않는다. 이 때, 제1 페이지 프로그래밍을 전후하여 메모리 셀들의 문턱 전압은 산포 상태(810)에서 산포 상태(820)로 맵핑되고, 제2 페이지 프로그래밍을 전후하여 메모리 셀들의 문턱 전압은 산포 상태(820)에서 산포 상태(830)로 맵핑된다.
프로그래밍부(140)는 제3 페이지 프로그래밍 동작 동안 인덱스 저장부(120)에 인덱스 정보를 저장한다. 메모리 셀에 저장될 인덱스 정보가 "11"이면, 제3 페이지 프로그래밍 동작 동안 메모리 셀의 문턱 전압은 산포 상태(840)로 맵핑된다. 이 때, 실질적으로는 문턱 전압은 변화하지 않는다.
메모리 셀에 저장될 인덱스 정보가 "10"이면, 제3 페이지 프로그래밍 동작 동안 메모리 셀의 문턱 전압은 산포 상태(841)로 이동한다. 인덱스 정보가 "00"이면, 메모리 셀의 문턱 전압은 산포 상태(842)로 이동하고, 인덱스 정보가 "01"이면, 메모리 셀의 문턱 전압은 산포 상태(843)로 이동한다.
프로그래밍부(140)는 제3 페이지 프로그래밍 동작 동안 인덱스 저장부(120)의 메모리 셀들의 문턱 전압의 변화를 줄일 수 있다. 이로 인해 인덱스 저장부(120) 및 데이터 저장부(110)의 메모리 셀들의 부유 폴리실리콘 커플링(floating poly-silicon coupling, FP coupling) 메커니즘에 의한 문턱 전압의 원치 않는 변화를 줄일 수 있다. FP 커플링은 주변 메모리 셀들의 문턱 전압의 급격한 변화로 인해 중심 메모리 셀의 문턱 전압이 변화하는 현상을 말한다.
도 9는 본 발명의 메모리 프로그래밍 장치(100)에 의해 인덱스 저장부(120)에 인덱스 정보가 프로그래밍되는 과정의 또 다른 예를 도시하는 도면이다.
도 9를 참조하면, 가로축은 인덱스 저장부(120)의 메모리 셀들의 문턱 전압에 대응한다. 도 9의 세로축은 문턱 전압을 가지는 메모리 셀들의 개수에 대응한 다.
프로그래밍부(140)는 인덱스 저장부(120)에 인덱스 정보를 2비트의 데이터 밀도로 저장한다.
프로그래밍부(140)는 3비트의 데이터 밀도로 인덱스 정보를 저장할 수 있는 메모리 셀에 2비트의 데이터로 인덱스 정보를 저장함으로써 저장된 인덱스 정보의 신뢰성을 높일 수 있다.
프로그래밍부(140)는 3번의 페이지 프로그래밍 동작 동안 인덱스 정보를 순차적으로 인덱스 저장부(120)에 저장한다.
인덱스 저장부(120)의 메모리 셀에 저장되는 인덱스 정보가 "11"이면, 프로그래밍이 수행된 후 메모리 셀의 문턱 전압은 산포 상태(940)에 대응한다. 인덱스 정보가 "10"이면 프로그래밍이 수행된 후 메모리 셀의 문턱 전압은 산포 상태(921)에 대응한다. 인덱스 정보가 "00"이면 프로그래밍이 수행된 후 메모리 셀의 문턱 전압은 산포 상태(933)에 대응한다. 인덱스 정보가 "01"이면 프로그래밍이 수행된 후 메모리 셀의 문턱 전압은 산포 상태(947)에 대응한다.
제1 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 인덱스 정보 "11"을 저장할 메모리 셀의 문턱 전압은 그대로 유지하여 산포 상태(920)를 형성한다. 제1 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 인덱스 정보 "10", "00", "01"를 저장할 메모리 셀의 문턱 전압을 상승시켜 산포 상태(921)를 형성한다.
제2 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 인덱스 정보 "00", "01"를 저장할 메모리 셀의 문턱 전압을 상승시켜 산포 상태(933)를 형성한다. 이 때, 인덱스 정보 "11"를 저장하는 메모리 셀은 산포 상태(930)를 형성하고, 인덱스 정보 "10"를 저장하는 메모리 셀은 산포 상태(921)를 형성한다.
제3 페이지 프로그래밍 동작 동안 프로그래밍부(140)는 인덱스 정보 "01"를 저장할 메모리 셀의 문턱 전압을 상승시켜 산포 상태(947)를 형성한다. 이 때, 인덱스 정보 "11"를 저장하는 메모리 셀은 산포 상태(940)를 형성하고, 인덱스 정보 "10"를 저장하는 메모리 셀은 산포 상태(921)를 형성하고, 인덱스 정보 "00"를 저장하는 메모리 셀은 산포 상태(933)를 형성한다.
프로그래밍부(140)는 인덱스 저장부(120)에 대한 프로그래밍을 순차적으로 수행함으로써 FP 커플링에 의한 문턱 전압의 원치 않는 변화를 분산시킬 수 있다.
도 10은 본 발명의 일 실시예에 따른 메모리 프로그래밍 방법을 도시하는 동작 흐름도이다.
도 10을 참조하면, 메모리 프로그래밍 방법은 데이터 저장부(110)에 저장될 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성한다(S1010).
메모리 프로그래밍 방법은 데이터 저장부(110)에 데이터 페이지를 저장한다(S1030).
메모리 프로그래밍 방법은 인덱스 저장부(120)에 인덱스 정보를 저장한다(S1020).
단계(S1020)는 단계(S1030)이 수행되는 동안에 수행될 수 있다.
데이터 저장부(110) 및 인덱스 저장부(120)는 멀티 비트 셀을 포함할 수 있 다. 하나의 멀티 비트 셀은 2비트 이상의 멀티 비트 데이터를 저장할 수 있다.
메모리 프로그래밍 방법은 저장된 데이터 페이지를 읽을 수 있다. 메모리 프로그래밍 방법은 읽은 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성할 수 있다.
메모리 프로그래밍 방법은 생성된 검증 정보 및 인덱스 저장부(120)에 저장된 인덱스 정보에 기초하여 읽은 데이터 페이지의 오류 여부를 판정할 수 있다.
메모리 프로그래밍 방법은 생성된 검증 정보 및 인덱스 저장부(120)에 저장된 인덱스 정보에 기초하여 데이터 저장부(110)에 형성된 산포 상태의 변화를 모니터할 수 있다.
본 발명에 따른 메모리 프로그래밍 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들 어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 다양한 형태들의 패키지를 이용하여 구현될 수 있다. 예를 들면, 본 발명에 따른 플래시 메모리 장치 그리고/또는 메모리 컨트롤러는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP), 등과 같은 패키지들을 이용하여 구현될 수 있다.
플래시 메모리 장치와 메모리 컨트롤러는 메모리 카드를 구성할 수 있다. 이러한 경우, 메모리 컨트롤러는 USB, MMC, PCI-E, SATA, PATA, SCSI, ESDI, 그리고 IDE 등과 같은 다양한 인터페이스 프로토콜들 중 하나를 통해 외부(예를 들면, 호스트)와 통신하도록 구성될 수 있다.
플래시 메모리 장치는 전력이 차단되어도 저장된 데이터를 유지할 수 있는 비휘발성 메모리 장치이다. 셀룰러 폰, PDA 디지털 카메라, 포터블 게임 콘솔, 그리고 MP3P와 같은 모바일 장치들의 사용 증가에 따라, 플래시 메모리 장치는 데이터 스토리지 뿐만 아니라 코드 스토리지로서 보다 널리 사용될 수 있다. 플래시 메모리 장치는, 또한, HDTV, DVD, 라우터, 그리고 GPS와 같은 홈 어플리케이션에 사용될 수 있다.
본 발명에 따른 컴퓨팅 시스템은 버스에 전기적으로 연결된 마이크로프로세서, 사용자 인터페이스, 베이스밴드 칩셋(baseband chipset)과 같은 모뎀, 메모리 컨트롤러, 그리고 플래시 메모리 장치를 포함한다. 플래시 메모리 장치에는 마이크로프로세서에 의해서 처리된/처리될 N-비트 데이터(N은 1 또는 그 보다 큰 정수)가 메모리 컨트롤러를 통해 저장될 것이다. 본 발명에 따른 컴퓨팅 시스템이 모바일 장치인 경우, 컴퓨팅 시스템의 동작 전압을 공급하기 위한 배터리가 추가적으로 제공될 것이다.
본 발명에 따른 컴퓨팅 시스템에는 응용 칩셋(application chipset), 카메라 이미지 프로세서(Camera Image Processor: CIS), 모바일 디램, 등이 더 제공될 수 있음은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 메모리 컨트롤러와 플래시 메모리 장치는, 예를 들면, 데이터를 저장하는 데 비휘발성 메모리를 사용하는 SSD(Solid State Drive/Disk)를 구성할 수 있다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
도 1은 본 발명의 일 실시예에 따른 메모리 프로그래밍 장치(100)를 도시하는 도면이다.
도 2는 본 발명의 다른 실시예에 따른 메모리 프로그래밍 장치(200)를 도시하는 도면이다.
도 3은 본 발명의 또 다른 실시예에 따른 메모리 프로그래밍 장치(300)를 도시하는 도면이다.
도 4는 본 발명의 메모리 프로그래밍 장치(100)에 의해 형성된 데이터 저장부의 문턱 전압의 산포 상태의 일 예를 도시하는 도면이다.
도 5는 본 발명의 메모리 프로그래밍 장치(300)에 의해 산포 상태의 변화를 모니터하는 과정의 일 예를 도시하는 도면이다.
도 6은 본 발명의 메모리 프로그래밍 장치(100)에 의해 데이터 저장부의 문턱 전압의 산포 상태가 형성되는 과정의 일 예를 도시하는 도면이다.
도 7은 본 발명의 메모리 프로그래밍 장치(100)에 의해 인덱스 저장부에 인덱스 정보가 프로그래밍되는 과정의 일 예를 도시하는 도면이다.
도 8은 본 발명의 메모리 프로그래밍 장치(100)에 의해 인덱스 저장부에 인덱스 정보가 프로그래밍되는 과정의 다른 예를 도시하는 도면이다.
도 9는 본 발명의 메모리 프로그래밍 장치(100)에 의해 인덱스 저장부에 인덱스 정보가 프로그래밍되는 과정의 또 다른 예를 도시하는 도면이다.
도 10은 본 발명의 일 실시예에 따른 메모리 프로그래밍 방법을 도시하는 동 작 흐름도이다.
<도면의 주요 부분에 대한 부호의 설명>
110: 데이터 저장부
120: 인덱스 저장부
130: 제1 계수부
140: 프로그래밍부

Claims (19)

  1. 데이터 페이지를 저장하는 데이터 저장부;
    상기 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태를 가지는 셀의 개수를 계수하여 인덱스 정보를 생성하는 제1 계수부;
    상기 생성된 인덱스 정보를 저장하는 인덱스 저장부; 및
    상기 데이터 저장부에 상기 데이터 페이지를 저장하고, 상기 인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 프로그래밍부
    를 포함하고,
    상기 제1 계수부는 상기 생성된 인덱스 정보를 상기 프로그래밍부로 전달하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  2. 제1항에 있어서,
    상기 데이터 저장부에 저장된 상기 데이터 페이지를 읽는 검출부;
    상기 읽은 데이터 페이지로부터 상기 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성하는 제2 계수부; 및
    상기 생성된 검증 정보 및 상기 인덱스 저장부에 저장된 상기 인덱스 정보에 기초하여 상기 읽은 데이터 페이지의 오류 여부를 판정하는 오류 판정부
    를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  3. 제1항에 있어서,
    상기 데이터 저장부에 저장된 데이터 페이지를 읽는 검출부;
    상기 읽은 데이터 페이지로부터 상기 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성하는 제2 계수부; 및
    상기 생성된 검증 정보 및 상기 인덱스 저장부에 저장된 상기 인덱스 정보에 기초하여 상기 데이터 저장부에 형성된 산포 상태의 변화를 모니터링하는 문턱 전압 모니터링부
    를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  4. 제1항에 있어서,
    상기 프로그래밍부는
    상기 데이터 저장부에 상기 데이터 페이지를 저장하는 동안 상기 인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  5. 제1항에 있어서,
    상기 데이터 저장부 및 상기 인덱스 저장부는, 하나의 셀에 멀티 비트 데이터가 저장되는 멀티 비트 셀을 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  6. 제5항에 있어서,
    상기 프로그래밍부는
    상기 데이터 저장부에 복수의 상기 데이터 페이지를 제1 밀도로 저장하고,
    상기 인덱스 저장부에 상기 생성된 인덱스 정보를 제2 밀도로 저장하고,
    상기 제1 밀도는 상기 제2 밀도보다 큰 것을 특징으로 하는 메모리 프로그래밍 장치.
  7. 제5항에 있어서,
    상기 프로그래밍부는
    복수의 페이지 프로그래밍 동작들을 수행하여 복수의 상기 데이터 페이지를 상기 데이터 저장부에 저장하고,
    상기 복수의 페이지 프로그래밍 동작들 중 마지막 페이지 프로그래밍 동작이 수행되는 동안에 상기 생성된 인덱스 정보를 상기 인덱스 저장부에 저장하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  8. 제5항에 있어서,
    상기 프로그래밍부는
    복수의 페이지 프로그래밍 동작들을 수행하여 복수의 상기 데이터 페이지를 상기 데이터 저장부에 저장하고,
    상기 복수의 페이지 프로그래밍 동작들 각각이 수행되는 동안에 상기 생성된 인덱스 정보를 상기 인덱스 저장부에 순차적으로 저장하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  9. 제5항에 있어서,
    상기 프로그래밍부는
    상기 데이터 저장부에는 제1 검증 전압 집합을 이용하여 상기 데이터 페이지를 저장하고,
    상기 인덱스 저장부에는 제2 검증 전압 집합을 이용하여 상기 인덱스 정보를 저장하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  10. 제1항에 있어서,
    상기 데이터 저장부 및 상기 인덱스 저장부를 소거하는 소거부
    를 더 포함하고,
    상기 프로그래밍부는
    상기 데이터 저장부 및 상기 인덱스 저장부가 소거되기 전에, 상기 데이터 저장부 및 상기 인덱스 저장부 중에서 프로그램되지 않은 셀을 프리 프로그래밍하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  11. 제1항에 있어서,
    복수의 문턱 전압 상태들 중에서 상기 하나 이상의 기준 문턱 전압 상태를 선택하는 기준 선택부
    를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 장치.
  12. 제1항에 있어서,
    상기 인덱스 정보는
    상기 하나 이상의 기준 문턱 전압 상태 각각에 대응하여 생성되고,
    상기 생성된 인덱스 정보 각각은 대응하는 기준 문턱 전압 상태 이상의 문턱 전압을 가지는 문턱 전압 상태의 개수를 모두 합산함으로써 생성되는 것을 특징으로 하는 메모리 프로그래밍 장치.
  13. 데이터 페이지를 저장하는 데이터 저장부;
    상기 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태를 가지는 셀의 개수를 계수하여 인덱스 정보를 생성하는 제1 계수부;
    상기 생성된 인덱스 정보를 저장하고, 상기 데이터 저장부가 연결된 워드 라인에 연결된 인덱스 저장부; 및
    상기 워드 라인에 복수의 제1 전압 레벨들을 인가하여 상기 데이터 저장부에 상기 데이터 페이지를 멀티 비트 프로그래밍하고,
    상기 워드 라인에 제2 전압 레벨을 인가하여 상기 인덱스 저장부에 상기 생성된 인덱스 정보를 싱글 비트 프로그래밍하는 프로그래밍부
    를 포함하고,
    상기 제1 계수부는 상기 생성된 인덱스 정보를 상기 프로그래밍부로 전달하고,
    상기 제2 전압은 상기 제1 전압 레벨들 중 상기 멀티 비트 프로그래밍의 첫번째 페이지 프로그래밍 동작에 대응하는 전압 레벨인 것
    을 특징으로 하는 메모리 프로그래밍 장치.
  14. 데이터 저장부에 저장될 데이터 페이지로부터 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 인덱스 정보를 생성하는 단계;
    상기 데이터 저장부에 상기 데이터 페이지를 저장하는 단계; 및
    인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 단계
    를 포함하는 것을 특징으로 하는 메모리 프로그래밍 방법.
  15. 제14항에 있어서,
    상기 데이터 저장부에 저장된 데이터 페이지를 읽는 단계;
    상기 읽은 데이터 페이지로부터 상기 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성하는 단계; 및
    상기 생성된 검증 정보 및 상기 인덱스 저장부에 저장된 상기 인덱스 정보에 기초하여 상기 읽은 데이터 페이지의 오류 여부를 판정하는 단계
    를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 방법.
  16. 제14항에 있어서,
    상기 데이터 저장부에 저장된 데이터 페이지를 읽는 단계;
    상기 읽은 데이터 페이지로부터 상기 하나 이상의 기준 문턱 전압 상태 각각의 개수를 계수하여 검증 정보를 생성하는 단계; 및
    상기 생성된 검증 정보 및 상기 인덱스 저장부에 저장된 상기 인덱스 정보에 기초하여 상기 데이터 저장부에 형성된 산포 상태의 변화를 모니터링하는 단계
    를 더 포함하는 것을 특징으로 하는 메모리 프로그래밍 방법.
  17. 제14항에 있어서,
    상기 인덱스 저장부에 상기 생성된 인덱스 정보를 저장하는 단계는
    상기 데이터 저장부에 상기 데이터 페이지를 저장하는 단계가 수행되는 동안 상기 생성된 인덱스 정보를 저장하는 것을 특징으로 하는 메모리 프로그래밍 방법.
  18. 제14항에 있어서,
    상기 데이터 저장부 및 상기 인덱스 저장부는, 하나의 셀에 멀티 비트 데이터가 저장되는 멀티 비트 셀을 포함하는 것을 특징으로 하는 메모리 프로그래밍 방법.
  19. 제14항 내지 제18항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.
KR1020080006501A 2008-01-22 2008-01-22 메모리 프로그래밍 장치 및 방법 KR101368694B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020080006501A KR101368694B1 (ko) 2008-01-22 2008-01-22 메모리 프로그래밍 장치 및 방법
US12/213,944 US7738293B2 (en) 2008-01-22 2008-06-26 Apparatus and method of memory programming
PCT/KR2008/004530 WO2009093786A1 (en) 2008-01-22 2008-08-04 Apparatus and method of memory programming
JP2010543040A JP5351176B2 (ja) 2008-01-22 2008-08-04 メモリプログラミング装置および方法
US12/801,532 US8279668B2 (en) 2008-01-22 2010-06-14 Apparatus and method of memory programming

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080006501A KR101368694B1 (ko) 2008-01-22 2008-01-22 메모리 프로그래밍 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20090080634A true KR20090080634A (ko) 2009-07-27
KR101368694B1 KR101368694B1 (ko) 2014-03-03

Family

ID=40876387

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080006501A KR101368694B1 (ko) 2008-01-22 2008-01-22 메모리 프로그래밍 장치 및 방법

Country Status (4)

Country Link
US (2) US7738293B2 (ko)
JP (1) JP5351176B2 (ko)
KR (1) KR101368694B1 (ko)
WO (1) WO2009093786A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101320686B1 (ko) * 2011-11-17 2013-10-18 한국과학기술원 메모리의 오류 정정 장치 및 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8767459B1 (en) * 2010-07-31 2014-07-01 Apple Inc. Data storage in analog memory cells across word lines using a non-integer number of bits per cell
JP2012048791A (ja) * 2010-08-27 2012-03-08 Toshiba Corp 多値不揮発性半導体メモリシステム
KR101200125B1 (ko) * 2010-12-20 2012-11-12 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
KR20140072637A (ko) * 2012-12-05 2014-06-13 삼성전자주식회사 비휘발성 메모리 장치 및 메모리 컨트롤러의 동작 방법
US9190159B2 (en) 2013-03-15 2015-11-17 Kabushiki Kaisha Toshiba Semiconductor memory device
JP6262063B2 (ja) 2014-03-18 2018-01-17 東芝メモリ株式会社 不揮発性メモリおよび書き込み方法
US9607703B2 (en) 2014-09-08 2017-03-28 Kabushiki Kaisha Toshiba Memory system
KR102128406B1 (ko) 2014-09-26 2020-07-10 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
KR102298607B1 (ko) * 2015-02-17 2021-09-06 삼성전자주식회사 저항성 메모리 시스템 및 저항성 메모리 시스템의 동작 방법
US9224492B1 (en) * 2015-02-17 2015-12-29 Phison Electronics Corp. Memory management method, memory storage device and memory controlling circuit unit
US9679652B2 (en) * 2015-05-04 2017-06-13 Phison Electronics Corp. Threshold based multi-level cell programming for reliability improvement
CN105700960B (zh) * 2016-01-13 2018-01-19 广东欧珀移动通信有限公司 一种网络定位进程的启停方法、装置及移动终端
KR20180131023A (ko) * 2017-05-31 2018-12-10 에스케이하이닉스 주식회사 반도체 메모리 시스템 및 그것의 동작 방법
US11568938B2 (en) * 2020-11-03 2023-01-31 Western Digital Technologies, Inc. QLC data programming
US11861195B2 (en) 2021-03-15 2024-01-02 Western Digital Technologies, Inc. TLC data programming with hybrid parity

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0788113B1 (en) * 1996-01-31 2005-08-24 STMicroelectronics S.r.l. Multilevel memory circuits and corresponding reading and writing methods
US6052321A (en) 1997-04-16 2000-04-18 Micron Technology, Inc. Circuit and method for performing test on memory array cells using external sense amplifier reference current
US5867429A (en) * 1997-11-19 1999-02-02 Sandisk Corporation High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates
JP2000020409A (ja) 1998-07-07 2000-01-21 Seiko Epson Corp 半導体記憶装置
DE69831155D1 (de) * 1998-10-29 2005-09-15 St Microelectronics Srl Verfahren und Vorrichtung zur Prüfung von nichtprogrammierten Speicherzellen in einem Mehrpegelspeicher
US6407944B1 (en) 1998-12-29 2002-06-18 Samsung Electronics Co., Ltd. Method for protecting an over-erasure of redundant memory cells during test for high-density nonvolatile memory semiconductor devices
JP2000222890A (ja) * 1999-01-28 2000-08-11 Matsushita Electric Ind Co Ltd 多ビット同時書込方式と半導体記憶装置
US6111787A (en) * 1999-10-19 2000-08-29 Advanced Micro Devices, Inc. Address transistion detect timing architecture for a simultaneous operation flash memory device
FR2810438B1 (fr) * 2000-06-19 2002-09-06 St Microelectronics Sa Circuit de detection d'usure
US6700809B1 (en) 2002-02-01 2004-03-02 Netlogic Microsystems, Inc. Entry relocation in a content addressable memory device
US6751766B2 (en) * 2002-05-20 2004-06-15 Sandisk Corporation Increasing the effectiveness of error correction codes and operating multi-level memory systems by using information about the quality of the stored data
JP3833970B2 (ja) * 2002-06-07 2006-10-18 株式会社東芝 不揮発性半導体メモリ
US6781877B2 (en) * 2002-09-06 2004-08-24 Sandisk Corporation Techniques for reducing effects of coupling between storage elements of adjacent rows of memory cells
US6992932B2 (en) * 2002-10-29 2006-01-31 Saifun Semiconductors Ltd Method circuit and system for read error detection in a non-volatile memory array
JP3935139B2 (ja) * 2002-11-29 2007-06-20 株式会社東芝 半導体記憶装置
KR100546348B1 (ko) 2003-07-23 2006-01-26 삼성전자주식회사 플래시 메모리 시스템 및 그 데이터 저장 방법
JP2005100527A (ja) * 2003-09-25 2005-04-14 Matsushita Electric Ind Co Ltd 半導体不揮発性記憶装置
KR100632947B1 (ko) 2004-07-20 2006-10-12 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 프로그램 방법
JP4261462B2 (ja) * 2004-11-05 2009-04-30 株式会社東芝 不揮発性メモリシステム
JP2006164408A (ja) * 2004-12-08 2006-06-22 Toshiba Corp 不揮発性半導体記憶装置及びそのデータ消去方法。
US7535765B2 (en) * 2004-12-09 2009-05-19 Saifun Semiconductors Ltd. Non-volatile memory device and method for reading cells
JP4768298B2 (ja) * 2005-03-28 2011-09-07 株式会社東芝 不揮発性半導体記憶装置
JP4874566B2 (ja) * 2005-04-11 2012-02-15 株式会社東芝 半導体記憶装置
JP4268609B2 (ja) * 2005-04-12 2009-05-27 シャープ株式会社 半導体記憶装置及び電子機器
JP2007042222A (ja) * 2005-08-04 2007-02-15 Renesas Technology Corp 半導体装置
JP4991131B2 (ja) * 2005-08-12 2012-08-01 株式会社東芝 半導体記憶装置
KR101016432B1 (ko) * 2005-11-10 2011-02-21 샌디스크 코포레이션 타이밍 정보를 이용한 리버스 커플링 효과
JP2007157234A (ja) * 2005-12-05 2007-06-21 Matsushita Electric Ind Co Ltd メモリシステム
JP4658812B2 (ja) * 2006-01-13 2011-03-23 シャープ株式会社 不揮発性半導体記憶装置及びその書き込み方法
JP5367210B2 (ja) * 2006-01-20 2013-12-11 株式会社東芝 半導体記憶装置
JP2008010046A (ja) * 2006-06-28 2008-01-17 Toshiba Corp 不揮発性半導体記憶装置
JP2009104729A (ja) * 2007-10-24 2009-05-14 Toshiba Corp 不揮発性半導体記憶装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101320686B1 (ko) * 2011-11-17 2013-10-18 한국과학기술원 메모리의 오류 정정 장치 및 방법

Also Published As

Publication number Publication date
US7738293B2 (en) 2010-06-15
US20100254189A1 (en) 2010-10-07
US20090185417A1 (en) 2009-07-23
WO2009093786A1 (en) 2009-07-30
JP5351176B2 (ja) 2013-11-27
KR101368694B1 (ko) 2014-03-03
JP2011510428A (ja) 2011-03-31
US8279668B2 (en) 2012-10-02

Similar Documents

Publication Publication Date Title
KR101368694B1 (ko) 메모리 프로그래밍 장치 및 방법
KR101413137B1 (ko) 메모리 장치 및 메모리 프로그래밍 방법
KR102174030B1 (ko) 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 읽기 방법
KR101378602B1 (ko) 메모리 장치 및 메모리 프로그래밍 방법
US7903459B2 (en) Memory devices and methods for determining data of bit layers based on detected error bits
KR101528167B1 (ko) 메모리 장치 및 메모리 데이터 판정 방법
KR101412690B1 (ko) 메모리 장치 및 메모리 프로그래밍 방법
KR101437102B1 (ko) 메모리 장치 및 멀티 비트 셀 특성 추정 방법
KR101493873B1 (ko) 멀티-레벨 셀 플래시 메모리 장치 및 이의 독출 방법
KR102005888B1 (ko) 불휘발성 메모리 장치 및 그것의 읽기 방법
KR101716716B1 (ko) 플래그 셀들을 갖는 플래시 메모리 장치 및 그것의 프로그램 동작 방법
KR20100096457A (ko) 메모리 시스템 및 그것의 데이터 처리 방법
KR20090099265A (ko) 메모리 장치 및 데이터 판정 방법
KR20090083759A (ko) 메모리 장치 및 메모리 데이터 읽기 방법
KR20140103755A (ko) 메모리 컨트롤러 및 그것의 동작 방법, 메모리 컨트롤러를 포함하는 메모리 시스템
KR20100013485A (ko) 메모리 장치 및 웨어 레벨링 방법
JP2012038410A (ja) フラッシュメモリ装置及びフラッシュメモリ装置の読み取り方法
KR20090131105A (ko) 멀티-비트 플래시 메모리 장치 및 그것의 플래그 셀 분석방법
KR20090083204A (ko) 메모리 장치 및 메모리 데이터 읽기 방법
US9508445B2 (en) Semiconductor device and read operation method including a source line check circuit
KR20230090598A (ko) 히스토리 데이터를 사용하는 스토리지 컨트롤러, 그것의 동작하는 방법, 및 그것을 포함하는 스토리지 장치의 동작하는 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20200131

Year of fee payment: 7