KR102081581B1 - 메모리 장치 구동 방법 - Google Patents

메모리 장치 구동 방법 Download PDF

Info

Publication number
KR102081581B1
KR102081581B1 KR1020120123646A KR20120123646A KR102081581B1 KR 102081581 B1 KR102081581 B1 KR 102081581B1 KR 1020120123646 A KR1020120123646 A KR 1020120123646A KR 20120123646 A KR20120123646 A KR 20120123646A KR 102081581 B1 KR102081581 B1 KR 102081581B1
Authority
KR
South Korea
Prior art keywords
voltage
candidate
read
voltages
read voltage
Prior art date
Application number
KR1020120123646A
Other languages
English (en)
Other versions
KR20140057035A (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 KR1020120123646A priority Critical patent/KR102081581B1/ko
Priority to US14/068,122 priority patent/US9147483B2/en
Publication of KR20140057035A publication Critical patent/KR20140057035A/ko
Application granted granted Critical
Publication of KR102081581B1 publication Critical patent/KR102081581B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • 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
    • 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
    • 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
    • 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/08Address circuits; Decoders; Word-line control 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
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3422Circuits or methods to evaluate read or write disturbance in nonvolatile memory, without steps to mitigate the problem
    • 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
    • G11C2029/0411Online error correction
    • 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/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Abstract

메모리 시스템이 제공된다. 메모리 시스템은, 데이터가 프로그램되는 복수의 메모리셀을 포함하는 비휘발성 메모리 장치 및 상기 비휘발성 메모리 장치를 제어하는 컨트롤러를 포함하며, 상기 컨트롤러는, 상기 메모리 셀에 저장된 데이터가 제1 전압 상태인지 아니면 제2 전압 상태인지를 판단하기 위한 제1 리드 전압을, 그 크기가 제1 전압씩 변하는 n(여기서, n은 자연수)개의 후보 전압 중에서 어느 하나인 제1 선택 리드 전압으로 변경하고, 상기 메모리 셀에 저장된 데이터가 제3 전압 상태인지 아니면 제4 전압 상태인지를 판단하기 위한 제2 리드 전압을, 그 크기가 상기 제1 전압과 다른 제2 전압씩 변하는 m(여기서, m은 자연수)개의 후보 전압 중에서 어느 하나인 제2 선택 리드 전압으로 변경하는 마이크로 프로세서와, 상기 비휘발성 메모리 장치로 제공되는 데이터에 대하여 오류 정정 인코딩을 하여, 패리티(parity) 비트가 부가된 데이터를 형성하는 ECC(Error Correction Code) 인코더와, 상기 패리티 비트가 부가된 데이터의 에러 비트를 정정하는 ECC 디코더를 포함하고, 상기 비휘발성 메모리 장치는, 상기 제1 및 제2 리드 전압, 상기 n개의 후보 전압과 상기 m개의 후보 전압을 발생시키는 전압발생회로와, 상기 전압발생회로가 생성한 상기 제1 및 제2 리드 전압과 상기 제1 및 제2 선택 리드 전압을 공급받아 상기 복수의 메모리셀을 구동하는 X-디코더와, 상기 제1 및 제2 선택 리드 전압을 저장하는 레지스터를 포함한다.

Description

메모리 장치 구동 방법{A method of operating the memory device}
본 발명은 메모리 장치 구동 방법에 관한 것이다.
메모리 장치는 휘발성(volatile) 메모리 장치와 비휘발성(non-volatile) 메모리 장치로 분류된다. 휘발성 메모리 장치는 전원 공급이 차단되면 저장하고 있던 데이터가 소멸되는 메모리 장치이다. 휘발성 메모리 장치는 SRAM(Static RAM), DRAM(Dynamic RAM), SDRAM(Synchronous DRAM) 등을 포함한다. 그러나, 비휘발성 메모리 장치는 전원이 제거되더라도 데이터는 유지된다.
비휘발성 메모리 장치의 예로서 플래시 메모리 장치, ROM(Read Only Memory), PROM(Programmable ROM), EPROM(Electrically Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), 저항성 메모리 장치(예를 들어, PRAM(Phase-change RAM), FRAM(Ferroelectric RAM), RRAM(Resistive RAM)) 등이 있다.
플래시 메모리 장치는 블록(block) 단위로 전기적 소거(electric erase) 동작을 수행하고 비트 단위로 프로그램 동작을 수행할 수 있다.
플래시 메모리 장치에 포함된 프로그램된 다수개의 메모리 셀들의 문턱 전압들(threshold voltages)은 여러 가지 원인에 따라 변할 수 있다.
다수의 메모리 셀들의 문턱 전압들의 변화는 리드 데이터의 신뢰성 (reliability)을 악화시킬 수 있다.
본 발명이 해결하려는 과제는 리드 데이터의 신뢰성을 향상시키고 리드 성능이 향상된 메모리 장치 구동 방법을 제공하는 것이다.
본 발명이 해결하려는 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 메모리 시스템은, 데이터가 프로그램되는 복수의 메모리셀을 포함하는 비휘발성 메모리 장치 및 상기 비휘발성 메모리 장치를 제어하는 컨트롤러를 포함하며, 상기 컨트롤러는, 상기 메모리 셀에 저장된 데이터가 제1 전압 상태인지 아니면 제2 전압 상태인지를 판단하기 위한 제1 리드 전압을, 그 크기가 제1 전압씩 변하는 n(여기서, n은 자연수)개의 후보 전압 중에서 어느 하나인 제1 선택 리드 전압으로 변경하고, 상기 메모리 셀에 저장된 데이터가 제3 전압 상태인지 아니면 제4 전압 상태인지를 판단하기 위한 제2 리드 전압을, 그 크기가 상기 제1 전압과 다른 제2 전압씩 변하는 m(여기서, m은 자연수)개의 후보 전압 중에서 어느 하나인 제2 선택 리드 전압으로 변경하는 마이크로 프로세서와, 상기 비휘발성 메모리 장치로 제공되는 데이터에 대하여 오류 정정 인코딩을 하여, 패리티(parity) 비트가 부가된 데이터를 형성하는 ECC(Error Correction Code) 인코더와, 상기 패리티 비트가 부가된 데이터의 에러 비트를 정정하는 ECC 디코더를 포함하고, 상기 비휘발성 메모리 장치는, 상기 제1 및 제2 리드 전압, 상기 n개의 후보 전압과 상기 m개의 후보 전압을 발생시키는 전압발생회로와, 상기 전압발생회로가 생성한 상기 제1 및 제2 리드 전압과 상기 제1 및 제2 선택 리드 전압을 공급받아 상기 복수의 메모리셀을 구동하는 X-디코더와, 상기 제1 및 제2 선택 리드 전압을 저장하는 레지스터를 포함한다.
상기 제1 및 제2 전압 상태와 상기 제3 및 제4 전압 상태는 서로 다를 수 있다.
상기 제1 전압 상태와 상기 제2 전압 상태는 서로 중첩되고, 상기 제3 전압 상태와 상기 제4 전압 상태는 서로 중첩될 수 있고, 상기 제3 및 제4 전압 상태가 서로 교차하는 지점의 전압과 상기 제2 리드 전압의 차이는 상기 제1 및 제2 전압 상태가 서로 교차하는 지점의 전압과 상기 제1 리드 전압의 차이보다 클 수 있고, 상기 제1 전압은 상기 제2 전압보다 작을 수 있다.
상기 마이크로 프로세서가 상기 제1 리드 전압을 변경하는 것은, 상기 메모리 셀에 상기 제1 리드 전압을 인가할 시 페일 셀의 수가 제1 한계값 이상인 경우, 상기 제1 리드 전압을 변경하고, 상기 페일 셀의 수가 제1 한계값 미만인 경우 상기 제1 리드 전압을 변경하지 않는 것을 포함하고, 상기 마이크로 프로세서가 상기 제2 리드 전압을 변경하는 것은, 상기 메모리 셀에 상기 제2 리드 전압을 인가할 시 페일 셀의 수가 제2 한계값 이상인 경우, 상기 제2 리드 전압을 변경하고, 상기 페일 셀의 수가 제2 한계값 미만인 경우 상기 제2 리드 전압을 변경하지 않는 것을 포함할 수 있다. 상기 제1 한계값과 상기 제2 한계값은 서로 다를 수 있고, 상기 제1 및 제2 한계값은 ECC(Error Correction Code) 방식으로 에러 정정 가능한 메모리 셀 개수일 수 있다.
상기 n과 m은 서로 다를 수 있다.
상기 제1 선택 리드 전압은, 상기 메모리 셀에 상기 n개의 후보 전압을 인가할 시 페일 셀의 수가 최소인 후보 전압이고, 상기 제2 선택 리드 전압은, 상기 메모리 셀에 상기 m개의 후보 전압을 인가할 시 페일 셀의 수가 최소일 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 일 실시예에 따른 메모리 장치 구동 방법은, 메모리 셀에 저장된 데이터가 제1 전압 상태인지 아니면 제2 전압 상태인지를 판단하기 위한 제1 리드 전압을, 그 크기가 제1 전압씩 변하는 n(여기서, n은 자연수)개의 후보 전압 중에서 어느 하나인 제1 선택 리드 전압으로 변경하고, 상기 메모리 셀에 저장된 데이터가 제3 전압 상태인지 아니면 제4 전압 상태인지를 판단하기 위한 제2 리드 전압을, 그 크기가 상기 제1 전압과 다른 제2 전압씩 변하는 m(여기서, m은 자연수)개의 후보 전압 중에서 어느 하나인 제2 선택 리드 전압으로 변경하는 것을 포함하되, 상기 제1 리드 전압을 상기 제1 선택 리드 전압으로 변경하는 것은, 상기 n개의 후보 전압 중 제1 시작 후보 전압부터 상기 제1 전압씩 차례대로 후보 전압을 인가하되, k(여기서, k는 k<n인 자연수)번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수가, k+1번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수보다 작은 경우 상기 k번째 후보 전압을 상기 제1 선택 리드 전압으로 선택하는 것을 포함하고, 상기 제2 리드 전압을 상기 제2 선택 리드 전압으로 변경하는 것은, 상기 m개의 후보 전압 중 제2 시작 후보 전압부터 상기 제2 전압씩 차례대로 후보 전압을 인가하되, l(여기서, l은 l<m인 자연수)번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수가, k+1번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수보다 작은 경우 상기 l번째 후보 전압을 상기 제2 선택 리드 전압으로 선택하는 것을 포함한다.
상기 제1 리드 전압을 변경하는 것은, 상기 메모리 셀에 상기 제1 리드 전압을 인가할 시 페일 셀의 수가 제1 한계값 이상인 경우, 상기 제1 리드 전압을 변경하고, 상기 페일 셀의 수가 제1 한계값 미만인 경우 상기 제1 리드 전압을 변경하지 않는 것을 포함하고, 상기 제2 리드 전압을 변경하는 것은, 상기 메모리 셀에 상기 제2 리드 전압을 인가할 시 페일 셀의 수가 제2 한계값 이상인 경우, 상기 제2 리드 전압을 변경하고, 상기 페일 셀의 수가 제2 한계값 미만인 경우 상기 제2 리드 전압을 변경하지 않는 것을 포함할 수 있다. 상기 제1 및 제2 한계값은 ECC(Error Correction Code) 방식으로 에러 정정 가능한 메모리 셀 개수일 수 있다.
상기 제1 및 제2 전압 상태는 상기 제3 및 제4 전압 상태와 다를 수 있다.
상기 제1 시작 후보 전압은 상기 제1 리드 전압과 다르고, 상기 제2 시작 후보 전압은 상기 제2 리드 전압과 다를 수 있다.
상기 k와 l은 서로 다를 수 있다.
도 1a 및 도 1b는 MLC(multi bit cell)의 전압 상태를 나타내는 예시도이다.
도 2는 문턱 전압 산포의 이동을 나타낸 예시도이다.
도 3 내지 도 5는 본 발명의 제1 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
도 6 및 도 7은 본 발명의 제2 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
도 8 및 도 9는 본 발명의 제3 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
도 10 및 도 11은 본 발명의 제4 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
도 12는 본 발명의 몇몇 실시예에 따른 제1 메모리 시스템의 블록도이다.
13은 본 발명의 몇몇 실시예에 따른 제2 메모리 시스템의 블록도이다.
도 14는 도 13을 참조하여 설명된 메모리 시스템을 포함하는 컴퓨팅 시스템을 보여주는 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 도면에서 표시된 구성요소의 크기 및 상대적인 크기는 설명의 명료성을 위해 과장된 것일 수 있다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭하며, "및/또는"은 언급된 아이템들의 각각 및 하나 이상의 모든 조합을 포함한다.
소자(elements) 또는 층이 다른 소자 또는 층의 "위(on)" 또는 "상(on)"으로 지칭되는 것은 다른 소자 또는 층의 바로 위뿐만 아니라 중간에 다른 층 또는 다른 소자를 개재한 경우를 모두 포함한다. 반면, 소자가 "직접 위(directly on)" 또는 "바로 위"로 지칭되는 것은 중간에 다른 소자 또는 층을 개재하지 않은 것을 나타낸다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
비록 제1, 제2 등이 다양한 소자나 구성요소들을 서술하기 위해서 사용되나, 이들 소자나 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 소자나 구성요소를 다른 소자나 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 소자나 구성요소는 본 발명의 기술적 사상 내에서 제2 소자나 구성요소 일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다.
이하에서는 설명의 편의를 위해 예시적으로 2-비트 MLC(multi bit cell)에서 본 발명이 적용되는 경우를 설명하고 있으나, 본 발명은 이에 제한되지 않으며, 예를 들어, SLC(single level cell) 또는 3-비트 이상의 MLC에서도 적용될 수 있다.
도 1a, 도 1b 및 도 2를 참조하여 문턱 전압 산포의 이동에 따른 리드 전압에 대하여 설명한다.
도 1a 및 도 1b는 MLC의 전압 상태를 나타내는 예시도이고, 도 2는 문턱 전압 산포의 이동을 나타낸 예시도이다.
도 1a는 이상적인 경우에 있어서 MLC의 전압 상태들(f0, f1, f2 및 f3)에 대한 예시도이다. 도 1a를 참조하면, 2-비트 MLC에서 데이터가 프로그램된 메모리 셀의 전압은 4가지의 전압 상태들(f0, f1, f2 및 f3) 중에서 어느 하나가 될 수 있다. 예를 들어, 제1 전압 상태는 소거 상태(E, erase)이고, 제2 전압 내지 제4 전압 상태는 제1 내지 제3 프로그램 상태(P1, P2 및 P3)를 의미할 수 있으나 이에 제한되는 것은 아니다.
도 1a에 도시된 바와 같이 각 전압 상태(f0, f1, f2 및 f3)가 이상적인 경우에는, 4개의 전압 상태들(f0, f1, f2 및 f3) 각각은 인접한 전압 상태와 리드 마진(read margin)을 제공하기 위해 일정한 전압 간격을 가질 수 있다. 또한, 상기 전압 상태들(f0, f1, f2 및 f3)은 일정한 전압 범위를 차지할 수 있다.
도 1b는 멀티-비트 메모리 장치에서의 실제적인 전압 상태(fs0, fs1, fs2및 fs3)를 도시한다. 도 1a에서와 같이, 전압 상태(fs0, fs1, fs2 및 fs3)가 서로 중첩되지 않는 경우에는 리드 에러(read error)가 발생하지 않지만, 실제의 메모리 장치에서는 커플링(coupling) 현상이나 전하 누설(charge leakage) 등으로 인해 도 1b와 같이 이상적이지 못한 전압 상태(fs0, fs1, fs2 및 fs3)가 형성될 수 있다.
예컨대, 제1 전압 상태(fs0)와 제2 전압 상태(fs1)를 판별하기 위해서 제1 리드 전압(VR1)을 인가하면, 도 1a와 같이 이상적인 경우에는 상기 제1 전압 상태(f0)와 상기 제2 전압 상태(f1)를 정확하게 판별할 수 있지만, 도 1b와 같이 이상적이지 못한 경우에는 제1 전압 상태(fsO)와 제2 전압 상태(fs1)의 일부가 서로 중첩되기 때문에 상기 제1 리드 전압(VR1)으로 리드 동작을 수행할 경우에 페일 셀(fail cell)이 발생할 수 있다. 여기서 페일 셀이란, 메모리 셀에 특정 전압 상태로 데이터가 프로그램되었을 때 데이터를 리드하기 위해 리드 전압을 인가하여도 리드하지 못하는 메모리 셀을 의미한다.
이렇게 페일 셀이 발생하였을 때, 페일 셀은 에러 정정 코드(ECC; error correction code)를 통해 정정될 수 있다.
하지만, 에러 정정 코드를 통해서 정정할 수 있는 페일 셀의 수에는 한계가 있기 때문에, 에러 정정 코드(ECC)를 수행하기에 앞서서, 리드 전압을 효율적으로 설정하는 것이 필요하다. 페일 셀의 수가 최소가 되는 전압을 리드 전압으로 정할 수 있으며, 각각의 전압 상태가 만나는 부분에서 페일 셀의 수가 최소가 될 수 있다. 예를 들어, 도 1b를 참조하면, 제1 전압 상태(fs0)와 제2 전압 상태(fs1)를 리드 할 경우, 제1 전압 상태(fs0)와 제2 전압 상태(fs1)가 중첩하는 부분 중에서 제1 전압 상태(fs0)와 제2 전압 상태(fs1)가 교차하는 부분의 전압, 즉 제1 리드 전압(VR1)에서 페일 셀 수가 최소가 된다. 제3 전압 상태(fs2)와 제4 전압 상태(fs2)를 리드 할 경우, 제3 전압 상태(fs2)와 제4 전압 상태(fs3)가 중첩하는 부분 중에서 제3 전압 상태(fs2)와 제4 전압 상태(fs3)가 교차하는 부분의 전압, 즉 제2 리드 전압(VR2)에서 페일 셀 수가 최소가 된다. 마지막으로, 제2 전압 상태(fs1)와 제3 전압 상태(fs2)를 리드 할 경우, 제2 전압 상태(fs1)와 제3 전압 상태(fs2)가 중첩하는 부분 중에서 제2 전압 상태(fs1)와 제3 전압 상태(fs2)가 교차하는 부분의 전압, 즉 제3 리드 전압(VR3)에서 페일 셀 수가 최소가 된다.
한편, 실제적인 전압 상태(fs0, fs1, fs2및 fs3)는 고정적으로 유지되지 않고 변화될 수 있다. 도 2를 참조하면, 제1 상태(fs0)는 제1 간격 △s0만큼 이동하여 변경된 제1 상태(fs0′)가 될 수 있고, 제2 상태(fs1)는 제2 간격 (△s1)만큼 이동하여 변경된 제2 상태(fs1′)가 될 수 있고, 제3 상태(fs2)는 제3 간격(△s2)만큼 이동하여 변경된 제3 상태(fs2′)가 될 수 있으며, 제4 상태(fs3)는 제4 간격(△s3)만큼 이동하여 변경된 제4 상태(fs3′)가 될 수 있다. 제1 내지 제4 간격(△s0, △s1, △s2, △s3)은 서로 같거나 다를 수 있다. 예를 들어, 도 2를 참조하면, 이동 크기가 △s0 < △s1 < △s2 < △s3 순으로 도시되어 있으나 이에 제한되지는 않는다.
상술한 바와 같이 전압 상태(fs0, fs1, fs2, fs3)가 이동하여 변경된 전압 상태(fs0′, fs1′, fs2′및 fs3′)로 바뀌는 데에는 여러가지 이유가 있다. 예를 들어, 반복된 이레이즈와 라이트로 인한 열화 현상, 메모리셀 자체의 특성, 메모리셀에 데이터를 프로그램한 후 오랜 시간이 지나 발생하는 전하 누설, 주위의 인접한 메모리셀에 의한 커플링 현상, 외부 온도, VNAND에서 층별 특성 등이 전압 상태를 변경시킬 수 있다.
한편, 도시하지는 않았지만, 상술한 이유에 의하여 전압 상태(fs0, fs1, fs2, fs3) 각각의 폭(W1, W2, W3, W4)이 넓어질 수도 있다.
변경된 전압 상태(fs0′, fs1′, fs2′, fs3′)에서는 각각의 전압 상태(fs0′, fs1′, fs2′, fs3′)가 교차하는 지점이 달라지기 때문에 페일 셀 수가 최소가 되는 리드 전압도 바뀔 수 있다. 구체적으로, 도 2를 참조하면, 제1 전압 상태(fs0′)와 제2 전압 상태(fs1′) 사이를 리드할 때, 페일 셀 수가 최소가 되는 리드 전압은 제1 리드 전압(VR1)이 아니라 제1 선택 리드 전압(VR1′)이다. 마찬가지로, 제3 전압 상태(fs2′)와 제4 전압 상태(fs3′) 사이를 리드할 때, 페일 셀 수가 최소가 되는 리드 전압은 제2 리드 전압(VR2)이 아니라 제2 선택 리드 전압(VR2′)이고, 제2 전압 상태(fs1′)와 제3 전압 상태(fs2′) 사이를 리드할 때, 페일 셀 수가 최소가 되는 리드 전압은 제3 리드 전압(VR3)이 아니라 제3 선택 리드 전압(VR3′)이다. 따라서, 전압 상태들의 이동 또는 변화에 따라 리드 전압을 재설정할 필요가 있다.
도 3 내지 도 5를 참조하여 본 발명의 제1 실시예에 따른 메모리 장치 구동 방법에 대하여 설명하기로 한다.
도 3 내지 도 5는 본 발명의 제1 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
먼저, 데이터가 프로그램된 복수의 메모리 셀이 제공된다. 복수의 메모리 셀은 제1 내지 제4 전압 상태(fs0′, fs1′, fs2′, fs3′)로 프로그램될 수 있다. 여기서, 제1 및 제2 전압 상태(fs0′, fs1′)는 제3 및 제4 전압 상태(fs2′, fs3′)와 서로 다를 수 있다. 또한, 각각의 전압 상태는 실제적인 전압 상태이기 때문에 제1 전압 상태(fs0′)와 제2 전압 상태(fs1′), 제2 전압 상태(fs1′)와 제3 전압 상태(fs2′), 제3 전압 상태(fs2′)와 제4 전압 상태(fs3′)는 서로 중첩되어 있을 수 있다.
다음으로, 제1 리드 전압(VR1)을 인가하여 메모리 셀에 저장된 데이터가 제1 전압 상태(fs0′)인지 제2 전압 상태(fs1′)인지 판별한다. 같은 방법으로, 제2 리드 전압(VR2)을 인가하여 메모리 셀에 저장된 데이터가 제3 전압 상태(fs2′)인지 제4 전압 상태(fs3′)인지 판별한다.
이어서, 제1 리드 전압(VR1)을 인가하였을 때, 페일 셀 수가 제1 한계값 이상인지 판단한다. 여기서, 제1 한계값은 ECC 방식으로 에러 정정 가능한 페일 셀 수를 의미한다. ECC 방식으로 정정할 수 있는 페일 셀 수에는 한계가 있기 때문에, 제1 리드 전압(VR1)으로 메모리 셀에 프로그램된 데이터를 리드할 때, 페일 셀 수가 ECC 방식으로 에러 정정 가능한 셀 수를 초과하는 경우 리드 페일된다. 그러므로 제1 한계값은 ECC 방식으로 정정할 수 있는 페일 셀 수를 초과할 수 없다.
제1 리드 전압(VR1)을 인가할 시 페일 셀 수가 제1 한계값 이상인 경우, 제1 리드 전압(VR1)을 변경한다. 제1 리드 전압(VR1)을 인가하였을 때, 페일 셀 수가 제1 한계값 미만인 경우 제1 리드 전압(VR1)을 변경할 필요없다.
제2 리드 전압(VR2)을 인가할 때도 상술한 바와 같이 페일 셀 수가 제2 한계값을 초과하는지 판단한다. 여기서, 제2 한계값은 ECC 방식으로 에러 정정 가능한 비트 수를 의미한다. 리드한 결과, 페일 셀 수가 제2 한계값 이상인 경우 제2 리드 전압(VR2)을 변경하고 제2 한계값 미만인 경우 제2 리드 전압을 변경하지 않는다.
여기서, 제1 및 제2 한계값은 서로 같을 수도 있으나, 각각의 전압 상태(fs0′, fs1′, fs2′, fs3′) 특성을 고려하여 서로 다른 값으로 정할 수도 있다.
다음으로, 제1 및 제2 리드 전압(VR1, VR2)을 변경하는 방법에 대하여 설명하기로 한다.
먼저 도 3 및 도 4를 참조하면, 제1 선택 리드 전압(VR1′)을 결정하는 방법은 다음과 같다. 먼저 제1 범위(R)를 정한다. 제1 범위(R)는 페일 셀 수가 최소가 되는 제1 선택 리드 전압(VR1′)을 찾기 위해 정하는 임의의 범위이다. 추후 제1 범위(R) 내에서 제1 선택 리드 전압(VR1′)을 선택한다.
제1 선택 리드 전압(VR1′)을 찾기 위해서, 제1 범위(R) 내에 n개의 후보 전압(V1~Vn)을 인가한다. 여기서 n은 자연수이고, n개의 후보 전압(V1~Vn)은 제1 전압(△V1) 간격으로 인가될 수 있다. 다시 말해서, n개의 후보 전압(V1~Vn)은 그 크기가 제1 전압(△V1)씩 변할 수 있다.
이어서, 각각의 후보 전압(V1~Vn)을 인가하였을 때 발생하는 페일 셀 수를 비교하여 발생하는 페일 셀 수가 가장 적은 후보 전압을 제1 선택 리드 전압(VR1′)으로 선택한다.
예를 들어, 도 4를 참조하면, 후보 전압(V1~Vn) 중에서 페일 셀 수가 가장 낮은 후보 전압은 제1 전압 상태(fs0′)와 제2 전압 상태(fs1′)가 교차하는 지점의 후보 전압 V5이다. 따라서, V5를 제1 선택 리드 전압(VR1′)으로 선택한다. 도 4에서는 제1 선택 리드 전압(VR1′)이 제1 전압 상태(fs0′)와 제2 전압 상태(fs1′)의 교차점과 일치하는 것으로 도시되어 있으나 그렇지 않을 수 있으며, 교차점과 일치하는 후보 전압이 없으면 교차점과 가장 가까운 후보 전압, 즉 페일 셀 수가 최소인 후보 전압을 제1 선택 리드 전압(VR1′)으로 선택할 수 있다.
이어서, 제2 선택 리드 전압(VR2′)을 결정하는 방법은 다음과 같다. 도 3 및 도 5를 참조하면, 먼저 제1 범위(R)를 정한다. 제1 범위(R)는 페일 셀 수가 최소가 되는 제2 선택 리드 전압(VR2′)을 찾기 위해 정하는 임의의 범위이다. 추후 제1 범위(R) 내에서 제2 선택 리드 전압(VR2′)을 선택한다.
제2 선택 리드 전압(VR2′)을 찾기 위해서, 제2 범위(R2) 내에 m개의 후보 전압(V1~Vm)을 인가한다. 여기서 m은 자연수이며, m개의 후보 전압(V1~Vm)은 제2 전압(△V2) 간격으로 인가될 수 있다. 다시 말해서, m개의 후보 전압(V1~Vm)은 그 크기가 제2 전압(△V2)씩 변할 수 있다.
이어서, 각각의 후보 전압(V1~Vm)을 인가하였을 때 발생하는 페일 셀 수를 카운트하여 발생하는 페일 셀 수가 가장 작은 후보 전압을 제2 선택 리드 전압(VR2′)으로 선택한다.
예를 들어, 도 5를 참조하면, 페일 셀 수가 가장 낮은 후보 전압은 제3 전압 상태(fs2′)와 제4 전압 상태(fs3′)가 교차하는 지점의 후보 전압 V9이다. 따라서, V9를 제2 선택 리드 전압(VR2′)으로 선택한다. 도 5에서도 제2 선택 리드 전압(VR2′)이 제3 전압 상태(fs2′)와 제4 전압 상태(fs3′)의 교차점과 일치하는 것으로 도시되어 있으나 그렇지 않을 수 있으며, 교차점과 일치하는 후보 전압이 없으면 교차점과 가장 가까운 후보 전압, 즉 페일 셀 수가 가장 낮은 후보 전압이 제2 선택 리드 전압(VR2′)으로 선택될 수 있다.
한편, 도 3을 참조하면, 제2 전압(△V2)은 제1 전압(△V1)과 다를 수 있는데, 이는 전압 상태 각각의 이동 정도가 서로 다를 수 있기 때문이다. 예를 들어, 도 3을 참조하면, 제1 전압 상태(fs0′)는 제1 간격(△s0)만큼 이동하였고, 제2 전압 상태(fs1′)는 제2 간격(△s1)만큼 이동하였고, 제3 전압 상태(fs2′)는 제3 간격(△s2)만큼 이동하였고, 제4 전압 상태(fs3′)는 제4 간격(△s3)만큼 이동하였다. 그런데 이동 크기는 △s0 < △s1 < △s2 < △s3 이므로, 제1 및 제2 전압 상태(fs0′, fs1′)의 이동 정도가 제3 및 제4 전압 상태(fs2′, fs3′)의 이동 정도보다 작다. 따라서, 제3 및 제4 전압 상태(fs2′, fs3′)가 교차하는 지점의 전압과 제2 리드 전압(VR2)의 차이는 제1 및 제2 전압 상태(fs0′, fs1′)가 교차하는 지점의 전압과 제1 리드 전압(VR1)의 차이보다 크다. 서로 다른 전압 상태가 교차하는 지점의 전압과 서로 다른 전압 상태를 판단하기 위해 인가하는 리드 전압의 차이가 클수록, 선택 리드 전압을 보다 정확하고 정밀하게 찾아야 하며, 따라서, 후보 전압 사이의 간격은 줄어들 수 있다. 결국, 이동 정도의 차이 때문에, 제2 선택 리드 전압(VR2′)을 찾기 위한 제2 전압(△V2)은 제1 전압(△V1)보다 작을 수 있다.
한편 제1 범위(R)는 동일하고, 제2 전압(△V2)이 제1 전압(△V1)보다 작기 때문에, 제2 전압(△V2) 간격의 후보 전압(V1~Vm)의 개수는 제1 전압(△V1) 간격의 후보 전압(V1~Vn) 개수보다 많고, 따라서, m은 n보다 클 수 있다. 만약 도시한 것과 달리 제2 전압(△V2)이 제1 전압(△V1)보다 크다면, m은 n보다 작을 수도 있다.
각각의 전압 상태(fs0′, fs1′, fs2′, fs3′)의 이동 정도에 따라 선택 리드 전압을 찾기 위한 후보 전압의 간격을 다르게 정하면 신속하고 정밀하게 선택 리드 전압을 찾을 수 있다. 도 3과 같이, 제1 및 제2 전압 상태(fs0′, fs1′)의 이동 크기(△s0, △s1)가 크지 않은 경우에는 제1 선택 리드 전압(VR1′)은 제1 리드 전압(VR1)과 차이가 크지 않으므로 신속하게 제1 선택 리드 전압(VR1′)을 찾기 위해 제1 전압(△V1)을 크게 정할 수 있다. 후보 전압의 간격을 크게 가져 간다면 후보 전압의 개수를 줄일 수 있으므로, 선택 리드 전압으로의 변경을 신속하게 할 수 있다. 그러나, 도 3의 제3 및 제4 전압 상태(fs2′, fs3′)처럼 이동 크기(△s2, △s3)가 큰 경우에는 제2 선택 리드 전압(VR2′)을 정확하게 찾는 것이 중요하기 때문에 제1 전압(△V1)보다 작은 제2 전압(△V2) 간격의 후보 전압이 필요할 수 있다.
한편, 제2 전압 상태(fs1′)와 제3 전압 상태(fs2′) 사이의 제3 리드 전압(VR3)을 변경하는 것은 상술한 방법과 동일한 방법으로 변경할 수 있다.
도 6 및 도 7을 참조하여, 본 발명의 제2 실시예에 따른 메모리 장치 구동 방법에 대하여 설명하기로 한다. 상술한 바와 중복되는 내용은 설명을 생략하고 차이점을 위주로 설명하기로 한다.
도 6 및 도 7은 본 발명의 제2 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 도 4와 달리 제1 리드 전압(VR1)은 제1 범위(R)에 포함되지 않는다. 도 4에서는 제1 리드 전압(VR1)을 후보 전압(V1~Vn) 중의 하나인 V1으로 두고 제1 선택 리드 전압(VR1′)을 찾는다. 그러나 도 6에서는 제1 리드 전압(VR1)이 제1 범위(R)에 포함되지 않는다. 후보 전압(V1~Vn) 중 제1 리드 전압(VR1)과 가장 근접한 V1은 제1 리드 전압(VR1)과 제1 오프셋 전압(Voff)만큼 떨어져 있을 수 있다.
도 7을 참조하면, 도 5와 달리 제2 리드 전압(VR2)은 제1 범위(R)에 포함되지 않는다. 구체적으로, 도 5에서는 제2 리드 전압(VR2)을 후보 전압(V1~Vm) 중의 하나인 V1으로 두고 제2 선택 리드 전압(VR2′)을 찾는다. 그러나 도 7에서는 제2 리드 전압(VR2)이 제1 범위(R)에 포함되지 않는다. 후보 전압(V1~Vm) 중 제2 리드 전압(VR2)과 가장 근접한 V2는 제2 리드 전압(VR2)과 제2 오프셋 전압(Voff)만큼 떨어져 있을 수 있다.
제1 및 제2 오프셋 전압(Voff)은 임의의 값이며 서로 같을 수도, 다를 수도 있다. 제1 및 제2 오프셋 전압(Voff)은 메모리 장치의 용도, 특성 등에 따라 달라질 수 있다.
상술한 바와 같이 제1 및 제2 리드 전압(VR1, VR2)이 제1 범위(R)에 포함되지 않으면 제1 범위(R)를 본 발명의 제1 실시예에 따른 메모리 장치 구동 방법보다 좁힐 수 있다. 결국, 제1 범위(R)를 좁게 함으로써, 제1 및 제2 선택 리드 전압(VR1′, VR2′)을 신속하게 결정할 수 있다.
도 8 및 도 9를 참조하여, 본 발명의 제3 실시예에 따른 메모리 장치 구동 방법에 대하여 설명하기로 한다. 상술한 바와 중복되는 내용은 설명을 생략하고 차이점을 위주로 설명하기로 한다.
도 8 및 도 9는 본 발명의 제3 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
본 발명의 제3 실시예에 따른 메모리 장치 구동 방법은 본 발명의 제1 실시예에 따른 메모리 장치 구동 방법과는 달리 제1 범위(R)가 존재하지 않으며 순차적으로 후보 전압을 인가하여 선택 리드 전압을 결정한다.
먼저, 도 8을 참조하여, 제1 선택 리드 전압(VR1′)을 결정하는 방법을 설명하기로 한다. 제1 리드 전압(VR1)을 인가할 시 페일 셀 수가 제1 한계값 이상이면 제1 리드 전압(VR1)을 제1 선택 리드 전압(VR1′)으로 변경한다. 이 때, n개의 후보 전압(V1~Vn) 중에서 제1 시작 후보 전압(V1)부터 제1 전압(△V1)씩 간격을 두고 차례대로 후보 전압을 인가한다. 구체적으로, 제1 시작 후보 전압(V1)을 인가하여 그 때의 페일 셀 수를 카운트하고 제1 시작 후보 전압(V1)으로부터 제1 전압(△V1) 떨어져 있는 제2 후보 전압(V2)을 인가하여 그 때의 페일 셀 수를 카운트한다. 상기와 같은 방법으로 제3 후보 전압(V3), 제4 후보 전압(V4), … 등을 계속해서 인가하여 페일 셀 수를 카운트한다.
후보 전압들을 차례대로 인가하여 페일 셀 수를 계속 해서 카운트하다보면 어느 지점에서 페일 셀 수가 증가한다. 예를 들어, 도 8을 참조하면, 제1 시작 후보 전압(V1)부터 k번째 후보 전압(Vk)까지는 계속해서 페일 셀 수가 감소하지만, k+1번째 후보 전압(Vk+1)은 k번째 후보 전압(Vk)보다 페일 셀 수가 많다. k번째 후보 전압(Vk)보다 k+1번째 후보 전압(Vk+1)이 제1 상태(fs0′)와 제2 상태(fs1′)가 교차하는 지점에서 더 멀리 떨어져 있기 때문이다. 따라서, 페일 셀 수가 계속해서 감소하다가 증가하는 경우, 페일 셀 수가 증가하기 직전의 후보 전압, 즉 k번째 후보 전압(Vk)을 제1 선택 리드 전압(VR1′)으로 결정할 수 있다. 여기서 k는 n보다 작은 자연수이다.
제2 선택 리드 전압(VR2′)을 결정하는 방법도 제1 선택 리드 전압(VR1′)을 결정하는 방법과 동일하다. 먼저, 제2 리드 전압(VR2)을 인가할 시 페일 셀 수가 제2 한계값 이상이면 제2 리드 전압(VR2)을 제2 선택 리드 전압(VR2′)으로 변경한다. 이 때, 도 9를 참조하면, m개의 후보 전압(V1~Vm) 중에서 제1 시작 후보 전압(V1)부터 제2 전압(△V2)씩 간격을 두고 차례대로 후보 전압을 인가한다. 구체적으로, 제1 시작 후보 전압(V1)을 인가하여 그 때의 페일 셀 수를 카운트하고 제1 시작 후보 전압(V1)으로부터 제2 전압(△V2) 떨어져 있는 제2 후보 전압(V2)을 인가하여 그 때의 페일 셀 수를 카운트한다. 상기와 같은 방법으로 제3 후보 전압(V3), 제4 후보 전압(V4), … 등을 계속해서 인가하여 페일 셀 수를 카운트한다.
후보 전압들을 차례대로 인가하여 페일 셀 수를 계속 해서 카운트하다보면 어느 지점에서 페일 셀 수가 증가한다. 예를 들어, 도 9를 참조하면, 제1 시작 후보 전압(V1)부터 l번째 후보 전압(Vl)까지는 계속해서 페일 셀 수가 감소하지만, l+1번째 후보 전압(Vl+1)은 l번째 후보 전압(Vl)보다 페일 셀 수가 많다. l번째 후보 전압(Vl)보다 l+1번째 후보 전압(Vl+1)이 제3 상태(fs2′)와 제4 상태(fs3′)가 교차하는 지점에서 더 멀리 떨어져 있기 때문이다. 따라서, 페일 셀 수가 계속해서 감소하다가 증가하는 경우, 페일 셀 수가 증가하기 직전의 후보 전압, 즉 l번째 후보 전압(Vl)을 제2 선택 리드 전압(VR2′)으로 결정할 수 있다. 여기서 l은 m보다 작은 자연수이다.
본 발명의 제3 실시예와 같이 후보 전압을 차례대로 인가하여 선택 리드 전압을 결정하면, 제1 선택 리드 전압(VR1′)을 결정하기 위한 n개의 후보 전압(V1~Vn)과 제2 선택 리드 전압(VR2′)을 결정하기 위한 m개의 후보 전압(V1~Vm) 전부를 인가할 필요가 없다. n, m보다 적은 k, l개의 후보 전압만 인가할 수 있으므로 보다 신속하게 제1 및 제2 선택 전압(VR1′, VR2′)을 찾을 수 있다.
도 10 및 도 11을 참조하여, 본 발명의 제4 실시예에 따른 메모리 장치 구동 방법에 대하여 설명하기로 한다. 상술한 바와 중복되는 내용은 설명을 생략하고 차이점을 위주로 설명하기로 한다.
도 10 및 도 11은 본 발명의 제4 실시예에 따른 메모리 장치 구동 방법을 설명하기 위한 도면이다.
도 10을 참조하면, 본 발명의 제4 실시예에 따른 메모리 장치 구동 방법은, 본 발명의 제3 실시예에 따른 메모리 장치 구동 방법과 달리 제1 시작 후보 전압(V1)이 제1 리드 전압(VR1)과 일치하지 않는다. 구체적으로, 도 8에서는 제1 리드 전압(VR1)을 제1 시작 후보 전압(V1)으로 두고 제1 간격(△V1)씩 후보 전압을 인가하여 제1 선택 리드 전압(VR1′)을 찾는다. 그러나 도 10에서는, 제1 시작 후보 전압(V1)이 제1 리드 전압(VR1)으로부터 제3 오프셋 전압(Voff)만큼 떨어져 있으며, 후보 전압(V1~Vn)과 제1 리드 전압(VR1)은 겹치지 않는다.
도 11을 참조하면, 본 발명의 제4 실시예에 따른 메모리 장치 구동 방법은, 본 발명의 제3 실시예에 따른 메모리 장치 구동 방법과 달리 제1 시작 후보 전압(V1)이 제2 리드 전압(VR2)과 일치하지 않는다. 구체적으로, 도 9에서는 제2 리드 전압(VR2)을 제1 시작 후보 전압(V1)으로 두고 제2 간격(△V2)씩 후보 전압을 인가하여 제2 선택 리드 전압(VR2′)을 찾는다. 그러나 도 11에서는, 제1 시작 후보 전압(V1)이 제2 리드 전압(VR2)으로부터 제4 오프셋 전압(Voff)만큼 떨어져 있으며, 후보 전압(V1~Vm)과 제2 리드 전압(VR2)은 겹치지 않는다.
상술한 바와 같이 제1 및 제2 리드 전압(VR1, VR2)이 후보 전압(V1~Vn, V1~Vm)과 겹치지 않으면, 본 발명의 제3 실시예에 따른 메모리 장치 구동 방법보다 인가하는 후보 전압의 개수를 줄일 수 있다. 결국, 인가하는 후보 전압의 개수를 줄임으로써, 제1 및 제2 선택 리드 전압(VR1′, VR2′)을 신속하게 결정하여 메모리 장치의 성능을 향상시킬 수 있다.
도 12를 참조하여, 본 발명의 몇몇 실시예에 따른 제1 메모리 시스템에 대하여 설명하기로 한다.
도 12는 본 발명의 몇몇 실시예에 따른 제1 메모리 시스템의 블록도이다.
도 12를 참조하면, 제1 메모리 시스템(100)은 컨트롤러(110), 비휘발성 메모리 장치(120) 및 입출력 장치(130)를 포함한다. 비휘발성 메모리 장치(120)는 예를 들어, 낸드 플래시 메모리 장치, 노어 플래시 메모리 장치 등일 수 있으나, 이에 한정되는 것은 아니다. 비휘발성 메모리 장치(120)는 평면 구조의 메모리 셀 구조 및 적층으로 형성된 3차원 메모리 셀 구조 등을 포함할 수 있다.
비휘발성 메모리 장치(120)는 셀 어레이(122), X-decoder(행선택회로, 121), 전압발생회로(125), 입출력 패드(Input/output pad, 127) 입출력 버퍼(Input output buffer, 124), 페이지 버퍼(123), 컨트롤 로직(126)을 포함할 수 있다.
메모리 셀 어레이(122)는 데이터가 프로그램되는 복수의 메모리 셀, 다수의 워드라인(W/L) 및 다수의 비트라인(B/L)을 포함하며, 각 메모리 셀은 1-비트 데이터 또는 M-비트(멀티-비트) 데이터(M은 2 또는 그 보다 큰 자연수)를 저장할 수 있다.
메모리 셀 어레이(122)는 다수의 블록 및 다수의 페이지를 포함 할 수 있다. 하나의 블록은 다수의 페이지를 포함한다. 페이지는 프로그램 및 리드 동작시 단위가 될 수 있으며, 블록은 이레이즈(erase) 동작의 단위가 될 수 있다. 리드는 하나의 페이지에 프로그램된 데이터를 리드하는 것이다.
메모리 셀 어레이(122)는 단층 어레이 구조(single-layer array structure)(또는, 2차원 어레이 구조라고 불림) 또는 다층 어레이 구조(multi-layer array structure)(또는, 3차원 어레이 구조라고 불림)로 구현될 수 있다.
컨트롤 로직(126)은 비휘발성 메모리 장치(120)의 동작을 전반적으로 제어한다. 컨트롤러(110)로부터 명령어(CMD)가 입력되면, 컨트롤 로직(126)은 명령어(CMD)를 해석하고 비휘발성 메모리 장치(120)가 해석된 명령어에 따른 동작, 예컨대 프로그램 동작, 리드 동작, 리드 리트라이(read retry) 동작, 이레이즈(erase) 동작 등을 수행 하도록 한다. 또한, 컨트롤 로직(126)은 메모리 셀에 제1 리드 전압을 인가할 시 페일 셀의 수가 제1 한계값 이상인지 판별하고, 메모리 셀에 제2 리드 전압을 인가할 시 페일 셀의 수가 제2 한계값 이상인지 판별할 수 있다. 따라서, 컨트롤 로직(126)은 판별된 페일 셀의 수에 대한 정보를 저장할 수 있다.
전압발생회로(125)는 컨트롤 로직(126)의 제어에 따라 프로그램 동작, 대상 메모리셀 판별 동작 또는 이레이즈 동작에 필요한 적어도 하나의 전압을 생성하고, X- 디코더(121)에 의하여 선택된 적어도 하나의 전압을 공급한다. 또한, 제1 및 제2 리드 전압, 제1 선택 리드 전압이 포함된 n개의 후보 전압과 제2 선택 리드 전압이 포함된 m개의 후보 전압을 발생시킬 수 있다.
X-디코더(121)는 컨트롤 로직(126)에 의해서 제어되며, 로우 어드레스에 따라 메모리 셀 어레이(122)에 구현된 다수의 워드 라인들 중에서 적어도 하나의 워드 라인을 구동한다. 즉, X-디코더(121)는 전압발생회로(125)로부터 공급된 적어도 하나의 전압을 메모리 셀 어레이(122)에 공급하며, 예를 들어, 제1 및 제2 리드 전압, 제1 선택 리드 전압 및 제2 선택 리드 전압 등을 전압발생회로(125)로부터 제공받아 메모리 셀 어레이(121)를 구동한다.
레지스터(128)는 컨트롤러(110)로부터 입력되는 정보들을 저장하는 공간이며, 다수의 래치(latch)들을 포함할 수 있다. 예를 들어, 레지스터(128)는 제1 및 제2 리드 전압과 제1 및 제2 선택 리드 전압을 저장할 수 있다.
페이지 버퍼 회로(123)는 컨트롤 로직(126)에 의해서 제어되며, 동작 모드, 예컨대 리드 동작 또는 프로그램 동작에 따라 감지 증폭기로서 또는 라이트 드라이버로서 동작한다.
입출력 패드(127), 입출력 버퍼(124)는 외부 장치, 예컨대 컨트롤러(110)와 비휘발성 메모리 장치(120)사이에서 주고 받는 데이터의 입출력 경로가 될 수 있다.
컨트롤러(110)는 마이크로프로세서(microprocessor, 111), 롬(ROM, 113), 램(RAM, 112), ECC 디코더(ECC decoder, 115), ECC 인코더(ECC encoder, 114), 메모리 인터페이스(116), 카운터(117), 버스(118)를 포함 할 수 있다. 상기 컨트롤러(110)의 구성요소들(111, 112, 113, 114, 115, 116, 117))은 상기 버스(118)를 통하여 서로 전기적으로 연결될 수 있다.
마이크로프로세서(111)는 컨트롤러(110)를 포함한 제1 메모리 시스템(100)의 동작을 전반적으로 제어한다. 메모리 시스템(100)에 전원이 인가되면, 마이크로 프로세서(111)는 롬(113)에 저장된 상기 제1 메모리 시스템(100) 동작을 위한 펌웨어(firmware)를 램(112)상에서 구동시킴으로써 상기 제1 메모리 시스템(100)의 전반적인 동작을 제어할 수 있다. 또한, 마이크로프로세서(111)는 메모리 셀에 저장된 데이터가 제1 전압 상태인지 아니면 제2 전압 상태인지를 판단하기 위한 제1 리드 전압을 그 크기가 제1 전압씩 변하는 n개의 후보 전압 중에서 어느 하나인 제1 선택 리드 전압으로 변경하고, 메모리 셀에 저장된 데이터가 제3 전압 상태인지 아니면 제4 전압 상태인지를 판단하기 위한 제2 리드 전압을 그 크기가 제1 전압과 다른 제2 전압씩 변하는 m개의 후보 전압 중에서 어느 하나인 제2 선택 리드 전압으로 변경할 수 있다.
또는 상술한 바와 다른 방법으로 마이크로 프로세서(111)는 제1 및 제2 선택 리드 전압을 선택할 수 있다. 구체적으로, n개의 후보 전압 중 제1 시작 후보 전압부터 제1 전압씩 차례대로 후보 전압을 인가하여, k(여기서, k는 k<n인 자연수)번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수가, k+1번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수보다 작은 경우 상기 k번째 후보 전압을 상기 제1 선택 리드 전압으로 선택한다. 그리고 상기 m개의 후보 전압 중 제2 시작 후보 전압부터 상기 제2 전압씩 차례대로 후보 전압을 인가하여, l(여기서, l은 l<m인 자연수)번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수가, k+1번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수보다 작은 경우 상기 l번째 후보 전압을 상기 제2 선택 리드 전압으로 선택한다.
도 12에서 상기 제1 메모리 시스템(100)의 구동 펌웨어 코드는 롬(113)에 저장되나 본 발명의 범위가 이에 한정되는 것은 아니다. 펌웨어 코드는 롬(113)이외의 다양한 비휘발성 메모리 장치(120)에 저장될 수도 있다. 따라서, 마이크로프로세서(111)의 제어 또는 개입이란, 마이크로 프로세서(111)의 직접적 제어뿐만 아니라, 마이크로프로세서(111)에 의해서 구동되는 소프트웨어인 펌웨어의 간섭도 포함 할 수 있다.
한편, 롬(113)에는 제1 전압 및 제2 전압이 저장될 수 있다. 그러나 이에 제한되는 것은 아니며, 예를 들어, 2개 이상의 복수 개의 전압이 저장될 수 있다. 마이크로프로세서(111)는 롬(113)에 저장된 제1 및 제2 전압을 이용하여 제1 및 제2 선택 리드 전압을 결정할 수 있다.
램(112)은 버퍼(buffer)역할을 하는 메모리로, 호스트로부터 입력되는 최초 명령어, 데이터, 각종 변수들 또는 비휘발성 메모리 장치(120)로부터 출력되는 데이터들을 저장할 수 있고, 비휘발성 메모리 장치(120)로 입력되고 출력되는 데이터, 각종 파라미터 및 변수들을 저장할 수 있다. 예를 들어, 램(112)은 n개의 후보 전압을 인가할 시 발생하는 각각의 페일 셀의 수 및 m개의 후보 전압을 인가할 시 발생하는 각각의 후보 전압의 페일 셀의 수를 저장하여 마이크로프로세서(111)가 제1 및 제2 선택 리드 전압을 결정할 수 있도록 한다.
메모리 인터페이스(116)는 컨트롤러(110)와 비휘발성 메모리 장치(120) 사이의 인터페이스를 수행할 수 있다. 메모리 인터페이스(116)는 비휘발성 메모리 장치(120)의 I/O 패드(127)와 연결되어 있으며, 데이터를 주고 받을 수 있다. 또한 메모리 인터페이스(116)는 비휘발성 메모리에 적합한 명령어를 형성하고 I/O 패드(127)에 비휘발성 메모리 장치(120)에 적합한 명령어를 제공할 수 있다. 메모리 인터페이스(116)는 비휘발성 메모리 장치(120)가 수행하고자 하는 명령어와 비휘발성 메모리 장치(120)의 주소(ADD)를 제공해 준다.
ECC 디코더(115) 및 ECC 인코더(114)는 에러 비트 정정을 수행한다. ECC 인코더(114)는 비휘발성 메모리 장치(120)로 제공되는 데이터에 대하여 에러 정정 인코딩을 하여, 패리티(parity) 비트가 부가된 데이터를 형성한다. 패리티 비트는 비휘발성 메모리 장치(120)에 저장될 수 있다.
ECC 디코더(115)는 출력된 데이터에 대하여 에러 정정 디코딩을 수행하고 수행 결과에 따라 상기 에러 정정 디코딩의 성공 여부를 판단하고, 상기 판단 결과에 따라 지시 신호를 출력한다. 리드한 데이터는 ECC 디코더로 전송되고, ECC 디코더는 패리티(parity) 비트를 사용하여 데이터의 에러 비트를 정정 할 수 있다. 예를 들어, 또한, 제1 및 제2 리드 전압 또는 제1 및 제2 선택 리드 전압 인가 시 발생하는 페일 셀을 정정하여 상기 셀에 프로그램된 데이터의 에러 비트를 정정할 수 있다. 에러 비트 개수가 정정 가능한 에러 비트 한계치 이상 발생하면, ECC 디코더(115)는 에러 비트를 정정할 수 없고, 에러 정정 실패(fail)가 발생한다. ECC 인코더(114)와 ECC 디코더(115)는 LDPC(low density parity check) code, BCH code, turbo code, 리드-솔로몬 코드(Reed-Solomon code), convolution code, RSC(recursive systematic code), TCM(trellis-coded modulation), BCM(Block coded modulation) 등의 코디드 모듈레이션(coded modulation)을 사용하여 에러 정정을 할 수 있으며 이에 한정되는 것은 아니다.
ECC 인코더(114) 및 ECC 디코더(115)는 오류 정정을 위한 회로, 시스템 또는 장치를 모두 포함할 수 있다.
메모리 인터페이스(116)는 비휘발성 메모리 장치(120)로 리드 명령어 및 어드레스를 제공한다. 비휘발성 메모리 장치(120)는 제공 받은 어드레스에 해당하는 제 1 블록 내(123)의 페이지에 저장된 데이터를 리드한다. 리드한 데이터는 I/O 패드(127)를 통해서 ECC 디코더(115)로 제공된다. ECC 디코더(115)는 비휘발성 메모리 장치(120)로부터 제공받은 데이터의 에러 비트를 체크하고 에러 비트를 정정한다.
입출력 장치(130)는 호스트(미도시)와 컨트롤러(110) 사이에서 연결될 수 있으며, 제1 메모리 시스템(100)에 데이터를 입출력하는 역할을 한다. 예를 들어, 입출력 장치(130)는 제1 메모리 시스템(100)에 프로그램될 데이터를 전달할 수 있고, 제1 및 제2 선택 리드 전압을 인가하여 리드한 데이터를 제1 메모리 시스템(100)으로부터 전달받아 출력시킬 수 있다.
다음 도 13 및 도 14를 참조하여, 본 발명의 몇몇 실시예에 따른 제2 메모리 시스템 및 그 응용예들에 대해 설명한다. 본 발명의 몇몇 실시예에 따른 제1 메모리 시스템과 중복되는 내용은 생략하고 차이점을 위주로 설명하기로 한다.
13은 본 발명의 몇몇 실시예에 따른 제2 메모리 시스템의 블록도이고, 도 13은 도 14를 참조하여 설명된 제2 메모리 시스템을 포함하는 컴퓨팅 시스템을 보여주는 블록도이다.
도 13을 참조하면, 제2 메모리 시스템(2000)은 비휘발성 메모리 장치(2100) 및 컨트롤러(2200)를 포함한다. 비휘발성 메모리 장치(2100)는 복수의 메모리 셀 어레이(도 8의 122)를 포함하는 복수의 비휘발성 메모리 칩들을 포함한다. 복수의 비휘발성 메모리 칩들은 복수의 그룹들로 분할된다. 복수의 비휘발성 메모리 칩들의 각 그룹은 하나의 공통 채널을 통해 컨트롤러(2200)와 통신하도록 구성된다. 예를 들어, 복수의 비휘발성 메모리 칩들은 제 1 내지 제 k 채널들(CH1~CHk)을 통해 컨트롤러(2200)와 통신하는 것으로 도시되어 있다.
13에서, 하나의 채널에 복수의 비휘발성 메모리 칩들이 연결되는 것으로 설명되었다. 그러나, 하나의 채널에 하나의 비휘발성 메모리 칩이 연결되도록 제2 메모리 시스템(2000)이 변형될 수 있음이 이해될 것이다.
컨트롤러(2200) 및 비휘발성 메모리 장치(2100)는 하나의 반도체 장치로 집적될 수 있다. 예시적으로, 컨트롤러(2200) 및 비휘발성 메모리 장치(2100)는 하나의 반도체 장치로 집적되어, 메모리 카드를 구성할 수 있다. 예를 들면, 컨트롤러(1200) 및 비휘발성 메모리 장치(2100)는 하나의 반도체 장치로 집적되어 PC 카드(PCMCIA, personal computer memory card international association), 컴팩트 플래시 카드(CF), 스마트 미디어 카드(SM, SMC), 메모리 스틱, 멀티미디어 카드(MMC, RS-MMC, MMCmicro), SD 카드(SD, miniSD, microSD, SDHC), 유니버설 플래시 기억장치(UFS) 등과 같은 메모리 카드를 구성할 것이다.
컨트롤러(2200) 및 비휘발성 메모리 장치(2100)는 하나의 반도체 장치로 집적되어 반도체 드라이브(SSD, Solid State Drive)를 구성할 수 있다. 반도체 드라이브(SSD)는 반도체 메모리에 데이터를 저장하도록 구성되는 저장 장치를 포함한다. 제2 메모리 시스템(2000)이 반도체 드라이브(SSD)로 이용되는 경우, 제2 메모리 시스템(2000)에 연결된 호스트(Host)의 동작 속도는 획기적으로 개선된다.
다른 예로서, 제2 메모리 시스템(2000)은 컴퓨터, UMPC (Ultra Mobile PC), 워크스테이션, 넷북(net-book), PDA (Personal Digital Assistants), 포터블(portable) 컴퓨터, 웹 타블렛(web tablet), 무선 전화기(wireless phone), 모바일 폰(mobile phone), 스마트폰(smart phone), e-북(e-book), PMP(portable multimedia player), 휴대용 게임기, 네비게이션(navigation) 장치, 블랙박스(black box), 디지털 카메라(digital camera), 3차원 수상기(3-dimensional television), 디지털 음성 녹음기(digital audio recorder), 디지털 음성 재생기(digital audio player), 디지털 영상 녹화기(digital picture recorder), 디지털 영상 재생기(digital picture player), 디지털 동영상 녹화기(digital video recorder), 디지털 동영상 재생기(digital video player), 정보를 무선 환경에서 송수신할 수 있는 장치, 홈 네트워크를 구성하는 다양한 전자 장치들 중 하나, 컴퓨터 네트워크를 구성하는 다양한 전자 장치들 중 하나, 텔레매틱스 네트워크를 구성하는 다양한 전자 장치들 중 하나, RFID 장치, 또는 컴퓨팅 시스템을 구성하는 다양한 구성 요소들 중 하나 등과 같은 전자 장치의 다양한 구성 요소들 중 하나로 제공된다.
예시적으로, 비휘발성 메모리 장치(2100) 또는 제2 메모리 시스템(2000)은 다양한 형태들의 패키지로 실장될 수 있다. 예를 들면, 비휘발성 메모리 장치(2100) 또는 제2 메모리 시스템(2000)은 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 방식으로 패키지화되어 실장될 수 있다.
다음 14를 참조하면, 컴퓨팅 시스템(3000)은 중앙 처리 장치(3100), 램(3200, RAM, Random Access Memory), 사용자 인터페이스(3300), 전원(3400), 그리고 제2 메모리 시스템(2000)을 포함한다.
제2 메모리 시스템(2000)은 시스템 버스(3500)를 통해, 중앙처리장치(3100), 램(3200), 사용자 인터페이스(3300), 그리고 전원(3400)에 전기적으로 연결된다. 사용자 인터페이스(3300)를 통해 제공되거나, 중앙 처리 장치(3100)에 의해서 처리된 데이터는 제2 메모리 시스템(2000)에 저장된다.
도 14에서, 비휘발성 메모리 장치(2100)는 컨트롤러(2200)를 통해 시스템 버스(3500)에 연결되는 것으로 도시되어 있다. 그러나, 비휘발성 메모리 장치(2100)는 시스템 버스(3500)에 직접 연결되도록 구성될 수 있다.
도 14에서, 13을 참조하여 설명된 제2 메모리 시스템(2000)이 제공되는 것으로 도시되어 있다. 그러나, 메모리 시스템(2000)은 12를 참조하여 설명된 제1 메모리 시스템(100)으로 대체될 수도 있다.
예시적으로, 컴퓨팅 시스템(3000)은 12 및 13을 참조하여 설명된 메모리 시스템들(2000, 100)을 모두 포함하도록 구성될 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.
fs0′, fs1′, fs2′, fs3′: 전압 상태R: 제1 범위
VR1, VR2, VR3: 리드 전압 VR1′, VR2′, VR3′: 선택 리드 전압
V1~Vn, V1~Vm: 후보 전압

Claims (10)

  1. 데이터가 프로그램되는 복수의 메모리 셀을 포함하는 비휘발성 메모리 장치; 및
    상기 비휘발성 메모리 장치를 제어하는 컨트롤러를 포함하며,
    상기 컨트롤러는,
    상기 메모리 셀에 저장된 데이터가 제1 전압 상태인지 아니면 제2 전압 상태인지를 판단하기 위한 제1 리드 전압을, 그 크기가 제1 크기씩 변하는 n(여기서, n은 자연수)개의 후보 전압 중에서 어느 하나인 제1 선택 리드 전압으로 변경하고, 상기 메모리 셀에 저장된 데이터가 제3 전압 상태인지 아니면 제4 전압 상태인지를 판단하기 위한 제2 리드 전압을, 상기 n개의 후보 전압이 분포하는 범위와 동일한 범위에서, 그 크기가 상기 제1 크기보다 작은 제2 크기씩 변하는 m(여기서, m은 n보다 큰 자연수)개의 후보 전압 중에서 어느 하나인 제2 선택 리드 전압으로 변경하는 마이크로 프로세서와,
    상기 비휘발성 메모리 장치로 제공되는 데이터에 대하여 오류 정정 인코딩을 하여, 패리티(parity) 비트가 부가된 데이터를 형성하는 ECC(Error Correction Code) 인코더와,
    상기 패리티 비트가 부가된 데이터의 에러 비트를 정정하는 ECC 디코더를 포함하고,
    상기 비휘발성 메모리 장치는,
    상기 제1 및 제2 리드 전압, 상기 n개의 후보 전압과 상기 m개의 후보 전압을 발생시키는 전압발생회로와,
    상기 전압발생회로가 생성한 상기 제1 및 제2 리드 전압과 상기 제1 및 제2 선택 리드 전압을 공급받아 상기 복수의 메모리 셀을 구동하는 X-디코더와,
    상기 제1 및 제2 선택 리드 전압을 저장하는 레지스터를 포함하고,
    상기 마이크로 프로세서는,
    상기 메모리 셀에 상기 제1 리드 전압을 인가할 시 페일 셀의 수가 제1 한계값 이상인 경우 상기 제1 리드 전압을 변경하고, 상기 페일 셀의 수가 제1 한계값 미만인 경우 상기 제1 리드 전압을 변경하지 않고,
    상기 메모리 셀에 상기 제2 리드 전압을 인가할 시 페일 셀의 수가 제2 한계값 이상인 경우 상기 제2 리드 전압을 변경하고, 상기 페일 셀의 수가 제2 한계값 미만인 경우 상기 제2 리드 전압을 변경하지 않는 메모리 시스템.
  2. 제 1항에 있어서,
    상기 제1 및 제2 전압 상태와 상기 제3 및 제4 전압 상태는 서로 다른 메모리 시스템.
  3. 제 1항에 있어서,
    상기 제1 전압 상태와 상기 제2 전압 상태는 서로 중첩되고,
    상기 제3 전압 상태와 상기 제4 전압 상태는 서로 중첩되는 메모리 시스템.
  4. 제 3항에 있어서,
    상기 제3 및 제4 전압 상태가 서로 교차하는 지점의 전압과 상기 제2 리드 전압의 차이는 상기 제1 및 제2 전압 상태가 서로 교차하는 지점의 전압과 상기 제1 리드 전압의 차이보다 큰 메모리 시스템.
  5. 삭제
  6. 삭제
  7. 제 1항에 있어서,
    상기 제1 및 제2 한계값은 ECC 방식으로 에러 정정 가능한 메모리 셀 개수인 메모리 시스템.
  8. 삭제
  9. 제 1항에 있어서,
    상기 제1 선택 리드 전압은, 상기 메모리 셀에 상기 n개의 후보 전압을 인가할 시 페일 셀의 수가 최소인 후보 전압이고,
    상기 제2 선택 리드 전압은, 상기 메모리 셀에 상기 m개의 후보 전압을 인가할 시 페일 셀의 수가 최소인 후보 전압인 메모리 시스템.
  10. 메모리 셀에 저장된 데이터가 제1 전압 상태인지 아니면 제2 전압 상태인지를 판단하기 위한 제1 리드 전압을, 그 크기가 제1 크기씩 변하는 n(여기서, n은 자연수)개의 후보 전압 중에서 어느 하나인 제1 선택 리드 전압으로 변경하되, 상기 메모리 셀에 상기 제1 리드 전압을 인가할 시 페일 셀의 수가 제1 한계값 이상인 경우 상기 제1 리드 전압을 변경하고, 상기 페일 셀의 수가 제1 한계값 미만인 경우 상기 제1 리드 전압을 변경하지 않고,
    상기 메모리 셀에 저장된 데이터가 제3 전압 상태인지 아니면 제4 전압 상태인지를 판단하기 위한 제2 리드 전압을, 상기 n개의 후보 전압이 분포하는 범위와 동일한 범위에서, 그 크기가 상기 제1 크기보다 작은 제2 크기씩 변하는 m(여기서, m은 n보다 큰 자연수)개의 후보 전압 중에서 어느 하나인 제2 선택 리드 전압으로 변경하되, 상기 메모리 셀에 상기 제2 리드 전압을 인가할 시 페일 셀의 수가 제2 한계값 이상인 경우 상기 제2 리드 전압을 변경하고, 상기 페일 셀의 수가 제2 한계값 미만인 경우 상기 제2 리드 전압을 변경하지 않는 것을 포함하되,
    상기 제1 리드 전압을 상기 제1 선택 리드 전압으로 변경하는 것은,
    상기 n개의 후보 전압 중 제1 시작 후보 전압부터 상기 제1 크기씩 변하는 후보 전압을 차례대로 인가하되,
    k(여기서, k는 k<n인 자연수)번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수가, k+1번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수보다 작은 경우 상기 k번째 후보 전압을 상기 제1 선택 리드 전압으로 선택하는 것을 포함하고,
    상기 제2 리드 전압을 상기 제2 선택 리드 전압으로 변경하는 것은,
    상기 m개의 후보 전압 중 제2 시작 후보 전압부터 상기 제2 크기씩 변하는 후보 전압을 차례대로 인가하되,
    l(여기서, l은 l<m인 자연수)번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수가, l+1번째 후보 전압을 상기 메모리 셀에 인가할 때의 페일 셀 수보다 작은 경우 상기 l번째 후보 전압을 상기 제2 선택 리드 전압으로 선택하는 것을 포함하는 메모리 장치 구동 방법.
KR1020120123646A 2012-11-02 2012-11-02 메모리 장치 구동 방법 KR102081581B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020120123646A KR102081581B1 (ko) 2012-11-02 2012-11-02 메모리 장치 구동 방법
US14/068,122 US9147483B2 (en) 2012-11-02 2013-10-31 Apparatus and method of operating memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120123646A KR102081581B1 (ko) 2012-11-02 2012-11-02 메모리 장치 구동 방법

Publications (2)

Publication Number Publication Date
KR20140057035A KR20140057035A (ko) 2014-05-12
KR102081581B1 true KR102081581B1 (ko) 2020-02-26

Family

ID=50623534

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120123646A KR102081581B1 (ko) 2012-11-02 2012-11-02 메모리 장치 구동 방법

Country Status (2)

Country Link
US (1) US9147483B2 (ko)
KR (1) KR102081581B1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9520901B2 (en) 2014-03-06 2016-12-13 Kabushiki Kaisha Toshiba Memory controller, memory system, and memory control method
KR20160011939A (ko) * 2014-07-23 2016-02-02 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
US9899102B2 (en) 2015-03-31 2018-02-20 SK Hynix Inc. Semiconductor device and operating method thereof
US10180876B2 (en) 2015-08-04 2019-01-15 Toshiba Memory Corporation Memory controller and semiconductor memory device
US11237908B2 (en) 2017-03-29 2022-02-01 SK Hynix Inc. Memory system and operating method thereof
KR102386703B1 (ko) * 2017-09-13 2022-04-14 에스케이하이닉스 주식회사 메모리 장치 및 그것의 동작 방법
JP2019053805A (ja) * 2017-09-15 2019-04-04 東芝メモリ株式会社 メモリシステム
CN109979519B (zh) * 2017-12-27 2021-03-16 华邦电子股份有限公司 存储器完整性的检验方法、非易失性存储器以及电子装置
KR102567314B1 (ko) * 2018-04-27 2023-08-17 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
JP2020047337A (ja) * 2018-09-18 2020-03-26 キオクシア株式会社 メモリシステム
KR20200116265A (ko) 2019-04-01 2020-10-12 에스케이하이닉스 주식회사 컨트롤러 및 그것의 동작 방법

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7904780B2 (en) * 2006-11-03 2011-03-08 Sandisk Corporation Methods of modulating error correction coding
KR100865821B1 (ko) 2007-03-14 2008-10-28 주식회사 하이닉스반도체 불휘발성 메모리 장치의 독출 방법
KR100888842B1 (ko) * 2007-06-28 2009-03-17 삼성전자주식회사 읽기 전압을 최적화할 수 있는 플래시 메모리 장치 및그것의 독출 전압 설정 방법
KR20090048108A (ko) 2007-11-09 2009-05-13 주식회사 하이닉스반도체 불휘발성 메모리 장치와 그 독출방법
JP2009146469A (ja) 2007-12-11 2009-07-02 Sharp Corp 読み出し回路、書き込み回路、不揮発性半導体記憶装置及びその駆動方法
KR101406279B1 (ko) * 2007-12-20 2014-06-13 삼성전자주식회사 반도체 메모리 장치 및 그것의 읽기 페일 분석 방법
KR101434405B1 (ko) * 2008-02-20 2014-08-29 삼성전자주식회사 메모리 장치 및 메모리 데이터 읽기 방법
KR101423052B1 (ko) * 2008-06-12 2014-07-25 삼성전자주식회사 메모리 장치 및 읽기 레벨 제어 방법
CN102203876B (zh) 2008-09-30 2015-07-15 Lsi公司 用于存储器器件的软数据生成的方法和装置
KR20100086193A (ko) 2009-01-22 2010-07-30 주식회사 하이닉스반도체 반도체 메모리 소자의 독출 방법
KR100996009B1 (ko) * 2009-02-02 2010-11-22 주식회사 하이닉스반도체 불휘발성 메모리 소자 및 그 동작 방법
KR101578511B1 (ko) 2009-05-20 2015-12-18 삼성전자주식회사 리드 전압 설정 방법
KR101626528B1 (ko) 2009-06-19 2016-06-01 삼성전자주식회사 플래시 메모리 장치 및 이의 데이터 독출 방법
KR101678909B1 (ko) 2009-09-17 2016-11-23 삼성전자주식회사 플래시 메모리 시스템 및 그것의 소거 리프레쉬 방법
KR101603099B1 (ko) 2009-10-01 2016-03-28 삼성전자주식회사 불안정 메모리 셀 산포를 검출하는 메모리 시스템 및 상기 불안정 메모리 셀 산포 검출방법
KR101618311B1 (ko) * 2010-02-08 2016-05-04 삼성전자주식회사 플래시 메모리 장치 및 그것의 읽기 방법
WO2011113034A2 (en) * 2010-03-12 2011-09-15 Sandforce, Inc. Ldpc erasure decoding for flash memories
US9245653B2 (en) * 2010-03-15 2016-01-26 Intelligent Intellectual Property Holdings 2 Llc Reduced level cell mode for non-volatile memory
US9570162B2 (en) * 2010-04-08 2017-02-14 Silicon Motion, Inc. Data read method for flash memory
US8510637B2 (en) * 2010-04-14 2013-08-13 Phison Electronics Corp. Data reading method, memory storage apparatus and memory controller thereof
KR20110116473A (ko) 2010-04-19 2011-10-26 주식회사 하이닉스반도체 반도체 메모리 장치의 동작 방법
US8539311B2 (en) * 2010-07-01 2013-09-17 Densbits Technologies Ltd. System and method for data recovery in multi-level cell memories
US8243511B2 (en) * 2010-09-27 2012-08-14 Seagate Technology Llc Reuse of information from memory read operations
KR101727704B1 (ko) * 2010-10-04 2017-04-18 삼성전자주식회사 리드 성능을 향상시킬 수 있는 리드 파라미터 변경 방법과 상기 방법을 수행할 수 있는 장치들
TWI447731B (zh) * 2010-12-01 2014-08-01 Phison Electronics Corp 資料讀取方法、記憶體儲存裝置及其控制器
US8510636B2 (en) * 2011-04-01 2013-08-13 Intel Corporation Dynamic read channel calibration for non-volatile memory devices
US9047210B2 (en) * 2011-09-15 2015-06-02 Sandisk Technologies Inc. Data storage device and method to correct bit values using multiple read voltages
US8683297B2 (en) * 2011-11-02 2014-03-25 Sandisk Technologies Inc. Systems and methods of generating a replacement default read threshold
KR20130087092A (ko) * 2012-01-27 2013-08-06 삼성전자주식회사 메모리 컨트롤러의 동작 방법 및 상기 메모리 컨트롤러를 포함하는 메모리 시스템
US8938659B2 (en) * 2012-05-04 2015-01-20 Lsi Corporation Low-density parity-check decoder disparity preprocessing

Also Published As

Publication number Publication date
US20140129902A1 (en) 2014-05-08
US9147483B2 (en) 2015-09-29
KR20140057035A (ko) 2014-05-12

Similar Documents

Publication Publication Date Title
KR102081584B1 (ko) 메모리 장치 구동 방법 및 메모리 시스템
KR102081581B1 (ko) 메모리 장치 구동 방법
US10684914B2 (en) Memory device and method of controlling ECC operation in the same
KR102511459B1 (ko) 비휘발성 메모리 장치 및 그 동작 방법
US8830743B2 (en) Method of operating memory controller, memory controller, memory device and memory system
US8432735B2 (en) Memory system and related method of programming
US10635532B2 (en) Method of controlling error check and correction (ECC) of non-volatile memory device and memory system performing the same
KR102565888B1 (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR102396734B1 (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR102524432B1 (ko) 메모리 시스템 및 메모리 시스템의 동작방법
KR102529666B1 (ko) LDPC 코드(Low Density Parity Check Code) 부호를 위한 복호 방법 및 장치
US10373689B2 (en) Semiconductor memory device and method of operating the same
CN106653083B (zh) 半导体存储器件及其操作方法
KR20130076414A (ko) 랜덤마이져로 씨드를 제공하는 씨드 컨트롤러 및 그것을 포함한 메모리 컨트롤러
KR20150048425A (ko) 반도체 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 동작 방법
CN114944176A (zh) 用于非对称管芯封装的超级块链接***和方法
CN104424045A (zh) 解码方法、存储器储存装置与非易失性存储器模块
US9256494B2 (en) Memory system and operating method thereof
KR20140123135A (ko) 플래그 셀들을 포함하는 반도체 메모리 장치
KR102665270B1 (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR102005709B1 (ko) 메모리 장치 구동 방법 및 메모리 시스템
KR20180064588A (ko) 메모리 제어 장치 및 방법
US9460782B2 (en) Method of operating memory controller and devices including memory controller
KR102407338B1 (ko) 메모리 장치의 에러 체크 및 정정(ecc) 제어 방법 및 이를 수행하는 메모리 장치
CN112216328A (zh) 具有低复杂度解码的存储器***及其操作方法

Legal Events

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