KR20210003368A - 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 - Google Patents

메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 Download PDF

Info

Publication number
KR20210003368A
KR20210003368A KR1020190079065A KR20190079065A KR20210003368A KR 20210003368 A KR20210003368 A KR 20210003368A KR 1020190079065 A KR1020190079065 A KR 1020190079065A KR 20190079065 A KR20190079065 A KR 20190079065A KR 20210003368 A KR20210003368 A KR 20210003368A
Authority
KR
South Korea
Prior art keywords
threshold voltage
voltage
read voltage
optimum
read
Prior art date
Application number
KR1020190079065A
Other languages
English (en)
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 KR1020190079065A priority Critical patent/KR20210003368A/ko
Priority to US16/796,553 priority patent/US11145357B2/en
Priority to CN202010192686.4A priority patent/CN112185450A/zh
Publication of KR20210003368A publication Critical patent/KR20210003368A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • 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
    • G11C16/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4074Power supply or voltage generation circuits, e.g. bias voltage generators, substrate voltage generators, back-up power, power control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] 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/5642Sensing or reading circuits; Data output 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
    • G11C16/26Sensing or reading circuits; Data output 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
    • G11C16/30Power supply circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • 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/63Joint error correction and other techniques
    • H03M13/6325Error control coding in combination with demodulation
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/563Multilevel memory reading aspects
    • G11C2211/5632Multilevel reading using successive approximation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Probability & Statistics with Applications (AREA)
  • Quality & Reliability (AREA)
  • Read Only Memory (AREA)

Abstract

본 발명의 실시예들은, 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법에 관한 것으로서, 더욱 상세하게는, 하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 복수의 메모리 셀들 중 일부로부터 리드된 데이터에 대해, 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 제1 문턱 전압 구간들 및 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행함으로써, 데이터가 저장된 메모리 셀의 문턱 전압 분포가 열화된 경우에도 연판정 디코딩에 의한 오류 정정 효과를 증대할 수 있도록 하는 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법을 제공할 수 있다.

Description

메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법{MEMORY SYSTEM, MEMORY CONTROLLER AND OPERATING METHOD OF MEMORY SYSTEM}
본 발명의 실시예들은 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법에 관한 것이다.
저장 장치에 해당하는 메모리 시스템은 컴퓨터와, 스마트 폰, 태블릿 등의 모바일 단말, 또는 각종 전자 기기와 같은 호스트(50)의 요청을 기초로 데이터를 저장하는 장치이다. 메모리 시스템은 하드 디스크 드라이브(HDD: Hard Disk Drive)와 같이 자기 디스크에 데이터를 저장하는 장치뿐 아니라, 솔리드 스테이트 드라이브(SSD: Solid State Drive), UFS(Universal Flash Storage) 장치, eMMC(embedded MMC) 장치 등과 같이 비휘발성 메모리에 데이터를 저장하는 장치 등을 포함할 수 있다.
메모리 시스템은 메모리 장치를 제어하기 위한 메모리 컨트롤러를 더 포함할 수 있으며, 이러한 메모리 컨트롤러는 호스트로부터 커맨드(Command)를 입력 받아, 입력 받은 커맨드에 기초하여 메모리 시스템에 포함된 휘발성 메모리 또는 비휘발성 메모리에 데이터를 리드(Read), 라이트(Write), 또는 소거(Erase) 하기 위한 동작들을 실행하거나 제어할 수 있다.
한편, 메모리 시스템에서 데이터를 리드하는 과정에서 리드 페일(read fail)이 발생하면 오류 정정을 위해 연판정 디코딩(soft decoding) 동작을 수행할 수 있다. 이때, 다양한 요인으로 인해 데이터가 저장된 메모리 셀의 문턱 전압 분포가 열화되면 연판정 디코딩에 의한 오류 정정 효과가 감소하는 문제점이 발생하고 있다. 따라서, 문턱 전압 분포가 열화되어도 오류 정정 효과를 높일 수 있도록 연판정 디코딩을 수행하는 방안이 필요한 실정이다.
본 발명의 실시예들은 데이터가 저장된 메모리 셀의 문턱 전압 분포가 열화된 경우에도 연판정 디코딩에 의한 오류 정정 효과를 증대할 수 있도록 하는 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법을 제공할 수 있다.
일 측면에서, 본 발명의 실시예들은 복수의 메모리 셀들을 포함하는 메모리 장치 및 메모리 장치를 제어하는 메모리 컨트롤러를 포함하는 메모리 시스템을 제공할 수 있다.
메모리 컨트롤러는 하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 하여 복수의 메모리 셀들 중 일부로부터 리드된 데이터에 대해 연판정 디코딩을 수행할 수 있다.
이때, 메모리 컨트롤러는 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 제1 문턱 전압 구간들 및 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행할 수 있다.
제1 문턱 전압 구간들은 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고, 제2 문턱 전압 구간들은 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정될 수 있다.
제1 문턱 전압 구간들의 길이는 제2 문턱 전압 구간들의 길이와 서로 다를 수 있다.
제1 문턱 전압 구간들의 길이는 서로 균일하고, 제2 문턱 전압 구간들의 길이는 서로 균일할 수 있다.
메모리 컨트롤러는 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최소값인 경우, 제1 최적 리드 전압 및 제2 최적 리드 전압을 기초로 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제2 최적 리드 전압은 하나 이상의 최적 리드 전압들 중 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압일 수 있다.
메모리 컨트롤러는 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최대값인 경우, 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제1 샘플링 문턱 전압 구간은 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 작은 리드 전압을 경계로 결정될 수 있고, 제2 샘플링 문턱 전압 구간은 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정될 수 있다.
메모리 컨트롤러는 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우, 1) 제1 최적 리드 전압과 제3 최적 리드 전압 간의 오프셋과 2) 제1 최적 리드 전압과 제4 최적 리드 전압 간의 오프셋을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제3 최적 리드 전압은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값일 수 있다. 그리고 제4 최적 리드 전압은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값일 수 있다.
메모리 컨트롤러는 제1 최적 리드 전압에 인접한 제1 문턱 전압 분포 및 제2 문턱 전압 분포에 대해 1) 제1 최적 리드 전압과 제1 문턱 전압 분포의 평균 문턱 전압 간의 오프셋과 2) 제2 최적 리드 전압과 제2 문턱 전압 분포의 평균 문턱 전압 간의 오프셋을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제2 문턱 전압 분포의 평균 문턱 전압이 제1 문턱 전압 분포의 평균 문턱 전압보다 클 수 있다.
다른 측면에서, 본 발명의 실시예들은 복수의 메모리 셀들을 포함하는 메모리 장치와 통신하기 위한 메모리 인터페이스 및 메모리 장치를 제어하기 위한 제어 회로를 포함하는 메모리 컨트롤러를 제공할 수 있다.
제어 회로는 하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 하여 복수의 메모리 셀들 중 일부로부터 리드된 데이터에 대해 연판정 디코딩을 수행할 수 있다.
이때, 제어 회로는 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 제1 문턱 전압 구간들 및 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행할 수 있다.
제1 문턱 전압 구간들은 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고, 제2 문턱 전압 구간들은 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정될 수 있다.
제1 문턱 전압 구간들의 길이는 제2 문턱 전압 구간들의 길이와 서로 다를 수 있다.
제1 문턱 전압 구간들의 길이는 서로 균일하고, 제2 문턱 전압 구간들의 길이는 서로 균일할 수 있다.
제어 회로는 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최소값인 경우, 제1 최적 리드 전압 및 제2 최적 리드 전압을 기초로 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제2 최적 리드 전압은 하나 이상의 최적 리드 전압들 중 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압일 수 있다.
제어 회로는 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최대값인 경우, 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제1 샘플링 문턱 전압 구간은 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 작은 리드 전압을 경계로 결정될 수 있고, 제2 샘플링 문턱 전압 구간은 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정될 수 있다.
제어 회로는 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우, 1) 제1 최적 리드 전압과 제3 최적 리드 전압 간의 오프셋과 2) 제1 최적 리드 전압과 제4 최적 리드 전압 간의 오프셋을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제3 최적 리드 전압은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값일 수 있다. 그리고 제4 최적 리드 전압은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값일 수 있다.
또 다른 측면에서, 본 발명의 실시예들은 복수의 메모리 셀들을 포함하는 메모리 장치 및 메모리 장치를 제어하는 메모리 컨트롤러를 포함하는 메모리 시스템의 동작 방법을 제공할 수 있다.
메모리 시스템의 동작 방법은 하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 복수의 메모리 셀들 중 일부로부터 데이터를 리드하는 단계를 포함할 수 있다.
메모리 시스템의 동작 방법은 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 제1 문턱 전압 구간들 및 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행하는 단계를 포함할 수 있다.
제1 문턱 전압 구간들은 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고, 제2 문턱 전압 구간들은 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정될 수 있다.
제1 문턱 전압 구간들의 길이는 제2 문턱 전압 구간들의 길이와 서로 다를 수 있다.
제1 문턱 전압 구간들의 길이는 서로 균일하고, 제2 문턱 전압 구간들의 길이는 서로 균일할 수 있다.
전술한 연판정 디코딩을 수행하는 단계에서, 메모리 시스템은 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최소값인 경우, 제1 최적 리드 전압 및 제2 최적 리드 전압을 기초로 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제2 최적 리드 전압은 하나 이상의 최적 리드 전압들 중 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압일 수 있다.
전술한 연판정 디코딩을 수행하는 단계에서, 메모리 시스템은 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최대값인 경우, 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제1 샘플링 문턱 전압 구간은 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 작은 리드 전압을 경계로 결정될 수 있고, 제2 샘플링 문턱 전압 구간은 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정될 수 있다.
전술한 연판정 디코딩을 수행하는 단계에서, 메모리 시스템은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우, 1) 제1 최적 리드 전압과 제3 최적 리드 전압 간의 오프셋과 2) 제1 최적 리드 전압과 제4 최적 리드 전압 간의 오프셋을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
이때, 제3 최적 리드 전압은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값일 수 있다. 그리고 제4 최적 리드 전압은 하나 이상의 최적 리드 전압들 중에서 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값일 수 있다.
본 발명의 실시예들에 의하면, 데이터가 저장된 메모리 셀의 문턱 전압 분포가 열화된 경우에도 연판정 디코딩에 의한 오류 정정 효과를 증대할 수 있도록 하는 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법을 제공할 수 있다.
도 1은 본 발명의 실시예들에 따른 메모리 시스템을 개략적으로 나타낸 블록도이다.
도 2는 본 발명의 실시예들에 따른 메모리 장치를 개략적으로 나타낸 블록도이다.
도 3은 본 발명의 실시예들에 따른 메모리 장치의 메모리 블록을 개략적으로 나타낸 다이어그램이다.
도 4는 본 발명의 실시예들에 따른 메모리 셀들의 문턱 전압 분포들의 일 예를 도시한 도면이다.
도 5는 본 발명의 실시예들에 따른 메모리 셀들의 문턱 전압 분포들의 다른 예를 도시한 도면이다.
도 6은 본 발명의 실시예들에 따른 메모리 셀들 중 일부로부터 리드된 데이터에 대한 연판정 디코딩 동작의 일 예를 설명하는 도면이다.
도 7은 본 발명의 실시예들에 따른 문턱 전압 분포의 차이에 따른 리드 페일 확률의 차이의 일 예를 설명하는 도면이다.
도 8은 본 발명의 실시예들에 따른 메모리 셀들 중 일부로부터 리드된 데이터에 대한 연판정 디코딩 동작의 다른 예를 설명하는 도면이다.
도 9는 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 일 예를 설명하는 도면이다.
도 10은 도 9에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 11은 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 다른 예를 설명하는 도면이다.
도 12는 도 11에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 13은 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 다른 예를 설명하는 도면이다.
도 14는 도 13에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 15는 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 다른 예를 설명하는 도면이다.
도 16은 도 15에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 17은 본 발명의 실시예들에 따른 메모리 시스템의 동작 방법을 나타낸 흐름도이다.
도 18은 본 발명의 실시예들에 따른 컴퓨팅 시스템을 개략적으로 나타낸 블록도이다.
이하, 본 발명의 일부 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성 요소들에 참조부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가질 수 있다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략할 수 있다. 본 명세서 상에서 언급된 "포함한다", "갖는다", "이루어진다" 등이 사용되는 경우 "~만"이 사용되지 않는 이상 다른 부분이 추가될 수 있다. 구성 요소를 단수로 표현한 경우에 특별한 명시적인 기재 사항이 없는 한 복수를 포함하는 경우를 포함할 수 있다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질, 차례, 순서 또는 개수 등이 한정되지 않는다.
구성 요소들의 위치 관계에 대한 설명에 있어서, 둘 이상의 구성 요소가 "연결", "결합" 또는 "접속" 등이 된다고 기재된 경우, 둘 이상의 구성 요소가 직접적으로 "연결", "결합" 또는 "접속" 될 수 있지만, 둘 이상의 구성 요소와 다른 구성 요소가 더 "개재"되어 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다. 여기서, 다른 구성 요소는 서로 "연결", "결합" 또는 "접속" 되는 둘 이상의 구성 요소 중 하나 이상에 포함될 수도 있다.
구성 요소들이나, 동작 방법이나 제작 방법 등과 관련한 시간적 흐름 관계에 대한 설명에 있어서, 예를 들어, "~후에", "~에 이어서", "~다음에", "~전에" 등으로 시간적 선후 관계 또는 흐름적 선후 관계가 설명되는 경우, "바로" 또는 "직접"이 사용되지 않는 이상 연속적이지 않은 경우도 포함할 수 있다.
한편, 구성 요소에 대한 수치 또는 그 대응 정보(예: 레벨 등)가 언급된 경우, 별도의 명시적 기재가 없더라도, 수치 또는 그 대응 정보는 각종 요인(예: 공정상의 요인, 내부 또는 외부 충격, 노이즈 등)에 의해 발생할 수 있는 오차 범위를 포함하는 것으로 해석될 수 있다.
이하에서는, 본 발명의 실시예들을 첨부된 도면을 참조하여 상세히 설명한다.
도 1은 본 발명의 실시예들에 따른 메모리 시스템(100)을 개략적으로 나타낸 블록도다.
도 1을 참조하면, 본 발명의 실시예들에 따른 메모리 시스템(100)은 데이터를 저장하는 메모리 장치(110)와, 메모리 장치(110)를 제어하는 메모리 컨트롤러(120) 등을 포함할 수 있다.
메모리 장치(110)는 다수의 메모리 블록을 포함하며, 메모리 컨트롤러(120)의 제어에 응답하여 동작한다. 여기서, 메모리 장치(110)의 동작은 일 예로, 리드 동작(Read Operation), 프로그램 동작(Program Operation, Write Operation이라고도 함) 및 소거 동작(Erasure Operation) 등을 포함할 수 있다.
메모리 장치(110)는 데이터를 저장하는 복수의 메모리 셀을 포함하는 메모리 셀 어레이를 포함할 수 있다. 이러한 메모리 셀 어레이는 메모리 블록 내에 존재할 수 있다.
예를 들어, 메모리 장치(110)는 DDR SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory), LPDDR4(Low Power Double Data Rate4) SDRAM, GDDR(Graphics Double Data Rate) SDRAM, LPDDR(Low Power DDR), RDRAM(Rambus Dynamic Random Access Memory), 낸드 플래시 메모리(NAND Flash Memory), 수직형 낸드 플래시 메모리(Vertical NAND), 노아 플래시 메모리(NOR Flash memory), 저항성 램(Resistive Random Access Memory: RRAM), 상변화 메모리(Phase-Change Memory: PRAM), 자기저항 메모리(Magnetoresistive Random Access Memory: MRAM), 강유전체 메모리(Ferroelectric Random Access Memory: FRAM), 스핀주입 자화반전 메모리(Spin Transfer Torque Random Access Memory: STT-RAM) 등으로 구현될 수 있다.
한편, 메모리 장치(110)는 3차원 어레이 구조(three-dimensional array structure)로 구현될 수 있다. 본 발명의 실시예들은 전하 저장층이 전도성 부유 게이트(Floating Gate)로 구성된 플래시 메모리 장치는 물론, 전하 저장층이 절연막으로 구성된 차지 트랩형 플래시(Charge Trap Flash; CTF)에도 적용될 수 있다.
메모리 장치(110)는 메모리 컨트롤러(120)로부터 커맨드 및 어드레스를 수신하고, 메모리 셀 어레이 중 어드레스에 의해 선택된 영역을 액세스하도록 구성된다. 즉, 메모리 장치(110)는 어드레스에 의해 선택된 영역에 대해 커맨드에 해당하는 동작을 수행할 수 있다.
예를 들면, 메모리 장치(110)는 프로그램 동작, 리드 동작 및 소거 동작 등을 수행할 수 있다. 이와 관련하여, 프로그램 동작 시, 메모리 장치(110)는 어드레스에 의해 선택된 영역에 데이터를 프로그램 할 것이다. 읽기 동작 시, 메모리 장치(110)는 어드레스에 의해 선택된 영역으로부터 데이터를 읽을 것이다. 소거 동작 시, 메모리 장치(110)는 어드레스에 의해 선택된 영역에 저장된 데이터를 소거할 것이다.
메모리 컨트롤러(120)는 호스트(50)의 요청에 따라 또는 호스트(50)의 요청과 무관하게 메모리 장치(110)의 동작을 제어할 수 있다.
예를 들면, 메모리 컨트롤러(120)는 메모리 장치(110)에 대한 라이트(프로그램), 리드, 소거 및 백그라운드(background) 동작을 제어할 수 있다. 여기서, 백그라운드 동작은 일 예로 가비지 컬렉션(GC, Garbage Collection), 웨어 레벨링(WL, Wear Leveling), 배드 블록 관리(BBM, Bad Block Management) 동작 등이 될 수 있다.
도 1을 참조하면, 메모리 컨트롤러(120)는 호스트 인터페이스(121), 메모리 인터페이스(122), 제어 회로(123) 등을 포함할 수 있다.
호스트 인터페이스(121)는 호스트(50)와의 통신을 위한 인터페이스를 제공한다. 제어 회로(123)는 호스트(50)로부터 커맨드를 수신할 때, 호스트 인터페이스(121)를 통해서 커맨드를 수신하여, 수신된 커맨드를 처리하는 동작을 수행할 수 있다.
메모리 인터페이스(122)는, 메모리 장치(110)와 연결되어 메모리 장치(110)와의 통신을 위한 인터페이스를 제공한다. 즉, 메모리 인터페이스(122)는 제어 회로(123)의 제어에 응답하여 메모리 장치(110)와 메모리 컨트롤러(120)를 인터페이스를 제공하도록 구성될 수 있다.
제어 회로(123)는 메모리 컨트롤러(120)의 전반적인 제어 동작을 수행하여 메모리 장치(110)의 동작을 제어한다. 이를 위해, 일 예로, 제어 회로(123)는 프로세서(124), 워킹 메모리(125) 등 중 하나 이상을 포함할 수 있으며, 경우에 따라서, 에러 검출 및 정정 회로(ECC Circuit, 126) 등을 더 포함할 수 있다.
프로세서(124)는 메모리 컨트롤러(120)의 제반 동작을 제어하고, 논리 연산을 수행할 수 있다. 프로세서(124)는 호스트 인터페이스(121)를 통해 호스트(50)와 통신하고, 메모리 인터페이스(122)를 통해 메모리 장치(110)와 통신할 수 있다.
프로세서(124)는 플래시 변환 레이어(FTL: Flash Translation Layer)의 기능을 수행할 수 있다. 프로세서(124)는 플래시 변환 계층(FTL)을 통해 호스트가 제공한 논리 블록 어드레스(LBA, logical block address)를 물리 블록 어드레스(PBA, physical block address)로 변환할 수 있다. 플래시 변환 계층(FTL)은 맵핑 테이블을 이용하여 논리 블록 어드레스(LBA)를 입력 받아, 물리 블록 어드레스(PBA)로 변환시킬 수 있다. 플래시 변환 계층의 주소 맵핑 방법에는 맵핑 단위에 따라 여러 가지가 있다. 대표적인 어드레스 맵핑 방법에는 페이지 맵핑 방법(Page mapping method), 블록 맵핑 방법(Block mapping method), 그리고 혼합 맵핑 방법(Hybrid mapping method)이 있다.
프로세서(124)는 호스트(50)로부터 수신된 데이터를 랜더마이즈하도록 구성된다. 예를 들면, 프로세서(124)는 랜더마이징 시드(seed)를 이용하여 호스트로부터 수신된 데이터를 랜더마이즈할 것이다. 랜더마이즈된 데이터는 저장될 데이터로서 메모리 장치에 제공되어 메모리 셀 어레이에 프로그램된다.
프로세서(124)는 읽기 동작 시 메모리 장치로부터 수신된 데이터를 디랜더마이즈하도록 구성된다. 예를 들면, 프로세서(124)는 디랜더마이징 시드를 이용하여 메모리 장치로부터 수신된 데이터를 디랜더마이즈할 것이다. 디랜더마이즈된 데이터는 호스트(50)로 출력될 것이다.
프로세서(124)는 펌웨어(FirmWare)를 실행하여 메모리 컨트롤러(120)의 동작을 제어할 수 있다. 다시 말해, 프로세서(124)는, 메모리 컨트롤러(120)의 제반 동작을 제어하고, 논리 연산을 수행하기 위하여, 부팅 시 워킹 메모리(125)에 로딩 된 펌웨어를 실행(구동)할 수 있다. 일 예로, 펌웨어는 메모리 장치(110)에 저장되어 있다가 워킹 메모리(125)에 로딩 될 수 있다.
펌웨어(FirmWare)는 메모리 시스템(100) 내에서 실행되는 프로그램으로서, 일 예로, 호스트(50)에서 메모리 시스템(100)에 요구하는 논리주소(Logical Address)와 메모리 장치(110)의 물리주소(Physical Address) 간의 변환 기능을 하는 플래시 변환 레이어(FTL: Flash Translation Layer), 호스트(50)에서 저장 장치인 메모리 시스템(100)에 요구하는 커맨드를 해석하여 플래시 변환 레이어(FTL)에 전달하는 역할을 하는 호스트 인터페이스 레이어(HIL: Host Interface Layer), 플래시 변환 레이어(FTL)에서 지시하는 커맨드를 메모리 장치(110)로 전달하는 플래시 인터페이스 레이어(FIL: Flash Interface Layer) 등을 포함할 수 있다.
워킹 메모리(125)는 메모리 컨트롤러(120)를 구동하기 위해 필요한 펌웨어, 프로그램 코드, 커맨드 또는 데이터들을 저장할 수 있다.
이러한 워킹 메모리(125)는, 일 예로, 휘발성 메모리로서, SRAM (Static RAM), DRAM (Dynamic RAM) 및 SDRAM(Synchronous DRAM) 등 중 하나 이상을 포함할 수 있다.
에러 검출 및 정정 회로(126)는 에러 정정 코드(Error Correction Code)를 이용하여 워킹 메모리(125)에 저장된 데이터(즉, 메모리 장치(110)로부터 전달된 리드 데이터)의 에러 비트를 검출하고, 검출된 에러 비트를 정정하도록 구성될 수 있다.
에러 검출 및 정정 회로(126)는 에러 정정 코드로 데이터를 디코딩하도록 구현될 수 있다. 에러 검출 및 정정 회로(126)는 다양한 코드 디코더로 구현될 수 있다. 예를 들어, 비체계적 코드 디코딩을 수행하는 디코더 또는 체계적 코드 디코딩을 수행하는 디코더가 이용될 수 있다.
예를 들면, 에러 검출 및 정정 회로(126)는 리드 데이터들 각각에 대해 섹터 단위로 에러 비트를 검출할 수 있다. 즉, 각각의 리드 데이터는 복수의 섹터(sector)로 구성될 수 있다. 섹터(sector)는 플래시 메모리의 읽기 단위인 페이지(page)보다 더 작은 데이터 단위를 의미할 수 있다. 각각의 리드 데이터를 구성하는 섹터들은 어드레스를 매개로 서로 대응될 수 있다.
에러 검출 및 정정 회로(126)는 비트 에러율(Bit Error Rate, BER)을 산출하고, 섹터 단위로 정정 가능 여부를 판단할 수 있다. 에러 검출 및 정정 회로(126)는 예를 들어, 비트 에러율(BER)이 기준값(reference value)보다 높은 경우 해당 섹터를 정정 불가능(Uncorrectable or Fail)으로 판단할 것이다. 반면에, 비트 에러율(BER)이 기준값보다 낮은 경우 해당 섹터를 정정 가능(Correctable or Pass)으로 판단할 것이다.
에러 검출 및 정정 회로(126)는 모든 리드 데이터들에 대해 순차적으로 에러 검출 및 정정 동작을 수행할 수 있다. 에러 검출 및 정정 회로(126)는 리드 데이터에 포함된 섹터가 정정 가능한 경우 다음 리드 데이터에 대해서는 해당 섹터에 대한 에러 검출 및 정정 동작을 생략할 수 있다. 이렇게 모든 리드 데이터들에 대한 에러 검출 및 정정 동작이 종료되면, 에러 검출 및 정정 회로(126)는 마지막까지 정정 불가능으로 판단된 섹터를 검출할 수 있다. 정정 불가능한 것으로 판단된 섹터는 하나 또는 그 이상일 수 있다. 에러 검출 및 정정 회로(126)는 정정 불가능으로 판단된 섹터에 대한 정보(ex. 어드레스 정보)를 프로세서(124)로 전달할 수 있다.
버스(127)는 메모리 컨트롤러(120)의 구성 요소들(121, 122, 124, 125, 126) 사이의 채널을 제공하도록 구성될 수 있다. 이러한 버스(127)는, 일 예로, 각종 제어 신호, 커맨드 등을 전달하기 위한 제어 버스와, 각종 데이터를 전달하기 위한 데이터 버스 등을 포함할 수 있다.
메모리 컨트롤러(120)의 전술한 구성 요소들(121, 122, 124, 125, 126)은 예시일 뿐, 위에서 언급된 구성 요소들(121, 122, 124, 125, 126) 중 일부의 구성 요소는 삭제되거나, 위에서 언급된 구성 요소들(121, 122, 124, 125, 126) 중 몇몇 구성 요소들이 하나로 통합되거나, 하나 이상의 구성 요소가 추가될 수도 있다.
아래에서는, 도 2를 참조하여 메모리 장치(110)에 대하여 더욱 상세하게 설명한다.
도 2는 본 발명의 실시예들에 따른 메모리 장치(110)를 개략적으로 나타낸 블록도다.
도 2를 참조하면, 본 발명의 실시예들에 따른 메모리 장치(110)는, 메모리 셀 어레이(Memory Cell Array, 210), 어드레스 디코더(Address Decoder, 220), 리드 앤 라이트 회로(Read and Write Circuit, 230), 제어 로직(Control Logic, 240) 및 전압 생성 회로(Voltage Generation Circuit, 250) 등을 포함할 수 있다.
메모리 셀 어레이(210)는 다수의 메모리 블록(BLK1~BLKz, z는 2 이상의 자연수)을 포함할 수 있다.
다수의 메모리 블록(BLK1~BLKz)에는, 다수의 워드 라인(WL)과 다수의 비트 라인(BL)이 배치되며 다수의 메모리 셀(MC)이 배열될 수 있다.
다수의 메모리 블록(BLK1~BLKz)은 다수의 워드 라인(WL)을 통해 어드레스 디코더(220)에 연결될 수 있다. 다수의 메모리 블록(BLK1~BLKz)은 다수의 비트 라인(BL)을 통해 리드 앤 라이트 회로(230)에 연결될 수 있다.
다수의 메모리 블록(BLK1~BLKz) 각각은 다수의 메모리 셀을 포함할 수 있다. 예를 들어, 다수의 메모리 셀은 불휘발성 메모리 셀들이며, 수직 채널 구조를 갖는 불휘발성 메모리 셀들로 구성될 수 있다. 메모리 셀 어레이(210)는 2차원 구조의 메모리 셀 어레이로 구성될 수 있으며, 경우에 따라서는, 3차원 구조의 메모리 셀 어레이로 구성될 수도 있다.
한편, 메모리 셀 어레이에 포함되는 복수의 메모리 셀 각각은 적어도 1비트의 데이터를 저장할 수 있다. 일 예로, 메모리 셀 어레이(210)에 포함되는 복수의 메모리 셀 각각은 1비트의 데이터를 저장하는 싱글-레벨 셀(SLC: Single-Level Cell)일 수 있다. 다른 예로, 메모리 셀 어레이(210)에 포함되는 복수의 메모리 셀 각각은 2비트의 데이터를 저장하는 멀티-레벨 셀(MLC: Multi-Level Cell)일 수 있다. 또 다른 예로, 메모리 셀 어레이(210)에 포함되는 복수의 메모리 셀 각각은 3비트의 데이터를 저장하는 트리플-레벨 셀(TLC: Triple-Level Cell)일 수 있다. 또 다른 예로, 메모리 셀 어레이(210)에 포함되는 복수의 메모리 셀 각각은 4비트의 데이터를 저장하는 쿼드-레벨 셀(QLC: Quad-Level Cell)일 수 있다. 또 다른 예로, 메모리 셀 어레이(210)는 5비트 이상의 데이터를 각각 저장하는 복수의 메모리 셀을 포함할 수도 있다.
도 2를 참조하면, 어드레스 디코더(220), 리드 앤 라이트 회로(230), 제어 로직(240) 및 전압 생성 회로(250) 등은 메모리 셀 어레이(210)를 구동하는 주변 회로로서 동작할 수 있다.
어드레스 디코더(220)는 다수의 워드 라인(WL)을 통해 메모리 셀 어레이(210)에 연결될 수 있다. 어드레스 디코더(220)는 제어 로직(240)의 제어에 응답하여 동작하도록 구성될 수 있다. 어드레스 디코더(220)는 메모리 장치(110) 내부의 입출력 버퍼를 통해 어드레스(Address)를 수신할 수 있다.
어드레스 디코더(220)는 수신된 어드레스 중 블록 어드레스(Block Address)를 디코딩 하도록 구성될 수 있다. 어드레스 디코더(220)는 디코딩된 블록 어드레스에 따라 적어도 하나의 메모리 블록을 선택할 수 있다. 또한 어드레스 디코더(220)는 리드 동작 중 리드 전압 인가 동작 시 선택된 메모리 블록 중 선택된 워드 라인에 전압 생성 회로(250)에서 발생된 리드 전압(Vread)를 선택된 워드 라인에 인가하고, 나머지 비 선택된 워드 라인들에는 패스 전압(Vpass)을 인가할 수 있다. 또한 프로그램 검증 동작 시에는 선택된 메모리 블록 중 선택된 워드 라인에 전압 생성 회로(250)에서 발생된 검증 전압을 선택된 워드 라인에 인가하고, 나머지 비 선택된 워드 라인들에는 패스 전압(Vpass)을 인가할 수 있다.
어드레스 디코더(220)는 수신된 어드레스 중 열 어드레스를 디코딩 하도록 구성될 수 있다. 어드레스 디코더(220)는 디코딩 된 열 어드레스를 리드 앤 라이트 회로(230)에 전송할 수 있다.
메모리 장치(110)의 리드 동작 및 프로그램 동작은 페이지 단위로 수행될 수 있다. 리드 동작 및 프로그램 동작 요청 시에 수신되는 어드레스는 블록 어드레스, 행 어드레스 및 열 어드레스를 포함할 수 있다.
어드레스 디코더(220)는 블록 어드레스 및 행 어드레스에 따라 하나의 메모리 블록 및 하나의 워드 라인을 선택할 수 있다. 열 어드레스는 어드레스 디코더(220)에 의해 디코딩되어 리드 앤 라이트 회로(230)에 제공될 수 있다.
어드레스 디코더(220)는 블록 디코더, 행 디코더, 열 디코더 및 어드레스 버퍼 등 중 하나 이상을 포함할 수 있다.
리드 앤 라이트 회로(230)는 다수의 페이지 버퍼(PB)를 포함할 수 있다. 리드 앤 라이트 회로(230)는 메모리 셀 어레이(210)의 리드 동작(Read Operation) 시에는 "리드 회로(read circuit)"로 동작하고, 라이트 동작(Write Operation) 시에는 "라이트 회로(write circuit)"로 동작할 수 있다.
전술한 리드 앤 라이트 회로(230)는 페이지 버퍼 회로(Page Buffer Circuit) 또는 데이터 레지스터 회로(Data Register Circuit)를 포함할 수 있다. 예를 들어, 데이터 레지스터 회로는 데이터 처리 기능을 담당하는 데이터 버퍼(Data Buffer)를 포함할 수 있고, 경우에 따라서, 캐싱 기능을 담당하는 캐쉬 버퍼(Cache Buffer)를 추가로 더 포함할 수 있다.
다수의 페이지 버퍼(PB)는 다수의 비트 라인(BL)을 통해 메모리 셀 어레이(210)에 연결될 수 있다. 다수의 페이지 버퍼(PB)는 리드 동작 및 프로그램 검증 동작 시 메모리 셀들의 문턱전압(Vth)을 센싱하기 위하여 메모리 셀들과 연결된 비트라인들에 센싱 전류를 계속적으로 공급하면서 대응하는 메모리 셀의 프로그램 상태에 따라 흐르는 전류량이 변화되는 것 센싱 노드를 통해 감지하여 센싱 데이터로 래치할 수 있다. 리드 앤 라이트 회로(230)는 제어 로직(240)에서 출력되는 페이지 버퍼 제어 신호들에 응답하여 동작할 수 있다.
리드 앤 라이트 회로(230)는 리드 동작시 메모리 셀의 데이터를 센싱하여 독출 데이터를 임시 저장한 후 메모리 장치(110)의 입출력 버퍼로 데이터(DATA)를 출력한다. 예시적인 실시 예로서, 리드 앤 라이트 회로(230)는 페이지 버퍼들(또는 페이지 레지스터들) 이외에도 열 선택 회로 등을 포함할 수 있다.
제어 로직(240)은 어드레스 디코더(220), 리드 앤 라이트 회로(230), 및 전압 생성 회로(250) 등과 연결될 수 있다. 제어 로직(240)은 메모리 장치(110)의 입출력 버퍼를 통해 커맨드(CMD) 및 제어 신호(CTRL)를 수신할 수 있다.
제어 로직(240)은 제어 신호(CTRL)에 응답하여 메모리 장치(110)의 제반 동작을 제어하도록 구성될 수 있다. 또한 제어 로직(240)은 다수의 페이지 버퍼(PB)의 센싱 노드 프리차지 전위 레벨을 조절하기 위한 제어 신호를 출력할 수 있다.
제어 로직(240)은 메모리 셀 어레이(210)의 리드 동작을 수행하도록 리드 앤 라이트 회로(230)를 제어할 수 있다.
전압 생성 회로(250)는 제어 로직(240)에서 출력되는 전압 생성 회로 제어 신호에 응답하여 리드 동작 시 리드 전압(Vread) 및 패스 전압(Vpass)을 생성할 수 있다.
도 3은 본 발명의 실시예들에 따른 메모리 장치(110)의 다수의 메모리 블록(BLK1~BLKz) 중 하나를 개략적으로 나타낸 도면이다.
도 3을 참조하면, 메모리 장치(110)에 포함된 다수의 메모리 블록(BLK1~BLKz) 각각은 다수의 페이지(PG)와 다수의 스트링(STR)이 매트릭스 형태로 배치되어 구성될 수 있다.
다수의 페이지(PG)는 다수의 워드 라인(WL)과 대응되고, 다수의 스트링(STR)은 다수의 비트 라인(BL)과 대응된다.
즉, 다수의 메모리 블록(BLK1~BLKz) 각각에는 다수의 워드 라인(WL)과 다수의 비트 라인(BL)이 교차하면서 배치될 수 있다. 예를 들어, 다수의 워드 라인(WL) 각각은 행 방향으로 배치되고, 다수의 비트 라인(BL) 각각은 열 방향으로 배치될 수 있다. 다른 예를 들어, 다수의 워드 라인(WL) 각각은 열 방향으로 배치되고, 다수의 비트 라인(BL) 각각은 행 방향으로 배치될 수 있다.
다수의 워드 라인(WL)과 다수의 비트 라인(BL)이 서로 교차하여, 다수의 메모리 셀(MC)이 정의될 수 있다. 각 메모리 셀(MC)에는 트랜지스터가 배치될 수 있다. 예를 들어, 각 메모리 셀(MC)에 배치된 트랜지스터는 드레인, 소스 및 게이트 등을 포함할 수 있는데, 트랜지스터의 드레인(또는 소스)은 해당 비트 라인과 직접 또는 다른 트랜지스터를 경유하여 연결될 수 있고, 트랜지스터의 소스(또는 드레인)는 소스 라인(그라운드일 수 있음)과 직접 또는 다른 트랜지스터를 경유하여 연결될 수 있으며, 트랜지스터의 게이트는 절연체에 둘러싸인 플로팅 게이트(Floating Gate)와 게이트 전압이 인가되는 컨트롤 게이트(Control Gate)를 포함할 수 있다.
리드(Read) 동작 및 프로그램(Program) 동작(라이트 동작)은 페이지 단위로 수행될 수 있으며, 소거(Erasure) 동작은 메모리 블록 단위로 수행될 수 있다.
도 3을 참조하면, 다수의 메모리 블록(BLK1~BLKz) 각각에는, 2개의 최외곽 워드 라인 중 리드 앤 라이트 회로(230)와 더 인접한 제1 최외곽 워드 라인의 바깥쪽에는 제1 선택 라인(소스 선택 라인 또는 드레인 선택 라인이라고도 함)이 더 배치될 수 있으며, 다른 제2 최외곽 워드 라인의 바깥쪽에는 제2 선택 라인(드레인 선택 라인 또는 소스 선택 라인이라고도 함)이 더 배치될 수 있다.
한편, 경우에 따라서, 제1 최외곽 워드 라인과 제1 선택 라인 사이에는 하나 이상의 더미 워드 라인이 더 배치될 수 있다. 또한, 제2 최외곽 워드 라인과 제2 선택 라인 사이에도 하나 이상의 더미 워드 라인이 더 배치될 수 있다.
이하 본 발명의 실시예들을 문턱 전압에 따른 메모리 셀의 개수를 나타내는 그래프를 이용하여 설명한다. 이하의 도면에서 도시하는 그래프에서, 가로축(Vth)은 메모리 셀의 문턱 전압을 의미하고 세로축(CELL_CNT)은 문턱 전압에 대한 메모리 셀의 개수를 의미할 수 있다. 이하에서 설명하는 메모리 셀은 메모리 장치(110)에 포함된 복수의 메모리 셀들 중 일부일 수 있다.
그리고 이하의 도면에서는, 메모리 셀 당 저장되는 비트들의 개수가 3인 경우를 예를 들어 설명한다. 그러나 본 발명의 실시예들에서 메모리 셀 당 저장되는 비트들의 개수는 3으로 한정되지 않는다. 만약 메모리 셀 당 i비트가 저장되면 메모리 셀 당 2^i 개의 문턱 전압 분포(e.g. i=4이면 메모리 셀 당 16개의 문턱 전압 분포)가 형성될 수 있다.
도 4는 본 발명의 실시예들에 따른 메모리 셀들의 문턱 전압 분포들(PV0 ~ PV7)의 일 예를 도시한 도면이다.
도 4를 참조하면, 메모리 장치(110)에 포함된 메모리 셀들은 저장된 데이터에 따라 문턱 전압 분포들(PV0 ~ PV7)을 형성할 수 있다. 예를 들어, 데이터 "111"이 저장된 메모리 셀들은 문턱 전압 분포(PV0)를 형성할 수 있다. 그리고 데이터 "110"이 저장된 메모리 셀들은 문턱 전압 분포(PV1)를 형성할 수 있다. 그리고 데이터 "101"이 저장된 메모리 셀들은 문턱 전압 분포(PV2)를 형성할 수 있다. 그리고 데이터 "100"이 저장된 메모리 셀들은 문턱 전압 분포(PV3)를 형성할 수 있다. 그리고 데이터 "011"이 저장된 메모리 셀들은 문턱 전압 분포(PV4)를 형성할 수 있다. 그리고 데이터 "010"이 저장된 메모리 셀들은 문턱 전압 분포(PV5)를 형성할 수 있다. 그리고 데이터 "001"이 저장된 메모리 셀들은 문턱 전압 분포(PV6)를 형성할 수 있다. 마지막으로 데이터 "000"이 저장된 메모리 셀들은 문턱 전압 분포(PV7)를 형성할 수 있다.
메모리 셀에 리드 전압이 인가되면, 메모리 셀은 자신의 문턱 전압이 인가된 리드 전압보다 작은지 또는 큰지에 따라 온 또는 오프가 될 수 있다. 메모리 장치(110)는 이를 통해 메모리 셀에 저장된 데이터를 획득할 수 있다.
메모리 장치(110)는 메모리 셀에 대해 서로 다른 리드 전압들을 하나씩 인가하면서 메모리 셀에 저장된 데이터를 획득하고, 해당 데이터를 기초로 메모리 셀에 대응하는 문턱 전압 분포를 결정할 수 있다. 일 예로 메모리 장치(110)는 어떤 하나의 메모리 셀의 문턱 전압이 리드 전압(RV3)보다 크고 리드 전압(RV4)보다 작다면, 해당 메모리 셀에 대응하는 문턱 전압 분포는 리드 전압(RV3)과 리드 전압(RV4)의 사이에 위치하는 문턱 전압 분포(PV3)로 결정할 수 있다.
도 4와 같이, 메모리 셀에 저장된 데이터를 리드할 때 문턱 전압 분포들(PV0~PV7)이 리드 전압들(RV1~RV7)에 의해 명확하게 구분된다면, 리드 전압들(RV1~RV7)을 기초로 메모리 셀에 저장된 데이터를 리드하면 오류가 발생하지 않을 수 있다. 따라서, 메모리 장치(110)는 메모리 셀들이 문턱 전압 분포들(PV0~PV7)을 형성하도록 데이터를 프로그램하고 이후 리드 전압들(RV1~RV7)을 기초로 데이터를 리드할 수 있다. 이 경우 메모리 셀에 저장된 데이터를 리드할 때 오류 발생이 최소화된다.
이처럼 메모리 셀에 저장된 데이터를 리드할 때 오류 발생을 최소화시킬 수 있는 리드 전압들(RV1~RV7)은 최적 리드 전압들로 호칭될 수 있다. 최적 리드 전압은 최적 리드 바이어스 등으로도 호칭될 수 있으며 호칭에 의해 그 의미가 한정되지 아니한다.
한편, 도 4에서는 문턱 전압 분포들(PV0~PV7)이 리드 전압들(RV1~RV7)에 의해 각각 명확하게 구분되는 경우에 대해 설명하였다. 그러나, 다양한 요인(e.g. 리드 동작의 반복)으로 인하여 문턱 전압 분포들은 시간에 따라 변화할 수 있고 변화된 문턱 전압 분포끼리 서로 중첩되는 경우가 발생할 수 있다. 일 예로 특정 데이터(e.g."100")가 저장된 메모리 셀들의 문턱 전압 분포는 리드 동작이 반복되면서 넓어지는 방향으로 변할 수 있고 해당 데이터가 저장된 메모리 셀이 가질 수 있는 문턱 전압 분포의 범위가 넓어질 수 있다. 이하, 도 5에서 이러한 경우에 대해 설명한다.
도 5는 본 발명의 실시예들에 따른 메모리 셀들의 문턱 전압 분포들의 다른 예를 도시한 도면이다.
도 5를 참조하면, 도 4와 달리 문턱 전압 분포들(PV0'~PV7')은 인접한 문턱 전압 분포끼리 서로 중첩될 수 있다. 예를 들어 인접한 문턱 전압 분포(PV0')과 문턱 전압 분포(PV1')가 서로 중첩되며 문턱 전압 분포(PV3')과 문턱 전압 분포(PV4')가 서로 중첩될 수 있다.
한편, 문턱 전압 분포들(PV0'~ PV7')이 변화하면서 서로 중첩되면 문턱 전압 분포들을 구분하기 위한 최적 리드 전압 역시 변경될 수 있다. 이때, 문턱 전압 분포들의 변화에 따라 최적 리드 전압을 변경하는 방법은 다양할 수 있다.
예를 들어, 서로 인접한 문턱 전압 분포들의 골짜기에 위치하는 문턱 전압들이 최적 리드 전압들로 결정될 수 있다. 도 5에서는 서로 인접한 문턱 전압 분포들 간의 골짜기에 위치하는 리드 전압(RV1'~ RV7')이 최적 리드 전압들로 결정될 수 있다. 인접한 문턱 전압 분포들 간의 골짜기에 위치하는 리드 전압을 기준으로 리드 동작이 수행되었을 때, 실제 프로그램된 데이터가 다르게 리드되는 메모리 셀의 수가 최소가 되기 때문이다. 이하, 본 발명의 실시예들에서는 이와 같이 변경된 문턱 전압 분포들에 대한 최적 리드 전압들이 이미 결정된 상황을 가정하여 설명한다.
단, 이와 같이 결정된 최적 리드 전압들(RV1'~ RV7')을 기초로 메모리 셀의 데이터를 리드하더라도, 문턱 전압 분포들(PV0'~ PV7')이 중첩될 수 있으므로 리드된 데이터에 오류가 발생할 가능성은 여전히 존재한다.
이처럼 문턱 전압 분포들이 서로 중첩된 영역에 포함되는 메모리 셀에 저장된 데이터를 리드할 때 오류가 발생하면, 메모리 컨트롤러(120)는 오류 정정 동작을 수행할 수 있다. 이때, 메모리 컨트롤러(120)는 오류 정정을 위한 연판정 디코딩 동작을 수행할 수 있으며, 이러한 동작은 일 예로 메모리 컨트롤러(120) 내의 에러 검출 및 정정 회로(126)에 의해 수행될 수 있다.
이하 전술한 연판정 디코딩 동작의 일 예를 도 6에서 보다 상세히 설명한다.
도 6은 본 발명의 실시예들에 따른 메모리 셀들 중 일부로부터 리드된 데이터에 대한 연판정 디코딩 동작의 일 예를 설명하는 도면이다.
우선 도 6에 도시된 문턱 전압 분포들(PV11, PV12)은 도 5의 문턱 전압 분포들(PV0'~ PV7') 중에서 어느 2개의 인접한 문턱 전압 분포(e.g. PV2', PV3')일 수 있다. 그리고 제1 최적 리드 전압(ORV1)은 도 5의 최적 리드 전압들(RV1'~RV7') 중에서 어느 하나(e.g. RV3')일 수 있다.
먼저 제1 최적 리드 전압(ORV1)을 기초로 메모리 셀에서 데이터(이하, 경판정 데이터로 호칭한다)가 리드될 수 있다. 만약 경판정 데이터에 오류가 있다고 판단되면 메모리 컨트롤러(120)는 오류를 정정하기 위해서 추가의 샘플링 리드 전압들(SR1 ~ SR6)을 기초로 연판정 디코딩 동작을 수행할 수 있다. 한편, 도 6에서는 연판정 디코딩 동작을 수행하기 위한 샘플링 리드 전압들(SR1 ~ SR6)의 개수가 6개인 경우를 예를 들어 설명하였으나 샘플링 리드 전압들의 개수는 이에 한정되지 않는다.
연판정 디코딩 동작을 자세히 설명하면, 우선 메모리 컨트롤러(120)는 전술한 샘플링 리드 전압들(SR1 ~ SR6)를 기초로 메모리 셀들로부터 데이터(이하, 연판정 데이터로 호칭한다)를 리드할 수 있다. 메모리 컨트롤러(120)는 리드된 연판정 데이터를 통해 각 메모리 셀들이 샘플링 리드 전압들(SR1 ~ SR6)에 의해 구분되는 문턱 전압 구간들(S1 ~ S7) 중 어느 문턱 전압 구간에 대응하는지를 결정할 수 있다.
이때, 문턱 전압 구간들(S1 ~ S7) 각각은 1개 또는 2개의 샘플링 리드 전압들(SR1 ~ SR6)을 경계로 결정될 수 있다. 예를 들어 문턱 전압 구간(S1)은 문턱 전압이 샘플링 리드 전압(SR5) 미만인 구간이고, 문턱 전압 구간 (S4)은 문턱 전압이 샘플링 리드 전압(SR1) 이상 샘플링 리드 전압(SR2) 미만인 구간으로 결정될 수 있다.
그리고 문턱 전압 구간들(S1 ~ S7)은 각각 특정한 신뢰도 값에 대응할 수 있다. 예를 들어 문턱 전압 구간(S1)은 신뢰도 값 -3에 대응하고, 문턱 전압 구간(S4)는 신뢰도 값 0에 대응하고, 문턱 전압 구간(S6)은 신뢰도 값 -2에 대응한다. 메모리 컨트롤러(120)는 메모리 셀에 대응하는 문턱 전압 구간 및 해당 문턱 전압 구간에 대응하는 신뢰도 값을 기초로 하여 해당 메모리 셀로부터 리드된 경판정 데이터에 신뢰도 값을 부여할 수 있다. 그리고 메모리 컨트롤러(120)는 경판정 데이터와 이에 부여된 신뢰도 값을 고려하여 연판정 디코딩 동작을 수행할 수 있다.
이때, 신뢰도 값은 다양하게 결정될 수 있는데 일 예로 신뢰도 값은 로그 우도비(LLR, Log Likelihood Ratio)일 수 있다. 이때, 신뢰도 값의 절대값은 대응하는 경판정 데이터의 신뢰도를 의미할 수 있으며, 신뢰도 값의 절대값이 클수록 대응하는 경판정 데이터의 신뢰도(오류가 아닐 확률)가 크다는 것을 의미할 수 있다.
따라서 도 6에서, 문턱 전압 분포가 중첩된 영역이 많은 문턱 전압 구간(S4)는 신뢰도의 절대값이 0으로 작고, 문턱 전압 분포가 중첩된 영역이 없거나 작은 문턱 전압 구간(S1, S7)은 신뢰도의 절대값이 3으로 크다.
이와 같이 오류를 정정하기 위해서 메모리 컨트롤러(120)는 문턱 전압 분포가 중첩된 영역이 많은 문턱 전압 구간에 더 작은 절대값의 신뢰도 값을 대응시킬 수 있다.
그리고 신뢰도 값의 부호는 대응하는 경판정 데이터가 "0"일 확률과 "1"일 확률에 따라 결정될 수 있다. 예를 들어 신뢰도 값이 음수이면 대응하는 경판정 데이터가 "1"일 확률이 상대적으로 높다는 것을 나타내고, 신뢰도 값이 양수이면 대응하는 경판정 데이터가 "0"일 확률이 상대적으로 높다는 것을 나타낸다.
전술한 문턱 전압 구간들(S1 ~ S7)의 길이는 다양하게 결정될 수 있다. 일 예로 도 6과 같이 양쪽 끝의 문턱 전압 구간들(S1, S7)을 제외하고 문턱 전압 구간들(S2, S3, S4, S5, S6)의 길이는 동일한 값인 4로 결정될 수 있다.
이처럼 연판정 디코딩 동작 수행 시 양쪽 끝의 문턱 전압 구간들을 제외한 나머지 문턱 전압 구간들의 길이를 최대한 동일하게 설정하는 방식은, 인접한 문턱 전압 분포의 형태가 서로 대칭에 가까울 경우(문턱 전압 분포의 너비 차이가 매우 적은 경우)에는 오류 정정 효과가 높다. 문턱 전압과 제1 최적 리드 전압(ORV1)의 차이에 따라 신뢰도가 변화되는 정도와, 문턱 전압과 제1 최적 리드 전압(ORV1)의 차이에 따라 리드시 오류가 발생되는 정도가 유사하게 결정되기 때문이다.
그러나 도 6과 같이 인접한 문턱 전압 분포(PV11, PV12)의 너비가 서로 다른 경우에도 연판정 디코딩 동작 수행 시 문턱 전압 구간들의 길이를 최대한 동일하게 설정하면, 연판정 디코딩 동작 시에 오류 정정 효과가 오히려 낮아질 수 있다. 이하 도 7에서 이에 대해 상세히 설명한다.
도 7은 본 발명의 실시예들에 따른 문턱 전압 분포의 차이에 따른 리드 페일 확률의 차이의 일 예를 설명하는 도면이다.
도 7을 참조하면 서로 인접한 문턱 전압 분포(PV21, PV22)는 서로 중첩되고 제1 최적 리드 전압(ORV1)은 문턱 전압 분포(PV21)와 문턱 전압 분포(PV22) 사이의 골짜기에 위치한다.
도 6과 마찬가지로 도 7에 도시된 문턱 전압 분포들(PV21, PV22)은 도 5의 문턱 전압 분포들(PV0'~ PV7') 중에서 어느 2개의 인접한 문턱 전압 분포일 수 있고, 제1 최적 리드 전압(ORV1)은 도 5의 최적 리드 전압들(RV1'~RV7') 중에서 어느 하나일 수 있다.
인접한 문턱 전압 분포(PV21, PV22) 간 중첩된 영역을 살펴보면, 중첩된 영역 중 제1 최적 리드 전압(ORV1) 이하인 영역(①)의 크기가 제1 최적 리드 전압(ORV1) 이상인 영역(②)의 크기보다 크다는 것을 알 수 있다. 이는 제1 최적 리드 전압(ORV1)를 기준으로 데이터를 리드할 때, 문턱 전압 분포(PV22)에 대응하는 메모리 셀의 리드 페일 확률이 문턱 전압 분포(PV21)에 대응하는 메모리 셀의 리드 페일 확률보다 높다는 것을 의미한다.
따라서, 연판정 디코딩이 수행될 때, 문턱 전압 분포(PV22)에 대응하는 메모리 셀에 대한 오류 정정 확률은 문턱 전압 분포(PV21)에 대응하는 메모리 셀에 대한 오류 정정 확률보다 높아야 한다.
이를 위해서, 제1 최적 리드 전압(ORV1)을 기준으로 좌측(문턱 전압이 제1 최적 리드 전압(ORV1)보다 낮은 방향)에 위치하는 문턱 전압 구간의 길이가 우측(문턱 전압이 제1 최적 리드 전압(ORV1)보다 높은 방향)에 위치하는 문턱 전압 구간의 길이보다 더 길게 설정되어야 한다. 전술한 바와 같이 신뢰도 값의 절대값이 클수록 대응하는 경판정 데이터의 신뢰도가 크다는 것을 의미하기 때문에, 오류가 발생할 가능성이 높은 좌측 방향의 신뢰도 값의 절대값의 변화 정도가 우측 방향에 비해 작도록 문턱 전압 구간이 형성되어야 하기 때문이다.
이하 도 8에서 제1 최적 리드 전압(ORV)을 기준으로 좌측과 우측에 위치하는 문턱 전압 구간의 길이가 서로 다르게 설정되는 예를 설명한다.
도 8은 본 발명의 실시예들에 따른 메모리 셀들 중 일부로부터 리드된 데이터에 대한 연판정 디코딩 동작의 다른 예를 설명하는 도면이다.
우선 도 8에 도시된 문턱 전압 분포들(PV21, PV22)는 도 5의 문턱 전압 분포들(PV0'~ PV7') 중에서 어느 2개의 인접한 문턱 전압 분포일 수 있다. 그리고 제1 최적 리드 전압(ORV1)은 도 5의 최적 리드 전압들(RV1'~RV7') 중에서 어느 하나일 수 있다.
먼저 제1 최적 리드 전압(ORV1)을 기초로 메모리 셀에서 데이터(이하, 경판정 데이터로 호칭한다)가 리드될 수 있다. 만약 경판정 데이터에 오류가 있다고 판단되면 메모리 컨트롤러(120)는 추가의 샘플링 리드 전압들(SR1' ~ SR6')을 기초로 연판정 디코딩 동작을 수행할 수 있다.
메모리 컨트롤러(120)는 전술한 샘플링 리드 전압들(SR1' ~ SR6')를 기초로 메모리 셀들로부터 데이터(이하, 연판정 데이터로 호칭한다)를 리드할 수 있다. 메모리 컨트롤러(120)는 리드된 연판정 데이터를 통해 각 메모리 셀들이 샘플링 리드 전압들(SR1'~ SR6')에 의해 구분되는 문턱 전압 구간들(S1'~ S8') 중 어느 문턱 전압 구간에 대응하는지를 결정할 수 있다.
이때, 문턱 전압 구간들(S1'~ S8') 각각은 샘플링 리드 전압들(SR1' ~ SR6') 및 제1 최적 리드 전압(ORV1) 중 1개 또는 2개의 값을 경계로 결정될 수 있다. 예를 들어 문턱 전압 구간(S2')은 샘플링 리드 전압(SR5')와 샘플링 리드 전압(SR3')을 경계로 결정될 수 있고, 문턱 전압 구간(S5')은 제1 최적 리드 전압(ORV1)과 샘플링 리드 전압(SR2')를 경계로 결정될 수 있다.
그리고 도 6과 마찬가지로 전술한 문턱 전압 구간들(S1' ~ S8')은 각각 특정한 신뢰도 값에 대응할 수 있고, 신뢰도 값은 일 예로 신뢰도 값은 로그 우도비일 수 있다.
단, 도 6과 달리 도 8에서는 문턱 전압 구간이 제1 최적 리드 전압(ORV1)의 좌측(문턱 전압이 제1 최적 리드 전압(ORV1)보다 낮은 방향)에 위치하는지 또는 우측(문턱 전압이 제1 최적 리드 전압(ORV1)보다 높은 방향)에 위치하는지에 따라 문턱 전압 구간의 길이가 서로 다르게 결정될 수 있다. 이때, 도 8에서는 제1 최적 리드 전압(ORV1)의 좌측에 위치하는 문턱 전압 구간의 길이가 제1 최적 리드 전압(ORV1)의 우측에 위치하는 문턱 전압 구간의 길이보다 길도록 결정될 수 있다.
이는 전술한 바와 같이 문턱 전압 분포(PV21)과 문턱 전압 분포(PV22)가 중첩된 영역에 존재하는 메모리 셀에 대해서, 문턱 전압 분포(PV22)에 포함된 메모리 셀의 오류 정정 확률이 문턱 전압 분포(PV21)에 포함된 메모리 셀의 오류 정정 확률보다 더 높아야 하기 때문이다.
즉, 제1 최적 리드 전압(ORV1)의 좌측에 위치한 문턱 전압과 제1 최적 리드 전압(ORV1)의 차이에 따른 신뢰도의 절대값이 변화되는 정도가, 제1 최적 리드 전압(ORV1)의 우측에 위치한 문턱 전압과 제1 최적 리드 전압(ORV1)의 차이에 따른 신뢰도의 절대값이 변화되는 정도보다 작아야 한다.
구체적으로 제1 최적 리드 전압(ORV1)의 좌측에 위치하는 문턱 전압 구간들을 제1 문턱 전압 구간들(S1'~ S4')이라 하면, 제1 문턱 전압 구간들(S1'~S4') 각각은 제1 최적 리드 전압(ORV1) 이하인 리드 전압을 경계로 결정될 수 있다.
일 예로 문턱 전압 구간(S2')는 샘플링 리드 전압(SR5')과 샘플링 리드 전압(SR3')을 경계로 결정되고, 문턱 전압 구간(S4')는 샘플링 리드 전압(SR1')과 제1 최적 리드 전압(ORV1)을 경계로 결정될 수 있다.
도 8에서, 문턱 전압 구간(S1')을 제외한 나머지 제1 문턱 전압 구간들(S2'~S4') 각각의 길이는 5로 결정될 수 있다.
그리고 제1 최적 리드 전압(ORV1)의 우측에 위치하는 문턱 전압 구간들을 제2 문턱 전압 구간들(S5'~ S8')이라 하면, 제2 문턱 전압 구간들(S5'~S8') 각각은 제1 최적 리드 전압(ORV1) 이상인 리드 전압을 경계로 결정될 수 있다.
일 예로 문턱 전압 구간(S6')는 샘플링 리드 전압(SR2')과 샘플링 리드 전압(SR4')을 경계로 결정되고, 문턱 전압 구간(S5')은 샘플링 리드 전압(SR2')과 제1 최적 리드 전압(ORV1)을 경계로 결정될 수 있다.
도 8에서, 문턱 전압 구간(S8')을 제외한 나머지 제2 문턱 전압 구간들(S5'~S7') 각각의 길이는 5보다 작은 2로 결정될 수 있다.
한편, 제1 문턱 전압 구간들의 길이가 연판정 디코딩 방식에 따라 서로 다르게 결정되거나 제2 문턱 전압 구간들의 길이가 연판정 디코딩 방식에 따라 서로 다르게 결정될 수도 있다. 반면 제1 문턱 전압 구간들의 길이가 균일하게 결정되고, 제2 문턱 전압 구간들의 길이가 균일하게 결정될 수도 있다. 단 이 경우에도 제1 문턱 전압 구간들에 포함되는 어느 하나의 문턱 전압 구간의 길이는 제2 문턱 전압 구간들에 포함되는 어느 하나의 문턱 전압 구간의 길이와 다르다.
또한, 도 8에서는 문턱 전압 구간(PV22)의 너비가 문턱 전압 구간(PV21)의 너비보다 큰 경우에 대해 설명하였으나, 문턱 전압 구간(PV21)의 너비가 문턱 전압 구간(PV22)의 너비보다 큰 경우에도 도 8에서 설명한 방식이 동일하게 적용될 수 있다. 이 경우에는 반대로 제1 최적 리드 전압(ORV1)의 좌측에 위치하는 문턱 전압 구간의 길이가 제1 최적 리드 전압(ORV1)의 우측에 위치하는 문턱 전압 구간의 길이보다 짧도록 결정될 수 있다.
이처럼 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 방법의 예들을 이하 도 9 내지 도 16을 통해 설명한다.
도 9는 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 일 예를 설명하는 도면이다.
도 9는 제1 최적 리드 전압(ORV1)이 하나 이상의 최적 리드 전압들 중 최소값인 경우에 대해 설명한다. 이 경우 제1 최적 리드 전압(ORV1)의 우측에는 비교 대상이 되는 제2 최적 리드 전압(ORV2)이 존재하나 좌측에는 비교 대상이 되는 최적 리드 전압이 존재하지 않는다. 그리고 제2 최적 리드 전압(ORV2)은 전술한 하나 이상의 최적 리드 전압들 중 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압이다.
일 예로 제1 최적 리드 전압(ORV1)은 도 5의 최적 리드 전압(PV1')일 수 있고, 제2 최적 리드 전압(ORV2)는 도 5의 최적 리드 전압(PV2')일 수 있다.
도 9를 참조하면, 문턱 전압 분포들(PV31, PV32, PV33)은 다양한 원인에 의해서 열화되어 문턱 전압 분포들(PV31', PV32', PV33')로 변경될 수 있다. 이때, 문턱 전압 분포들(PV31, PV32, PV33)은 일 예로 도 4의 문턱 전압 분포들(PV0, PV1, PV2)일 수 있고 문턱 전압 분포들(PV31', PV32', PV33')은 일 예로 도 5의 문턱 전압 분포들(PV0', PV1', PV2')일 수 있다.
이처럼 문턱 전압 분포들이 변경되면 이에 따라 최적 리드 전압의 값도 변경된다. 예를 들어 문턱 전압 분포(PV31)과 문턱 전압 분포(PV32) 사이에 위치한 최적 리드 전압(RV11)은 제1 최적 리드 전압(ORV1)로 변경되고, 문턱 전압 분포(PV32)와 문턱 전압 분포(PV33) 사이에 위치한 최적 리드 전압(RV12)은 제2 최적 리드 전압(ORV2)로 변경될 수 있다.
이때, 변경된 최적 리드 전압 간의 차이(제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)의 차이)가 이전의 최적 리드 전압 간의 차이(최적 리드 전압(RV11)과 최적 리드 전압(RV12)와의 차이로서 이하 기준 리드 전압 차이(REF_RVD)로 호칭한다)보다 증가했는지 또는 감소했는지에 따라서, 제1 최적 리드 전압(ORV1)을 기준으로 연판정 디코딩을 수행할 때 사용되는 문턱 전압 구간의 특성이 달라질 수 있다. 기준 리드 전압 차이(REF_RVD)는 특정한 시점에 결정될 수 있는데, 일 예로 메모리 셀에 대한 프로그램 동작이 완료된 직후에 결정될 수 있다.
구체적으로, 제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)의 차이가 기준 리드 전압 차이(REF_RVD)보다 크다는 것은 문턱 전압 분포(PV32')의 너비가 문턱 전압 분포(PV31')의 너비보다 더 크다는 것을 의미한다. 이는 곧 문턱 전압 분포(PV32)가 문턱 전압 분포(PV32')로 열화된 정도가 문턱 전압 분포(PV31)가 문턱 전압 분포(PV31')로 열화된 정도보다 크다는 것을 의미한다. 따라서, 메모리 컨트롤러(120)는 문턱 전압 분포(PV32')에 포함되는 메모리 셀로부터 리드된 데이터에 대한 오류 정정 가능성을 높이기 위해, 연판정 디코딩 수행 시에 제1 최적 리드 전압(ORV1)을 기준으로 좌측에 위치하는 제1 문턱 전압 구간들의 길이를 제1 최적 리드 전압(ORV1)을 기준으로 우측에 위치하는 제2 문턱 전압 구간들의 길이보다 크도록 결정해야 한다.
반대로 제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)의 차이가 기준 리드 전압 차이(REF_RVD)보다 작다면, 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)을 기준으로 좌측에 위치하는 제1 문턱 전압 구간들의 길이를 제1 최적 리드 전압(ORV1)을 기준으로 우측에 위치하는 제2 문턱 전압 구간들의 길이보다 작도록 결정해야 한다.
도 10은 도 9에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 10을 참조하면, 먼저 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)을 결정할 수 있다(S1010). 도 9에서 전술한 바와 같이 제1 최적 리드 전압(ORV1)은 최적 리드 전압들 중 최소값이고 제2 최적 리드 전압(ORV2)은 최적 리드 전압들 중 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압일 수 있다.
그리고 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)의 차이가 전술한 기준 리드 전압 차이(REV_RVD)보다 큰 지 비교한다(S1020).
만약 제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)의 차이가 기준 리드 전압 차이(REV_RVD)보다 크다면(S1020-Y), 메모리 컨트롤러(120)는 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 크도록 결정할 수 있다(S1030).
반대로 제1 최적 리드 전압(ORV1)과 제2 최적 리드 전압(ORV2)의 차이가 기준 리드 전압 차이(REV_RVD)보다 작거나 같다면(S1020-N), 메모리 컨트롤러(120)는 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 작거나 같도록 결정할 수 있다(S1040).
도 11은 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 다른 예를 설명하는 도면이다.
도 11은 제1 최적 리드 전압(ORV1)이 하나 이상의 최적 리드 전압들 중 최대값인 경우에 대해 설명한다. 일 예로 제1 최적 리드 전압(ORV1)은 도 5의 최적 리드 전압(PV7')일 수 있다.
이 경우 제1 최적 리드 전압(ORV1)의 우측에는 비교 대상이 되는 최적 리드 전압이 존재하지 않는다. 이 경우 문턱 전압 분포(PV41)와 문턱 전압 분포(PV42)의 너비 차이를 직접적으로 비교하기 어렵다.
따라서, 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)을 기준으로 좌측과 우측에 각각 제1 샘플링 문턱 전압 구간(S1")과 제2 샘플링 문턱 전압 구간(S2")을 형성한 후, 각 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 정할 수 있다.
이때, 제1 샘플링 문턱 전압 구간(S1")은 제1 최적 리드 전압(ORV1)과 제1 최적 리드 전압(ORV1)보다 K(K는 임의의 양수)만큼 작은 리드 전압(ORV1-K)을 경계로 결정될 수 있다. 그리고 제2 샘플링 문턱 전압 구간(S2")은 제1 최적 리드 전압(ORV1)과 제1 최적 리드 전압(ORV1)보다 K(K는 임의의 양수)만큼 큰 리드 전압(ORV1+K)을 경계로 결정될 수 있다. 이때, 제1 샘플링 문턱 전압 구간(S1")과 제2 샘플링 문턱 전압 구간(S2")의 길이는 동일할 수 있다.
만약 제1 샘플링 문턱 전압 구간(S1")에 대응하는 메모리 셀의 개수(CELL_CNT_S1")가 제2 샘플링 문턱 전압 구간(S2")에 대응하는 메모리 셀의 개수(CELL_CNT_S2")보다 크다면, 이는 문턱 전압 분포(PV42)에 포함된 메모리 셀들 중 문턱 전압이 제1 최적 리드 전압(ORV1)보다 작은 메모리 셀의 개수가 문턱 전압 분포(PV41)에 포함된 메모리 셀들 중 문턱 전압이 제1 최적 리드 전압(ORV2)보다 큰 메모리 셀의 개수보다 많다는 것을 의미한다. 이는 곧 문턱 전압 분포(PV42)에 포함되는 메모리 셀로부터 리드된 데이터에 대한 오류 발생 가능성이 높다는 것을 의미한다.
따라서, 문턱 전압 분포(PV42)에 포함되는 메모리 셀로부터 리드된 데이터에 대한 오류 정정 가능성을 높이기 위해, 메모리 컨트롤러(120)는 연판정 디코딩 수행 시에 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 크도록 결정할 수 있다.
반대로 샘플링 문턱 전압 구간(S1")에 대응하는 메모리 셀의 개수(CELL_CNT_S1")가 제2 샘플링 문턱 전압 구간(S2")에 대응하는 메모리 셀의 개수(CELL_CNT_S2")보다 작다면, 메모리 컨트롤러(120)는 연판정 디코딩 수행 시에 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 작도록 결정할 수 있다.
도 12는 도 11에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 12을 참조하면, 먼저 메모리 컨트롤러(120)는 제1 샘플링 문턱 전압 구간(S1")에 대응하는 메모리 셀의 개수(CELL_CNT_S1")와 제2 샘플링 문턱 전압 구간(S2")에 대응하는 메모리 셀의 개수(CELL_CNT_S2")를 측정할 수 있다(S1210).
그리고 메모리 컨트롤러(120)는 제1 샘플링 문턱 전압 구간(S1")에 대응하는 메모리 셀의 개수(CELL_CNT_S1")가 제2 샘플링 문턱 전압 구간(S2")에 대응하는 메모리 셀의 개수(CELL_CNT_S2")보다 큰지 비교한다(S1220).
만약 제1 샘플링 문턱 전압 구간(S1")에 대응하는 메모리 셀의 개수(CELL_CNT_S1")가 제2 샘플링 문턱 전압 구간(S2")에 대응하는 메모리 셀의 개수(CELL_CNT_S2")보다 크다면(S1220-Y), 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)을 기준으로 좌측에 위치하는 제1 문턱 전압 구간들의 길이를 제1 최적 리드 전압(ORV1)을 기준으로 우측에 위치하는 제2 문턱 전압 구간들의 길이보다 크도록 결정할 수 있다(S1230).
반대로 제1 샘플링 문턱 전압 구간(S1")에 대응하는 메모리 셀의 개수(CELL_CNT_S1")가 제2 샘플링 문턱 전압 구간(S2")에 대응하는 메모리 셀의 개수(CELL_CNT_S2")보다 작거나 같다면(S1220-N), 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)을 기준으로 좌측에 위치하는 제1 문턱 전압 구간들의 길이를 제1 최적 리드 전압(ORV1)을 기준으로 우측에 위치하는 제2 문턱 전압 구간들의 길이보다 작거나 같도록 결정할 수 있다(S1240).
도 13은 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 다른 예를 설명하는 도면이다.
도 13은 하나 이상의 최적 리드 전압들 중에서, 제1 최적 리드 전압(ORV1)보다 작은 최적 리드 전압이 하나 이상 존재하며 제1 최적 리드 전압(ORV1)보다 큰 최적 리드 전압이 하나 이상 존재하는 경우에 대해 설명한다. 일 예로 제1 최적 리드 전압(ORV1)은 도 5의 최적 리드 전압(RV4')일 수 있다.
메모리 컨트롤러(120)는 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값인 제3 최적 리드 전압(ORV3), 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값이 제4 최적 리드 전압(ORV4)을 결정할 수 있다. 일 예로 제1 최적 리드 전압(ORV1)이 도 5의 최적 리드 전압(RV4')인 경우, 제3 최적 리드 전압은 도 5의 최적 리드 전압(RV3')이고 제4 최적 리드 전압은 도 5의 최적 리드 전압(RV5')일 수 있다.
이때, 메모리 컨트롤러(120)는 1) 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)과 2) 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 정할 수 있다.
만약, 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)이 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)보다 크다면 이는 문턱 전압 분포(PV52)의 너비가 문턱 전압 분포(PV53)의 너비보다 크다는 것을 의미한다.
따라서, 문턱 전압 분포(PV52)에 포함되는 메모리 셀로부터 리드된 데이터에 대한 오류 정정 가능성을 높이기 위해, 메모리 컨트롤러(120)는 연판정 디코딩 동작 시에 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 작도록 결정할 수 있다.
반대로 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)이 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)보다 작다면, 메모리 컨트롤러(120)는 연판정 디코딩 동작 시에 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 크도록 결정해야 한다.
도 14는 도 13에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 14을 참조하면, 먼저 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)과, 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)을 계산할 수 있다(S1410).
그리고 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)이 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)보다 작은지 비교한다(S1420).
만약, 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)이 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)보다 작으면(S1420-Y), 메모리 컨트롤러(120)는 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 크도록 결정할 수 있다(S1430).
반대로 제1 최적 리드 전압(ORV1)과 제3 최적 리드 전압(ORV3) 간의 오프셋(ORV1 - ORV3)이 제1 최적 리드 전압(ORV1)과 제4 최적 리드 전압(ORV4) 간의 오프셋(ORV4 - ORV1)보다 크거나 같으면(S1420-N), 메모리 컨트롤러(120)는 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 작거나 같도록 결정할 수 있다(S1440).
한편 전술한 본 발명의 실시예들에서는 최적 리드 전압 간의 차이를 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정하는 방법을 설명하였다. 그러나 문턱 전압 분포에 대한 평균 문턱 전압을 구할 수 있다면 이를 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정하는 데 이용할 수도 있다.
도 15는 본 발명의 실시예들에 따른 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 다르게 정하는 동작 방법의 다른 예를 설명하는 도면이다.
도 15를 참조하면 제1 최적 리드 전압(ORV1)에 대하여 제1 최적 리드 전압(ORV1)에 인접한 제1 문턱 전압 분포(PV61)과 제2 문턱 전압 분포(PV62)가 결정될 수 있다. 제1 최적 리드 전압(ORV1)에 인접한 제1 문턱 전압 분포(PV61)과 제2 문턱 전압 분포(PV62)는, 하나 이상의 문턱 전압 분포들 중에서 포함된 메모리 셀들의 문턱 전압과 제1 최적 리드 전압(ORV1)과의 차이의 평균이 가장 작은 두 문턱 전압 분포로 결정될 수 있다.
이때, 제1 문턱 전압 분포(PV61)는 제1 최적 리드 전압(ORV1)의 좌측에 위치하고, 제2 문턱 전압 분포(PV62)는 제1 최적 리드 전압(ORV1)의 우측에 위치할 수 있다. 예를 들어, 제1 최적 리드 전압(ORV1)이 도 5의 최적 리드 전압(RV4')라면 제1 문턱 전압 분포(PV61)는 도 5의 문턱 전압 분포(PV3')이고 제2 문턱 전압 분포(PV62)는 도 5의 문턱 전압 분포(PV4')일 수 있다.
메모리 컨트롤러(120)는 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2)을 계산할 수 있다.
문턱 전압 분포의 평균 문턱 전압을 계산하는 방식은 다양하게 결정될 수 있다. 일 예로 메모리 컨트롤러(120)는 메모리 셀들로 기준 전압들을 인가하여 리드된 데이터에 근거하여 기준 전압들에 의해 구분된 문턱 전압 구간들에 대응하는 구간 셀 개수를 산출하고, 산출된 구간 셀 개수에 근거하여 결정된 문턱 전압 분포가 가우시안 분포를 따른다고 가정하여 평균 문턱 전압을 계산할 수 있다.
제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2)이 계산되면, 메모리 컨트롤러(120)는 1) 제1 최적 리드 전압(ORV1)과 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1) 간의 오프셋(ORV1 - MV1)과 2) 제1 최적 리드 전압(ORV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2) 간의 오프셋(MV2 - ORV1)을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 정할 수 있다.
만약 제1 최적 리드 전압(ORV1)과 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1) 간의 오프셋(ORV1 - MV1)이 제1 최적 리드 전압(ORV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2) 간의 오프셋(MV2 - ORV1)보다 작다면, 제1 문턱 전압 분포(PV61)의 너비가 제2 문턱 전압 분포(PV62)의 너비보다 작다는 것을 의미한다. 이는 곧 제2 문턱 전압 분포(PV62)가 제1 문턱 전압 분포(PV61)보다 더 열화된 것을 의미하므로, 제2 문턱 전압 분포(PV62)에 포함된 메모리 셀들로부터 리드된 데이터에 대한 오류 정정 가능성을 높이기 위해, 메모리 컨트롤러(120)는 연판정 디코딩 수행 시에 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 크도록 결정할 수 있다.
도 16은 도 15에서 설명한 동작 방법을 예시적으로 도시한 흐름도이다.
도 16을 참조하면, 먼저 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)과 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1) 간의 오프셋(ORV1 - MV1)과 제1 최적 리드 전압(ORV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2) 간의 오프셋(MV2 - ORV1)을 계산할 수 있다(S1610).
그리고 메모리 컨트롤러(120)는 제1 최적 리드 전압(ORV1)과 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1) 간의 오프셋(ORV1 - MV1)이 제1 최적 리드 전압(ORV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2) 간의 오프셋(MV2 - ORV1)보다 작은지 판단한다(S1620).
만약, 제1 최적 리드 전압(ORV1)과 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1) 간의 오프셋(ORV1 - MV1)이 제1 최적 리드 전압(ORV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2) 간의 오프셋(MV2 - ORV1)보다 작다면(S1620-Y), 메모리 컨트롤러(120)는 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 크도록 결정할 수 있다(S1630).
반대로 제1 최적 리드 전압(ORV1)과 제1 문턱 전압 분포(PV61)의 평균 문턱 전압(MV1) 간의 오프셋(ORV1 - MV1)이 제1 최적 리드 전압(ORV1)과 제2 문턱 전압 분포(PV62)의 평균 문턱 전압(MV2) 간의 오프셋(MV2 - ORV1)보다 크거나 같다면(S1620-N), 메모리 컨트롤러(120)는 제1 문턱 전압 구간들의 길이를 제2 문턱 전압 구간들의 길이보다 작거나 같도록 결정할 수 있다(S1640).
도 17은 본 발명의 실시예들에 따른 메모리 시스템(100)의 동작 방법을 나타낸 흐름도이다.
도 17을 참조하면, 메모리 시스템(100)은 하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 메모리 시스템(100)에 포함된 메모리 장치(110)에 포함된 복수의 메모리 셀들 중 일부로부터 데이터를 리드할 수 있다(S1710). 메모리 시스템(100)에 포함된 메모리 컨트롤러(120)를 통해 S1710 단계가 실행될 수 있다.
그리고 메모리 시스템(100)은 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 제1 문턱 전압 구간들 및 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 연판정 디코딩을 수행할 수 있다(S1720). 메모리 시스템(100)에 포함된 메모리 컨트롤러(120)를 통해 S1720 단계가 실행될 수 있다.
이때, 도 8에서 설명한 바와 같이 제1 문턱 전압 구간들은 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고 제2 문턱 전압 구간들은 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정될 수 있다. 그리고 제1 문턱 전압 구간들의 길이는 제2 문턱 전압 구간들의 길이와 서로 다를 수 있다.
제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이는 다양한 방식으로 결정될 수 있다.
일 예로 도 9 내지 10에서 설명한 바와 같이 메모리 시스템(100)이 연판정 디코딩을 수행할 때, 메모리 시스템(100)은 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최소값인 경우 제1 최적 리드 전압과 제2 최적 리드 전압을 기초로 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다. 이때, 제2 최적 리드 전압은 하나 이상의 최적 리드 전압들 중 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압일 수 있다.
다른 예로 도 11 내지 12에서 설명한 바와 같이 메모리 시스템(100)이 연판정 디코딩을 수행할 때, 메모리 시스템(100)은 제1 최적 리드 전압이 하나 이상의 최적 리드 전압들 중 최대값인 경우, 1) 제1 최적 리드 전압과 제1 최적 리드 전압보다 K(K는 임의의 양수)만큼 작은 리드 전압을 경계로 결정되는 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 2) 제1 최적 리드 전압과 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정되는 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여, 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
또 다른 예로 도 13 내지 14에서 설명한 바와 같이 메모리 시스템(100)이 연판정 디코딩을 수행할 때, 메모리 시스템(100)은 하나 이상의 최적 리드 전압들 중에서, 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우, 1) 제1 최적 리드 전압과 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값인 제3 최적 리드 전압 간의 오프셋과 2) 제1 최적 리드 전압과 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값인 제4 최적 리드 전압 간의 오프셋을 비교하여 제1 문턱 전압 구간들의 길이와 제2 문턱 전압 구간들의 길이를 결정할 수 있다.
한편, 이상에서 설명한 메모리 컨트롤러(120)의 동작은 제어 회로(123)에 의해 제어될 수 있으며, 프로세서(124)가 메모리 컨트롤러(120)의 제반 동작이 프로그래밍된 펌웨어를 실행(구동)하는 방식으로 수행될 수 있다.
도 18은 본 발명의 실시예들에 따른 컴퓨팅 시스템을 개략적으로 나타낸 블록도이다.
도 18을 참조하면, 본 발명의 실시예들에 따른 컴퓨팅 시스템(1800)은 시스템 버스(1860)에 전기적으로 연결된 메모리 시스템(100), 컴퓨팅 시스템(1800)의 전반적인 동작을 제어하는 중앙처리장치(CPU, 1810), 컴퓨팅 시스템(1800)의 동작과 관련한 데이터 및 정보를 저장하는 램(RAM, 1820), 사용자에게 사용 환경을 제공하기 위한 UI/UX (User Interface/User Experience) 모듈(1830), 외부 장치와 유선 및/또는 무선 방식으로 통신하기 위한 통신 모듈(1840), 컴퓨팅 시스템(1800)이 사용하는 파워를 관리하는 파워 관리 모듈(1850) 등을 포함할 수 있다.
본 발명의 실시예들에 따른 컴퓨팅 시스템(1800)은 PC(Personal Computer)이거나, 스마트 폰, 태블릿 등의 모바일 단말, 또는 각종 전자 기기 등을 포함할 수 있다.
본 발명의 실시예들에 따른 컴퓨팅 시스템(1800)은, 동작 전압을 공급하기 위한 배터리를 더 포함할 수 있으며, 응용 칩셋(Application Chipset), 그래픽 관련 모듈, 카메라 이미지 프로세서(Camera Image Processor: CIS), 디램 등을 더 포함할 수도 있다. 이외에도, 이 분야의 통상적인 지식을 습득한 자들에게 자명하다.
한편, 이상에서 설명한 메모리 시스템(100)은, 하드 디스크 드라이브(HDD: Hard Disk Drive)와 같이 자기 디스크에 데이터를 저장하는 장치뿐 아니라, 솔리드 스테이트 드라이브(SSD: Solid State Drive), UFS(Universal Flash Storage) 장치, eMMC(embedded MMC) 장치 등과 같이 비휘발성 메모리에 데이터를 저장하는 장치 등을 포함할 수 있다. 비휘발성 메모리는 ROM(Read Only Memory), PROM(Programmable ROM), EPROM (Electrically Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), 플래시 메모리, PRAM(Phase-change RAM), MRAM(Magnetic RAM), RRAM(Resistive RAM), FRAM(Ferroelectric RAM) 등을 포함할 수 있다. 이뿐만 아니라, 메모리 시스템(100)은 다양한 형태의 저장 장치로 구현되어, 다양한 전자 기기 내에 탑재될 수 있다.
이상에서 설명한 본 발명의 실시예들에 의하면, 데이터가 저장된 메모리 셀의 문턱 전압 분포가 열화된 경우에도 연판정 디코딩에 의한 오류 정정 효과를 증대할 수 있도록 하는 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법을 제공할 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 또한, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이므로 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리 범위에 포함되는 것으로 해석되어야 할 것이다.
100: 메모리 시스템
110: 메모리 장치
120: 메모리 컨트롤러
121: 호스트 인터페이스
122: 메모리 인터페이스
123: 제어 회로
124: 프로세서
125: 워킹 메모리
126: 에러 검출 및 정정 회로
210: 메모리 셀 어레이
220: 어드레스 디코더
230: 리드 앤 라이트 회로
240: 컨트롤 로직
250: 전압 생성 회로

Claims (20)

  1. 복수의 메모리 셀들을 포함하는 메모리 장치; 및
    상기 메모리 장치를 제어하는 메모리 컨트롤러를 포함하고,
    상기 메모리 컨트롤러는,
    하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 상기 복수의 메모리 셀들 중 일부로부터 리드된 데이터에 대해 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 상기 제1 문턱 전압 구간들 및 상기 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행하고,
    상기 제1 문턱 전압 구간들은 상기 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고 상기 제2 문턱 전압 구간들은 상기 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정되며,
    상기 제1 문턱 전압 구간들의 길이는 상기 제2 문턱 전압 구간들의 길이와 서로 다른 메모리 시스템.
  2. 제1항에 있어서,
    상기 제1 문턱 전압 구간들의 길이는 서로 균일하고,
    상기 제2 문턱 전압 구간들의 길이는 서로 균일한 메모리 시스템.
  3. 제1항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 최적 리드 전압이 상기 하나 이상의 최적 리드 전압들 중 최소값인 경우,
    상기 제1 최적 리드 전압 및 제2 최적 리드 전압을 기초로 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하고,
    상기 제2 최적 리드 전압은 상기 하나 이상의 최적 리드 전압들 중 상기 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압인 메모리 시스템.
  4. 제3항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 최적 리드 전압과 상기 제2 최적 리드 전압의 차이가 기준 리드 전압 차이보다 크면, 상기 제1 문턱 전압 구간들의 길이가 상기 제2 문턱 전압 구간들의 길이보다 크도록 결정하는 메모리 시스템.
  5. 제1항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 최적 리드 전압이 상기 하나 이상의 최적 리드 전압들 중 최대값인 경우,
    1) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 K만큼 작은 리드 전압을 경계로 결정되는 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 2) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정되는 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여, 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하는 메모리 시스템.
  6. 제5항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수가 상기 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수보다 크면, 상기 제1 문턱 전압 구간들의 길이가 상기 제2 문턱 전압 구간들의 길이보다 크도록 결정하는 메모리 시스템.
  7. 제1항에 있어서,
    상기 메모리 컨트롤러는,
    상기 하나 이상의 최적 리드 전압들 중에서, 상기 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 상기 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우,
    1) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값인 제3 최적 리드 전압 간의 오프셋과 2) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값인 제4 최적 리드 전압 간의 오프셋을 비교하여 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하는 메모리 시스템.
  8. 제7항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 최적 리드 전압과 상기 제3 최적 리드 전압 간의 오프셋이 상기 제1 최적 리드 전압과 상기 제4 최적 리드 전압 간의 오프셋보다 작은 경우, 상기 제1 문턱 전압 구간들의 길이가 상기 제2 문턱 전압 구간들의 길이보다 크도록 결정하는 메모리 시스템.
  9. 제1항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 최적 리드 전압에 인접한 제1 문턱 전압 분포 및 제2 문턱 전압 분포에 대해, 1) 상기 제1 최적 리드 전압과 상기 제1 문턱 전압 분포의 평균 문턱 전압 간의 오프셋과 2) 상기 제1 최적 리드 전압과 상기 제2 문턱 전압 분포의 평균 문턱 전압 간의 오프셋을 비교하여 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하고,
    상기 제2 문턱 전압 분포의 평균 문턱 전압이 상기 제1 문턱 전압 분포의 평균 문턱 전압보다 큰 메모리 시스템.
  10. 제9항에 있어서,
    상기 메모리 컨트롤러는,
    상기 제1 최적 리드 전압과 상기 제1 문턱 전압 분포의 평균 문턱 전압 간의 오프셋이 상기 제1 최적 리드 전압과 상기 제2 문턱 전압 분포의 평균 문턱 전압 간의 오프셋보다 작은 경우,
    상기 제1 문턱 전압 구간들의 길이가 상기 제2 문턱 전압 구간들의 길이보다 크도록 결정하는 메모리 시스템.
  11. 복수의 메모리 셀들을 포함하는 메모리 장치와 통신하기 위한 메모리 인터페이스; 및
    상기 메모리 장치를 제어하기 위한 제어 회로를 포함하는 메모리 컨트롤러에 있어서,
    상기 제어 회로는,
    하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 상기 복수의 메모리 셀들 중 일부로부터 리드된 데이터에 대해 1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 상기 제1 문턱 전압 구간들 및 상기 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행하고,
    상기 제1 문턱 전압 구간들은 상기 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고, 상기 제2 문턱 전압 구간들은 상기 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정되며,
    상기 제1 문턱 전압 구간들의 길이는 상기 제2 문턱 전압 구간들의 길이와 서로 다른 메모리 컨트롤러.
  12. 제11항에 있어서,
    상기 제1 문턱 전압 구간들의 길이는 서로 균일하고,
    상기 제2 문턱 전압 구간들의 길이는 서로 균일한 메모리 컨트롤러.
  13. 제11항에 있어서,
    상기 제어 회로는,
    상기 제1 최적 리드 전압이 상기 하나 이상의 최적 리드 전압들 중 최소값인 경우,
    상기 제1 최적 리드 전압 및 제2 최적 리드 전압을 기초로 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하고,
    상기 제2 최적 리드 전압은 상기 하나 이상의 최적 리드 전압들 중 상기 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압인 메모리 컨트롤러.
  14. 제11항에 있어서,
    상기 제어 회로는,
    상기 제1 최적 리드 전압이 상기 하나 이상의 최적 리드 전압들 중 최대값인 경우,
    1) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 K만큼 작은 리드 전압을 경계로 결정되는 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 2) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정되는 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여, 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하는 메모리 컨트롤러.
  15. 제11항에 있어서,
    상기 제어회로는,
    상기 하나 이상의 최적 리드 전압들 중에서, 상기 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 상기 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우,
    1) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값인 제3 최적 리드 전압 간의 오프셋과 2) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값인 제4 최적 리드 전압 간의 오프셋을 비교하여 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하는 메모리 컨트롤러.
  16. 복수의 메모리 셀들을 포함하는 메모리 장치 및 상기 메모리 장치를 제어하는 메모리 컨트롤러를 포함하는 메모리 시스템의 동작 방법에 있어서,
    하나 이상의 최적 리드 전압들 중 하나인 제1 최적 리드 전압을 기초로 상기 복수의 메모리 셀들 중 일부로부터 데이터를 리드하는 단계; 및
    1) 하나 이상의 제1 문턱 전압 구간들, 2) 하나 이상의 제2 문턱 전압 구간들 및 3) 상기 제1 문턱 전압 구간들 및 상기 제2 문턱 전압 구간들에 대한 신뢰도 값을 기초로 하여 연판정 디코딩을 수행하는 단계를 포함하고,
    상기 제1 문턱 전압 구간들은 상기 제1 최적 리드 전압 이하인 리드 전압을 경계로 결정되고, 상기 제2 문턱 전압 구간들은 상기 제1 최적 리드 전압 이상인 리드 전압을 경계로 결정되며,
    상기 제1 문턱 전압 구간들의 길이는 상기 제2 문턱 전압 구간들의 길이와 서로 다른 메모리 시스템의 동작 방법.
  17. 제16항에 있어서,
    상기 제1 문턱 전압 구간들의 길이는 서로 균일하고,
    상기 제2 문턱 전압 구간들의 길이는 서로 균일한 메모리 시스템의 동작 방법.
  18. 제16항에 있어서,
    상기 연판정 디코딩을 수행하는 단계는,
    상기 제1 최적 리드 전압이 상기 하나 이상의 최적 리드 전압들 중 최소값인 경우,
    상기 제1 최적 리드 전압 및 제2 최적 리드 전압을 기초로 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하고,
    상기 제2 최적 리드 전압은 상기 하나 이상의 최적 리드 전압들 중 상기 제1 최적 리드 전압과의 차이가 최소인 최적 리드 전압인 메모리 시스템의 동작 방법.
  19. 제16항에 있어서,
    상기 연판정 디코딩을 수행하는 단계는,
    상기 제1 최적 리드 전압이 상기 하나 이상의 최적 리드 전압들 중 최대값인 경우,
    1) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 K만큼 작은 리드 전압을 경계로 결정되는 제1 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수와 2) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 K만큼 큰 리드 전압을 경계로 결정되는 제2 샘플링 문턱 전압 구간에 대응하는 메모리 셀의 개수를 비교하여, 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하는 메모리 시스템의 동작 방법.
  20. 제16항에 있어서,
    상기 연판정 디코딩을 수행하는 단계는,
    상기 하나 이상의 최적 리드 전압들 중에서, 상기 제1 최적 리드 전압보다 작은 최적 리드 전압이 하나 이상 존재하며 상기 제1 최적 리드 전압보다 큰 최적 리드 전압이 하나 이상 존재하는 경우,
    1) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 작은 최적 리드 전압 중 최대값인 제3 최적 리드 전압 간의 오프셋과 2) 상기 제1 최적 리드 전압과 상기 제1 최적 리드 전압보다 큰 최적 리드 전압 중 최소값인 제4 최적 리드 전압 간의 오프셋을 비교하여 상기 제1 문턱 전압 구간들의 길이와 상기 제2 문턱 전압 구간들의 길이를 결정하는 메모리 시스템의 동작 방법.
KR1020190079065A 2019-07-02 2019-07-02 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 KR20210003368A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020190079065A KR20210003368A (ko) 2019-07-02 2019-07-02 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
US16/796,553 US11145357B2 (en) 2019-07-02 2020-02-20 Memory system, memory controller and method for operating memory system
CN202010192686.4A CN112185450A (zh) 2019-07-02 2020-03-18 存储器系统、存储器控制器和用于操作存储器系统的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190079065A KR20210003368A (ko) 2019-07-02 2019-07-02 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법

Publications (1)

Publication Number Publication Date
KR20210003368A true KR20210003368A (ko) 2021-01-12

Family

ID=73919003

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190079065A KR20210003368A (ko) 2019-07-02 2019-07-02 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법

Country Status (3)

Country Link
US (1) US11145357B2 (ko)
KR (1) KR20210003368A (ko)
CN (1) CN112185450A (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11288160B2 (en) * 2020-08-17 2022-03-29 Micron Technology, Inc. Threshold voltage distribution adjustment for buffer
US11626168B2 (en) 2021-03-10 2023-04-11 Samsung Electronics Co.. Ltd. De-noising using multiple threshold-expert machine learning models
US11574697B2 (en) * 2021-06-10 2023-02-07 SK Hynix Inc. Compression framework for log-likelihood ratio generation
CN113595562B (zh) * 2021-07-23 2023-05-09 深圳宏芯宇电子股份有限公司 软数据处理方法、装置、存储介质及解码器
KR102345067B1 (ko) 2021-08-25 2021-12-29 삼성전자주식회사 스토리지 장치 및 스토리지 컨트롤러의 구동 방법

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5197544B2 (ja) * 2009-10-05 2013-05-15 株式会社東芝 メモリシステム
KR102265220B1 (ko) * 2015-03-09 2021-06-16 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
US20160269046A1 (en) * 2015-03-10 2016-09-15 Kabushiki Kaisha Toshiba Memory controller, memory system, and decoding method
CN106169308B (zh) * 2015-03-16 2020-09-15 爱思开海力士有限公司 存储器控制器及其操作方法
KR20170039795A (ko) 2015-10-01 2017-04-12 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US10120585B2 (en) * 2016-08-10 2018-11-06 SK Hynix Inc. Memory system of optimal read reference voltage and operating method thereof
KR102263047B1 (ko) 2017-03-20 2021-06-10 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102349382B1 (ko) * 2017-10-11 2022-01-12 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법

Also Published As

Publication number Publication date
US11145357B2 (en) 2021-10-12
CN112185450A (zh) 2021-01-05
US20210005242A1 (en) 2021-01-07

Similar Documents

Publication Publication Date Title
US20150043282A1 (en) Method of estimating deterioration state of memory device and related method of wear leveling
KR20210003368A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
KR20140031556A (ko) 플래시 메모리를 포함하는 플래시 메모리 시스템 및 그것의 비정상 워드 라인 검출 방법
US11693745B2 (en) Error-handling flows in memory devices based on bins
KR20220055717A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20210101785A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
KR20210079555A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
CN113806254B (zh) 存储器系统、存储器控制器及存储器系统的操作方法
KR20210079549A (ko) 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법
US11315650B2 (en) Memory system, memory controller, and method of operating memory system
US20240071521A1 (en) Memory device producing metadata characterizing applied read voltage level with respect to voltage distributions
KR20210079552A (ko) 메모리 시스템 및 메모리 컨트롤러
KR20210004502A (ko) 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
US11848054B2 (en) Memory device determining precharge time based on a number of times that a program voltage is applied to word line and operating method of memory device
US11061615B2 (en) Memory system, memory controller and operating method thereof
KR20220035577A (ko) 메모리 시스템 및 메모리 시스템의 동작 방법
KR20210071314A (ko) 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법
KR20210028335A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
KR20210025412A (ko) 메모리 시스템, 메모리 컨트롤러 및 동작 방법
US20230289260A1 (en) Controller and operating method of the controller for determining reliability data based on syndrome weight
US20240036741A1 (en) Memory system, memory controller and method for operating memory system, capable of determining target meta memory block on the basis of detected target state
US12015425B2 (en) Controller and operating method thereof for determining reliability data based on syndrome weight
US11837307B2 (en) Managing error-handling flows in memory devices
US11507509B2 (en) Memory system, memory controller and method for operating memory system for determining whether to perform direct write based on reference write size
US20240071435A1 (en) Generating semi-soft bit data during corrective read operations in memory devices

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal