KR20140113190A - 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법 - Google Patents

비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법 Download PDF

Info

Publication number
KR20140113190A
KR20140113190A KR1020130028266A KR20130028266A KR20140113190A KR 20140113190 A KR20140113190 A KR 20140113190A KR 1020130028266 A KR1020130028266 A KR 1020130028266A KR 20130028266 A KR20130028266 A KR 20130028266A KR 20140113190 A KR20140113190 A KR 20140113190A
Authority
KR
South Korea
Prior art keywords
memory cells
threshold voltage
memory device
llr
voltage
Prior art date
Application number
KR1020130028266A
Other languages
English (en)
Other versions
KR102081415B1 (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 KR1020130028266A priority Critical patent/KR102081415B1/ko
Priority to TW103104505A priority patent/TWI622988B/zh
Priority to DE102014103125.3A priority patent/DE102014103125A1/de
Priority to US14/205,482 priority patent/US9502137B2/en
Priority to CN201410096588.5A priority patent/CN104052498B/zh
Publication of KR20140113190A publication Critical patent/KR20140113190A/ko
Application granted granted Critical
Publication of KR102081415B1 publication Critical patent/KR102081415B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50004Marginal testing, e.g. race, voltage or current testing of threshold voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/026Detection or location of defective auxiliary circuits, e.g. defective refresh counters in sense amplifiers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/3905Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
    • H03M13/3927Log-Likelihood Ratio [LLR] computation by combination of forward and backward metrics into LLRs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

비휘발성 메모리 장치의 LLR 최적화 방법에서, 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 모니터링의 결과에 기초하여 복수의 메모리 셀들에 대한 상기 LLR을 업데이트한다. 비휘발성 메모리 장치의 LLR 최적화 방법에 따르면, 메모리 셀들의 특성이 열화되는 경우에도 상기 LLR을 항상 최적 값으로 유지할 수 있다.

Description

비휘발성 메모리 장치의 LLR 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법{METHOD OF OPTIMIZING LLR USED IN NONVOLATILE MEMORY DEVICE AND METHOD OF CORRECTING ERROR IN NONVOLATILE MEMORY DEVICE}
본 발명은 비휘발성 메모리 장치에 관한 것으로서, 더욱 상세하게는 비휘발성 메모리 장치의 LLR(Log Likelihood Ratio) 최적화 방법 및 이를 이용하는 비휘발성 메모리 장치의 에러 정정 방법에 관한 것이다.
반도체 메모리 장치는 전원 공급이 중단될 때 저장된 데이터를 상실하는지 여부에 따라, 휘발성 메모리 장치(volatile memory device)와 비휘발성 메모리 장치(nonvolatile memory device)로 구분될 수 있다. 비휘발성 메모리 장치의 동작 모드는 메모리 셀에 데이터를 저장하는 기입 모드(write mode or program mode), 메모리 셀에 저장된 데이터를 판독하는 독출 모드(read mode) 및 저장된 데이터를 삭제하여 메모리 셀을 초기화하는 소거 모드(erase mode)로 구분될 수 있다. 일반적으로 비휘발성 메모리 장치에서는 프로그램되는 데이터에 대하여 에러 정정 인코딩이 수행되고, 독출되는 데이터에 대하여 에러 정정 디코딩이 수행될 수 있다.
본 발명의 일 목적은 비휘발성 메모리 장치에 저장된 데이터와 관련된 에러를 정정하는데 이용되는 LLR(Log Likelihood Ratio)의 최적화 방법을 제공하는 것이다.
본 발명의 다른 목적은 상기 최적화된 LLR을 이용하는 비휘발성 메모리 장치의 에러 정정 방법을 제공하는 것이다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법에서는, 상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 상기 LLR을 업데이트한다.
일 실시예에서, 상기 문턱 전압 산포의 변화를 모니터링하기 위해, 상기 복수의 메모리 셀들에 대한 현재 문턱 전압 산포를 검출하고, 미리 저장된 상기 복수의 메모리 셀들에 대한 초기 문턱 전압 산포와 상기 현재 문턱 전압 산포를 비교하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측할 수 있다.
일 실시예에서, 상기 초기 문턱 전압 산포는 상기 복수의 메모리 셀들 중 상기 비휘발성 메모리 장치의 동작 초기에 제1 전압보다 낮은 문턱 전압을 가지는 제1 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 상기 비휘발성 메모리 장치의 동작 초기에 제2 전압보다 높은 문턱 전압을 가지는 제2 메모리 셀들의 개수에 상응하고, 상기 현재 문턱 전압 산포는 상기 복수의 메모리 셀들 중 현재 상기 제1 전압보다 낮은 문턱 전압을 가지는 제3 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 현재 상기 제2 전압보다 높은 문턱 전압을 가지는 제4 메모리 셀들의 개수에 상응할 수 있다.
일 실시예에서, 상기 복수의 메모리 셀들은 각각 하나의 데이터 비트를 저장하는 싱글 레벨 메모리 셀(Single Level memory Cell; SLC)이며, 상기 제1 전압은 소거 상태에 상응하는 전압이고, 상기 제2 전압은 프로그램 상태에 상응하는 전압일 수 있다.
일 실시예에서, 상기 복수의 메모리 셀들은 각각 복수의 데이터 비트들을 저장하는 멀티 레벨 메모리 셀(Multi Level memory Cell; MLC)이며, 상기 제1 전압은 소거 상태에 상응하는 전압이고, 상기 제2 전압은 최상위 프로그램 상태에 상응하는 전압일 수 있다.
일 실시예에서, 상기 멀티 레벨 메모리 셀은 두 비트의 데이터를 저장하는 2-비트 메모리 셀 또는 세 비트의 데이터를 저장하는 3-비트 메모리 셀일 수 있다.
일 실시예에서, 상기 문턱 전압 산포의 변화를 모니터링하기 위해, 상기 복수의 메모리 셀들 중 현재 제1 전압과 제2 전압 사이의 문턱 전압을 가지는 제1 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 현재 상기 제1 전압과 제3 전압 사이의 문턱 전압을 가지는 제2메모리 셀들의 개수의 차이에 기초하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측할 수 있다.
일 실시예에서, 상기 제1 전압은 경판정(Hard Decision) 독출 동작에 상응하는 전압이고, 상기 제2 및 제3 전압들은 연판정(Soft Decision) 독출 동작에 상응하는 전압들일 수 있다.
일 실시예에서, 상기 문턱 전압 산포는 인접한 메모리 셀들 사이의 간섭(disturbance) 및 데이터 보유(retention) 시간의 경과 중 적어도 하나의 요인에 의해 변화될 수 있다.
일 실시예에서, 상기 문턱 전압 산포는 상기 인접한 메모리 셀들 사이의 간섭에 따라서 제1 방향으로 이동하며, 상기 데이터 보유 시간의 경과에 따라서 상기 제1 방향과 다른 제2 방향으로 이동할 수 있다.
상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 비휘발성 메모리 장치에 저장된 데이터를 독출하는 경우에 상기 저장된 데이터와 관련된 에러를 정정하는 방법에서는, 상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한LLR(Log Likelihood Ratio)을 최적화하고, 상기 최적화된 LLR에 기초하여 상기 저장된 데이터에 대한 에러 정정을 수행한다. 상기 LLR을 최적화하기 위해, 상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 상기 LLR을 업데이트할 수 있다.
일 실시예에서, LDPC(Low Density Parity Check) 코드를 이용하여 상기 저장된 데이터에 대한 에러 정정을 수행할 수 있다.
일 실시예에서, 상기 LLR을 최적화하는 단계 및 상기 에러 정정을 수행하는 단계는 상기 비휘발성 메모리 장치의 외부에 배치되는 메모리 컨트롤러에 의해 수행될 수 있다.
일 실시예에서, 상기 비휘발성 메모리 장치는 복수의 워드 라인들이 수직으로 적층된 수직형 메모리 장치일 수 있다.
일 실시예에서, 상기 비휘발성 메모리 장치는, 복수의 워드 라인들과 복수의 비트 라인들에 각각 연결되는 상기 복수의 메모리 셀들을 구비하는 메모리 셀 어레이, 상기 복수의 워드 라인들에 연결되는 로우 디코더, 및 상기 복수의 비트 라인들에 연결되는 페이지 버퍼를 포함할 수 있다.
상기와 같은 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법에 따르면, 메모리 셀들의 특성 열화에 따른 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 LLR을 최적 값으로 업데이트하므로, 메모리 셀들의 특성이 열화되는 경우에도 상기 LLR을 항상 최적 값으로 유지할 수 있다.
상기와 같은 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 에러 정정 방법에 따르면, 상기 비휘발성 메모리 장치에서 데이터를 독출하는 과정에서 상기 최적화된 LLR에 기초하여 에러 정정을 수행함으로써, 상기 비휘발성 메모리 장치의 에러 정정 성능 및 데이터 독출 성능을 향상시킬 수 있다.
도 1은 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR(Log Likelihood Ratio) 최적화 방법을 나타내는 순서도이다.
도 2a, 2b, 3a 및 3b는 도 1의 비휘발성 메모리 장치의 LLR 최적화 방법을 설명하기 위한 도면들이다.
도 4a 및 4b는 비휘발성 메모리 장치에 포함되는 메모리 셀들의 특성이 열화되는 경우를 설명하기 위한 도면들이다.
도 5는 도 1의 문턱 전압 산포의 변화를 모니터링하는 단계의 일 예를 나타내는 순서도이다.
도 6 및 7은 도 5의 문턱 전압 산포의 변화를 모니터링하는 단계를 설명하기 위한 도면들이다.
도 8은 도 1의 문턱 전압 산포의 변화를 모니터링하는 단계의 다른 예를 설명하기 위한 도면이다.
도 9는 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 에러 정정 방법을 나타내는 순서도이다.
도 10은 도 9의 에러 정정을 수행하는 단계의 일 예를 나타내는 순서도이다.
도 11은 2-비트 연판정 독출 동작의 일 예를 설명하기 위한 도면이다.
도 12는 3-비트 연판정 독출 동작의 일 예를 설명하기 위한 도면이다.
도 13a 내지 도 13c는 3 비트 멀티 레벨 셀을 포함하는 비휘발성 메모리 장치에서 수행되는 연판정 독출 동작의 일 예를 설명하기 위한 도면들이다.
도 14는 본 발명의 실시예들에 따른 비휘발성 메모리 장치를 나타내는 블록도이다.
도 15a, 도 15b 및 도 15c는 도 14의 비휘발성 메모리 장치에 포함되는 메모리 셀 어레이의 예들을 나타내는 도면들이다.
도 16은 본 발명의 실시예들에 따른 비휘발성 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템의 일 예를 나타내는 블록도이다.
도 17은 본 발명의 실시예들에 따른 비휘발성 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템의 다른 예를 나타내는 블록도이다.
도 18은 본 발명의 실시예들에 따른 메모리 시스템이 메모리 카드에 응용된 예를 나타내는 도면이다.
도 19는 본 발명의 실시예들에 따른 메모리 시스템이 솔리드 스테이트 드라이브에 응용된 예를 나타내는 도면이다.
도 20은 본 발명의 실시예들에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR(Log Likelihood Ratio) 최적화 방법을 나타내는 순서도이다. 도 2a, 2b, 3a 및 3b는 도 1의 비휘발성 메모리 장치의 LLR 최적화 방법을 설명하기 위한 도면들이다.
도 1에 도시된 비휘발성 메모리 장치의 LLR 최적화 방법은, 데이터를 독출하는 과정에서 저장된 데이터에 대한 에러 정정을 수행하는 비휘발성 메모리 장치에 적용될 수 있다. 상기 비휘발성 메모리 장치에 의해 수행되는 독출 동작은 경판정(Hard Decision) 독출 동작 및/또는 연판정(Soft Decision) 독출 동작을 포함할 수 있다. 상기 LLR은 비휘발성 메모리 장치에 저장된 데이터와 관련된 에러를 정정하는데 이용되며, 특히 LDPC(Low Density Parity Check) 코드를 이용하여 에러를 정정하는 경우에 이용될 수 있다. 이하, 플래시 메모리 장치를 중심으로 본 발명의 실시예들을 설명하지만, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법은PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric random access memory) 등과 같은 임의의 비휘발성 메모리 장치에도 이용될 수 있다.
도1, 2a, 2b, 3a 및 3b를 참조하면, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법에서는, 상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링한다(단계 S110). 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 상기 LLR을 업데이트한다(단계 S130).
상기 LLR은 메모리 셀들에 저장된 데이터가 "1" 또는 "0"에 상응하게 될 확률의 비율에 로그(log)를 취한 값이다. 비휘발성 메모리 장치를 설계/제조하는 시점에 메모리 셀들에 대한 초기 문턱 전압 산포를 가정하고, 상기 가정된 초기 문턱 전압 산포에 기초하여 상기 LLR의 초기 값을 결정할 수 있다. 하지만, 메모리 셀들의 특성 열화에 따라서 상기 초기 문턱 전압 산포가 변형/왜곡(distortion)될 수 있으며, 이와 같이 상기 초기 문턱 전압 산포가 변형/왜곡된 경우에 상기 초기 값을 가지는 LLR을 이용하면, 에러 정정이 정확하게 수행되지 않을 수 있다.
예를 들어, 상기 비휘발성 메모리 장치는 도 2a 및 2b에 도시된 것과 같은 초기 문턱 전압 산포를 가질 수 있다. 상기 초기 문턱 전압 산포는 데이터 "1"에 상응하는 제1 상태(Si)와 데이터 "0"에 상응하는 제2 상태(Si+1)를 포함할 수 있다. 상기 비휘발성 메모리 장치가 경판정 독출 동작 및 2-비트 연판정 독출 동작을 수행하는 경우에, 상기 초기 문턱 전압 산포는 세 개의 전압들(V1, V2, V3)에 기초하여 네 개의 구간들(110, 120, 130, 140)로 구분될 수 있다. 상기 경판정 독출 동작 및 상기 2-비트 연판정 독출 동작에 대해서는 도 11을 참조하여 후술하도록 한다.
모든 메모리 셀들 각각에 대하여 LLR이 최적화되는 것은 어려우므로, 상기 초기 문턱 전압 산포를 네 개의 구간들(110, 120, 130, 140)로 구분하고 하나의 구간에 포함되는 메모리 셀들은 동일한 값을 가지도록 상기 LLR의 초기 값을 결정할 수 있다. 일 예에서, 구간(120)에 대한 LLR의 초기 값은 하기의 [수학식 1]에 기초하여 획득될 수 있다.
[수학식 1]
Figure pat00001
상기의 [수학식 1]에서, A1은 도 2a의 영역(A1)에 상응하며, B1은 도 2b의 영역(B1)에 상응할 수 있다. 상기 A1은 메모리 셀들에 저장된 데이터가 "1"에 상응하게 될 확률을 나타내며, 상기 초기 문턱 전압 산포에서 제1 전압(V1) 및 제2 전압(V2) 사이의 문턱 전압을 가지는 메모리 셀들 중 데이터 "1"에 상응하는 메모리 셀들의 개수를 나타낼 수 있다. 상기 B1은 메모리 셀들에 저장된 데이터가 "0"에 상응하게 될 확률을 나타내며, 상기 초기 문턱 전압 산포에서 제1 전압(V1) 및 제2 전압(V2) 사이의 문턱 전압을 가지는 메모리 셀들 중 데이터 "0"에 상응하는 메모리 셀들의 개수를 나타낼 수 있다.
마찬가지로, 나머지 구간들(110, 130, 140)에 대한 LLR의 초기 값이 각각 획득될 수 있다. 이에 따라, 상기 비휘발성 메모리 장치에 포함되는 모든 메모리 셀들에는 네 개의 LLR의 초기 값들 중 하나가 각각 할당될 수 있으며, 상기 비휘발성 메모리 장치에서 데이터를 독출하는 과정에서 LDPC 코드를 이용하여 에러를 정정하는 경우에 상기 LLR의 초기 값이 이용될 수 있다.
메모리 셀들의 특성이 열화되는 경우에, 상기 비휘발성 메모리 장치는 도 3a 및 3b에 도시된 것과 같은 현재 문턱 전압 산포를 가질 수 있다. 상기 현재 초기 문턱 전압 산포는 데이터 "1"에 상응하는 제1 상태(Si')와 데이터 "0"에 상응하는 제2 상태(Si+1')를 포함할 수 있다. 도 2a 및 2b에 도시된 상기 초기 문턱 전압 산포와 비교하였을 때, 상기 현재 문턱 전압 산포는 문턱 전압의 크기가 감소하는 방향으로(즉, 왼쪽으로) 이동될 수 있으며, 두 개의 상태 그래프들이 교차하는 골(valley)의 위치가 변경될 수 있다. 하지만, 전압들(V1, V2, V3)은 고정되어 있으므로, 전압들(V1, V2, V3)에 의해 구분되는 구간들(110', 120', 130', 140') 및 각 구간들(110', 120', 130', 140')에 상응하는 메모리 셀들의 개수는 변경될 수 있다. 이 경우, 도 2a 및 2b를 참조하여 상술한 상기 LLR의 초기 값을 이용하는 경우에 에러 정정 성능이 열화될 수 있다.
따라서, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법에서는, 메모리 셀들의 특성 열화에 따른 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 LLR을 업데이트한다. 일 예에서, 구간(120')에 대한 LLR의 업데이트된 값(즉, 최적 값)은 하기의 [수학식 2]에 기초하여 획득될 수 있다.
[수학식 2]
Figure pat00002
상기의 [수학식 2]에서, A1'는 도 3a의 영역(A1')에 상응하며, 상기 현재 문턱 전압 산포에서 제1 전압(V1) 및 제2 전압(V2) 사이의 문턱 전압을 가지는 메모리 셀들 중 데이터 "1"에 상응하는 메모리 셀들의 개수를 나타낼 수 있다. B1'는 도 3b의 영역(B1')에 상응하며, 상기 현재 문턱 전압 산포에서 제1 전압(V1) 및 제2 전압(V2) 사이의 문턱 전압을 가지는 메모리 셀들 중 데이터 "0"에 상응하는 메모리 셀들의 개수를 나타낼 수 있다.
마찬가지로, 나머지 구간들(110', 130', 140')에 대한 LLR의 최적 값이 각각 획득될 수 있다. 상기 비휘발성 메모리 장치에 포함되는 모든 메모리 셀들에는 네 개의 LLR의 최적 값들 중 하나가 각각 할당될 수 있으며, 상기 비휘발성 메모리 장치에서 데이터를 독출하는 과정에서 LDPC 코드를 이용하여 에러를 정정하는 경우에 상기 LLR의 최적 값이 이용될 수 있다. 따라서, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법을 적용하는 경우에, 상기 비휘발성 메모리 장치의 에러 정정 성능 및 데이터 독출 성능이 향상될 수 있다.
한편, 도 2a, 2b, 3a 및 3b에는 2-비트 연판정 독출 동작에 따른 실시예가 도시되어 있으나, 도 2a, 2b, 3a 및 3b에 도시된 LLR 업데이트(즉, 최적화) 동작은 비휘발성 메모리 장치가 3-비트 연판정 독출 동작을 수행하는 경우에도 적용될 수 있다. 상기 3-비트 연판정 독출 동작에서는 문턱 전압 산포가 일곱 개의 전압들에 기초하여 여덟 개의 구간으로 구분될 수 있으며, 이에 대해서는 도 12를 참조하여 후술하도록 한다. 또한, 도 2a, 2b, 3a 및 3b에는 두 개의 인접한 상태들(Si, Si+1)이 도시되어 있으나, 상기 2-비트 연판정 독출 동작 및 상기 3-비트 연판정 독출 동작은 복수의 상태들 중 두 개의 인접한 상태들을 구분하도록 수행될 수 있으며, 이에 대해서는 도 13a, 13b 및 13c를 참조하여 후술하도록 한다.
도 4a 및 4b는 비휘발성 메모리 장치에 포함되는 메모리 셀들의 특성이 열화되는 경우를 설명하기 위한 도면들이다.
도 4a 및 4b를 참조하면, 메모리 셀들의 특성이 열화되는 경우에 상기 메모리 셀들에 대한 문턱 전압 산포가 변화될 수 있다. 예를 들어, 상기 문턱 전압 산포는 인접한 메모리 셀들 사이의 간섭(disturbance) 및 데이터 보유(retention) 시간의 경과 중 적어도 하나의 요인에 의해 변화될 수 있다.
일 실시예에서, 도 4a에 도시된 것처럼, 상기 문턱 전압 산포는 상기 인접한 메모리 셀들 사이의 간섭에 따라서 변화될 수 있으며, 초기 문턱 전압 산포(ITD)에서 제1 문턱 전압 산포(DTD)로 제1 방향(D1)으로 이동할 수 있다. 예를 들어, 상기 간섭은 프로그램 간섭, 소거 간섭, 백 패턴 디펜던시(back pattern depencency) 등을 포함할 수 있다.
다른 실시예에서, 도 4b에 도시된 것처럼, 상기 문턱 전압 산포는 상기 데이터 보유 시간의 경과에 따라서 변화될 수 있으며, 초기 문턱 전압 산포(ITD)에서 제2 문턱 전압 산포(RTD)로 제2 방향(D2)으로 이동할 수 있다. 예를 들어, 상기 데이터 보유 시간이 경과하면 플로팅 게이트(floating gate) 또는 터널 산화물(tunnel oxide)에 포획(trap)된 전하들이 방출되는 차지 로스(charge loss)가 발생할 수 있으며, 프로그램과 소거가 반복되면 상기 터널 산화물이 열화되어 상기 차지 로스가 더욱 증가할 수 있다.
도시하지는 않았지만, 실시예에 따라서 상기 문턱 전압 산포는 상기 인접한 메모리 셀들 사이의 간섭 및 상기 데이터 보유 시간의 경과 모두에 따라서 변화될 수 있다.
도 5는 도 1의 문턱 전압 산포의 변화를 모니터링하는 단계의 일 예를 나타내는 순서도이다. 도 6 및 7은 도 5의 문턱 전압 산포의 변화를 모니터링하는 단계를 설명하기 위한 도면들이다.
도 5를 참조하면, 상기 문턱 전압 산포의 변화를 모니터링하는데 있어서, 상기 복수의 메모리 셀들에 대한 현재 문턱 전압 산포를 검출할 수 있다(단계 S111). 미리 저장된 상기 복수의 메모리 셀들에 대한 초기 문턱 전압 산포와 상기 현재 문턱 전압 산포를 비교하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측할 수 있다(단계 S113).
일 실시예에서, 상기 초기 문턱 전압 산포는 상기 복수의 메모리 셀들 중 상기 비휘발성 메모리 장치의 동작 초기에 제1 전압보다 낮은 문턱 전압을 가지는 제1 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 상기 비휘발성 메모리 장치의 동작 초기에 제2 전압보다 높은 문턱 전압을 가지는 제2 메모리 셀들의 개수에 상응할 수 있다. 상기 현재 문턱 전압 산포는 상기 복수의 메모리 셀들 중 현재 상기 제1 전압보다 낮은 문턱 전압을 가지는 제3 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 현재 상기 제2 전압보다 높은 문턱 전압을 가지는 제4 메모리 셀들의 개수에 상응할 수 있다.
예를 들어, 도 6에 도시된 것처럼 상기 복수의 메모리 셀들은 각각 하나의 데이터 비트를 저장하는 싱글 레벨 메모리 셀(Single Level memory Cell; SLC)일 수 있다. 이 경우, 초기 문턱 전압 산포(ITD1)는 제1 상태(E)(즉, 소거 상태) 및 제2 상태(P)(즉, 프로그램 상태)를 포함할 수 있다. 초기 문턱 전압 산포(ITD1)는 동작 초기에 제1 전압(VA)보다 낮은 문턱 전압을 가지는 제1 메모리 셀들의 개수(N1) 및 동작 초기에 제2 전압(VB)보다 높은 문턱 전압을 가지는 제2 메모리 셀들의 개수(N2)에 상응할 수 있다. 현재 문턱 전압 상태(CRD1)는 제1 상태(E') 및 제2 상태(P')를 포함할 수 있다. 현재 문턱 전압 상태(CRD1)는 현재 제1 전압(VA)보다 낮은 문턱 전압을 가지는 제3 메모리 셀들의 개수(N1') 및 현재 제2 전압(VB)보다 높은 문턱 전압을 가지는 제4 메모리 셀들의 개수(N2')에 상응할 수 있다.
도 6의 실시예에서, 제1 메모리 셀들의 개수(N1)보다 제3 메모리 셀들의 개수(N1')가 증가하였고 제2 메모리 셀들의 개수(N2)보다 제4 메모리 셀들의 개수(N2')가 감소하였으므로, 상기 문턱 전압 산포의 변화 방향은 문턱 전압의 크기가 감소하는 방향으로(즉, 왼쪽으로) 예측될 수 있다. 상기 문턱 전압 산포의 변화 정도(ΔV)는 제3 메모리 셀들의 개수(N1')와 제1 메모리 셀들의 개수(N1)의 차이 및 제2 메모리 셀들의 개수(N2)와 제4 메모리 셀들의 개수(N2')의 차이에 상응할 수 있다.
또한, 도 6의 실시예에서, 제1 전압(VA)은 소거 상태(E)에 상응하는 전압이고, 제2 전압(VB)은 프로그램 상태(P)에 상응하는 전압일 수 있다. 구체적으로, 제1 전압(VA)은 동작 초기의 소거 상태(E)의 문턱 전압의 중간값 또는 평균값일 수 있고, 제2 전압(VB)은 동작 초기의 프로그램 상태(P)의 문턱 전압의 중간값 또는 평균값일 수 있다.
다른 예에서, 상기 복수의 메모리 셀들은 각각 복수의 데이터 비트들을 저장하는 멀티 레벨 메모리 셀(Multi Level memory Cell; MLC)일 수 있다. 구체적으로, 상기 멀티 레벨 메모리 셀은 두 비트의 데이터를 저장하는 2-비트 메모리 셀 또는 세 비트의 데이터를 저장하는 3-비트 메모리 셀일 수 있다. 상기 복수의 메모리 셀들이 상기 멀티 레벨 메모리 셀들인 경우에, 도 7에 도시된 것처럼 초기 문턱 전압 산포(ITD2)는 제1 상태(E)(즉, 소거 상태) 및 제2 내지 제8 상태들(P1, P2, P3, P4, P5, P6, P7)(즉, 프로그램 상태들)을 포함할 수 있다. 초기 문턱 전압 산포(ITD2)는 동작 초기에 제1 전압(VC)보다 낮은 문턱 전압을 가지는 제1 메모리 셀들의 개수(N3) 및 동작 초기에 제2 전압(VD)보다 높은 문턱 전압을 가지는 제2 메모리 셀들의 개수(N4)에 상응할 수 있다. 현재 문턱 전압 상태(CRD2)는 제1 상태(E') 및 제2 내지 제8 상태들(P1', P2', P3', P4', P5', P6', P7')을 포함할 수 있다. 현재 문턱 전압 상태(CRD2)는 현재 제1 전압(VC)보다 낮은 문턱 전압을 가지는 제3 메모리 셀들의 개수(N3') 및 현재 제2 전압(VD)보다 높은 문턱 전압을 가지는 제4메모리 셀들의 개수(N4')에 상응할 수 있다.
도 7의 실시예에서, 제1 메모리 셀들의 개수(N3)보다 제3 메모리 셀들의 개수(N3')가 감소하였고 제2 메모리 셀들의 개수(N4)보다 제4 메모리 셀들의 개수(N4')가 증가하였으므로, 상기 문턱 전압 산포의 변화 방향은 문턱 전압의 크기가 증가하는 방향으로(즉, 오른쪽으로) 예측될 수 있다. 상기 문턱 전압 산포의 변화 정도(ΔV')는 제1 메모리 셀들의 개수(N3)와 제3 메모리 셀들의 개수(N3')의 차이 및 제4 메모리 셀들의 개수(N4')와 제2 메모리 셀들의 개수(N4)의 차이에 상응할 수 있다.
또한, 도 7의 실시예에서, 제1 전압(VC)은 소거 상태(E)에 상응하는 전압이고, 제2 전압(VD)은 최상위 프로그램 상태(예를 들어, 제8 상태(P7))에 상응하는 전압일 수 있다. 구체적으로, 제1 전압(VC)은 동작 초기의 소거 상태(E)의 문턱 전압의 중간값 또는 평균값일 수 있고, 제2 전압(VD)은 동작 초기의 최상위 프로그램 상태(P7)의 문턱 전압의 중간값 또는 평균값일 수 있다.
한편, 도시하지는 않았지만, 도 6 및 7의 실시예들에서 제1 전압들(VA, VC) 및 제2 전압들(VB, VD)은 적어도 하나의 독출 전압에 상응하는 값을 가질 수도 있다.
다른 실시예에서, 도 1에 도시된 상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하기 위해, 상기 복수의 메모리 셀들 중 현재 제1 전압과 제2 전압 사이의 문턱 전압을 가지는 제1메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 현재 상기 제1 전압과 제3 전압 사이의 문턱 전압을 가지는 제2 메모리 셀들의 개수의 차이에 기초하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측할 수 있다. 이 경우, 도 5, 6 및 7을 참조하여 설명한 실시예들과는 달리, 상기 초기 문턱 전압 산포는 사용하지 않고 현재 문턱 전압 산포만을 사용하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측할 수 있다.
예를 들어, 도 8에 도시된 것처럼 초기 문턱 전압 산포(ITD3)는 서로 인접한 제1 상태(Si) 및 제2 상태(Si+1)를 포함할 수 있다. 도 8에는 복수의 상태들 중 두 개의 인접한 상태들(Si, Si+1)만이 도시되어 있다. 초기 문턱 전압 산포(ITD3)는 동작 초기에 제1 전압(V1)과 제2 전압(V2) 사이의 문턱 전압을 가지는 제1 메모리 셀들의 개수(N5) 및 동작 초기에 제1 전압(V1)과 제3전압(V3) 사이의 문턱 전압을 가지는 제2 메모리 셀들의 개수(N6)에 상응할 수 있다. 현재 문턱 전압 상태(CRD3)는 서로 인접한 제1 상태(Si') 및 제2 상태(Si+1')를 포함할 수 있다. 현재 문턱 전압 상태(CRD3)는 현재 제1 전압(V1)과 제2 전압(V2) 사이의 문턱 전압을 가지는 제3 메모리 셀들의 개수(N5') 및 현재 제1 전압(V1)과 제3 전압(V3) 사이의 문턱 전압을 가지는 제4메모리 셀들의 개수(N6')에 상응할 수 있다. 이 때, 상기 복수의 메모리 셀들 중 현재 제1 전압(V1)과 제2 전압(V2) 사이의 문턱 전압을 가지는 제3메모리 셀들의 개수(N5')와 상기 복수의 메모리 셀들 중 현재 제1 전압(V1)과 제3 전압(V3) 사이의 문턱 전압을 가지는 제4메모리 셀들의 개수(N6')의 차이에 기초하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측할 수 있다.
도 8의 실시예에서, 제3 메모리 셀들의 개수(N5')가 제4 메모리 셀들의 개수(N6')보다 크므로, 상기 문턱 전압 산포의 변화 방향은 문턱 전압의 크기가 증가하는 방향으로(즉, 오른쪽으로) 예측될 수 있다. 상기 문턱 전압 산포의 변화 정도(ΔV'')는 제3 메모리 셀들의 개수(N5')와 제4 메모리 셀들의 개수(N6')의 차이에 비례할 수 있다.
또한, 도 8의 실시예에서, 제1 전압(V1)은 경판정(Hard Decision) 독출 동작에 상응하는 전압이고, 제2 전압(V2) 및 제3 전압(V3)은 연판정(Soft Decision) 독출 동작에 상응하는 전압일 수 있다.
도 1 내지8을 참조하여 상술한 바와 같이, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 LLR 최적화 방법에 따르면, 메모리 셀들의 특성 열화에 따른 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 LLR을 최적 값으로 업데이트하므로, 메모리 셀들의 특성이 열화되는 경우에도 상기 LLR을 항상 최적 값으로 유지할 수 있다.
도 9는 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 에러 정정 방법을 나타내는 순서도이다.
도 9에 도시된 비휘발성 메모리 장치의 에러 정정 방법은 데이터를 독출하는 과정에서 저장된 데이터에 대한 에러 정정을 수행하는 비휘발성 메모리 장치에 적용될 수 있다. 상기 비휘발성 메모리 장치에 의해 수행되는 독출 동작은 경판정(Hard Decision) 독출 동작 및/또는 연판정(Soft Decision) 독출 동작을 포함할 수 있다.이하, 플래시 메모리 장치를 중심으로 본 발명의 실시예들을 설명하지만, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 에러 정정 방법은PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory), MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric random access memory) 등과 같은 임의의 비휘발성 메모리 장치에도 이용될 수 있다.
도 9를 참조하면, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 에러 정정 방법에서는, 상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 LLR(Log Likelihood Ratio)을 최적화한다(단계 S210).상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 LLR을 최적화하는 방법은 도 1에 도시된 단계들을 통해 수행될 수 있다. 즉, 상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 LLR을 최적화하기 위해, 상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고(단계 S110), 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 상기 LLR을 업데이트한다(단계 S130). 도 1에 도시된 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 LLR을 최적화하는 방법은 도 1 내지 8을 참조하여 상술하였으므로, 여기서는 중복되는 설명은 생략한다.
한편, 상기 최적화된 LLR에 기초하여 상기 비휘발성 메모리 장치에 저장된 데이터에 대한 에러 정정을 수행한다(단계 S230).
도 10은 도 9의 에러 정정을 수행하는 단계의 일 예를 나타내는 순서도이다. 도 11은 2-비트 연판정 독출 동작의 일 예를 설명하기 위한 도면이다. 도 12는 3-비트 연판정 독출 동작의 일 예를 설명하기 위한 도면이다. 도 13a 내지 도 13c는 3 비트 멀티 레벨 셀을 포함하는 비휘발성 메모리 장치에서 수행되는 연판정 독출 동작의 일 예를 설명하기 위한 도면들이다.
도 10에는 하나의 페이지에 대해 독출 동작을 수행하여 에러 정정을 수행하는 과정이 도시된다.
일 실시예에서, 상기 비휘발성 메모리 장치에 의해 수행되는 독출 동작은 경판정(Hard Decision) 독출 동작 및/또는 연판정(Soft Decision) 독출 동작을 포함할 수 있다. 상기 경판정 독출 동작은 워드 라인에 소정의 기준 레벨을 가지는 독출 전압을 인가하여 상기 워드 라인에 연결된 메모리 셀들의 온/오프 상태에 따라 상기 메모리 셀들로부터 경판정 데이터를 독출하는 동작으로서, 메모리 컨트롤러는 상기 경판정 데이터와 에러 정정 코드(예를 들어, LDPC(Low Density Parity Check) 코드)만을 이용하여 경판정 방식의 에러 정정을 수행할 수 있다. 또한, 상기 연판정 독출 동작은 상기 워드 라인에 일정한 간격을 가지는 복수의 독출 전압들을 인가하여 상기 워드 라인에 연결된 메모리 셀들로부터 상기 경판정 데이터에 대한 신뢰성 정보를 가지는 연판정 데이터를 독출하는 동작으로서, 상기 메모리 컨트롤러는 상기 경판정 데이터 및 상기 에러 정정 코드(예를 들어, LDPC 코드)와 함께 상기 경판정 데이터에 대한 신뢰성 정보를 이용하여 연판정 방식의 에러 정정을 수행할 수 있다.
도 10을 참조하면, 상기 비휘발성 메모리 장치는 하나의 선택된 페이지로부터 경판정 데이터를 독출하는 경판정 독출 동작을 수행할 수 있다(단계 S310). 상기 비휘발성 메모리 장치는 선택 워드 라인에 소정의 기준 레벨을 가지는 제1 독출 전압을 인가하여 상기 선택 워드 라인에 연결된 메모리 셀들을 포함하는 상기 선택된 페이지로부터 상기 경판정 데이터를 독출하는 상기 경판정 독출 동작을 수행할 수 있다. 상기 비휘발성 메모리 장치는 상기 경판정 데이터를 상기 메모리 컨트롤러에 출력할 수 있고, 상기 메모리 컨트롤러는 상기 경판정 데이터가 에러 정정 코드(Error Correction Code; ECC)에 의해 에러 정정이 가능한지 여부를 판단할 수 있다(단계 S320).
상기 경판정 데이터가 상기 에러 정정 코드에 의해 에러 정정이 가능하지 않은 경우(단계 S320: No), 상기 비휘발성 메모리 장치는 상기 경판정 데이터에 대한 신뢰성 정보를 가지는 상기 선택된 페이지의 연판정 데이터를 독출하는 연판정 독출 동작을 수행할 수 있다(단계 S330). 상기 비휘발성 메모리 장치는 상기 선택 워드 라인에 일정한 간격을 가지는 복수의 전압들을 인가하여 상기 선택 워드 라인에 연결된 메모리 셀들을 포함하는 상기 선택된 페이지로부터 상기 경판정 데이터에 대한 신뢰성 정보를 가지는 상기 연판정 데이터를 독출할 수 있다.
예를 들어, 도 11에 도시된 바와 같이, 상기 비휘발성 메모리 장치는 2-비트 연판정 독출 동작을 수행할 수 있다. 상기 2-비트 연판정 독출 동작은 일정한 간격을 가지는 세 개의 전압들(V1, V2, V3)을 이용하는 세 개의 독출 동작들을 포함할 수 있다. 예를 들어, 세 개의 전압들(V1, V2, V3)은 데이터 "1"에 상응하는 제1 상태(Si)와 데이터 "0"에 상응하는 제2 상태(Si+1)의 구분을 위한 소정의 기준 레벨을 가지는 제1 전압(V1), 제1 전압(V1)보다 소정의 레벨만큼 낮은 제2 전압(V2), 및 제1 전압(V1)보다 상기 소정의 레벨만큼 높은 제3 전압(V3)을 포함할 수 있다. 한 편, 상기 기준 레벨을 가지는 제1 전압(V1)을 이용하여 독출되는 데이터(710)는 경판정 독출 동작에 의해 독출된 경판정 데이터(710)일 수 있고, 상기 2-비트 연판정 독출 동작은 상기 기준 레벨을 가지는 제1 전압(V1)의 인가 없이 상기 경판정 독출 동작에 의해 독출된 경판정 데이터(710)를 활용할 수 있다. 상기 2-비트 연판정 독출 동작은 제2 전압(V2)을 이용하여 독출된 데이터 및 제3 전압(V3)을 이용하여 독출된 데이터에 소정의 논리 연산(예를 들어, XNOR 연산(730))(또는 인코딩(Encoding))을 수행하여 경판정 데이터(710)에 대한 신뢰성 정보를 가지는 연판정 데이터(720)를 생성할 수 있다. 연판정 데이터(720)의 각 비트는 경판정 데이터(710)의 상응하는 비트의 신뢰성의 정도를 나타낼 수 있고, 예를 들어, 값이 "1"인 연판정 데이터(720)의 비트는 경판정 데이터(710)의 상응하는 비트가 높은(Strong(S)) 신뢰성을 가짐을 나타내고, 값이 "0"인 연판정 데이터(720)의 비트는 경판정 데이터(710)의 상응하는 비트가 낮은(Weak(W)) 신뢰성을 가짐을 나타낼 수 있다.
다른 예에서, 도 12에 도시된 바와 같이, 상기 비휘발성 메모리 장치는 3-비트 연판정 독출 동작을 수행할 수 있다. 상기3-비트 연판정 독출 동작은 일정한 간격을 가지는 일곱 개의 전압들(V1, V2, V3, V4, V5, V6, V7)을 이용하는 일곱 개의 독출 동작들을 포함할 수 있다. 예를 들어, 일곱 개의 전압들(V1, V2, V3, V4, V5, V6, V7)은 상기 2-비트 연판정 독출 동작에서 이용되는 세 개의 전압들(V1, V2, V3)과 함께 제2 전압(V2)보다 낮은 제4 전압(V4), 제2 전압(V2)과 제1 전압(V1) 사이의 제5 전압(V5), 제1 전압(V1)과 제3 전압(V3) 사이의 제6 전압(V6), 및 제3 전압(V3)보다 높은 제7 전압(V7)을 포함할 수 있다. 제1 전압(V1)을 이용하여 독출되는 데이터(710)는 상기 경판정 독출 동작에 의해 독출된 경판정 데이터(710)일 수 있다. 또한, 제2 및 제3 전압들(V2, V3)을 이용하여 독출되는 데이터(720)는 상위 비트(MSB) 연판정 데이터(720)로서 상기 2-비트 연판정 독출 동작에 의해 독출되는 연판정 데이터(720)에 상응할 수 있다. 상기 3-비트 연판정 독출 동작은 제4 전압(V4), 제5 전압(V5), 제6 전압(V6) 및 제7 전압(V7)을 이용하여 독출된 데이터들에 소정의 논리 연산(예를 들어, XNOR 연산(750))(또는 인코딩(Encoding))을 수행하여 하위 비트(LSB) 연판정 데이터(740)를 생성할 수 있다. 두 개의 비트들을 가지는 각 연판정 데이터(720, 740)는 상응하는 경판정 데이터(710)의 신뢰성의 정도를 나타낼 수 있고, 예를 들어, 값이 "11"인 각 연판정 데이터(720, 740)는 상응하는 경판정 데이터(710)가 매우 높은(Very Strong(VS)) 신뢰성을 가짐을 나타내고, 값이 "10"인 각 연판정 데이터(720, 740)는 상응하는 경판정 데이터(710)가 높은(Strong(S)) 신뢰성을 가짐을 나타내며, 값이 "00"인 각 연판정 데이터(720, 740)는 상응하는 경판정 데이터(710)가 낮은(Weak(W)) 신뢰성을 가짐을 나타내고, 값이 "01"인 각 연판정 데이터(720, 740)는 상응하는 경판정 데이터(710)가 매우 낮은(Very Weak(VW)) 신뢰성을 가짐을 나타낼 수 있다.
한편, 도 11 및 도 12에는 두 개의 인접한 상태들(Si, Si+1)이 도시되어 있으나, 도 11 및 도 12에 도시된 2-비트 연판정 독출 동작 및 3-비트 연판정 독출 동작은 복수의 상태들 중 두 개의 인접한 상태들을 구분하도록 수행될 수 있다. 예를 들어, 상기 메모리 셀들이 셀 당 3 비트의 데이터를 저장하도록 8 개의 상태들(E, P1, P2, P3, P4, P5, P6, P7)을 가지는 3-비트 MLC인 경우, 상기 비휘발성 메모리 장치는 도 13a 내지 도 13c에 도시된 방식으로 2-비트 연판정 독출 동작 또는 3-비트 연판정 독출 동작을 수행할 수 있다. 도 13a에는 제1 기준 독출 전압(VREF1)을 이용하여 3-비트 MLC에 저장된 제1 비트(예를 들어, LSB)의 데이터를 독출할 때 수행되는 2-비트 연판정 독출 동작의 예 및 3-비트 연판정 독출 동작의 예가 도시되어 있고, 도 13b에는 제2 및 제3 기준 독출 전압들(VREF2, VREF3)을 이용하여 3-비트 MLC에 저장된 제2 비트(예를 들어, CSB)의 데이터를 독출할 때 수행되는 2-비트 연판정 독출 동작의 예 및 3-비트 연판정 독출 동작의 예가 도시되어 있으며, 도 13c에는 제4 내지 제7 기준 독출 전압(VREF4, VREF5, VREF6, VREF7)을 이용하여 3-비트 MLC에 저장된 제3 비트(예를 들어, MSB)의 데이터를 독출할 때 수행되는 2-비트 연판정 독출 동작의 예 및 3-비트 연판정 독출 동작의 예가 도시되어 있다.
다시 도 10을 참조하면, 상기 비휘발성 메모리 장치는 상기 연판정 독출 동작에 의해 독출된 상기 선택된 페이지의 상기 연판정 데이터를 상기 메모리 컨트롤러에 출력할 수 있고, 상기 메모리 컨트롤러는 상기 경판정 데이터가 상기 연판정 데이터의 상기 신뢰성 정보에 기초하여 에러 정정이 가능한지 여부를 판단할 수 있다(단계 S340).
상기 경판정 데이터가 상기 연판정 데이터의 상기 신뢰성 정보에 기초하여 에러 정정이 가능하지 않은 경우(단계 S340: No), 상기 메모리 컨트롤러는 상기 선택된 페이지에 대해 데이터 독출 페일(fail) 판정을 내릴 수 있다(단계S360).
한편, 상기 메모리 컨트롤러는 에러 정정 코드, 상기 경판정 데이터 및/또는 상기 연판정 데이터를 이용하여 경판정 방식 또는 연판정 방식의 에러 정정을 수행할 수 있다. 예를 들어, 상기 메모리 컨트롤러는, 상기 경판정 데이터가 상기 신뢰성 정보 없이 에러 정정이 가능한 경우(단계 S320: Yes), 상기 에러 정정 코드 및 상기 경판정 데이터를 이용하여 상기 선택된 페이지의 상기 경판정 데이터에 경판정 방식의 에러 정정(즉, ECC 디코딩)을 수행함으로써 원본 데이터를 복원할 수 있다(단계 S350). 또한, 상기 메모리 컨트롤러는, 상기 경판정 데이터가 상기 연판정 데이터의 상기 신뢰성 정보에 기초하여 에러 정정이 가능한 경우(단계 S340: Yes), 상기 에러 정정 코드, 상기 경판정 데이터 및 상기 연판정 데이터를 이용하여 상기 선택된 페이지의 상기 경판정 데이터에 연판정 방식의 에러 정정을 수행함으로써 원본 데이터를 복원할 수 있다(단계 S350).
일 실시예에서, 상기 경판정 방식 또는 상기 연판정 방식의 에러 정정에서 이용되는 상기 에러 정정 코드는 LDPC(Low Density Parity Check) 코드일 수 있다.
도 1 내지13c를 참조하여 상술한 바와 같이, 본 발명의 실시예들에 따른 비휘발성 메모리 장치의 에러 정정 방법에 따르면, 메모리 셀들의 특성 열화에 따른 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 LLR을 최적 값으로 업데이트함으로써, 메모리 셀들의 특성이 열화되는 경우에도 상기 LLR을 항상 최적 값으로 유지하고, 상기 비휘발성 메모리 장치에서 데이터를 독출하는 과정에서 상기 최적화된 LLR에 기초하여 LDPC 코드를 이용한 에러 정정을 수행함으로써, 상기 비휘발성 메모리 장치의 에러 정정 성능 및 데이터 독출 성능을 향상시킬 수 있다.
도 14는 본 발명의 실시예들에 따른 비휘발성 메모리 장치를 나타내는 블록도이다.
도 14를 참조하면, 비휘발성 메모리 장치(1900)는 메모리 셀 어레이(1910), 페이지 버퍼 회로(1920), 로우 디코더(1930), 전압 발생기(1940), 입출력 버퍼 회로(1960), 및 제어 회로(1950)를 포함한다. 일 실시예에서, 비휘발성 메모리 장치(1900)는 플래시 메모리 장치일 수 있다. 다른 실시예에서, 비휘발성 메모리 장치(1900)는 PRAM(Phase Change Random Access Memory), RRAM(Resistance Random Access Memory),MRAM(Magnetic Random Access Memory), FRAM(Ferroelectric random access memory) 등과 같은 임의의 비휘발성 메모리 장치일 수 있다.
메모리 셀 어레이(1910)는 복수의 워드 라인들 및 복수의 비트 라인들에 각각 연결되는 복수의 메모리 셀들을 포함한다. 도 15a 내지 도 15c를 참조하여 후술하는 바와 같이, 상기 복수의 메모리 셀들은 각각 NAND 또는 NOR 플래시 메모리 셀들일 수 있으며, 2차원 어레이(array) 구조 또는 3차원 수직 어레이 구조로 배열될 수 있다.
일 실시예에서, 상기 복수의 메모리 셀들은 각각 하나의 데이터 비트를 저장하는 싱글 레벨 메모리 셀(Single Level memory Cell; SLC)들 또는 복수의 데이터 비트들을 저장하는 멀티 레벨 메모리 셀(Multi Level memory Cell; MLC)들일 수 있다. 멀티 레벨 메모리 셀의 경우에 기입 모드에서의 프로그램 방식은 쉐도우 프로그램 방식, 리프로그램 방식 또는 온칩 버퍼드 프로그램 방식과 같은 다양한 프로그램 방식이 적용될 수 있다.
페이지 버퍼 회로(1920)는 상기 복수의 비트 라인들에 연결되고, 메모리 셀 어레이(1910)에 프로그램 될 기입 데이터를 저장하거나 혹은 메모리 셀 어레이(1910)로부터 감지된 독출 데이터를 저장한다. 즉, 페이지 버퍼 회로(1920)는 플래시 메모리 장치(1900)의 동작 모드에 따라 기입 드라이버로서 또는 감지 증폭기로서 동작할 수 있다. 예를 들어, 페이지 버퍼 회로(1920)는 기입 모드에서 기입 드라이버로서 동작하고, 독출 모드에서 감지 증폭기로서 동작할 수 있다.입출력 버퍼 회로(1960)는 외부의 메모리 컨트롤러부터 메모리 셀 어레이(1910)에 기입된 데이터를 수신하고, 메모리 셀 어레이(1910)로부터 독출된 데이터를 상기 메모리 컨트롤러로 전송할 수 있다.
로우 디코더(1930)는 상기 복수의 워드 라인들에 연결되고, 로우 어드레스에 응답하여 상기 복수의 워드 라인들 중 적어도 하나를 선택할 수 있다. 전압 발생기(1940)는 제어 회로(1950)의 제어에 따라 프로그램 전압, 패스 전압, 검증 전압, 소거 전압 및 독출 전압과 같은 워드 라인 전압들을 생성할 수 있다. 제어 회로(1950)는 메모리 셀 어레이(1910)에 대한 데이터 저장, 소거 및 독출 동작을 수행하도록 페이지 버퍼 회로(1920), 로우 디코더(1930), 전압 발생기(1940) 및 입출력 버퍼 회로(1960)를 제어할 수 있다.
일 실시예에서, 비휘발성 메모리 장치(1900)는 LLR(Log Likelihood Ratio) 최적화부(1970)를 포함할 수 있다. LLR 최적화부(1970)는 제어 회로(1950)의 내부 또는 외부에 위치할 수 있다. LLR 최적화부(1970)는 메모리 셀 어레이(1910)에 포함되는 상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 LLR을 업데이트함으로써, 상기 복수의 메모리 셀들에 대한 LLR을 최적화 할 수 있다. 상기 LLR은 메모리 셀들에 저장된 데이터가 "1" 또는 "0"에 상응하게 될 확률의 비율에 로그(log)를 취한 값이다. 일 실시예에 있어서, LLR 최적화부(1970)는 제어 회로(1950)로부터 수신되는 커맨드에 응답하여 상기 복수의 메모리 셀들에 대한 LLR을 최적화하는 동작을 수행할 수 있다. 다른 실시예에 있어서, LLR 최적화부(1970)는 외부의 메모리 컨트롤러로부터 수신되는 커맨드에 응답하여 상기 복수의 메모리 셀들에 대한LLR을 최적화하는 동작을 수행할 수 있다. LLR 최적화부(1970)는 도 1에 도시된 비휘발성 메모리 장치의 LLR 최적화 방법을 수행함으로써 상기 복수의 메모리 셀들에 대한LLR을 최적화 할 수 있다. 도 1에 도시된 비휘발성 메모리 장치의 LLR 최적화 방법은 도 1 내지 도 8을 참조하여 상술하였으므로, 여기서는 LLR 최적화부(1970)의 동작에 대한 상세한 설명은 생략한다.
LLR 최적화부(1970)가 상기 복수의 메모리 셀들에 대한 LLR을 최적화하는 동작을 수행할 때마다, 제어 회로(1950)는 상기 최적화된 LLR을 상기 메모리 컨트롤러에 제공할 수 있다. 상기 메모리 컨트롤러는 비휘발성 메모리 장치(1900)로부터 데이터를 독출하는 과정에서 상기 최적화된 LLR에 기초하여 비휘발성 메모리 장치(1900)에 저장된 데이터에 대한 에러 정정을 수행할 수 있다. 예를 들어, 상기 메모리 컨트롤러는 상기 최적화된 LLR에 기초하여 LDPC(Low Density Parity Check) 코드를 이용한 에러 정정을 수행할 수 있다. 따라서 비휘발성 메모리 장치(1900)의 에러 정정 성능 및 데이터 독출 성능은 향상될 수 있다.
도 16 및 도 17을 참조하여 후술하는 바와 같이, LLR 최적화부(1970)는 상기 메모리 컨트롤러 내부에 위치할 수도 있다.
도 15a, 도 15b 및 도 15c는 도 14의 비휘발성 메모리 장치에 포함되는 메모리 셀 어레이의 예들을 나타내는 도면들이다.
도 15a는 NOR형 플래시 메모리 장치에 포함되는 메모리 셀 어레이의 일 예를 나타내는 회로도이고, 도 15b는 NAND형 플래시 메모리 장치에 포함되는 메모리 셀 어레이의 일 예를 나타내는 회로도이며, 도 15c는 수직형 플래시 메모리 장치에 포함되는 메모리 셀 어레이의 일 예를 나타내는 회로도이다.
도 15a를 참조하면, 메모리 셀 어레이(1910a)는 복수의 메모리 셀(MC1)들을 포함할 수 있다. 동일한 열에 배열된 메모리 셀(MC1)들은 비트 라인들(BL(1), ..., BL(m)) 중 하나와 공통 소스 라인(CSL) 사이에 병렬로 배치될 수 있으며, 동일한 행에 배열된 메모리 셀(MC1)들은 워드 라인들(WL(1), WL(2), ..., WL(n)) 중 하나에 공통으로 연결될 수 있다. 예를 들어, 제1 열에 배열된 메모리 셀들은 제1 비트 라인(BL(1))과 공통 소스 라인(CSL) 사이에 병렬로 배치될 수 있다. 제1 행에 배열된 메모리 셀들의 게이트 전극들은 제1 워드 라인(WL(1))에 공통으로 연결될 수 있다. 메모리 셀(MC1)들은 워드 라인들(WL(1), ..., WL(n))에 인가되는 전압의 레벨에 따라 제어될 수 있다. 메모리 셀 어레이(1910a)를 포함하는 NOR형 플래시 메모리 장치는 바이트(byte) 단위 또는 워드(word) 단위로 기입 동작 및 독출 동작을 수행하며, 블록(block, 1912a) 단위로 소거 동작을 수행할 수 있다.
도 15b를 참조하면, 메모리 셀 어레이(1910b)는 스트링 선택 트랜지스터(SST)들, 접지 선택 트랜지스터(GST)들 및 메모리 셀(MC2)들을 포함할 수 있다. 스트링 선택 트랜지스터(SST)들은 비트 라인들(BL(1), ..., BL(m))에 연결되고, 접지 선택 트랜지스터(GST)들은 공통 소스 라인(CSL)에 연결될 수 있다. 동일한 열에 배열된 메모리 셀(MC2)들은 비트 라인들(BL(1), ..., BL(m)) 중 하나와 공통 소스 라인(CSL) 사이에 직렬로 배치될 수 있으며, 동일한 행에 배열된 메모리 셀(MC2)들은 워드 라인들(WL(1), WL(2), WL(3), ..., WL(n-1), WL(n)) 중 하나에 공통으로 연결될 수 있다. 즉, 스트링 선택 트랜지스터(SST)들과 접지 선택 트랜지스터(GST)들 사이에 메모리 셀(MC2)들이 직렬로 연결될 수 있으며, 스트링 선택 라인(SSL)과 접지 선택 라인(GSL) 사이에는 16개, 32개 또는 64개의 복수의 워드 라인들이 배열될 수 있다.
스트링 선택 트랜지스터(SST)들은 스트링 선택 라인(SSL)에 연결되어, 스트링 선택 라인(SSL)으로부터 인가되는 전압의 레벨에 따라 제어될 수 있고, 접지 선택 트랜지스터(GST)들은 접지 선택 라인(GSL)에 연결되어, 접지 선택 라인(GSL)으로부터 인가되는 전압의 레벨에 따라 제어될 수 있다. 메모리 셀(MC2)들은 워드 라인들(WL(1), ..., WL(n))에 인가되는 전압의 레벨에 따라 제어될 수 있다.
메모리 셀 어레이(1910b)를 포함하는 NAND형 플래시 메모리 장치는 페이지(page, 1911b) 단위로 기입 동작 및 독출 동작을 수행하며, 블록(1912b) 단위로 소거 동작을 수행할 수 있다. 한편, 실시예에 따라서, 페이지 버퍼들은 각각 짝수 비트 라인과 홀수 비트 라인이 하나씩 연결될 수 있다. 이 경우, 짝수 비트 라인들은 짝수 페이지를 형성하고, 홀수 비트 라인들은 홀수 페이지를 형성하며, 메모리 셀(MC2)들에 대한 기입 동작은 짝수 페이지와 홀수 페이지가 번갈아 가며 순차적으로 수행될 수 있다.
도 15c를 참조하면, 메모리 셀 어레이(1910c)는 수직 구조를 가지는 복수의 스트링(1913c)들을 포함할 수 있다. 스트링(1913c)은 제2 방향을 따라 복수 개로 형성되어 스트링 열을 형성할 수 있으며, 상기 스트링 열은 제3 방향을 따라 복수 개로 형성되어 스트링 어레이를 형성할 수 있다. 복수의 스트링(1913c)들은 비트 라인들(BL(1), ..., BL(m))과 공통 소스 라인(CSL) 사이에 제1 방향을 따라 직렬로 배치되는 접지 선택 트랜지스터(GSTV)들, 메모리 셀(MC3)들 및 스트링 선택 트랜지스터(SSTV)들을 각각 포함할 수 있다.
접지 선택 트랜지스터(GSTV)들은 접지 선택 라인들(GSL11, GSL12, ..., GSLi1, GSLi2)에 각각 연결되고, 스트링 선택 트랜지스터(SSTV)들은 스트링 선택 라인들(SSL11, SSL12, ..., SSLi1, SSLi2)에 각각 연결될 수 있다. 동일한 층에 배열되는 메모리 셀(MC3)들은 워드 라인들(WL(1), WL(2), ..., WL(n-1), WL(n)) 중 하나에 공통으로 연결될 수 있다. 접지 선택 라인들(GSL11, ..., GSLi2) 및 스트링 선택 라인들(SSL11, ..., SSLi2)은 상기 제2 방향으로 연장되며 상기 제3 방향을 따라 복수 개로 형성될 수 있다. 워드 라인들(WL(1), ..., WL(n))은 상기 제2 방향으로 연장되며 상기 제1 방향 및 상기 제3 방향을 따라 복수 개로 형성될 수 있다. 비트 라인들(BL(1), ..., BL(m))은 상기 제3 방향으로 연장되며 상기 제2 방향을 따라 복수 개로 형성될 수 있다. 메모리 셀(MC3)들은 워드 라인들(WL(1), ..., WL(n))에 인가되는 전압의 레벨에 따라 제어될 수 있다.
메모리 셀 어레이(1910c)를 포함하는 수직형 플래시 메모리 장치는 NAND 플래시 메모리 셀들을 포함하므로, NAND형 플래시 메모리 장치와 마찬가지로 페이지 단위로 기입 동작 및 독출 동작을 수행하며, 블록 단위로 소거 동작을 수행한다.
실시예에 따라서, 하나의 스트링(1913c)에 포함되는 두 개의 스트링 선택 트랜지스터들은 하나의 스트링 선택 라인에 연결되고 하나의 스트링에 포함되는 두 개의 접지 선택 트랜지스터들은 하나의 접지 선택 라인에 연결되도록 구현될 수도 있다. 또한, 실시예에 따라서, 하나의 스트링은 하나의 스트링 선택 트랜지스터 및 하나의 접지 선택 트랜지스터를 포함하여 구현될 수도 있다.
도 16은 본 발명의 실시예들에 따른 비휘발성 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템의 일 예를 나타내는 블록도이다.
도 16을 참조하면, 메모리 시스템(2000a)은 메모리 컨트롤러(2010a) 및 비휘발성 메모리 장치(2020a)를 포함한다.
비휘발성 메모리 장치(2020a)는 데이터를 저장하는 복수의 메모리 셀들을 가지는 메모리 셀 어레이(2025a)를 포함할 수 있다. 메모리 컨트롤러(2010a)는 비휘발성 메모리 장치(2020a)를 제어한다. 메모리 컨트롤러(2010a)는 외부의 호스트와 비휘발성 메모리 장치(2020a) 사이의 데이터 교환을 제어할 수 있다. 메모리 컨트롤러(2010a)는 중앙 처리 장치(CPU)와 같은 프로세서(2011a), 버퍼 메모리(2012a), 호스트 인터페이스(2013a), 메모리 인터페이스(2014a), ECC 블록(2015a) 및 LLR 최적화부(2018a)를 포함할 수 있다. 프로세서(2011a)는 상기 데이터 교환을 위한 동작을 수행할 수 있다. 일 실시예에서, 버퍼 메모리(2012a)는 SRAM(Static random access memory)으로 구현될 수 있다. 다른 실시예에서, 버퍼 메모리(2012a)는 DRAM(Dynamic random access memory), PRAM, FRAM, RRAM, MRAM 등으로 구현될 수 있다. 실시예에 따라서, 버퍼 메모리(2012a)는 메모리 컨트롤러(2010a)의 내부 또는 외부에 위치할 수 있다.
호스트 인터페이스(2013a)는 상기 호스트와 연결되고, 메모리 인터페이스(2014a)는 비휘발성 메모리 장치(2020a)와 연결된다. 프로세서(2011a)는 호스트 인터페이스(2013a)를 통하여 상기 호스트와 통신할 수 있다. 예를 들어, 호스트 인터페이스(2013a)는 USB(Universal Serial Bus), MMC(Multi-Media Card), PCI-E(Peripheral Component Interconnect-Express), SAS(Serial-attached SCSI), SATA(Serial Advanced Technology Attachment), PATA(Parallel Advanced Technology Attachment), SCSI(Small Computer System Interface), ESDI(Enhanced Small Disk Interface), IDE(Integrated Drive Electronics) 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 호스트와 통신하도록 구성될 수 있다. 또한, 프로세서(2011a)는 메모리 인터페이스(2014a)를 통하여 비휘발성 메모리 장치(2020a)와 통신할 수 있다.
LLR 최적화부(2018a)는 메모리 셀 어레이(2025a)에 포함되는 상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 LLR을 업데이트함으로써, 상기 복수의 메모리 셀들에 대한LLR을 최적화 할 수 있다. LLR 최적화부(2018a)는 도 1에 도시된 비휘발성 메모리 장치의 LLR 최적화 방법을 수행함으로써 상기 복수의 메모리 셀들에 대한 LLR을 최적화 할 수 있다. 도 1에 도시된 비휘발성 메모리 장치의 LLR 최적화 방법은 도 1 내지 도 8을 참조하여 상술하였으므로, 여기서는 LLR 최적화부(2018a)의 동작에 대한 상세한 설명은 생략한다.
ECC 블록(2015a)은 상기 호스트로부터 제공된 데이터를 ECC 인코딩하여 비휘발성 메모리 장치(2020a)에 제공하고, 비휘발성 메모리 장치(2020a)로부터 독출된 데이터를 ECC 디코딩하여 상기 호스트에 제공할 수 있다. 일 실시예에서, ECC 블록(2015a)은 LDPC(Low Density Parity Check) 코드를 이용하여 ECC 인코딩 및 ECC 디코딩을 수행할 수 있다.
메모리 컨트롤러(2010a)가 비휘발성 메모리 장치(2020a)로부터 데이터를 독출하는 과정에서 ECC 블록(2015a)은 LLR 최적화부(2018a)로부터 제공되는 상기 최적화된 LLR에 기초하여 비휘발성 메모리 장치(2020a)에 저장된 데이터에 대한 에러 정정을 수행할 수 있다. 예를 들어, ECC 블록(2015a)은 상기 최적화된 LLR에 기초하여 LDPC(Low Density Parity Check) 코드를 이용한 에러 정정을 수행할 수 있다. 따라서 비휘발성 메모리 장치(2020a)의 에러 정정 성능 및 데이터 독출 성능은 향상될 수 있다.
실시예에 따라, 메모리 컨트롤러(2010a)가 비휘발성 메모리 장치(2020a)에 빌트-인(built-in)되어 구현되거나, 메모리 컨트롤러(2010a) 및 비휘발성 메모리 장치(2020a)가 각각 별도의 칩으로 구현될 수 있다.
메모리 시스템(2000a)은 메모리 카드(memory card), 솔리드 스테이트 드라이브(solid state drive) 등과 같은 형태로 구현될 수 있다. 비휘발성 메모리 장치(2020a), 메모리 컨트롤러(2010a), 및/또는 메모리 시스템(2000a)은 다양한 형태들의 패키지를 이용하여 구현될 수 있는데, 예를 들어, 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 WafflePack, 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) 등과 같은 패키지를 이용하여 구현될 수 있다.
도 17은 본 발명의 실시예들에 따른 비휘발성 메모리 장치 및 메모리 컨트롤러를 포함하는 메모리 시스템의 다른 예를 나타내는 블록도이다.
도 17을 참조하면, 메모리 시스템(2000b)은 메모리 컨트롤러(2010b), 적어도 하나의 비휘발성 메모리 장치(2020b) 및 버퍼 메모리(2017b)를 포함한다. 일 실시예에서, 버퍼 메모리(2017b)는 DRAM(Dynamic random access memory)으로 구현될 수 있고, 메모리 컨트롤러(2010b)의 외부에 위치할 수 있다. 비휘발성 메모리 장치(2020b)는 메모리 셀 어레이(2025b)를 포함하고, 메모리 컨트롤러(2010b)는 프로세서(2011b), 호스트 인터페이스(2013b), 메모리 인터페이스(2014b), ECC 블록(2015b), LLR 최적화부(2018b) 및 버퍼 메모리(2017b)를 제어하는 RAM(Random Access Memory) 컨트롤러(2016b)를 포함할 수 있다. 도 17의 메모리 시스템(2000b)은, 버퍼 메모리(2017b)가 메모리 컨트롤러(2010b)의 외부에 위치한 것 외에, 도 16의 메모리 시스템(2000a)과 실질적으로 유사한 구성 및 동작을 가질 수 있다.
도 18은 본 발명의 실시예들에 따른 메모리 시스템이 메모리 카드에 응용된 예를 나타내는 도면이다.
도 18을 참조하면, 메모리 카드(2300)는 복수의 접속 핀들(2310), 메모리 컨트롤러(2320) 및 비휘발성 메모리 장치(2330)를 포함한다.
호스트와 메모리 카드(2300) 사이의 신호들이 송수신되도록 복수의 접속 핀들(2310)은 상기 호스트에 연결될 수 있다. 복수의 접속 핀들(2310)은 클록 핀, 커맨드 핀, 데이터 핀 및/또는 리셋 핀을 포함할 수 있다.
메모리 컨트롤러(2320)는, 상기 호스트로부터 데이터를 수신하고, 상기 수신된 데이터를 비휘발성 메모리 장치(2330)에 저장할 수 있다.
비휘발성 메모리 장치(2330)는, 복수의 메모리 셀들을 가지는 메모리 셀 어레이를 포함할 수 있다.
메모리 컨트롤러(2320)는 상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 LLR을 업데이트함으로써, 상기 복수의 메모리 셀들에 대한 LLR을 최적화 할 수 있다. 또한, 메모리 컨트롤러(2320)는 비휘발성 메모리 장치(2330)로부터 데이터를 독출하는 과정에서 상기 최적화된 LLR에 기초하여 비휘발성 메모리 장치(2330)에 저장된 데이터에 대한 에러 정정을 수행할 수 있다. 예를 들어, 메모리 컨트롤러(2320)는 상기 최적화된 LLR에 기초하여 LDPC(Low Density Parity Check) 코드를 이용한 에러 정정을 수행할 수 있다. 따라서 메모리 카드(2300)의 에러 정정 성능 및 데이터 독출 성능은 향상될 수 있다.
메모리 컨트롤러(2320) 및 비휘발성 메모리 장치(2330)를 포함하는 메모리 시스템은 도 16에 도시된 메모리 시스템(2000a)으로 구현될 수 있다. 도 16에 도시된 메모리 시스템(2000a)의 구성 및 동작에 대해서는 상술하였으므로, 여기서는 메모리 컨트롤러(2320) 및 비휘발성 메모리 장치(2330)의 구성 및 동작에 대한 상세한 설명은 생략한다.
메모리 카드(2300)는 멀티미디어 카드(MultiMedia Card; MMC), 임베디드 멀티미디어 카드(embedded MultiMedia Card; eMMC), 하이브리드 임베디드 멀티미디어 카드(hybrid embedded MultiMedia Card; hybrid eMMC), SD(Secure Digital) 카드, 마이크로 SD 카드, 메모리 스틱(Memory Stick), ID 카드, PCMCIA(Personal Computer Memory Card International Association) 카드, 칩 카드(Chip Card), USB 카드, 스마트 카드(Smart Card), CF 카드(Compact Flash Card)등과 같은 메모리 카드일 수 있다.
실시예에 따라서, 메모리 카드(2300)는 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular), 스마트 폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 호스트에 장착될 수 있다.
도 19는 본 발명의 실시예들에 따른 메모리 시스템이 솔리드 스테이트 드라이브에 응용된 예를 나타내는 도면이다.
도 19를 참조하면, 솔리드 스테이트 드라이브(Solid State Drive; SSD, 2400)는 메모리 컨트롤러(2410), 버퍼 메모리(2420) 및 복수의 비휘발성 메모리 장치들(2450)을 포함한다.
메모리 컨트롤러(2410)는, 호스트(미도시)로부터 데이터를 수신하고, 상기 수신된 데이터를 복수의 비휘발성 메모리 장치들(2450)에 저장할 수 있다. 버퍼 메모리(2420)는 상기 호스트와 복수의 비휘발성 메모리 장치들(2450) 사이에서 교환되는 데이터를 일시 저장할 수 있고, 메모리 컨트롤러(2410)의 외부에 위치하는 DRAM으로 구현될 수 있다.
메모리 컨트롤러(2410)는 각각의 비휘발성 메모리 장치(2450)에 포함되는 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 LLR을 업데이트함으로써, 상기 복수의 메모리 셀들에 대한 LLR을 최적화 할 수 있다. 또한, 메모리 컨트롤러(2410)는 각각의 비휘발성 메모리 장치(2450)로부터 데이터를 독출하는 과정에서 상기 최적화된 LLR에 기초하여 비휘발성 메모리 장치(2450)에 저장된 데이터에 대한 에러 정정을 수행할 수 있다. 예를 들어, 메모리 컨트롤러(2410)는 상기 최적화된 LLR에 기초하여 LDPC(Low Density Parity Check) 코드를 이용한 에러 정정을 수행할 수 있다. 따라서 솔리드 스테이트 드라이브(2400)의 에러 정정 성능 및 데이터 독출 성능은 향상될 수 있다.
메모리 컨트롤러(2410), 버퍼 메모리(2420) 및 복수의 비휘발성 메모리 장치들(2450)을 포함하는 메모리 시스템은 도 17에 도시된 메모리 시스템(2000b)으로 구현될 수 있다. 도 17에 도시된 메모리 시스템(2000b)의 구성 및 동작에 대해서는 상술하였으므로, 여기서는 메모리 컨트롤러(2410), 버퍼 메모리(2420) 및 복수의 비휘발성 메모리 장치들(2450)의 구성 및 동작에 대한 상세한 설명은 생략한다.
실시예에 따라서, 솔리드 스테이트 드라이브(2400)는 컴퓨터, 노트북, 핸드폰, 스마트 폰, MP3 플레이어, 피디에이, 피엠피, 디지털 TV, 디지털 카메라, 포터블 게임 콘솔 등과 같은 호스트에 장착될 수 있다.
도 20은 본 발명의 실시예들에 따른 컴퓨팅 시스템을 나타내는 블록도이다.
도 20을 참조하면, 컴퓨팅 시스템(2500)은 프로세서(2510), 메모리 장치(2520), 사용자 인터페이스(2530), 버스(2550) 및 메모리 시스템(2560)을 포함한다. 실시예에 따라, 컴퓨팅 시스템(2500)은 베이스밴드 칩 셋(baseband chipset)과 같은 모뎀(2540)을 더 포함할 수 있다.
프로세서(2510)는 특정 계산들 또는 태스크들을 실행할 수 있다. 예를 들어, 프로세서(2510)는 마이크로프로세서 또는 중앙 처리 장치(CPU)일 수 있다. 프로세서(2510)는 어드레스 버스, 제어 버스 및/또는 데이터 버스와 같은 버스(2550)를 통하여 메모리 장치(2520)에 연결될 수 있다. 예를 들어, 메모리 장치(2520)는 DRAM, 모바일 DRAM, SRAM, PRAM, FRAM, RRAM 및/또는MRAM으로 구현될 수 있다.
또한, 프로세서(2510)는 주변 구성요소 상호연결(peripheral component interconnect, PCI) 버스와 같은 확장 버스에 연결될 수 있다. 이에 따라, 프로세서(2510)는 키보드 또는 마우스와 같은 하나 이상의 입력 장치, 프린터 또는 디스플레이 장치와 같은 하나 이상의 출력 장치를 포함하는 사용자 인터페이스(2530)를 제어할 수 있다. 모뎀(2540)은 외부 장치와 무선으로 데이터를 송수신할 수 있다.
메모리 시스템(2560)의 비휘발성 메모리 장치(2580)에는 프로세서(2510)에 의해 처리된 데이터 또는 모뎀(2540)을 통하여 수신된 데이터 등이 메모리 컨트롤러(2570)를 통해 저장될 수 있다.
메모리 컨트롤러(2570)는 비휘발성 메모리 장치(2580)에 포함되는 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하고, 상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 LLR을 업데이트함으로써, 상기 복수의 메모리 셀들에 대한LLR을 최적화 할 수 있다. 또한, 메모리 컨트롤러(2570)는 비휘발성 메모리 장치(2580)로부터 데이터를 독출하는 과정에서 상기 최적화된 LLR에 기초하여 비휘발성 메모리 장치(2580)에 저장된 데이터에 대한 에러 정정을 수행할 수 있다. 예를 들어, 메모리 컨트롤러(2570)는 상기 최적화된 LLR에 기초하여 LDPC(Low Density Parity Check) 코드를 이용한 에러 정정을 수행할 수 있다. 따라서 메모리 시스템(2560)의 에러 정정 성능 및 데이터 독출 성능은 향상될 수 있다.
메모리 시스템(2560)은 도 16에 도시된 메모리 시스템(2000a)으로 구현될 수 있다. 도 16에 도시된 메모리 시스템(2000a)의구성 및 동작에 대해서는 상술하였으므로, 여기서는 메모리 시스템(2560)의 구성 및 동작에 대한 상세한 설명은 생략한다.
컴퓨팅 시스템(2500)은 동작 전압을 공급하기 위한 파워 서플라이를 더 포함할 수 있다. 또한, 컴퓨팅 시스템(2500)은, 실시예에 따라서, 응용 칩셋(application chipset), 이미지 프로세서 등을 더 포함할 수 있다.
본 발명은 플래시 메모리와 같은 비휘발성 메모리 장치, 및 이를 포함하는 다양한 장치 및 시스템에 적용될 수 있다. 따라서, 본 발명은 비휘발성 메모리 장치를 구비하는 메모리 카드, 솔리드 스테이트 드라이브(Solid State Drive; SSD), 컴퓨터(computer), 노트북(laptop), 핸드폰(cellular), 스마트폰(smart phone), MP3 플레이어, 피디에이(Personal Digital Assistants; PDA), 피엠피(Portable Multimedia Player; PMP), 디지털 TV, 디지털 카메라, 포터블 게임 콘솔(portable game console) 등과 같은 전자 기기에 확대 적용될 수 있을 것이다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.

Claims (10)

  1. 비휘발성 메모리 장치에 저장된 데이터와 관련된 에러를 정정하는데 이용되는 LLR(Log Likelihood Ratio)을 최적화하는 방법으로서,
    상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하는 단계; 및
    상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 상기 LLR을 업데이트하는 단계를 포함하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  2. 제 1 항에 있어서, 상기 문턱 전압 산포의 변화를 모니터링하는 단계는,
    상기 복수의 메모리 셀들에 대한 현재 문턱 전압 산포를 검출하는 단계; 및
    미리 저장된 상기 복수의 메모리 셀들에 대한 초기 문턱 전압 산포와 상기 현재 문턱 전압 산포를 비교하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측하는 단계를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  3. 제 2 항에 있어서,
    상기 초기 문턱 전압 산포는 상기 복수의 메모리 셀들 중 상기 비휘발성 메모리 장치의 동작 초기에 제1 전압보다 낮은 문턱 전압을 가지는 제1 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 상기 비휘발성 메모리 장치의 동작 초기에 제2 전압보다 높은 문턱 전압을 가지는 제2 메모리 셀들의 개수에 상응하며,
    상기 현재 문턱 전압 산포는 상기 복수의 메모리 셀들 중 현재 상기 제1 전압보다 낮은 문턱 전압을 가지는 제3 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 현재 상기 제2 전압보다 높은 문턱 전압을 가지는 제4 메모리 셀들의 개수에 상응하는 것을 특징으로 하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  4. 제 3 항에 있어서,
    상기 복수의 메모리 셀들은 각각 하나의 데이터 비트를 저장하는 싱글 레벨 메모리 셀(Single Level memory Cell; SLC)이며,
    상기 제1 전압은 소거 상태에 상응하는 전압이고, 상기 제2 전압은 프로그램 상태에 상응하는 전압인 것을 특징으로 하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  5. 제 3 항에 있어서,
    상기 복수의 메모리 셀들은 각각 복수의 데이터 비트들을 저장하는 멀티 레벨 메모리 셀(Multi Level memory Cell; MLC)이며,
    상기 제1 전압은 소거 상태에 상응하는 전압이고, 상기 제2 전압은 최상위 프로그램 상태에 상응하는 전압인 것을 특징으로 하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  6. 제 2 항에 있어서, 상기 문턱 전압 산포의 변화를 모니터링하는 단계는,
    상기 복수의 메모리 셀들 중 현재 제1 전압과 제2 전압 사이의 문턱 전압을 가지는 제1 메모리 셀들의 개수 및 상기 복수의 메모리 셀들 중 현재 상기 제1 전압과 제3 전압 사이의 문턱 전압을 가지는 제2 메모리 셀들의 개수의 차이에 기초하여 상기 문턱 전압 산포의 변화 방향 및 변화 정도를 예측하는 단계를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  7. 제 6 항에 있어서,
    상기 제1 전압은 경판정(Hard Decision) 독출 동작에 상응하는 전압이고, 상기 제2 및 제3 전압들은 연판정(Soft Decision) 독출 동작에 상응하는 전압들인 것을 특징으로 하는 비휘발성 메모리 장치의 LLR 최적화 방법.
  8. 비휘발성 메모리 장치에 저장된 데이터를 독출하는 경우에 상기 저장된 데이터와 관련된 에러를 정정하는 방법으로서,
    상기 비휘발성 메모리 장치에 포함되는 복수의 메모리 셀들에 대한 LLR(Log Likelihood Ratio)을 최적화하는 단계; 및
    상기 최적화된 LLR에 기초하여 상기 저장된 데이터에 대한 에러 정정을 수행하는 단계를 포함하고,
    상기 LLR을 최적화하는 단계는,
    상기 복수의 메모리 셀들에 대한 문턱 전압 산포의 변화를 모니터링하는 단계; 및
    상기 모니터링의 결과에 기초하여 상기 복수의 메모리 셀들에 대한 상기 LLR을 업데이트하는 단계를 포함하는 비휘발성 메모리 장치의 에러 정정 방법.
  9. 제 8 항에 있어서, 상기 저장된 데이터에 대한 에러 정정을 수행하는 단계는,
    LDPC(Low Density Parity Check) 코드를 이용하여 상기 저장된 데이터에 대한 에러 정정을 수행하는 단계를 포함하는 것을 특징으로 하는 비휘발성 메모리 장치의 에러 정정 방법.
  10. 제 8항에 있어서,
    상기 LLR을 최적화하는 단계 및 상기 에러 정정을 수행하는 단계는 상기 비휘발성 메모리 장치의 외부에 배치되는 메모리 컨트롤러에 의해 수행되는 것을 특징으로 하는 비휘발성 메모리 장치의 에러 정정 방법.
KR1020130028266A 2013-03-15 2013-03-15 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법 KR102081415B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020130028266A KR102081415B1 (ko) 2013-03-15 2013-03-15 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법
TW103104505A TWI622988B (zh) 2013-03-15 2014-02-12 使用於非揮發性記憶體元件之對數槪似比率(llr)最佳化和修正非揮發性記憶體元件之錯誤的方法
DE102014103125.3A DE102014103125A1 (de) 2013-03-15 2014-03-10 Verfahren und Vorrichtung zum Optimieren des Log-Likelihood-Quotienten (LLR), die verwendet werden für eine nichtflüchtige Speichervorrichtung und zum Korrigieren von Fehlern in einer nichtflüchtigen Speichervorrichtung
US14/205,482 US9502137B2 (en) 2013-03-15 2014-03-12 Method and device for optimizing log likelihood ratio (LLR) used for nonvolatile memory device and for correcting errors in nonvolatile memory device
CN201410096588.5A CN104052498B (zh) 2013-03-15 2014-03-14 最优化对数似然比的方法以及纠错方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130028266A KR102081415B1 (ko) 2013-03-15 2013-03-15 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법

Publications (2)

Publication Number Publication Date
KR20140113190A true KR20140113190A (ko) 2014-09-24
KR102081415B1 KR102081415B1 (ko) 2020-02-25

Family

ID=51419095

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130028266A KR102081415B1 (ko) 2013-03-15 2013-03-15 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법

Country Status (5)

Country Link
US (1) US9502137B2 (ko)
KR (1) KR102081415B1 (ko)
CN (1) CN104052498B (ko)
DE (1) DE102014103125A1 (ko)
TW (1) TWI622988B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170116384A (ko) * 2016-04-11 2017-10-19 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR20180018069A (ko) * 2016-08-12 2018-02-21 에스케이하이닉스 주식회사 메모리 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
US11474890B2 (en) 2019-07-02 2022-10-18 SK Hynix Inc. Memory system and method of operating memory system

Families Citing this family (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10230396B1 (en) 2013-03-05 2019-03-12 Microsemi Solutions (Us), Inc. Method and apparatus for layer-specific LDPC decoding
US9842428B2 (en) * 2014-06-27 2017-12-12 Samsung Electronics Co., Ltd. Dynamically optimized deferred rendering pipeline
CN104282340B (zh) * 2014-09-30 2017-12-29 华中科技大学 一种固态盘闪存芯片阈值电压感知方法及系统
CN105575440B (zh) * 2014-10-15 2018-11-23 群联电子股份有限公司 错误处理方法、存储器储存装置及存储器控制电路单元
US9484089B2 (en) * 2014-10-20 2016-11-01 Sandisk Technologies Llc Dual polarity read operation
KR102262909B1 (ko) * 2014-12-18 2021-06-10 에스케이하이닉스 주식회사 메모리 시스템 동작 방법
FR3031832B1 (fr) * 2015-01-15 2017-02-03 Commissariat Energie Atomique Systeme de caracterisation d'une cellule memoire flash
KR102360211B1 (ko) * 2015-01-21 2022-02-08 삼성전자주식회사 메모리 시스템의 동작 방법
KR102265220B1 (ko) * 2015-03-09 2021-06-16 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
US9502127B2 (en) 2015-03-17 2016-11-22 Sk Hynix Memory Solutions Inc. System optimization in flash memories
US10332613B1 (en) 2015-05-18 2019-06-25 Microsemi Solutions (Us), Inc. Nonvolatile memory system with retention monitor
US20170110194A1 (en) * 2015-10-19 2017-04-20 Silicon Storage Technology, Inc. Power Driven Optimization For Flash Memory
CN105336379B (zh) * 2015-11-09 2019-03-01 北京联想核芯科技有限公司 一种信息处理方法及固态存储器
CN106816179B (zh) 2015-11-30 2020-12-25 华为技术有限公司 一种闪存纠错方法和装置
US9886214B2 (en) 2015-12-11 2018-02-06 Ip Gem Group, Llc Nonvolatile memory system with erase suspend circuit and method for erase suspend management
US9892794B2 (en) 2016-01-04 2018-02-13 Ip Gem Group, Llc Method and apparatus with program suspend using test mode
US9899092B2 (en) 2016-01-27 2018-02-20 Ip Gem Group, Llc Nonvolatile memory system with program step manager and method for program step management
US9934847B2 (en) * 2016-03-11 2018-04-03 Toshiba Memory Corporation Memory system storing 4-bit data in each memory cell and method of controlling thereof including soft bit information
WO2018022807A1 (en) * 2016-07-28 2018-02-01 Microsemi Solutions (Us), Inc. Auto-learning log likelihood ratio
US10283215B2 (en) 2016-07-28 2019-05-07 Ip Gem Group, Llc Nonvolatile memory system with background reference positioning and local reference positioning
US10291263B2 (en) 2016-07-28 2019-05-14 Ip Gem Group, Llc Auto-learning log likelihood ratio
US10236915B2 (en) 2016-07-29 2019-03-19 Microsemi Solutions (U.S.), Inc. Variable T BCH encoding
US10120585B2 (en) * 2016-08-10 2018-11-06 SK Hynix Inc. Memory system of optimal read reference voltage and operating method thereof
CN108241549B (zh) * 2016-12-27 2021-04-30 北京兆易创新科技股份有限公司 基于ECC的NAND数据Read Retry纠错方法和NAND控制器
CN109215716B (zh) * 2017-07-05 2021-01-19 北京兆易创新科技股份有限公司 提高nand型浮栅存储器可靠性的方法及装置
CN107657984B (zh) * 2017-08-16 2020-09-22 深圳市江波龙电子股份有限公司 闪存的纠错方法、装置、设备以及计算机可读存储介质
CN108647109A (zh) * 2018-03-27 2018-10-12 深圳忆联信息系统有限公司 一种固态硬盘提升ldpc纠错能力的方法
CN108762977A (zh) * 2018-05-30 2018-11-06 郑州云海信息技术有限公司 一种固态盘中纠错算法的优化方法及系统
US11099781B2 (en) 2018-07-19 2021-08-24 Silicon Motion, Inc. Flash memory controller, flash memory module and associated electronic device
US10783972B2 (en) 2018-08-02 2020-09-22 SK Hynix Inc. NAND flash memory with reconfigurable neighbor assisted LLR correction with downsampling and pipelining
TWI684106B (zh) * 2018-09-28 2020-02-01 大陸商深圳衡宇芯片科技有限公司 訓練人工智慧更正儲存裝置的對數概度比的方法
US10706911B1 (en) * 2018-10-10 2020-07-07 Samsung Electronics Co., Ltd. Sense amplifier for sensing multi-level cell and memory device including the sense amplifier
US10790860B2 (en) 2018-11-30 2020-09-29 Kabushiki Kaisha Toshiba Dynamic detection for flash memory
KR20200142219A (ko) 2019-06-12 2020-12-22 삼성전자주식회사 전자 장치 및 그의 저장 공간 이용 방법
CN111429959A (zh) * 2020-03-23 2020-07-17 中国科学院微电子研究所 Ldpc软译码方法、存储器及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100013844A (ko) * 2008-08-01 2010-02-10 삼성전자주식회사 메모리 장치 및 메모리 데이터 판정 방법
KR20110097446A (ko) * 2010-02-25 2011-08-31 삼성전자주식회사 메모리 시스템 및 그것의 데이터 처리 방법
KR20120035064A (ko) * 2010-10-04 2012-04-13 삼성전자주식회사 리드 성능을 향상시킬 수 있는 리드 파라미터 변경 방법과 상기 방법을 수행할 수 있는 장치들

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007132457A2 (en) 2006-05-12 2007-11-22 Anobit Technologies Ltd. Combined distortion estimation and error correction coding for memory devices
JP5177991B2 (ja) 2006-10-25 2013-04-10 株式会社東芝 不揮発性半導体記憶装置
KR100865830B1 (ko) * 2007-02-22 2008-10-28 주식회사 하이닉스반도체 메모리 소자의 독출 방법
US7849383B2 (en) * 2007-06-25 2010-12-07 Sandisk Corporation Systems and methods for reading nonvolatile memory using multiple reading schemes
US7656707B2 (en) 2007-12-14 2010-02-02 Intel Corporation Systems and methods for discrete channel decoding of LDPC codes for flash memory
KR101466698B1 (ko) * 2008-02-19 2014-11-28 삼성전자주식회사 메모리 장치 및 메모리 데이터 읽기 방법
KR101425020B1 (ko) * 2008-03-17 2014-08-04 삼성전자주식회사 메모리 장치 및 데이터 판정 방법
JP2009271852A (ja) 2008-05-09 2009-11-19 Toshiba Corp 半導体記憶装置
US8406048B2 (en) * 2008-08-08 2013-03-26 Marvell World Trade Ltd. Accessing memory using fractional reference voltages
TWI581269B (zh) 2008-09-30 2017-05-01 Lsi公司 利用解碼器效能回饋用於記憶體裝置之軟性資料產生的設備及方法
JP4818381B2 (ja) 2009-03-02 2011-11-16 株式会社東芝 半導体メモリ装置
JP5361603B2 (ja) * 2009-08-13 2013-12-04 株式会社東芝 コントローラ
US8077515B2 (en) * 2009-08-25 2011-12-13 Micron Technology, Inc. Methods, devices, and systems for dealing with threshold voltage change in memory devices
JP5197544B2 (ja) * 2009-10-05 2013-05-15 株式会社東芝 メモリシステム
US8549385B2 (en) 2009-12-15 2013-10-01 Marvell World Trade Ltd. Soft decoding for quantizied channel
KR101710663B1 (ko) 2010-03-02 2017-02-28 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
KR101635506B1 (ko) * 2010-03-29 2016-07-04 삼성전자주식회사 데이터 저장 시스템 및 그것의 읽기 방법
TWI436370B (zh) * 2010-09-17 2014-05-01 Phison Electronics Corp 記憶體儲存裝置、其記憶體控制器與產生對數似然比之方法
US8665650B2 (en) * 2011-02-18 2014-03-04 Marvell World Trade Ltd. Reliability metrics management for soft decoding
JP2012181761A (ja) * 2011-03-02 2012-09-20 Toshiba Corp 半導体メモリ装置および復号方法
US8503242B2 (en) * 2011-04-14 2013-08-06 Micron Technology, Inc. Methods and devices for determining sensing voltages
KR20130028266A (ko) 2011-09-09 2013-03-19 전자부품연구원 액정을 이용한 광결정 디스플레이
US9036415B2 (en) * 2011-12-21 2015-05-19 Sandisk Technologies Inc. Mitigating variations arising from simultaneous multi-state sensing
KR20140008098A (ko) * 2012-07-10 2014-01-21 삼성전자주식회사 메모리 장치 및 상기 메모리 장치의 독출 방법
KR102083491B1 (ko) * 2012-12-05 2020-03-02 삼성전자 주식회사 메모리 장치, 메모리 시스템 및 이의 동작 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100013844A (ko) * 2008-08-01 2010-02-10 삼성전자주식회사 메모리 장치 및 메모리 데이터 판정 방법
KR20110097446A (ko) * 2010-02-25 2011-08-31 삼성전자주식회사 메모리 시스템 및 그것의 데이터 처리 방법
KR20120035064A (ko) * 2010-10-04 2012-04-13 삼성전자주식회사 리드 성능을 향상시킬 수 있는 리드 파라미터 변경 방법과 상기 방법을 수행할 수 있는 장치들

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170116384A (ko) * 2016-04-11 2017-10-19 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR20180018069A (ko) * 2016-08-12 2018-02-21 에스케이하이닉스 주식회사 메모리 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
US11474890B2 (en) 2019-07-02 2022-10-18 SK Hynix Inc. Memory system and method of operating memory system

Also Published As

Publication number Publication date
CN104052498B (zh) 2019-01-18
US9502137B2 (en) 2016-11-22
CN104052498A (zh) 2014-09-17
DE102014103125A1 (de) 2014-09-18
US20140281771A1 (en) 2014-09-18
KR102081415B1 (ko) 2020-02-25
TW201435899A (zh) 2014-09-16
TWI622988B (zh) 2018-05-01

Similar Documents

Publication Publication Date Title
KR102081415B1 (ko) 비휘발성 메모리 장치의 llr 최적화 방법 및 비휘발성 메모리 장치의 에러 정정 방법
US9412471B2 (en) Method of reading data from a nonvolatile memory device, nonvolatile memory device, and method of operating a memory system
US9324420B2 (en) Method of estimating deterioration state of memory device and related method of wear leveling
KR101934892B1 (ko) 메모리 장치의 열화 상태 판정 방법 및 이를 이용한 메모리 시스템
KR101979734B1 (ko) 메모리 장치의 독출 전압 제어 방법 및 이를 이용한 데이터 독출 방법
KR102120823B1 (ko) 비휘발성 메모리 장치의 독출 시퀀스 제어 방법 및 이를 수행하는 메모리 시스템
KR101618311B1 (ko) 플래시 메모리 장치 및 그것의 읽기 방법
CN107305791B (zh) 存储装置和存储系统
US8644066B2 (en) Multi-level non-volatile memory device, system and method with state-converted data
US9093171B2 (en) Method of operating a nonvolatile memory device having read disturbed page
CN106257594B (zh) 读取干扰收回策略
KR102005888B1 (ko) 불휘발성 메모리 장치 및 그것의 읽기 방법
KR20140031556A (ko) 플래시 메모리를 포함하는 플래시 메모리 시스템 및 그것의 비정상 워드 라인 검출 방법
KR20110131648A (ko) 비휘발성 메모리 장치, 그것을 포함한 메모리 시스템 및 메모리 카드 및 그것의 프로그램 방법
KR20210082875A (ko) 머신 러닝을 이용한 비휘발성 메모리 장치의 동작 제어 방법 및 스토리지 시스템
KR102182804B1 (ko) 메모리 장치의 독출 방법
KR101878455B1 (ko) 비휘발성 메모리 장치의 데이터 독출 방법 및 구동 방법
CN112185450A (zh) 存储器系统、存储器控制器和用于操作存储器系统的方法
KR20160016037A (ko) 비휘발성 메모리 장치의 동작 방법
CN115691625A (zh) 非模态读取阈值电压估计的系统和方法
CN116153364A (zh) 估计非参数化最佳读取阈值的系统和方法
US9589661B2 (en) Method of programming memory device and method of reading data of memory device including the same
CN110806947B (zh) 预测错误校正装置、其操作方法和用该装置的存储器系统

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant